[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20230613095227.fr5j7i7mcdfmyxse@mobilestation>
Date: Tue, 13 Jun 2023 12:52:27 +0300
From: Serge Semin <Sergey.Semin@...kalelectronics.ru>
To: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
CC: Damien Le Moal <dlemoal@...nel.org>,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
<linux-ide@...r.kernel.org>, <linux-kernel@...r.kernel.org>,
<linux-acpi@...r.kernel.org>, Hans de Goede <hdegoede@...hat.com>,
Jens Axboe <axboe@...nel.dk>,
"Rafael J. Wysocki" <rafael@...nel.org>,
Len Brown <lenb@...nel.org>,
Daniel Scally <djrscally@...il.com>,
Heikki Krogerus <heikki.krogerus@...ux.intel.com>,
Sakari Ailus <sakari.ailus@...ux.intel.com>
Subject: Re: [PATCH v2 3/3] ata: ahci_platform: Make code agnostic to OF/ACPI
On Fri, Jun 09, 2023 at 06:49:00PM +0300, Andy Shevchenko wrote:
> With the help of a new device_is_compatible() make
> the driver code agnostic to the OF/ACPI. This makes
> it neater. As a side effect the header inclusions is
> corrected (seems mod_devicetable.h was implicitly
> included).
I don't think the driver will get to be fully agnostic after this
patch because for instance the ahci_platform_get_resources() method
directly uses the OF-available functions, walks over the OF subnodes,
touches the OF-properties, etc. So AFAICS in order to be fully OF/ACPI
agnostic the entire libahci_platform.o driver needs to be converted
too, but it's not trivial at all.
Anyway as a start this patch looks good.
Reviewed-by: Serge Semin <fancer.lancer@...il.com>
-Serge(y)
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
> ---
> drivers/ata/ahci_platform.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/ata/ahci_platform.c b/drivers/ata/ahci_platform.c
> index ab30c7138d73..81fc63f6b008 100644
> --- a/drivers/ata/ahci_platform.c
> +++ b/drivers/ata/ahci_platform.c
> @@ -9,14 +9,14 @@
> */
>
> #include <linux/kernel.h>
> +#include <linux/mod_devicetable.h>
> #include <linux/module.h>
> #include <linux/pm.h>
> #include <linux/device.h>
> -#include <linux/of_device.h>
> #include <linux/platform_device.h>
> +#include <linux/property.h>
> #include <linux/libata.h>
> #include <linux/ahci_platform.h>
> -#include <linux/acpi.h>
> #include <linux/pci_ids.h>
> #include "ahci.h"
>
> @@ -56,10 +56,10 @@ static int ahci_probe(struct platform_device *pdev)
> if (rc)
> return rc;
>
> - if (of_device_is_compatible(dev->of_node, "hisilicon,hisi-ahci"))
> + if (device_is_compatible(dev, "hisilicon,hisi-ahci"))
> hpriv->flags |= AHCI_HFLAG_NO_FBS | AHCI_HFLAG_NO_NCQ;
>
> - port = acpi_device_get_match_data(dev);
> + port = device_get_match_data(dev);
> if (!port)
> port = &ahci_port_info;
>
> --
> 2.40.0.1.gaa8946217a0b
>
>
Powered by blists - more mailing lists