The implementation in of_regulator_match() already ensures match->init_data is
not NULL for all matched cases if the return value of of_regulator_match() > 0.
Thus remove NULL test for rmatch[i].init_data.
This patch also fixes the condition for loop iteration.
The for loop should iterate "matched" times rather than ARRAY_SIZE(regulators)
because we only allocate "matched" number of entries for rdata.
Though in most cases, "matched" == ARRAY_SIZE(regulators).
Signed-off-by: Axel Lin <[email protected]>
---
drivers/regulator/max77693.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/drivers/regulator/max77693.c b/drivers/regulator/max77693.c
index d45a4dd..ce4b96c 100644
--- a/drivers/regulator/max77693.c
+++ b/drivers/regulator/max77693.c
@@ -190,9 +190,7 @@ static int max77693_pmic_dt_parse_rdata(struct device *dev,
tmp = *rdata;
- for (i = 0; i < ARRAY_SIZE(regulators); i++) {
- if (!rmatch[i].init_data)
- continue;
+ for (i = 0; i < matched; i++) {
tmp->initdata = rmatch[i].init_data;
tmp->of_node = rmatch[i].of_node;
tmp->id = regulators[i].id;
--
1.8.1.2
On 2013년 06월 30일 01:33, Axel Lin wrote:
> The implementation in of_regulator_match() already ensures match->init_data is
> not NULL for all matched cases if the return value of of_regulator_match() > 0.
>
> Thus remove NULL test for rmatch[i].init_data.
>
> This patch also fixes the condition for loop iteration.
> The for loop should iterate "matched" times rather than ARRAY_SIZE(regulators)
> because we only allocate "matched" number of entries for rdata.
> Though in most cases, "matched" == ARRAY_SIZE(regulators).
>
> Signed-off-by: Axel Lin <[email protected]>
> ---
> drivers/regulator/max77693.c | 4 +---
> 1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/regulator/max77693.c b/drivers/regulator/max77693.c
> index d45a4dd..ce4b96c 100644
> --- a/drivers/regulator/max77693.c
> +++ b/drivers/regulator/max77693.c
> @@ -190,9 +190,7 @@ static int max77693_pmic_dt_parse_rdata(struct device *dev,
>
> tmp = *rdata;
>
> - for (i = 0; i < ARRAY_SIZE(regulators); i++) {
> - if (!rmatch[i].init_data)
> - continue;
> + for (i = 0; i < matched; i++) {
> tmp->initdata = rmatch[i].init_data;
> tmp->of_node = rmatch[i].of_node;
> tmp->id = regulators[i].id;
Looks good to me,
Acked-by : Jonghwa Lee <[email protected]>
Thanks,
Jonghwa
On Sun, Jun 30, 2013 at 12:33:52AM +0800, Axel Lin wrote:
> The implementation in of_regulator_match() already ensures match->init_data is
> not NULL for all matched cases if the return value of of_regulator_match() > 0.
Applied, thanks.