[PATCH v7 04/11] pwm: add DT bindings documentation for atmel-hlcdc-pwm driver
From: Thierry Reding <hidden>
Date: 2014-10-06 12:23:29
Also in:
dri-devel, linux-devicetree, linux-pwm, lkml
On Mon, Oct 06, 2014 at 12:33:26PM +0100, Mark Rutland wrote:
On Mon, Oct 06, 2014 at 11:13:51AM +0100, Thierry Reding wrote:quoted
On Wed, Oct 01, 2014 at 04:53:01PM +0200, Boris Brezillon wrote:quoted
From: Boris BREZILLON <redacted> The HLCDC IP available in some Atmel SoCs (i.e. sam9x5i.e. at91sam9n12, at91sam9x5 family or sama5d3 family) provide a PWM device. The DT bindings used for this PWM device is following the default 3 cells bindings described in Documentation/devicetree/bindings/pwm/pwm.txt. Signed-off-by: Boris Brezillon <redacted> --- .../devicetree/bindings/pwm/atmel-hlcdc-pwm.txt | 55 ++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 Documentation/devicetree/bindings/pwm/atmel-hlcdc-pwm.txtdiff --git a/Documentation/devicetree/bindings/pwm/atmel-hlcdc-pwm.txt b/Documentation/devicetree/bindings/pwm/atmel-hlcdc-pwm.txt new file mode 100644 index 0000000..86ad3e2 --- /dev/null +++ b/Documentation/devicetree/bindings/pwm/atmel-hlcdc-pwm.txt@@ -0,0 +1,55 @@ +Device-Tree bindings for Atmel's HLCDC (High LCD Controller) PWM driver + +The Atmel HLCDC PWM is subdevice of the HLCDC MFD device. +See ../mfd/atmel-hlcdc.txt for more details. + +Required properties: + - compatible: value should be one of the following: + "atmel,hlcdc-pwm" + - pinctr-names: the pin control state names. Should contain "default". + - pinctrl-0: should contain the pinctrl states described by pinctrl + default. + - #pwm-cells: should be set to 3. This PWM chip use the default 3 cells + bindings defined in Documentation/devicetree/bindings/pwm/pwm.txt. + The first cell encodes the PWM id (0 is the only acceptable value here, + because the chip only provide one PWM). + The second cell encodes the PWM period in nanoseconds. + The third cell encodes the PWM flags (the only supported flag is + PWM_POLARITY_INVERTED)Given that this already refers to the default 3 cells binding it doesn't need to repeat part of the contents of pwm.txt.Given that pwm.txt states: pwm-specifier : array of #pwm-cells specifying the given PWM (controller specific)
It also goes on to say that: " 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 "
I'd leave it here. Just because pwm.txt gives an example of a controller specific meaning for the pwm cells, I don't think we should rely on it everywhere.
If we do have a default meaning for a specifier and the majority (in case of PWM every single one) of the device-specific bindings use it, then I don't think it makes sense to duplicate information everywhere else. We've been doing the same thing across the kernel for a long time now, why should PWM be special? Thierry -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 819 bytes Desc: not available URL: <http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20141006/f351c2fd/attachment.sig>