[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20210128221250.GA165038@roeck-us.net>
Date: Thu, 28 Jan 2021 14:12:50 -0800
From: Guenter Roeck <linux@...ck-us.net>
To: Rob Herring <robh@...nel.org>
Cc: Stephen Boyd <swboyd@...omium.org>, devicetree@...r.kernel.org,
linux-kernel@...r.kernel.org, linux-hwmon@...r.kernel.org,
Arnd Bergmann <arnd@...db.de>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
Jean Delvare <jdelvare@...e.com>,
Rob Herring <robh+dt@...nel.org>,
Frank Rowand <frowand.list@...il.com>
Subject: Re: [PATCH v3] hwmon: (lm70) Use device_get_match_data()
On Thu, Jan 28, 2021 at 03:57:42PM -0600, Rob Herring wrote:
> From: Stephen Boyd <swboyd@...omium.org>
>
> Use the more modern API to get the match data out of the of match table.
> This saves some code, lines, and nicely avoids referencing the match
> table when it is undefined with configurations where CONFIG_OF=n.
>
> Signed-off-by: Stephen Boyd <swboyd@...omium.org>
> Cc: Arnd Bergmann <arnd@...db.de>
> Cc: Geert Uytterhoeven <geert@...ux-m68k.org>
> Cc: Jean Delvare <jdelvare@...e.com>
> Cc: Guenter Roeck <linux@...ck-us.net>
> Cc: Rob Herring <robh+dt@...nel.org>
> Cc: Frank Rowand <frowand.list@...il.com>
> Cc: <linux-hwmon@...r.kernel.org>
> [robh: rework to use device_get_match_data()]
> Signed-off-by: Rob Herring <robh@...nel.org>
Acked-by: Guenter Roeck <linux@...ck-us.net>
> ---
> v3:
> - Reworked to use device_get_match_data(). Lifted Stephen's commit
> message from another patch. :)
>
> Please ack and I'll add to the rest of the series.
>
> drivers/hwmon/lm70.c | 20 +++++---------------
> 1 file changed, 5 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/hwmon/lm70.c b/drivers/hwmon/lm70.c
> index ae2b84263a44..40eab3349904 100644
> --- a/drivers/hwmon/lm70.c
> +++ b/drivers/hwmon/lm70.c
> @@ -22,9 +22,9 @@
> #include <linux/hwmon.h>
> #include <linux/mutex.h>
> #include <linux/mod_devicetable.h>
> +#include <linux/property.h>
> #include <linux/spi/spi.h>
> #include <linux/slab.h>
> -#include <linux/of_device.h>
> #include <linux/acpi.h>
>
> #define DRVNAME "lm70"
> @@ -173,25 +173,15 @@ MODULE_DEVICE_TABLE(acpi, lm70_acpi_ids);
>
> static int lm70_probe(struct spi_device *spi)
> {
> - const struct of_device_id *of_match;
> struct device *hwmon_dev;
> struct lm70 *p_lm70;
> int chip;
>
> - of_match = of_match_device(lm70_of_ids, &spi->dev);
> - if (of_match)
> - chip = (int)(uintptr_t)of_match->data;
> - else {
> -#ifdef CONFIG_ACPI
> - const struct acpi_device_id *acpi_match;
> + if (dev_fwnode(&spi->dev))
> + chip = (int)(uintptr_t)device_get_match_data(&spi->dev);
> + else
> + chip = spi_get_device_id(spi)->driver_data;
>
> - acpi_match = acpi_match_device(lm70_acpi_ids, &spi->dev);
> - if (acpi_match)
> - chip = (int)(uintptr_t)acpi_match->driver_data;
> - else
> -#endif
> - chip = spi_get_device_id(spi)->driver_data;
> - }
>
> /* signaling is SPI_MODE_0 */
> if (spi->mode & (SPI_CPOL | SPI_CPHA))
> --
> 2.27.0
>
Powered by blists - more mailing lists