Commit 557c7ffa authored by Daniel Mack's avatar Daniel Mack Committed by Guenter Roeck

hwmon: (lm75) add support for PCT2075

The NXP PCT2075 is largely compatible with other chips already supported
by the LM75 driver. It uses an 11-bit resolution and defaults to 100 ms
sampling period. The datasheet is here:

  https://www.nxp.com/docs/en/data-sheet/PCT2075.pdfSigned-off-by: default avatarDaniel Mack <daniel@zonque.org>
Link: https://lore.kernel.org/r/20190711124504.7580-2-daniel@zonque.org
[groeck: Documentation update]
Signed-off-by: default avatarGuenter Roeck <linux@roeck-us.net>
parent 5ac6badc
...@@ -119,9 +119,9 @@ Supported chips: ...@@ -119,9 +119,9 @@ Supported chips:
http://www.ti.com/product/tmp275 http://www.ti.com/product/tmp275
* NXP LM75B * NXP LM75B, PCT2075
Prefix: 'lm75b' Prefix: 'lm75b', 'pct2075'
Addresses scanned: none Addresses scanned: none
...@@ -129,6 +129,8 @@ Supported chips: ...@@ -129,6 +129,8 @@ Supported chips:
http://www.nxp.com/documents/data_sheet/LM75B.pdf http://www.nxp.com/documents/data_sheet/LM75B.pdf
http://www.nxp.com/docs/en/data-sheet/PCT2075.pdf
Author: Frodo Looijaard <frodol@dds.nl> Author: Frodo Looijaard <frodol@dds.nl>
Description Description
......
...@@ -36,6 +36,7 @@ enum lm75_type { /* keep sorted in alphabetical order */ ...@@ -36,6 +36,7 @@ enum lm75_type { /* keep sorted in alphabetical order */
max6626, max6626,
max31725, max31725,
mcp980x, mcp980x,
pct2075,
stds75, stds75,
stlm75, stlm75,
tcn75, tcn75,
...@@ -317,6 +318,10 @@ lm75_probe(struct i2c_client *client, const struct i2c_device_id *id) ...@@ -317,6 +318,10 @@ lm75_probe(struct i2c_client *client, const struct i2c_device_id *id)
data->resolution = 9; data->resolution = 9;
data->sample_time = MSEC_PER_SEC / 8; data->sample_time = MSEC_PER_SEC / 8;
break; break;
case pct2075:
data->resolution = 11;
data->sample_time = MSEC_PER_SEC / 10;
break;
case mcp980x: case mcp980x:
data->resolution_limits = 9; data->resolution_limits = 9;
/* fall through */ /* fall through */
...@@ -397,6 +402,7 @@ static const struct i2c_device_id lm75_ids[] = { ...@@ -397,6 +402,7 @@ static const struct i2c_device_id lm75_ids[] = {
{ "max31725", max31725, }, { "max31725", max31725, },
{ "max31726", max31725, }, { "max31726", max31725, },
{ "mcp980x", mcp980x, }, { "mcp980x", mcp980x, },
{ "pct2075", pct2075, },
{ "stds75", stds75, }, { "stds75", stds75, },
{ "stlm75", stlm75, }, { "stlm75", stlm75, },
{ "tcn75", tcn75, }, { "tcn75", tcn75, },
...@@ -466,6 +472,10 @@ static const struct of_device_id __maybe_unused lm75_of_match[] = { ...@@ -466,6 +472,10 @@ static const struct of_device_id __maybe_unused lm75_of_match[] = {
.compatible = "maxim,mcp980x", .compatible = "maxim,mcp980x",
.data = (void *)mcp980x .data = (void *)mcp980x
}, },
{
.compatible = "nxp,pct2075",
.data = (void *)pct2075
},
{ {
.compatible = "st,stds75", .compatible = "st,stds75",
.data = (void *)stds75 .data = (void *)stds75
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment