@@ -209,13 +209,23 @@ static const struct regmap_access_table axp313a_volatile_table = {
209209};
210210
211211static const struct regmap_range axp717_writeable_ranges [] = {
212+ regmap_reg_range (AXP717_PMU_FAULT , AXP717_MODULE_EN_CONTROL_1 ),
213+ regmap_reg_range (AXP717_MIN_SYS_V_CONTROL , AXP717_BOOST_CONTROL ),
214+ regmap_reg_range (AXP717_VSYS_V_POWEROFF , AXP717_VSYS_V_POWEROFF ),
212215 regmap_reg_range (AXP717_IRQ0_EN , AXP717_IRQ4_EN ),
213216 regmap_reg_range (AXP717_IRQ0_STATE , AXP717_IRQ4_STATE ),
217+ regmap_reg_range (AXP717_ICC_CHG_SET , AXP717_CV_CHG_SET ),
214218 regmap_reg_range (AXP717_DCDC_OUTPUT_CONTROL , AXP717_CPUSLDO_CONTROL ),
219+ regmap_reg_range (AXP717_ADC_CH_EN_CONTROL , AXP717_ADC_CH_EN_CONTROL ),
220+ regmap_reg_range (AXP717_ADC_DATA_SEL , AXP717_ADC_DATA_SEL ),
215221};
216222
217223static const struct regmap_range axp717_volatile_ranges [] = {
224+ regmap_reg_range (AXP717_ON_INDICATE , AXP717_PMU_FAULT ),
218225 regmap_reg_range (AXP717_IRQ0_STATE , AXP717_IRQ4_STATE ),
226+ regmap_reg_range (AXP717_BATT_PERCENT_DATA , AXP717_BATT_PERCENT_DATA ),
227+ regmap_reg_range (AXP717_BATT_V_H , AXP717_BATT_CHRG_I_L ),
228+ regmap_reg_range (AXP717_ADC_DATA_H , AXP717_ADC_DATA_L ),
219229};
220230
221231static const struct regmap_access_table axp717_writeable_table = {
@@ -308,6 +318,12 @@ static const struct resource axp22x_usb_power_supply_resources[] = {
308318 DEFINE_RES_IRQ_NAMED (AXP22X_IRQ_VBUS_REMOVAL , "VBUS_REMOVAL" ),
309319};
310320
321+ static const struct resource axp717_usb_power_supply_resources [] = {
322+ DEFINE_RES_IRQ_NAMED (AXP717_IRQ_VBUS_OVER_V , "VBUS_OVER_V" ),
323+ DEFINE_RES_IRQ_NAMED (AXP717_IRQ_VBUS_PLUGIN , "VBUS_PLUGIN" ),
324+ DEFINE_RES_IRQ_NAMED (AXP717_IRQ_VBUS_REMOVAL , "VBUS_REMOVAL" ),
325+ };
326+
311327/* AXP803 and AXP813/AXP818 share the same interrupts */
312328static const struct resource axp803_usb_power_supply_resources [] = {
313329 DEFINE_RES_IRQ_NAMED (AXP803_IRQ_VBUS_PLUGIN , "VBUS_PLUGIN" ),
@@ -422,7 +438,7 @@ static const struct regmap_config axp717_regmap_config = {
422438 .val_bits = 8 ,
423439 .wr_table = & axp717_writeable_table ,
424440 .volatile_table = & axp717_volatile_table ,
425- .max_register = AXP717_CPUSLDO_CONTROL ,
441+ .max_register = AXP717_ADC_DATA_L ,
426442 .cache_type = REGCACHE_MAPLE ,
427443};
428444
@@ -1024,6 +1040,13 @@ static struct mfd_cell axp313a_cells[] = {
10241040static struct mfd_cell axp717_cells [] = {
10251041 MFD_CELL_NAME ("axp20x-regulator" ),
10261042 MFD_CELL_RES ("axp20x-pek" , axp717_pek_resources ),
1043+ MFD_CELL_OF ("axp717-adc" ,
1044+ NULL , NULL , 0 , 0 , "x-powers,axp717-adc" ),
1045+ MFD_CELL_OF ("axp20x-usb-power-supply" ,
1046+ axp717_usb_power_supply_resources , NULL , 0 , 0 ,
1047+ "x-powers,axp717-usb-power-supply" ),
1048+ MFD_CELL_OF ("axp20x-battery-power-supply" ,
1049+ NULL , NULL , 0 , 0 , "x-powers,axp717-battery-power-supply" ),
10271050};
10281051
10291052static const struct resource axp288_adc_resources [] = {
0 commit comments