2023-11-15 21:01:49

by Rob Herring (Arm)

[permalink] [raw]
Subject: [RESEND PATCH] reset: Use device_get_match_data()

Use preferred device_get_match_data() instead of of_match_device() to
get the driver match data. With this, adjust the includes to explicitly
include the correct headers.

Signed-off-by: Rob Herring <[email protected]>
---
drivers/reset/reset-npcm.c | 5 ++---
drivers/reset/sti/reset-syscfg.c | 11 ++++++-----
2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/drivers/reset/reset-npcm.c b/drivers/reset/reset-npcm.c
index f6c4f854f2be..8935ef95a2d1 100644
--- a/drivers/reset/reset-npcm.c
+++ b/drivers/reset/reset-npcm.c
@@ -6,8 +6,8 @@
#include <linux/io.h>
#include <linux/init.h>
#include <linux/of.h>
-#include <linux/of_device.h>
#include <linux/platform_device.h>
+#include <linux/property.h>
#include <linux/reboot.h>
#include <linux/reset-controller.h>
#include <linux/spinlock.h>
@@ -351,8 +351,7 @@ static int npcm_usb_reset(struct platform_device *pdev, struct npcm_rc_data *rc)
}
}

- rc->info = (const struct npcm_reset_info *)
- of_match_device(dev->driver->of_match_table, dev)->data;
+ rc->info = device_get_match_data(dev);
switch (rc->info->bmc_id) {
case BMC_NPCM7XX:
npcm_usb_reset_npcm7xx(rc);
diff --git a/drivers/reset/sti/reset-syscfg.c b/drivers/reset/sti/reset-syscfg.c
index c1ba04f6f155..2324060b747c 100644
--- a/drivers/reset/sti/reset-syscfg.c
+++ b/drivers/reset/sti/reset-syscfg.c
@@ -7,10 +7,11 @@
*/
#include <linux/kernel.h>
#include <linux/platform_device.h>
+#include <linux/property.h>
#include <linux/module.h>
#include <linux/err.h>
#include <linux/types.h>
-#include <linux/of_device.h>
+#include <linux/of.h>
#include <linux/regmap.h>
#include <linux/mfd/syscon.h>

@@ -183,14 +184,14 @@ static int syscfg_reset_controller_register(struct device *dev,
int syscfg_reset_probe(struct platform_device *pdev)
{
struct device *dev = pdev ? &pdev->dev : NULL;
- const struct of_device_id *match;
+ const void *data;

if (!dev || !dev->driver)
return -ENODEV;

- match = of_match_device(dev->driver->of_match_table, dev);
- if (!match || !match->data)
+ data = device_get_match_data(&pdev->dev);
+ if (!data)
return -EINVAL;

- return syscfg_reset_controller_register(dev, match->data);
+ return syscfg_reset_controller_register(dev, data);
}
--
2.42.0


2023-11-16 09:52:56

by Patrice CHOTARD

[permalink] [raw]
Subject: Re: [RESEND PATCH] reset: Use device_get_match_data()



On 11/15/23 21:58, Rob Herring wrote:
> Use preferred device_get_match_data() instead of of_match_device() to
> get the driver match data. With this, adjust the includes to explicitly
> include the correct headers.
>
> Signed-off-by: Rob Herring <[email protected]>
> ---
> drivers/reset/reset-npcm.c | 5 ++---
> drivers/reset/sti/reset-syscfg.c | 11 ++++++-----
> 2 files changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/reset/reset-npcm.c b/drivers/reset/reset-npcm.c
> index f6c4f854f2be..8935ef95a2d1 100644
> --- a/drivers/reset/reset-npcm.c
> +++ b/drivers/reset/reset-npcm.c
> @@ -6,8 +6,8 @@
> #include <linux/io.h>
> #include <linux/init.h>
> #include <linux/of.h>
> -#include <linux/of_device.h>
> #include <linux/platform_device.h>
> +#include <linux/property.h>
> #include <linux/reboot.h>
> #include <linux/reset-controller.h>
> #include <linux/spinlock.h>
> @@ -351,8 +351,7 @@ static int npcm_usb_reset(struct platform_device *pdev, struct npcm_rc_data *rc)
> }
> }
>
> - rc->info = (const struct npcm_reset_info *)
> - of_match_device(dev->driver->of_match_table, dev)->data;
> + rc->info = device_get_match_data(dev);
> switch (rc->info->bmc_id) {
> case BMC_NPCM7XX:
> npcm_usb_reset_npcm7xx(rc);
> diff --git a/drivers/reset/sti/reset-syscfg.c b/drivers/reset/sti/reset-syscfg.c
> index c1ba04f6f155..2324060b747c 100644
> --- a/drivers/reset/sti/reset-syscfg.c
> +++ b/drivers/reset/sti/reset-syscfg.c
> @@ -7,10 +7,11 @@
> */
> #include <linux/kernel.h>
> #include <linux/platform_device.h>
> +#include <linux/property.h>
> #include <linux/module.h>
> #include <linux/err.h>
> #include <linux/types.h>
> -#include <linux/of_device.h>
> +#include <linux/of.h>
> #include <linux/regmap.h>
> #include <linux/mfd/syscon.h>
>
> @@ -183,14 +184,14 @@ static int syscfg_reset_controller_register(struct device *dev,
> int syscfg_reset_probe(struct platform_device *pdev)
> {
> struct device *dev = pdev ? &pdev->dev : NULL;
> - const struct of_device_id *match;
> + const void *data;
>
> if (!dev || !dev->driver)
> return -ENODEV;
>
> - match = of_match_device(dev->driver->of_match_table, dev);
> - if (!match || !match->data)
> + data = device_get_match_data(&pdev->dev);
> + if (!data)
> return -EINVAL;
>
> - return syscfg_reset_controller_register(dev, match->data);
> + return syscfg_reset_controller_register(dev, data);
> }

for drivers/reset/sti/reset-syscfg.c
Reviewed-by: Patrice Chotard <[email protected]>

Thanks
Patrice

2023-11-29 11:51:02

by Philipp Zabel

[permalink] [raw]
Subject: Re: [RESEND PATCH] reset: Use device_get_match_data()

On Wed, 15 Nov 2023 14:58:48 -0600, Rob Herring wrote:
> Use preferred device_get_match_data() instead of of_match_device() to
> get the driver match data. With this, adjust the includes to explicitly
> include the correct headers.
>
>

Applied to reset/next, thanks!

[1/1] reset: Use device_get_match_data()
https://git.pengutronix.de/cgit/pza/linux/commit/?id=c1d884118f9b

regards
Philipp