This series adds support for the AXP192 PMIC to the AXP20x MFD driver framework, including support for regulators, ADCs, and AC/USB/battery power supplies. This depends on the "regmap-irq cleanups and refactoring" series[1] for the ->get_irq_reg() operation, needed by the AXP192's IRQ chip. Changes in v5: * Drop everything related to GPIO / pin control. It seems that driver is going to require further discussion while the rest of the series probably won't need much at this point, and I'd rather not hold the whole series up over one driver. Older changelogs can be found in v4[2]. [1]: https://lore.kernel.org/lkml/20220623211420.918875-1-aidanmacdonald.0x0@xxxxxxxxx/ [2]: https://lore.kernel.org/lkml/20220629143046.213584-1-aidanmacdonald.0x0@xxxxxxxxx/ Aidan MacDonald (13): dt-bindings: mfd: add bindings for AXP192 MFD device dt-bindings: iio: adc: axp209: Add AXP192 compatible dt-bindings: power: supply: axp20x: Add AXP192 compatible dt-bindings: power: axp20x-battery: Add AXP192 compatible mfd: axp20x: Add support for AXP192 regulator: axp20x: Add support for AXP192 iio: adc: axp20x_adc: Minor code cleanups iio: adc: axp20x_adc: Replace adc_en2 flag with adc_en2_mask field iio: adc: axp20x_adc: Add support for AXP192 power: supply: axp20x_usb_power: Add support for AXP192 power: axp20x_battery: Add constant charge current table power: axp20x_battery: Support battery status without fuel gauge power: axp20x_battery: Add support for AXP192 .../bindings/iio/adc/x-powers,axp209-adc.yaml | 18 + .../bindings/mfd/x-powers,axp152.yaml | 1 + .../x-powers,axp20x-battery-power-supply.yaml | 1 + .../x-powers,axp20x-usb-power-supply.yaml | 1 + drivers/iio/adc/axp20x_adc.c | 356 ++++++++++++++++-- drivers/mfd/axp20x-i2c.c | 2 + drivers/mfd/axp20x.c | 141 +++++++ drivers/power/supply/axp20x_battery.c | 142 ++++++- drivers/power/supply/axp20x_usb_power.c | 84 ++++- drivers/regulator/axp20x-regulator.c | 100 ++++- include/linux/mfd/axp20x.h | 84 +++++ 11 files changed, 856 insertions(+), 74 deletions(-) base-commit: e35e5b6f695d241ffb1d223207da58a1fbcdff4b prerequisite-patch-id: a45db1cac7537769dc10087fc61f977dc150744c prerequisite-patch-id: cb8aa009c7bb7a6575eb05e3af65342dc8d0efa3 prerequisite-patch-id: 8d32557e53b894d1fb17250d2d0eb3673f068d37 prerequisite-patch-id: 5b293867ef81e3697892ac51b941bb53680a70dc prerequisite-patch-id: 8138d39a4817e804141bfe8c2ad37d9c55456a40 prerequisite-patch-id: b01216129e887519d441cf556bbc75c397871773 prerequisite-patch-id: b5dcf0c0609113c2d81bc557c1fc95ef23f40811 prerequisite-patch-id: 622ca1c10e851b1889aaa567c1d2a0adf43cca44 prerequisite-patch-id: d28c5187f9bf0e43f27b2f4aa8dcf7fd91842a03 prerequisite-patch-id: d29d54b756be73304f844abeeaf9b46a5c0119d5 prerequisite-patch-id: 5d405790ae89c0831b46a359f86e94bac5a67470 prerequisite-patch-id: c90120e79acbb52ffa148bfedee1df9d35b5eced -- 2.35.1