mfd: axp20x: Add a few missing defines for AXP288 specific registers
PATCH v3 1/2 mfd: axp20x: Add a few missing defines for AXP288 specific registers
Add defines for the AXP288_POWER_REASON and AXP288_RT_BATT_V_H and AXP288_RT_BATT_V_L and AXP288_BC_* registers. While at it also move the AXP288_TS_ADC_H-AXP288_GP_ADC_L defines, which for some reason where in a different place, together with the rest of the AXP288 specific defines.
---
Changes v2:
-New patch in v2 of this set
Changes v3:
-Also add defines for the AXP288_BC_* registers
--- include/linux/mfd/axp20x.h | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-)
include/linux/mfd/axp20x.h +11 -5
@@ -229,9 +229,20 @@ enum {#define AXP22X_BATLOW_THRES1 0xe6/* AXP288 specific registers */ +#define AXP288_POWER_REASON 0x02 +#define AXP288_BC_GLOBAL 0x2c +#define AXP288_BC_VBUS_CNTL 0x2d +#define AXP288_BC_USB_STAT 0x2e +#define AXP288_BC_DET_STAT 0x2f#define AXP288_PMIC_ADC_H 0x56#define AXP288_PMIC_ADC_L 0x57 +#define AXP288_TS_ADC_H 0x58 +#define AXP288_TS_ADC_L 0x59 +#define AXP288_GP_ADC_H 0x5a +#define AXP288_GP_ADC_L 0x5b#define AXP288_ADC_TS_PIN_CTRL 0x84 +#define AXP288_RT_BATT_V_H 0xa0 +#define AXP288_RT_BATT_V_L 0xa1/* Fuel Gauge */ #define AXP288_FG_RDC1_REG 0xba
@@ -508,11 +519,6 @@ enum axp809_irqs { AXP809_IRQ_GPIO0_INPUT, }; -#define AXP288_TS_ADC_H 0x58 -#define AXP288_TS_ADC_L 0x59 -#define AXP288_GP_ADC_H 0x5a -#define AXP288_GP_ADC_L 0x5b -struct axp20x_dev {struct device *dev;int irq;
Signature · 1 line
2.9.3
PATCH v3 2/2 mfd: axp20x: Fix axp288 volatile ranges
The axp288 pmic has a lot more volatile registers then we were listing in axp288_volatile_ranges, fix this.
---
Changes in v2:
-Add the following extra regs to axp288_volatile_ranges: AXP288_POWER_REASON,
AXP20X_TIMER_CTRL, AXP288_RT_BATT_V_H, AXP288_RT_BATT_V_L
Changes in v3:
-Also add: AXP288_BC_GLOBAL, AXP288_BC_DET_STATUS
--- drivers/mfd/axp20x.c | 7 +++++++ 1 file changed, 7 insertions(+)
drivers/mfd/axp20x.c +7 -0
@@ -117,7 +117,14 @@ static const struct regmap_range axp288_writeable_ranges[] = { };static const struct regmap_range axp288_volatile_ranges[] = { +regmap_reg_range (AXP20X_PWR_INPUT_STATUS ,AXP288_POWER_REASON ), +regmap_reg_range (AXP288_BC_GLOBAL ,AXP288_BC_GLOBAL ), +regmap_reg_range (AXP288_BC_DET_STAT ,AXP288_BC_DET_STAT ),regmap_reg_range (AXP20X_IRQ1_EN ,AXP20X_IPSOUT_V_HIGH_L ), +regmap_reg_range (AXP20X_TIMER_CTRL ,AXP20X_TIMER_CTRL ), +regmap_reg_range (AXP22X_GPIO_STATE ,AXP22X_GPIO_STATE ), +regmap_reg_range (AXP288_RT_BATT_V_H ,AXP288_RT_BATT_V_L ), +regmap_reg_range (AXP20X_FG_RES ,AXP288_FG_CC_CAP_REG ), };static const struct regmap_access_table axp288_writeable_table = {
Signature · 1 line
2.9.3
Re: [PATCH v3 2/2] mfd: axp20x: Fix axp288 volatile ranges
Quoted 4 lines · Hans de Goede
The axp288 pmic has a lot more volatile registers then we were listing in
axp288_volatile_ranges, fix this.Signed-off-by Hans de Goede <[email protected]>
FYI, if you're going to add support for the battery charger detection module later, you would need to add the remaining AXP288_BC_* registers to the writable table.
Re: [PATCH v3 2/2] mfd: axp20x: Fix axp288 volatile ranges
Hi,
Quoted 7 lines · Chen-Yu Tsai
Quoted 4 lines · Hans de Goede
The axp288 pmic has a lot more volatile registers then we were listing in
axp288_volatile_ranges, fix this.Signed-off-by Hans de Goede <[email protected]>Acked-by Chen-Yu Tsai <[email protected]>
Thank you.
Quoted 2 lines
FYI, if you're going to add support for the battery charger detection module later,
That driver is already in mainline, but like the other axp288 drivers it needs some love to actual successfully probe and work, I've a set of patches for ready for this, since I've been successfully testing them the last few days I guess I might as well send them now, so expect some patches for this soon :)
you would need to add the remaining AXP288_BC_* registers
Quoted 1 line
to the writable table.
The writeable table contains:
regmap_reg_range(AXP20X_DATACACHE(0), AXP20X_IRQ6_STATE),
Which already includes all of the BC registers.
Regards,
Hans
Lee Jones
AppliedRe: [PATCH v3 2/2] mfd: axp20x: Fix axp288 volatile ranges
In reply to Hans de GoedeQuoted 10 lines · Hans de Goede
The axp288 pmic has a lot more volatile registers then we were listing in
axp288_volatile_ranges, fix this.Signed-off-by Hans de Goede <[email protected]>---
Changes in v2:
-Add the following extra regs toaxp288_volatile_ranges:AXP288_POWER_REASON,
AXP20X_TIMER_CTRL,AXP288_RT_BATT_V_H,AXP288_RT_BATT_V_L
Changes in v3:
-Also add:AXP288_BC_GLOBAL,AXP288_BC_DET_STATUS
Quoted 3 lines
--- drivers/mfd/axp20x.c | 7 +++++++ 1 file changed, 7 insertions(+)
Applied, thanks.
Quoted 19 lines
drivers/mfd/axp20x.c +7
-0@@ -117,7 +117,14 @@ static const struct regmap_range axp288_writeable_ranges[] = { };static const struct regmap_range axp288_volatile_ranges[] = { +regmap_reg_range (AXP20X_PWR_INPUT_STATUS ,AXP288_POWER_REASON ), +regmap_reg_range (AXP288_BC_GLOBAL ,AXP288_BC_GLOBAL ), +regmap_reg_range (AXP288_BC_DET_STAT ,AXP288_BC_DET_STAT ),regmap_reg_range (AXP20X_IRQ1_EN ,AXP20X_IPSOUT_V_HIGH_L ), +regmap_reg_range (AXP20X_TIMER_CTRL ,AXP20X_TIMER_CTRL ), +regmap_reg_range (AXP22X_GPIO_STATE ,AXP22X_GPIO_STATE ), +regmap_reg_range (AXP288_RT_BATT_V_H ,AXP288_RT_BATT_V_L ), +regmap_reg_range (AXP20X_FG_RES ,AXP288_FG_CC_CAP_REG ), };static const struct regmap_access_table axp288_writeable_table = {
Signature · 4 lines
Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
Quoted 7 lines · Hans de Goede
Add defines for the
AXP288_POWER_REASONandAXP288_RT_BATT_V_HandAXP288_RT_BATT_V_Land AXP288_BC_* registers. While at it also move the AXP288_TS_ADC_H-AXP288_GP_ADC_L defines, which for some reason where in a different place, together with the rest of the AXP288 specific defines.Signed-off-by Hans de Goede <[email protected]>
Lee Jones
AppliedQuoted 7 lines · Hans de Goede
Add defines for the
AXP288_POWER_REASONandAXP288_RT_BATT_V_HandAXP288_RT_BATT_V_Land AXP288_BC_* registers. While at it also move the AXP288_TS_ADC_H-AXP288_GP_ADC_L defines, which for some reason where in a different place, together with the rest of the AXP288 specific defines.Signed-off-by Hans de Goede <[email protected]>
Quoted 8 lines
---
Changes v2:
-New patch in v2 of this set
Changes v3:
-Also add defines for the AXP288_BC_* registers--- include/linux/mfd/axp20x.h | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-)
Applied, thanks.
Quoted 37 lines
include/linux/mfd/axp20x.h +11
-5@@ -229,9 +229,20 @@ enum {#define AXP22X_BATLOW_THRES1 0xe6/* AXP288 specific registers */ +#define AXP288_POWER_REASON 0x02 +#define AXP288_BC_GLOBAL 0x2c +#define AXP288_BC_VBUS_CNTL 0x2d +#define AXP288_BC_USB_STAT 0x2e +#define AXP288_BC_DET_STAT 0x2f#define AXP288_PMIC_ADC_H 0x56#define AXP288_PMIC_ADC_L 0x57 +#define AXP288_TS_ADC_H 0x58 +#define AXP288_TS_ADC_L 0x59 +#define AXP288_GP_ADC_H 0x5a +#define AXP288_GP_ADC_L 0x5b#define AXP288_ADC_TS_PIN_CTRL 0x84 +#define AXP288_RT_BATT_V_H 0xa0 +#define AXP288_RT_BATT_V_L 0xa1/* Fuel Gauge */ #define AXP288_FG_RDC1_REG 0xba@@ -508,11 +519,6 @@ enum axp809_irqs { AXP809_IRQ_GPIO0_INPUT, }; -#define AXP288_TS_ADC_H 0x58 -#define AXP288_TS_ADC_L 0x59 -#define AXP288_GP_ADC_H 0x5a -#define AXP288_GP_ADC_L 0x5b -struct axp20x_dev {struct device *dev;int irq;
Signature · 4 lines
Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
Lee Jones
AppliedQuoted 7 lines · Hans de Goede
Add defines for the
AXP288_POWER_REASONandAXP288_RT_BATT_V_HandAXP288_RT_BATT_V_Land AXP288_BC_* registers. While at it also move the AXP288_TS_ADC_H-AXP288_GP_ADC_L defines, which for some reason where in a different place, together with the rest of the AXP288 specific defines.Signed-off-by Hans de Goede <[email protected]>
Quoted 8 lines
---
Changes v2:
-New patch in v2 of this set
Changes v3:
-Also add defines for the AXP288_BC_* registers--- include/linux/mfd/axp20x.h | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-)
Applied, thanks.
Quoted 37 lines
include/linux/mfd/axp20x.h +11
-5@@ -229,9 +229,20 @@ enum {#define AXP22X_BATLOW_THRES1 0xe6/* AXP288 specific registers */ +#define AXP288_POWER_REASON 0x02 +#define AXP288_BC_GLOBAL 0x2c +#define AXP288_BC_VBUS_CNTL 0x2d +#define AXP288_BC_USB_STAT 0x2e +#define AXP288_BC_DET_STAT 0x2f#define AXP288_PMIC_ADC_H 0x56#define AXP288_PMIC_ADC_L 0x57 +#define AXP288_TS_ADC_H 0x58 +#define AXP288_TS_ADC_L 0x59 +#define AXP288_GP_ADC_H 0x5a +#define AXP288_GP_ADC_L 0x5b#define AXP288_ADC_TS_PIN_CTRL 0x84 +#define AXP288_RT_BATT_V_H 0xa0 +#define AXP288_RT_BATT_V_L 0xa1/* Fuel Gauge */ #define AXP288_FG_RDC1_REG 0xba@@ -508,11 +519,6 @@ enum axp809_irqs { AXP809_IRQ_GPIO0_INPUT, }; -#define AXP288_TS_ADC_H 0x58 -#define AXP288_TS_ADC_L 0x59 -#define AXP288_GP_ADC_H 0x5a -#define AXP288_GP_ADC_L 0x5b -struct axp20x_dev {struct device *dev;int irq;
Signature · 4 lines
Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog