| /linux/drivers/irqchip/ |
| H A D | irq-mtk-sysirq.c | 29 struct mtk_sysirq_chip_data *chip_data = data->chip_data; in mtk_sysirq_set_type() local 30 u8 intpol_idx = chip_data->intpol_idx[hwirq]; in mtk_sysirq_set_type() 36 base = chip_data->intpol_bases[intpol_idx]; in mtk_sysirq_set_type() 37 reg_index = chip_data->which_word[hwirq]; in mtk_sysirq_set_type() 40 raw_spin_lock_irqsave(&chip_data->lock, flags); in mtk_sysirq_set_type() 56 raw_spin_unlock_irqrestore(&chip_data->lock, flags); in mtk_sysirq_set_type() 127 struct mtk_sysirq_chip_data *chip_data; in mtk_sysirq_of_init() local 136 chip_data = kzalloc(sizeof(*chip_data), GFP_KERNEL); in mtk_sysirq_of_init() 137 if (!chip_data) in mtk_sysirq_of_init() 149 chip_data->intpol_words = kcalloc(nr_intpol_bases, in mtk_sysirq_of_init() [all …]
|
| H A D | irq-stm32mp-exti.c | 266 static void stm32mp_chip_suspend(struct stm32mp_exti_chip_data *chip_data, u32 wake_active) in stm32mp_chip_suspend() argument 268 const struct stm32mp_exti_bank *bank = chip_data->reg_bank; in stm32mp_chip_suspend() 269 void __iomem *base = chip_data->host_data->base; in stm32mp_chip_suspend() 272 chip_data->rtsr_cache = readl_relaxed(base + bank->rtsr_ofst); in stm32mp_chip_suspend() 273 chip_data->ftsr_cache = readl_relaxed(base + bank->ftsr_ofst); in stm32mp_chip_suspend() 278 static void stm32mp_chip_resume(struct stm32mp_exti_chip_data *chip_data, u32 mask_cache) in stm32mp_chip_resume() argument 280 const struct stm32mp_exti_bank *bank = chip_data->reg_bank; in stm32mp_chip_resume() 281 void __iomem *base = chip_data->host_data->base; in stm32mp_chip_resume() 284 writel_relaxed(chip_data->rtsr_cache, base + bank->rtsr_ofst); in stm32mp_chip_resume() 285 writel_relaxed(chip_data->ftsr_cache, base + bank->ftsr_ofst); in stm32mp_chip_resume() [all …]
|
| H A D | irq-owl-sirq.c | 135 struct owl_sirq_chip_data *chip_data = irq_data_get_irq_chip_data(data); in owl_sirq_eoi() local 142 owl_sirq_clear_set_extctl(chip_data, 0, INTC_EXTCTL_PENDING, in owl_sirq_eoi() 150 struct owl_sirq_chip_data *chip_data = irq_data_get_irq_chip_data(data); in owl_sirq_mask() local 152 owl_sirq_clear_set_extctl(chip_data, INTC_EXTCTL_EN, 0, data->hwirq); in owl_sirq_mask() 158 struct owl_sirq_chip_data *chip_data = irq_data_get_irq_chip_data(data); in owl_sirq_unmask() local 160 owl_sirq_clear_set_extctl(chip_data, 0, INTC_EXTCTL_EN, data->hwirq); in owl_sirq_unmask() 171 struct owl_sirq_chip_data *chip_data = irq_data_get_irq_chip_data(data); in owl_sirq_set_type() local 193 owl_sirq_clear_set_extctl(chip_data, INTC_EXTCTL_TYPE_MASK, sirq_type, in owl_sirq_set_type() 231 struct owl_sirq_chip_data *chip_data = domain->host_data; in owl_sirq_domain_alloc() local 260 chip_data); in owl_sirq_domain_alloc() [all …]
|
| H A D | irq-stm32-exti.c | 110 struct stm32_exti_chip_data *chip_data = gc->private; in stm32_exti_pending() local 111 const struct stm32_exti_bank *stm32_bank = chip_data->reg_bank; in stm32_exti_pending() 167 struct stm32_exti_chip_data *chip_data = gc->private; in stm32_irq_set_type() local 168 const struct stm32_exti_bank *stm32_bank = chip_data->reg_bank; in stm32_irq_set_type() 186 static void stm32_chip_suspend(struct stm32_exti_chip_data *chip_data, in stm32_chip_suspend() argument 189 const struct stm32_exti_bank *stm32_bank = chip_data->reg_bank; in stm32_chip_suspend() 190 void __iomem *base = chip_data->host_data->base; in stm32_chip_suspend() 193 chip_data->rtsr_cache = readl_relaxed(base + stm32_bank->rtsr_ofst); in stm32_chip_suspend() 194 chip_data->ftsr_cache = readl_relaxed(base + stm32_bank->ftsr_ofst); in stm32_chip_suspend() 199 static void stm32_chip_resume(struct stm32_exti_chip_data *chip_data, in stm32_chip_resume() argument [all …]
|
| H A D | irq-vf610-mscm-ir.c | 89 struct vf610_mscm_ir_chip_data *chip_data = data->chip_data; in vf610_mscm_ir_enable() local 92 irsprc = readw_relaxed(chip_data->mscm_ir_base + MSCM_IRSPRC(hwirq)); in vf610_mscm_ir_enable() 95 WARN_ON(irsprc & ~chip_data->cpu_mask); in vf610_mscm_ir_enable() 97 writew_relaxed(chip_data->cpu_mask, in vf610_mscm_ir_enable() 98 chip_data->mscm_ir_base + MSCM_IRSPRC(hwirq)); in vf610_mscm_ir_enable() 106 struct vf610_mscm_ir_chip_data *chip_data = data->chip_data; in vf610_mscm_ir_disable() local 108 writew_relaxed(0x0, chip_data->mscm_ir_base + MSCM_IRSPRC(hwirq)); in vf610_mscm_ir_disable()
|
| H A D | exynos-combiner.c | 67 struct combiner_chip_data *chip_data = irq_desc_get_handler_data(desc); in combiner_handle_cascade_irq() local 76 status = readl_relaxed(chip_data->base + COMBINER_INT_STATUS); in combiner_handle_cascade_irq() 78 status &= chip_data->irq_mask; in combiner_handle_cascade_irq() 83 combiner_irq = chip_data->hwirq_offset + __ffs(status); in combiner_handle_cascade_irq() 96 struct combiner_chip_data *chip_data = irq_data_get_irq_chip_data(d); in combiner_set_affinity() local 97 struct irq_chip *chip = irq_get_chip(chip_data->parent_irq); in combiner_set_affinity() 98 struct irq_data *data = irq_get_irq_data(chip_data->parent_irq); in combiner_set_affinity()
|
| H A D | irq-mtk-cirq.c | 68 static void __iomem *mtk_cirq_reg(struct mtk_cirq_chip_data *chip_data, in mtk_cirq_reg() argument 71 return chip_data->base + chip_data->offsets[idx]; in mtk_cirq_reg() 74 static void __iomem *mtk_cirq_irq_reg(struct mtk_cirq_chip_data *chip_data, in mtk_cirq_irq_reg() argument 78 return mtk_cirq_reg(chip_data, idx) + (cirq_num / 32) * 4; in mtk_cirq_irq_reg() 83 struct mtk_cirq_chip_data *chip_data = data->chip_data; in mtk_cirq_write_mask() local 87 writel_relaxed(mask, mtk_cirq_irq_reg(chip_data, idx, cirq_num)); in mtk_cirq_write_mask()
|
| H A D | irq-gic-pm.c | 20 struct gic_chip_data *chip_data; member 28 struct gic_chip_data *gic = chip_pm->chip_data; in gic_runtime_resume() 54 struct gic_chip_data *gic = chip_pm->chip_data; in gic_runtime_suspend() 109 ret = gic_of_init_child(dev, &chip_pm->chip_data, irq); in gic_probe()
|
| H A D | irq-sun6i-r.c | 94 data->chip_data = SUN6I_NMI_NEEDS_ACK; in sun6i_r_intc_nmi_ack() 100 if (data->chip_data == SUN6I_NMI_NEEDS_ACK && !irqd_irq_masked(data)) { in sun6i_r_intc_nmi_eoi() 101 data->chip_data = NULL; in sun6i_r_intc_nmi_eoi() 110 if (data->chip_data == SUN6I_NMI_NEEDS_ACK) { in sun6i_r_intc_nmi_unmask() 111 data->chip_data = NULL; in sun6i_r_intc_nmi_unmask()
|
| /linux/arch/x86/platform/uv/ |
| H A D | uv_irq.c | 60 uv_program_mmr(cfg, data->chip_data); in uv_set_irq_affinity() 78 struct uv_irq_2_mmr_pnode *chip_data; in uv_domain_alloc() local 86 chip_data = kmalloc_node(sizeof(*chip_data), GFP_KERNEL, in uv_domain_alloc() 88 if (!chip_data) in uv_domain_alloc() 96 chip_data->pnode = uv_blade_to_pnode(info->uv.blade); in uv_domain_alloc() 97 chip_data->offset = info->uv.offset; in uv_domain_alloc() 98 irq_domain_set_info(domain, virq, virq, &uv_irq_chip, chip_data, in uv_domain_alloc() 101 kfree(chip_data); in uv_domain_alloc() 113 kfree(irq_data->chip_data); in uv_domain_free() 125 uv_program_mmr(irqd_cfg(irq_data), irq_data->chip_data); in uv_domain_activate() [all …]
|
| /linux/drivers/gpio/ |
| H A D | gpio-pca9570.c | 39 const struct pca9570_chip_data *chip_data; member 49 if (gpio->chip_data->command != 0) in pca9570_read() 50 ret = i2c_smbus_read_byte_data(client, gpio->chip_data->command); in pca9570_read() 65 if (gpio->chip_data->command != 0) in pca9570_write() 66 return i2c_smbus_write_byte_data(client, gpio->chip_data->command, value); in pca9570_write() 131 gpio->chip_data = device_get_match_data(&client->dev); in pca9570_probe() 132 gpio->chip.ngpio = gpio->chip_data->ngpio; in pca9570_probe()
|
| H A D | gpio-idio-16.c | 110 struct regmap_irq_chip_data *chip_data; in devm_idio_16_regmap_register() local 147 err = devm_regmap_add_irq_chip(dev, data->map, config->irq, 0, 0, chip, &chip_data); in devm_idio_16_regmap_register() 166 gpio_config.irq_domain = regmap_irq_get_domain(chip_data); in devm_idio_16_regmap_register()
|
| H A D | gpio-104-idi-48.c | 132 struct regmap_irq_chip_data *chip_data; in idi_48_probe() local 163 &chip_data); in idi_48_probe() 174 config.irq_domain = regmap_irq_get_domain(chip_data); in idi_48_probe()
|
| /linux/drivers/iio/accel/ |
| H A D | adxl355_i2c.c | 26 const struct adxl355_chip_info *chip_data; in adxl355_i2c_probe() local 28 chip_data = i2c_get_match_data(client); in adxl355_i2c_probe() 29 if (!chip_data) in adxl355_i2c_probe() 40 return adxl355_core_probe(&client->dev, regmap, chip_data); in adxl355_i2c_probe()
|
| H A D | adxl355_spi.c | 28 const struct adxl355_chip_info *chip_data; in adxl355_spi_probe() local 31 chip_data = spi_get_device_match_data(spi); in adxl355_spi_probe() 32 if (!chip_data) in adxl355_spi_probe() 43 return adxl355_core_probe(&spi->dev, regmap, chip_data); in adxl355_spi_probe()
|
| H A D | adxl313_i2c.c | 67 const struct adxl313_chip_info *chip_data; in adxl313_i2c_probe() local 74 chip_data = i2c_get_match_data(client); in adxl313_i2c_probe() 77 &adxl31x_i2c_regmap_config[chip_data->type]); in adxl313_i2c_probe() 84 return adxl313_core_probe(&client->dev, regmap, chip_data, NULL); in adxl313_i2c_probe()
|
| H A D | adxl313_spi.c | 72 const struct adxl313_chip_info *chip_data; in adxl313_spi_probe() local 81 chip_data = spi_get_device_match_data(spi); in adxl313_spi_probe() 84 &adxl31x_spi_regmap_config[chip_data->type]); in adxl313_spi_probe() 93 chip_data, &adxl313_spi_setup); in adxl313_spi_probe()
|
| H A D | adxl380_spi.c | 25 const struct adxl380_chip_info *chip_data; in adxl380_spi_probe() local 28 chip_data = spi_get_device_match_data(spi); in adxl380_spi_probe() 34 return adxl380_probe(&spi->dev, regmap, chip_data); in adxl380_spi_probe()
|
| H A D | adxl380_i2c.c | 24 const struct adxl380_chip_info *chip_data; in adxl380_i2c_probe() local 26 chip_data = i2c_get_match_data(client); in adxl380_i2c_probe() 32 return adxl380_probe(&client->dev, regmap, chip_data); in adxl380_i2c_probe()
|
| /linux/arch/x86/hyperv/ |
| H A D | irqdomain.c | 231 if (data->chip_data) { in hv_irq_compose_msi_msg() 240 stored_entry = data->chip_data; in hv_irq_compose_msi_msg() 241 data->chip_data = NULL; in hv_irq_compose_msi_msg() 263 data->chip_data = stored_entry; in hv_irq_compose_msi_msg() 264 entry_to_msi_msg(data->chip_data, msg); in hv_irq_compose_msi_msg() 279 if (!irqd->chip_data) { in hv_teardown_msi_irq() 284 old_entry = *(struct hv_interrupt_entry *)irqd->chip_data; in hv_teardown_msi_irq() 287 kfree(irqd->chip_data); in hv_teardown_msi_irq() 288 irqd->chip_data = NULL; in hv_teardown_msi_irq()
|
| /linux/drivers/gpu/drm/rockchip/ |
| H A D | dw_hdmi-rockchip.c | 76 const struct rockchip_hdmi_chip_data *chip_data; member 241 if (hdmi->chip_data->max_tmds_clock && in dw_hdmi_rockchip_mode_valid() 242 mode->clock > hdmi->chip_data->max_tmds_clock) in dw_hdmi_rockchip_mode_valid() 289 if (hdmi->chip_data->lcdsel_grf_reg < 0) in dw_hdmi_rockchip_encoder_enable() 294 val = hdmi->chip_data->lcdsel_lit; in dw_hdmi_rockchip_encoder_enable() 296 val = hdmi->chip_data->lcdsel_big; in dw_hdmi_rockchip_encoder_enable() 304 ret = regmap_write(hdmi->regmap, hdmi->chip_data->lcdsel_grf_reg, val); in dw_hdmi_rockchip_encoder_enable() 546 hdmi->chip_data = plat_data->phy_data; in dw_hdmi_rockchip_bind() 584 if (hdmi->chip_data == &rk3568_chip_data) { in dw_hdmi_rockchip_bind()
|
| /linux/drivers/thermal/ |
| H A D | loongson2_thermal.c | 47 const struct loongson2_thermal_chip_data *chip_data; member 54 int reg_off = data->chip_data->thermal_sensor_sel * 2; in loongson2_set_ctrl_regs() 137 data->chip_data = device_get_match_data(dev); in loongson2_thermal_probe() 144 if (data->chip_data->flags & LS2K2000_THSENS_OUT_FLAG) { in loongson2_thermal_probe()
|
| /linux/drivers/gpu/drm/arm/display/komeda/d71/ |
| H A D | d71_dev.c | 181 struct d71_dev *d71 = mdev->chip_data; in d71_irq_handler() 221 struct d71_dev *d71 = mdev->chip_data; in d71_enable_irq() 241 struct d71_dev *d71 = mdev->chip_data; in d71_disable_irq() 260 struct d71_dev *d71 = mdev->chip_data; in d71_on_off_vblank() 286 struct d71_dev *d71 = mdev->chip_data; in d71_change_opmode() 301 struct d71_dev *d71 = mdev->chip_data; in d71_flush() 340 struct d71_dev *d71 = mdev->chip_data; in d71_cleanup() 346 mdev->chip_data = NULL; in d71_cleanup() 362 mdev->chip_data = d71; in d71_enum_resources() 558 struct d71_dev *d71 = mdev->chip_data; in d71_connect_iommu() [all …]
|
| /linux/drivers/pwm/ |
| H A D | pwm-sophgo-sg2042.c | 241 const struct sg2042_chip_data *chip_data; in pwm_sg2042_probe() local 248 chip_data = device_get_match_data(dev); in pwm_sg2042_probe() 249 if (!chip_data) in pwm_sg2042_probe() 279 chip->ops = &chip_data->ops; in pwm_sg2042_probe()
|
| /linux/drivers/iommu/ |
| H A D | hyperv-iommu.c | 196 struct hyperv_root_ir_data *data = irq_data->chip_data; in hyperv_root_ir_compose_msi_msg() 296 irq_data->chip_data = data; in hyperv_root_irq_remapping_alloc() 312 if (irq_data && irq_data->chip_data) { in hyperv_root_irq_remapping_free() 313 data = irq_data->chip_data; in hyperv_root_irq_remapping_free()
|