Fwd: [PATCH linux dev-4.13 1/5] dt-bindings: hwmon: pmbus: Add Maxim MAX31785 documentation
George Keishing
gkeishin at in.ibm.com
Wed Apr 4 14:01:33 AEST 2018
Test and verified working.
Tested-by: George Keishing <gkeishin at in.ibm.
Thanks and Regards,
George Keishing
IBM Systems &Technology Lab, Firmware Development,
“ There isn't enough time in a day to be lazy!!! .”
From: Andrew Jeffery <andrew at aj.id.au>
To: gkeishin at in.ibm.com
Date: 04/04/2018 09:23 AM
Subject: Fwd: [PATCH linux dev-4.13 1/5] dt-bindings: hwmon: pmbus:
Add Maxim MAX31785 documentation
----- Original message -----
From: Andrew Jeffery <andrew at aj.id.au>
To: joel at jms.id.au
Cc: Andrew Jeffery <andrew at aj.id.au>, openbmc at lists.ozlabs.org
Subject: [PATCH linux dev-4.13 1/5] dt-bindings: hwmon: pmbus: Add Maxim
MAX31785 documentation
Date: Tue, 3 Apr 2018 23:56:51 +0930
Signed-off-by: Andrew Jeffery <andrew at aj.id.au>
---
.../devicetree/bindings/hwmon/pmbus/max31785.txt | 158
+++++++++++++++++++++
1 file changed, 158 insertions(+)
create mode 100644
Documentation/devicetree/bindings/hwmon/pmbus/max31785.txt
diff --git a/Documentation/devicetree/bindings/hwmon/pmbus/max31785.txt
b/Documentation/devicetree/bindings/hwmon/pmbus/max31785.txt
new file mode 100644
index 000000000000..af9578e7742c
--- /dev/null
+++ b/Documentation/devicetree/bindings/hwmon/pmbus/max31785.txt
@@ -0,0 +1,158 @@
+Bindings for the Maxim MAX31785 Intelligent Fan Controller
+==========================================================
+
+Reference:
+
+https://urldefense.proofpoint.com/v2/url?u=https-3A__datasheets.maximintegrated.com_en_ds_MAX31785.pdf&d=DwICaQ&c=jf_iaSHvJObTbx-siA1ZOg&r=hHlxml_LX5HIffRsSFs-k3DrxQDKe6i0A3XGNW7rlIw&m=3KVEPuoTM2Uoi0Soijf15M7WG-FPvIpusIudgafWDgY&s=vdVY75rubVGTGTems-faz-qU_0TkvfoPfH2McdSwYXs&e=
+
+Required properties:
+- compatible : One of "maxim,max31785" or "maxim,max31785a"
+- reg : I2C address, one of 0x52, 0x53, 0x54, 0x55.
+- #address-cells : Must be 1
+- #size-cells : Must be 0
+- #thermal-sensor-cells : Should be 1. The device supports:
+ - One internal sensor
+ - Four external I2C digital sensors
+ - Six external thermal diodes
+
+Optional properties:
+- use-stored-presence : Do not treat the devicetree description as
canon for
+ fan presence (the 'installed' bit of
FAN_CONFIG_*).
+ Instead, rely on the on the default value
store of
+ the device to populate it.
+
+Capabilities are configured through subnodes of the controller's node.
+
+Fans
+----
+
+Only fans with subnodes present will be considered as installed. If
+use-stored-presence is present in the parent node, then only fans that
are both
+defined in the devicetree and have their installed bit set are considered
+installed.
+
+Required subnode properties:
+- compatible : Must be "pmbus-fan"
+- reg : The PMBus page the properties apply to.
+- #cooling-cells : Should be 2. See the thermal bindings at [1].
+- maxim,fan-rotor-input : The type of rotor measurement provided to the
+ controller. Must be either "tach" for
tachometer
+ pulses or "lock" for a locked-rotor signal.
+- maxim,fan-lock-polarity: Required iff maxim,fan-rotor-input is "lock".
Valid
+ values are "low" for active low, "high" for
active
+ high.
+
+Optional subnode properties:
+- fan-mode : "rpm" or "pwm". Default value is "pwm".
+- tach-pulses : Tachometer pulses per revolution. Valid values
are
+ 1, 2, 3 or 4. The default is 1.
+- cooling-min-level : Smallest cooling state accepted. See [1].
+- cooling-max-level : Largest cooling state accepted. See [1].
+- maxim,fan-no-fault-ramp: Do not ramp the fan to 100% PWM duty on
detecting a
+ fan fault
+- maxim,fan-startup : The number of rotations required before taking
+ emergency action for an unresponsive fan and
driving
+ it with 100% or 0% PWM duty, depending on the
state
+ of maxim,fan-no-fault-ramp. Valid values are 0
+ (automatic spin-up disabled), 2, 4, or 8.
Default
+ value is 0.
+- maxim,fan-health : Enable automated fan health check
+- maxim,fan-ramp : Configures how fast the device ramps the PWM
duty
+ cycle from one value to another. Valid values
are 0
+ to 7 inclusive, with values 0 - 2 configuring
a
+ 1000ms update rate and 1 - 3% duty respective
duty
+ increase, and 3 - 7 a 200ms update rate with a
1 -
+ 5% respective duty increase. Default value is
0.
+- maxim,fan-no-watchdog : Do not ramp fan to 100% PWM duty on failure to
+ update desired fan rate inside 10s. This
implies
+ maxim,tmp-no-fault-ramp
+- maxim,tmp-no-fault-ramp: Do not ramp fan to 100% PWM duty on
temperature
+ sensor fault detection. This implies
+ maxim,fan-no-watchdog
+- maxim,tmp-hysteresis : The temperature hysteresis used to determine
+ transitions to lower fan speed bands in the
+ temperature/fan rate lookup table. Valid
values are
+ 2, 4, 6 or 8 (degrees celcius). Default value
is 2.
+- maxim,fan-dual-tach : Enable dual tachometer functionality
+- maxim,fan-pwm-freq : The PWM frequency. Valid values are 30, 50,
100, 150
+ and 25000 (Hz). Default value is 30Hz.
+- maxim,fan-lookup-table : A 16-element cell array of alternating
temperature
+ and rate values representing the look up
table. The
+ rate units are set through the fan-mode
property.
+- maxim,fan-fault-pin-mon: Ramp fans to 100% PWM duty when the FAULT pin
is
+ asserted
+
+Temperature
+-----------
+
+Required subnode properties:
+- compatible : Must be "pmbus-temperature"
+- reg : The PMBus page the properties apply to.
+
+Optional subnode properties:
+- maxim,tmp-offset : Valid values are 0 - 30 (degrees celcius)
inclusive.
+ Default value is 0.
+- maxim,tmp-fans : An array of phandles to fans controlled by the
+ current temperature sensor.
+
+[1] Documentation/devicetree/bindings/thermal/thermal.txt
+
+Example:
+ fan-max31785: max31785 at 52 {
+ reg = <0x52>;
+ compatible = "maxim,max31785";
+ #address-cells = <1>;
+ #size-cells = <0>;
+ #thermal-sensor-cells = <1>;
+
+ fan at 0 {
+ compatible = "pmbus-fan";
+ reg = <0>;
+ mode = "rpm";
+ tach-pulses = <1>;
+
+ #cooling-cells = <2>;
+ cooling-min-level = <0>;
+ cooling-max-level = <9>;
+
+ maxim,fan-rotor-input = "tach";
+ maxim,fan-dual-tach;
+ };
+
+ /*
+ * Hardware controlled fan: Fan speed is controlled by a
+ * temperature sensor feeding values into the lookup
table. The
+ * fan association is done in the temperature sensor
node. One
+ * sensor can drive multiple fans.
+ */
+ cpu_fan: fan at 1 {
+ compatible = "pmbus-fan";
+ reg = <1>;
+ mode = "rpm";
+ tach-pulses = <1>;
+
+ #cooling-cells = <2>;
+
+ maxim,fan-rotor-input = "tach";
+ maxim,tmp-hysteresis = <2>;
+ maxim,fan-lookup-table = <
+ /* Temperature RPM */
+ 0 1000
+ 10 2000
+ 20 3000
+ 30 4000
+ 40 5000
+ 50 6000
+ 60 7000
+ 70 8000
+ >;
+ };
+
+ cpu_temp: sensor at 6 {
+ compatible = "pmbus-temperature";
+ reg = <6>;
+
+ maxim,tmp-offset = <0>;
+ maxim,tmp-fans = <&cpu_fan>;
+ };
+ };
--
2.14.1
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20180404/44296eeb/attachment-0001.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: image/jpeg
Size: 7547 bytes
Desc: not available
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20180404/44296eeb/attachment-0001.jpe>
More information about the openbmc
mailing list