2019-02-24 01:28:28

by Axel Lin

[permalink] [raw]
Subject: [PATCH] regulator: max77620: Fix regulator info setting for max20024

Current code always set pmic->rinfo[id] = &max77620_regs_info[id];
It should set to either max77620_regs_info or max20024_regs_info
depends on the chip_id.

Signed-off-by: Axel Lin <[email protected]>
---
drivers/regulator/max77620-regulator.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/regulator/max77620-regulator.c b/drivers/regulator/max77620-regulator.c
index 1607ac673e44..0ad91a7f9cb9 100644
--- a/drivers/regulator/max77620-regulator.c
+++ b/drivers/regulator/max77620-regulator.c
@@ -803,7 +803,7 @@ static int max77620_regulator_probe(struct platform_device *pdev)
continue;

rdesc = &rinfo[id].desc;
- pmic->rinfo[id] = &max77620_regs_info[id];
+ pmic->rinfo[id] = &rinfo[id];
pmic->enable_power_mode[id] = MAX77620_POWER_MODE_NORMAL;
pmic->reg_pdata[id].active_fps_src = -1;
pmic->reg_pdata[id].active_fps_pd_slot = -1;
--
2.17.1



2019-03-21 08:38:52

by Axel Lin

[permalink] [raw]
Subject: Re: [PATCH] regulator: max77620: Fix regulator info setting for max20024

Axel Lin <[email protected]> 於 2019年2月24日 週日 上午9:27寫道:
>
> Current code always set pmic->rinfo[id] = &max77620_regs_info[id];
> It should set to either max77620_regs_info or max20024_regs_info
> depends on the chip_id.
>
> Signed-off-by: Axel Lin <[email protected]>
> ---
> drivers/regulator/max77620-regulator.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/regulator/max77620-regulator.c b/drivers/regulator/max77620-regulator.c
> index 1607ac673e44..0ad91a7f9cb9 100644
> --- a/drivers/regulator/max77620-regulator.c
> +++ b/drivers/regulator/max77620-regulator.c
> @@ -803,7 +803,7 @@ static int max77620_regulator_probe(struct platform_device *pdev)
> continue;
>
> rdesc = &rinfo[id].desc;
> - pmic->rinfo[id] = &max77620_regs_info[id];
> + pmic->rinfo[id] = &rinfo[id];

I'm wondering if anyone can help review this patch.
This looks like a bug fix to me because for max20024 MAX77620_REGULATOR_ID_SD4,
the pmic->rinfo[id] = &max77620_regs_info[id]; set pmic->rinfo[id] to
a zero-filled entry.
e.g. In max77620_regulator_set_power_mode, rinfo->cfg_addr is wrong
for MAX77620_REGULATOR_ID_SD4.

Thanks,
Axel