diff options
| -rw-r--r-- | doc/device-tree-bindings/pwm/pwm.txt | 69 | 
1 files changed, 69 insertions, 0 deletions
| diff --git a/doc/device-tree-bindings/pwm/pwm.txt b/doc/device-tree-bindings/pwm/pwm.txt new file mode 100644 index 00000000000..8556263b850 --- /dev/null +++ b/doc/device-tree-bindings/pwm/pwm.txt @@ -0,0 +1,69 @@ +Specifying PWM information for devices +====================================== + +1) PWM user nodes +----------------- + +PWM users should specify a list of PWM devices that they want to use +with a property containing a 'pwm-list': + +	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) + +PWM properties should be named "pwms". The exact meaning of each pwms +property must be documented in the device tree binding for each device. +An optional property "pwm-names" may contain a list of strings to label +each of the PWM devices listed in the "pwms" property. If no "pwm-names" +property is given, the name of the user node will be used as fallback. + +Drivers for devices that use more than a single PWM device can use the +"pwm-names" property to map the name of the PWM device requested by the +pwm_get() call to an index into the list given by the "pwms" property. + +The following example could be used to describe a PWM-based backlight +device: + +	pwm: pwm { +		#pwm-cells = <2>; +	}; + +	[...] + +	bl: backlight { +		pwms = <&pwm 0 5000000>; +		pwm-names = "backlight"; +	}; + +Note that in the example above, specifying the "pwm-names" is redundant +because the name "backlight" would be used as fallback anyway. + +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 + +Example with optional PWM specifier for inverse polarity + +	bl: backlight { +		pwms = <&pwm 0 5000000 PWM_POLARITY_INVERTED>; +		pwm-names = "backlight"; +	}; + +2) PWM controller nodes +----------------------- + +PWM controller nodes must specify the number of cells used for the +specifier using the '#pwm-cells' property. + +An example PWM controller might look like this: + +	pwm: pwm@7000a000 { +		compatible = "nvidia,tegra20-pwm"; +		reg = <0x7000a000 0x100>; +		#pwm-cells = <2>; +	}; | 
