Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752962AbdC0NRw (ORCPT ); Mon, 27 Mar 2017 09:17:52 -0400 Received: from vps0.lunn.ch ([178.209.37.122]:34038 "EHLO vps0.lunn.ch" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752375AbdC0NRu (ORCPT ); Mon, 27 Mar 2017 09:17:50 -0400 Date: Mon, 27 Mar 2017 15:17:25 +0200 From: Andrew Lunn To: Ralph Sennhauser Cc: linux-gpio@vger.kernel.org, Imre Kaloz , Thierry Reding , Linus Walleij , Alexandre Courbot , Rob Herring , Mark Rutland , Jason Cooper , Gregory Clement , Sebastian Hesselbarth , Russell King , linux-pwm@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v3 4/4] mvebu: wrt1900ac: Use pwm-fan rather than gpio-fan Message-ID: <20170327131725.GA25549@lunn.ch> References: <20170324141815.7252-1-ralph.sennhauser@gmail.com> <20170324141815.7252-5-ralph.sennhauser@gmail.com> <20170324143505.GK28518@lunn.ch> <20170326230558.6b6c4ec6@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20170326230558.6b6c4ec6@gmail.com> User-Agent: Mutt/1.5.21 (2010-09-15) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1686 Lines: 59 On Sun, Mar 26, 2017 at 11:05:58PM +0200, Ralph Sennhauser wrote: > On Fri, 24 Mar 2017 15:35:05 +0100 > Andrew Lunn wrote: > > > > + 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 ::= [pwm-list] single-pwm ::= 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 ) 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