Re: [RESEND PATCH] ipmi: si: Use device_get_match_data()
From: Corey Minyard
Date: Wed Nov 15 2023 - 16:20:47 EST
On Wed, Nov 15, 2023 at 03:02:29PM -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.
Sorry, this is now queue for 6.8.
-corey
>
> Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
> ---
> drivers/char/ipmi/ipmi_si_platform.c | 12 ++++--------
> 1 file changed, 4 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/char/ipmi/ipmi_si_platform.c b/drivers/char/ipmi/ipmi_si_platform.c
> index c3d8ac7873ba..cd2edd8f8a03 100644
> --- a/drivers/char/ipmi/ipmi_si_platform.c
> +++ b/drivers/char/ipmi/ipmi_si_platform.c
> @@ -11,10 +11,11 @@
>
> #include <linux/types.h>
> #include <linux/module.h>
> -#include <linux/of_device.h>
> -#include <linux/of_platform.h>
> +#include <linux/of.h>
> #include <linux/of_address.h>
> #include <linux/of_irq.h>
> +#include <linux/platform_device.h>
> +#include <linux/property.h>
> #include <linux/acpi.h>
> #include "ipmi_si.h"
> #include "ipmi_dmi.h"
> @@ -224,7 +225,6 @@ MODULE_DEVICE_TABLE(of, of_ipmi_match);
>
> static int of_ipmi_probe(struct platform_device *pdev)
> {
> - const struct of_device_id *match;
> struct si_sm_io io;
> struct resource resource;
> const __be32 *regsize, *regspacing, *regshift;
> @@ -237,10 +237,6 @@ static int of_ipmi_probe(struct platform_device *pdev)
>
> dev_info(&pdev->dev, "probing via device tree\n");
>
> - match = of_match_device(of_ipmi_match, &pdev->dev);
> - if (!match)
> - return -ENODEV;
> -
> if (!of_device_is_available(np))
> return -EINVAL;
>
> @@ -269,7 +265,7 @@ static int of_ipmi_probe(struct platform_device *pdev)
> }
>
> memset(&io, 0, sizeof(io));
> - io.si_type = (unsigned long) match->data;
> + io.si_type = (enum si_type)device_get_match_data(&pdev->dev);
> io.addr_source = SI_DEVICETREE;
> io.irq_setup = ipmi_std_irq_setup;
>
> --
> 2.42.0
>