summaryrefslogtreecommitdiff
path: root/drivers/hwmon/emc2305.c
diff options
context:
space:
mode:
authorXingjiang Qiao <nanpuyue@gmail.com>2022-12-06 08:53:30 +0300
committerGuenter Roeck <linux@roeck-us.net>2022-12-07 01:37:47 +0300
commit4d50591ebf60ccf79380fff3a4c23659c61c482f (patch)
tree79b1d4238ea3b7b2192be77d4ae4b85c2bd69939 /drivers/hwmon/emc2305.c
parent688fcd047ef0f0aeee16d0fefaff065fa69eb642 (diff)
downloadlinux-4d50591ebf60ccf79380fff3a4c23659c61c482f.tar.xz
hwmon: (emc2305) fix unable to probe emc2301/2/3
The definitions of 'EMC2305_REG_PRODUCT_ID' and 'EMC2305_REG_DEVICE' are both '0xfd', they actually return the same value, but the values returned by emc2301/2/3/5 are different, so probe emc2301/2/3 will fail, This patch fixes that. Signed-off-by: Xingjiang Qiao <nanpuyue@gmail.com> Link: https://lore.kernel.org/r/20221206055331.170459-1-nanpuyue@gmail.com Fixes: 0d8400c5a2ce1 ("hwmon: (emc2305) add support for EMC2301/2/3/5 RPM-based PWM Fan Speed Controller.") Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'drivers/hwmon/emc2305.c')
-rw-r--r--drivers/hwmon/emc2305.c7
1 files changed, 1 insertions, 6 deletions
diff --git a/drivers/hwmon/emc2305.c b/drivers/hwmon/emc2305.c
index f222fcf3b6aa..232238e3231b 100644
--- a/drivers/hwmon/emc2305.c
+++ b/drivers/hwmon/emc2305.c
@@ -16,7 +16,6 @@ static const unsigned short
emc2305_normal_i2c[] = { 0x27, 0x2c, 0x2d, 0x2e, 0x2f, 0x4c, 0x4d, I2C_CLIENT_END };
#define EMC2305_REG_DRIVE_FAIL_STATUS 0x27
-#define EMC2305_REG_DEVICE 0xfd
#define EMC2305_REG_VENDOR 0xfe
#define EMC2305_FAN_MAX 0xff
#define EMC2305_FAN_MIN 0x00
@@ -524,7 +523,7 @@ static int emc2305_probe(struct i2c_client *client)
struct device *dev = &client->dev;
struct emc2305_data *data;
struct emc2305_platform_data *pdata;
- int vendor, device;
+ int vendor;
int ret;
int i;
@@ -535,10 +534,6 @@ static int emc2305_probe(struct i2c_client *client)
if (vendor != EMC2305_VENDOR)
return -ENODEV;
- device = i2c_smbus_read_byte_data(client, EMC2305_REG_DEVICE);
- if (device != EMC2305_DEVICE)
- return -ENODEV;
-
data = devm_kzalloc(dev, sizeof(*data), GFP_KERNEL);
if (!data)
return -ENOMEM;