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