[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <587C698F.90602@samsung.com>
Date: Mon, 16 Jan 2017 15:34:55 +0900
From: Chanwoo Choi <cw00.choi@...sung.com>
To: Javier Martinez Canillas <javier@....samsung.com>,
linux-kernel@...r.kernel.org
Cc: Laxman Dewangan <ldewangan@...dia.com>,
Krzysztof Kozlowski <krzk@...nel.org>,
Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>,
Lee Jones <lee.jones@...aro.org>
Subject: Re: [PATCH v2 2/4] mfd: max77686: Use of_device_get_match_data() helper
Hi,
On 2017년 01월 13일 22:34, Javier Martinez Canillas wrote:
> Use the generic helper to get the matched of_device_id .data, instead of
> open coding it.
>
> The driver was checking if matching the OF node with the driver's OF table
> was failing, but this doesn't make too much sense since this can't happen
> in practice. The fact the probe function was called, means OF registered a
> device with a valid compatible string so a of_device_get_match_data() call
> will always succeed. So just remove this unneeded check.
>
> Signed-off-by: Javier Martinez Canillas <javier@....samsung.com>
> Acked-by: Laxman Dewangan <ldewangan@...dia.com>
>
> ---
>
> Changes in v2:
> - Add Laxman's Acked-by tag to patch 2/4.
> - Mention in commit message that an unneeded check for match is removed.
>
> drivers/mfd/max77686.c | 9 ++-------
> 1 file changed, 2 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/mfd/max77686.c b/drivers/mfd/max77686.c
> index ddae3bf3e46c..33dd09493605 100644
> --- a/drivers/mfd/max77686.c
> +++ b/drivers/mfd/max77686.c
> @@ -34,6 +34,7 @@
> #include <linux/mfd/max77686-private.h>
> #include <linux/err.h>
> #include <linux/of.h>
> +#include <linux/of_device.h>
>
> static const struct mfd_cell max77686_devs[] = {
> { .name = "max77686-pmic", },
> @@ -175,7 +176,6 @@ static int max77686_i2c_probe(struct i2c_client *i2c,
> const struct i2c_device_id *id)
> {
> struct max77686_dev *max77686 = NULL;
> - const struct of_device_id *match;
> unsigned int data;
> int ret = 0;
> const struct regmap_config *config;
> @@ -188,13 +188,8 @@ static int max77686_i2c_probe(struct i2c_client *i2c,
> if (!max77686)
> return -ENOMEM;
>
> - match = of_match_node(max77686_pmic_dt_match, i2c->dev.of_node);
> - if (!match)
> - return -EINVAL;
> -
> - max77686->type = (unsigned long)match->data;
> -
> i2c_set_clientdata(i2c, max77686);
> + max77686->type = (unsigned long)of_device_get_match_data(&i2c->dev);
> max77686->dev = &i2c->dev;
> max77686->i2c = i2c;
>
>
Looks good to me.
Reviewed-by: Chanwoo Choi <cw00.choi@...sung.com>
--
Best Regards,
Chanwoo Choi
S/W Center, Samsung Electronics
Powered by blists - more mailing lists