regulator: rc5t583: Simplify RC5T583_REG macro
PATCH 1/1 regulator: rc5t583: Simplify RC5T583_REG macro
Simplify RC5T583_REG macro by removing _vout_reg and _ds_reg parameters.
The naming for vout_reg and deepsleep_reg can be replaced by:
.vout_reg = RC5T583_REG_##_id##DAC,
.deepsleep_reg = RC5T583_REG_##_id##DAC_DS,
--- drivers/regulator/rc5t583-regulator.c | 50 ++++++++++++--------------------- 1 files changed, 18 insertions(+), 32 deletions(-)
drivers/regulator/rc5t583-regulator.c +18 -32
@@ -196,16 +196,16 @@ static struct regulator_ops rc5t583_ops = { .set_voltage_time_sel = rc5t583_set_voltage_time_sel, }; -#define RC5T583_REG (_id, _en_reg, _en_bit, _disc_reg, _disc_bit, _vout_reg, \ - _vout_mask, _ds_reg, _min_mv, _max_mv, _step_uV, _enable_mv) \ +#define RC5T583_REG (_id, _en_reg, _en_bit, _disc_reg, _disc_bit, \ + _vout_mask, _min_mv, _max_mv, _step_uV, _enable_mv) \ { \ .reg_en_reg = RC5T583_REG_##_en_reg, \ .en_bit = _en_bit, \ .reg_disc_reg = RC5T583_REG_##_disc_reg, \ .disc_bit = _disc_bit, \ - .vout_reg = RC5T583_REG_##_vout_reg, \ + .vout_reg = RC5T583_REG_##_id##DAC, \ .vout_mask = _vout_mask, \ - .deepsleep_reg = RC5T583_REG_##_ds_reg, \ + .deepsleep_reg = RC5T583_REG_##_id##DAC_DS, \ .min_uV = _min_mv * 1000, \ .max_uV = _max_mv * 1000, \ .step_uV = _step_uV, \
@@ -223,34 +223,20 @@ static struct regulator_ops rc5t583_ops = { }static struct rc5t583_regulator_info rc5t583_reg_info[RC5T583_REGULATOR_MAX ] = { -RC5T583_REG (DC0 ,DC0CTL ,0 ,DC0CTL ,1 ,DC0DAC ,0x7F ,DC0DAC_DS , -700 ,1500 ,12500 ,4 ), -RC5T583_REG (DC1 ,DC1CTL ,0 ,DC1CTL ,1 ,DC1DAC ,0x7F ,DC1DAC_DS , -700 ,1500 ,12500 ,14 ), -RC5T583_REG (DC2 ,DC2CTL ,0 ,DC2CTL ,1 ,DC2DAC ,0x7F ,DC2DAC_DS , -900 ,2400 ,12500 ,14 ), -RC5T583_REG (DC3 ,DC3CTL ,0 ,DC3CTL ,1 ,DC3DAC ,0x7F ,DC3DAC_DS , -900 ,2400 ,12500 ,14 ), -RC5T583_REG (LDO0 ,LDOEN2 ,0 ,LDODIS2 ,0 ,LDO0DAC ,0x7F ,LDO0DAC_DS , -900 ,3400 ,25000 ,160 ), -RC5T583_REG (LDO1 ,LDOEN2 ,1 ,LDODIS2 ,1 ,LDO1DAC ,0x7F ,LDO1DAC_DS , -900 ,3400 ,25000 ,160 ), -RC5T583_REG (LDO2 ,LDOEN2 ,2 ,LDODIS2 ,2 ,LDO2DAC ,0x7F ,LDO2DAC_DS , -900 ,3400 ,25000 ,160 ), -RC5T583_REG (LDO3 ,LDOEN2 ,3 ,LDODIS2 ,3 ,LDO3DAC ,0x7F ,LDO3DAC_DS , -900 ,3400 ,25000 ,160 ), -RC5T583_REG (LDO4 ,LDOEN2 ,4 ,LDODIS2 ,4 ,LDO4DAC ,0x3F ,LDO4DAC_DS , -750 ,1500 ,12500 ,133 ), -RC5T583_REG (LDO5 ,LDOEN2 ,5 ,LDODIS2 ,5 ,LDO5DAC ,0x7F ,LDO5DAC_DS , -900 ,3400 ,25000 ,267 ), -RC5T583_REG (LDO6 ,LDOEN2 ,6 ,LDODIS2 ,6 ,LDO6DAC ,0x7F ,LDO6DAC_DS , -900 ,3400 ,25000 ,133 ), -RC5T583_REG (LDO7 ,LDOEN2 ,7 ,LDODIS2 ,7 ,LDO7DAC ,0x7F ,LDO7DAC_DS , -900 ,3400 ,25000 ,233 ), -RC5T583_REG (LDO8 ,LDOEN1 ,0 ,LDODIS1 ,0 ,LDO8DAC ,0x7F ,LDO8DAC_DS , -900 ,3400 ,25000 ,233 ), -RC5T583_REG (LDO9 ,LDOEN1 ,1 ,LDODIS1 ,1 ,LDO9DAC ,0x7F ,LDO9DAC_DS , -900 ,3400 ,25000 ,133 ), +RC5T583_REG (DC0 ,DC0CTL ,0 ,DC0CTL ,1 ,0x7F ,700 ,1500 ,12500 ,4 ), +RC5T583_REG (DC1 ,DC1CTL ,0 ,DC1CTL ,1 ,0x7F ,700 ,1500 ,12500 ,14 ), +RC5T583_REG (DC2 ,DC2CTL ,0 ,DC2CTL ,1 ,0x7F ,900 ,2400 ,12500 ,14 ), +RC5T583_REG (DC3 ,DC3CTL ,0 ,DC3CTL ,1 ,0x7F ,900 ,2400 ,12500 ,14 ), +RC5T583_REG (LDO0 ,LDOEN2 ,0 ,LDODIS2 ,0 ,0x7F ,900 ,3400 ,25000 ,160 ), +RC5T583_REG (LDO1 ,LDOEN2 ,1 ,LDODIS2 ,1 ,0x7F ,900 ,3400 ,25000 ,160 ), +RC5T583_REG (LDO2 ,LDOEN2 ,2 ,LDODIS2 ,2 ,0x7F ,900 ,3400 ,25000 ,160 ), +RC5T583_REG (LDO3 ,LDOEN2 ,3 ,LDODIS2 ,3 ,0x7F ,900 ,3400 ,25000 ,160 ), +RC5T583_REG (LDO4 ,LDOEN2 ,4 ,LDODIS2 ,4 ,0x3F ,750 ,1500 ,12500 ,133 ), +RC5T583_REG (LDO5 ,LDOEN2 ,5 ,LDODIS2 ,5 ,0x7F ,900 ,3400 ,25000 ,267 ), +RC5T583_REG (LDO6 ,LDOEN2 ,6 ,LDODIS2 ,6 ,0x7F ,900 ,3400 ,25000 ,133 ), +RC5T583_REG (LDO7 ,LDOEN2 ,7 ,LDODIS2 ,7 ,0x7F ,900 ,3400 ,25000 ,233 ), +RC5T583_REG (LDO8 ,LDOEN1 ,0 ,LDODIS1 ,0 ,0x7F ,900 ,3400 ,25000 ,233 ), +RC5T583_REG (LDO9 ,LDOEN1 ,1 ,LDODIS1 ,1 ,0x7F ,900 ,3400 ,25000 ,133 ), };static int __devinit rc5t583_regulator_probe (struct platform_device *pdev)
Signature · 1 line
1.7.5.4
Quoted 8 lines · Axel Lin
Simplify
RC5T583_REGmacro by removing_vout_regand_ds_regparameters.The naming for
vout_reganddeepsleep_regcan be replaced by:
.vout_reg = RC5T583_REG_##_id##DAC,
.deepsleep_reg = RC5T583_REG_##_id##DAC_DS,Signed-off-by Axel Lin<[email protected]>---
I thought of doing this on my first patch and then thought that table should have all configuration picture rather than deriving from few parameters. If this is a good way then I will take care for my next PMIC driver development.
Thanks,
Laxman
Quoted 5 lines · Laxman Dewangan
I thought of doing this on my first patch and then thought that table should have all configuration picture rather than deriving from few parameters.
If this is a good way then I will take care for my next PMIC driver development.
This way is good - if you look at for example the wm831x driver where there's a bunch of regulators with the same register layout replicated in different places in the chip all it does is specify the base for the block when defining a regulator.
Mark Brown
AppliedQuoted 5 lines · Axel Lin
Simplify
RC5T583_REGmacro by removing_vout_regand_ds_regparameters.The naming for
vout_reganddeepsleep_regcan be replaced by:
.vout_reg = RC5T583_REG_##_id##DAC,
.deepsleep_reg = RC5T583_REG_##_id##DAC_DS,
Applied, thanks.