Replace duplicated SAFEOUT regulators initializers in array of struct 'regulator_desc' arrays with macro. Generated object is the same but SAFEOUT is described only once.
Signed-off-by: Krzysztof Kozlowski <k.kozlowsk...@gmail.com> --- drivers/regulator/max77843.c | 48 +++++++++++++++++--------------------------- 1 file changed, 18 insertions(+), 30 deletions(-) diff --git a/drivers/regulator/max77843.c b/drivers/regulator/max77843.c index c132ef527cdd..e4e7687ccd7e 100644 --- a/drivers/regulator/max77843.c +++ b/drivers/regulator/max77843.c @@ -112,37 +112,25 @@ static struct regulator_ops max77843_regulator_ops = { .set_voltage_sel = regulator_set_voltage_sel_regmap, }; +#define MAX77843_SAFEOUT(num) { \ + .name = "SAFEOUT" # num, \ + .id = MAX77843_SAFEOUT ## num, \ + .ops = &max77843_regulator_ops, \ + .of_match = of_match_ptr("SAFEOUT" # num), \ + .regulators_node = of_match_ptr("regulators"), \ + .type = REGULATOR_VOLTAGE, \ + .owner = THIS_MODULE, \ + .n_voltages = ARRAY_SIZE(max77843_safeout_voltage_table), \ + .volt_table = max77843_safeout_voltage_table, \ + .enable_reg = MAX77843_SYS_REG_SAFEOUTCTRL, \ + .enable_mask = MAX77843_REG_SAFEOUTCTRL_ENSAFEOUT ## num, \ + .vsel_reg = MAX77843_SYS_REG_SAFEOUTCTRL, \ + .vsel_mask = MAX77843_REG_SAFEOUTCTRL_SAFEOUT ## num ## _MASK, \ +} + static const struct regulator_desc max77843_supported_regulators[] = { - [MAX77843_SAFEOUT1] = { - .name = "SAFEOUT1", - .id = MAX77843_SAFEOUT1, - .ops = &max77843_regulator_ops, - .of_match = of_match_ptr("SAFEOUT1"), - .regulators_node = of_match_ptr("regulators"), - .type = REGULATOR_VOLTAGE, - .owner = THIS_MODULE, - .n_voltages = ARRAY_SIZE(max77843_safeout_voltage_table), - .volt_table = max77843_safeout_voltage_table, - .enable_reg = MAX77843_SYS_REG_SAFEOUTCTRL, - .enable_mask = MAX77843_REG_SAFEOUTCTRL_ENSAFEOUT1, - .vsel_reg = MAX77843_SYS_REG_SAFEOUTCTRL, - .vsel_mask = MAX77843_REG_SAFEOUTCTRL_SAFEOUT1_MASK, - }, - [MAX77843_SAFEOUT2] = { - .name = "SAFEOUT2", - .id = MAX77843_SAFEOUT2, - .ops = &max77843_regulator_ops, - .of_match = of_match_ptr("SAFEOUT2"), - .regulators_node = of_match_ptr("regulators"), - .type = REGULATOR_VOLTAGE, - .owner = THIS_MODULE, - .n_voltages = ARRAY_SIZE(max77843_safeout_voltage_table), - .volt_table = max77843_safeout_voltage_table, - .enable_reg = MAX77843_SYS_REG_SAFEOUTCTRL, - .enable_mask = MAX77843_REG_SAFEOUTCTRL_ENSAFEOUT2, - .vsel_reg = MAX77843_SYS_REG_SAFEOUTCTRL, - .vsel_mask = MAX77843_REG_SAFEOUTCTRL_SAFEOUT2_MASK, - }, + [MAX77843_SAFEOUT1] = MAX77843_SAFEOUT(1), + [MAX77843_SAFEOUT2] = MAX77843_SAFEOUT(2), [MAX77843_CHARGER] = { .name = "CHARGER", .id = MAX77843_CHARGER, -- 2.1.0 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/