The max6648 chip has nearly the same register set as the 6657 and seems to have a working manufacturer/chip id so we can detect it. This patch adds support for it. Tested on a Nvidia Quadro FX 1500 card. Signed-off-by: Darrick J. Wong <djwong at us.ibm.com> --- drivers/hwmon/Kconfig | 4 ++-- drivers/hwmon/lm90.c | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig index 8c312c6..7da49d3 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig @@ -550,8 +550,8 @@ config SENSORS_LM90 help If you say yes here you get support for National Semiconductor LM90, LM86, LM89 and LM99, Analog Devices ADM1032 and ADT7461, and Maxim - MAX6646, MAX6647, MAX6649, MAX6657, MAX6658, MAX6659, MAX6680 and - MAX6681 sensor chips. + MAX6646, MAX6647, MAX6649, MAX6657, MAX6658, MAX6659, MAX6680, + MAX6648, MAX6692 and MAX6681 sensor chips. This driver can also be built as a module. If so, the module will be called lm90. diff --git a/drivers/hwmon/lm90.c b/drivers/hwmon/lm90.c index 96a7018..1802366 100644 --- a/drivers/hwmon/lm90.c +++ b/drivers/hwmon/lm90.c @@ -776,7 +776,12 @@ static int lm90_detect(struct i2c_client *new_client, int kind, && (reg_config1 & 0x3f) == 0x00 && reg_convrate <= 0x07) { kind = max6646; - } + } else + /* The MAX6648/6692 chips have a working man/chip id + * and the same register set as the 6657. + */ + if (chip_id == 0x59 && address == 0x4C) + kind = max6657; } if (kind <= 0) { /* identification failed */