<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>