Re: [PATCH] ACPI: support for NXP i2c controller

From: Andy Shevchenko
Date: Mon Sep 02 2019 - 17:16:27 EST


On Mon, Sep 2, 2019 at 11:58 PM Rafael J. Wysocki <rafael@xxxxxxxxxx> wrote:
>
> On Thu, Jul 11, 2019 at 12:35 PM Chuanhua Han <chuanhua.han@xxxxxxx> wrote:
> >
> > Enable NXP i2c controller to boot with ACPI
> >
> > Signed-off-by: Meenakshi Aggarwal <meenakshi.aggarwal@xxxxxxx>
> > Signed-off-by: Udit Kumar <udit.kumar@xxxxxxx>
> > Signed-off-by: Chuanhua Han <chuanhua.han@xxxxxxx>
>
> Wolfram, any objections to this from the i2c side?

May I propose amendment(s)?

> > @@ -44,6 +44,7 @@
> > #include <linux/pm_runtime.h>
> > #include <linux/sched.h>
> > #include <linux/slab.h>

> > +#include <linux/acpi.h>

If it's kept in order, better to go with it. (Yes, it is as I have checked)
However, property.h should be included instead, see below.

> > const struct of_device_id *of_id = of_match_device(i2c_imx_dt_ids,
> > &pdev->dev);
> > + const struct acpi_device_id *acpi_id =
> > + acpi_match_device(i2c_imx_acpi_ids,
> > + &pdev->dev);


> > if (of_id)
> > i2c_imx->hwdata = of_id->data;
> > + else if (acpi_id)
> > + i2c_imx->hwdata = (struct imx_i2c_hwdata *)
> > + acpi_id->driver_data;


The above altogher may be replaced with

const struct imx_i2c_hwdata *match;
...
match = device_get_match_data(&pdev->dev);
if (match)
i2c_imx->hwdata = match;
else
...

> > + .acpi_match_table = ACPI_PTR(i2c_imx_acpi_ids),

Since there is no #ifdef guard no need to use ACPI_PTR().

--
With Best Regards,
Andy Shevchenko