On Thu, Jan 28, 2021 at 03:57:42PM -0600, Rob Herring wrote: > From: Stephen Boyd <swboyd@xxxxxxxxxxxx> > > 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@xxxxxxxxxxxx> > Cc: Arnd Bergmann <arnd@xxxxxxxx> > Cc: Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> > Cc: Jean Delvare <jdelvare@xxxxxxxx> > Cc: Guenter Roeck <linux@xxxxxxxxxxxx> > Cc: Rob Herring <robh+dt@xxxxxxxxxx> > Cc: Frank Rowand <frowand.list@xxxxxxxxx> > Cc: <linux-hwmon@xxxxxxxxxxxxxxx> > [robh: rework to use device_get_match_data()] > Signed-off-by: Rob Herring <robh@xxxxxxxxxx> Acked-by: Guenter Roeck <linux@xxxxxxxxxxxx> > --- > 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 >