Message ID | 20231006224633.445035-1-robh@kernel.org (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | fpga: Use device_get_match_data() | expand |
On Fri, Oct 06, 2023 at 05:46:33PM -0500, 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 <robh@kernel.org> Acked-by: Xu Yilun <yilun.xu@intel.com> Applied. > --- > drivers/fpga/altera-hps2fpga.c | 12 +++--------- > drivers/fpga/xilinx-pr-decoupler.c | 15 ++++----------- > 2 files changed, 7 insertions(+), 20 deletions(-) > > diff --git a/drivers/fpga/altera-hps2fpga.c b/drivers/fpga/altera-hps2fpga.c > index aa758426c22b..578663503297 100644 > --- a/drivers/fpga/altera-hps2fpga.c > +++ b/drivers/fpga/altera-hps2fpga.c > @@ -24,7 +24,8 @@ > #include <linux/kernel.h> > #include <linux/mfd/syscon.h> > #include <linux/module.h> > -#include <linux/of_platform.h> > +#include <linux/of.h> > +#include <linux/property.h> > #include <linux/regmap.h> > #include <linux/reset.h> > #include <linux/spinlock.h> > @@ -127,18 +128,11 @@ static int alt_fpga_bridge_probe(struct platform_device *pdev) > { > struct device *dev = &pdev->dev; > struct altera_hps2fpga_data *priv; > - const struct of_device_id *of_id; > struct fpga_bridge *br; > u32 enable; > int ret; > > - of_id = of_match_device(altera_fpga_of_match, dev); > - if (!of_id) { > - dev_err(dev, "failed to match device\n"); > - return -ENODEV; > - } > - > - priv = (struct altera_hps2fpga_data *)of_id->data; > + priv = (struct altera_hps2fpga_data *)device_get_match_data(dev); > > priv->bridge_reset = of_reset_control_get_exclusive_by_index(dev->of_node, > 0); > diff --git a/drivers/fpga/xilinx-pr-decoupler.c b/drivers/fpga/xilinx-pr-decoupler.c > index 208d9560f56d..0c012d0f616d 100644 > --- a/drivers/fpga/xilinx-pr-decoupler.c > +++ b/drivers/fpga/xilinx-pr-decoupler.c > @@ -10,8 +10,10 @@ > #include <linux/clk.h> > #include <linux/io.h> > #include <linux/kernel.h> > -#include <linux/of_device.h> > #include <linux/module.h> > +#include <linux/of.h> > +#include <linux/platform_device.h> > +#include <linux/property.h> > #include <linux/fpga/fpga-bridge.h> > > #define CTRL_CMD_DECOUPLE BIT(0) > @@ -81,7 +83,6 @@ static const struct fpga_bridge_ops xlnx_pr_decoupler_br_ops = { > .enable_show = xlnx_pr_decoupler_enable_show, > }; > > -#ifdef CONFIG_OF > static const struct xlnx_config_data decoupler_config = { > .name = "Xilinx PR Decoupler", > }; > @@ -100,11 +101,9 @@ static const struct of_device_id xlnx_pr_decoupler_of_match[] = { > {}, > }; > MODULE_DEVICE_TABLE(of, xlnx_pr_decoupler_of_match); > -#endif > > static int xlnx_pr_decoupler_probe(struct platform_device *pdev) > { > - struct device_node *np = pdev->dev.of_node; > struct xlnx_pr_decoupler_data *priv; > struct fpga_bridge *br; > int err; > @@ -113,13 +112,7 @@ static int xlnx_pr_decoupler_probe(struct platform_device *pdev) > if (!priv) > return -ENOMEM; > > - if (np) { > - const struct of_device_id *match; > - > - match = of_match_node(xlnx_pr_decoupler_of_match, np); > - if (match && match->data) > - priv->ipconfig = match->data; > - } > + priv->ipconfig = device_get_match_data(&pdev->dev); > > priv->io_base = devm_platform_ioremap_resource(pdev, 0); > if (IS_ERR(priv->io_base)) > -- > 2.40.1 >
diff --git a/drivers/fpga/altera-hps2fpga.c b/drivers/fpga/altera-hps2fpga.c index aa758426c22b..578663503297 100644 --- a/drivers/fpga/altera-hps2fpga.c +++ b/drivers/fpga/altera-hps2fpga.c @@ -24,7 +24,8 @@ #include <linux/kernel.h> #include <linux/mfd/syscon.h> #include <linux/module.h> -#include <linux/of_platform.h> +#include <linux/of.h> +#include <linux/property.h> #include <linux/regmap.h> #include <linux/reset.h> #include <linux/spinlock.h> @@ -127,18 +128,11 @@ static int alt_fpga_bridge_probe(struct platform_device *pdev) { struct device *dev = &pdev->dev; struct altera_hps2fpga_data *priv; - const struct of_device_id *of_id; struct fpga_bridge *br; u32 enable; int ret; - of_id = of_match_device(altera_fpga_of_match, dev); - if (!of_id) { - dev_err(dev, "failed to match device\n"); - return -ENODEV; - } - - priv = (struct altera_hps2fpga_data *)of_id->data; + priv = (struct altera_hps2fpga_data *)device_get_match_data(dev); priv->bridge_reset = of_reset_control_get_exclusive_by_index(dev->of_node, 0); diff --git a/drivers/fpga/xilinx-pr-decoupler.c b/drivers/fpga/xilinx-pr-decoupler.c index 208d9560f56d..0c012d0f616d 100644 --- a/drivers/fpga/xilinx-pr-decoupler.c +++ b/drivers/fpga/xilinx-pr-decoupler.c @@ -10,8 +10,10 @@ #include <linux/clk.h> #include <linux/io.h> #include <linux/kernel.h> -#include <linux/of_device.h> #include <linux/module.h> +#include <linux/of.h> +#include <linux/platform_device.h> +#include <linux/property.h> #include <linux/fpga/fpga-bridge.h> #define CTRL_CMD_DECOUPLE BIT(0) @@ -81,7 +83,6 @@ static const struct fpga_bridge_ops xlnx_pr_decoupler_br_ops = { .enable_show = xlnx_pr_decoupler_enable_show, }; -#ifdef CONFIG_OF static const struct xlnx_config_data decoupler_config = { .name = "Xilinx PR Decoupler", }; @@ -100,11 +101,9 @@ static const struct of_device_id xlnx_pr_decoupler_of_match[] = { {}, }; MODULE_DEVICE_TABLE(of, xlnx_pr_decoupler_of_match); -#endif static int xlnx_pr_decoupler_probe(struct platform_device *pdev) { - struct device_node *np = pdev->dev.of_node; struct xlnx_pr_decoupler_data *priv; struct fpga_bridge *br; int err; @@ -113,13 +112,7 @@ static int xlnx_pr_decoupler_probe(struct platform_device *pdev) if (!priv) return -ENOMEM; - if (np) { - const struct of_device_id *match; - - match = of_match_node(xlnx_pr_decoupler_of_match, np); - if (match && match->data) - priv->ipconfig = match->data; - } + priv->ipconfig = device_get_match_data(&pdev->dev); priv->io_base = devm_platform_ioremap_resource(pdev, 0); if (IS_ERR(priv->io_base))
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/fpga/altera-hps2fpga.c | 12 +++--------- drivers/fpga/xilinx-pr-decoupler.c | 15 ++++----------- 2 files changed, 7 insertions(+), 20 deletions(-)