| /Linux-v5.4/drivers/mfd/ |
| D | madera-core.c | 202 static int madera_wait_for_boot(struct madera *madera) in madera_wait_for_boot() argument 216 regmap_read(madera->regmap, MADERA_IRQ1_RAW_STATUS_1, &val); in madera_wait_for_boot() 221 regmap_read(madera->regmap, MADERA_IRQ1_RAW_STATUS_1, &val); in madera_wait_for_boot() 225 dev_err(madera->dev, "Polling BOOT_DONE_STS timed out\n"); in madera_wait_for_boot() 233 regmap_write(madera->regmap, MADERA_IRQ1_STATUS_1, in madera_wait_for_boot() 236 pm_runtime_mark_last_busy(madera->dev); in madera_wait_for_boot() 241 static int madera_soft_reset(struct madera *madera) in madera_soft_reset() argument 245 ret = regmap_write(madera->regmap, MADERA_SOFTWARE_RESET, 0); in madera_soft_reset() 247 dev_err(madera->dev, "Failed to soft reset device: %d\n", ret); in madera_soft_reset() 257 static void madera_enable_hard_reset(struct madera *madera) in madera_enable_hard_reset() argument [all …]
|
| D | madera.h | 14 struct madera; 19 int madera_dev_init(struct madera *madera); 20 int madera_dev_exit(struct madera *madera); 28 int cs47l15_patch(struct madera *madera); 34 int cs47l35_patch(struct madera *madera); 40 int cs47l85_patch(struct madera *madera); 46 int cs47l90_patch(struct madera *madera); 52 int cs47l92_patch(struct madera *madera);
|
| D | madera-i2c.c | 23 struct madera *madera; in madera_i2c_probe() local 87 madera = devm_kzalloc(&i2c->dev, sizeof(*madera), GFP_KERNEL); in madera_i2c_probe() 88 if (!madera) in madera_i2c_probe() 92 madera->regmap = devm_regmap_init_i2c(i2c, regmap_16bit_config); in madera_i2c_probe() 93 if (IS_ERR(madera->regmap)) { in madera_i2c_probe() 94 ret = PTR_ERR(madera->regmap); in madera_i2c_probe() 100 madera->regmap_32bit = devm_regmap_init_i2c(i2c, regmap_32bit_config); in madera_i2c_probe() 101 if (IS_ERR(madera->regmap_32bit)) { in madera_i2c_probe() 102 ret = PTR_ERR(madera->regmap_32bit); in madera_i2c_probe() 108 madera->type = type; in madera_i2c_probe() [all …]
|
| D | madera-spi.c | 23 struct madera *madera; in madera_spi_probe() local 87 madera = devm_kzalloc(&spi->dev, sizeof(*madera), GFP_KERNEL); in madera_spi_probe() 88 if (!madera) in madera_spi_probe() 91 madera->regmap = devm_regmap_init_spi(spi, regmap_16bit_config); in madera_spi_probe() 92 if (IS_ERR(madera->regmap)) { in madera_spi_probe() 93 ret = PTR_ERR(madera->regmap); in madera_spi_probe() 99 madera->regmap_32bit = devm_regmap_init_spi(spi, regmap_32bit_config); in madera_spi_probe() 100 if (IS_ERR(madera->regmap_32bit)) { in madera_spi_probe() 101 ret = PTR_ERR(madera->regmap_32bit); in madera_spi_probe() 107 madera->type = type; in madera_spi_probe() [all …]
|
| D | Makefile | 75 madera-objs := madera-core.o 77 madera-objs += cs47l15-tables.o 80 madera-objs += cs47l35-tables.o 83 madera-objs += cs47l85-tables.o 86 madera-objs += cs47l90-tables.o 89 madera-objs += cs47l92-tables.o 91 obj-$(CONFIG_MFD_MADERA) += madera.o 92 obj-$(CONFIG_MFD_MADERA_I2C) += madera-i2c.o 93 obj-$(CONFIG_MFD_MADERA_SPI) += madera-spi.o
|
| D | cs47l92-tables.c | 92 int cs47l92_patch(struct madera *madera) in cs47l92_patch() argument 96 ret = regmap_register_patch(madera->regmap, in cs47l92_patch() 100 dev_err(madera->dev, in cs47l92_patch() 105 ret = regmap_register_patch(madera->regmap_32bit, in cs47l92_patch() 109 dev_err(madera->dev, in cs47l92_patch()
|
| D | cs47l85-tables.c | 311 int cs47l85_patch(struct madera *madera) in cs47l85_patch() argument 318 switch (madera->rev) { in cs47l85_patch() 336 ret = regmap_register_patch(madera->regmap, patch16, num16); in cs47l85_patch() 338 dev_err(madera->dev, in cs47l85_patch() 343 ret = regmap_register_patch(madera->regmap_32bit, patch32, num32); in cs47l85_patch() 345 dev_err(madera->dev, in cs47l85_patch()
|
| D | cs47l15-tables.c | 31 int cs47l15_patch(struct madera *madera) in cs47l15_patch() argument 35 ret = regmap_register_patch(madera->regmap, in cs47l15_patch() 39 dev_err(madera->dev, in cs47l15_patch()
|
| D | cs47l35-tables.c | 51 int cs47l35_patch(struct madera *madera) in cs47l35_patch() argument 55 ret = regmap_register_patch(madera->regmap, cs47l35_reva_16_patch, in cs47l35_patch() 58 dev_err(madera->dev, "Error applying patch: %d\n", ret); in cs47l35_patch()
|
| /Linux-v5.4/drivers/gpio/ |
| D | gpio-madera.c | 18 struct madera *madera; member 27 struct madera *madera = madera_gpio->madera; in madera_gpio_get_direction() local 32 ret = regmap_read(madera->regmap, MADERA_GPIO1_CTRL_2 + reg_offset, in madera_gpio_get_direction() 43 struct madera *madera = madera_gpio->madera; in madera_gpio_direction_in() local 46 return regmap_update_bits(madera->regmap, in madera_gpio_direction_in() 54 struct madera *madera = madera_gpio->madera; in madera_gpio_get() local 59 ret = regmap_read(madera->regmap, MADERA_GPIO1_CTRL_1 + reg_offset, in madera_gpio_get() 71 struct madera *madera = madera_gpio->madera; in madera_gpio_direction_out() local 76 ret = regmap_update_bits(madera->regmap, in madera_gpio_direction_out() 82 return regmap_update_bits(madera->regmap, in madera_gpio_direction_out() [all …]
|
| /Linux-v5.4/drivers/irqchip/ |
| D | irq-madera.c | 103 struct madera *madera = dev_get_drvdata(dev->parent); in madera_suspend() local 105 dev_dbg(madera->irq_dev, "Suspend, disabling IRQ\n"); in madera_suspend() 112 disable_irq(madera->irq); in madera_suspend() 119 struct madera *madera = dev_get_drvdata(dev->parent); in madera_suspend_noirq() local 121 dev_dbg(madera->irq_dev, "No IRQ suspend, reenabling IRQ\n"); in madera_suspend_noirq() 124 enable_irq(madera->irq); in madera_suspend_noirq() 131 struct madera *madera = dev_get_drvdata(dev->parent); in madera_resume_noirq() local 133 dev_dbg(madera->irq_dev, "No IRQ resume, disabling IRQ\n"); in madera_resume_noirq() 139 disable_irq(madera->irq); in madera_resume_noirq() 146 struct madera *madera = dev_get_drvdata(dev->parent); in madera_resume() local [all …]
|
| /Linux-v5.4/sound/soc/codecs/ |
| D | madera.c | 143 dev_err(_fll->madera->dev, "FLL%d: " fmt, _fll->id, ##__VA_ARGS__) 145 dev_warn(_fll->madera->dev, "FLL%d: " fmt, _fll->id, ##__VA_ARGS__) 147 dev_dbg(_fll->madera->dev, "FLL%d: " fmt, _fll->id, ##__VA_ARGS__) 168 struct madera *madera = priv->madera; in madera_spin_sysclk() local 173 if (pm_runtime_suspended(madera->dev)) in madera_spin_sysclk() 181 ret = regmap_read(madera->regmap, MADERA_SOFTWARE_RESET, &val); in madera_spin_sysclk() 183 dev_err(madera->dev, in madera_spin_sysclk() 202 static int madera_check_speaker_overheat(struct madera *madera, in madera_check_speaker_overheat() argument 208 ret = regmap_read(madera->regmap, MADERA_IRQ1_RAW_STATUS_15, &val); in madera_check_speaker_overheat() 210 dev_err(madera->dev, "Failed to read thermal status: %d\n", in madera_check_speaker_overheat() [all …]
|
| D | cs47l15.c | 75 struct madera *madera = priv->madera; in cs47l15_adsp_power_ev() local 79 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_2, &freq); in cs47l15_adsp_power_ev() 81 dev_err(madera->dev, in cs47l15_adsp_power_ev() 1233 struct madera *madera = priv->madera; in cs47l15_open() local 1239 dev_err(madera->dev, in cs47l15_open() 1252 struct madera *madera = priv->madera; in cs47l15_adsp2_irq() local 1257 dev_err(madera->dev, "Spurious compressed data IRQ\n"); in cs47l15_adsp2_irq() 1267 struct madera *madera = cs47l15->core.madera; in cs47l15_component_probe() local 1270 snd_soc_component_init_regmap(component, madera->regmap); in cs47l15_component_probe() 1272 mutex_lock(&madera->dapm_ptr_lock); in cs47l15_component_probe() [all …]
|
| D | cs47l92.c | 61 struct madera *madera = priv->madera; in cs47l92_put_demux() local 82 ret = regmap_read(madera->regmap, MADERA_OUTPUT_ENABLES_1, &cur); in cs47l92_put_demux() 84 dev_warn(madera->dev, "Failed to read outputs: %d\n", ret); in cs47l92_put_demux() 87 ret = regmap_update_bits(madera->regmap, MADERA_OUTPUT_ENABLES_1, in cs47l92_put_demux() 90 dev_warn(madera->dev, "Failed to disable outputs: %d\n", ret); in cs47l92_put_demux() 94 ret = regmap_update_bits(madera->regmap, MADERA_OUTPUT_ENABLES_1, in cs47l92_put_demux() 97 dev_err(madera->dev, "Failed to set OUT3 demux: %d\n", ret); in cs47l92_put_demux() 99 out_mono = madera->pdata.codec.out_mono[2 + mux]; in cs47l92_put_demux() 103 dev_warn(madera->dev, in cs47l92_put_demux() 107 ret = regmap_update_bits(madera->regmap, MADERA_OUTPUT_ENABLES_1, in cs47l92_put_demux() [all …]
|
| D | cs47l35.c | 93 struct madera *madera = priv->madera; in cs47l35_adsp_power_ev() local 97 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_1, &freq); in cs47l35_adsp_power_ev() 99 dev_err(madera->dev, in cs47l35_adsp_power_ev() 1509 struct madera *madera = priv->madera; in cs47l35_open() local 1517 dev_err(madera->dev, in cs47l35_open() 1530 struct madera *madera = priv->madera; in cs47l35_adsp2_irq() local 1541 blocking_notifier_call_chain(&madera->notifier, in cs47l35_adsp2_irq() 1548 dev_err(madera->dev, "Spurious compressed data IRQ\n"); in cs47l35_adsp2_irq() 1558 struct madera *madera = cs47l35->core.madera; in cs47l35_component_probe() local 1561 snd_soc_component_init_regmap(component, madera->regmap); in cs47l35_component_probe() [all …]
|
| D | madera.h | 105 struct madera; 120 struct madera *madera; member 157 struct madera *madera; member 406 int madera_init_fll(struct madera *madera, int id, int base, 437 struct madera *madera = priv->madera; in madera_register_notifier() local 439 return blocking_notifier_chain_register(&madera->notifier, nb); in madera_register_notifier() 447 struct madera *madera = priv->madera; in madera_unregister_notifier() local 449 return blocking_notifier_chain_unregister(&madera->notifier, nb); in madera_unregister_notifier()
|
| D | cs47l85.c | 117 struct madera *madera = priv->madera; in cs47l85_adsp_power_ev() local 121 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_1, &freq); in cs47l85_adsp_power_ev() 123 dev_err(madera->dev, in cs47l85_adsp_power_ev() 2448 struct madera *madera = priv->madera; in cs47l85_open() local 2456 dev_err(madera->dev, in cs47l85_open() 2469 struct madera *madera = priv->madera; in cs47l85_adsp2_irq() local 2480 blocking_notifier_call_chain(&madera->notifier, in cs47l85_adsp2_irq() 2487 dev_err(madera->dev, "Spurious compressed data IRQ\n"); in cs47l85_adsp2_irq() 2497 struct madera *madera = cs47l85->core.madera; in cs47l85_component_probe() local 2500 snd_soc_component_init_regmap(component, madera->regmap); in cs47l85_component_probe() [all …]
|
| D | cs47l90.c | 117 struct madera *madera = priv->madera; in cs47l90_adsp_power_ev() local 121 ret = regmap_read(madera->regmap, MADERA_DSP_CLOCK_2, &freq); in cs47l90_adsp_power_ev() 123 dev_err(madera->dev, in cs47l90_adsp_power_ev() 2359 struct madera *madera = priv->madera; in cs47l90_open() local 2367 dev_err(madera->dev, in cs47l90_open() 2380 struct madera *madera = priv->madera; in cs47l90_adsp2_irq() local 2391 blocking_notifier_call_chain(&madera->notifier, in cs47l90_adsp2_irq() 2398 dev_err(madera->dev, "Spurious compressed data IRQ\n"); in cs47l90_adsp2_irq() 2408 struct madera *madera = cs47l90->core.madera; in cs47l90_component_probe() local 2411 snd_soc_component_init_regmap(component, madera->regmap); in cs47l90_component_probe() [all …]
|
| /Linux-v5.4/include/linux/irqchip/ |
| D | irq-madera.h | 94 static inline int madera_get_irq_mapping(struct madera *madera, int irq) in madera_get_irq_mapping() argument 96 if (!madera->irq_dev) in madera_get_irq_mapping() 99 return regmap_irq_get_virq(madera->irq_data, irq); in madera_get_irq_mapping() 102 static inline int madera_request_irq(struct madera *madera, int irq, in madera_request_irq() argument 106 irq = madera_get_irq_mapping(madera, irq); in madera_request_irq() 114 static inline void madera_free_irq(struct madera *madera, int irq, void *data) in madera_free_irq() argument 116 irq = madera_get_irq_mapping(madera, irq); in madera_free_irq() 123 static inline int madera_set_irq_wake(struct madera *madera, int irq, int on) in madera_set_irq_wake() argument 125 irq = madera_get_irq_mapping(madera, irq); in madera_set_irq_wake()
|
| /Linux-v5.4/drivers/pinctrl/cirrus/ |
| D | Makefile | 5 pinctrl-madera-objs := pinctrl-madera-core.o 7 pinctrl-madera-objs += pinctrl-cs47l15.o 10 pinctrl-madera-objs += pinctrl-cs47l35.o 13 pinctrl-madera-objs += pinctrl-cs47l85.o 16 pinctrl-madera-objs += pinctrl-cs47l90.o 19 pinctrl-madera-objs += pinctrl-cs47l92.o 22 obj-$(CONFIG_PINCTRL_MADERA) += pinctrl-madera.o
|
| D | pinctrl-madera-core.c | 522 ret = regmap_read(priv->madera->regmap, reg, &conf[0]); in madera_pin_dbg_show() 526 ret = regmap_read(priv->madera->regmap, reg + 1, &conf[1]); in madera_pin_dbg_show() 613 struct madera *madera = priv->madera; in madera_mux_set_mux() local 642 ret = regmap_update_bits(madera->regmap, reg, in madera_mux_set_mux() 660 ret = regmap_update_bits(madera->regmap, in madera_mux_set_mux() 678 struct madera *madera = priv->madera; in madera_gpio_set_direction() local 688 ret = regmap_update_bits(madera->regmap, reg, MADERA_GP1_DIR_MASK, val); in madera_gpio_set_direction() 700 struct madera *madera = priv->madera; in madera_gpio_request_enable() local 705 ret = regmap_update_bits(madera->regmap, reg, MADERA_GP1_FN_MASK, 1); in madera_gpio_request_enable() 717 struct madera *madera = priv->madera; in madera_gpio_disable_free() local [all …]
|
| D | pinctrl-madera.h | 25 struct madera *madera; member
|
| /Linux-v5.4/drivers/regulator/ |
| D | arizona-micsupp.c | 346 struct madera *madera = dev_get_drvdata(pdev->dev.parent); in madera_micsupp_probe() local 353 micsupp->regmap = madera->regmap; in madera_micsupp_probe() 354 micsupp->dapm = &madera->dapm; in madera_micsupp_probe() 355 micsupp->dev = madera->dev; in madera_micsupp_probe() 359 &madera->pdata.micvdd); in madera_micsupp_probe()
|
| D | arizona-ldo1.c | 354 struct madera *madera = dev_get_drvdata(pdev->dev.parent); in madera_ldo1_probe() local 363 ldo1->regmap = madera->regmap; in madera_ldo1_probe() 368 &madera->pdata.ldo1, in madera_ldo1_probe() 373 madera->internal_dcvdd = !external_dcvdd; in madera_ldo1_probe()
|
| /Linux-v5.4/Documentation/devicetree/bindings/regulator/ |
| D | arizona-regulator.txt | 9 For Cirrus Logic Madera codecs: ../mfd/madera.txt
|