Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1559467

Re: [PATCH v2 2/4] mfd: max77686: Use of_device_get_match_data() helper

From Chanwoo Choi <cw00.choi@samsung.com>
Newsgroups linux.kernel
Subject Re: [PATCH v2 2/4] mfd: max77686: Use of_device_get_match_data() helper
Date 2017-01-16 07:40 +0100
Message-ID <t097s-4PF-27@gated-at.bofh.it> (permalink)
References <sZaff-1qE-3@gated-at.bofh.it> <t097s-4PF-29@gated-at.bofh.it> <sZaff-1qE-19@gated-at.bofh.it>
Organization Samsung Electronics

Show all headers | View raw


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@osg.samsung.com>
> Acked-by: Laxman Dewangan <ldewangan@nvidia.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@samsung.com>

-- 
Best Regards,
Chanwoo Choi
S/W Center, Samsung Electronics

Back to linux.kernel | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

[PATCH v2 2/4] mfd: max77686: Use of_device_get_match_data() helper Javier Martinez Canillas <javier@osg.samsung.com> - 2017-01-13 14:40 +0100
  Re: [PATCH v2 2/4] mfd: max77686: Use of_device_get_match_data()  helper Krzysztof Kozlowski <krzk@kernel.org> - 2017-01-13 15:20 +0100
  Re: [PATCH v2 2/4] mfd: max77686: Use of_device_get_match_data() helper Chanwoo Choi <cw00.choi@samsung.com> - 2017-01-16 07:40 +0100

csiph-web