[linux-next] hwrng: n2-drv - Use device_get_match_data() to simplify the code

Message ID 202211171710153200734@zte.com.cn
State New
Headers
Series [linux-next] hwrng: n2-drv - Use device_get_match_data() to simplify the code |

Commit Message

ye.xingchen@zte.com.cn Nov. 17, 2022, 9:10 a.m. UTC
  From: ye xingchen <ye.xingchen@zte.com.cn>

Directly get the match data with device_get_match_data().

Signed-off-by: ye xingchen <ye.xingchen@zte.com.cn>
---
 drivers/char/hw_random/n2-drv.c | 7 +------
 1 file changed, 1 insertion(+), 6 deletions(-)
  

Comments

Herbert Xu Nov. 25, 2022, 8:56 a.m. UTC | #1
On Thu, Nov 17, 2022 at 05:10:15PM +0800, ye.xingchen@zte.com.cn wrote:
> From: ye xingchen <ye.xingchen@zte.com.cn>
> 
> Directly get the match data with device_get_match_data().
> 
> Signed-off-by: ye xingchen <ye.xingchen@zte.com.cn>
> ---
>  drivers/char/hw_random/n2-drv.c | 7 +------
>  1 file changed, 1 insertion(+), 6 deletions(-)
> 
> diff --git a/drivers/char/hw_random/n2-drv.c b/drivers/char/hw_random/n2-drv.c
> index 73e408146420..2f784addb717 100644
> --- a/drivers/char/hw_random/n2-drv.c
> +++ b/drivers/char/hw_random/n2-drv.c
> @@ -695,20 +695,15 @@ static void n2rng_driver_version(void)
>  static const struct of_device_id n2rng_match[];
>  static int n2rng_probe(struct platform_device *op)
>  {
> -	const struct of_device_id *match;
>  	int err = -ENOMEM;
>  	struct n2rng *np;
> 
> -	match = of_match_device(n2rng_match, &op->dev);
> -	if (!match)
> -		return -EINVAL;
> -
>  	n2rng_driver_version();
>  	np = devm_kzalloc(&op->dev, sizeof(*np), GFP_KERNEL);
>  	if (!np)
>  		goto out;
>  	np->op = op;
> -	np->data = (struct n2rng_template *)match->data;
> +	np->data = (struct n2rng_template *) device_get_match_data(&op->dev);

Please explain why changing the error case is OK.

Thanks,
  

Patch

diff --git a/drivers/char/hw_random/n2-drv.c b/drivers/char/hw_random/n2-drv.c
index 73e408146420..2f784addb717 100644
--- a/drivers/char/hw_random/n2-drv.c
+++ b/drivers/char/hw_random/n2-drv.c
@@ -695,20 +695,15 @@  static void n2rng_driver_version(void)
 static const struct of_device_id n2rng_match[];
 static int n2rng_probe(struct platform_device *op)
 {
-	const struct of_device_id *match;
 	int err = -ENOMEM;
 	struct n2rng *np;

-	match = of_match_device(n2rng_match, &op->dev);
-	if (!match)
-		return -EINVAL;
-
 	n2rng_driver_version();
 	np = devm_kzalloc(&op->dev, sizeof(*np), GFP_KERNEL);
 	if (!np)
 		goto out;
 	np->op = op;
-	np->data = (struct n2rng_template *)match->data;
+	np->data = (struct n2rng_template *) device_get_match_data(&op->dev);

 	INIT_DELAYED_WORK(&np->work, n2rng_work);