Re: [PATCH] hwmon: lm70: simplify with spi_get_device_match_data()

From: Guenter Roeck
Date: Thu Jun 06 2024 - 11:58:04 EST


On 6/6/24 07:25, Krzysztof Kozlowski wrote:
Use spi_get_device_match_data() helper to simplify a bit the driver.
Also kernel_ulong_t type is preferred for kernel code over uintptr_t
(needed for the cast).

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx>
---
drivers/hwmon/lm70.c | 6 +-----
1 file changed, 1 insertion(+), 5 deletions(-)

diff --git a/drivers/hwmon/lm70.c b/drivers/hwmon/lm70.c
index 481e4e1f8f4f..0d5a250cb672 100644
--- a/drivers/hwmon/lm70.c
+++ b/drivers/hwmon/lm70.c
@@ -169,11 +169,7 @@ static int lm70_probe(struct spi_device *spi)
struct lm70 *p_lm70;
int chip;
- if (dev_fwnode(&spi->dev))
- chip = (int)(uintptr_t)device_get_match_data(&spi->dev);
- else
- chip = spi_get_device_id(spi)->driver_data;
-
+ chip = (kernel_ulong_t)spi_get_device_match_data(spi);
/* signaling is SPI_MODE_0 */
if ((spi->mode & SPI_MODE_X_MASK) != SPI_MODE_0)

I'll apply this patch, but ...

I take it that the earlier claims that driver_data must not be
something like "(void *) LM70_CHIP_LM70", where LM70_CHIP_LM70 is 0,
was wrong. I'll start reverting all patches which changed starting
enum values from 0 to 1 based on that wrong claim.

Guenter