Thread (11 messages) 11 messages, 2 authors, 2017-03-27

[PATCH v3 4/4] mvebu: wrt1900ac: Use pwm-fan rather than gpio-fan

From: andrew@lunn.ch (Andrew Lunn)
Date: 2017-03-27 13:17:52
Also in: linux-devicetree, linux-gpio, linux-pwm, lkml

On Sun, Mar 26, 2017 at 11:05:58PM +0200, Ralph Sennhauser wrote:
On Fri, 24 Mar 2017 15:35:05 +0100
Andrew Lunn [off-list ref] wrote:
quoted
quoted
+	pwm_fan {
 		/* SUNON HA4010V4-0000-C99 */
-		compatible = "gpio-fan";
-		gpios = <&gpio0 24 0>;
 
-		gpio-fan,speed-map = <0    0
-				      4500 1>;
+		compatible = "pwm-fan";
+		pwms = <&gpio0 24 4000 0>;  
Hi Ralph

I believe this last 0 is the flags parameter. Now that we have
#pwm-cells = 1, i think this last 0 should be dropped.

	  Andrew
Hi Andrew,

isn't the 4000 (period?) pwm-cell #2 and 0 (flags?) pwm-cell #3? I
actually expect "pwms = <&gpio0 24>;" here or "#pwm-cells = <2>;"
Hi Ralph
From Documentation/devicetree/bindings/pwm/pwm.txt:
        pwm-list ::= <single-pwm> [pwm-list]
        single-pwm ::= <pwm-phandle> <pwm-specifier>
        pwm-phandle : phandle to PWM controller node
        pwm-specifier : array of #pwm-cells specifying the given PWM
                        (controller specific)

Our pwm-list has a single single-pwm.
phandle is &gpio0.
The remaining parts are the specifier, or which there should be #pwm-calls.
From Documentation/devicetree/bindings/pwm/pwm.txt again:
pwm-specifier typically encodes the chip-relative PWM number and the PWM
period in nanoseconds.

Optionally, the pwm-specifier can encode a number of flags (defined in
<dt-bindings/pwm/pwm.h>) in a third cell:
- PWM_POLARITY_INVERTED: invert the PWM signal polarity

So we are using the 24th PWM and 4000 nanosecod period. We don't want
any flags.

So

pwms = <&gpio0 24 4000>;  

has a phandle, and then 2 cells.

    Andrew
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help