diff options
| author | Chen-Yu Tsai <wens@csie.org> | 2017-07-26 04:28:26 -0400 |
|---|---|---|
| committer | Lee Jones <lee.jones@linaro.org> | 2017-09-05 03:46:00 -0400 |
| commit | 7303733a6ca2a68b210ebdc09cace8b0ffe8b179 (patch) | |
| tree | fcec4906f2371b4ee7ff08a3a0107d64c7e8859a /include/linux/mfd | |
| parent | 7e312ffdd7aa68f0110f5d95416f78ea29ceb984 (diff) | |
mfd: axp20x: Add support for AXP813 PMIC
The X-Powers AXP813 PMIC is normally used with Allwinner's A83T SoC.
It has the same range of functions as other X-Powers PMICs, such as
DC-DC buck converter and linear regulator outputs, AC-IN and VBUS
power supplies, power button trigger, GPIOs, ADCs, and a battery
charger.
Note that the IRQ table given in the datasheet is incorrect: in IRQ
enable/status registers 1, there are separate IRQs for ACIN and VBUS,
instead of bits [7:5] being the same as bits [4:2]. So it shares the
same IRQs as the AXP803, rather than the AXP288.
This patch adds basic mfd support for it, with only the power button
enabled.
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
Acked-by: Maxime Ripard <maxime.ripard@free-electrons.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
Diffstat (limited to 'include/linux/mfd')
| -rw-r--r-- | include/linux/mfd/axp20x.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/include/linux/mfd/axp20x.h b/include/linux/mfd/axp20x.h index 965b027e31b3..e9c908c4fba8 100644 --- a/include/linux/mfd/axp20x.h +++ b/include/linux/mfd/axp20x.h | |||
| @@ -23,6 +23,7 @@ enum axp20x_variants { | |||
| 23 | AXP803_ID, | 23 | AXP803_ID, |
| 24 | AXP806_ID, | 24 | AXP806_ID, |
| 25 | AXP809_ID, | 25 | AXP809_ID, |
| 26 | AXP813_ID, | ||
| 26 | NR_AXP20X_VARIANTS, | 27 | NR_AXP20X_VARIANTS, |
| 27 | }; | 28 | }; |
| 28 | 29 | ||
| @@ -387,6 +388,34 @@ enum { | |||
| 387 | AXP803_REG_ID_MAX, | 388 | AXP803_REG_ID_MAX, |
| 388 | }; | 389 | }; |
| 389 | 390 | ||
| 391 | enum { | ||
| 392 | AXP813_DCDC1 = 0, | ||
| 393 | AXP813_DCDC2, | ||
| 394 | AXP813_DCDC3, | ||
| 395 | AXP813_DCDC4, | ||
| 396 | AXP813_DCDC5, | ||
| 397 | AXP813_DCDC6, | ||
| 398 | AXP813_DCDC7, | ||
| 399 | AXP813_ALDO1, | ||
| 400 | AXP813_ALDO2, | ||
| 401 | AXP813_ALDO3, | ||
| 402 | AXP813_DLDO1, | ||
| 403 | AXP813_DLDO2, | ||
| 404 | AXP813_DLDO3, | ||
| 405 | AXP813_DLDO4, | ||
| 406 | AXP813_ELDO1, | ||
| 407 | AXP813_ELDO2, | ||
| 408 | AXP813_ELDO3, | ||
| 409 | AXP813_FLDO1, | ||
| 410 | AXP813_FLDO2, | ||
| 411 | AXP813_FLDO3, | ||
| 412 | AXP813_RTC_LDO, | ||
| 413 | AXP813_LDO_IO0, | ||
| 414 | AXP813_LDO_IO1, | ||
| 415 | AXP813_SW, | ||
| 416 | AXP813_REG_ID_MAX, | ||
| 417 | }; | ||
| 418 | |||
| 390 | /* IRQs */ | 419 | /* IRQs */ |
| 391 | enum { | 420 | enum { |
| 392 | AXP152_IRQ_LDO0IN_CONNECT = 1, | 421 | AXP152_IRQ_LDO0IN_CONNECT = 1, |
