|
@@ -82,6 +82,7 @@ enum max77686_ramp_rate {
|
|
|
};
|
|
|
|
|
|
struct max77686_data {
|
|
|
+ /* Array indexed by regulator id */
|
|
|
unsigned int opmode[MAX77686_REGULATORS];
|
|
|
};
|
|
|
|
|
@@ -513,12 +514,13 @@ static int max77686_pmic_probe(struct platform_device *pdev)
|
|
|
|
|
|
for (i = 0; i < MAX77686_REGULATORS; i++) {
|
|
|
struct regulator_dev *rdev;
|
|
|
+ int id = regulators[i].id;
|
|
|
|
|
|
config.init_data = pdata->regulators[i].initdata;
|
|
|
config.of_node = pdata->regulators[i].of_node;
|
|
|
|
|
|
- max77686->opmode[i] = regulators[i].enable_mask >>
|
|
|
- max77686_get_opmode_shift(i);
|
|
|
+ max77686->opmode[id] = regulators[i].enable_mask >>
|
|
|
+ max77686_get_opmode_shift(id);
|
|
|
rdev = devm_regulator_register(&pdev->dev,
|
|
|
®ulators[i], &config);
|
|
|
if (IS_ERR(rdev)) {
|