pmdomain: Use device_get_match_data()

Message ID 20231006224614.444488-1-robh@kernel.org
State New
Headers
Series pmdomain: Use device_get_match_data() |

Commit Message

Rob Herring Oct. 6, 2023, 10:46 p.m. UTC
  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 <robh@kernel.org>
---
 drivers/pmdomain/actions/owl-sps.c     | 16 +++++-----------
 drivers/pmdomain/imx/gpc.c             |  7 +++----
 drivers/pmdomain/rockchip/pm-domains.c | 13 ++++---------
 3 files changed, 12 insertions(+), 24 deletions(-)
  

Comments

Ulf Hansson Oct. 10, 2023, 11:22 a.m. UTC | #1
On Sat, 7 Oct 2023 at 00:46, Rob Herring <robh@kernel.org> 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 <robh@kernel.org>

Applied for next, thanks!

Kind regards
Uffe


> ---
>  drivers/pmdomain/actions/owl-sps.c     | 16 +++++-----------
>  drivers/pmdomain/imx/gpc.c             |  7 +++----
>  drivers/pmdomain/rockchip/pm-domains.c | 13 ++++---------
>  3 files changed, 12 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/pmdomain/actions/owl-sps.c b/drivers/pmdomain/actions/owl-sps.c
> index 73a9e0bb7e8e..3a586d1f3256 100644
> --- a/drivers/pmdomain/actions/owl-sps.c
> +++ b/drivers/pmdomain/actions/owl-sps.c
> @@ -8,8 +8,10 @@
>   * Copyright (c) 2017 Andreas Färber
>   */
>
> +#include <linux/mod_devicetable.h>
>  #include <linux/of_address.h>
> -#include <linux/of_platform.h>
> +#include <linux/platform_device.h>
> +#include <linux/property.h>
>  #include <linux/pm_domain.h>
>  #include <linux/soc/actions/owl-sps.h>
>  #include <dt-bindings/power/owl-s500-powergate.h>
> @@ -96,24 +98,16 @@ static int owl_sps_init_domain(struct owl_sps *sps, int index)
>
>  static int owl_sps_probe(struct platform_device *pdev)
>  {
> -       const struct of_device_id *match;
>         const struct owl_sps_info *sps_info;
>         struct owl_sps *sps;
>         int i, ret;
>
> -       if (!pdev->dev.of_node) {
> -               dev_err(&pdev->dev, "no device node\n");
> -               return -ENODEV;
> -       }
> -
> -       match = of_match_device(pdev->dev.driver->of_match_table, &pdev->dev);
> -       if (!match || !match->data) {
> +       sps_info = device_get_match_data(&pdev->dev);
> +       if (!sps_info) {
>                 dev_err(&pdev->dev, "unknown compatible or missing data\n");
>                 return -EINVAL;
>         }
>
> -       sps_info = match->data;
> -
>         sps = devm_kzalloc(&pdev->dev,
>                            struct_size(sps, domains, sps_info->num_domains),
>                            GFP_KERNEL);
> diff --git a/drivers/pmdomain/imx/gpc.c b/drivers/pmdomain/imx/gpc.c
> index 90a8b2c0676f..114f44ca07dd 100644
> --- a/drivers/pmdomain/imx/gpc.c
> +++ b/drivers/pmdomain/imx/gpc.c
> @@ -7,9 +7,10 @@
>  #include <linux/clk.h>
>  #include <linux/delay.h>
>  #include <linux/io.h>
> -#include <linux/of_device.h>
> +#include <linux/of.h>
>  #include <linux/platform_device.h>
>  #include <linux/pm_domain.h>
> +#include <linux/property.h>
>  #include <linux/regmap.h>
>  #include <linux/regulator/consumer.h>
>
> @@ -403,9 +404,7 @@ static int imx_gpc_old_dt_init(struct device *dev, struct regmap *regmap,
>
>  static int imx_gpc_probe(struct platform_device *pdev)
>  {
> -       const struct of_device_id *of_id =
> -                       of_match_device(imx_gpc_dt_ids, &pdev->dev);
> -       const struct imx_gpc_dt_data *of_id_data = of_id->data;
> +       const struct imx_gpc_dt_data *of_id_data = device_get_match_data(&pdev->dev);
>         struct device_node *pgc_node;
>         struct regmap *regmap;
>         void __iomem *base;
> diff --git a/drivers/pmdomain/rockchip/pm-domains.c b/drivers/pmdomain/rockchip/pm-domains.c
> index d5d3ecb38283..9b76b62869d0 100644
> --- a/drivers/pmdomain/rockchip/pm-domains.c
> +++ b/drivers/pmdomain/rockchip/pm-domains.c
> @@ -9,11 +9,13 @@
>  #include <linux/iopoll.h>
>  #include <linux/err.h>
>  #include <linux/mutex.h>
> +#include <linux/platform_device.h>
>  #include <linux/pm_clock.h>
>  #include <linux/pm_domain.h>
> +#include <linux/property.h>
> +#include <linux/of.h>
>  #include <linux/of_address.h>
>  #include <linux/of_clk.h>
> -#include <linux/of_platform.h>
>  #include <linux/clk.h>
>  #include <linux/regmap.h>
>  #include <linux/mfd/syscon.h>
> @@ -857,7 +859,6 @@ static int rockchip_pm_domain_probe(struct platform_device *pdev)
>         struct device_node *node;
>         struct device *parent;
>         struct rockchip_pmu *pmu;
> -       const struct of_device_id *match;
>         const struct rockchip_pmu_info *pmu_info;
>         int error;
>
> @@ -866,13 +867,7 @@ static int rockchip_pm_domain_probe(struct platform_device *pdev)
>                 return -ENODEV;
>         }
>
> -       match = of_match_device(dev->driver->of_match_table, dev);
> -       if (!match || !match->data) {
> -               dev_err(dev, "missing pmu data\n");
> -               return -EINVAL;
> -       }
> -
> -       pmu_info = match->data;
> +       pmu_info = device_get_match_data(dev);
>
>         pmu = devm_kzalloc(dev,
>                            struct_size(pmu, domains, pmu_info->num_domains),
> --
> 2.40.1
>
  

Patch

diff --git a/drivers/pmdomain/actions/owl-sps.c b/drivers/pmdomain/actions/owl-sps.c
index 73a9e0bb7e8e..3a586d1f3256 100644
--- a/drivers/pmdomain/actions/owl-sps.c
+++ b/drivers/pmdomain/actions/owl-sps.c
@@ -8,8 +8,10 @@ 
  * Copyright (c) 2017 Andreas Färber
  */
 
+#include <linux/mod_devicetable.h>
 #include <linux/of_address.h>
-#include <linux/of_platform.h>
+#include <linux/platform_device.h>
+#include <linux/property.h>
 #include <linux/pm_domain.h>
 #include <linux/soc/actions/owl-sps.h>
 #include <dt-bindings/power/owl-s500-powergate.h>
@@ -96,24 +98,16 @@  static int owl_sps_init_domain(struct owl_sps *sps, int index)
 
 static int owl_sps_probe(struct platform_device *pdev)
 {
-	const struct of_device_id *match;
 	const struct owl_sps_info *sps_info;
 	struct owl_sps *sps;
 	int i, ret;
 
-	if (!pdev->dev.of_node) {
-		dev_err(&pdev->dev, "no device node\n");
-		return -ENODEV;
-	}
-
-	match = of_match_device(pdev->dev.driver->of_match_table, &pdev->dev);
-	if (!match || !match->data) {
+	sps_info = device_get_match_data(&pdev->dev);
+	if (!sps_info) {
 		dev_err(&pdev->dev, "unknown compatible or missing data\n");
 		return -EINVAL;
 	}
 
-	sps_info = match->data;
-
 	sps = devm_kzalloc(&pdev->dev,
 			   struct_size(sps, domains, sps_info->num_domains),
 			   GFP_KERNEL);
diff --git a/drivers/pmdomain/imx/gpc.c b/drivers/pmdomain/imx/gpc.c
index 90a8b2c0676f..114f44ca07dd 100644
--- a/drivers/pmdomain/imx/gpc.c
+++ b/drivers/pmdomain/imx/gpc.c
@@ -7,9 +7,10 @@ 
 #include <linux/clk.h>
 #include <linux/delay.h>
 #include <linux/io.h>
-#include <linux/of_device.h>
+#include <linux/of.h>
 #include <linux/platform_device.h>
 #include <linux/pm_domain.h>
+#include <linux/property.h>
 #include <linux/regmap.h>
 #include <linux/regulator/consumer.h>
 
@@ -403,9 +404,7 @@  static int imx_gpc_old_dt_init(struct device *dev, struct regmap *regmap,
 
 static int imx_gpc_probe(struct platform_device *pdev)
 {
-	const struct of_device_id *of_id =
-			of_match_device(imx_gpc_dt_ids, &pdev->dev);
-	const struct imx_gpc_dt_data *of_id_data = of_id->data;
+	const struct imx_gpc_dt_data *of_id_data = device_get_match_data(&pdev->dev);
 	struct device_node *pgc_node;
 	struct regmap *regmap;
 	void __iomem *base;
diff --git a/drivers/pmdomain/rockchip/pm-domains.c b/drivers/pmdomain/rockchip/pm-domains.c
index d5d3ecb38283..9b76b62869d0 100644
--- a/drivers/pmdomain/rockchip/pm-domains.c
+++ b/drivers/pmdomain/rockchip/pm-domains.c
@@ -9,11 +9,13 @@ 
 #include <linux/iopoll.h>
 #include <linux/err.h>
 #include <linux/mutex.h>
+#include <linux/platform_device.h>
 #include <linux/pm_clock.h>
 #include <linux/pm_domain.h>
+#include <linux/property.h>
+#include <linux/of.h>
 #include <linux/of_address.h>
 #include <linux/of_clk.h>
-#include <linux/of_platform.h>
 #include <linux/clk.h>
 #include <linux/regmap.h>
 #include <linux/mfd/syscon.h>
@@ -857,7 +859,6 @@  static int rockchip_pm_domain_probe(struct platform_device *pdev)
 	struct device_node *node;
 	struct device *parent;
 	struct rockchip_pmu *pmu;
-	const struct of_device_id *match;
 	const struct rockchip_pmu_info *pmu_info;
 	int error;
 
@@ -866,13 +867,7 @@  static int rockchip_pm_domain_probe(struct platform_device *pdev)
 		return -ENODEV;
 	}
 
-	match = of_match_device(dev->driver->of_match_table, dev);
-	if (!match || !match->data) {
-		dev_err(dev, "missing pmu data\n");
-		return -EINVAL;
-	}
-
-	pmu_info = match->data;
+	pmu_info = device_get_match_data(dev);
 
 	pmu = devm_kzalloc(dev,
 			   struct_size(pmu, domains, pmu_info->num_domains),