mirror of
https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
synced 2025-10-28 23:08:52 +01:00
Fixed MTP to work with TWRP
This commit is contained in:
commit
f6dfaef42e
50820 changed files with 20846062 additions and 0 deletions
33
Documentation/devicetree/bindings/pwm/atmel-pwm.txt
Normal file
33
Documentation/devicetree/bindings/pwm/atmel-pwm.txt
Normal file
|
|
@ -0,0 +1,33 @@
|
|||
Atmel PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be one of:
|
||||
- "atmel,at91sam9rl-pwm"
|
||||
- "atmel,sama5d3-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- #pwm-cells: Should be 3. See pwm.txt in this directory for a
|
||||
description of the cells format.
|
||||
|
||||
Example:
|
||||
|
||||
pwm0: pwm@f8034000 {
|
||||
compatible = "atmel,at91sam9rl-pwm";
|
||||
reg = <0xf8034000 0x400>;
|
||||
#pwm-cells = <3>;
|
||||
};
|
||||
|
||||
pwmleds {
|
||||
compatible = "pwm-leds";
|
||||
|
||||
d1 {
|
||||
label = "d1";
|
||||
pwms = <&pwm0 3 5000 0>
|
||||
max-brightness = <255>;
|
||||
};
|
||||
|
||||
d2 {
|
||||
label = "d2";
|
||||
pwms = <&pwm0 1 5000 1>
|
||||
max-brightness = <255>;
|
||||
};
|
||||
};
|
||||
16
Documentation/devicetree/bindings/pwm/atmel-tcb-pwm.txt
Normal file
16
Documentation/devicetree/bindings/pwm/atmel-tcb-pwm.txt
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
Atmel TCB PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "atmel,tcb-pwm"
|
||||
- #pwm-cells: should be 3. See pwm.txt in this directory for a description of
|
||||
the cells format. The only third cell flag supported by this binding is
|
||||
PWM_POLARITY_INVERTED.
|
||||
- tc-block: The Timer Counter block to use as a PWM chip.
|
||||
|
||||
Example:
|
||||
|
||||
pwm {
|
||||
compatible = "atmel,tcb-pwm";
|
||||
#pwm-cells = <3>;
|
||||
tc-block = <1>;
|
||||
};
|
||||
21
Documentation/devicetree/bindings/pwm/bcm-kona-pwm.txt
Normal file
21
Documentation/devicetree/bindings/pwm/bcm-kona-pwm.txt
Normal file
|
|
@ -0,0 +1,21 @@
|
|||
Broadcom Kona PWM controller device tree bindings
|
||||
|
||||
This controller has 6 channels.
|
||||
|
||||
Required Properties :
|
||||
- compatible: should contain "brcm,kona-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- clocks: phandle + clock specifier pair for the external clock
|
||||
- #pwm-cells: Should be 3. See pwm.txt in this directory for a
|
||||
description of the cells format.
|
||||
|
||||
Refer to clocks/clock-bindings.txt for generic clock consumer properties.
|
||||
|
||||
Example:
|
||||
|
||||
pwm: pwm@3e01a000 {
|
||||
compatible = "brcm,bcm11351-pwm", "brcm,kona-pwm";
|
||||
reg = <0x3e01a000 0xc4>;
|
||||
clocks = <&pwm_clk>;
|
||||
#pwm-cells = <3>;
|
||||
};
|
||||
|
|
@ -0,0 +1,16 @@
|
|||
* Cirris Logic CLPS711X PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: Shall contain "cirrus,clps711x-pwm".
|
||||
- reg: Physical base address and length of the controller's registers.
|
||||
- clocks: phandle + clock specifier pair of the PWM reference clock.
|
||||
- #pwm-cells: Should be 1. The cell specifies the index of the channel.
|
||||
|
||||
Example:
|
||||
pwm: pwm@80000400 {
|
||||
compatible = "cirrus,ep7312-pwm",
|
||||
"cirrus,clps711x-pwm";
|
||||
reg = <0x80000400 0x4>;
|
||||
clocks = <&clks 8>;
|
||||
#pwm-cells = <1>;
|
||||
};
|
||||
17
Documentation/devicetree/bindings/pwm/imx-pwm.txt
Normal file
17
Documentation/devicetree/bindings/pwm/imx-pwm.txt
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
Freescale i.MX PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "fsl,<soc>-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- #pwm-cells: should be 2. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
- interrupts: The interrupt for the pwm controller
|
||||
|
||||
Example:
|
||||
|
||||
pwm1: pwm@53fb4000 {
|
||||
#pwm-cells = <2>;
|
||||
compatible = "fsl,imx53-pwm", "fsl,imx27-pwm";
|
||||
reg = <0x53fb4000 0x4000>;
|
||||
interrupts = <61>;
|
||||
};
|
||||
12
Documentation/devicetree/bindings/pwm/lpc32xx-pwm.txt
Normal file
12
Documentation/devicetree/bindings/pwm/lpc32xx-pwm.txt
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
LPC32XX PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "nxp,lpc3220-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
|
||||
Examples:
|
||||
|
||||
pwm@0x4005C000 {
|
||||
compatible = "nxp,lpc3220-pwm";
|
||||
reg = <0x4005C000 0x8>;
|
||||
};
|
||||
17
Documentation/devicetree/bindings/pwm/mxs-pwm.txt
Normal file
17
Documentation/devicetree/bindings/pwm/mxs-pwm.txt
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
Freescale MXS PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "fsl,imx23-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- #pwm-cells: should be 2. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
- fsl,pwm-number: the number of PWM devices
|
||||
|
||||
Example:
|
||||
|
||||
pwm: pwm@80064000 {
|
||||
compatible = "fsl,imx28-pwm", "fsl,imx23-pwm";
|
||||
reg = <0x80064000 0x2000>;
|
||||
#pwm-cells = <2>;
|
||||
fsl,pwm-number = <8>;
|
||||
};
|
||||
26
Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt
Normal file
26
Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt
Normal file
|
|
@ -0,0 +1,26 @@
|
|||
Tegra SoC PWFM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be one of:
|
||||
- "nvidia,tegra20-pwm"
|
||||
- "nvidia,tegra30-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- #pwm-cells: should be 2. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
- clocks: Must contain one entry, for the module clock.
|
||||
See ../clocks/clock-bindings.txt for details.
|
||||
- resets: Must contain an entry for each entry in reset-names.
|
||||
See ../reset/reset.txt for details.
|
||||
- reset-names: Must include the following entries:
|
||||
- pwm
|
||||
|
||||
Example:
|
||||
|
||||
pwm: pwm@7000a000 {
|
||||
compatible = "nvidia,tegra20-pwm";
|
||||
reg = <0x7000a000 0x100>;
|
||||
#pwm-cells = <2>;
|
||||
clocks = <&tegra_car 17>;
|
||||
resets = <&tegra_car 17>;
|
||||
reset-names = "pwm";
|
||||
};
|
||||
27
Documentation/devicetree/bindings/pwm/nxp,pca9685-pwm.txt
Normal file
27
Documentation/devicetree/bindings/pwm/nxp,pca9685-pwm.txt
Normal file
|
|
@ -0,0 +1,27 @@
|
|||
NXP PCA9685 16-channel 12-bit PWM LED controller
|
||||
================================================
|
||||
|
||||
Required properties:
|
||||
- compatible: "nxp,pca9685-pwm"
|
||||
- #pwm-cells: Should be 2. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
The index 16 is the ALLCALL channel, that sets all PWM channels at the same
|
||||
time.
|
||||
|
||||
Optional properties:
|
||||
- invert (bool): boolean to enable inverted logic
|
||||
- open-drain (bool): boolean to configure outputs with open-drain structure;
|
||||
if omitted use totem-pole structure
|
||||
|
||||
Example:
|
||||
|
||||
For LEDs that are directly connected to the PCA, the following setting is
|
||||
applicable:
|
||||
|
||||
pca: pca@41 {
|
||||
compatible = "nxp,pca9685-pwm";
|
||||
#pwm-cells = <2>;
|
||||
reg = <0x41>;
|
||||
invert;
|
||||
open-drain;
|
||||
};
|
||||
52
Documentation/devicetree/bindings/pwm/pwm-fsl-ftm.txt
Normal file
52
Documentation/devicetree/bindings/pwm/pwm-fsl-ftm.txt
Normal file
|
|
@ -0,0 +1,52 @@
|
|||
Freescale FlexTimer Module (FTM) PWM controller
|
||||
|
||||
The same FTM PWM device can have a different endianness on different SoCs. The
|
||||
device tree provides a property to describing this so that an operating system
|
||||
device driver can handle all variants of the device. Refer to the table below
|
||||
for the endianness of the FTM PWM block as integrated into the existing SoCs:
|
||||
|
||||
SoC | FTM-PWM endianness
|
||||
--------+-------------------
|
||||
Vybrid | LE
|
||||
LS1 | BE
|
||||
LS2 | LE
|
||||
|
||||
Please see ../regmap/regmap.txt for more detail about how to specify endian
|
||||
modes in device tree.
|
||||
|
||||
|
||||
Required properties:
|
||||
- compatible: Should be "fsl,vf610-ftm-pwm".
|
||||
- reg: Physical base address and length of the controller's registers
|
||||
- #pwm-cells: Should be 3. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
- clock-names: Should include the following module clock source entries:
|
||||
"ftm_sys" (module clock, also can be used as counter clock),
|
||||
"ftm_ext" (external counter clock),
|
||||
"ftm_fix" (fixed counter clock),
|
||||
"ftm_cnt_clk_en" (external and fixed counter clock enable/disable).
|
||||
- clocks: Must contain a phandle and clock specifier for each entry in
|
||||
clock-names, please see clock/clock-bindings.txt for details of the property
|
||||
values.
|
||||
- pinctrl-names: Must contain a "default" entry.
|
||||
- pinctrl-NNN: One property must exist for each entry in pinctrl-names.
|
||||
See pinctrl/pinctrl-bindings.txt for details of the property values.
|
||||
- big-endian: Boolean property, required if the FTM PWM registers use a big-
|
||||
endian rather than little-endian layout.
|
||||
|
||||
Example:
|
||||
|
||||
pwm0: pwm@40038000 {
|
||||
compatible = "fsl,vf610-ftm-pwm";
|
||||
reg = <0x40038000 0x1000>;
|
||||
#pwm-cells = <3>;
|
||||
clock-names = "ftm_sys", "ftm_ext",
|
||||
"ftm_fix", "ftm_cnt_clk_en";
|
||||
clocks = <&clks VF610_CLK_FTM0>,
|
||||
<&clks VF610_CLK_FTM0_EXT_SEL>,
|
||||
<&clks VF610_CLK_FTM0_FIX_SEL>,
|
||||
<&clks VF610_CLK_FTM0_EXT_FIX_EN>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm0_1>;
|
||||
big-endian;
|
||||
};
|
||||
58
Documentation/devicetree/bindings/pwm/pwm-lp3943.txt
Normal file
58
Documentation/devicetree/bindings/pwm/pwm-lp3943.txt
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
TI/National Semiconductor LP3943 PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: "ti,lp3943-pwm"
|
||||
- #pwm-cells: Should be 2. See pwm.txt in this directory for a
|
||||
description of the cells format.
|
||||
Note that this hardware limits the period length to the
|
||||
range 6250~1600000.
|
||||
- ti,pwm0 or ti,pwm1: Output pin number(s) for PWM channel 0 or 1.
|
||||
0 = output 0
|
||||
1 = output 1
|
||||
.
|
||||
.
|
||||
15 = output 15
|
||||
|
||||
Example:
|
||||
PWM 0 is for RGB LED brightness control
|
||||
PWM 1 is for brightness control of LP8557 backlight device
|
||||
|
||||
&i2c3 {
|
||||
lp3943@60 {
|
||||
compatible = "ti,lp3943";
|
||||
reg = <0x60>;
|
||||
|
||||
/*
|
||||
* PWM 0 : output 8, 9 and 10
|
||||
* PWM 1 : output 15
|
||||
*/
|
||||
pwm3943: pwm {
|
||||
compatible = "ti,lp3943-pwm";
|
||||
#pwm-cells = <2>;
|
||||
ti,pwm0 = <8 9 10>;
|
||||
ti,pwm1 = <15>;
|
||||
};
|
||||
};
|
||||
|
||||
};
|
||||
|
||||
/* LEDs control with PWM 0 of LP3943 */
|
||||
pwmleds {
|
||||
compatible = "pwm-leds";
|
||||
rgb {
|
||||
label = "indi::rgb";
|
||||
pwms = <&pwm3943 0 10000>;
|
||||
max-brightness = <255>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c4 {
|
||||
/* Backlight control with PWM 1 of LP3943 */
|
||||
backlight@2c {
|
||||
compatible = "ti,lp8557";
|
||||
reg = <0x2c>;
|
||||
|
||||
pwms = <&pwm3943 1 10000>;
|
||||
pwm-names = "lp8557";
|
||||
};
|
||||
};
|
||||
20
Documentation/devicetree/bindings/pwm/pwm-rockchip.txt
Normal file
20
Documentation/devicetree/bindings/pwm/pwm-rockchip.txt
Normal file
|
|
@ -0,0 +1,20 @@
|
|||
Rockchip PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "rockchip,<name>-pwm"
|
||||
"rockchip,rk2928-pwm": found on RK29XX,RK3066 and RK3188 SoCs
|
||||
"rockchip,rk3288-pwm": found on RK3288 SoC
|
||||
"rockchip,vop-pwm": found integrated in VOP on RK3288 SoC
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- clocks: phandle and clock specifier of the PWM reference clock
|
||||
- #pwm-cells: must be 2 (rk2928) or 3 (rk3288). See pwm.txt in this directory
|
||||
for a description of the cell format.
|
||||
|
||||
Example:
|
||||
|
||||
pwm0: pwm@20030000 {
|
||||
compatible = "rockchip,rk2928-pwm";
|
||||
reg = <0x20030000 0x10>;
|
||||
clocks = <&cru PCLK_PWM01>;
|
||||
#pwm-cells = <2>;
|
||||
};
|
||||
51
Documentation/devicetree/bindings/pwm/pwm-samsung.txt
Normal file
51
Documentation/devicetree/bindings/pwm/pwm-samsung.txt
Normal file
|
|
@ -0,0 +1,51 @@
|
|||
* Samsung PWM timers
|
||||
|
||||
Samsung SoCs contain PWM timer blocks which can be used for system clock source
|
||||
and clock event timers, as well as to drive SoC outputs with PWM signal. Each
|
||||
PWM timer block provides 5 PWM channels (not all of them can drive physical
|
||||
outputs - see SoC and board manual).
|
||||
|
||||
Be aware that the clocksource driver supports only uniprocessor systems.
|
||||
|
||||
Required properties:
|
||||
- compatible : should be one of following:
|
||||
samsung,s3c2410-pwm - for 16-bit timers present on S3C24xx SoCs
|
||||
samsung,s3c6400-pwm - for 32-bit timers present on S3C64xx SoCs
|
||||
samsung,s5p6440-pwm - for 32-bit timers present on S5P64x0 SoCs
|
||||
samsung,s5pc100-pwm - for 32-bit timers present on S5PC100, S5PV210,
|
||||
Exynos4210 rev0 SoCs
|
||||
samsung,exynos4210-pwm - for 32-bit timers present on Exynos4210,
|
||||
Exynos4x12, Exynos5250 and Exynos5420 SoCs
|
||||
- reg: base address and size of register area
|
||||
- interrupts: list of timer interrupts (one interrupt per timer, starting at
|
||||
timer 0)
|
||||
- clock-names: should contain all following required clock names:
|
||||
- "timers" - PWM base clock used to generate PWM signals,
|
||||
and any subset of following optional clock names:
|
||||
- "pwm-tclk0" - first external PWM clock source,
|
||||
- "pwm-tclk1" - second external PWM clock source.
|
||||
Note that not all IP variants allow using all external clock sources.
|
||||
Refer to SoC documentation to learn which clock source configurations
|
||||
are available.
|
||||
- clocks: should contain clock specifiers of all clocks, which input names
|
||||
have been specified in clock-names property, in same order.
|
||||
- #pwm-cells: should be 3. See pwm.txt in this directory for a description of
|
||||
the cells format. The only third cell flag supported by this binding is
|
||||
PWM_POLARITY_INVERTED.
|
||||
|
||||
Optional properties:
|
||||
- samsung,pwm-outputs: list of PWM channels used as PWM outputs on particular
|
||||
platform - an array of up to 5 elements being indices of PWM channels
|
||||
(from 0 to 4), the order does not matter.
|
||||
|
||||
Example:
|
||||
pwm@7f006000 {
|
||||
compatible = "samsung,s3c6400-pwm";
|
||||
reg = <0x7f006000 0x1000>;
|
||||
interrupt-parent = <&vic0>;
|
||||
interrupts = <23>, <24>, <25>, <27>, <28>;
|
||||
clocks = <&clock 67>;
|
||||
clock-names = "timers";
|
||||
samsung,pwm-outputs = <0>, <1>;
|
||||
#pwm-cells = <3>;
|
||||
}
|
||||
41
Documentation/devicetree/bindings/pwm/pwm-st.txt
Normal file
41
Documentation/devicetree/bindings/pwm/pwm-st.txt
Normal file
|
|
@ -0,0 +1,41 @@
|
|||
STMicroelectronics PWM driver bindings
|
||||
--------------------------------------
|
||||
|
||||
Required parameters:
|
||||
- compatible : "st,pwm"
|
||||
- #pwm-cells : Number of cells used to specify a PWM. First cell
|
||||
specifies the per-chip index of the PWM to use and the
|
||||
second cell is the period in nanoseconds - fixed to 2
|
||||
for STiH41x.
|
||||
- reg : Physical base address and length of the controller's
|
||||
registers.
|
||||
- pinctrl-names: Set to "default".
|
||||
- pinctrl-0: List of phandles pointing to pin configuration nodes
|
||||
for PWM module.
|
||||
For Pinctrl properties, please refer to [1].
|
||||
- clock-names: Set to "pwm".
|
||||
- clocks: phandle of the clock used by the PWM module.
|
||||
For Clk properties, please refer to [2].
|
||||
|
||||
Optional properties:
|
||||
- st,pwm-num-chan: Number of available channels. If not passed, the driver
|
||||
will consider single channel by default.
|
||||
|
||||
[1] Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
|
||||
[2] Documentation/devicetree/bindings/clock/clock-bindings.txt
|
||||
|
||||
Example:
|
||||
|
||||
pwm1: pwm@fe510000 {
|
||||
compatible = "st,pwm";
|
||||
reg = <0xfe510000 0x68>;
|
||||
#pwm-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pinctrl_pwm1_chan0_default
|
||||
&pinctrl_pwm1_chan1_default
|
||||
&pinctrl_pwm1_chan2_default
|
||||
&pinctrl_pwm1_chan3_default>;
|
||||
clocks = <&clk_sysin>;
|
||||
clock-names = "pwm";
|
||||
st,pwm-num-chan = <4>;
|
||||
};
|
||||
29
Documentation/devicetree/bindings/pwm/pwm-tiecap.txt
Normal file
29
Documentation/devicetree/bindings/pwm/pwm-tiecap.txt
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
TI SOC ECAP based APWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be "ti,<soc>-ecap".
|
||||
for am33xx - compatible = "ti,am33xx-ecap";
|
||||
for da850 - compatible = "ti,da850-ecap", "ti,am33xx-ecap";
|
||||
- #pwm-cells: should be 3. See pwm.txt in this directory for a description of
|
||||
the cells format. The PWM channel index ranges from 0 to 4. The only third
|
||||
cell flag supported by this binding is PWM_POLARITY_INVERTED.
|
||||
- reg: physical base address and size of the registers map.
|
||||
|
||||
Optional properties:
|
||||
- ti,hwmods: Name of the hwmod associated to the ECAP:
|
||||
"ecap<x>", <x> being the 0-based instance number from the HW spec
|
||||
|
||||
Example:
|
||||
|
||||
ecap0: ecap@0 { /* ECAP on am33xx */
|
||||
compatible = "ti,am33xx-ecap";
|
||||
#pwm-cells = <3>;
|
||||
reg = <0x48300100 0x80>;
|
||||
ti,hwmods = "ecap0";
|
||||
};
|
||||
|
||||
ecap0: ecap@0 { /* ECAP on da850 */
|
||||
compatible = "ti,da850-ecap", "ti,am33xx-ecap";
|
||||
#pwm-cells = <3>;
|
||||
reg = <0x306000 0x80>;
|
||||
};
|
||||
29
Documentation/devicetree/bindings/pwm/pwm-tiehrpwm.txt
Normal file
29
Documentation/devicetree/bindings/pwm/pwm-tiehrpwm.txt
Normal file
|
|
@ -0,0 +1,29 @@
|
|||
TI SOC EHRPWM based PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be "ti,<soc>-ehrpwm".
|
||||
for am33xx - compatible = "ti,am33xx-ehrpwm";
|
||||
for da850 - compatible = "ti,da850-ehrpwm", "ti,am33xx-ehrpwm";
|
||||
- #pwm-cells: should be 3. See pwm.txt in this directory for a description of
|
||||
the cells format. The only third cell flag supported by this binding is
|
||||
PWM_POLARITY_INVERTED.
|
||||
- reg: physical base address and size of the registers map.
|
||||
|
||||
Optional properties:
|
||||
- ti,hwmods: Name of the hwmod associated to the EHRPWM:
|
||||
"ehrpwm<x>", <x> being the 0-based instance number from the HW spec
|
||||
|
||||
Example:
|
||||
|
||||
ehrpwm0: ehrpwm@0 { /* EHRPWM on am33xx */
|
||||
compatible = "ti,am33xx-ehrpwm";
|
||||
#pwm-cells = <3>;
|
||||
reg = <0x48300200 0x100>;
|
||||
ti,hwmods = "ehrpwm0";
|
||||
};
|
||||
|
||||
ehrpwm0: ehrpwm@0 { /* EHRPWM on da850 */
|
||||
compatible = "ti,da850-ehrpwm", "ti,am33xx-ehrpwm";
|
||||
#pwm-cells = <3>;
|
||||
reg = <0x300000 0x2000>;
|
||||
};
|
||||
31
Documentation/devicetree/bindings/pwm/pwm-tipwmss.txt
Normal file
31
Documentation/devicetree/bindings/pwm/pwm-tipwmss.txt
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
TI SOC based PWM Subsystem
|
||||
|
||||
Required properties:
|
||||
- compatible: Must be "ti,am33xx-pwmss";
|
||||
- reg: physical base address and size of the registers map.
|
||||
- address-cells: Specify the number of u32 entries needed in child nodes.
|
||||
Should set to 1.
|
||||
- size-cells: specify number of u32 entries needed to specify child nodes size
|
||||
in reg property. Should set to 1.
|
||||
- ranges: describes the address mapping of a memory-mapped bus. Should set to
|
||||
physical address map of child's base address, physical address within
|
||||
parent's address space and length of the address map. For am33xx,
|
||||
3 set of child register maps present, ECAP register space, EQEP
|
||||
register space, EHRPWM register space.
|
||||
|
||||
Also child nodes should also populated under PWMSS DT node.
|
||||
|
||||
Example:
|
||||
pwmss0: pwmss@48300000 {
|
||||
compatible = "ti,am33xx-pwmss";
|
||||
reg = <0x48300000 0x10>;
|
||||
ti,hwmods = "epwmss0";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
status = "disabled";
|
||||
ranges = <0x48300100 0x48300100 0x80 /* ECAP */
|
||||
0x48300180 0x48300180 0x80 /* EQEP */
|
||||
0x48300200 0x48300200 0x80>; /* EHRPWM */
|
||||
|
||||
/* child nodes go here */
|
||||
};
|
||||
69
Documentation/devicetree/bindings/pwm/pwm.txt
Normal file
69
Documentation/devicetree/bindings/pwm/pwm.txt
Normal file
|
|
@ -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>;
|
||||
};
|
||||
30
Documentation/devicetree/bindings/pwm/pxa-pwm.txt
Normal file
30
Documentation/devicetree/bindings/pwm/pxa-pwm.txt
Normal file
|
|
@ -0,0 +1,30 @@
|
|||
Marvell PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be one or more of:
|
||||
- "marvell,pxa250-pwm"
|
||||
- "marvell,pxa270-pwm"
|
||||
- "marvell,pxa168-pwm"
|
||||
- "marvell,pxa910-pwm"
|
||||
- reg: Physical base address and length of the registers used by the PWM channel
|
||||
Note that one device instance must be created for each PWM that is used, so the
|
||||
length covers only the register window for one PWM output, not that of the
|
||||
entire PWM controller. Currently length is 0x10 for all supported devices.
|
||||
- #pwm-cells: Should be 1. This cell is used to specify the period in
|
||||
nanoseconds.
|
||||
|
||||
Example PWM device node:
|
||||
|
||||
pwm0: pwm@40b00000 {
|
||||
compatible = "marvell,pxa250-pwm";
|
||||
reg = <0x40b00000 0x10>;
|
||||
#pwm-cells = <1>;
|
||||
};
|
||||
|
||||
Example PWM client node:
|
||||
|
||||
backlight {
|
||||
compatible = "pwm-backlight";
|
||||
pwms = <&pwm0 5000000>;
|
||||
...
|
||||
}
|
||||
28
Documentation/devicetree/bindings/pwm/renesas,tpu-pwm.txt
Normal file
28
Documentation/devicetree/bindings/pwm/renesas,tpu-pwm.txt
Normal file
|
|
@ -0,0 +1,28 @@
|
|||
* Renesas R-Car Timer Pulse Unit PWM Controller
|
||||
|
||||
Required Properties:
|
||||
|
||||
- compatible: should be one of the following.
|
||||
- "renesas,tpu-r8a73a4": for R8A77A4 (R-Mobile APE6) compatible PWM controller.
|
||||
- "renesas,tpu-r8a7740": for R8A7740 (R-Mobile A1) compatible PWM controller.
|
||||
- "renesas,tpu-r8a7790": for R8A7790 (R-Car H2) compatible PWM controller.
|
||||
- "renesas,tpu-sh7372": for SH7372 (SH-Mobile AP4) compatible PWM controller.
|
||||
- "renesas,tpu": for generic R-Car TPU PWM controller.
|
||||
|
||||
- reg: Base address and length of each memory resource used by the PWM
|
||||
controller hardware module.
|
||||
|
||||
- #pwm-cells: should be 3. See pwm.txt in this directory for a description of
|
||||
the cells format. The only third cell flag supported by this binding is
|
||||
PWM_POLARITY_INVERTED.
|
||||
|
||||
Please refer to pwm.txt in this directory for details of the common PWM bindings
|
||||
used by client devices.
|
||||
|
||||
Example: R8A7740 (R-Car A1) TPU controller node
|
||||
|
||||
tpu: pwm@e6600000 {
|
||||
compatible = "renesas,tpu-r8a7740", "renesas,tpu";
|
||||
reg = <0xe6600000 0x100>;
|
||||
#pwm-cells = <3>;
|
||||
};
|
||||
17
Documentation/devicetree/bindings/pwm/spear-pwm.txt
Normal file
17
Documentation/devicetree/bindings/pwm/spear-pwm.txt
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
== ST SPEAr SoC PWM controller ==
|
||||
|
||||
Required properties:
|
||||
- compatible: should be one of:
|
||||
- "st,spear320-pwm"
|
||||
- "st,spear1340-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- #pwm-cells: should be 2. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
|
||||
Example:
|
||||
|
||||
pwm: pwm@a8000000 {
|
||||
compatible ="st,spear320-pwm";
|
||||
reg = <0xa8000000 0x1000>;
|
||||
#pwm-cells = <2>;
|
||||
};
|
||||
17
Documentation/devicetree/bindings/pwm/ti,twl-pwm.txt
Normal file
17
Documentation/devicetree/bindings/pwm/ti,twl-pwm.txt
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
Texas Instruments TWL series PWM drivers
|
||||
|
||||
Supported PWMs:
|
||||
On TWL4030 series: PWM1 and PWM2
|
||||
On TWL6030 series: PWM0 and PWM1
|
||||
|
||||
Required properties:
|
||||
- compatible: "ti,twl4030-pwm" or "ti,twl6030-pwm"
|
||||
- #pwm-cells: should be 2. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
|
||||
Example:
|
||||
|
||||
twl_pwm: pwm {
|
||||
compatible = "ti,twl6030-pwm";
|
||||
#pwm-cells = <2>;
|
||||
};
|
||||
17
Documentation/devicetree/bindings/pwm/ti,twl-pwmled.txt
Normal file
17
Documentation/devicetree/bindings/pwm/ti,twl-pwmled.txt
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
Texas Instruments TWL series PWM drivers connected to LED terminals
|
||||
|
||||
Supported PWMs:
|
||||
On TWL4030 series: PWMA and PWMB (connected to LEDA and LEDB terminals)
|
||||
On TWL6030 series: LED PWM (mainly used as charging indicator LED)
|
||||
|
||||
Required properties:
|
||||
- compatible: "ti,twl4030-pwmled" or "ti,twl6030-pwmled"
|
||||
- #pwm-cells: should be 2. See pwm.txt in this directory for a description of
|
||||
the cells format.
|
||||
|
||||
Example:
|
||||
|
||||
twl_pwmled: pwmled {
|
||||
compatible = "ti,twl6030-pwmled";
|
||||
#pwm-cells = <2>;
|
||||
};
|
||||
18
Documentation/devicetree/bindings/pwm/vt8500-pwm.txt
Normal file
18
Documentation/devicetree/bindings/pwm/vt8500-pwm.txt
Normal file
|
|
@ -0,0 +1,18 @@
|
|||
VIA/Wondermedia VT8500/WM8xxx series SoC PWM controller
|
||||
|
||||
Required properties:
|
||||
- compatible: should be "via,vt8500-pwm"
|
||||
- reg: physical base address and length of the controller's registers
|
||||
- #pwm-cells: should be 3. See pwm.txt in this directory for a description of
|
||||
the cells format. The only third cell flag supported by this binding is
|
||||
PWM_POLARITY_INVERTED.
|
||||
- clocks: phandle to the PWM source clock
|
||||
|
||||
Example:
|
||||
|
||||
pwm1: pwm@d8220000 {
|
||||
#pwm-cells = <3>;
|
||||
compatible = "via,vt8500-pwm";
|
||||
reg = <0xd8220000 0x1000>;
|
||||
clocks = <&clkpwm>;
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue