diff options
| -rw-r--r-- | Documentation/hwmon/sysfs-interface | 14 | ||||
| -rw-r--r-- | drivers/hwmon/Kconfig | 2 | ||||
| -rw-r--r-- | drivers/hwmon/ntc_thermistor.c | 15 |
3 files changed, 24 insertions, 7 deletions
diff --git a/Documentation/hwmon/sysfs-interface b/Documentation/hwmon/sysfs-interface index 79f8257dd790..2cc95ad46604 100644 --- a/Documentation/hwmon/sysfs-interface +++ b/Documentation/hwmon/sysfs-interface | |||
| @@ -327,6 +327,13 @@ temp[1-*]_max_hyst | |||
| 327 | from the max value. | 327 | from the max value. |
| 328 | RW | 328 | RW |
| 329 | 329 | ||
| 330 | temp[1-*]_min_hyst | ||
| 331 | Temperature hysteresis value for min limit. | ||
| 332 | Unit: millidegree Celsius | ||
| 333 | Must be reported as an absolute temperature, NOT a delta | ||
| 334 | from the min value. | ||
| 335 | RW | ||
| 336 | |||
| 330 | temp[1-*]_input Temperature input value. | 337 | temp[1-*]_input Temperature input value. |
| 331 | Unit: millidegree Celsius | 338 | Unit: millidegree Celsius |
| 332 | RO | 339 | RO |
| @@ -362,6 +369,13 @@ temp[1-*]_lcrit Temperature critical min value, typically lower than | |||
| 362 | Unit: millidegree Celsius | 369 | Unit: millidegree Celsius |
| 363 | RW | 370 | RW |
| 364 | 371 | ||
| 372 | temp[1-*]_lcrit_hyst | ||
| 373 | Temperature hysteresis value for critical min limit. | ||
| 374 | Unit: millidegree Celsius | ||
| 375 | Must be reported as an absolute temperature, NOT a delta | ||
| 376 | from the critical min value. | ||
| 377 | RW | ||
| 378 | |||
| 365 | temp[1-*]_offset | 379 | temp[1-*]_offset |
| 366 | Temperature offset which is added to the temperature reading | 380 | Temperature offset which is added to the temperature reading |
| 367 | by the chip. | 381 | by the chip. |
diff --git a/drivers/hwmon/Kconfig b/drivers/hwmon/Kconfig index bc196f49ec53..4af0da96c2e2 100644 --- a/drivers/hwmon/Kconfig +++ b/drivers/hwmon/Kconfig | |||
| @@ -1053,7 +1053,7 @@ config SENSORS_PC87427 | |||
| 1053 | 1053 | ||
| 1054 | config SENSORS_NTC_THERMISTOR | 1054 | config SENSORS_NTC_THERMISTOR |
| 1055 | tristate "NTC thermistor support" | 1055 | tristate "NTC thermistor support" |
| 1056 | depends on (!OF && !IIO) || (OF && IIO) | 1056 | depends on !OF || IIO=n || IIO |
| 1057 | help | 1057 | help |
| 1058 | This driver supports NTC thermistors sensor reading and its | 1058 | This driver supports NTC thermistors sensor reading and its |
| 1059 | interpretation. The driver can also monitor the temperature and | 1059 | interpretation. The driver can also monitor the temperature and |
diff --git a/drivers/hwmon/ntc_thermistor.c b/drivers/hwmon/ntc_thermistor.c index 8a17f01e8672..e76feb86a1d4 100644 --- a/drivers/hwmon/ntc_thermistor.c +++ b/drivers/hwmon/ntc_thermistor.c | |||
| @@ -44,6 +44,7 @@ struct ntc_compensation { | |||
| 44 | unsigned int ohm; | 44 | unsigned int ohm; |
| 45 | }; | 45 | }; |
| 46 | 46 | ||
| 47 | /* Order matters, ntc_match references the entries by index */ | ||
| 47 | static const struct platform_device_id ntc_thermistor_id[] = { | 48 | static const struct platform_device_id ntc_thermistor_id[] = { |
| 48 | { "ncp15wb473", TYPE_NCPXXWB473 }, | 49 | { "ncp15wb473", TYPE_NCPXXWB473 }, |
| 49 | { "ncp18wb473", TYPE_NCPXXWB473 }, | 50 | { "ncp18wb473", TYPE_NCPXXWB473 }, |
| @@ -141,7 +142,7 @@ struct ntc_data { | |||
| 141 | char name[PLATFORM_NAME_SIZE]; | 142 | char name[PLATFORM_NAME_SIZE]; |
| 142 | }; | 143 | }; |
| 143 | 144 | ||
| 144 | #ifdef CONFIG_OF | 145 | #if defined(CONFIG_OF) && IS_ENABLED(CONFIG_IIO) |
| 145 | static int ntc_adc_iio_read(struct ntc_thermistor_platform_data *pdata) | 146 | static int ntc_adc_iio_read(struct ntc_thermistor_platform_data *pdata) |
| 146 | { | 147 | { |
| 147 | struct iio_channel *channel = pdata->chan; | 148 | struct iio_channel *channel = pdata->chan; |
| @@ -163,15 +164,15 @@ static int ntc_adc_iio_read(struct ntc_thermistor_platform_data *pdata) | |||
| 163 | 164 | ||
| 164 | static const struct of_device_id ntc_match[] = { | 165 | static const struct of_device_id ntc_match[] = { |
| 165 | { .compatible = "ntc,ncp15wb473", | 166 | { .compatible = "ntc,ncp15wb473", |
| 166 | .data = &ntc_thermistor_id[TYPE_NCPXXWB473] }, | 167 | .data = &ntc_thermistor_id[0] }, |
| 167 | { .compatible = "ntc,ncp18wb473", | 168 | { .compatible = "ntc,ncp18wb473", |
| 168 | .data = &ntc_thermistor_id[TYPE_NCPXXWB473] }, | 169 | .data = &ntc_thermistor_id[1] }, |
| 169 | { .compatible = "ntc,ncp21wb473", | 170 | { .compatible = "ntc,ncp21wb473", |
| 170 | .data = &ntc_thermistor_id[TYPE_NCPXXWB473] }, | 171 | .data = &ntc_thermistor_id[2] }, |
| 171 | { .compatible = "ntc,ncp03wb473", | 172 | { .compatible = "ntc,ncp03wb473", |
| 172 | .data = &ntc_thermistor_id[TYPE_NCPXXWB473] }, | 173 | .data = &ntc_thermistor_id[3] }, |
| 173 | { .compatible = "ntc,ncp15wl333", | 174 | { .compatible = "ntc,ncp15wl333", |
| 174 | .data = &ntc_thermistor_id[TYPE_NCPXXWL333] }, | 175 | .data = &ntc_thermistor_id[4] }, |
| 175 | { }, | 176 | { }, |
| 176 | }; | 177 | }; |
| 177 | MODULE_DEVICE_TABLE(of, ntc_match); | 178 | MODULE_DEVICE_TABLE(of, ntc_match); |
| @@ -223,6 +224,8 @@ ntc_thermistor_parse_dt(struct platform_device *pdev) | |||
| 223 | return NULL; | 224 | return NULL; |
| 224 | } | 225 | } |
| 225 | 226 | ||
| 227 | #define ntc_match NULL | ||
| 228 | |||
| 226 | static void ntc_iio_channel_release(struct ntc_thermistor_platform_data *pdata) | 229 | static void ntc_iio_channel_release(struct ntc_thermistor_platform_data *pdata) |
| 227 | { } | 230 | { } |
| 228 | #endif | 231 | #endif |
