Home
last modified time | relevance | path

Searched refs:chip_data (Results 1 – 25 of 70) sorted by relevance

123

/linux/drivers/irqchip/
H A Dirq-mtk-sysirq.c29 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 Dirq-stm32mp-exti.c266 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 Dirq-owl-sirq.c135 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 Dirq-stm32-exti.c110 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 Dirq-vf610-mscm-ir.c89 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 Dexynos-combiner.c67 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 Dirq-mtk-cirq.c68 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 Dirq-gic-pm.c20 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 Dirq-sun6i-r.c94 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 Duv_irq.c60 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 Dgpio-pca9570.c39 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 Dgpio-idio-16.c110 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 Dgpio-104-idi-48.c132 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 Dadxl355_i2c.c26 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 Dadxl355_spi.c28 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 Dadxl313_i2c.c67 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 Dadxl313_spi.c72 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 Dadxl380_spi.c25 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 Dadxl380_i2c.c24 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 Dirqdomain.c231 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 Ddw_hdmi-rockchip.c76 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 Dloongson2_thermal.c47 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 Dd71_dev.c181 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 Dpwm-sophgo-sg2042.c241 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 Dhyperv-iommu.c196 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()

123