Skip to content

Commit 8805822

Browse files
committed
hwmon: add driver support for max42500
The MAX42500 is a SoC power-system monitor with up to seven voltage monitor inputs that will be SIL 3-Certified. Each input has programmable OV/UV thresholds of between 2.5% and 10% with ±1.3% accuracy over the full temperature range. Two of the inputs have a separate remote ground-sense input and support DVS through the integrated I2C interface. The MAX42500 contains a programmable flexible power sequence recorder (FPSR). This recorder stores power-up and power-down timestamps separately, and supports on/off and sleep/standby power sequences. The MAX42500 also contains a programmable challenge/response watchdog, which is accessible through the I2C interface, along with a configurable RESET output. Signed-off-by: Kent Libetario <Kent.Libetario@analog.com>
1 parent fc37eed commit 8805822

File tree

5 files changed

+1143
-0
lines changed

5 files changed

+1143
-0
lines changed
Lines changed: 42 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,42 @@
1+
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2+
%YAML 1.2
3+
---
4+
$id: http://devicetree.org/schemas/hwmon/adi,max42500.yaml#
5+
$schema: http://devicetree.org/meta-schemas/core.yaml#
6+
7+
title: Analog Devices MAX42500 Industrial Power System Monitor
8+
9+
maintainers:
10+
- Kent Libetario <Kent.Libetario@analog.com>
11+
12+
description: |
13+
Analog Devices MAX42500 Industrial Power System Monitor Family
14+
https://www.analog.com/media/en/technical-documentation/data-sheets/max42500.pdf
15+
16+
properties:
17+
compatible:
18+
enum:
19+
- adi,max42500
20+
21+
reg:
22+
description: I2C address of slave device.
23+
minimum: 0x28
24+
maximum: 0x2B
25+
26+
required:
27+
- compatible
28+
- reg
29+
30+
additionalProperties: false
31+
32+
examples:
33+
- |
34+
i2c {
35+
#address-cells = <1>;
36+
#size-cells = <0>;
37+
38+
hwmon@28 {
39+
reg = <0x28>;
40+
compatible = "adi,max42500";
41+
};
42+
};

drivers/hwmon/Kconfig

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2403,6 +2403,19 @@ config SENSORS_ASUS_EC
24032403
This driver can also be built as a module. If so, the module
24042404
will be called asus_ec_sensors.
24052405

2406+
config MAX42500
2407+
tristate "MAX42500 Industrial Power System Monitor Family"
2408+
depends on I2C
2409+
select REGMAP_I2C
2410+
help
2411+
If you say yes here you get support for MAX42500 SoC power-system monitor
2412+
with up to seven voltage monitor. The driver also contains a programmable
2413+
challenge/response watchdog, which is accessible through the I2C interface,
2414+
along with a configurable RESET output.
2415+
2416+
This driver can also be built as a module. If so, the module
2417+
will be called max42500.
2418+
24062419
endif # ACPI
24072420

24082421
endif # HWMON

drivers/hwmon/Kconfig.adi

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,4 +44,5 @@ config HWMON_ALL_ADI_DRIVERS
4444
imply MAX31827
4545
imply SENSORS_MAX31760
4646
imply SENSORS_LT7182S
47+
imply MAX42500
4748

drivers/hwmon/Makefile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -142,6 +142,7 @@ obj-$(CONFIG_SENSORS_MAX197) += max197.o
142142
obj-$(CONFIG_SENSORS_MAX31722) += max31722.o
143143
obj-$(CONFIG_SENSORS_MAX31730) += max31730.o
144144
obj-$(CONFIG_SENSORS_MAX31760) += max31760.o
145+
obj-$(CONFIG_SENSORS_MAX42500) += max42500.o
145146
obj-$(CONFIG_SENSORS_MAX6620) += max6620.o
146147
obj-$(CONFIG_SENSORS_MAX6621) += max6621.o
147148
obj-$(CONFIG_SENSORS_MAX6639) += max6639.o

0 commit comments

Comments
 (0)