diff options
Diffstat (limited to 'Documentation/devicetree')
204 files changed, 4835 insertions, 244 deletions
diff --git a/Documentation/devicetree/bindings/arm/armada-38x.txt b/Documentation/devicetree/bindings/arm/armada-38x.txt index ad9f8ed4d9bd..202953f1887e 100644 --- a/Documentation/devicetree/bindings/arm/armada-38x.txt +++ b/Documentation/devicetree/bindings/arm/armada-38x.txt | |||
@@ -15,6 +15,13 @@ Required root node property: | |||
15 | 15 | ||
16 | compatible: must contain "marvell,armada385" | 16 | compatible: must contain "marvell,armada385" |
17 | 17 | ||
18 | In addition, boards using the Marvell Armada 388 SoC shall have the | ||
19 | following property before the previous one: | ||
20 | |||
21 | Required root node property: | ||
22 | |||
23 | compatible: must contain "marvell,armada388" | ||
24 | |||
18 | Example: | 25 | Example: |
19 | 26 | ||
20 | compatible = "marvell,a385-rd", "marvell,armada385", "marvell,armada380"; | 27 | compatible = "marvell,a385-rd", "marvell,armada385", "marvell,armada380"; |
diff --git a/Documentation/devicetree/bindings/arm/atmel-at91.txt b/Documentation/devicetree/bindings/arm/atmel-at91.txt index 562cda9d86d9..ad319f84f560 100644 --- a/Documentation/devicetree/bindings/arm/atmel-at91.txt +++ b/Documentation/devicetree/bindings/arm/atmel-at91.txt | |||
@@ -24,6 +24,7 @@ compatible: must be one of: | |||
24 | o "atmel,at91sam9g45" | 24 | o "atmel,at91sam9g45" |
25 | o "atmel,at91sam9n12" | 25 | o "atmel,at91sam9n12" |
26 | o "atmel,at91sam9rl" | 26 | o "atmel,at91sam9rl" |
27 | o "atmel,at91sam9xe" | ||
27 | * "atmel,sama5" for SoCs using a Cortex-A5, shall be extended with the specific | 28 | * "atmel,sama5" for SoCs using a Cortex-A5, shall be extended with the specific |
28 | SoC family: | 29 | SoC family: |
29 | o "atmel,sama5d3" shall be extended with the specific SoC compatible: | 30 | o "atmel,sama5d3" shall be extended with the specific SoC compatible: |
@@ -136,3 +137,19 @@ Example: | |||
136 | compatible = "atmel,at91sam9260-rstc"; | 137 | compatible = "atmel,at91sam9260-rstc"; |
137 | reg = <0xfffffd00 0x10>; | 138 | reg = <0xfffffd00 0x10>; |
138 | }; | 139 | }; |
140 | |||
141 | Special Function Registers (SFR) | ||
142 | |||
143 | Special Function Registers (SFR) manage specific aspects of the integrated | ||
144 | memory, bridge implementations, processor and other functionality not controlled | ||
145 | elsewhere. | ||
146 | |||
147 | required properties: | ||
148 | - compatible: Should be "atmel,<chip>-sfr", "syscon". | ||
149 | <chip> can be "sama5d3" or "sama5d4". | ||
150 | - reg: Should contain registers location and length | ||
151 | |||
152 | sfr@f0038000 { | ||
153 | compatible = "atmel,sama5d3-sfr", "syscon"; | ||
154 | reg = <0xf0038000 0x60>; | ||
155 | }; | ||
diff --git a/Documentation/devicetree/bindings/arm/brcm-brcmstb.txt b/Documentation/devicetree/bindings/arm/brcm-brcmstb.txt index 3c436cc4f35d..430608ec09f0 100644 --- a/Documentation/devicetree/bindings/arm/brcm-brcmstb.txt +++ b/Documentation/devicetree/bindings/arm/brcm-brcmstb.txt | |||
@@ -79,7 +79,9 @@ reboot | |||
79 | Required properties | 79 | Required properties |
80 | 80 | ||
81 | - compatible | 81 | - compatible |
82 | The string property "brcm,brcmstb-reboot". | 82 | The string property "brcm,brcmstb-reboot" for 40nm/28nm chips with |
83 | the new SYS_CTRL interface, or "brcm,bcm7038-reboot" for 65nm | ||
84 | chips with the old SUN_TOP_CTRL interface. | ||
83 | 85 | ||
84 | - syscon | 86 | - syscon |
85 | A phandle / integer array that points to the syscon node which describes | 87 | A phandle / integer array that points to the syscon node which describes |
diff --git a/Documentation/devicetree/bindings/arm/coresight.txt b/Documentation/devicetree/bindings/arm/coresight.txt index d790f49066f3..a3089359aaa6 100644 --- a/Documentation/devicetree/bindings/arm/coresight.txt +++ b/Documentation/devicetree/bindings/arm/coresight.txt | |||
@@ -38,8 +38,6 @@ its hardware characteristcs. | |||
38 | AMBA markee): | 38 | AMBA markee): |
39 | - "arm,coresight-replicator" | 39 | - "arm,coresight-replicator" |
40 | 40 | ||
41 | * id: a unique number that will identify this replicator. | ||
42 | |||
43 | * port or ports: same as above. | 41 | * port or ports: same as above. |
44 | 42 | ||
45 | * Optional properties for ETM/PTMs: | 43 | * Optional properties for ETM/PTMs: |
@@ -94,8 +92,6 @@ Example: | |||
94 | * AMBA bus. As such no need to add "arm,primecell". | 92 | * AMBA bus. As such no need to add "arm,primecell". |
95 | */ | 93 | */ |
96 | compatible = "arm,coresight-replicator"; | 94 | compatible = "arm,coresight-replicator"; |
97 | /* this will show up in debugfs as "0.replicator" */ | ||
98 | id = <0>; | ||
99 | 95 | ||
100 | ports { | 96 | ports { |
101 | #address-cells = <1>; | 97 | #address-cells = <1>; |
diff --git a/Documentation/devicetree/bindings/arm/cpus.txt b/Documentation/devicetree/bindings/arm/cpus.txt index b2aacbe16ed9..8b9e0a95de31 100644 --- a/Documentation/devicetree/bindings/arm/cpus.txt +++ b/Documentation/devicetree/bindings/arm/cpus.txt | |||
@@ -175,6 +175,7 @@ nodes to be present and contain the properties described below. | |||
175 | "marvell,pj4a" | 175 | "marvell,pj4a" |
176 | "marvell,pj4b" | 176 | "marvell,pj4b" |
177 | "marvell,sheeva-v5" | 177 | "marvell,sheeva-v5" |
178 | "nvidia,tegra132-denver" | ||
178 | "qcom,krait" | 179 | "qcom,krait" |
179 | "qcom,scorpion" | 180 | "qcom,scorpion" |
180 | - enable-method | 181 | - enable-method |
diff --git a/Documentation/devicetree/bindings/arm/digicolor.txt b/Documentation/devicetree/bindings/arm/digicolor.txt new file mode 100644 index 000000000000..658553f40b23 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/digicolor.txt | |||
@@ -0,0 +1,6 @@ | |||
1 | Conexant Digicolor Platforms Device Tree Bindings | ||
2 | |||
3 | Each device tree must specify which Conexant Digicolor SoC it uses. | ||
4 | Must be the following compatible string: | ||
5 | |||
6 | cnxt,cx92755 | ||
diff --git a/Documentation/devicetree/bindings/arm/exynos/power_domain.txt b/Documentation/devicetree/bindings/arm/exynos/power_domain.txt index abde1ea8a119..f4445e5a2bbb 100644 --- a/Documentation/devicetree/bindings/arm/exynos/power_domain.txt +++ b/Documentation/devicetree/bindings/arm/exynos/power_domain.txt | |||
@@ -23,7 +23,7 @@ Optional Properties: | |||
23 | devices in this power domain. Maximum of 4 pairs (N = 0 to 3) | 23 | devices in this power domain. Maximum of 4 pairs (N = 0 to 3) |
24 | are supported currently. | 24 | are supported currently. |
25 | 25 | ||
26 | Node of a device using power domains must have a samsung,power-domain property | 26 | Node of a device using power domains must have a power-domains property |
27 | defined with a phandle to respective power domain. | 27 | defined with a phandle to respective power domain. |
28 | 28 | ||
29 | Example: | 29 | Example: |
diff --git a/Documentation/devicetree/bindings/arm/fsl.txt b/Documentation/devicetree/bindings/arm/fsl.txt index 4e8b7df7fc62..a5462b6b3c30 100644 --- a/Documentation/devicetree/bindings/arm/fsl.txt +++ b/Documentation/devicetree/bindings/arm/fsl.txt | |||
@@ -75,6 +75,18 @@ i.MX6q generic board | |||
75 | Required root node properties: | 75 | Required root node properties: |
76 | - compatible = "fsl,imx6q"; | 76 | - compatible = "fsl,imx6q"; |
77 | 77 | ||
78 | Freescale Vybrid Platform Device Tree Bindings | ||
79 | ---------------------------------------------- | ||
80 | |||
81 | For the Vybrid SoC familiy all variants with DDR controller are supported, | ||
82 | which is the VF5xx and VF6xx series. Out of historical reasons, in most | ||
83 | places the kernel uses vf610 to refer to the whole familiy. | ||
84 | |||
85 | Required root node compatible property (one of them): | ||
86 | - compatible = "fsl,vf500"; | ||
87 | - compatible = "fsl,vf510"; | ||
88 | - compatible = "fsl,vf600"; | ||
89 | - compatible = "fsl,vf610"; | ||
78 | 90 | ||
79 | Freescale LS1021A Platform Device Tree Bindings | 91 | Freescale LS1021A Platform Device Tree Bindings |
80 | ------------------------------------------------ | 92 | ------------------------------------------------ |
@@ -112,3 +124,11 @@ Example: | |||
112 | compatible = "fsl,ls1021a-dcfg"; | 124 | compatible = "fsl,ls1021a-dcfg"; |
113 | reg = <0x0 0x1ee0000 0x0 0x10000>; | 125 | reg = <0x0 0x1ee0000 0x0 0x10000>; |
114 | }; | 126 | }; |
127 | |||
128 | Freescale LS2085A SoC Device Tree Bindings | ||
129 | ------------------------------------------ | ||
130 | |||
131 | LS2085A ARMv8 based Simulator model | ||
132 | Required root node properties: | ||
133 | - compatible = "fsl,ls2085a-simu", "fsl,ls2085a"; | ||
134 | |||
diff --git a/Documentation/devicetree/bindings/arm/gic.txt b/Documentation/devicetree/bindings/arm/gic.txt index 8112d0c3675a..c97484b73e72 100644 --- a/Documentation/devicetree/bindings/arm/gic.txt +++ b/Documentation/devicetree/bindings/arm/gic.txt | |||
@@ -32,12 +32,16 @@ Main node required properties: | |||
32 | The 3rd cell is the flags, encoded as follows: | 32 | The 3rd cell is the flags, encoded as follows: |
33 | bits[3:0] trigger type and level flags. | 33 | bits[3:0] trigger type and level flags. |
34 | 1 = low-to-high edge triggered | 34 | 1 = low-to-high edge triggered |
35 | 2 = high-to-low edge triggered | 35 | 2 = high-to-low edge triggered (invalid for SPIs) |
36 | 4 = active high level-sensitive | 36 | 4 = active high level-sensitive |
37 | 8 = active low level-sensitive | 37 | 8 = active low level-sensitive (invalid for SPIs). |
38 | bits[15:8] PPI interrupt cpu mask. Each bit corresponds to each of | 38 | bits[15:8] PPI interrupt cpu mask. Each bit corresponds to each of |
39 | the 8 possible cpus attached to the GIC. A bit set to '1' indicated | 39 | the 8 possible cpus attached to the GIC. A bit set to '1' indicated |
40 | the interrupt is wired to that CPU. Only valid for PPI interrupts. | 40 | the interrupt is wired to that CPU. Only valid for PPI interrupts. |
41 | Also note that the configurability of PPI interrupts is IMPLEMENTATION | ||
42 | DEFINED and as such not guaranteed to be present (most SoC available | ||
43 | in 2014 seem to ignore the setting of this flag and use the hardware | ||
44 | default value). | ||
41 | 45 | ||
42 | - reg : Specifies base physical address(s) and size of the GIC registers. The | 46 | - reg : Specifies base physical address(s) and size of the GIC registers. The |
43 | first region is the GIC distributor register base and size. The 2nd region is | 47 | first region is the GIC distributor register base and size. The 2nd region is |
diff --git a/Documentation/devicetree/bindings/arm/hisilicon/hisilicon.txt b/Documentation/devicetree/bindings/arm/hisilicon/hisilicon.txt index f717c7b48603..35b1bd49cfa1 100644 --- a/Documentation/devicetree/bindings/arm/hisilicon/hisilicon.txt +++ b/Documentation/devicetree/bindings/arm/hisilicon/hisilicon.txt | |||
@@ -9,6 +9,10 @@ HiP04 D01 Board | |||
9 | Required root node properties: | 9 | Required root node properties: |
10 | - compatible = "hisilicon,hip04-d01"; | 10 | - compatible = "hisilicon,hip04-d01"; |
11 | 11 | ||
12 | HiP01 ca9x2 Board | ||
13 | Required root node properties: | ||
14 | - compatible = "hisilicon,hip01-ca9x2"; | ||
15 | |||
12 | 16 | ||
13 | Hisilicon system controller | 17 | Hisilicon system controller |
14 | 18 | ||
@@ -37,6 +41,27 @@ Example: | |||
37 | }; | 41 | }; |
38 | 42 | ||
39 | ----------------------------------------------------------------------- | 43 | ----------------------------------------------------------------------- |
44 | Hisilicon HiP01 system controller | ||
45 | |||
46 | Required properties: | ||
47 | - compatible : "hisilicon,hip01-sysctrl" | ||
48 | - reg : Register address and size | ||
49 | |||
50 | The HiP01 system controller is mostly compatible with hisilicon | ||
51 | system controller,but it has some specific control registers for | ||
52 | HIP01 SoC family, such as slave core boot, and also some same | ||
53 | registers located at different offset. | ||
54 | |||
55 | Example: | ||
56 | |||
57 | /* for hip01-ca9x2 */ | ||
58 | sysctrl: system-controller@10000000 { | ||
59 | compatible = "hisilicon,hip01-sysctrl", "hisilicon,sysctrl"; | ||
60 | reg = <0x10000000 0x1000>; | ||
61 | reboot-offset = <0x4>; | ||
62 | }; | ||
63 | |||
64 | ----------------------------------------------------------------------- | ||
40 | Hisilicon CPU controller | 65 | Hisilicon CPU controller |
41 | 66 | ||
42 | Required properties: | 67 | Required properties: |
diff --git a/Documentation/devicetree/bindings/arm/l2cc.txt b/Documentation/devicetree/bindings/arm/l2cc.txt index 292ef7ca3058..0dbabe9a6b0a 100644 --- a/Documentation/devicetree/bindings/arm/l2cc.txt +++ b/Documentation/devicetree/bindings/arm/l2cc.txt | |||
@@ -57,6 +57,16 @@ Optional properties: | |||
57 | - cache-id-part: cache id part number to be used if it is not present | 57 | - cache-id-part: cache id part number to be used if it is not present |
58 | on hardware | 58 | on hardware |
59 | - wt-override: If present then L2 is forced to Write through mode | 59 | - wt-override: If present then L2 is forced to Write through mode |
60 | - arm,double-linefill : Override double linefill enable setting. Enable if | ||
61 | non-zero, disable if zero. | ||
62 | - arm,double-linefill-incr : Override double linefill on INCR read. Enable | ||
63 | if non-zero, disable if zero. | ||
64 | - arm,double-linefill-wrap : Override double linefill on WRAP read. Enable | ||
65 | if non-zero, disable if zero. | ||
66 | - arm,prefetch-drop : Override prefetch drop enable setting. Enable if non-zero, | ||
67 | disable if zero. | ||
68 | - arm,prefetch-offset : Override prefetch offset value. Valid values are | ||
69 | 0-7, 15, 23, and 31. | ||
60 | 70 | ||
61 | Example: | 71 | Example: |
62 | 72 | ||
diff --git a/Documentation/devicetree/bindings/arm/mediatek.txt b/Documentation/devicetree/bindings/arm/mediatek.txt index 3be40139cfbb..dd7550a29db6 100644 --- a/Documentation/devicetree/bindings/arm/mediatek.txt +++ b/Documentation/devicetree/bindings/arm/mediatek.txt | |||
@@ -9,6 +9,7 @@ compatible: Must contain one of | |||
9 | "mediatek,mt6592" | 9 | "mediatek,mt6592" |
10 | "mediatek,mt8127" | 10 | "mediatek,mt8127" |
11 | "mediatek,mt8135" | 11 | "mediatek,mt8135" |
12 | "mediatek,mt8173" | ||
12 | 13 | ||
13 | 14 | ||
14 | Supported boards: | 15 | Supported boards: |
@@ -25,3 +26,6 @@ Supported boards: | |||
25 | - MTK mt8135 tablet EVB: | 26 | - MTK mt8135 tablet EVB: |
26 | Required root node properties: | 27 | Required root node properties: |
27 | - compatible = "mediatek,mt8135-evbp1", "mediatek,mt8135"; | 28 | - compatible = "mediatek,mt8135-evbp1", "mediatek,mt8135"; |
29 | - MTK mt8173 tablet EVB: | ||
30 | Required root node properties: | ||
31 | - compatible = "mediatek,mt8173-evb", "mediatek,mt8173"; | ||
diff --git a/Documentation/devicetree/bindings/arm/mediatek/mediatek,sysirq.txt b/Documentation/devicetree/bindings/arm/mediatek/mediatek,sysirq.txt index d680b07ec6e8..4f5a5352ccd8 100644 --- a/Documentation/devicetree/bindings/arm/mediatek/mediatek,sysirq.txt +++ b/Documentation/devicetree/bindings/arm/mediatek/mediatek,sysirq.txt | |||
@@ -5,8 +5,10 @@ interrupt. | |||
5 | 5 | ||
6 | Required properties: | 6 | Required properties: |
7 | - compatible: should be one of: | 7 | - compatible: should be one of: |
8 | "mediatek,mt8173-sysirq" | ||
8 | "mediatek,mt8135-sysirq" | 9 | "mediatek,mt8135-sysirq" |
9 | "mediatek,mt8127-sysirq" | 10 | "mediatek,mt8127-sysirq" |
11 | "mediatek,mt6592-sysirq" | ||
10 | "mediatek,mt6589-sysirq" | 12 | "mediatek,mt6589-sysirq" |
11 | "mediatek,mt6582-sysirq" | 13 | "mediatek,mt6582-sysirq" |
12 | "mediatek,mt6577-sysirq" | 14 | "mediatek,mt6577-sysirq" |
diff --git a/Documentation/devicetree/bindings/arm/msm/timer.txt b/Documentation/devicetree/bindings/arm/msm/timer.txt index c6ef8f13dc7e..74607b6c1117 100644 --- a/Documentation/devicetree/bindings/arm/msm/timer.txt +++ b/Documentation/devicetree/bindings/arm/msm/timer.txt | |||
@@ -8,7 +8,7 @@ Properties: | |||
8 | "qcom,kpss-timer" - krait subsystem | 8 | "qcom,kpss-timer" - krait subsystem |
9 | "qcom,scss-timer" - scorpion subsystem | 9 | "qcom,scss-timer" - scorpion subsystem |
10 | 10 | ||
11 | - interrupts : Interrupts for the the debug timer, the first general purpose | 11 | - interrupts : Interrupts for the debug timer, the first general purpose |
12 | timer, and optionally a second general purpose timer in that | 12 | timer, and optionally a second general purpose timer in that |
13 | order. | 13 | order. |
14 | 14 | ||
diff --git a/Documentation/devicetree/bindings/arm/rockchip.txt b/Documentation/devicetree/bindings/arm/rockchip.txt index eaa3d1a0eb05..6809e4e51ed2 100644 --- a/Documentation/devicetree/bindings/arm/rockchip.txt +++ b/Documentation/devicetree/bindings/arm/rockchip.txt | |||
@@ -9,6 +9,16 @@ Rockchip platforms device tree bindings | |||
9 | Required root node properties: | 9 | Required root node properties: |
10 | - compatible = "mundoreader,bq-curie2", "rockchip,rk3066a"; | 10 | - compatible = "mundoreader,bq-curie2", "rockchip,rk3066a"; |
11 | 11 | ||
12 | - ChipSPARK Rayeager PX2 board: | ||
13 | Required root node properties: | ||
14 | - compatible = "chipspark,rayeager-px2", "rockchip,rk3066a"; | ||
15 | |||
12 | - Radxa Rock board: | 16 | - Radxa Rock board: |
13 | Required root node properties: | 17 | Required root node properties: |
14 | - compatible = "radxa,rock", "rockchip,rk3188"; | 18 | - compatible = "radxa,rock", "rockchip,rk3188"; |
19 | |||
20 | - Firefly Firefly-RK3288 board: | ||
21 | Required root node properties: | ||
22 | - compatible = "firefly,firefly-rk3288", "rockchip,rk3288"; | ||
23 | or | ||
24 | - compatible = "firefly,firefly-rk3288-beta", "rockchip,rk3288"; | ||
diff --git a/Documentation/devicetree/bindings/arm/rockchip/pmu-sram.txt b/Documentation/devicetree/bindings/arm/rockchip/pmu-sram.txt new file mode 100644 index 000000000000..6b42fda306ff --- /dev/null +++ b/Documentation/devicetree/bindings/arm/rockchip/pmu-sram.txt | |||
@@ -0,0 +1,16 @@ | |||
1 | Rockchip SRAM for pmu: | ||
2 | ------------------------------ | ||
3 | |||
4 | The sram of pmu is used to store the function of resume from maskrom(the 1st | ||
5 | level loader). This is a common use of the "pmu-sram" because it keeps power | ||
6 | even in low power states in the system. | ||
7 | |||
8 | Required node properties: | ||
9 | - compatible : should be "rockchip,rk3288-pmu-sram" | ||
10 | - reg : physical base address and the size of the registers window | ||
11 | |||
12 | Example: | ||
13 | sram@ff720000 { | ||
14 | compatible = "rockchip,rk3288-pmu-sram", "mmio-sram"; | ||
15 | reg = <0xff720000 0x1000>; | ||
16 | }; | ||
diff --git a/Documentation/devicetree/bindings/arm/samsung/exynos-chipid.txt b/Documentation/devicetree/bindings/arm/samsung/exynos-chipid.txt new file mode 100644 index 000000000000..85c5dfd4a720 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/samsung/exynos-chipid.txt | |||
@@ -0,0 +1,12 @@ | |||
1 | SAMSUNG Exynos SoCs Chipid driver. | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Should at least contain "samsung,exynos4210-chipid". | ||
5 | |||
6 | - reg: offset and length of the register set | ||
7 | |||
8 | Example: | ||
9 | chipid@10000000 { | ||
10 | compatible = "samsung,exynos4210-chipid"; | ||
11 | reg = <0x10000000 0x100>; | ||
12 | }; | ||
diff --git a/Documentation/devicetree/bindings/arm/samsung/pmu.txt b/Documentation/devicetree/bindings/arm/samsung/pmu.txt index 1e1979b229ff..67b211381f2b 100644 --- a/Documentation/devicetree/bindings/arm/samsung/pmu.txt +++ b/Documentation/devicetree/bindings/arm/samsung/pmu.txt | |||
@@ -10,6 +10,7 @@ Properties: | |||
10 | - "samsung,exynos5260-pmu" - for Exynos5260 SoC. | 10 | - "samsung,exynos5260-pmu" - for Exynos5260 SoC. |
11 | - "samsung,exynos5410-pmu" - for Exynos5410 SoC, | 11 | - "samsung,exynos5410-pmu" - for Exynos5410 SoC, |
12 | - "samsung,exynos5420-pmu" - for Exynos5420 SoC. | 12 | - "samsung,exynos5420-pmu" - for Exynos5420 SoC. |
13 | - "samsung,exynos7-pmu" - for Exynos7 SoC. | ||
13 | second value must be always "syscon". | 14 | second value must be always "syscon". |
14 | 15 | ||
15 | - reg : offset and length of the register set. | 16 | - reg : offset and length of the register set. |
diff --git a/Documentation/devicetree/bindings/arm/sirf.txt b/Documentation/devicetree/bindings/arm/sirf.txt index c6ba6d3c747f..7b28ee6fee91 100644 --- a/Documentation/devicetree/bindings/arm/sirf.txt +++ b/Documentation/devicetree/bindings/arm/sirf.txt | |||
@@ -3,7 +3,9 @@ CSR SiRFprimaII and SiRFmarco device tree bindings. | |||
3 | 3 | ||
4 | Required root node properties: | 4 | Required root node properties: |
5 | - compatible: | 5 | - compatible: |
6 | - "sirf,atlas6-cb" : atlas6 "cb" evaluation board | ||
7 | - "sirf,atlas6" : atlas6 device based board | ||
8 | - "sirf,atlas7-cb" : atlas7 "cb" evaluation board | ||
9 | - "sirf,atlas7" : atlas7 device based board | ||
6 | - "sirf,prima2-cb" : prima2 "cb" evaluation board | 10 | - "sirf,prima2-cb" : prima2 "cb" evaluation board |
7 | - "sirf,marco-cb" : marco "cb" evaluation board | ||
8 | - "sirf,prima2" : prima2 device based board | 11 | - "sirf,prima2" : prima2 device based board |
9 | - "sirf,marco" : marco device based board | ||
diff --git a/Documentation/devicetree/bindings/arm/sprd.txt b/Documentation/devicetree/bindings/arm/sprd.txt new file mode 100644 index 000000000000..31a629dc75b8 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/sprd.txt | |||
@@ -0,0 +1,11 @@ | |||
1 | Spreadtrum SoC Platforms Device Tree Bindings | ||
2 | ---------------------------------------------------- | ||
3 | |||
4 | Sharkl64 is a Spreadtrum's SoC Platform which is based | ||
5 | on ARM 64-bit processor. | ||
6 | |||
7 | SC9836 openphone board with SC9836 SoC based on the | ||
8 | Sharkl64 Platform shall have the following properties. | ||
9 | |||
10 | Required root node properties: | ||
11 | - compatible = "sprd,sc9836-openphone", "sprd,sc9836"; | ||
diff --git a/Documentation/devicetree/bindings/arm/sti.txt b/Documentation/devicetree/bindings/arm/sti.txt index 92f16c78bb69..d70ec358736c 100644 --- a/Documentation/devicetree/bindings/arm/sti.txt +++ b/Documentation/devicetree/bindings/arm/sti.txt | |||
@@ -13,3 +13,7 @@ Boards with the ST STiH407 SoC shall have the following properties: | |||
13 | Required root node property: | 13 | Required root node property: |
14 | compatible = "st,stih407"; | 14 | compatible = "st,stih407"; |
15 | 15 | ||
16 | Boards with the ST STiH418 SoC shall have the following properties: | ||
17 | Required root node property: | ||
18 | compatible = "st,stih418"; | ||
19 | |||
diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-ahb.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-ahb.txt index 234406d41c12..067c9790062f 100644 --- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-ahb.txt +++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-ahb.txt | |||
@@ -1,7 +1,10 @@ | |||
1 | NVIDIA Tegra AHB | 1 | NVIDIA Tegra AHB |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : "nvidia,tegra20-ahb" or "nvidia,tegra30-ahb" | 4 | - compatible : For Tegra20, must contain "nvidia,tegra20-ahb". For |
5 | Tegra30, must contain "nvidia,tegra30-ahb". Otherwise, must contain | ||
6 | '"nvidia,<chip>-ahb", "nvidia,tegra30-ahb"' where <chip> is tegra124, | ||
7 | tegra132, or tegra210. | ||
5 | - reg : Should contain 1 register ranges(address and length) | 8 | - reg : Should contain 1 register ranges(address and length) |
6 | 9 | ||
7 | Example: | 10 | Example: |
diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-pmc.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-pmc.txt index 68ac65f82a1c..02c27004d4a8 100644 --- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-pmc.txt +++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-pmc.txt | |||
@@ -6,7 +6,11 @@ modes. It provides power-gating controllers for SoC and CPU power-islands. | |||
6 | 6 | ||
7 | Required properties: | 7 | Required properties: |
8 | - name : Should be pmc | 8 | - name : Should be pmc |
9 | - compatible : Should contain "nvidia,tegra<chip>-pmc". | 9 | - compatible : For Tegra20, must contain "nvidia,tegra20-pmc". For Tegra30, |
10 | must contain "nvidia,tegra30-pmc". For Tegra114, must contain | ||
11 | "nvidia,tegra114-pmc". For Tegra124, must contain "nvidia,tegra124-pmc". | ||
12 | Otherwise, must contain "nvidia,<chip>-pmc", plus at least one of the | ||
13 | above, where <chip> is tegra132. | ||
10 | - reg : Offset and length of the register set for the device | 14 | - reg : Offset and length of the register set for the device |
11 | - clocks : Must contain an entry for each entry in clock-names. | 15 | - clocks : Must contain an entry for each entry in clock-names. |
12 | See ../clocks/clock-bindings.txt for details. | 16 | See ../clocks/clock-bindings.txt for details. |
@@ -47,6 +51,23 @@ Required properties when nvidia,suspend-mode=<0>: | |||
47 | sleep mode, the warm boot code will restore some PLLs, clocks and then | 51 | sleep mode, the warm boot code will restore some PLLs, clocks and then |
48 | bring up CPU0 for resuming the system. | 52 | bring up CPU0 for resuming the system. |
49 | 53 | ||
54 | Hardware-triggered thermal reset: | ||
55 | On Tegra30, Tegra114 and Tegra124, if the 'i2c-thermtrip' subnode exists, | ||
56 | hardware-triggered thermal reset will be enabled. | ||
57 | |||
58 | Required properties for hardware-triggered thermal reset (inside 'i2c-thermtrip'): | ||
59 | - nvidia,i2c-controller-id : ID of I2C controller to send poweroff command to. Valid values are | ||
60 | described in section 9.2.148 "APBDEV_PMC_SCRATCH53_0" of the | ||
61 | Tegra K1 Technical Reference Manual. | ||
62 | - nvidia,bus-addr : Bus address of the PMU on the I2C bus | ||
63 | - nvidia,reg-addr : I2C register address to write poweroff command to | ||
64 | - nvidia,reg-data : Poweroff command to write to PMU | ||
65 | |||
66 | Optional properties for hardware-triggered thermal reset (inside 'i2c-thermtrip'): | ||
67 | - nvidia,pinmux-id : Pinmux used by the hardware when issuing poweroff command. | ||
68 | Defaults to 0. Valid values are described in section 12.5.2 | ||
69 | "Pinmux Support" of the Tegra4 Technical Reference Manual. | ||
70 | |||
50 | Example: | 71 | Example: |
51 | 72 | ||
52 | / SoC dts including file | 73 | / SoC dts including file |
@@ -69,6 +90,15 @@ pmc@7000f400 { | |||
69 | / Tegra board dts file | 90 | / Tegra board dts file |
70 | { | 91 | { |
71 | ... | 92 | ... |
93 | pmc@7000f400 { | ||
94 | i2c-thermtrip { | ||
95 | nvidia,i2c-controller-id = <4>; | ||
96 | nvidia,bus-addr = <0x40>; | ||
97 | nvidia,reg-addr = <0x36>; | ||
98 | nvidia,reg-data = <0x2>; | ||
99 | }; | ||
100 | }; | ||
101 | ... | ||
72 | clocks { | 102 | clocks { |
73 | compatible = "simple-bus"; | 103 | compatible = "simple-bus"; |
74 | #address-cells = <1>; | 104 | #address-cells = <1>; |
diff --git a/Documentation/devicetree/bindings/arm/versatile-sysreg.txt b/Documentation/devicetree/bindings/arm/versatile-sysreg.txt new file mode 100644 index 000000000000..a4f15262d717 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/versatile-sysreg.txt | |||
@@ -0,0 +1,10 @@ | |||
1 | ARM Versatile system registers | ||
2 | -------------------------------------- | ||
3 | |||
4 | This is a system control registers block, providing multiple low level | ||
5 | platform functions like board detection and identification, software | ||
6 | interrupt generation, MMC and NOR Flash control etc. | ||
7 | |||
8 | Required node properties: | ||
9 | - compatible value : = "arm,versatile-sysreg", "syscon" | ||
10 | - reg : physical base address and the size of the registers window | ||
diff --git a/Documentation/devicetree/bindings/ata/ahci-platform.txt b/Documentation/devicetree/bindings/ata/ahci-platform.txt index 4ab09f2202d4..c2340eeeb97f 100644 --- a/Documentation/devicetree/bindings/ata/ahci-platform.txt +++ b/Documentation/devicetree/bindings/ata/ahci-platform.txt | |||
@@ -37,9 +37,10 @@ Required properties when using sub-nodes: | |||
37 | 37 | ||
38 | 38 | ||
39 | Sub-nodes required properties: | 39 | Sub-nodes required properties: |
40 | - reg : the port number | 40 | - reg : the port number |
41 | - phys : reference to the SATA PHY node | 41 | And at least one of the following properties: |
42 | 42 | - phys : reference to the SATA PHY node | |
43 | - target-supply : regulator for SATA target power | ||
43 | 44 | ||
44 | Examples: | 45 | Examples: |
45 | sata@ffe08000 { | 46 | sata@ffe08000 { |
@@ -68,10 +69,12 @@ With sub-nodes: | |||
68 | sata0: sata-port@0 { | 69 | sata0: sata-port@0 { |
69 | reg = <0>; | 70 | reg = <0>; |
70 | phys = <&sata_phy 0>; | 71 | phys = <&sata_phy 0>; |
72 | target-supply = <®_sata0>; | ||
71 | }; | 73 | }; |
72 | 74 | ||
73 | sata1: sata-port@1 { | 75 | sata1: sata-port@1 { |
74 | reg = <1>; | 76 | reg = <1>; |
75 | phys = <&sata_phy 1>; | 77 | phys = <&sata_phy 1>; |
78 | target-supply = <®_sata1>;; | ||
76 | }; | 79 | }; |
77 | }; | 80 | }; |
diff --git a/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt b/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt index 93986a5a8018..3bacc8e0931e 100644 --- a/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt +++ b/Documentation/devicetree/bindings/ata/cavium-compact-flash.txt | |||
@@ -9,7 +9,7 @@ Properties: | |||
9 | 9 | ||
10 | Compatibility with many Cavium evaluation boards. | 10 | Compatibility with many Cavium evaluation boards. |
11 | 11 | ||
12 | - reg: The base address of the the CF chip select banks. Depending on | 12 | - reg: The base address of the CF chip select banks. Depending on |
13 | the device configuration, there may be one or two banks. | 13 | the device configuration, there may be one or two banks. |
14 | 14 | ||
15 | - cavium,bus-width: The width of the connection to the CF devices. Valid | 15 | - cavium,bus-width: The width of the connection to the CF devices. Valid |
diff --git a/Documentation/devicetree/bindings/ata/tegra-sata.txt b/Documentation/devicetree/bindings/ata/tegra-sata.txt index 946f2072570b..66c83c3e8915 100644 --- a/Documentation/devicetree/bindings/ata/tegra-sata.txt +++ b/Documentation/devicetree/bindings/ata/tegra-sata.txt | |||
@@ -1,7 +1,9 @@ | |||
1 | Tegra124 SoC SATA AHCI controller | 1 | Tegra124 SoC SATA AHCI controller |
2 | 2 | ||
3 | Required properties : | 3 | Required properties : |
4 | - compatible : "nvidia,tegra124-ahci". | 4 | - compatible : For Tegra124, must contain "nvidia,tegra124-ahci". Otherwise, |
5 | must contain '"nvidia,<chip>-ahci", "nvidia,tegra124-ahci"', where <chip> | ||
6 | is tegra132. | ||
5 | - reg : Should contain 2 entries: | 7 | - reg : Should contain 2 entries: |
6 | - AHCI register set (SATA BAR5) | 8 | - AHCI register set (SATA BAR5) |
7 | - SATA register set | 9 | - SATA register set |
diff --git a/Documentation/devicetree/bindings/bus/mvebu-mbus.txt b/Documentation/devicetree/bindings/bus/mvebu-mbus.txt index 5e16c3ccb061..fa6cde41b460 100644 --- a/Documentation/devicetree/bindings/bus/mvebu-mbus.txt +++ b/Documentation/devicetree/bindings/bus/mvebu-mbus.txt | |||
@@ -6,8 +6,8 @@ Required properties: | |||
6 | - compatible: Should be set to one of the following: | 6 | - compatible: Should be set to one of the following: |
7 | marvell,armada370-mbus | 7 | marvell,armada370-mbus |
8 | marvell,armadaxp-mbus | 8 | marvell,armadaxp-mbus |
9 | marvell,armada370-mbus | 9 | marvell,armada375-mbus |
10 | marvell,armadaxp-mbus | 10 | marvell,armada380-mbus |
11 | marvell,kirkwood-mbus | 11 | marvell,kirkwood-mbus |
12 | marvell,dove-mbus | 12 | marvell,dove-mbus |
13 | marvell,orion5x-88f5281-mbus | 13 | marvell,orion5x-88f5281-mbus |
diff --git a/Documentation/devicetree/bindings/c6x/dscr.txt b/Documentation/devicetree/bindings/c6x/dscr.txt index b0e97144cfb1..92672235de57 100644 --- a/Documentation/devicetree/bindings/c6x/dscr.txt +++ b/Documentation/devicetree/bindings/c6x/dscr.txt | |||
@@ -12,7 +12,7 @@ configuration register for writes. These configuration register may be used to | |||
12 | enable (and disable in some cases) SoC pin drivers, select peripheral clock | 12 | enable (and disable in some cases) SoC pin drivers, select peripheral clock |
13 | sources (internal or pin), etc. In some cases, a configuration register is | 13 | sources (internal or pin), etc. In some cases, a configuration register is |
14 | write once or the individual bits are write once. In addition to device config, | 14 | write once or the individual bits are write once. In addition to device config, |
15 | the DSCR block may provide registers which which are used to reset peripherals, | 15 | the DSCR block may provide registers which are used to reset peripherals, |
16 | provide device ID information, provide ethernet MAC addresses, as well as other | 16 | provide device ID information, provide ethernet MAC addresses, as well as other |
17 | miscellaneous functions. | 17 | miscellaneous functions. |
18 | 18 | ||
diff --git a/Documentation/devicetree/bindings/clock/alphascale,acc.txt b/Documentation/devicetree/bindings/clock/alphascale,acc.txt new file mode 100644 index 000000000000..62e67e883e76 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/alphascale,acc.txt | |||
@@ -0,0 +1,115 @@ | |||
1 | Alphascale Clock Controller | ||
2 | |||
3 | The ACC (Alphascale Clock Controller) is responsible of choising proper | ||
4 | clock source, setting deviders and clock gates. | ||
5 | |||
6 | Required properties for the ACC node: | ||
7 | - compatible: must be "alphascale,asm9260-clock-controller" | ||
8 | - reg: must contain the ACC register base and size | ||
9 | - #clock-cells : shall be set to 1. | ||
10 | |||
11 | Simple one-cell clock specifier format is used, where the only cell is used | ||
12 | as an index of the clock inside the provider. | ||
13 | It is encouraged to use dt-binding for clock index definitions. SoC specific | ||
14 | dt-binding should be included to the device tree descriptor. For example | ||
15 | Alphascale ASM9260: | ||
16 | #include <dt-bindings/clock/alphascale,asm9260.h> | ||
17 | |||
18 | This binding contains two types of clock providers: | ||
19 | _AHB_ - AHB gate; | ||
20 | _SYS_ - adjustable clock source. Not all peripheral have _SYS_ clock provider. | ||
21 | All clock specific details can be found in the SoC documentation. | ||
22 | CLKID_AHB_ROM 0 | ||
23 | CLKID_AHB_RAM 1 | ||
24 | CLKID_AHB_GPIO 2 | ||
25 | CLKID_AHB_MAC 3 | ||
26 | CLKID_AHB_EMI 4 | ||
27 | CLKID_AHB_USB0 5 | ||
28 | CLKID_AHB_USB1 6 | ||
29 | CLKID_AHB_DMA0 7 | ||
30 | CLKID_AHB_DMA1 8 | ||
31 | CLKID_AHB_UART0 9 | ||
32 | CLKID_AHB_UART1 10 | ||
33 | CLKID_AHB_UART2 11 | ||
34 | CLKID_AHB_UART3 12 | ||
35 | CLKID_AHB_UART4 13 | ||
36 | CLKID_AHB_UART5 14 | ||
37 | CLKID_AHB_UART6 15 | ||
38 | CLKID_AHB_UART7 16 | ||
39 | CLKID_AHB_UART8 17 | ||
40 | CLKID_AHB_UART9 18 | ||
41 | CLKID_AHB_I2S0 19 | ||
42 | CLKID_AHB_I2C0 20 | ||
43 | CLKID_AHB_I2C1 21 | ||
44 | CLKID_AHB_SSP0 22 | ||
45 | CLKID_AHB_IOCONFIG 23 | ||
46 | CLKID_AHB_WDT 24 | ||
47 | CLKID_AHB_CAN0 25 | ||
48 | CLKID_AHB_CAN1 26 | ||
49 | CLKID_AHB_MPWM 27 | ||
50 | CLKID_AHB_SPI0 28 | ||
51 | CLKID_AHB_SPI1 29 | ||
52 | CLKID_AHB_QEI 30 | ||
53 | CLKID_AHB_QUADSPI0 31 | ||
54 | CLKID_AHB_CAMIF 32 | ||
55 | CLKID_AHB_LCDIF 33 | ||
56 | CLKID_AHB_TIMER0 34 | ||
57 | CLKID_AHB_TIMER1 35 | ||
58 | CLKID_AHB_TIMER2 36 | ||
59 | CLKID_AHB_TIMER3 37 | ||
60 | CLKID_AHB_IRQ 38 | ||
61 | CLKID_AHB_RTC 39 | ||
62 | CLKID_AHB_NAND 40 | ||
63 | CLKID_AHB_ADC0 41 | ||
64 | CLKID_AHB_LED 42 | ||
65 | CLKID_AHB_DAC0 43 | ||
66 | CLKID_AHB_LCD 44 | ||
67 | CLKID_AHB_I2S1 45 | ||
68 | CLKID_AHB_MAC1 46 | ||
69 | |||
70 | CLKID_SYS_CPU 47 | ||
71 | CLKID_SYS_AHB 48 | ||
72 | CLKID_SYS_I2S0M 49 | ||
73 | CLKID_SYS_I2S0S 50 | ||
74 | CLKID_SYS_I2S1M 51 | ||
75 | CLKID_SYS_I2S1S 52 | ||
76 | CLKID_SYS_UART0 53 | ||
77 | CLKID_SYS_UART1 54 | ||
78 | CLKID_SYS_UART2 55 | ||
79 | CLKID_SYS_UART3 56 | ||
80 | CLKID_SYS_UART4 56 | ||
81 | CLKID_SYS_UART5 57 | ||
82 | CLKID_SYS_UART6 58 | ||
83 | CLKID_SYS_UART7 59 | ||
84 | CLKID_SYS_UART8 60 | ||
85 | CLKID_SYS_UART9 61 | ||
86 | CLKID_SYS_SPI0 62 | ||
87 | CLKID_SYS_SPI1 63 | ||
88 | CLKID_SYS_QUADSPI 64 | ||
89 | CLKID_SYS_SSP0 65 | ||
90 | CLKID_SYS_NAND 66 | ||
91 | CLKID_SYS_TRACE 67 | ||
92 | CLKID_SYS_CAMM 68 | ||
93 | CLKID_SYS_WDT 69 | ||
94 | CLKID_SYS_CLKOUT 70 | ||
95 | CLKID_SYS_MAC 71 | ||
96 | CLKID_SYS_LCD 72 | ||
97 | CLKID_SYS_ADCANA 73 | ||
98 | |||
99 | Example of clock consumer with _SYS_ and _AHB_ sinks. | ||
100 | uart4: serial@80010000 { | ||
101 | compatible = "alphascale,asm9260-uart"; | ||
102 | reg = <0x80010000 0x4000>; | ||
103 | clocks = <&acc CLKID_SYS_UART4>, <&acc CLKID_AHB_UART4>; | ||
104 | interrupts = <19>; | ||
105 | status = "disabled"; | ||
106 | }; | ||
107 | |||
108 | Clock consumer with only one, _AHB_ sink. | ||
109 | timer0: timer@80088000 { | ||
110 | compatible = "alphascale,asm9260-timer"; | ||
111 | reg = <0x80088000 0x4000>; | ||
112 | clocks = <&acc CLKID_AHB_TIMER0>; | ||
113 | interrupts = <29>; | ||
114 | }; | ||
115 | |||
diff --git a/Documentation/devicetree/bindings/clock/renesas,sh73a0-cpg-clocks.txt b/Documentation/devicetree/bindings/clock/renesas,sh73a0-cpg-clocks.txt new file mode 100644 index 000000000000..a8978ec94831 --- /dev/null +++ b/Documentation/devicetree/bindings/clock/renesas,sh73a0-cpg-clocks.txt | |||
@@ -0,0 +1,35 @@ | |||
1 | These bindings should be considered EXPERIMENTAL for now. | ||
2 | |||
3 | * Renesas SH73A0 Clock Pulse Generator (CPG) | ||
4 | |||
5 | The CPG generates core clocks for the SH73A0 SoC. It includes four PLLs | ||
6 | and several fixed ratio dividers. | ||
7 | |||
8 | Required Properties: | ||
9 | |||
10 | - compatible: Must be "renesas,sh73a0-cpg-clocks" | ||
11 | |||
12 | - reg: Base address and length of the memory resource used by the CPG | ||
13 | |||
14 | - clocks: Reference to the parent clocks ("extal1" and "extal2") | ||
15 | |||
16 | - #clock-cells: Must be 1 | ||
17 | |||
18 | - clock-output-names: The names of the clocks. Supported clocks are "main", | ||
19 | "pll0", "pll1", "pll2", "pll3", "dsi0phy", "dsi1phy", "zg", "m3", "b", | ||
20 | "m1", "m2", "z", "zx", and "hp". | ||
21 | |||
22 | |||
23 | Example | ||
24 | ------- | ||
25 | |||
26 | cpg_clocks: cpg_clocks@e6150000 { | ||
27 | compatible = "renesas,sh73a0-cpg-clocks"; | ||
28 | reg = <0 0xe6150000 0 0x10000>; | ||
29 | clocks = <&extal1_clk>, <&extal2_clk>; | ||
30 | #clock-cells = <1>; | ||
31 | clock-output-names = "main", "pll0", "pll1", "pll2", | ||
32 | "pll3", "dsi0phy", "dsi1phy", | ||
33 | "zg", "m3", "b", "m1", "m2", | ||
34 | "z", "zx", "hp"; | ||
35 | }; | ||
diff --git a/Documentation/devicetree/bindings/devfreq/event/exynos-ppmu.txt b/Documentation/devicetree/bindings/devfreq/event/exynos-ppmu.txt new file mode 100644 index 000000000000..b54bf3a2ff57 --- /dev/null +++ b/Documentation/devicetree/bindings/devfreq/event/exynos-ppmu.txt | |||
@@ -0,0 +1,110 @@ | |||
1 | |||
2 | * Samsung Exynos PPMU (Platform Performance Monitoring Unit) device | ||
3 | |||
4 | The Samsung Exynos SoC has PPMU (Platform Performance Monitoring Unit) for | ||
5 | each IP. PPMU provides the primitive values to get performance data. These | ||
6 | PPMU events provide information of the SoC's behaviors so that you may | ||
7 | use to analyze system performance, to make behaviors visible and to count | ||
8 | usages of each IP (DMC, CPU, RIGHTBUS, LEFTBUS, CAM interface, LCD, G3D, MFC). | ||
9 | The Exynos PPMU driver uses the devfreq-event class to provide event data | ||
10 | to various devfreq devices. The devfreq devices would use the event data when | ||
11 | derterming the current state of each IP. | ||
12 | |||
13 | Required properties: | ||
14 | - compatible: Should be "samsung,exynos-ppmu". | ||
15 | - reg: physical base address of each PPMU and length of memory mapped region. | ||
16 | |||
17 | Optional properties: | ||
18 | - clock-names : the name of clock used by the PPMU, "ppmu" | ||
19 | - clocks : phandles for clock specified in "clock-names" property | ||
20 | - #clock-cells: should be 1. | ||
21 | |||
22 | Example1 : PPMU nodes in exynos3250.dtsi are listed below. | ||
23 | |||
24 | ppmu_dmc0: ppmu_dmc0@106a0000 { | ||
25 | compatible = "samsung,exynos-ppmu"; | ||
26 | reg = <0x106a0000 0x2000>; | ||
27 | status = "disabled"; | ||
28 | }; | ||
29 | |||
30 | ppmu_dmc1: ppmu_dmc1@106b0000 { | ||
31 | compatible = "samsung,exynos-ppmu"; | ||
32 | reg = <0x106b0000 0x2000>; | ||
33 | status = "disabled"; | ||
34 | }; | ||
35 | |||
36 | ppmu_cpu: ppmu_cpu@106c0000 { | ||
37 | compatible = "samsung,exynos-ppmu"; | ||
38 | reg = <0x106c0000 0x2000>; | ||
39 | status = "disabled"; | ||
40 | }; | ||
41 | |||
42 | ppmu_rightbus: ppmu_rightbus@112a0000 { | ||
43 | compatible = "samsung,exynos-ppmu"; | ||
44 | reg = <0x112a0000 0x2000>; | ||
45 | clocks = <&cmu CLK_PPMURIGHT>; | ||
46 | clock-names = "ppmu"; | ||
47 | status = "disabled"; | ||
48 | }; | ||
49 | |||
50 | ppmu_leftbus: ppmu_leftbus0@116a0000 { | ||
51 | compatible = "samsung,exynos-ppmu"; | ||
52 | reg = <0x116a0000 0x2000>; | ||
53 | clocks = <&cmu CLK_PPMULEFT>; | ||
54 | clock-names = "ppmu"; | ||
55 | status = "disabled"; | ||
56 | }; | ||
57 | |||
58 | Example2 : Events of each PPMU node in exynos3250-rinato.dts are listed below. | ||
59 | |||
60 | &ppmu_dmc0 { | ||
61 | status = "okay"; | ||
62 | |||
63 | events { | ||
64 | ppmu_dmc0_3: ppmu-event3-dmc0 { | ||
65 | event-name = "ppmu-event3-dmc0"; | ||
66 | }; | ||
67 | |||
68 | ppmu_dmc0_2: ppmu-event2-dmc0 { | ||
69 | event-name = "ppmu-event2-dmc0"; | ||
70 | }; | ||
71 | |||
72 | ppmu_dmc0_1: ppmu-event1-dmc0 { | ||
73 | event-name = "ppmu-event1-dmc0"; | ||
74 | }; | ||
75 | |||
76 | ppmu_dmc0_0: ppmu-event0-dmc0 { | ||
77 | event-name = "ppmu-event0-dmc0"; | ||
78 | }; | ||
79 | }; | ||
80 | }; | ||
81 | |||
82 | &ppmu_dmc1 { | ||
83 | status = "okay"; | ||
84 | |||
85 | events { | ||
86 | ppmu_dmc1_3: ppmu-event3-dmc1 { | ||
87 | event-name = "ppmu-event3-dmc1"; | ||
88 | }; | ||
89 | }; | ||
90 | }; | ||
91 | |||
92 | &ppmu_leftbus { | ||
93 | status = "okay"; | ||
94 | |||
95 | events { | ||
96 | ppmu_leftbus_3: ppmu-event3-leftbus { | ||
97 | event-name = "ppmu-event3-leftbus"; | ||
98 | }; | ||
99 | }; | ||
100 | }; | ||
101 | |||
102 | &ppmu_rightbus { | ||
103 | status = "okay"; | ||
104 | |||
105 | events { | ||
106 | ppmu_rightbus_3: ppmu-event3-rightbus { | ||
107 | event-name = "ppmu-event3-rightbus"; | ||
108 | }; | ||
109 | }; | ||
110 | }; | ||
diff --git a/Documentation/devicetree/bindings/dma/img-mdc-dma.txt b/Documentation/devicetree/bindings/dma/img-mdc-dma.txt new file mode 100644 index 000000000000..28c1341db346 --- /dev/null +++ b/Documentation/devicetree/bindings/dma/img-mdc-dma.txt | |||
@@ -0,0 +1,57 @@ | |||
1 | * IMG Multi-threaded DMA Controller (MDC) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Must be "img,pistachio-mdc-dma". | ||
5 | - reg: Must contain the base address and length of the MDC registers. | ||
6 | - interrupts: Must contain all the per-channel DMA interrupts. | ||
7 | - clocks: Must contain an entry for each entry in clock-names. | ||
8 | See ../clock/clock-bindings.txt for details. | ||
9 | - clock-names: Must include the following entries: | ||
10 | - sys: MDC system interface clock. | ||
11 | - img,cr-periph: Must contain a phandle to the peripheral control syscon | ||
12 | node which contains the DMA request to channel mapping registers. | ||
13 | - img,max-burst-multiplier: Must be the maximum supported burst size multiplier. | ||
14 | The maximum burst size is this value multiplied by the hardware-reported bus | ||
15 | width. | ||
16 | - #dma-cells: Must be 3: | ||
17 | - The first cell is the peripheral's DMA request line. | ||
18 | - The second cell is a bitmap specifying to which channels the DMA request | ||
19 | line may be mapped (i.e. bit N set indicates channel N is usable). | ||
20 | - The third cell is the thread ID to be used by the channel. | ||
21 | |||
22 | Optional properties: | ||
23 | - dma-channels: Number of supported DMA channels, up to 32. If not specified | ||
24 | the number reported by the hardware is used. | ||
25 | |||
26 | Example: | ||
27 | |||
28 | mdc: dma-controller@18143000 { | ||
29 | compatible = "img,pistachio-mdc-dma"; | ||
30 | reg = <0x18143000 0x1000>; | ||
31 | interrupts = <GIC_SHARED 27 IRQ_TYPE_LEVEL_HIGH>, | ||
32 | <GIC_SHARED 28 IRQ_TYPE_LEVEL_HIGH>, | ||
33 | <GIC_SHARED 29 IRQ_TYPE_LEVEL_HIGH>, | ||
34 | <GIC_SHARED 30 IRQ_TYPE_LEVEL_HIGH>, | ||
35 | <GIC_SHARED 31 IRQ_TYPE_LEVEL_HIGH>, | ||
36 | <GIC_SHARED 32 IRQ_TYPE_LEVEL_HIGH>, | ||
37 | <GIC_SHARED 33 IRQ_TYPE_LEVEL_HIGH>, | ||
38 | <GIC_SHARED 34 IRQ_TYPE_LEVEL_HIGH>, | ||
39 | <GIC_SHARED 35 IRQ_TYPE_LEVEL_HIGH>, | ||
40 | <GIC_SHARED 36 IRQ_TYPE_LEVEL_HIGH>, | ||
41 | <GIC_SHARED 37 IRQ_TYPE_LEVEL_HIGH>, | ||
42 | <GIC_SHARED 38 IRQ_TYPE_LEVEL_HIGH>; | ||
43 | clocks = <&system_clk>; | ||
44 | clock-names = "sys"; | ||
45 | |||
46 | img,max-burst-multiplier = <16>; | ||
47 | img,cr-periph = <&cr_periph>; | ||
48 | |||
49 | #dma-cells = <3>; | ||
50 | }; | ||
51 | |||
52 | spi@18100f00 { | ||
53 | ... | ||
54 | dmas = <&mdc 9 0xffffffff 0>, <&mdc 10 0xffffffff 0>; | ||
55 | dma-names = "tx", "rx"; | ||
56 | ... | ||
57 | }; | ||
diff --git a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt index df0f48bcf75a..09daeef1ff22 100644 --- a/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt +++ b/Documentation/devicetree/bindings/dma/renesas,rcar-dmac.txt | |||
@@ -1,13 +1,10 @@ | |||
1 | * Renesas R-Car DMA Controller Device Tree bindings | 1 | * Renesas R-Car DMA Controller Device Tree bindings |
2 | 2 | ||
3 | Renesas R-Car Generation 2 SoCs have have multiple multi-channel DMA | 3 | Renesas R-Car Generation 2 SoCs have multiple multi-channel DMA |
4 | controller instances named DMAC capable of serving multiple clients. Channels | 4 | controller instances named DMAC capable of serving multiple clients. Channels |
5 | can be dedicated to specific clients or shared between a large number of | 5 | can be dedicated to specific clients or shared between a large number of |
6 | clients. | 6 | clients. |
7 | 7 | ||
8 | DMA clients are connected to the DMAC ports referenced by an 8-bit identifier | ||
9 | called MID/RID. | ||
10 | |||
11 | Each DMA client is connected to one dedicated port of the DMAC, identified by | 8 | Each DMA client is connected to one dedicated port of the DMAC, identified by |
12 | an 8-bit port number called the MID/RID. A DMA controller can thus serve up to | 9 | an 8-bit port number called the MID/RID. A DMA controller can thus serve up to |
13 | 256 clients in total. When the number of hardware channels is lower than the | 10 | 256 clients in total. When the number of hardware channels is lower than the |
diff --git a/Documentation/devicetree/bindings/dma/snps-dma.txt b/Documentation/devicetree/bindings/dma/snps-dma.txt index d58675ea1abf..c261598164a7 100644 --- a/Documentation/devicetree/bindings/dma/snps-dma.txt +++ b/Documentation/devicetree/bindings/dma/snps-dma.txt | |||
@@ -38,7 +38,7 @@ Example: | |||
38 | chan_allocation_order = <1>; | 38 | chan_allocation_order = <1>; |
39 | chan_priority = <1>; | 39 | chan_priority = <1>; |
40 | block_size = <0xfff>; | 40 | block_size = <0xfff>; |
41 | data_width = <3 3 0 0>; | 41 | data_width = <3 3>; |
42 | }; | 42 | }; |
43 | 43 | ||
44 | DMA clients connected to the Designware DMA controller must use the format | 44 | DMA clients connected to the Designware DMA controller must use the format |
diff --git a/Documentation/devicetree/bindings/drm/atmel/hlcdc-dc.txt b/Documentation/devicetree/bindings/drm/atmel/hlcdc-dc.txt new file mode 100644 index 000000000000..ebc1a914bda3 --- /dev/null +++ b/Documentation/devicetree/bindings/drm/atmel/hlcdc-dc.txt | |||
@@ -0,0 +1,53 @@ | |||
1 | Device-Tree bindings for Atmel's HLCDC (High LCD Controller) DRM driver | ||
2 | |||
3 | The Atmel HLCDC Display Controller is subdevice of the HLCDC MFD device. | ||
4 | See ../mfd/atmel-hlcdc.txt for more details. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible: value should be "atmel,hlcdc-display-controller" | ||
8 | - pinctrl-names: the pin control state names. Should contain "default". | ||
9 | - pinctrl-0: should contain the default pinctrl states. | ||
10 | - #address-cells: should be set to 1. | ||
11 | - #size-cells: should be set to 0. | ||
12 | |||
13 | Required children nodes: | ||
14 | Children nodes are encoding available output ports and their connections | ||
15 | to external devices using the OF graph reprensentation (see ../graph.txt). | ||
16 | At least one port node is required. | ||
17 | |||
18 | Example: | ||
19 | |||
20 | hlcdc: hlcdc@f0030000 { | ||
21 | compatible = "atmel,sama5d3-hlcdc"; | ||
22 | reg = <0xf0030000 0x2000>; | ||
23 | interrupts = <36 IRQ_TYPE_LEVEL_HIGH 0>; | ||
24 | clocks = <&lcdc_clk>, <&lcdck>, <&clk32k>; | ||
25 | clock-names = "periph_clk","sys_clk", "slow_clk"; | ||
26 | status = "disabled"; | ||
27 | |||
28 | hlcdc-display-controller { | ||
29 | compatible = "atmel,hlcdc-display-controller"; | ||
30 | pinctrl-names = "default"; | ||
31 | pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>; | ||
32 | #address-cells = <1>; | ||
33 | #size-cells = <0>; | ||
34 | |||
35 | port@0 { | ||
36 | #address-cells = <1>; | ||
37 | #size-cells = <0>; | ||
38 | reg = <0>; | ||
39 | |||
40 | hlcdc_panel_output: endpoint@0 { | ||
41 | reg = <0>; | ||
42 | remote-endpoint = <&panel_input>; | ||
43 | }; | ||
44 | }; | ||
45 | }; | ||
46 | |||
47 | hlcdc_pwm: hlcdc-pwm { | ||
48 | compatible = "atmel,hlcdc-pwm"; | ||
49 | pinctrl-names = "default"; | ||
50 | pinctrl-0 = <&pinctrl_lcd_pwm>; | ||
51 | #pwm-cells = <3>; | ||
52 | }; | ||
53 | }; | ||
diff --git a/Documentation/devicetree/bindings/drm/bridge/dw_hdmi.txt b/Documentation/devicetree/bindings/drm/bridge/dw_hdmi.txt new file mode 100644 index 000000000000..a905c1413558 --- /dev/null +++ b/Documentation/devicetree/bindings/drm/bridge/dw_hdmi.txt | |||
@@ -0,0 +1,50 @@ | |||
1 | DesignWare HDMI bridge bindings | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: platform specific such as: | ||
5 | * "snps,dw-hdmi-tx" | ||
6 | * "fsl,imx6q-hdmi" | ||
7 | * "fsl,imx6dl-hdmi" | ||
8 | * "rockchip,rk3288-dw-hdmi" | ||
9 | - reg: Physical base address and length of the controller's registers. | ||
10 | - interrupts: The HDMI interrupt number | ||
11 | - clocks, clock-names : must have the phandles to the HDMI iahb and isfr clocks, | ||
12 | as described in Documentation/devicetree/bindings/clock/clock-bindings.txt, | ||
13 | the clocks are soc specific, the clock-names should be "iahb", "isfr" | ||
14 | -port@[X]: SoC specific port nodes with endpoint definitions as defined | ||
15 | in Documentation/devicetree/bindings/media/video-interfaces.txt, | ||
16 | please refer to the SoC specific binding document: | ||
17 | * Documentation/devicetree/bindings/drm/imx/hdmi.txt | ||
18 | * Documentation/devicetree/bindings/video/dw_hdmi-rockchip.txt | ||
19 | |||
20 | Optional properties | ||
21 | - reg-io-width: the width of the reg:1,4, default set to 1 if not present | ||
22 | - ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing | ||
23 | - clocks, clock-names: phandle to the HDMI CEC clock, name should be "cec" | ||
24 | |||
25 | Example: | ||
26 | hdmi: hdmi@0120000 { | ||
27 | compatible = "fsl,imx6q-hdmi"; | ||
28 | reg = <0x00120000 0x9000>; | ||
29 | interrupts = <0 115 0x04>; | ||
30 | gpr = <&gpr>; | ||
31 | clocks = <&clks 123>, <&clks 124>; | ||
32 | clock-names = "iahb", "isfr"; | ||
33 | ddc-i2c-bus = <&i2c2>; | ||
34 | |||
35 | port@0 { | ||
36 | reg = <0>; | ||
37 | |||
38 | hdmi_mux_0: endpoint { | ||
39 | remote-endpoint = <&ipu1_di0_hdmi>; | ||
40 | }; | ||
41 | }; | ||
42 | |||
43 | port@1 { | ||
44 | reg = <1>; | ||
45 | |||
46 | hdmi_mux_1: endpoint { | ||
47 | remote-endpoint = <&ipu1_di1_hdmi>; | ||
48 | }; | ||
49 | }; | ||
50 | }; | ||
diff --git a/Documentation/devicetree/bindings/drm/msm/hdmi.txt b/Documentation/devicetree/bindings/drm/msm/hdmi.txt index aca917fe2ba7..a29a55f3d937 100644 --- a/Documentation/devicetree/bindings/drm/msm/hdmi.txt +++ b/Documentation/devicetree/bindings/drm/msm/hdmi.txt | |||
@@ -2,6 +2,8 @@ Qualcomm adreno/snapdragon hdmi output | |||
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: one of the following | 4 | - compatible: one of the following |
5 | * "qcom,hdmi-tx-8084" | ||
6 | * "qcom,hdmi-tx-8074" | ||
5 | * "qcom,hdmi-tx-8660" | 7 | * "qcom,hdmi-tx-8660" |
6 | * "qcom,hdmi-tx-8960" | 8 | * "qcom,hdmi-tx-8960" |
7 | - reg: Physical base address and length of the controller's registers | 9 | - reg: Physical base address and length of the controller's registers |
diff --git a/Documentation/devicetree/bindings/fpga/altera-socfpga-fpga-mgr.txt b/Documentation/devicetree/bindings/fpga/altera-socfpga-fpga-mgr.txt new file mode 100644 index 000000000000..9b027a615486 --- /dev/null +++ b/Documentation/devicetree/bindings/fpga/altera-socfpga-fpga-mgr.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | Altera SOCFPGA FPGA Manager | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : should contain "altr,socfpga-fpga-mgr" | ||
5 | - reg : base address and size for memory mapped io. | ||
6 | - The first index is for FPGA manager register access. | ||
7 | - The second index is for writing FPGA configuration data. | ||
8 | - interrupts : interrupt for the FPGA Manager device. | ||
9 | |||
10 | Example: | ||
11 | |||
12 | hps_0_fpgamgr: fpgamgr@0xff706000 { | ||
13 | compatible = "altr,socfpga-fpga-mgr"; | ||
14 | reg = <0xFF706000 0x1000 | ||
15 | 0xFFB90000 0x1000>; | ||
16 | interrupts = <0 175 4>; | ||
17 | }; | ||
diff --git a/Documentation/devicetree/bindings/fuse/nvidia,tegra20-fuse.txt b/Documentation/devicetree/bindings/fuse/nvidia,tegra20-fuse.txt index d8c98c7614d0..23e1d3194174 100644 --- a/Documentation/devicetree/bindings/fuse/nvidia,tegra20-fuse.txt +++ b/Documentation/devicetree/bindings/fuse/nvidia,tegra20-fuse.txt | |||
@@ -1,11 +1,11 @@ | |||
1 | NVIDIA Tegra20/Tegra30/Tegr114/Tegra124 fuse block. | 1 | NVIDIA Tegra20/Tegra30/Tegr114/Tegra124 fuse block. |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : should be: | 4 | - compatible : For Tegra20, must contain "nvidia,tegra20-efuse". For Tegra30, |
5 | "nvidia,tegra20-efuse" | 5 | must contain "nvidia,tegra30-efuse". For Tegra114, must contain |
6 | "nvidia,tegra30-efuse" | 6 | "nvidia,tegra114-efuse". For Tegra124, must contain "nvidia,tegra124-efuse". |
7 | "nvidia,tegra114-efuse" | 7 | Otherwise, must contain "nvidia,<chip>-efuse", plus one of the above, where |
8 | "nvidia,tegra124-efuse" | 8 | <chip> is tegra132. |
9 | Details: | 9 | Details: |
10 | nvidia,tegra20-efuse: Tegra20 requires using APB DMA to read the fuse data | 10 | nvidia,tegra20-efuse: Tegra20 requires using APB DMA to read the fuse data |
11 | due to a hardware bug. Tegra20 also lacks certain information which is | 11 | due to a hardware bug. Tegra20 also lacks certain information which is |
diff --git a/Documentation/devicetree/bindings/gpio/fujitsu,mb86s70-gpio.txt b/Documentation/devicetree/bindings/gpio/fujitsu,mb86s70-gpio.txt new file mode 100644 index 000000000000..bef353f370d8 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/fujitsu,mb86s70-gpio.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | Fujitsu MB86S7x GPIO Controller | ||
2 | ------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible: Should be "fujitsu,mb86s70-gpio" | ||
6 | - reg: Base address and length of register space | ||
7 | - clocks: Specify the clock | ||
8 | - gpio-controller: Marks the device node as a gpio controller. | ||
9 | - #gpio-cells: Should be <2>. The first cell is the pin number and the | ||
10 | second cell is used to specify optional parameters: | ||
11 | - bit 0 specifies polarity (0 for normal, 1 for inverted). | ||
12 | |||
13 | Examples: | ||
14 | gpio0: gpio@31000000 { | ||
15 | compatible = "fujitsu,mb86s70-gpio"; | ||
16 | reg = <0 0x31000000 0x10000>; | ||
17 | gpio-controller; | ||
18 | #gpio-cells = <2>; | ||
19 | clocks = <&clk 0 2 1>; | ||
20 | }; | ||
diff --git a/Documentation/devicetree/bindings/gpio/gpio-max732x.txt b/Documentation/devicetree/bindings/gpio/gpio-max732x.txt new file mode 100644 index 000000000000..5fdc843b4542 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio-max732x.txt | |||
@@ -0,0 +1,59 @@ | |||
1 | * MAX732x-compatible I/O expanders | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be one of the following: | ||
5 | - "maxim,max7319": For the Maxim MAX7319 | ||
6 | - "maxim,max7320": For the Maxim MAX7320 | ||
7 | - "maxim,max7321": For the Maxim MAX7321 | ||
8 | - "maxim,max7322": For the Maxim MAX7322 | ||
9 | - "maxim,max7323": For the Maxim MAX7323 | ||
10 | - "maxim,max7324": For the Maxim MAX7324 | ||
11 | - "maxim,max7325": For the Maxim MAX7325 | ||
12 | - "maxim,max7326": For the Maxim MAX7326 | ||
13 | - "maxim,max7327": For the Maxim MAX7327 | ||
14 | - reg: I2C slave address for this device. | ||
15 | - gpio-controller: Marks the device node as a GPIO controller. | ||
16 | - #gpio-cells: Should be 2. | ||
17 | - first cell is the GPIO number | ||
18 | - second cell specifies GPIO flags, as defined in <dt-bindings/gpio/gpio.h>. | ||
19 | Only the GPIO_ACTIVE_HIGH and GPIO_ACTIVE_LOW flags are supported. | ||
20 | |||
21 | Optional properties: | ||
22 | |||
23 | The I/O expander can detect input state changes, and thus optionally act as | ||
24 | an interrupt controller. When the expander interrupt line is connected all the | ||
25 | following properties must be set. For more information please see the | ||
26 | interrupt controller device tree bindings documentation available at | ||
27 | Documentation/devicetree/bindings/interrupt-controller/interrupts.txt. | ||
28 | |||
29 | - interrupt-controller: Identifies the node as an interrupt controller. | ||
30 | - #interrupt-cells: Number of cells to encode an interrupt source, shall be 2. | ||
31 | - first cell is the pin number | ||
32 | - second cell is used to specify flags | ||
33 | - interrupt-parent: phandle of the parent interrupt controller. | ||
34 | - interrupts: Interrupt specifier for the controllers interrupt. | ||
35 | |||
36 | Please refer to gpio.txt in this directory for details of the common GPIO | ||
37 | bindings used by client devices. | ||
38 | |||
39 | Example 1. MAX7325 with interrupt support enabled (CONFIG_GPIO_MAX732X_IRQ=y): | ||
40 | |||
41 | expander: max7325@6d { | ||
42 | compatible = "maxim,max7325"; | ||
43 | reg = <0x6d>; | ||
44 | gpio-controller; | ||
45 | #gpio-cells = <2>; | ||
46 | interrupt-controller; | ||
47 | #interrupt-cells = <2>; | ||
48 | interrupt-parent = <&gpio4>; | ||
49 | interrupts = <29 IRQ_TYPE_EDGE_FALLING>; | ||
50 | }; | ||
51 | |||
52 | Example 2. MAX7325 with interrupt support disabled (CONFIG_GPIO_MAX732X_IRQ=n): | ||
53 | |||
54 | expander: max7325@6d { | ||
55 | compatible = "maxim,max7325"; | ||
56 | reg = <0x6d>; | ||
57 | gpio-controller; | ||
58 | #gpio-cells = <2>; | ||
59 | }; | ||
diff --git a/Documentation/devicetree/bindings/gpio/gpio-pcf857x.txt b/Documentation/devicetree/bindings/gpio/gpio-pcf857x.txt index d63194a2c848..ada4e2973323 100644 --- a/Documentation/devicetree/bindings/gpio/gpio-pcf857x.txt +++ b/Documentation/devicetree/bindings/gpio/gpio-pcf857x.txt | |||
@@ -39,7 +39,7 @@ Optional Properties: | |||
39 | - lines-initial-states: Bitmask that specifies the initial state of each | 39 | - lines-initial-states: Bitmask that specifies the initial state of each |
40 | line. When a bit is set to zero, the corresponding line will be initialized to | 40 | line. When a bit is set to zero, the corresponding line will be initialized to |
41 | the input (pulled-up) state. When the bit is set to one, the line will be | 41 | the input (pulled-up) state. When the bit is set to one, the line will be |
42 | initialized the the low-level output state. If the property is not specified | 42 | initialized the low-level output state. If the property is not specified |
43 | all lines will be initialized to the input state. | 43 | all lines will be initialized to the input state. |
44 | 44 | ||
45 | The I/O expander can detect input state changes, and thus optionally act as | 45 | The I/O expander can detect input state changes, and thus optionally act as |
diff --git a/Documentation/devicetree/bindings/gpio/gpio-sx150x.txt b/Documentation/devicetree/bindings/gpio/gpio-sx150x.txt new file mode 100644 index 000000000000..ba2bb84eeac3 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio-sx150x.txt | |||
@@ -0,0 +1,40 @@ | |||
1 | SEMTECH SX150x GPIO expander bindings | ||
2 | |||
3 | |||
4 | Required properties: | ||
5 | |||
6 | - compatible: should be "semtech,sx1506q", | ||
7 | "semtech,sx1508q", | ||
8 | "semtech,sx1509q". | ||
9 | |||
10 | - reg: The I2C slave address for this device. | ||
11 | |||
12 | - interrupt-parent: phandle of the parent interrupt controller. | ||
13 | |||
14 | - interrupts: Interrupt specifier for the controllers interrupt. | ||
15 | |||
16 | - #gpio-cells: Should be 2. The first cell is the GPIO number and the | ||
17 | second cell is used to specify optional parameters: | ||
18 | bit 0: polarity (0: normal, 1: inverted) | ||
19 | |||
20 | - gpio-controller: Marks the device as a GPIO controller. | ||
21 | |||
22 | - interrupt-controller: Marks the device as a interrupt controller. | ||
23 | |||
24 | The GPIO expander can optionally be used as an interrupt controller, in | ||
25 | which case it uses the default two cell specifier as described in | ||
26 | Documentation/devicetree/bindings/interrupt-controller/interrupts.txt. | ||
27 | |||
28 | Example: | ||
29 | |||
30 | i2c_gpio_expander@20{ | ||
31 | #gpio-cells = <2>; | ||
32 | #interrupt-cells = <2>; | ||
33 | compatible = "semtech,sx1506q"; | ||
34 | reg = <0x20>; | ||
35 | interrupt-parent = <&gpio_1>; | ||
36 | interrupts = <16 0>; | ||
37 | |||
38 | gpio-controller; | ||
39 | interrupt-controller; | ||
40 | }; | ||
diff --git a/Documentation/devicetree/bindings/gpio/gpio-xgene-sb.txt b/Documentation/devicetree/bindings/gpio/gpio-xgene-sb.txt new file mode 100644 index 000000000000..dae130060537 --- /dev/null +++ b/Documentation/devicetree/bindings/gpio/gpio-xgene-sb.txt | |||
@@ -0,0 +1,32 @@ | |||
1 | APM X-Gene Standby GPIO controller bindings | ||
2 | |||
3 | This is a gpio controller in the standby domain. | ||
4 | |||
5 | There are 20 GPIO pins from 0..21. There is no GPIO_DS14 or GPIO_DS15, | ||
6 | only GPIO_DS8..GPIO_DS13 support interrupts. The IRQ mapping | ||
7 | is currently 1-to-1 on interrupts 0x28 thru 0x2d. | ||
8 | |||
9 | Required properties: | ||
10 | - compatible: "apm,xgene-gpio-sb" for the X-Gene Standby GPIO controller | ||
11 | - reg: Physical base address and size of the controller's registers | ||
12 | - #gpio-cells: Should be two. | ||
13 | - first cell is the pin number | ||
14 | - second cell is used to specify the gpio polarity: | ||
15 | 0 = active high | ||
16 | 1 = active low | ||
17 | - gpio-controller: Marks the device node as a GPIO controller. | ||
18 | - interrupts: Shall contain exactly 6 interrupts. | ||
19 | |||
20 | Example: | ||
21 | sbgpio: sbgpio@17001000 { | ||
22 | compatible = "apm,xgene-gpio-sb"; | ||
23 | reg = <0x0 0x17001000 0x0 0x400>; | ||
24 | #gpio-cells = <2>; | ||
25 | gpio-controller; | ||
26 | interrupts = <0x0 0x28 0x1>, | ||
27 | <0x0 0x29 0x1>, | ||
28 | <0x0 0x2a 0x1>, | ||
29 | <0x0 0x2b 0x1>, | ||
30 | <0x0 0x2c 0x1>, | ||
31 | <0x0 0x2d 0x1>; | ||
32 | }; | ||
diff --git a/Documentation/devicetree/bindings/gpio/gpio.txt b/Documentation/devicetree/bindings/gpio/gpio.txt index b9bd1d64cfa6..f7a158d85862 100644 --- a/Documentation/devicetree/bindings/gpio/gpio.txt +++ b/Documentation/devicetree/bindings/gpio/gpio.txt | |||
@@ -69,7 +69,8 @@ GPIO pin number, and GPIO flags as accepted by the "qe_pio_e" gpio-controller. | |||
69 | ---------------------------------- | 69 | ---------------------------------- |
70 | 70 | ||
71 | A gpio-specifier should contain a flag indicating the GPIO polarity; active- | 71 | A gpio-specifier should contain a flag indicating the GPIO polarity; active- |
72 | high or active-low. If it does, the follow best practices should be followed: | 72 | high or active-low. If it does, the following best practices should be |
73 | followed: | ||
73 | 74 | ||
74 | The gpio-specifier's polarity flag should represent the physical level at the | 75 | The gpio-specifier's polarity flag should represent the physical level at the |
75 | GPIO controller that achieves (or represents, for inputs) a logically asserted | 76 | GPIO controller that achieves (or represents, for inputs) a logically asserted |
@@ -147,7 +148,7 @@ contains information structures as follows: | |||
147 | numeric-gpio-range ::= | 148 | numeric-gpio-range ::= |
148 | <pinctrl-phandle> <gpio-base> <pinctrl-base> <count> | 149 | <pinctrl-phandle> <gpio-base> <pinctrl-base> <count> |
149 | named-gpio-range ::= <pinctrl-phandle> <gpio-base> '<0 0>' | 150 | named-gpio-range ::= <pinctrl-phandle> <gpio-base> '<0 0>' |
150 | gpio-phandle : phandle to pin controller node. | 151 | pinctrl-phandle : phandle to pin controller node |
151 | gpio-base : Base GPIO ID in the GPIO controller | 152 | gpio-base : Base GPIO ID in the GPIO controller |
152 | pinctrl-base : Base pinctrl pin ID in the pin controller | 153 | pinctrl-base : Base pinctrl pin ID in the pin controller |
153 | count : The number of GPIOs/pins in this range | 154 | count : The number of GPIOs/pins in this range |
diff --git a/Documentation/devicetree/bindings/gpio/mrvl-gpio.txt b/Documentation/devicetree/bindings/gpio/mrvl-gpio.txt index b2afdb27adeb..67a2e4e414a5 100644 --- a/Documentation/devicetree/bindings/gpio/mrvl-gpio.txt +++ b/Documentation/devicetree/bindings/gpio/mrvl-gpio.txt | |||
@@ -3,8 +3,8 @@ | |||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : Should be "intel,pxa25x-gpio", "intel,pxa26x-gpio", | 4 | - compatible : Should be "intel,pxa25x-gpio", "intel,pxa26x-gpio", |
5 | "intel,pxa27x-gpio", "intel,pxa3xx-gpio", | 5 | "intel,pxa27x-gpio", "intel,pxa3xx-gpio", |
6 | "marvell,pxa93x-gpio", "marvell,mmp-gpio" or | 6 | "marvell,pxa93x-gpio", "marvell,mmp-gpio", |
7 | "marvell,mmp2-gpio". | 7 | "marvell,mmp2-gpio" or marvell,pxa1928-gpio. |
8 | - reg : Address and length of the register set for the device | 8 | - reg : Address and length of the register set for the device |
9 | - interrupts : Should be the port interrupt shared by all gpio pins. | 9 | - interrupts : Should be the port interrupt shared by all gpio pins. |
10 | There're three gpio interrupts in arch-pxa, and they're gpio0, | 10 | There're three gpio interrupts in arch-pxa, and they're gpio0, |
diff --git a/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt b/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt index 4c32ef0b7db8..009f4bfa1590 100644 --- a/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt +++ b/Documentation/devicetree/bindings/gpu/nvidia,tegra20-host1x.txt | |||
@@ -197,7 +197,9 @@ of the following host1x client modules: | |||
197 | - sor: serial output resource | 197 | - sor: serial output resource |
198 | 198 | ||
199 | Required properties: | 199 | Required properties: |
200 | - compatible: "nvidia,tegra124-sor" | 200 | - compatible: For Tegra124, must contain "nvidia,tegra124-sor". Otherwise, |
201 | must contain '"nvidia,<chip>-sor", "nvidia,tegra124-sor"', where <chip> | ||
202 | is tegra132. | ||
201 | - reg: Physical base address and length of the controller's registers. | 203 | - reg: Physical base address and length of the controller's registers. |
202 | - interrupts: The interrupt outputs from the controller. | 204 | - interrupts: The interrupt outputs from the controller. |
203 | - clocks: Must contain an entry for each entry in clock-names. | 205 | - clocks: Must contain an entry for each entry in clock-names. |
@@ -222,7 +224,9 @@ of the following host1x client modules: | |||
222 | - nvidia,dpaux: phandle to a DispayPort AUX interface | 224 | - nvidia,dpaux: phandle to a DispayPort AUX interface |
223 | 225 | ||
224 | - dpaux: DisplayPort AUX interface | 226 | - dpaux: DisplayPort AUX interface |
225 | - compatible: "nvidia,tegra124-dpaux" | 227 | - compatible: For Tegra124, must contain "nvidia,tegra124-dpaux". Otherwise, |
228 | must contain '"nvidia,<chip>-dpaux", "nvidia,tegra124-dpaux"', where | ||
229 | <chip> is tegra132. | ||
226 | - reg: Physical base address and length of the controller's registers. | 230 | - reg: Physical base address and length of the controller's registers. |
227 | - interrupts: The interrupt outputs from the controller. | 231 | - interrupts: The interrupt outputs from the controller. |
228 | - clocks: Must contain an entry for each entry in clock-names. | 232 | - clocks: Must contain an entry for each entry in clock-names. |
diff --git a/Documentation/devicetree/bindings/gpu/st,stih4xx.txt b/Documentation/devicetree/bindings/gpu/st,stih4xx.txt index c99eb34e640b..6b1d75f1a529 100644 --- a/Documentation/devicetree/bindings/gpu/st,stih4xx.txt +++ b/Documentation/devicetree/bindings/gpu/st,stih4xx.txt | |||
@@ -83,6 +83,22 @@ sti-hda: | |||
83 | - clock-names: names of the clocks listed in clocks property in the same | 83 | - clock-names: names of the clocks listed in clocks property in the same |
84 | order. | 84 | order. |
85 | 85 | ||
86 | sti-dvo: | ||
87 | Required properties: | ||
88 | must be a child of sti-tvout | ||
89 | - compatible: "st,stih<chip>-dvo" | ||
90 | - reg: Physical base address of the IP registers and length of memory mapped region. | ||
91 | - reg-names: names of the mapped memory regions listed in regs property in | ||
92 | the same order. | ||
93 | - clocks: from common clock binding: handle hardware IP needed clocks, the | ||
94 | number of clocks may depend of the SoC type. | ||
95 | See ../clocks/clock-bindings.txt for details. | ||
96 | - clock-names: names of the clocks listed in clocks property in the same | ||
97 | order. | ||
98 | - pinctrl-0: pin control handle | ||
99 | - pinctrl-name: names of the pin control to use | ||
100 | - sti,panel: phandle of the panel connected to the DVO output | ||
101 | |||
86 | sti-hqvdp: | 102 | sti-hqvdp: |
87 | must be a child of sti-display-subsystem | 103 | must be a child of sti-display-subsystem |
88 | Required properties: | 104 | Required properties: |
@@ -198,6 +214,19 @@ Example: | |||
198 | clock-names = "pix", "hddac"; | 214 | clock-names = "pix", "hddac"; |
199 | clocks = <&clockgen_c_vcc CLK_S_PIX_HD>, <&clockgen_c_vcc CLK_S_HDDAC>; | 215 | clocks = <&clockgen_c_vcc CLK_S_PIX_HD>, <&clockgen_c_vcc CLK_S_HDDAC>; |
200 | }; | 216 | }; |
217 | |||
218 | sti-dvo@8d00400 { | ||
219 | compatible = "st,stih407-dvo"; | ||
220 | reg = <0x8d00400 0x200>; | ||
221 | reg-names = "dvo-reg"; | ||
222 | clock-names = "dvo_pix", "dvo", | ||
223 | "main_parent", "aux_parent"; | ||
224 | clocks = <&clk_s_d2_flexgen CLK_PIX_DVO>, <&clk_s_d2_flexgen CLK_DVO>, | ||
225 | <&clk_s_d2_quadfs 0>, <&clk_s_d2_quadfs 1>; | ||
226 | pinctrl-names = "default"; | ||
227 | pinctrl-0 = <&pinctrl_dvo>; | ||
228 | sti,panel = <&panel_dvo>; | ||
229 | }; | ||
201 | }; | 230 | }; |
202 | 231 | ||
203 | sti-hqvdp@9c000000 { | 232 | sti-hqvdp@9c000000 { |
diff --git a/Documentation/devicetree/bindings/i2c/nvidia,tegra20-i2c.txt b/Documentation/devicetree/bindings/i2c/nvidia,tegra20-i2c.txt index 87507e9ce6db..656716b72cc4 100644 --- a/Documentation/devicetree/bindings/i2c/nvidia,tegra20-i2c.txt +++ b/Documentation/devicetree/bindings/i2c/nvidia,tegra20-i2c.txt | |||
@@ -1,11 +1,11 @@ | |||
1 | NVIDIA Tegra20/Tegra30/Tegra114 I2C controller driver. | 1 | NVIDIA Tegra20/Tegra30/Tegra114 I2C controller driver. |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : should be: | 4 | - compatible : For Tegra20, must be one of "nvidia,tegra20-i2c-dvc" or |
5 | "nvidia,tegra114-i2c" | 5 | "nvidia,tegra20-i2c". For Tegra30, must be "nvidia,tegra30-i2c". |
6 | "nvidia,tegra30-i2c" | 6 | For Tegra114, must be "nvidia,tegra114-i2c". Otherwise, must be |
7 | "nvidia,tegra20-i2c" | 7 | "nvidia,<chip>-i2c", plus at least one of the above, where <chip> is |
8 | "nvidia,tegra20-i2c-dvc" | 8 | tegra124, tegra132, or tegra210. |
9 | Details of compatible are as follows: | 9 | Details of compatible are as follows: |
10 | nvidia,tegra20-i2c-dvc: Tegra20 has specific I2C controller called as DVC I2C | 10 | nvidia,tegra20-i2c-dvc: Tegra20 has specific I2C controller called as DVC I2C |
11 | controller. This only support master mode of I2C communication. Register | 11 | controller. This only support master mode of I2C communication. Register |
diff --git a/Documentation/devicetree/bindings/i2c/trivial-devices.txt b/Documentation/devicetree/bindings/i2c/trivial-devices.txt index 9f41d05be3be..4dcd88d5f7ca 100644 --- a/Documentation/devicetree/bindings/i2c/trivial-devices.txt +++ b/Documentation/devicetree/bindings/i2c/trivial-devices.txt | |||
@@ -9,6 +9,7 @@ document for it just like any other devices. | |||
9 | 9 | ||
10 | Compatible Vendor / Chip | 10 | Compatible Vendor / Chip |
11 | ========== ============= | 11 | ========== ============= |
12 | abracon,abb5zes3 AB-RTCMC-32.768kHz-B5ZE-S3: Real Time Clock/Calendar Module with I2C Interface | ||
12 | ad,ad7414 SMBus/I2C Digital Temperature Sensor in 6-Pin SOT with SMBus Alert and Over Temperature Pin | 13 | ad,ad7414 SMBus/I2C Digital Temperature Sensor in 6-Pin SOT with SMBus Alert and Over Temperature Pin |
13 | ad,adm9240 ADM9240: Complete System Hardware Monitor for uProcessor-Based Systems | 14 | ad,adm9240 ADM9240: Complete System Hardware Monitor for uProcessor-Based Systems |
14 | adi,adt7461 +/-1C TDM Extended Temp Range I.C | 15 | adi,adt7461 +/-1C TDM Extended Temp Range I.C |
@@ -34,6 +35,7 @@ atmel,24c512 i2c serial eeprom (24cxx) | |||
34 | atmel,24c1024 i2c serial eeprom (24cxx) | 35 | atmel,24c1024 i2c serial eeprom (24cxx) |
35 | atmel,at97sc3204t i2c trusted platform module (TPM) | 36 | atmel,at97sc3204t i2c trusted platform module (TPM) |
36 | capella,cm32181 CM32181: Ambient Light Sensor | 37 | capella,cm32181 CM32181: Ambient Light Sensor |
38 | capella,cm3232 CM3232: Ambient Light Sensor | ||
37 | catalyst,24c32 i2c serial eeprom | 39 | catalyst,24c32 i2c serial eeprom |
38 | cirrus,cs42l51 Cirrus Logic CS42L51 audio codec | 40 | cirrus,cs42l51 Cirrus Logic CS42L51 audio codec |
39 | dallas,ds1307 64 x 8, Serial, I2C Real-Time Clock | 41 | dallas,ds1307 64 x 8, Serial, I2C Real-Time Clock |
diff --git a/Documentation/devicetree/bindings/iio/adc/cc10001_adc.txt b/Documentation/devicetree/bindings/iio/adc/cc10001_adc.txt new file mode 100644 index 000000000000..904f76de9055 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/adc/cc10001_adc.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | * Cosmic Circuits - Analog to Digital Converter (CC-10001-ADC) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "cosmic,10001-adc" | ||
5 | - reg: Should contain adc registers location and length. | ||
6 | - clock-names: Should contain "adc". | ||
7 | - clocks: Should contain a clock specifier for each entry in clock-names | ||
8 | - vref-supply: The regulator supply ADC reference voltage. | ||
9 | |||
10 | Optional properties: | ||
11 | - adc-reserved-channels: Bitmask of reserved channels, | ||
12 | i.e. channels that cannot be used by the OS. | ||
13 | |||
14 | Example: | ||
15 | adc: adc@18101600 { | ||
16 | compatible = "cosmic,10001-adc"; | ||
17 | reg = <0x18101600 0x24>; | ||
18 | adc-reserved-channels = <0x2>; | ||
19 | clocks = <&adc_clk>; | ||
20 | clock-names = "adc"; | ||
21 | vref-supply = <®_1v8>; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/iio/adc/qcom,spmi-vadc.txt b/Documentation/devicetree/bindings/iio/adc/qcom,spmi-vadc.txt new file mode 100644 index 000000000000..0fb46137f936 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/adc/qcom,spmi-vadc.txt | |||
@@ -0,0 +1,129 @@ | |||
1 | Qualcomm's SPMI PMIC voltage ADC | ||
2 | |||
3 | SPMI PMIC voltage ADC (VADC) provides interface to clients to read | ||
4 | voltage. The VADC is a 15-bit sigma-delta ADC. | ||
5 | |||
6 | VADC node: | ||
7 | |||
8 | - compatible: | ||
9 | Usage: required | ||
10 | Value type: <string> | ||
11 | Definition: Should contain "qcom,spmi-vadc". | ||
12 | |||
13 | - reg: | ||
14 | Usage: required | ||
15 | Value type: <prop-encoded-array> | ||
16 | Definition: VADC base address and length in the SPMI PMIC register map. | ||
17 | |||
18 | - #address-cells: | ||
19 | Usage: required | ||
20 | Value type: <u32> | ||
21 | Definition: Must be one. Child node 'reg' property should define ADC | ||
22 | channel number. | ||
23 | |||
24 | - #size-cells: | ||
25 | Usage: required | ||
26 | Value type: <u32> | ||
27 | Definition: Must be zero. | ||
28 | |||
29 | - #io-channel-cells: | ||
30 | Usage: required | ||
31 | Value type: <u32> | ||
32 | Definition: Must be one. For details about IIO bindings see: | ||
33 | Documentation/devicetree/bindings/iio/iio-bindings.txt | ||
34 | |||
35 | - interrupts: | ||
36 | Usage: optional | ||
37 | Value type: <prop-encoded-array> | ||
38 | Definition: End of conversion interrupt. | ||
39 | |||
40 | Channel node properties: | ||
41 | |||
42 | - reg: | ||
43 | Usage: required | ||
44 | Value type: <u32> | ||
45 | Definition: ADC channel number. | ||
46 | See include/dt-bindings/iio/qcom,spmi-vadc.h | ||
47 | |||
48 | - qcom,decimation: | ||
49 | Usage: optional | ||
50 | Value type: <u32> | ||
51 | Definition: This parameter is used to decrease ADC sampling rate. | ||
52 | Quicker measurements can be made by reducing decimation ratio. | ||
53 | Valid values are 512, 1024, 2048, 4096. | ||
54 | If property is not found, default value of 512 will be used. | ||
55 | |||
56 | - qcom,pre-scaling: | ||
57 | Usage: optional | ||
58 | Value type: <u32 array> | ||
59 | Definition: Used for scaling the channel input signal before the signal is | ||
60 | fed to VADC. The configuration for this node is to know the | ||
61 | pre-determined ratio and use it for post scaling. Select one from | ||
62 | the following options. | ||
63 | <1 1>, <1 3>, <1 4>, <1 6>, <1 20>, <1 8>, <10 81>, <1 10> | ||
64 | If property is not found default value depending on chip will be used. | ||
65 | |||
66 | - qcom,ratiometric: | ||
67 | Usage: optional | ||
68 | Value type: <empty> | ||
69 | Definition: Channel calibration type. If this property is specified | ||
70 | VADC will use the VDD reference (1.8V) and GND for channel | ||
71 | calibration. If property is not found, channel will be | ||
72 | calibrated with 0.625V and 1.25V reference channels, also | ||
73 | known as absolute calibration. | ||
74 | |||
75 | - qcom,hw-settle-time: | ||
76 | Usage: optional | ||
77 | Value type: <u32> | ||
78 | Definition: Time between AMUX getting configured and the ADC starting | ||
79 | conversion. Delay = 100us * (value) for value < 11, and | ||
80 | 2ms * (value - 10) otherwise. | ||
81 | Valid values are: 0, 100, 200, 300, 400, 500, 600, 700, 800, | ||
82 | 900 us and 1, 2, 4, 6, 8, 10 ms | ||
83 | If property is not found, channel will use 0us. | ||
84 | |||
85 | - qcom,avg-samples: | ||
86 | Usage: optional | ||
87 | Value type: <u32> | ||
88 | Definition: Number of samples to be used for measurement. | ||
89 | Averaging provides the option to obtain a single measurement | ||
90 | from the ADC that is an average of multiple samples. The value | ||
91 | selected is 2^(value). | ||
92 | Valid values are: 1, 2, 4, 8, 16, 32, 64, 128, 256, 512 | ||
93 | If property is not found, 1 sample will be used. | ||
94 | |||
95 | NOTE: | ||
96 | |||
97 | Following channels, also known as reference point channels, are used for | ||
98 | result calibration and their channel configuration nodes should be defined: | ||
99 | VADC_REF_625MV and/or VADC_SPARE1(based on PMIC version) VADC_REF_1250MV, | ||
100 | VADC_GND_REF and VADC_VDD_VADC. | ||
101 | |||
102 | Example: | ||
103 | |||
104 | /* VADC node */ | ||
105 | pmic_vadc: vadc@3100 { | ||
106 | compatible = "qcom,spmi-vadc"; | ||
107 | reg = <0x3100 0x100>; | ||
108 | interrupts = <0x0 0x31 0x0 IRQ_TYPE_EDGE_RISING>; | ||
109 | #address-cells = <1>; | ||
110 | #size-cells = <0>; | ||
111 | #io-channel-cells = <1>; | ||
112 | io-channel-ranges; | ||
113 | |||
114 | /* Channel node */ | ||
115 | usb_id_nopull { | ||
116 | reg = <VADC_LR_MUX10_USB_ID>; | ||
117 | qcom,decimation = <512>; | ||
118 | qcom,ratiometric; | ||
119 | qcom,hw-settle-time = <200>; | ||
120 | qcom,avg-samples = <1>; | ||
121 | qcom,pre-scaling = <1 3>; | ||
122 | }; | ||
123 | }; | ||
124 | |||
125 | /* IIO client node */ | ||
126 | usb { | ||
127 | io-channels = <&pmic_vadc VADC_LR_MUX10_USB_ID>; | ||
128 | io-channel-names = "vadc"; | ||
129 | }; | ||
diff --git a/Documentation/devicetree/bindings/iio/adc/xilinx-xadc.txt b/Documentation/devicetree/bindings/iio/adc/xilinx-xadc.txt index d9ee909d2b78..d71258e2d456 100644 --- a/Documentation/devicetree/bindings/iio/adc/xilinx-xadc.txt +++ b/Documentation/devicetree/bindings/iio/adc/xilinx-xadc.txt | |||
@@ -59,7 +59,7 @@ Optional properties: | |||
59 | Each child node represents one channel and has the following | 59 | Each child node represents one channel and has the following |
60 | properties: | 60 | properties: |
61 | Required properties: | 61 | Required properties: |
62 | * reg: Pair of pins the the channel is connected to. | 62 | * reg: Pair of pins the channel is connected to. |
63 | 0: VP/VN | 63 | 0: VP/VN |
64 | 1: VAUXP[0]/VAUXN[0] | 64 | 1: VAUXP[0]/VAUXN[0] |
65 | 2: VAUXP[1]/VAUXN[1] | 65 | 2: VAUXP[1]/VAUXN[1] |
diff --git a/Documentation/devicetree/bindings/iio/sensorhub.txt b/Documentation/devicetree/bindings/iio/sensorhub.txt new file mode 100644 index 000000000000..8d57571d5c0b --- /dev/null +++ b/Documentation/devicetree/bindings/iio/sensorhub.txt | |||
@@ -0,0 +1,25 @@ | |||
1 | Samsung Sensorhub driver | ||
2 | |||
3 | Sensorhub is a MCU which manages several sensors and also plays the role | ||
4 | of a virtual sensor device. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible: "samsung,sensorhub-rinato" or "samsung,sensorhub-thermostat" | ||
8 | - spi-max-frequency: max SPI clock frequency | ||
9 | - interrupt-parent: interrupt parent | ||
10 | - interrupts: communication interrupt | ||
11 | - ap-mcu-gpios: [out] ap to sensorhub line - used during communication | ||
12 | - mcu-ap-gpios: [in] sensorhub to ap - used during communication | ||
13 | - mcu-reset-gpios: [out] sensorhub reset | ||
14 | |||
15 | Example: | ||
16 | |||
17 | shub_spi: shub { | ||
18 | compatible = "samsung,sensorhub-rinato"; | ||
19 | spi-max-frequency = <5000000>; | ||
20 | interrupt-parent = <&gpx0>; | ||
21 | interrupts = <2 0>; | ||
22 | ap-mcu-gpios = <&gpx0 0 0>; | ||
23 | mcu-ap-gpios = <&gpx0 4 0>; | ||
24 | mcu-reset-gpios = <&gpx0 5 0>; | ||
25 | }; | ||
diff --git a/Documentation/devicetree/bindings/input/e3x0-button.txt b/Documentation/devicetree/bindings/input/e3x0-button.txt new file mode 100644 index 000000000000..751665e8e47a --- /dev/null +++ b/Documentation/devicetree/bindings/input/e3x0-button.txt | |||
@@ -0,0 +1,25 @@ | |||
1 | National Instruments Ettus Research USRP E3x0 button driver | ||
2 | |||
3 | This module is part of the NI Ettus Research USRP E3x0 SDR. | ||
4 | |||
5 | This module provides a simple power button event via two interrupts. | ||
6 | |||
7 | Required properties: | ||
8 | - compatible: should be one of the following | ||
9 | - "ettus,e3x0-button": For devices such as the NI Ettus Research USRP E3x0 | ||
10 | - interrupt-parent: | ||
11 | - a phandle to the interrupt controller that it is attached to. | ||
12 | - interrupts: should be one of the following | ||
13 | - <0 30 1>, <0 31 1>: For devices such as the NI Ettus Research USRP E3x0 | ||
14 | - interrupt-names: should be one of the following | ||
15 | - "press", "release": For devices such as the NI Ettus Research USRP E3x0 | ||
16 | |||
17 | Note: Interrupt numbers might vary depending on the FPGA configuration. | ||
18 | |||
19 | Example: | ||
20 | button { | ||
21 | compatible = "ettus,e3x0-button"; | ||
22 | interrupt-parent = <&intc>; | ||
23 | interrupts = <0 30 1>, <0 31 1>; | ||
24 | interrupt-names = "press", "release"; | ||
25 | } | ||
diff --git a/Documentation/devicetree/bindings/input/regulator-haptic.txt b/Documentation/devicetree/bindings/input/regulator-haptic.txt new file mode 100644 index 000000000000..3ed1c7eb2f97 --- /dev/null +++ b/Documentation/devicetree/bindings/input/regulator-haptic.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | * Regulator Haptic Device Tree Bindings | ||
2 | |||
3 | Required Properties: | ||
4 | - compatible : Should be "regulator-haptic" | ||
5 | - haptic-supply : Power supply to the haptic motor. | ||
6 | [*] refer Documentation/devicetree/bindings/regulator/regulator.txt | ||
7 | |||
8 | - max-microvolt : The maximum voltage value supplied to the haptic motor. | ||
9 | [The unit of the voltage is a micro] | ||
10 | |||
11 | - min-microvolt : The minimum voltage value supplied to the haptic motor. | ||
12 | [The unit of the voltage is a micro] | ||
13 | |||
14 | Example: | ||
15 | |||
16 | haptics { | ||
17 | compatible = "regulator-haptic"; | ||
18 | haptic-supply = <&motor_regulator>; | ||
19 | max-microvolt = <2700000>; | ||
20 | min-microvolt = <1100000>; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt b/Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt new file mode 100644 index 000000000000..b9c32f6fd687 --- /dev/null +++ b/Documentation/devicetree/bindings/input/sun4i-lradc-keys.txt | |||
@@ -0,0 +1,62 @@ | |||
1 | Allwinner sun4i low res adc attached tablet keys | ||
2 | ------------------------------------------------ | ||
3 | |||
4 | Required properties: | ||
5 | - compatible: "allwinner,sun4i-a10-lradc-keys" | ||
6 | - reg: mmio address range of the chip | ||
7 | - interrupts: interrupt to which the chip is connected | ||
8 | - vref-supply: powersupply for the lradc reference voltage | ||
9 | |||
10 | Each key is represented as a sub-node of "allwinner,sun4i-a10-lradc-keys": | ||
11 | |||
12 | Required subnode-properties: | ||
13 | - label: Descriptive name of the key. | ||
14 | - linux,code: Keycode to emit. | ||
15 | - channel: Channel this key is attached to, mut be 0 or 1. | ||
16 | - voltage: Voltage in µV at lradc input when this key is pressed. | ||
17 | |||
18 | Example: | ||
19 | |||
20 | #include <dt-bindings/input/input.h> | ||
21 | |||
22 | lradc: lradc@01c22800 { | ||
23 | compatible = "allwinner,sun4i-a10-lradc-keys"; | ||
24 | reg = <0x01c22800 0x100>; | ||
25 | interrupts = <31>; | ||
26 | vref-supply = <®_vcc3v0>; | ||
27 | |||
28 | button@191 { | ||
29 | label = "Volume Up"; | ||
30 | linux,code = <KEY_VOLUMEUP>; | ||
31 | channel = <0>; | ||
32 | voltage = <191274>; | ||
33 | }; | ||
34 | |||
35 | button@392 { | ||
36 | label = "Volume Down"; | ||
37 | linux,code = <KEY_VOLUMEDOWN>; | ||
38 | channel = <0>; | ||
39 | voltage = <392644>; | ||
40 | }; | ||
41 | |||
42 | button@601 { | ||
43 | label = "Menu"; | ||
44 | linux,code = <KEY_MENU>; | ||
45 | channel = <0>; | ||
46 | voltage = <601151>; | ||
47 | }; | ||
48 | |||
49 | button@795 { | ||
50 | label = "Enter"; | ||
51 | linux,code = <KEY_ENTER>; | ||
52 | channel = <0>; | ||
53 | voltage = <795090>; | ||
54 | }; | ||
55 | |||
56 | button@987 { | ||
57 | label = "Home"; | ||
58 | linux,code = <KEY_HOMEPAGE>; | ||
59 | channel = <0>; | ||
60 | voltage = <987387>; | ||
61 | }; | ||
62 | }; | ||
diff --git a/Documentation/devicetree/bindings/input/touchscreen/sun4i.txt b/Documentation/devicetree/bindings/input/touchscreen/sun4i.txt index aef57791f40b..433332d3b2ba 100644 --- a/Documentation/devicetree/bindings/input/touchscreen/sun4i.txt +++ b/Documentation/devicetree/bindings/input/touchscreen/sun4i.txt | |||
@@ -2,9 +2,10 @@ sun4i resistive touchscreen controller | |||
2 | -------------------------------------- | 2 | -------------------------------------- |
3 | 3 | ||
4 | Required properties: | 4 | Required properties: |
5 | - compatible: "allwinner,sun4i-a10-ts" | 5 | - compatible: "allwinner,sun4i-a10-ts" or "allwinner,sun6i-a31-ts" |
6 | - reg: mmio address range of the chip | 6 | - reg: mmio address range of the chip |
7 | - interrupts: interrupt to which the chip is connected | 7 | - interrupts: interrupt to which the chip is connected |
8 | - #thermal-sensor-cells: shall be 0 | ||
8 | 9 | ||
9 | Optional properties: | 10 | Optional properties: |
10 | - allwinner,ts-attached: boolean indicating that an actual touchscreen is | 11 | - allwinner,ts-attached: boolean indicating that an actual touchscreen is |
@@ -17,4 +18,5 @@ Example: | |||
17 | reg = <0x01c25000 0x100>; | 18 | reg = <0x01c25000 0x100>; |
18 | interrupts = <29>; | 19 | interrupts = <29>; |
19 | allwinner,ts-attached; | 20 | allwinner,ts-attached; |
21 | #thermal-sensor-cells = <0>; | ||
20 | }; | 22 | }; |
diff --git a/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt b/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt index 878549ba814d..6c4fb34823d3 100644 --- a/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt +++ b/Documentation/devicetree/bindings/input/touchscreen/ti-tsc-adc.txt | |||
@@ -28,6 +28,20 @@ Required properties: | |||
28 | ti,adc-channels: List of analog inputs available for ADC. | 28 | ti,adc-channels: List of analog inputs available for ADC. |
29 | AIN0 = 0, AIN1 = 1 and so on till AIN7 = 7. | 29 | AIN0 = 0, AIN1 = 1 and so on till AIN7 = 7. |
30 | 30 | ||
31 | Optional properties: | ||
32 | - child "tsc" | ||
33 | ti,charge-delay: Length of touch screen charge delay step in terms of | ||
34 | ADC clock cycles. Charge delay value should be large | ||
35 | in order to avoid false pen-up events. This value | ||
36 | effects the overall sampling speed, hence need to be | ||
37 | kept as low as possible, while avoiding false pen-up | ||
38 | event. Start from a lower value, say 0x400, and | ||
39 | increase value until false pen-up events are avoided. | ||
40 | The pen-up detection happens immediately after the | ||
41 | charge step, so this does in fact function as a | ||
42 | hardware knob for adjusting the amount of "settling | ||
43 | time". | ||
44 | |||
31 | Example: | 45 | Example: |
32 | tscadc: tscadc@44e0d000 { | 46 | tscadc: tscadc@44e0d000 { |
33 | compatible = "ti,am3359-tscadc"; | 47 | compatible = "ti,am3359-tscadc"; |
@@ -36,6 +50,7 @@ Example: | |||
36 | ti,x-plate-resistance = <200>; | 50 | ti,x-plate-resistance = <200>; |
37 | ti,coordiante-readouts = <5>; | 51 | ti,coordiante-readouts = <5>; |
38 | ti,wire-config = <0x00 0x11 0x22 0x33>; | 52 | ti,wire-config = <0x00 0x11 0x22 0x33>; |
53 | ti,charge-delay = <0x400>; | ||
39 | }; | 54 | }; |
40 | 55 | ||
41 | adc { | 56 | adc { |
diff --git a/Documentation/devicetree/bindings/input/tps65218-pwrbutton.txt b/Documentation/devicetree/bindings/input/tps65218-pwrbutton.txt new file mode 100644 index 000000000000..e30e0b93f2b3 --- /dev/null +++ b/Documentation/devicetree/bindings/input/tps65218-pwrbutton.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | Texas Instruments TPS65218 power button | ||
2 | |||
3 | This driver provides a simple power button event via an Interrupt. | ||
4 | |||
5 | Required properties: | ||
6 | - compatible: should be "ti,tps65218-pwrbutton" | ||
7 | - interrupts: should be one of the following | ||
8 | - <3 IRQ_TYPE_EDGE_BOTH>: For controllers compatible with tps65218 | ||
9 | |||
10 | Example: | ||
11 | |||
12 | &tps { | ||
13 | power-button { | ||
14 | compatible = "ti,tps65218-pwrbutton"; | ||
15 | interrupts = <3 IRQ_TYPE_EDGE_BOTH>; | ||
16 | }; | ||
17 | }; | ||
diff --git a/Documentation/devicetree/bindings/interrupt-controller/digicolor-ic.txt b/Documentation/devicetree/bindings/interrupt-controller/digicolor-ic.txt new file mode 100644 index 000000000000..42d41ec84c7b --- /dev/null +++ b/Documentation/devicetree/bindings/interrupt-controller/digicolor-ic.txt | |||
@@ -0,0 +1,21 @@ | |||
1 | Conexant Digicolor Interrupt Controller | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : should be "cnxt,cx92755-ic" | ||
6 | - reg : Specifies base physical address and size of the interrupt controller | ||
7 | registers (IC) area | ||
8 | - interrupt-controller : Identifies the node as an interrupt controller | ||
9 | - #interrupt-cells : Specifies the number of cells needed to encode an | ||
10 | interrupt source. The value shall be 1. | ||
11 | - syscon: A phandle to the syscon node describing UC registers | ||
12 | |||
13 | Example: | ||
14 | |||
15 | intc: interrupt-controller@f0000040 { | ||
16 | compatible = "cnxt,cx92755-ic"; | ||
17 | interrupt-controller; | ||
18 | #interrupt-cells = <1>; | ||
19 | reg = <0xf0000040 0x40>; | ||
20 | syscon = <&uc_regs>; | ||
21 | }; | ||
diff --git a/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt b/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt index c73acd060093..4f7946ae8adc 100644 --- a/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt +++ b/Documentation/devicetree/bindings/interrupt-controller/renesas,intc-irqpin.txt | |||
@@ -9,6 +9,11 @@ Required properties: | |||
9 | - "renesas,intc-irqpin-r8a7778" (R-Car M1A) | 9 | - "renesas,intc-irqpin-r8a7778" (R-Car M1A) |
10 | - "renesas,intc-irqpin-r8a7779" (R-Car H1) | 10 | - "renesas,intc-irqpin-r8a7779" (R-Car H1) |
11 | - "renesas,intc-irqpin-sh73a0" (SH-Mobile AG5) | 11 | - "renesas,intc-irqpin-sh73a0" (SH-Mobile AG5) |
12 | |||
13 | - reg: Base address and length of each register bank used by the external | ||
14 | IRQ pins driven by the interrupt controller hardware module. The base | ||
15 | addresses, length and number of required register banks varies with soctype. | ||
16 | |||
12 | - #interrupt-cells: has to be <2>: an interrupt index and flags, as defined in | 17 | - #interrupt-cells: has to be <2>: an interrupt index and flags, as defined in |
13 | interrupts.txt in this directory | 18 | interrupts.txt in this directory |
14 | 19 | ||
diff --git a/Documentation/devicetree/bindings/interrupt-controller/ti,omap-intc-irq.txt b/Documentation/devicetree/bindings/interrupt-controller/ti,omap-intc-irq.txt new file mode 100644 index 000000000000..38ce5d037722 --- /dev/null +++ b/Documentation/devicetree/bindings/interrupt-controller/ti,omap-intc-irq.txt | |||
@@ -0,0 +1,28 @@ | |||
1 | Omap2/3 intc controller | ||
2 | |||
3 | On TI omap2 and 3 the intc interrupt controller can provide | ||
4 | 96 or 128 IRQ signals to the ARM host depending on the SoC. | ||
5 | |||
6 | Required Properties: | ||
7 | - compatible: should be one of | ||
8 | "ti,omap2-intc" | ||
9 | "ti,omap3-intc" | ||
10 | "ti,dm814-intc" | ||
11 | "ti,dm816-intc" | ||
12 | "ti,am33xx-intc" | ||
13 | |||
14 | - interrupt-controller : Identifies the node as an interrupt controller | ||
15 | - #interrupt-cells : Specifies the number of cells needed to encode interrupt | ||
16 | source, should be 1 for intc | ||
17 | - interrupts: interrupt reference to primary interrupt controller | ||
18 | |||
19 | Please refer to interrupts.txt in this directory for details of the common | ||
20 | Interrupt Controllers bindings used by client devices. | ||
21 | |||
22 | Example: | ||
23 | intc: interrupt-controller@48200000 { | ||
24 | compatible = "ti,omap3-intc"; | ||
25 | interrupt-controller; | ||
26 | #interrupt-cells = <1>; | ||
27 | reg = <0x48200000 0x1000>; | ||
28 | }; | ||
diff --git a/Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.txt b/Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.txt new file mode 100644 index 000000000000..cd29083e16ec --- /dev/null +++ b/Documentation/devicetree/bindings/iommu/renesas,ipmmu-vmsa.txt | |||
@@ -0,0 +1,41 @@ | |||
1 | * Renesas VMSA-Compatible IOMMU | ||
2 | |||
3 | The IPMMU is an IOMMU implementation compatible with the ARM VMSA page tables. | ||
4 | It provides address translation for bus masters outside of the CPU, each | ||
5 | connected to the IPMMU through a port called micro-TLB. | ||
6 | |||
7 | |||
8 | Required Properties: | ||
9 | |||
10 | - compatible: Must contain "renesas,ipmmu-vmsa". | ||
11 | - reg: Base address and size of the IPMMU registers. | ||
12 | - interrupts: Specifiers for the MMU fault interrupts. For instances that | ||
13 | support secure mode two interrupts must be specified, for non-secure and | ||
14 | secure mode, in that order. For instances that don't support secure mode a | ||
15 | single interrupt must be specified. | ||
16 | |||
17 | - #iommu-cells: Must be 1. | ||
18 | |||
19 | Each bus master connected to an IPMMU must reference the IPMMU in its device | ||
20 | node with the following property: | ||
21 | |||
22 | - iommus: A reference to the IPMMU in two cells. The first cell is a phandle | ||
23 | to the IPMMU and the second cell the number of the micro-TLB that the | ||
24 | device is connected to. | ||
25 | |||
26 | |||
27 | Example: R8A7791 IPMMU-MX and VSP1-D0 bus master | ||
28 | |||
29 | ipmmu_mx: mmu@fe951000 { | ||
30 | compatible = "renasas,ipmmu-vmsa"; | ||
31 | reg = <0 0xfe951000 0 0x1000>; | ||
32 | interrupts = <0 222 IRQ_TYPE_LEVEL_HIGH>, | ||
33 | <0 221 IRQ_TYPE_LEVEL_HIGH>; | ||
34 | #iommu-cells = <1>; | ||
35 | }; | ||
36 | |||
37 | vsp1@fe928000 { | ||
38 | ... | ||
39 | iommus = <&ipmmu_mx 13>; | ||
40 | ... | ||
41 | }; | ||
diff --git a/Documentation/devicetree/bindings/iommu/samsung,sysmmu.txt b/Documentation/devicetree/bindings/iommu/samsung,sysmmu.txt index 6fa4c737af23..729543c47046 100644 --- a/Documentation/devicetree/bindings/iommu/samsung,sysmmu.txt +++ b/Documentation/devicetree/bindings/iommu/samsung,sysmmu.txt | |||
@@ -45,7 +45,7 @@ Required properties: | |||
45 | Exynos4 SoCs, there needs no "master" clock. | 45 | Exynos4 SoCs, there needs no "master" clock. |
46 | Exynos5 SoCs, some System MMUs must have "master" clocks. | 46 | Exynos5 SoCs, some System MMUs must have "master" clocks. |
47 | - clocks: Required if the System MMU is needed to gate its clock. | 47 | - clocks: Required if the System MMU is needed to gate its clock. |
48 | - samsung,power-domain: Required if the System MMU is needed to gate its power. | 48 | - power-domains: Required if the System MMU is needed to gate its power. |
49 | Please refer to the following document: | 49 | Please refer to the following document: |
50 | Documentation/devicetree/bindings/arm/exynos/power_domain.txt | 50 | Documentation/devicetree/bindings/arm/exynos/power_domain.txt |
51 | 51 | ||
@@ -54,7 +54,7 @@ Examples: | |||
54 | compatible = "samsung,exynos5-gsc"; | 54 | compatible = "samsung,exynos5-gsc"; |
55 | reg = <0x13e00000 0x1000>; | 55 | reg = <0x13e00000 0x1000>; |
56 | interrupts = <0 85 0>; | 56 | interrupts = <0 85 0>; |
57 | samsung,power-domain = <&pd_gsc>; | 57 | power-domains = <&pd_gsc>; |
58 | clocks = <&clock CLK_GSCL0>; | 58 | clocks = <&clock CLK_GSCL0>; |
59 | clock-names = "gscl"; | 59 | clock-names = "gscl"; |
60 | }; | 60 | }; |
@@ -66,5 +66,5 @@ Examples: | |||
66 | interrupts = <2 0>; | 66 | interrupts = <2 0>; |
67 | clock-names = "sysmmu", "master"; | 67 | clock-names = "sysmmu", "master"; |
68 | clocks = <&clock CLK_SMMU_GSCL0>, <&clock CLK_GSCL0>; | 68 | clocks = <&clock CLK_SMMU_GSCL0>, <&clock CLK_GSCL0>; |
69 | samsung,power-domain = <&pd_gsc>; | 69 | power-domains = <&pd_gsc>; |
70 | }; | 70 | }; |
diff --git a/Documentation/devicetree/bindings/leds/common.txt b/Documentation/devicetree/bindings/leds/common.txt index 2d88816dd550..34811c57db69 100644 --- a/Documentation/devicetree/bindings/leds/common.txt +++ b/Documentation/devicetree/bindings/leds/common.txt | |||
@@ -1,6 +1,19 @@ | |||
1 | Common leds properties. | 1 | Common leds properties. |
2 | 2 | ||
3 | LED and flash LED devices provide the same basic functionality as current | ||
4 | regulators, but extended with LED and flash LED specific features like | ||
5 | blinking patterns, flash timeout, flash faults and external flash strobe mode. | ||
6 | |||
7 | Many LED devices expose more than one current output that can be connected | ||
8 | to one or more discrete LED component. Since the arrangement of connections | ||
9 | can influence the way of the LED device initialization, the LED components | ||
10 | have to be tightly coupled with the LED device binding. They are represented | ||
11 | by child nodes of the parent LED device binding. | ||
12 | |||
3 | Optional properties for child nodes: | 13 | Optional properties for child nodes: |
14 | - led-sources : List of device current outputs the LED is connected to. The | ||
15 | outputs are identified by the numbers that must be defined | ||
16 | in the LED device binding documentation. | ||
4 | - label : The label for this LED. If omitted, the label is | 17 | - label : The label for this LED. If omitted, the label is |
5 | taken from the node name (excluding the unit address). | 18 | taken from the node name (excluding the unit address). |
6 | 19 | ||
@@ -14,6 +27,15 @@ Optional properties for child nodes: | |||
14 | "ide-disk" - LED indicates disk activity | 27 | "ide-disk" - LED indicates disk activity |
15 | "timer" - LED flashes at a fixed, configurable rate | 28 | "timer" - LED flashes at a fixed, configurable rate |
16 | 29 | ||
30 | - max-microamp : maximum intensity in microamperes of the LED | ||
31 | (torch LED for flash devices) | ||
32 | - flash-max-microamp : maximum intensity in microamperes of the | ||
33 | flash LED; it is mandatory if the LED should | ||
34 | support the flash mode | ||
35 | - flash-timeout-us : timeout in microseconds after which the flash | ||
36 | LED is turned off | ||
37 | |||
38 | |||
17 | Examples: | 39 | Examples: |
18 | 40 | ||
19 | system-status { | 41 | system-status { |
@@ -21,3 +43,11 @@ system-status { | |||
21 | linux,default-trigger = "heartbeat"; | 43 | linux,default-trigger = "heartbeat"; |
22 | ... | 44 | ... |
23 | }; | 45 | }; |
46 | |||
47 | camera-flash { | ||
48 | label = "Flash"; | ||
49 | led-sources = <0>, <1>; | ||
50 | max-microamp = <50000>; | ||
51 | flash-max-microamp = <320000>; | ||
52 | flash-timeout-us = <500000>; | ||
53 | }; | ||
diff --git a/Documentation/devicetree/bindings/mailbox/altera-mailbox.txt b/Documentation/devicetree/bindings/mailbox/altera-mailbox.txt new file mode 100644 index 000000000000..c2619797ce0c --- /dev/null +++ b/Documentation/devicetree/bindings/mailbox/altera-mailbox.txt | |||
@@ -0,0 +1,49 @@ | |||
1 | Altera Mailbox Driver | ||
2 | ===================== | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "altr,mailbox-1.0". | ||
6 | - reg : physical base address of the mailbox and length of | ||
7 | memory mapped region. | ||
8 | - #mbox-cells: Common mailbox binding property to identify the number | ||
9 | of cells required for the mailbox specifier. Should be 1. | ||
10 | |||
11 | Optional properties: | ||
12 | - interrupt-parent : interrupt source phandle. | ||
13 | - interrupts : interrupt number. The interrupt specifier format | ||
14 | depends on the interrupt controller parent. | ||
15 | |||
16 | Example: | ||
17 | mbox_tx: mailbox@0x100 { | ||
18 | compatible = "altr,mailbox-1.0"; | ||
19 | reg = <0x100 0x8>; | ||
20 | interrupt-parent = < &gic_0 >; | ||
21 | interrupts = <5>; | ||
22 | #mbox-cells = <1>; | ||
23 | }; | ||
24 | |||
25 | mbox_rx: mailbox@0x200 { | ||
26 | compatible = "altr,mailbox-1.0"; | ||
27 | reg = <0x200 0x8>; | ||
28 | interrupt-parent = < &gic_0 >; | ||
29 | interrupts = <6>; | ||
30 | #mbox-cells = <1>; | ||
31 | }; | ||
32 | |||
33 | Mailbox client | ||
34 | =============== | ||
35 | "mboxes" and the optional "mbox-names" (please see | ||
36 | Documentation/devicetree/bindings/mailbox/mailbox.txt for details). Each value | ||
37 | of the mboxes property should contain a phandle to the mailbox controller | ||
38 | device node and second argument is the channel index. It must be 0 (hardware | ||
39 | support only one channel).The equivalent "mbox-names" property value can be | ||
40 | used to give a name to the communication channel to be used by the client user. | ||
41 | |||
42 | Example: | ||
43 | mclient0: mclient0@0x400 { | ||
44 | compatible = "client-1.0"; | ||
45 | reg = <0x400 0x10>; | ||
46 | mbox-names = "mbox-tx", "mbox-rx"; | ||
47 | mboxes = <&mbox_tx 0>, | ||
48 | <&mbox_rx 0>; | ||
49 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/atmel-isi.txt b/Documentation/devicetree/bindings/media/atmel-isi.txt index 17e71b7b44c6..251f008f220c 100644 --- a/Documentation/devicetree/bindings/media/atmel-isi.txt +++ b/Documentation/devicetree/bindings/media/atmel-isi.txt | |||
@@ -38,7 +38,7 @@ Example: | |||
38 | 38 | ||
39 | i2c1: i2c@f0018000 { | 39 | i2c1: i2c@f0018000 { |
40 | ov2640: camera@0x30 { | 40 | ov2640: camera@0x30 { |
41 | compatible = "omnivision,ov2640"; | 41 | compatible = "ovti,ov2640"; |
42 | reg = <0x30>; | 42 | reg = <0x30>; |
43 | 43 | ||
44 | port { | 44 | port { |
diff --git a/Documentation/devicetree/bindings/media/i2c/nokia,smia.txt b/Documentation/devicetree/bindings/media/i2c/nokia,smia.txt new file mode 100644 index 000000000000..855e1faf73e2 --- /dev/null +++ b/Documentation/devicetree/bindings/media/i2c/nokia,smia.txt | |||
@@ -0,0 +1,63 @@ | |||
1 | SMIA/SMIA++ sensor | ||
2 | |||
3 | SMIA (Standard Mobile Imaging Architecture) is an image sensor standard | ||
4 | defined jointly by Nokia and ST. SMIA++, defined by Nokia, is an extension | ||
5 | of that. These definitions are valid for both types of sensors. | ||
6 | |||
7 | More detailed documentation can be found in | ||
8 | Documentation/devicetree/bindings/media/video-interfaces.txt . | ||
9 | |||
10 | |||
11 | Mandatory properties | ||
12 | -------------------- | ||
13 | |||
14 | - compatible: "nokia,smia" | ||
15 | - reg: I2C address (0x10, or an alternative address) | ||
16 | - vana-supply: Analogue voltage supply (VANA), typically 2,8 volts (sensor | ||
17 | dependent). | ||
18 | - clocks: External clock to the sensor | ||
19 | - clock-frequency: Frequency of the external clock to the sensor | ||
20 | - link-frequencies: List of allowed data link frequencies. An array of | ||
21 | 64-bit elements. | ||
22 | |||
23 | |||
24 | Optional properties | ||
25 | ------------------- | ||
26 | |||
27 | - nokia,nvm-size: The size of the NVM, in bytes. If the size is not given, | ||
28 | the NVM contents will not be read. | ||
29 | - reset-gpios: XSHUTDOWN GPIO | ||
30 | |||
31 | |||
32 | Endpoint node mandatory properties | ||
33 | ---------------------------------- | ||
34 | |||
35 | - clock-lanes: <0> | ||
36 | - data-lanes: <1..n> | ||
37 | - remote-endpoint: A phandle to the bus receiver's endpoint node. | ||
38 | |||
39 | |||
40 | Example | ||
41 | ------- | ||
42 | |||
43 | &i2c2 { | ||
44 | clock-frequency = <400000>; | ||
45 | |||
46 | smiapp_1: camera@10 { | ||
47 | compatible = "nokia,smia"; | ||
48 | reg = <0x10>; | ||
49 | reset-gpios = <&gpio3 20 0>; | ||
50 | vana-supply = <&vaux3>; | ||
51 | clocks = <&omap3_isp 0>; | ||
52 | clock-frequency = <9600000>; | ||
53 | nokia,nvm-size = <512>; /* 8 * 64 */ | ||
54 | link-frequencies = /bits/ 64 <199200000 210000000 499200000>; | ||
55 | port { | ||
56 | smiapp_1_1: endpoint { | ||
57 | clock-lanes = <0>; | ||
58 | data-lanes = <1 2>; | ||
59 | remote-endpoint = <&csi2a_ep>; | ||
60 | }; | ||
61 | }; | ||
62 | }; | ||
63 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/s5p-mfc.txt b/Documentation/devicetree/bindings/media/s5p-mfc.txt index 3e3c5f349570..2d5787eac91a 100644 --- a/Documentation/devicetree/bindings/media/s5p-mfc.txt +++ b/Documentation/devicetree/bindings/media/s5p-mfc.txt | |||
@@ -28,7 +28,7 @@ Required properties: | |||
28 | for DMA contiguous memory allocation and its size. | 28 | for DMA contiguous memory allocation and its size. |
29 | 29 | ||
30 | Optional properties: | 30 | Optional properties: |
31 | - samsung,power-domain : power-domain property defined with a phandle | 31 | - power-domains : power-domain property defined with a phandle |
32 | to respective power domain. | 32 | to respective power domain. |
33 | 33 | ||
34 | Example: | 34 | Example: |
@@ -38,7 +38,7 @@ mfc: codec@13400000 { | |||
38 | compatible = "samsung,mfc-v5"; | 38 | compatible = "samsung,mfc-v5"; |
39 | reg = <0x13400000 0x10000>; | 39 | reg = <0x13400000 0x10000>; |
40 | interrupts = <0 94 0>; | 40 | interrupts = <0 94 0>; |
41 | samsung,power-domain = <&pd_mfc>; | 41 | power-domains = <&pd_mfc>; |
42 | clocks = <&clock 273>; | 42 | clocks = <&clock 273>; |
43 | clock-names = "mfc"; | 43 | clock-names = "mfc"; |
44 | }; | 44 | }; |
diff --git a/Documentation/devicetree/bindings/media/sunxi-ir.txt b/Documentation/devicetree/bindings/media/sunxi-ir.txt index 23dd5ad07b7c..1811a067c72c 100644 --- a/Documentation/devicetree/bindings/media/sunxi-ir.txt +++ b/Documentation/devicetree/bindings/media/sunxi-ir.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | Device-Tree bindings for SUNXI IR controller found in sunXi SoC family | 1 | Device-Tree bindings for SUNXI IR controller found in sunXi SoC family |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : should be "allwinner,sun4i-a10-ir"; | 4 | - compatible : "allwinner,sun4i-a10-ir" or "allwinner,sun5i-a13-ir" |
5 | - clocks : list of clock specifiers, corresponding to | 5 | - clocks : list of clock specifiers, corresponding to |
6 | entries in clock-names property; | 6 | entries in clock-names property; |
7 | - clock-names : should contain "apb" and "ir" entries; | 7 | - clock-names : should contain "apb" and "ir" entries; |
@@ -10,6 +10,7 @@ Required properties: | |||
10 | 10 | ||
11 | Optional properties: | 11 | Optional properties: |
12 | - linux,rc-map-name : Remote control map name. | 12 | - linux,rc-map-name : Remote control map name. |
13 | - resets : phandle + reset specifier pair | ||
13 | 14 | ||
14 | Example: | 15 | Example: |
15 | 16 | ||
@@ -17,6 +18,7 @@ ir0: ir@01c21800 { | |||
17 | compatible = "allwinner,sun4i-a10-ir"; | 18 | compatible = "allwinner,sun4i-a10-ir"; |
18 | clocks = <&apb0_gates 6>, <&ir0_clk>; | 19 | clocks = <&apb0_gates 6>, <&ir0_clk>; |
19 | clock-names = "apb", "ir"; | 20 | clock-names = "apb", "ir"; |
21 | resets = <&apb0_rst 1>; | ||
20 | interrupts = <0 5 1>; | 22 | interrupts = <0 5 1>; |
21 | reg = <0x01C21800 0x40>; | 23 | reg = <0x01C21800 0x40>; |
22 | linux,rc-map-name = "rc-rc6-mce"; | 24 | linux,rc-map-name = "rc-rc6-mce"; |
diff --git a/Documentation/devicetree/bindings/media/ti-am437x-vpfe.txt b/Documentation/devicetree/bindings/media/ti-am437x-vpfe.txt new file mode 100644 index 000000000000..3932e766553a --- /dev/null +++ b/Documentation/devicetree/bindings/media/ti-am437x-vpfe.txt | |||
@@ -0,0 +1,61 @@ | |||
1 | Texas Instruments AM437x CAMERA (VPFE) | ||
2 | -------------------------------------- | ||
3 | |||
4 | The Video Processing Front End (VPFE) is a key component for image capture | ||
5 | applications. The capture module provides the system interface and the | ||
6 | processing capability to connect RAW image-sensor modules and video decoders | ||
7 | to the AM437x device. | ||
8 | |||
9 | Required properties: | ||
10 | - compatible: must be "ti,am437x-vpfe" | ||
11 | - reg: physical base address and length of the registers set for the device; | ||
12 | - interrupts: should contain IRQ line for the VPFE; | ||
13 | - ti,am437x-vpfe-interface: can be one of the following, | ||
14 | 0 - Raw Bayer Interface. | ||
15 | 1 - 8 Bit BT656 Interface. | ||
16 | 2 - 10 Bit BT656 Interface. | ||
17 | 3 - YCbCr 8 Bit Interface. | ||
18 | 4 - YCbCr 16 Bit Interface. | ||
19 | |||
20 | VPFE supports a single port node with parallel bus. It should contain one | ||
21 | 'port' child node with child 'endpoint' node. Please refer to the bindings | ||
22 | defined in Documentation/devicetree/bindings/media/video-interfaces.txt. | ||
23 | |||
24 | Example: | ||
25 | vpfe: vpfe@f0034000 { | ||
26 | compatible = "ti,am437x-vpfe"; | ||
27 | reg = <0x48328000 0x2000>; | ||
28 | interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; | ||
29 | |||
30 | pinctrl-names = "default", "sleep"; | ||
31 | pinctrl-0 = <&vpfe_pins_default>; | ||
32 | pinctrl-1 = <&vpfe_pins_sleep>; | ||
33 | |||
34 | port { | ||
35 | #address-cells = <1>; | ||
36 | #size-cells = <0>; | ||
37 | |||
38 | vpfe0_ep: endpoint { | ||
39 | remote-endpoint = <&ov2659_1>; | ||
40 | ti,am437x-vpfe-interface = <0>; | ||
41 | bus-width = <8>; | ||
42 | hsync-active = <0>; | ||
43 | vsync-active = <0>; | ||
44 | }; | ||
45 | }; | ||
46 | }; | ||
47 | |||
48 | i2c1: i2c@4802a000 { | ||
49 | |||
50 | ov2659@30 { | ||
51 | compatible = "ti,ov2659"; | ||
52 | reg = <0x30>; | ||
53 | |||
54 | port { | ||
55 | ov2659_1: endpoint { | ||
56 | remote-endpoint = <&vpfe0_ep>; | ||
57 | bus-width = <8>; | ||
58 | mclk-frequency = <12000000>; | ||
59 | }; | ||
60 | }; | ||
61 | }; | ||
diff --git a/Documentation/devicetree/bindings/media/video-interfaces.txt b/Documentation/devicetree/bindings/media/video-interfaces.txt index ce719f89dd1c..571b4c60665f 100644 --- a/Documentation/devicetree/bindings/media/video-interfaces.txt +++ b/Documentation/devicetree/bindings/media/video-interfaces.txt | |||
@@ -103,6 +103,9 @@ Optional endpoint properties | |||
103 | array contains only one entry. | 103 | array contains only one entry. |
104 | - clock-noncontinuous: a boolean property to allow MIPI CSI-2 non-continuous | 104 | - clock-noncontinuous: a boolean property to allow MIPI CSI-2 non-continuous |
105 | clock mode. | 105 | clock mode. |
106 | - link-frequencies: Allowed data bus frequencies. For MIPI CSI-2, for | ||
107 | instance, this is the actual frequency of the bus, not bits per clock per | ||
108 | lane value. An array of 64-bit unsigned integers. | ||
106 | 109 | ||
107 | 110 | ||
108 | Example | 111 | Example |
@@ -159,7 +162,7 @@ pipelines can be active: ov772x -> ceu0 or imx074 -> csi2 -> ceu0. | |||
159 | i2c0: i2c@0xfff20000 { | 162 | i2c0: i2c@0xfff20000 { |
160 | ... | 163 | ... |
161 | ov772x_1: camera@0x21 { | 164 | ov772x_1: camera@0x21 { |
162 | compatible = "omnivision,ov772x"; | 165 | compatible = "ovti,ov772x"; |
163 | reg = <0x21>; | 166 | reg = <0x21>; |
164 | vddio-supply = <®ulator1>; | 167 | vddio-supply = <®ulator1>; |
165 | vddcore-supply = <®ulator2>; | 168 | vddcore-supply = <®ulator2>; |
diff --git a/Documentation/devicetree/bindings/memory-controllers/renesas-memory-controllers.txt b/Documentation/devicetree/bindings/memory-controllers/renesas-memory-controllers.txt new file mode 100644 index 000000000000..c64b7925cd09 --- /dev/null +++ b/Documentation/devicetree/bindings/memory-controllers/renesas-memory-controllers.txt | |||
@@ -0,0 +1,44 @@ | |||
1 | DT bindings for Renesas R-Mobile and SH-Mobile memory controllers | ||
2 | ================================================================= | ||
3 | |||
4 | Renesas R-Mobile and SH-Mobile SoCs contain one or more memory controllers. | ||
5 | These memory controllers differ from one SoC variant to another, and are called | ||
6 | by different names ("DDR Bus Controller (DBSC)", "DDR3 Bus State Controller | ||
7 | (DBSC3)", "SDRAM Bus State Controller (SBSC)"). | ||
8 | |||
9 | Currently memory controller device nodes are used only to reference PM | ||
10 | domains, and prevent these PM domains from being powered down, which would | ||
11 | crash the system. | ||
12 | |||
13 | As there exist no actual drivers for these controllers yet, these bindings | ||
14 | should be considered EXPERIMENTAL for now. | ||
15 | |||
16 | Required properties: | ||
17 | - compatible: Must be one of the following SoC-specific values: | ||
18 | - "renesas,dbsc-r8a73a4" (R-Mobile APE6) | ||
19 | - "renesas,dbsc3-r8a7740" (R-Mobile A1) | ||
20 | - "renesas,sbsc-sh73a0" (SH-Mobile AG5) | ||
21 | - reg: Must contain the base address and length of the memory controller's | ||
22 | registers. | ||
23 | |||
24 | Optional properties: | ||
25 | - interrupts: Must contain a list of interrupt specifiers for memory | ||
26 | controller interrupts, if available. | ||
27 | - interrupts-names: Must contain a list of interrupt names corresponding to | ||
28 | the interrupts in the interrupts property, if available. | ||
29 | Valid interrupt names are: | ||
30 | - "sec" (secure interrupt) | ||
31 | - "temp" (normal (temperature) interrupt) | ||
32 | - power-domains: Must contain a reference to the PM domain that the memory | ||
33 | controller belongs to, if available. | ||
34 | |||
35 | Example: | ||
36 | |||
37 | sbsc1: memory-controller@fe400000 { | ||
38 | compatible = "renesas,sbsc-sh73a0"; | ||
39 | reg = <0xfe400000 0x400>; | ||
40 | interrupts = <0 35 IRQ_TYPE_LEVEL_HIGH>, | ||
41 | <0 36 IRQ_TYPE_LEVEL_HIGH>; | ||
42 | interrupt-names = "sec", "temp"; | ||
43 | power-domains = <&pd_a4bc0>; | ||
44 | }; | ||
diff --git a/Documentation/devicetree/bindings/mfd/atmel-matrix.txt b/Documentation/devicetree/bindings/mfd/atmel-matrix.txt new file mode 100644 index 000000000000..e3ef50ca02a5 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/atmel-matrix.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | * Device tree bindings for Atmel Bus Matrix | ||
2 | |||
3 | The Bus Matrix registers are used to configure Atmel SoCs internal bus | ||
4 | behavior (master/slave priorities, undefined burst length type, ...) | ||
5 | |||
6 | Required properties: | ||
7 | - compatible: Should be one of the following | ||
8 | "atmel,at91sam9260-matrix", "syscon" | ||
9 | "atmel,at91sam9261-matrix", "syscon" | ||
10 | "atmel,at91sam9263-matrix", "syscon" | ||
11 | "atmel,at91sam9rl-matrix", "syscon" | ||
12 | "atmel,at91sam9g45-matrix", "syscon" | ||
13 | "atmel,at91sam9n12-matrix", "syscon" | ||
14 | "atmel,at91sam9x5-matrix", "syscon" | ||
15 | "atmel,sama5d3-matrix", "syscon" | ||
16 | - reg: Contains offset/length value of the Bus Matrix | ||
17 | memory region. | ||
18 | |||
19 | Example: | ||
20 | |||
21 | matrix: matrix@ffffec00 { | ||
22 | compatible = "atmel,sama5d3-matrix", "syscon"; | ||
23 | reg = <0xffffec00 0x200>; | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/mfd/atmel-smc.txt b/Documentation/devicetree/bindings/mfd/atmel-smc.txt new file mode 100644 index 000000000000..26eeed373934 --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/atmel-smc.txt | |||
@@ -0,0 +1,19 @@ | |||
1 | * Device tree bindings for Atmel SMC (Static Memory Controller) | ||
2 | |||
3 | The SMC registers are used to configure Atmel EBI (External Bus Interface) | ||
4 | to interface with standard memory devices (NAND, NOR, SRAM or specialized | ||
5 | devices like FPGAs). | ||
6 | |||
7 | Required properties: | ||
8 | - compatible: Should be one of the following | ||
9 | "atmel,at91sam9260-smc", "syscon" | ||
10 | "atmel,sama5d3-smc", "syscon" | ||
11 | - reg: Contains offset/length value of the SMC memory | ||
12 | region. | ||
13 | |||
14 | Example: | ||
15 | |||
16 | smc: smc@ffffc000 { | ||
17 | compatible = "atmel,sama5d3-smc", "syscon"; | ||
18 | reg = <0xffffc000 0x1000>; | ||
19 | }; | ||
diff --git a/Documentation/devicetree/bindings/mfd/da9063.txt b/Documentation/devicetree/bindings/mfd/da9063.txt new file mode 100644 index 000000000000..42c6fa6f1c9a --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/da9063.txt | |||
@@ -0,0 +1,93 @@ | |||
1 | * Dialog DA9063 Power Management Integrated Circuit (PMIC) | ||
2 | |||
3 | DA9093 consists of a large and varied group of sub-devices (I2C Only): | ||
4 | |||
5 | Device Supply Names Description | ||
6 | ------ ------------ ----------- | ||
7 | da9063-regulator : : LDOs & BUCKs | ||
8 | da9063-rtc : : Real-Time Clock | ||
9 | da9063-watchdog : : Watchdog | ||
10 | |||
11 | ====== | ||
12 | |||
13 | Required properties: | ||
14 | |||
15 | - compatible : Should be "dlg,da9063" | ||
16 | - reg : Specifies the I2C slave address (this defaults to 0x58 but it can be | ||
17 | modified to match the chip's OTP settings). | ||
18 | - interrupt-parent : Specifies the reference to the interrupt controller for | ||
19 | the DA9063. | ||
20 | - interrupts : IRQ line information. | ||
21 | - interrupt-controller | ||
22 | |||
23 | Sub-nodes: | ||
24 | |||
25 | - regulators : This node defines the settings for the LDOs and BUCKs. The | ||
26 | DA9063 regulators are bound using their names listed below: | ||
27 | |||
28 | bcore1 : BUCK CORE1 | ||
29 | bcore2 : BUCK CORE2 | ||
30 | bpro : BUCK PRO | ||
31 | bmem : BUCK MEM | ||
32 | bio : BUCK IO | ||
33 | bperi : BUCK PERI | ||
34 | ldo1 : LDO_1 | ||
35 | ldo2 : LDO_2 | ||
36 | ldo3 : LDO_3 | ||
37 | ldo4 : LDO_4 | ||
38 | ldo5 : LDO_5 | ||
39 | ldo6 : LDO_6 | ||
40 | ldo7 : LDO_7 | ||
41 | ldo8 : LDO_8 | ||
42 | ldo9 : LDO_9 | ||
43 | ldo10 : LDO_10 | ||
44 | ldo11 : LDO_11 | ||
45 | |||
46 | The component follows the standard regulator framework and the bindings | ||
47 | details of individual regulator device can be found in: | ||
48 | Documentation/devicetree/bindings/regulator/regulator.txt | ||
49 | |||
50 | - rtc : This node defines settings for the Real-Time Clock associated with | ||
51 | the DA9063. There are currently no entries in this binding, however | ||
52 | compatible = "dlg,da9063-rtc" should be added if a node is created. | ||
53 | |||
54 | - watchdog : This node defines settings for the Watchdog timer associated | ||
55 | with the DA9063. There are currently no entries in this binding, however | ||
56 | compatible = "dlg,da9063-watchdog" should be added if a node is created. | ||
57 | |||
58 | |||
59 | Example: | ||
60 | |||
61 | pmic0: da9063@58 { | ||
62 | compatible = "dlg,da9063" | ||
63 | reg = <0x58>; | ||
64 | interrupt-parent = <&gpio6>; | ||
65 | interrupts = <11 IRQ_TYPE_LEVEL_LOW>; | ||
66 | interrupt-controller; | ||
67 | |||
68 | rtc { | ||
69 | compatible = "dlg,da9063-rtc"; | ||
70 | }; | ||
71 | |||
72 | wdt { | ||
73 | compatible = "dlg,da9063-watchdog"; | ||
74 | }; | ||
75 | |||
76 | regulators { | ||
77 | DA9063_BCORE1: bcore1 { | ||
78 | regulator-name = "BCORE1"; | ||
79 | regulator-min-microvolt = <300000>; | ||
80 | regulator-max-microvolt = <1570000>; | ||
81 | regulator-min-microamp = <500000>; | ||
82 | regulator-max-microamp = <2000000>; | ||
83 | regulator-boot-on; | ||
84 | }; | ||
85 | DA9063_LDO11: ldo11 { | ||
86 | regulator-name = "LDO_11"; | ||
87 | regulator-min-microvolt = <900000>; | ||
88 | regulator-max-microvolt = <3600000>; | ||
89 | regulator-boot-on; | ||
90 | }; | ||
91 | }; | ||
92 | }; | ||
93 | |||
diff --git a/Documentation/devicetree/bindings/mfd/max77686.txt b/Documentation/devicetree/bindings/mfd/max77686.txt index 75fdfaf41831..e39f0bc1f55e 100644 --- a/Documentation/devicetree/bindings/mfd/max77686.txt +++ b/Documentation/devicetree/bindings/mfd/max77686.txt | |||
@@ -39,6 +39,12 @@ to get matched with their hardware counterparts as follow: | |||
39 | -BUCKn : 1-4. | 39 | -BUCKn : 1-4. |
40 | Use standard regulator bindings for it ('regulator-off-in-suspend'). | 40 | Use standard regulator bindings for it ('regulator-off-in-suspend'). |
41 | 41 | ||
42 | LDO20, LDO21, LDO22, BUCK8 and BUCK9 can be configured to GPIO enable | ||
43 | control. To turn this feature on this property must be added to the regulator | ||
44 | sub-node: | ||
45 | - maxim,ena-gpios : one GPIO specifier enable control (the gpio | ||
46 | flags are actually ignored and always | ||
47 | ACTIVE_HIGH is used) | ||
42 | 48 | ||
43 | Example: | 49 | Example: |
44 | 50 | ||
@@ -65,4 +71,12 @@ Example: | |||
65 | regulator-always-on; | 71 | regulator-always-on; |
66 | regulator-boot-on; | 72 | regulator-boot-on; |
67 | }; | 73 | }; |
74 | |||
75 | buck9_reg { | ||
76 | regulator-compatible = "BUCK9"; | ||
77 | regulator-name = "CAM_ISP_CORE_1.2V"; | ||
78 | regulator-min-microvolt = <1000000>; | ||
79 | regulator-max-microvolt = <1200000>; | ||
80 | maxim,ena-gpios = <&gpm0 3 GPIO_ACTIVE_HIGH>; | ||
81 | }; | ||
68 | } | 82 | } |
diff --git a/Documentation/devicetree/bindings/mfd/max77693.txt b/Documentation/devicetree/bindings/mfd/max77693.txt index 01e9f30fe678..38e64405e98d 100644 --- a/Documentation/devicetree/bindings/mfd/max77693.txt +++ b/Documentation/devicetree/bindings/mfd/max77693.txt | |||
@@ -41,6 +41,41 @@ Optional properties: | |||
41 | To get more informations, please refer to documentaion. | 41 | To get more informations, please refer to documentaion. |
42 | [*] refer Documentation/devicetree/bindings/pwm/pwm.txt | 42 | [*] refer Documentation/devicetree/bindings/pwm/pwm.txt |
43 | 43 | ||
44 | - charger : Node configuring the charger driver. | ||
45 | If present, required properties: | ||
46 | - compatible : Must be "maxim,max77693-charger". | ||
47 | |||
48 | Optional properties (if not set, defaults will be used): | ||
49 | - maxim,constant-microvolt : Battery constant voltage in uV. The charger | ||
50 | will operate in fast charge constant current mode till battery voltage | ||
51 | reaches this level. Then the charger will switch to fast charge constant | ||
52 | voltage mode. Also vsys (system voltage) will be set to this value when | ||
53 | DC power is supplied but charger is not enabled. | ||
54 | Valid values: 3650000 - 4400000, step by 25000 (rounded down) | ||
55 | Default: 4200000 | ||
56 | |||
57 | - maxim,min-system-microvolt : Minimal system voltage in uV. | ||
58 | Valid values: 3000000 - 3700000, step by 100000 (rounded down) | ||
59 | Default: 3600000 | ||
60 | |||
61 | - maxim,thermal-regulation-celsius : Temperature in Celsius for entering | ||
62 | high temperature charging mode. If die temperature exceeds this value | ||
63 | the charging current will be reduced by 105 mA/Celsius. | ||
64 | Valid values: 70, 85, 100, 115 | ||
65 | Default: 100 | ||
66 | |||
67 | - maxim,battery-overcurrent-microamp : Overcurrent protection threshold | ||
68 | in uA (current from battery to system). | ||
69 | Valid values: 2000000 - 3500000, step by 250000 (rounded down) | ||
70 | Default: 3500000 | ||
71 | |||
72 | - maxim,charge-input-threshold-microvolt : Threshold voltage in uV for | ||
73 | triggering input voltage regulation loop. If input voltage decreases | ||
74 | below this value, the input current will be reduced to reach the | ||
75 | threshold voltage. | ||
76 | Valid values: 4300000, 4700000, 4800000, 4900000 | ||
77 | Default: 4300000 | ||
78 | |||
44 | Example: | 79 | Example: |
45 | max77693@66 { | 80 | max77693@66 { |
46 | compatible = "maxim,max77693"; | 81 | compatible = "maxim,max77693"; |
@@ -73,4 +108,14 @@ Example: | |||
73 | pwms = <&pwm 0 40000 0>; | 108 | pwms = <&pwm 0 40000 0>; |
74 | pwm-names = "haptic"; | 109 | pwm-names = "haptic"; |
75 | }; | 110 | }; |
111 | |||
112 | charger { | ||
113 | compatible = "maxim,max77693-charger"; | ||
114 | |||
115 | maxim,constant-microvolt = <4200000>; | ||
116 | maxim,min-system-microvolt = <3600000>; | ||
117 | maxim,thermal-regulation-celsius = <75>; | ||
118 | maxim,battery-overcurrent-microamp = <3000000>; | ||
119 | maxim,charge-input-threshold-microvolt = <4300000>; | ||
120 | }; | ||
76 | }; | 121 | }; |
diff --git a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt new file mode 100644 index 000000000000..85e31980017a --- /dev/null +++ b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt | |||
@@ -0,0 +1,70 @@ | |||
1 | Qualcomm Resource Power Manager (RPM) | ||
2 | |||
3 | This driver is used to interface with the Resource Power Manager (RPM) found in | ||
4 | various Qualcomm platforms. The RPM allows each component in the system to vote | ||
5 | for state of the system resources, such as clocks, regulators and bus | ||
6 | frequencies. | ||
7 | |||
8 | - compatible: | ||
9 | Usage: required | ||
10 | Value type: <string> | ||
11 | Definition: must be one of: | ||
12 | "qcom,rpm-apq8064" | ||
13 | "qcom,rpm-msm8660" | ||
14 | "qcom,rpm-msm8960" | ||
15 | |||
16 | - reg: | ||
17 | Usage: required | ||
18 | Value type: <prop-encoded-array> | ||
19 | Definition: base address and size of the RPM's message ram | ||
20 | |||
21 | - interrupts: | ||
22 | Usage: required | ||
23 | Value type: <prop-encoded-array> | ||
24 | Definition: three entries specifying the RPM's: | ||
25 | 1. acknowledgement interrupt | ||
26 | 2. error interrupt | ||
27 | 3. wakeup interrupt | ||
28 | |||
29 | - interrupt-names: | ||
30 | Usage: required | ||
31 | Value type: <string-array> | ||
32 | Definition: must be the three strings "ack", "err" and "wakeup", in order | ||
33 | |||
34 | - #address-cells: | ||
35 | Usage: required | ||
36 | Value type: <u32> | ||
37 | Definition: must be 1 | ||
38 | |||
39 | - #size-cells: | ||
40 | Usage: required | ||
41 | Value type: <u32> | ||
42 | Definition: must be 0 | ||
43 | |||
44 | - qcom,ipc: | ||
45 | Usage: required | ||
46 | Value type: <prop-encoded-array> | ||
47 | |||
48 | Definition: three entries specifying the outgoing ipc bit used for | ||
49 | signaling the RPM: | ||
50 | - phandle to a syscon node representing the apcs registers | ||
51 | - u32 representing offset to the register within the syscon | ||
52 | - u32 representing the ipc bit within the register | ||
53 | |||
54 | |||
55 | = EXAMPLE | ||
56 | |||
57 | #include <dt-bindings/mfd/qcom-rpm.h> | ||
58 | |||
59 | rpm@108000 { | ||
60 | compatible = "qcom,rpm-msm8960"; | ||
61 | reg = <0x108000 0x1000>; | ||
62 | qcom,ipc = <&apcs 0x8 2>; | ||
63 | |||
64 | interrupts = <0 19 0>, <0 21 0>, <0 22 0>; | ||
65 | interrupt-names = "ack", "err", "wakeup"; | ||
66 | |||
67 | #address-cells = <1>; | ||
68 | #size-cells = <0>; | ||
69 | }; | ||
70 | |||
diff --git a/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt b/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt new file mode 100644 index 000000000000..c7a26ca8da12 --- /dev/null +++ b/Documentation/devicetree/bindings/misc/fsl,qoriq-mc.txt | |||
@@ -0,0 +1,40 @@ | |||
1 | * Freescale Management Complex | ||
2 | |||
3 | The Freescale Management Complex (fsl-mc) is a hardware resource | ||
4 | manager that manages specialized hardware objects used in | ||
5 | network-oriented packet processing applications. After the fsl-mc | ||
6 | block is enabled, pools of hardware resources are available, such as | ||
7 | queues, buffer pools, I/O interfaces. These resources are building | ||
8 | blocks that can be used to create functional hardware objects/devices | ||
9 | such as network interfaces, crypto accelerator instances, L2 switches, | ||
10 | etc. | ||
11 | |||
12 | Required properties: | ||
13 | |||
14 | - compatible | ||
15 | Value type: <string> | ||
16 | Definition: Must be "fsl,qoriq-mc". A Freescale Management Complex | ||
17 | compatible with this binding must have Block Revision | ||
18 | Registers BRR1 and BRR2 at offset 0x0BF8 and 0x0BFC in | ||
19 | the MC control register region. | ||
20 | |||
21 | - reg | ||
22 | Value type: <prop-encoded-array> | ||
23 | Definition: A standard property. Specifies one or two regions | ||
24 | defining the MC's registers: | ||
25 | |||
26 | -the first region is the command portal for the | ||
27 | this machine and must always be present | ||
28 | |||
29 | -the second region is the MC control registers. This | ||
30 | region may not be present in some scenarios, such | ||
31 | as in the device tree presented to a virtual machine. | ||
32 | |||
33 | Example: | ||
34 | |||
35 | fsl_mc: fsl-mc@80c000000 { | ||
36 | compatible = "fsl,qoriq-mc"; | ||
37 | reg = <0x00000008 0x0c000000 0 0x40>, /* MC portal base */ | ||
38 | <0x00000000 0x08340000 0 0x40000>; /* MC control reg */ | ||
39 | }; | ||
40 | |||
diff --git a/Documentation/devicetree/bindings/misc/nvidia,tegra20-apbmisc.txt b/Documentation/devicetree/bindings/misc/nvidia,tegra20-apbmisc.txt index b97b8bef1fe5..47b205cc9cc7 100644 --- a/Documentation/devicetree/bindings/misc/nvidia,tegra20-apbmisc.txt +++ b/Documentation/devicetree/bindings/misc/nvidia,tegra20-apbmisc.txt | |||
@@ -1,11 +1,10 @@ | |||
1 | NVIDIA Tegra20/Tegra30/Tegr114/Tegra124 apbmisc block | 1 | NVIDIA Tegra20/Tegra30/Tegr114/Tegra124 apbmisc block |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : should be: | 4 | - compatible : For Tegra20, must be "nvidia,tegra20-apbmisc". For Tegra30, |
5 | "nvidia,tegra20-apbmisc" | 5 | must be "nvidia,tegra30-apbmisc". Otherwise, must contain |
6 | "nvidia,tegra30-apbmisc" | 6 | "nvidia,<chip>-apbmisc", plus one of the above, where <chip> is tegra114, |
7 | "nvidia,tegra114-apbmisc" | 7 | tegra124, tegra132. |
8 | "nvidia,tegra124-apbmisc" | ||
9 | - reg: Should contain 2 entries: the first entry gives the physical address | 8 | - reg: Should contain 2 entries: the first entry gives the physical address |
10 | and length of the registers which contain revision and debug features. | 9 | and length of the registers which contain revision and debug features. |
11 | The second entry gives the physical address and length of the | 10 | The second entry gives the physical address and length of the |
diff --git a/Documentation/devicetree/bindings/mmc/mmc-pwrseq-emmc.txt b/Documentation/devicetree/bindings/mmc/mmc-pwrseq-emmc.txt new file mode 100644 index 000000000000..0cb827bf9435 --- /dev/null +++ b/Documentation/devicetree/bindings/mmc/mmc-pwrseq-emmc.txt | |||
@@ -0,0 +1,25 @@ | |||
1 | * The simple eMMC hardware reset provider | ||
2 | |||
3 | The purpose of this driver is to perform standard eMMC hw reset | ||
4 | procedure, as descibed by Jedec 4.4 specification. This procedure is | ||
5 | performed just after MMC core enabled power to the given mmc host (to | ||
6 | fix possible issues if bootloader has left eMMC card in initialized or | ||
7 | unknown state), and before performing complete system reboot (also in | ||
8 | case of emergency reboot call). The latter is needed on boards, which | ||
9 | doesn't have hardware reset logic connected to emmc card and (limited or | ||
10 | broken) ROM bootloaders are unable to read second stage from the emmc | ||
11 | card if the card is left in unknown or already initialized state. | ||
12 | |||
13 | Required properties: | ||
14 | - compatible : contains "mmc-pwrseq-emmc". | ||
15 | - reset-gpios : contains a GPIO specifier. The reset GPIO is asserted | ||
16 | and then deasserted to perform eMMC card reset. To perform | ||
17 | reset procedure as described in Jedec 4.4 specification, the | ||
18 | gpio line should be defined as GPIO_ACTIVE_LOW. | ||
19 | |||
20 | Example: | ||
21 | |||
22 | sdhci0_pwrseq { | ||
23 | compatible = "mmc-pwrseq-emmc"; | ||
24 | reset-gpios = <&gpio1 12 GPIO_ACTIVE_LOW>; | ||
25 | } | ||
diff --git a/Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.txt b/Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.txt new file mode 100644 index 000000000000..a462c50f19a8 --- /dev/null +++ b/Documentation/devicetree/bindings/mmc/mmc-pwrseq-simple.txt | |||
@@ -0,0 +1,25 @@ | |||
1 | * The simple MMC power sequence provider | ||
2 | |||
3 | The purpose of the simple MMC power sequence provider is to supports a set of | ||
4 | common properties between various SOC designs. It thus enables us to use the | ||
5 | same provider for several SOC designs. | ||
6 | |||
7 | Required properties: | ||
8 | - compatible : contains "mmc-pwrseq-simple". | ||
9 | |||
10 | Optional properties: | ||
11 | - reset-gpios : contains a list of GPIO specifiers. The reset GPIOs are asserted | ||
12 | at initialization and prior we start the power up procedure of the card. | ||
13 | They will be de-asserted right after the power has been provided to the | ||
14 | card. | ||
15 | - clocks : Must contain an entry for the entry in clock-names. | ||
16 | See ../clocks/clock-bindings.txt for details. | ||
17 | - clock-names : Must include the following entry: | ||
18 | "ext_clock" (External clock provided to the card). | ||
19 | |||
20 | Example: | ||
21 | |||
22 | sdhci0_pwrseq { | ||
23 | compatible = "mmc-pwrseq-simple"; | ||
24 | reset-gpios = <&gpio1 12 0>; | ||
25 | } | ||
diff --git a/Documentation/devicetree/bindings/mmc/mmc.txt b/Documentation/devicetree/bindings/mmc/mmc.txt index b52628b18a53..438899e8829b 100644 --- a/Documentation/devicetree/bindings/mmc/mmc.txt +++ b/Documentation/devicetree/bindings/mmc/mmc.txt | |||
@@ -64,7 +64,43 @@ Optional SDIO properties: | |||
64 | - keep-power-in-suspend: Preserves card power during a suspend/resume cycle | 64 | - keep-power-in-suspend: Preserves card power during a suspend/resume cycle |
65 | - enable-sdio-wakeup: Enables wake up of host system on SDIO IRQ assertion | 65 | - enable-sdio-wakeup: Enables wake up of host system on SDIO IRQ assertion |
66 | 66 | ||
67 | Example: | 67 | |
68 | MMC power sequences: | ||
69 | -------------------- | ||
70 | |||
71 | System on chip designs may specify a specific MMC power sequence. To | ||
72 | successfully detect an (e)MMC/SD/SDIO card, that power sequence must be | ||
73 | maintained while initializing the card. | ||
74 | |||
75 | Optional property: | ||
76 | - mmc-pwrseq: phandle to the MMC power sequence node. See "mmc-pwrseq-*" | ||
77 | for documentation of MMC power sequence bindings. | ||
78 | |||
79 | |||
80 | Use of Function subnodes | ||
81 | ------------------------ | ||
82 | |||
83 | On embedded systems the cards connected to a host may need additional | ||
84 | properties. These can be specified in subnodes to the host controller node. | ||
85 | The subnodes are identified by the standard 'reg' property. | ||
86 | Which information exactly can be specified depends on the bindings for the | ||
87 | SDIO function driver for the subnode, as specified by the compatible string. | ||
88 | |||
89 | Required host node properties when using function subnodes: | ||
90 | - #address-cells: should be one. The cell is the slot id. | ||
91 | - #size-cells: should be zero. | ||
92 | |||
93 | Required function subnode properties: | ||
94 | - compatible: name of SDIO function following generic names recommended practice | ||
95 | - reg: Must contain the SDIO function number of the function this subnode | ||
96 | describes. A value of 0 denotes the memory SD function, values from | ||
97 | 1 to 7 denote the SDIO functions. | ||
98 | |||
99 | |||
100 | Examples | ||
101 | -------- | ||
102 | |||
103 | Basic example: | ||
68 | 104 | ||
69 | sdhci@ab000000 { | 105 | sdhci@ab000000 { |
70 | compatible = "sdhci"; | 106 | compatible = "sdhci"; |
@@ -77,4 +113,28 @@ sdhci@ab000000 { | |||
77 | max-frequency = <50000000>; | 113 | max-frequency = <50000000>; |
78 | keep-power-in-suspend; | 114 | keep-power-in-suspend; |
79 | enable-sdio-wakeup; | 115 | enable-sdio-wakeup; |
116 | mmc-pwrseq = <&sdhci0_pwrseq> | ||
80 | } | 117 | } |
118 | |||
119 | Example with sdio function subnode: | ||
120 | |||
121 | mmc3: mmc@01c12000 { | ||
122 | #address-cells = <1>; | ||
123 | #size-cells = <0>; | ||
124 | |||
125 | pinctrl-names = "default"; | ||
126 | pinctrl-0 = <&mmc3_pins_a>; | ||
127 | vmmc-supply = <®_vmmc3>; | ||
128 | bus-width = <4>; | ||
129 | non-removable; | ||
130 | mmc-pwrseq = <&sdhci0_pwrseq> | ||
131 | status = "okay"; | ||
132 | |||
133 | brcmf: bcrmf@1 { | ||
134 | reg = <1>; | ||
135 | compatible = "brcm,bcm43xx-fmac"; | ||
136 | interrupt-parent = <&pio>; | ||
137 | interrupts = <10 8>; /* PH10 / EINT10 */ | ||
138 | interrupt-names = "host-wake"; | ||
139 | }; | ||
140 | }; | ||
diff --git a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt index f357c16ea815..15b8368ee1f2 100644 --- a/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt +++ b/Documentation/devicetree/bindings/mmc/nvidia,tegra20-sdhci.txt | |||
@@ -7,7 +7,11 @@ This file documents differences between the core properties described | |||
7 | by mmc.txt and the properties used by the sdhci-tegra driver. | 7 | by mmc.txt and the properties used by the sdhci-tegra driver. |
8 | 8 | ||
9 | Required properties: | 9 | Required properties: |
10 | - compatible : Should be "nvidia,<chip>-sdhci" | 10 | - compatible : For Tegra20, must contain "nvidia,tegra20-sdhci". |
11 | For Tegra30, must contain "nvidia,tegra30-sdhci". For Tegra114, | ||
12 | must contain "nvidia,tegra114-sdhci". For Tegra124, must contain | ||
13 | "nvidia,tegra124-sdhci". Otherwise, must contain "nvidia,<chip>-sdhci", | ||
14 | plus one of the above, where <chip> is tegra132 or tegra210. | ||
11 | - clocks : Must contain one entry, for the module clock. | 15 | - clocks : Must contain one entry, for the module clock. |
12 | See ../clocks/clock-bindings.txt for details. | 16 | See ../clocks/clock-bindings.txt for details. |
13 | - resets : Must contain an entry for each entry in reset-names. | 17 | - resets : Must contain an entry for each entry in reset-names. |
diff --git a/Documentation/devicetree/bindings/mmc/sdhci-fujitsu.txt b/Documentation/devicetree/bindings/mmc/sdhci-fujitsu.txt new file mode 100644 index 000000000000..de2c53cff4f1 --- /dev/null +++ b/Documentation/devicetree/bindings/mmc/sdhci-fujitsu.txt | |||
@@ -0,0 +1,30 @@ | |||
1 | * Fujitsu SDHCI controller | ||
2 | |||
3 | This file documents differences between the core properties in mmc.txt | ||
4 | and the properties used by the sdhci_f_sdh30 driver. | ||
5 | |||
6 | Required properties: | ||
7 | - compatible: "fujitsu,mb86s70-sdhci-3.0" | ||
8 | - clocks: Must contain an entry for each entry in clock-names. It is a | ||
9 | list of phandles and clock-specifier pairs. | ||
10 | See ../clocks/clock-bindings.txt for details. | ||
11 | - clock-names: Should contain the following two entries: | ||
12 | "iface" - clock used for sdhci interface | ||
13 | "core" - core clock for sdhci controller | ||
14 | |||
15 | Optional properties: | ||
16 | - vqmmc-supply: phandle to the regulator device tree node, mentioned | ||
17 | as the VCCQ/VDD_IO supply in the eMMC/SD specs. | ||
18 | |||
19 | Example: | ||
20 | |||
21 | sdhci1: mmc@36600000 { | ||
22 | compatible = "fujitsu,mb86s70-sdhci-3.0"; | ||
23 | reg = <0 0x36600000 0x1000>; | ||
24 | interrupts = <0 172 0x4>, | ||
25 | <0 173 0x4>; | ||
26 | bus-width = <4>; | ||
27 | vqmmc-supply = <&vccq_sdhci1>; | ||
28 | clocks = <&clock 2 2 0>, <&clock 2 3 0>; | ||
29 | clock-names = "iface", "core"; | ||
30 | }; | ||
diff --git a/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt b/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt index 4dd6deb90719..3d1b449d6097 100644 --- a/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt +++ b/Documentation/devicetree/bindings/mmc/sdhci-pxa.txt | |||
@@ -9,9 +9,13 @@ Required properties: | |||
9 | - reg: | 9 | - reg: |
10 | * for "mrvl,pxav2-mmc" and "mrvl,pxav3-mmc", one register area for | 10 | * for "mrvl,pxav2-mmc" and "mrvl,pxav3-mmc", one register area for |
11 | the SDHCI registers. | 11 | the SDHCI registers. |
12 | * for "marvell,armada-380-sdhci", two register areas. The first one | 12 | |
13 | for the SDHCI registers themselves, and the second one for the | 13 | * for "marvell,armada-380-sdhci", three register areas. The first |
14 | AXI/Mbus bridge registers of the SDHCI unit. | 14 | one for the SDHCI registers themselves, the second one for the |
15 | AXI/Mbus bridge registers of the SDHCI unit, the third one for the | ||
16 | SDIO3 Configuration register | ||
17 | - reg names: should be "sdhci", "mbus", "conf-sdio3". only mandatory | ||
18 | for "marvell,armada-380-sdhci" | ||
15 | - clocks: Array of clocks required for SDHCI; requires at least one for | 19 | - clocks: Array of clocks required for SDHCI; requires at least one for |
16 | I/O clock. | 20 | I/O clock. |
17 | - clock-names: Array of names corresponding to clocks property; shall be | 21 | - clock-names: Array of names corresponding to clocks property; shall be |
@@ -35,7 +39,10 @@ sdhci@d4280800 { | |||
35 | 39 | ||
36 | sdhci@d8000 { | 40 | sdhci@d8000 { |
37 | compatible = "marvell,armada-380-sdhci"; | 41 | compatible = "marvell,armada-380-sdhci"; |
38 | reg = <0xd8000 0x1000>, <0xdc000 0x100>; | 42 | reg-names = "sdhci", "mbus", "conf-sdio3"; |
43 | reg = <0xd8000 0x1000>, | ||
44 | <0xdc000 0x100>; | ||
45 | <0x18454 0x4>; | ||
39 | interrupts = <0 25 0x4>; | 46 | interrupts = <0 25 0x4>; |
40 | clocks = <&gateclk 17>; | 47 | clocks = <&gateclk 17>; |
41 | clock-names = "io"; | 48 | clock-names = "io"; |
diff --git a/Documentation/devicetree/bindings/mtd/atmel-nand.txt b/Documentation/devicetree/bindings/mtd/atmel-nand.txt index 1fe6dde98499..7d4c8eb775a5 100644 --- a/Documentation/devicetree/bindings/mtd/atmel-nand.txt +++ b/Documentation/devicetree/bindings/mtd/atmel-nand.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | Atmel NAND flash | 1 | Atmel NAND flash |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : "atmel,at91rm9200-nand". | 4 | - compatible : should be "atmel,at91rm9200-nand" or "atmel,sama5d4-nand". |
5 | - reg : should specify localbus address and size used for the chip, | 5 | - reg : should specify localbus address and size used for the chip, |
6 | and hardware ECC controller if available. | 6 | and hardware ECC controller if available. |
7 | If the hardware ECC is PMECC, it should contain address and size for | 7 | If the hardware ECC is PMECC, it should contain address and size for |
diff --git a/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt b/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt index 823d13412195..4461dc71cb10 100644 --- a/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt +++ b/Documentation/devicetree/bindings/mtd/fsl-quadspi.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | * Freescale Quad Serial Peripheral Interface(QuadSPI) | 1 | * Freescale Quad Serial Peripheral Interface(QuadSPI) |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : Should be "fsl,vf610-qspi" | 4 | - compatible : Should be "fsl,vf610-qspi" or "fsl,imx6sx-qspi" |
5 | - reg : the first contains the register location and length, | 5 | - reg : the first contains the register location and length, |
6 | the second contains the memory mapping address and length | 6 | the second contains the memory mapping address and length |
7 | - reg-names: Should contain the reg names "QuadSPI" and "QuadSPI-memory" | 7 | - reg-names: Should contain the reg names "QuadSPI" and "QuadSPI-memory" |
diff --git a/Documentation/devicetree/bindings/mtd/fsmc-nand.txt b/Documentation/devicetree/bindings/mtd/fsmc-nand.txt index ec42935f3908..5235cbc551b0 100644 --- a/Documentation/devicetree/bindings/mtd/fsmc-nand.txt +++ b/Documentation/devicetree/bindings/mtd/fsmc-nand.txt | |||
@@ -9,7 +9,7 @@ Required properties: | |||
9 | Optional properties: | 9 | Optional properties: |
10 | - bank-width : Width (in bytes) of the device. If not present, the width | 10 | - bank-width : Width (in bytes) of the device. If not present, the width |
11 | defaults to 1 byte | 11 | defaults to 1 byte |
12 | - nand-skip-bbtscan: Indicates the the BBT scanning should be skipped | 12 | - nand-skip-bbtscan: Indicates the BBT scanning should be skipped |
13 | - timings: array of 6 bytes for NAND timings. The meanings of these bytes | 13 | - timings: array of 6 bytes for NAND timings. The meanings of these bytes |
14 | are: | 14 | are: |
15 | byte 0 TCLR : CLE to RE delay in number of AHB clock cycles, only 4 bits | 15 | byte 0 TCLR : CLE to RE delay in number of AHB clock cycles, only 4 bits |
diff --git a/Documentation/devicetree/bindings/mtd/gpmi-nand.txt b/Documentation/devicetree/bindings/mtd/gpmi-nand.txt index a011fdf61dbf..d02acaff3c35 100644 --- a/Documentation/devicetree/bindings/mtd/gpmi-nand.txt +++ b/Documentation/devicetree/bindings/mtd/gpmi-nand.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | * Freescale General-Purpose Media Interface (GPMI) | 1 | * Freescale General-Purpose Media Interface (GPMI) |
2 | 2 | ||
3 | The GPMI nand controller provides an interface to control the | 3 | The GPMI nand controller provides an interface to control the |
4 | NAND flash chips. We support only one NAND chip now. | 4 | NAND flash chips. |
5 | 5 | ||
6 | Required properties: | 6 | Required properties: |
7 | - compatible : should be "fsl,<chip>-gpmi-nand" | 7 | - compatible : should be "fsl,<chip>-gpmi-nand" |
diff --git a/Documentation/devicetree/bindings/mtd/hisi504-nand.txt b/Documentation/devicetree/bindings/mtd/hisi504-nand.txt new file mode 100644 index 000000000000..2e35f0662912 --- /dev/null +++ b/Documentation/devicetree/bindings/mtd/hisi504-nand.txt | |||
@@ -0,0 +1,47 @@ | |||
1 | Hisilicon Hip04 Soc NAND controller DT binding | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible: Should be "hisilicon,504-nfc". | ||
6 | - reg: The first contains base physical address and size of | ||
7 | NAND controller's registers. The second contains base | ||
8 | physical address and size of NAND controller's buffer. | ||
9 | - interrupts: Interrupt number for nfc. | ||
10 | - nand-bus-width: See nand.txt. | ||
11 | - nand-ecc-mode: Support none and hw ecc mode. | ||
12 | - #address-cells: Partition address, should be set 1. | ||
13 | - #size-cells: Partition size, should be set 1. | ||
14 | |||
15 | Optional properties: | ||
16 | |||
17 | - nand-ecc-strength: Number of bits to correct per ECC step. | ||
18 | - nand-ecc-step-size: Number of data bytes covered by a single ECC step. | ||
19 | |||
20 | The following ECC strength and step size are currently supported: | ||
21 | |||
22 | - nand-ecc-strength = <16>, nand-ecc-step-size = <1024> | ||
23 | |||
24 | Flash chip may optionally contain additional sub-nodes describing partitions of | ||
25 | the address space. See partition.txt for more detail. | ||
26 | |||
27 | Example: | ||
28 | |||
29 | nand: nand@4020000 { | ||
30 | compatible = "hisilicon,504-nfc"; | ||
31 | reg = <0x4020000 0x10000>, <0x5000000 0x1000>; | ||
32 | interrupts = <0 379 4>; | ||
33 | nand-bus-width = <8>; | ||
34 | nand-ecc-mode = "hw"; | ||
35 | nand-ecc-strength = <16>; | ||
36 | nand-ecc-step-size = <1024>; | ||
37 | #address-cells = <1>; | ||
38 | #size-cells = <1>; | ||
39 | |||
40 | partition@0 { | ||
41 | label = "nand_text"; | ||
42 | reg = <0x00000000 0x00400000>; | ||
43 | }; | ||
44 | |||
45 | ... | ||
46 | |||
47 | }; | ||
diff --git a/Documentation/devicetree/bindings/mtd/mtd-physmap.txt b/Documentation/devicetree/bindings/mtd/mtd-physmap.txt index 6b9f680cb579..4a0a48bf4ecb 100644 --- a/Documentation/devicetree/bindings/mtd/mtd-physmap.txt +++ b/Documentation/devicetree/bindings/mtd/mtd-physmap.txt | |||
@@ -36,6 +36,11 @@ are defined: | |||
36 | - vendor-id : Contains the flash chip's vendor id (1 byte). | 36 | - vendor-id : Contains the flash chip's vendor id (1 byte). |
37 | - device-id : Contains the flash chip's device id (1 byte). | 37 | - device-id : Contains the flash chip's device id (1 byte). |
38 | 38 | ||
39 | For ROM compatible devices (and ROM fallback from cfi-flash), the following | ||
40 | additional (optional) property is defined: | ||
41 | |||
42 | - erase-size : The chip's physical erase block size in bytes. | ||
43 | |||
39 | The device tree may optionally contain sub-nodes describing partitions of the | 44 | The device tree may optionally contain sub-nodes describing partitions of the |
40 | address space. See partition.txt for more detail. | 45 | address space. See partition.txt for more detail. |
41 | 46 | ||
diff --git a/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt b/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt index 42409bfe04c4..33df3932168e 100644 --- a/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt +++ b/Documentation/devicetree/bindings/net/amd-xgbe-phy.txt | |||
@@ -7,17 +7,38 @@ Required properties: | |||
7 | - SerDes Rx/Tx registers | 7 | - SerDes Rx/Tx registers |
8 | - SerDes integration registers (1/2) | 8 | - SerDes integration registers (1/2) |
9 | - SerDes integration registers (2/2) | 9 | - SerDes integration registers (2/2) |
10 | - interrupt-parent: Should be the phandle for the interrupt controller | ||
11 | that services interrupts for this device | ||
12 | - interrupts: Should contain the amd-xgbe-phy interrupt. | ||
10 | 13 | ||
11 | Optional properties: | 14 | Optional properties: |
12 | - amd,speed-set: Speed capabilities of the device | 15 | - amd,speed-set: Speed capabilities of the device |
13 | 0 - 1GbE and 10GbE (default) | 16 | 0 - 1GbE and 10GbE (default) |
14 | 1 - 2.5GbE and 10GbE | 17 | 1 - 2.5GbE and 10GbE |
15 | 18 | ||
19 | The following optional properties are represented by an array with each | ||
20 | value corresponding to a particular speed. The first array value represents | ||
21 | the setting for the 1GbE speed, the second value for the 2.5GbE speed and | ||
22 | the third value for the 10GbE speed. All three values are required if the | ||
23 | property is used. | ||
24 | - amd,serdes-blwc: Baseline wandering correction enablement | ||
25 | 0 - Off | ||
26 | 1 - On | ||
27 | - amd,serdes-cdr-rate: CDR rate speed selection | ||
28 | - amd,serdes-pq-skew: PQ (data sampling) skew | ||
29 | - amd,serdes-tx-amp: TX amplitude boost | ||
30 | |||
16 | Example: | 31 | Example: |
17 | xgbe_phy@e1240800 { | 32 | xgbe_phy@e1240800 { |
18 | compatible = "amd,xgbe-phy-seattle-v1a", "ethernet-phy-ieee802.3-c45"; | 33 | compatible = "amd,xgbe-phy-seattle-v1a", "ethernet-phy-ieee802.3-c45"; |
19 | reg = <0 0xe1240800 0 0x00400>, | 34 | reg = <0 0xe1240800 0 0x00400>, |
20 | <0 0xe1250000 0 0x00060>, | 35 | <0 0xe1250000 0 0x00060>, |
21 | <0 0xe1250080 0 0x00004>; | 36 | <0 0xe1250080 0 0x00004>; |
37 | interrupt-parent = <&gic>; | ||
38 | interrupts = <0 323 4>; | ||
22 | amd,speed-set = <0>; | 39 | amd,speed-set = <0>; |
40 | amd,serdes-blwc = <1>, <1>, <0>; | ||
41 | amd,serdes-cdr-rate = <2>, <2>, <7>; | ||
42 | amd,serdes-pq-skew = <10>, <10>, <30>; | ||
43 | amd,serdes-tx-amp = <15>, <15>, <10>; | ||
23 | }; | 44 | }; |
diff --git a/Documentation/devicetree/bindings/net/broadcom-systemport.txt b/Documentation/devicetree/bindings/net/broadcom-systemport.txt index aa7ad622259d..877da34145b0 100644 --- a/Documentation/devicetree/bindings/net/broadcom-systemport.txt +++ b/Documentation/devicetree/bindings/net/broadcom-systemport.txt | |||
@@ -3,7 +3,7 @@ | |||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: should be one of "brcm,systemport-v1.00" or "brcm,systemport" | 4 | - compatible: should be one of "brcm,systemport-v1.00" or "brcm,systemport" |
5 | - reg: address and length of the register set for the device. | 5 | - reg: address and length of the register set for the device. |
6 | - interrupts: interrupts for the device, first cell must be for the the rx | 6 | - interrupts: interrupts for the device, first cell must be for the rx |
7 | interrupts, and the second cell should be for the transmit queues. An | 7 | interrupts, and the second cell should be for the transmit queues. An |
8 | optional third interrupt cell for Wake-on-LAN can be specified | 8 | optional third interrupt cell for Wake-on-LAN can be specified |
9 | - local-mac-address: Ethernet MAC address (48 bits) of this adapter | 9 | - local-mac-address: Ethernet MAC address (48 bits) of this adapter |
diff --git a/Documentation/devicetree/bindings/net/davicom-dm9000.txt b/Documentation/devicetree/bindings/net/davicom-dm9000.txt index 28767ed7c1bd..5224bf05f6f8 100644 --- a/Documentation/devicetree/bindings/net/davicom-dm9000.txt +++ b/Documentation/devicetree/bindings/net/davicom-dm9000.txt | |||
@@ -11,6 +11,8 @@ Required properties: | |||
11 | Optional properties: | 11 | Optional properties: |
12 | - davicom,no-eeprom : Configuration EEPROM is not available | 12 | - davicom,no-eeprom : Configuration EEPROM is not available |
13 | - davicom,ext-phy : Use external PHY | 13 | - davicom,ext-phy : Use external PHY |
14 | - reset-gpios : phandle of gpio that will be used to reset chip during probe | ||
15 | - vcc-supply : phandle of regulator that will be used to enable power to chip | ||
14 | 16 | ||
15 | Example: | 17 | Example: |
16 | 18 | ||
@@ -21,4 +23,6 @@ Example: | |||
21 | interrupts = <7 4>; | 23 | interrupts = <7 4>; |
22 | local-mac-address = [00 00 de ad be ef]; | 24 | local-mac-address = [00 00 de ad be ef]; |
23 | davicom,no-eeprom; | 25 | davicom,no-eeprom; |
26 | reset-gpios = <&gpf 12 GPIO_ACTIVE_LOW>; | ||
27 | vcc-supply = <ð0_power>; | ||
24 | }; | 28 | }; |
diff --git a/Documentation/devicetree/bindings/net/fsl-fec.txt b/Documentation/devicetree/bindings/net/fsl-fec.txt index 0c8775c45798..a9eb611bee68 100644 --- a/Documentation/devicetree/bindings/net/fsl-fec.txt +++ b/Documentation/devicetree/bindings/net/fsl-fec.txt | |||
@@ -22,6 +22,8 @@ Optional properties: | |||
22 | - fsl,num-rx-queues : The property is valid for enet-avb IP, which supports | 22 | - fsl,num-rx-queues : The property is valid for enet-avb IP, which supports |
23 | hw multi queues. Should specify the rx queue number, otherwise set rx queue | 23 | hw multi queues. Should specify the rx queue number, otherwise set rx queue |
24 | number to 1. | 24 | number to 1. |
25 | - fsl,magic-packet : If present, indicates that the hardware supports waking | ||
26 | up via magic packet. | ||
25 | 27 | ||
26 | Optional subnodes: | 28 | Optional subnodes: |
27 | - mdio : specifies the mdio bus in the FEC, used as a container for phy nodes | 29 | - mdio : specifies the mdio bus in the FEC, used as a container for phy nodes |
diff --git a/Documentation/devicetree/bindings/net/fsl-tsec-phy.txt b/Documentation/devicetree/bindings/net/fsl-tsec-phy.txt index be6ea8960f20..1e97532a0b79 100644 --- a/Documentation/devicetree/bindings/net/fsl-tsec-phy.txt +++ b/Documentation/devicetree/bindings/net/fsl-tsec-phy.txt | |||
@@ -8,7 +8,16 @@ of how to define a PHY. | |||
8 | Required properties: | 8 | Required properties: |
9 | - reg : Offset and length of the register set for the device | 9 | - reg : Offset and length of the register set for the device |
10 | - compatible : Should define the compatible device type for the | 10 | - compatible : Should define the compatible device type for the |
11 | mdio. Currently, this is most likely to be "fsl,gianfar-mdio" | 11 | mdio. Currently supported strings/devices are: |
12 | - "fsl,gianfar-tbi" | ||
13 | - "fsl,gianfar-mdio" | ||
14 | - "fsl,etsec2-tbi" | ||
15 | - "fsl,etsec2-mdio" | ||
16 | - "fsl,ucc-mdio" | ||
17 | - "fsl,fman-mdio" | ||
18 | When device_type is "mdio", the following strings are also considered: | ||
19 | - "gianfar" | ||
20 | - "ucc_geth_phy" | ||
12 | 21 | ||
13 | Example: | 22 | Example: |
14 | 23 | ||
diff --git a/Documentation/devicetree/bindings/net/hisilicon-hip04-net.txt b/Documentation/devicetree/bindings/net/hisilicon-hip04-net.txt new file mode 100644 index 000000000000..988fc694b663 --- /dev/null +++ b/Documentation/devicetree/bindings/net/hisilicon-hip04-net.txt | |||
@@ -0,0 +1,88 @@ | |||
1 | Hisilicon hip04 Ethernet Controller | ||
2 | |||
3 | * Ethernet controller node | ||
4 | |||
5 | Required properties: | ||
6 | - compatible: should be "hisilicon,hip04-mac". | ||
7 | - reg: address and length of the register set for the device. | ||
8 | - interrupts: interrupt for the device. | ||
9 | - port-handle: <phandle port channel> | ||
10 | phandle, specifies a reference to the syscon ppe node | ||
11 | port, port number connected to the controller | ||
12 | channel, recv channel start from channel * number (RX_DESC_NUM) | ||
13 | - phy-mode: see ethernet.txt [1]. | ||
14 | |||
15 | Optional properties: | ||
16 | - phy-handle: see ethernet.txt [1]. | ||
17 | |||
18 | [1] Documentation/devicetree/bindings/net/ethernet.txt | ||
19 | |||
20 | |||
21 | * Ethernet ppe node: | ||
22 | Control rx & tx fifos of all ethernet controllers. | ||
23 | Have 2048 recv channels shared by all ethernet controllers, only if no overlap. | ||
24 | Each controller's recv channel start from channel * number (RX_DESC_NUM). | ||
25 | |||
26 | Required properties: | ||
27 | - compatible: "hisilicon,hip04-ppe", "syscon". | ||
28 | - reg: address and length of the register set for the device. | ||
29 | |||
30 | |||
31 | * MDIO bus node: | ||
32 | |||
33 | Required properties: | ||
34 | |||
35 | - compatible: should be "hisilicon,hip04-mdio". | ||
36 | - Inherits from MDIO bus node binding [2] | ||
37 | [2] Documentation/devicetree/bindings/net/phy.txt | ||
38 | |||
39 | Example: | ||
40 | mdio { | ||
41 | compatible = "hisilicon,hip04-mdio"; | ||
42 | reg = <0x28f1000 0x1000>; | ||
43 | #address-cells = <1>; | ||
44 | #size-cells = <0>; | ||
45 | |||
46 | phy0: ethernet-phy@0 { | ||
47 | compatible = "ethernet-phy-ieee802.3-c22"; | ||
48 | reg = <0>; | ||
49 | marvell,reg-init = <18 0x14 0 0x8001>; | ||
50 | }; | ||
51 | |||
52 | phy1: ethernet-phy@1 { | ||
53 | compatible = "ethernet-phy-ieee802.3-c22"; | ||
54 | reg = <1>; | ||
55 | marvell,reg-init = <18 0x14 0 0x8001>; | ||
56 | }; | ||
57 | }; | ||
58 | |||
59 | ppe: ppe@28c0000 { | ||
60 | compatible = "hisilicon,hip04-ppe", "syscon"; | ||
61 | reg = <0x28c0000 0x10000>; | ||
62 | }; | ||
63 | |||
64 | fe: ethernet@28b0000 { | ||
65 | compatible = "hisilicon,hip04-mac"; | ||
66 | reg = <0x28b0000 0x10000>; | ||
67 | interrupts = <0 413 4>; | ||
68 | phy-mode = "mii"; | ||
69 | port-handle = <&ppe 31 0>; | ||
70 | }; | ||
71 | |||
72 | ge0: ethernet@2800000 { | ||
73 | compatible = "hisilicon,hip04-mac"; | ||
74 | reg = <0x2800000 0x10000>; | ||
75 | interrupts = <0 402 4>; | ||
76 | phy-mode = "sgmii"; | ||
77 | port-handle = <&ppe 0 1>; | ||
78 | phy-handle = <&phy0>; | ||
79 | }; | ||
80 | |||
81 | ge8: ethernet@2880000 { | ||
82 | compatible = "hisilicon,hip04-mac"; | ||
83 | reg = <0x2880000 0x10000>; | ||
84 | interrupts = <0 410 4>; | ||
85 | phy-mode = "sgmii"; | ||
86 | port-handle = <&ppe 8 2>; | ||
87 | phy-handle = <&phy1>; | ||
88 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/keystone-netcp.txt b/Documentation/devicetree/bindings/net/keystone-netcp.txt new file mode 100644 index 000000000000..f9c07710478d --- /dev/null +++ b/Documentation/devicetree/bindings/net/keystone-netcp.txt | |||
@@ -0,0 +1,197 @@ | |||
1 | This document describes the device tree bindings associated with the | ||
2 | keystone network coprocessor(NetCP) driver support. | ||
3 | |||
4 | The network coprocessor (NetCP) is a hardware accelerator that processes | ||
5 | Ethernet packets. NetCP has a gigabit Ethernet (GbE) subsytem with a ethernet | ||
6 | switch sub-module to send and receive packets. NetCP also includes a packet | ||
7 | accelerator (PA) module to perform packet classification operations such as | ||
8 | header matching, and packet modification operations such as checksum | ||
9 | generation. NetCP can also optionally include a Security Accelerator (SA) | ||
10 | capable of performing IPSec operations on ingress/egress packets. | ||
11 | |||
12 | Keystone II SoC's also have a 10 Gigabit Ethernet Subsystem (XGbE) which | ||
13 | includes a 3-port Ethernet switch sub-module capable of 10Gb/s and 1Gb/s rates | ||
14 | per Ethernet port. | ||
15 | |||
16 | Keystone NetCP driver has a plug-in module architecture where each of the NetCP | ||
17 | sub-modules exist as a loadable kernel module which plug in to the netcp core. | ||
18 | These sub-modules are represented as "netcp-devices" in the dts bindings. It is | ||
19 | mandatory to have the ethernet switch sub-module for the ethernet interface to | ||
20 | be operational. Any other sub-module like the PA is optional. | ||
21 | |||
22 | NetCP Ethernet SubSystem Layout: | ||
23 | |||
24 | ----------------------------- | ||
25 | NetCP subsystem(10G or 1G) | ||
26 | ----------------------------- | ||
27 | | | ||
28 | |-> NetCP Devices -> | | ||
29 | | |-> GBE/XGBE Switch | ||
30 | | | | ||
31 | | |-> Packet Accelerator | ||
32 | | | | ||
33 | | |-> Security Accelerator | ||
34 | | | ||
35 | | | ||
36 | | | ||
37 | |-> NetCP Interfaces -> | | ||
38 | |-> Ethernet Port 0 | ||
39 | | | ||
40 | |-> Ethernet Port 1 | ||
41 | | | ||
42 | |-> Ethernet Port 2 | ||
43 | | | ||
44 | |-> Ethernet Port 3 | ||
45 | |||
46 | |||
47 | NetCP subsystem properties: | ||
48 | Required properties: | ||
49 | - compatible: Should be "ti,netcp-1.0" | ||
50 | - clocks: phandle to the reference clocks for the subsystem. | ||
51 | - dma-id: Navigator packet dma instance id. | ||
52 | |||
53 | Optional properties: | ||
54 | - reg: register location and the size for the following register | ||
55 | regions in the specified order. | ||
56 | - Efuse MAC address register | ||
57 | - dma-coherent: Present if dma operations are coherent | ||
58 | - big-endian: Keystone devices can be operated in a mode where the DSP is in | ||
59 | the big endian mode. In such cases enable this option. This | ||
60 | option should also be enabled if the ARM is operated in | ||
61 | big endian mode with the DSP in little endian. | ||
62 | |||
63 | NetCP device properties: Device specification for NetCP sub-modules. | ||
64 | 1Gb/10Gb (gbe/xgbe) ethernet switch sub-module specifications. | ||
65 | Required properties: | ||
66 | - label: Must be "netcp-gbe" for 1Gb & "netcp-xgbe" for 10Gb. | ||
67 | - reg: register location and the size for the following register | ||
68 | regions in the specified order. | ||
69 | - subsystem registers | ||
70 | - serdes registers | ||
71 | - tx-channel: the navigator packet dma channel name for tx. | ||
72 | - tx-queue: the navigator queue number associated with the tx dma channel. | ||
73 | - interfaces: specification for each of the switch port to be registered as a | ||
74 | network interface in the stack. | ||
75 | -- slave-port: Switch port number, 0 based numbering. | ||
76 | -- link-interface: type of link interface, supported options are | ||
77 | - mac<->mac auto negotiate mode: 0 | ||
78 | - mac<->phy mode: 1 | ||
79 | - mac<->mac forced mode: 2 | ||
80 | - mac<->fiber mode: 3 | ||
81 | - mac<->phy mode with no mdio: 4 | ||
82 | - 10Gb mac<->phy mode : 10 | ||
83 | - 10Gb mac<->mac forced mode : 11 | ||
84 | ----phy-handle: phandle to PHY device | ||
85 | |||
86 | Optional properties: | ||
87 | - enable-ale: NetCP driver keeps the address learning feature in the ethernet | ||
88 | switch module disabled. This attribute is to enable the address | ||
89 | learning. | ||
90 | - secondary-slave-ports: specification for each of the switch port not be | ||
91 | registered as a network interface. NetCP driver | ||
92 | will only initialize these ports and attach PHY | ||
93 | driver to them if needed. | ||
94 | |||
95 | NetCP interface properties: Interface specification for NetCP sub-modules. | ||
96 | Required properties: | ||
97 | - rx-channel: the navigator packet dma channel name for rx. | ||
98 | - rx-queue: the navigator queue number associated with rx dma channel. | ||
99 | - rx-pool: specifies the number of descriptors to be used & the region-id | ||
100 | for creating the rx descriptor pool. | ||
101 | - tx-pool: specifies the number of descriptors to be used & the region-id | ||
102 | for creating the tx descriptor pool. | ||
103 | - rx-queue-depth: number of descriptors in each of the free descriptor | ||
104 | queue (FDQ) for the pktdma Rx flow. There can be at | ||
105 | present a maximum of 4 queues per Rx flow. | ||
106 | - rx-buffer-size: the buffer size for each of the Rx flow FDQ. | ||
107 | - tx-completion-queue: the navigator queue number where the descriptors are | ||
108 | recycled after Tx DMA completion. | ||
109 | |||
110 | Optional properties: | ||
111 | - efuse-mac: If this is 1, then the MAC address for the interface is | ||
112 | obtained from the device efuse mac address register | ||
113 | - local-mac-address: the driver is designed to use the of_get_mac_address api | ||
114 | only if efuse-mac is 0. When efuse-mac is 0, the MAC | ||
115 | address is obtained from local-mac-address. If this | ||
116 | attribute is not present, then the driver will use a | ||
117 | random MAC address. | ||
118 | - "netcp-device label": phandle to the device specification for each of NetCP | ||
119 | sub-module attached to this interface. | ||
120 | |||
121 | Example binding: | ||
122 | |||
123 | netcp: netcp@2090000 { | ||
124 | reg = <0x2620110 0x8>; | ||
125 | reg-names = "efuse"; | ||
126 | compatible = "ti,netcp-1.0"; | ||
127 | #address-cells = <1>; | ||
128 | #size-cells = <1>; | ||
129 | ranges; | ||
130 | |||
131 | clocks = <&papllclk>, <&clkcpgmac>, <&chipclk12>; | ||
132 | dma-coherent; | ||
133 | /* big-endian; */ | ||
134 | dma-id = <0>; | ||
135 | |||
136 | netcp-devices { | ||
137 | #address-cells = <1>; | ||
138 | #size-cells = <1>; | ||
139 | ranges; | ||
140 | gbe@0x2090000 { | ||
141 | label = "netcp-gbe"; | ||
142 | reg = <0x2090000 0xf00>; | ||
143 | /* enable-ale; */ | ||
144 | tx-queue = <648>; | ||
145 | tx-channel = <8>; | ||
146 | |||
147 | interfaces { | ||
148 | gbe0: interface-0 { | ||
149 | slave-port = <0>; | ||
150 | link-interface = <4>; | ||
151 | }; | ||
152 | gbe1: interface-1 { | ||
153 | slave-port = <1>; | ||
154 | link-interface = <4>; | ||
155 | }; | ||
156 | }; | ||
157 | |||
158 | secondary-slave-ports { | ||
159 | port-2 { | ||
160 | slave-port = <2>; | ||
161 | link-interface = <2>; | ||
162 | }; | ||
163 | port-3 { | ||
164 | slave-port = <3>; | ||
165 | link-interface = <2>; | ||
166 | }; | ||
167 | }; | ||
168 | }; | ||
169 | }; | ||
170 | |||
171 | netcp-interfaces { | ||
172 | interface-0 { | ||
173 | rx-channel = <22>; | ||
174 | rx-pool = <1024 12>; | ||
175 | tx-pool = <1024 12>; | ||
176 | rx-queue-depth = <128 128 0 0>; | ||
177 | rx-buffer-size = <1518 4096 0 0>; | ||
178 | rx-queue = <8704>; | ||
179 | tx-completion-queue = <8706>; | ||
180 | efuse-mac = <1>; | ||
181 | netcp-gbe = <&gbe0>; | ||
182 | |||
183 | }; | ||
184 | interface-1 { | ||
185 | rx-channel = <23>; | ||
186 | rx-pool = <1024 12>; | ||
187 | tx-pool = <1024 12>; | ||
188 | rx-queue-depth = <128 128 0 0>; | ||
189 | rx-buffer-size = <1518 4096 0 0>; | ||
190 | rx-queue = <8705>; | ||
191 | tx-completion-queue = <8707>; | ||
192 | efuse-mac = <0>; | ||
193 | local-mac-address = [02 18 31 7e 3e 6f]; | ||
194 | netcp-gbe = <&gbe1>; | ||
195 | }; | ||
196 | }; | ||
197 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/nfc/st21nfca.txt b/Documentation/devicetree/bindings/net/nfc/st21nfca.txt index e4faa2e8dfeb..7bb2e213d6f9 100644 --- a/Documentation/devicetree/bindings/net/nfc/st21nfca.txt +++ b/Documentation/devicetree/bindings/net/nfc/st21nfca.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | * STMicroelectronics SAS. ST21NFCA NFC Controller | 1 | * STMicroelectronics SAS. ST21NFCA NFC Controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: Should be "st,st21nfca_i2c". | 4 | - compatible: Should be "st,st21nfca-i2c". |
5 | - clock-frequency: I²C work frequency. | 5 | - clock-frequency: I²C work frequency. |
6 | - reg: address on the bus | 6 | - reg: address on the bus |
7 | - interrupt-parent: phandle for the interrupt gpio controller | 7 | - interrupt-parent: phandle for the interrupt gpio controller |
@@ -11,6 +11,10 @@ Required properties: | |||
11 | Optional SoC Specific Properties: | 11 | Optional SoC Specific Properties: |
12 | - pinctrl-names: Contains only one value - "default". | 12 | - pinctrl-names: Contains only one value - "default". |
13 | - pintctrl-0: Specifies the pin control groups used for this controller. | 13 | - pintctrl-0: Specifies the pin control groups used for this controller. |
14 | - ese-present: Specifies that an ese is physically connected to the nfc | ||
15 | controller. | ||
16 | - uicc-present: Specifies that the uicc swp signal can be physically | ||
17 | connected to the nfc controller. | ||
14 | 18 | ||
15 | Example (for ARM-based BeagleBoard xM with ST21NFCA on I2C2): | 19 | Example (for ARM-based BeagleBoard xM with ST21NFCA on I2C2): |
16 | 20 | ||
@@ -20,7 +24,7 @@ Example (for ARM-based BeagleBoard xM with ST21NFCA on I2C2): | |||
20 | 24 | ||
21 | st21nfca: st21nfca@1 { | 25 | st21nfca: st21nfca@1 { |
22 | 26 | ||
23 | compatible = "st,st21nfca_i2c"; | 27 | compatible = "st,st21nfca-i2c"; |
24 | 28 | ||
25 | reg = <0x01>; | 29 | reg = <0x01>; |
26 | clock-frequency = <400000>; | 30 | clock-frequency = <400000>; |
@@ -29,5 +33,8 @@ Example (for ARM-based BeagleBoard xM with ST21NFCA on I2C2): | |||
29 | interrupts = <2 IRQ_TYPE_LEVEL_LOW>; | 33 | interrupts = <2 IRQ_TYPE_LEVEL_LOW>; |
30 | 34 | ||
31 | enable-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>; | 35 | enable-gpios = <&gpio5 29 GPIO_ACTIVE_HIGH>; |
36 | |||
37 | ese-present; | ||
38 | uicc-present; | ||
32 | }; | 39 | }; |
33 | }; | 40 | }; |
diff --git a/Documentation/devicetree/bindings/net/nfc/st21nfcb.txt b/Documentation/devicetree/bindings/net/nfc/st21nfcb.txt index 9005608cbbd1..bb237072dbe9 100644 --- a/Documentation/devicetree/bindings/net/nfc/st21nfcb.txt +++ b/Documentation/devicetree/bindings/net/nfc/st21nfcb.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | * STMicroelectronics SAS. ST21NFCB NFC Controller | 1 | * STMicroelectronics SAS. ST21NFCB NFC Controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: Should be "st,st21nfcb_i2c". | 4 | - compatible: Should be "st,st21nfcb-i2c". |
5 | - clock-frequency: I²C work frequency. | 5 | - clock-frequency: I²C work frequency. |
6 | - reg: address on the bus | 6 | - reg: address on the bus |
7 | - interrupt-parent: phandle for the interrupt gpio controller | 7 | - interrupt-parent: phandle for the interrupt gpio controller |
@@ -20,7 +20,7 @@ Example (for ARM-based BeagleBoard xM with ST21NFCB on I2C2): | |||
20 | 20 | ||
21 | st21nfcb: st21nfcb@8 { | 21 | st21nfcb: st21nfcb@8 { |
22 | 22 | ||
23 | compatible = "st,st21nfcb_i2c"; | 23 | compatible = "st,st21nfcb-i2c"; |
24 | 24 | ||
25 | reg = <0x08>; | 25 | reg = <0x08>; |
26 | clock-frequency = <400000>; | 26 | clock-frequency = <400000>; |
diff --git a/Documentation/devicetree/bindings/net/rockchip-dwmac.txt b/Documentation/devicetree/bindings/net/rockchip-dwmac.txt new file mode 100644 index 000000000000..21fd199e89b5 --- /dev/null +++ b/Documentation/devicetree/bindings/net/rockchip-dwmac.txt | |||
@@ -0,0 +1,68 @@ | |||
1 | Rockchip SoC RK3288 10/100/1000 Ethernet driver(GMAC) | ||
2 | |||
3 | The device node has following properties. | ||
4 | |||
5 | Required properties: | ||
6 | - compatible: Can be "rockchip,rk3288-gmac". | ||
7 | - reg: addresses and length of the register sets for the device. | ||
8 | - interrupts: Should contain the GMAC interrupts. | ||
9 | - interrupt-names: Should contain the interrupt names "macirq". | ||
10 | - rockchip,grf: phandle to the syscon grf used to control speed and mode. | ||
11 | - clocks: <&cru SCLK_MAC>: clock selector for main clock, from PLL or PHY. | ||
12 | <&cru SCLK_MAC_PLL>: PLL clock for SCLK_MAC | ||
13 | <&cru SCLK_MAC_RX>: clock gate for RX | ||
14 | <&cru SCLK_MAC_TX>: clock gate for TX | ||
15 | <&cru SCLK_MACREF>: clock gate for RMII referce clock | ||
16 | <&cru SCLK_MACREF_OUT> clock gate for RMII reference clock output | ||
17 | <&cru ACLK_GMAC>: AXI clock gate for GMAC | ||
18 | <&cru PCLK_GMAC>: APB clock gate for GMAC | ||
19 | - clock-names: One name for each entry in the clocks property. | ||
20 | - phy-mode: See ethernet.txt file in the same directory. | ||
21 | - pinctrl-names: Names corresponding to the numbered pinctrl states. | ||
22 | - pinctrl-0: pin-control mode. can be <&rgmii_pins> or <&rmii_pins>. | ||
23 | - clock_in_out: For RGMII, it must be "input", means main clock(125MHz) | ||
24 | is not sourced from SoC's PLL, but input from PHY; For RMII, "input" means | ||
25 | PHY provides the reference clock(50MHz), "output" means GMAC provides the | ||
26 | reference clock. | ||
27 | - snps,reset-gpio gpio number for phy reset. | ||
28 | - snps,reset-active-low boolean flag to indicate if phy reset is active low. | ||
29 | - assigned-clocks: main clock, should be <&cru SCLK_MAC>; | ||
30 | - assigned-clock-parents = parent of main clock. | ||
31 | can be <&ext_gmac> or <&cru SCLK_MAC_PLL>. | ||
32 | |||
33 | Optional properties: | ||
34 | - tx_delay: Delay value for TXD timing. Range value is 0~0x7F, 0x30 as default. | ||
35 | - rx_delay: Delay value for RXD timing. Range value is 0~0x7F, 0x10 as default. | ||
36 | - phy-supply: phandle to a regulator if the PHY needs one | ||
37 | |||
38 | Example: | ||
39 | |||
40 | gmac: ethernet@ff290000 { | ||
41 | compatible = "rockchip,rk3288-gmac"; | ||
42 | reg = <0xff290000 0x10000>; | ||
43 | interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; | ||
44 | interrupt-names = "macirq"; | ||
45 | rockchip,grf = <&grf>; | ||
46 | clocks = <&cru SCLK_MAC>, | ||
47 | <&cru SCLK_MAC_RX>, <&cru SCLK_MAC_TX>, | ||
48 | <&cru SCLK_MACREF>, <&cru SCLK_MACREF_OUT>, | ||
49 | <&cru ACLK_GMAC>, <&cru PCLK_GMAC>; | ||
50 | clock-names = "stmmaceth", | ||
51 | "mac_clk_rx", "mac_clk_tx", | ||
52 | "clk_mac_ref", "clk_mac_refout", | ||
53 | "aclk_mac", "pclk_mac"; | ||
54 | phy-mode = "rgmii"; | ||
55 | pinctrl-names = "default"; | ||
56 | pinctrl-0 = <&rgmii_pins /*&rmii_pins*/>; | ||
57 | |||
58 | clock_in_out = "input"; | ||
59 | snps,reset-gpio = <&gpio4 7 0>; | ||
60 | snps,reset-active-low; | ||
61 | |||
62 | assigned-clocks = <&cru SCLK_MAC>; | ||
63 | assigned-clock-parents = <&ext_gmac>; | ||
64 | tx_delay = <0x30>; | ||
65 | rx_delay = <0x10>; | ||
66 | |||
67 | status = "ok"; | ||
68 | }; | ||
diff --git a/Documentation/devicetree/bindings/net/sti-dwmac.txt b/Documentation/devicetree/bindings/net/sti-dwmac.txt index 6762a6b5da7e..d05c1e1fd9b6 100644 --- a/Documentation/devicetree/bindings/net/sti-dwmac.txt +++ b/Documentation/devicetree/bindings/net/sti-dwmac.txt | |||
@@ -9,14 +9,10 @@ The device node has following properties. | |||
9 | Required properties: | 9 | Required properties: |
10 | - compatible : Can be "st,stih415-dwmac", "st,stih416-dwmac", | 10 | - compatible : Can be "st,stih415-dwmac", "st,stih416-dwmac", |
11 | "st,stih407-dwmac", "st,stid127-dwmac". | 11 | "st,stih407-dwmac", "st,stid127-dwmac". |
12 | - reg : Offset of the glue configuration register map in system | 12 | - st,syscon : Should be phandle/offset pair. The phandle to the syscon node which |
13 | configuration regmap pointed by st,syscon property and size. | 13 | encompases the glue register, and the offset of the control register. |
14 | - st,syscon : Should be phandle to system configuration node which | ||
15 | encompases this glue registers. | ||
16 | - st,gmac_en: this is to enable the gmac into a dedicated sysctl control | 14 | - st,gmac_en: this is to enable the gmac into a dedicated sysctl control |
17 | register available on STiH407 SoC. | 15 | register available on STiH407 SoC. |
18 | - sti-ethconf: this is the gmac glue logic register to enable the GMAC, | ||
19 | select among the different modes and program the clk retiming. | ||
20 | - pinctrl-0: pin-control for all the MII mode supported. | 16 | - pinctrl-0: pin-control for all the MII mode supported. |
21 | 17 | ||
22 | Optional properties: | 18 | Optional properties: |
@@ -40,10 +36,10 @@ ethernet0: dwmac@9630000 { | |||
40 | device_type = "network"; | 36 | device_type = "network"; |
41 | status = "disabled"; | 37 | status = "disabled"; |
42 | compatible = "st,stih407-dwmac", "snps,dwmac", "snps,dwmac-3.710"; | 38 | compatible = "st,stih407-dwmac", "snps,dwmac", "snps,dwmac-3.710"; |
43 | reg = <0x9630000 0x8000>, <0x80 0x4>; | 39 | reg = <0x9630000 0x8000>; |
44 | reg-names = "stmmaceth", "sti-ethconf"; | 40 | reg-names = "stmmaceth"; |
45 | 41 | ||
46 | st,syscon = <&syscfg_sbc_reg>; | 42 | st,syscon = <&syscfg_sbc_reg 0x80>; |
47 | st,gmac_en; | 43 | st,gmac_en; |
48 | resets = <&softreset STIH407_ETH1_SOFTRESET>; | 44 | resets = <&softreset STIH407_ETH1_SOFTRESET>; |
49 | reset-names = "stmmaceth"; | 45 | reset-names = "stmmaceth"; |
diff --git a/Documentation/devicetree/bindings/net/stmmac.txt b/Documentation/devicetree/bindings/net/stmmac.txt index c41afd963edf..8ca65cec52ae 100644 --- a/Documentation/devicetree/bindings/net/stmmac.txt +++ b/Documentation/devicetree/bindings/net/stmmac.txt | |||
@@ -43,6 +43,7 @@ Optional properties: | |||
43 | available this clock is used for programming the Timestamp Addend Register. | 43 | available this clock is used for programming the Timestamp Addend Register. |
44 | If not passed then the system clock will be used and this is fine on some | 44 | If not passed then the system clock will be used and this is fine on some |
45 | platforms. | 45 | platforms. |
46 | - snps,burst_len: The AXI burst lenth value of the AXI BUS MODE register. | ||
46 | 47 | ||
47 | Examples: | 48 | Examples: |
48 | 49 | ||
diff --git a/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt b/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt new file mode 100644 index 000000000000..edefc26c6204 --- /dev/null +++ b/Documentation/devicetree/bindings/net/wireless/qcom,ath10k.txt | |||
@@ -0,0 +1,30 @@ | |||
1 | * Qualcomm Atheros ath10k wireless devices | ||
2 | |||
3 | For ath10k devices the calibration data can be provided through Device | ||
4 | Tree. The node is a child node of the PCI controller. | ||
5 | |||
6 | Required properties: | ||
7 | -compatible : Should be "qcom,ath10k" | ||
8 | |||
9 | Optional properties: | ||
10 | - qcom,ath10k-calibration-data : calibration data as an array, the | ||
11 | length can vary between hw versions | ||
12 | |||
13 | |||
14 | Example: | ||
15 | |||
16 | pci { | ||
17 | pcie@0 { | ||
18 | reg = <0 0 0 0 0>; | ||
19 | #interrupt-cells = <1>; | ||
20 | #size-cells = <2>; | ||
21 | #address-cells = <3>; | ||
22 | device_type = "pci"; | ||
23 | |||
24 | ath10k@0,0 { | ||
25 | reg = <0 0 0 0 0>; | ||
26 | device_type = "pci"; | ||
27 | qcom,ath10k-calibration-data = [ 01 02 03 ... ]; | ||
28 | }; | ||
29 | }; | ||
30 | }; | ||
diff --git a/Documentation/devicetree/bindings/panel/avic,tm070ddh03.txt b/Documentation/devicetree/bindings/panel/avic,tm070ddh03.txt new file mode 100644 index 000000000000..b6f2f3e8f44e --- /dev/null +++ b/Documentation/devicetree/bindings/panel/avic,tm070ddh03.txt | |||
@@ -0,0 +1,7 @@ | |||
1 | Shanghai AVIC Optoelectronics 7" 1024x600 color TFT-LCD panel | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: should be "avic,tm070ddh03" | ||
5 | |||
6 | This binding is compatible with the simple-panel binding, which is specified | ||
7 | in simple-panel.txt in this directory. | ||
diff --git a/Documentation/devicetree/bindings/panel/giantplus,gpg482739qs5.txt b/Documentation/devicetree/bindings/panel/giantplus,gpg482739qs5.txt new file mode 100644 index 000000000000..24b0b624434b --- /dev/null +++ b/Documentation/devicetree/bindings/panel/giantplus,gpg482739qs5.txt | |||
@@ -0,0 +1,7 @@ | |||
1 | GiantPlus GPG48273QS5 4.3" (480x272) WQVGA TFT LCD panel | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: should be "giantplus,gpg48273qs5" | ||
5 | |||
6 | This binding is compatible with the simple-panel binding, which is specified | ||
7 | in simple-panel.txt in this directory. | ||
diff --git a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt index d763e047c6ae..75321ae23c08 100644 --- a/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt +++ b/Documentation/devicetree/bindings/pci/nvidia,tegra20-pcie.txt | |||
@@ -1,10 +1,10 @@ | |||
1 | NVIDIA Tegra PCIe controller | 1 | NVIDIA Tegra PCIe controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: Must be one of: | 4 | - compatible: For Tegra20, must contain "nvidia,tegra20-pcie". For Tegra30, |
5 | - "nvidia,tegra20-pcie" | 5 | "nvidia,tegra30-pcie". For Tegra124, must contain "nvidia,tegra124-pcie". |
6 | - "nvidia,tegra30-pcie" | 6 | Otherwise, must contain "nvidia,<chip>-pcie", plus one of the above, where |
7 | - "nvidia,tegra124-pcie" | 7 | <chip> is tegra132 or tegra210. |
8 | - device_type: Must be "pci" | 8 | - device_type: Must be "pci" |
9 | - reg: A list of physical base address and length for each set of controller | 9 | - reg: A list of physical base address and length for each set of controller |
10 | registers. Must contain an entry for each entry in the reg-names property. | 10 | registers. Must contain an entry for each entry in the reg-names property. |
diff --git a/Documentation/devicetree/bindings/pci/versatile.txt b/Documentation/devicetree/bindings/pci/versatile.txt new file mode 100644 index 000000000000..ebd1e7d0403e --- /dev/null +++ b/Documentation/devicetree/bindings/pci/versatile.txt | |||
@@ -0,0 +1,59 @@ | |||
1 | * ARM Versatile Platform Baseboard PCI interface | ||
2 | |||
3 | PCI host controller found on the ARM Versatile PB board's FPGA. | ||
4 | |||
5 | Required properties: | ||
6 | - compatible: should contain "arm,versatile-pci" to identify the Versatile PCI | ||
7 | controller. | ||
8 | - reg: base addresses and lengths of the pci controller. There must be 3 | ||
9 | entries: | ||
10 | - Versatile-specific registers | ||
11 | - Self Config space | ||
12 | - Config space | ||
13 | - #address-cells: set to <3> | ||
14 | - #size-cells: set to <2> | ||
15 | - device_type: set to "pci" | ||
16 | - bus-range: set to <0 0xff> | ||
17 | - ranges: ranges for the PCI memory and I/O regions | ||
18 | - #interrupt-cells: set to <1> | ||
19 | - interrupt-map-mask and interrupt-map: standard PCI properties to define | ||
20 | the mapping of the PCI interface to interrupt numbers. | ||
21 | |||
22 | Example: | ||
23 | |||
24 | pci-controller@10001000 { | ||
25 | compatible = "arm,versatile-pci"; | ||
26 | device_type = "pci"; | ||
27 | reg = <0x10001000 0x1000 | ||
28 | 0x41000000 0x10000 | ||
29 | 0x42000000 0x100000>; | ||
30 | bus-range = <0 0xff>; | ||
31 | #address-cells = <3>; | ||
32 | #size-cells = <2>; | ||
33 | #interrupt-cells = <1>; | ||
34 | |||
35 | ranges = <0x01000000 0 0x00000000 0x43000000 0 0x00010000 /* downstream I/O */ | ||
36 | 0x02000000 0 0x50000000 0x50000000 0 0x10000000 /* non-prefetchable memory */ | ||
37 | 0x42000000 0 0x60000000 0x60000000 0 0x10000000>; /* prefetchable memory */ | ||
38 | |||
39 | interrupt-map-mask = <0x1800 0 0 7>; | ||
40 | interrupt-map = <0x1800 0 0 1 &sic 28 | ||
41 | 0x1800 0 0 2 &sic 29 | ||
42 | 0x1800 0 0 3 &sic 30 | ||
43 | 0x1800 0 0 4 &sic 27 | ||
44 | |||
45 | 0x1000 0 0 1 &sic 27 | ||
46 | 0x1000 0 0 2 &sic 28 | ||
47 | 0x1000 0 0 3 &sic 29 | ||
48 | 0x1000 0 0 4 &sic 30 | ||
49 | |||
50 | 0x0800 0 0 1 &sic 30 | ||
51 | 0x0800 0 0 2 &sic 27 | ||
52 | 0x0800 0 0 3 &sic 28 | ||
53 | 0x0800 0 0 4 &sic 29 | ||
54 | |||
55 | 0x0000 0 0 1 &sic 29 | ||
56 | 0x0000 0 0 2 &sic 30 | ||
57 | 0x0000 0 0 3 &sic 27 | ||
58 | 0x0000 0 0 4 &sic 28>; | ||
59 | }; | ||
diff --git a/Documentation/devicetree/bindings/phy/phy-miphy28lp.txt b/Documentation/devicetree/bindings/phy/phy-miphy28lp.txt index 46a135dae6b3..89caa885d08c 100644 --- a/Documentation/devicetree/bindings/phy/phy-miphy28lp.txt +++ b/Documentation/devicetree/bindings/phy/phy-miphy28lp.txt | |||
@@ -26,6 +26,7 @@ Required properties (port (child) node): | |||
26 | filled in "reg". It can also contain the offset of the system configuration | 26 | filled in "reg". It can also contain the offset of the system configuration |
27 | registers used as glue-logic to setup the device for SATA/PCIe or USB3 | 27 | registers used as glue-logic to setup the device for SATA/PCIe or USB3 |
28 | devices. | 28 | devices. |
29 | - st,syscfg : Offset of the parent configuration register. | ||
29 | - resets : phandle to the parent reset controller. | 30 | - resets : phandle to the parent reset controller. |
30 | - reset-names : Associated name must be "miphy-sw-rst". | 31 | - reset-names : Associated name must be "miphy-sw-rst". |
31 | 32 | ||
@@ -54,18 +55,12 @@ example: | |||
54 | phy_port0: port@9b22000 { | 55 | phy_port0: port@9b22000 { |
55 | reg = <0x9b22000 0xff>, | 56 | reg = <0x9b22000 0xff>, |
56 | <0x9b09000 0xff>, | 57 | <0x9b09000 0xff>, |
57 | <0x9b04000 0xff>, | 58 | <0x9b04000 0xff>; |
58 | <0x114 0x4>, /* sysctrl MiPHY cntrl */ | ||
59 | <0x818 0x4>, /* sysctrl MiPHY status*/ | ||
60 | <0xe0 0x4>, /* sysctrl PCIe */ | ||
61 | <0xec 0x4>; /* sysctrl SATA */ | ||
62 | reg-names = "sata-up", | 59 | reg-names = "sata-up", |
63 | "pcie-up", | 60 | "pcie-up", |
64 | "pipew", | 61 | "pipew"; |
65 | "miphy-ctrl-glue", | 62 | |
66 | "miphy-status-glue", | 63 | st,syscfg = <0x114 0x818 0xe0 0xec>; |
67 | "pcie-glue", | ||
68 | "sata-glue"; | ||
69 | #phy-cells = <1>; | 64 | #phy-cells = <1>; |
70 | st,osc-rdy; | 65 | st,osc-rdy; |
71 | reset-names = "miphy-sw-rst"; | 66 | reset-names = "miphy-sw-rst"; |
@@ -75,18 +70,13 @@ example: | |||
75 | phy_port1: port@9b2a000 { | 70 | phy_port1: port@9b2a000 { |
76 | reg = <0x9b2a000 0xff>, | 71 | reg = <0x9b2a000 0xff>, |
77 | <0x9b19000 0xff>, | 72 | <0x9b19000 0xff>, |
78 | <0x9b14000 0xff>, | 73 | <0x9b14000 0xff>; |
79 | <0x118 0x4>, | ||
80 | <0x81c 0x4>, | ||
81 | <0xe4 0x4>, | ||
82 | <0xf0 0x4>; | ||
83 | reg-names = "sata-up", | 74 | reg-names = "sata-up", |
84 | "pcie-up", | 75 | "pcie-up", |
85 | "pipew", | 76 | "pipew"; |
86 | "miphy-ctrl-glue", | 77 | |
87 | "miphy-status-glue", | 78 | st,syscfg = <0x118 0x81c 0xe4 0xf0>; |
88 | "pcie-glue", | 79 | |
89 | "sata-glue"; | ||
90 | #phy-cells = <1>; | 80 | #phy-cells = <1>; |
91 | st,osc-force-ext; | 81 | st,osc-force-ext; |
92 | reset-names = "miphy-sw-rst"; | 82 | reset-names = "miphy-sw-rst"; |
@@ -95,13 +85,12 @@ example: | |||
95 | 85 | ||
96 | phy_port2: port@8f95000 { | 86 | phy_port2: port@8f95000 { |
97 | reg = <0x8f95000 0xff>, | 87 | reg = <0x8f95000 0xff>, |
98 | <0x8f90000 0xff>, | 88 | <0x8f90000 0xff>; |
99 | <0x11c 0x4>, | ||
100 | <0x820 0x4>; | ||
101 | reg-names = "pipew", | 89 | reg-names = "pipew", |
102 | "usb3-up", | 90 | "usb3-up"; |
103 | "miphy-ctrl-glue", | 91 | |
104 | "miphy-status-glue"; | 92 | st,syscfg = <0x11c 0x820>; |
93 | |||
105 | #phy-cells = <1>; | 94 | #phy-cells = <1>; |
106 | reset-names = "miphy-sw-rst"; | 95 | reset-names = "miphy-sw-rst"; |
107 | resets = <&softreset STIH407_MIPHY2_SOFTRESET>; | 96 | resets = <&softreset STIH407_MIPHY2_SOFTRESET>; |
@@ -125,4 +114,4 @@ example: | |||
125 | 114 | ||
126 | Macro definitions for the supported miphy configuration can be found in: | 115 | Macro definitions for the supported miphy configuration can be found in: |
127 | 116 | ||
128 | include/dt-bindings/phy/phy-miphy28lp.h | 117 | include/dt-bindings/phy/phy.h |
diff --git a/Documentation/devicetree/bindings/phy/phy-miphy365x.txt b/Documentation/devicetree/bindings/phy/phy-miphy365x.txt index 42c880886cf7..9802d5d911aa 100644 --- a/Documentation/devicetree/bindings/phy/phy-miphy365x.txt +++ b/Documentation/devicetree/bindings/phy/phy-miphy365x.txt | |||
@@ -6,8 +6,10 @@ for SATA and PCIe. | |||
6 | 6 | ||
7 | Required properties (controller (parent) node): | 7 | Required properties (controller (parent) node): |
8 | - compatible : Should be "st,miphy365x-phy" | 8 | - compatible : Should be "st,miphy365x-phy" |
9 | - st,syscfg : Should be a phandle of the system configuration register group | 9 | - st,syscfg : Phandle / integer array property. Phandle of sysconfig group |
10 | which contain the SATA, PCIe mode setting bits | 10 | containing the miphy registers and integer array should contain |
11 | an entry for each port sub-node, specifying the control | ||
12 | register offset inside the sysconfig group. | ||
11 | 13 | ||
12 | Required nodes : A sub-node is required for each channel the controller | 14 | Required nodes : A sub-node is required for each channel the controller |
13 | provides. Address range information including the usual | 15 | provides. Address range information including the usual |
@@ -26,7 +28,6 @@ Required properties (port (child) node): | |||
26 | registers filled in "reg": | 28 | registers filled in "reg": |
27 | - sata: For SATA devices | 29 | - sata: For SATA devices |
28 | - pcie: For PCIe devices | 30 | - pcie: For PCIe devices |
29 | - syscfg: To specify the syscfg based config register | ||
30 | 31 | ||
31 | Optional properties (port (child) node): | 32 | Optional properties (port (child) node): |
32 | - st,sata-gen : Generation of locally attached SATA IP. Expected values | 33 | - st,sata-gen : Generation of locally attached SATA IP. Expected values |
@@ -39,20 +40,20 @@ Example: | |||
39 | 40 | ||
40 | miphy365x_phy: miphy365x@fe382000 { | 41 | miphy365x_phy: miphy365x@fe382000 { |
41 | compatible = "st,miphy365x-phy"; | 42 | compatible = "st,miphy365x-phy"; |
42 | st,syscfg = <&syscfg_rear>; | 43 | st,syscfg = <&syscfg_rear 0x824 0x828>; |
43 | #address-cells = <1>; | 44 | #address-cells = <1>; |
44 | #size-cells = <1>; | 45 | #size-cells = <1>; |
45 | ranges; | 46 | ranges; |
46 | 47 | ||
47 | phy_port0: port@fe382000 { | 48 | phy_port0: port@fe382000 { |
48 | reg = <0xfe382000 0x100>, <0xfe394000 0x100>, <0x824 0x4>; | 49 | reg = <0xfe382000 0x100>, <0xfe394000 0x100>; |
49 | reg-names = "sata", "pcie", "syscfg"; | 50 | reg-names = "sata", "pcie"; |
50 | #phy-cells = <1>; | 51 | #phy-cells = <1>; |
51 | st,sata-gen = <3>; | 52 | st,sata-gen = <3>; |
52 | }; | 53 | }; |
53 | 54 | ||
54 | phy_port1: port@fe38a000 { | 55 | phy_port1: port@fe38a000 { |
55 | reg = <0xfe38a000 0x100>, <0xfe804000 0x100>, <0x828 0x4>;; | 56 | reg = <0xfe38a000 0x100>, <0xfe804000 0x100>;; |
56 | reg-names = "sata", "pcie", "syscfg"; | 57 | reg-names = "sata", "pcie", "syscfg"; |
57 | #phy-cells = <1>; | 58 | #phy-cells = <1>; |
58 | st,pcie-tx-pol-inv; | 59 | st,pcie-tx-pol-inv; |
diff --git a/Documentation/devicetree/bindings/phy/phy-stih407-usb.txt b/Documentation/devicetree/bindings/phy/phy-stih407-usb.txt index 1ef8228db73b..de6a706abcdb 100644 --- a/Documentation/devicetree/bindings/phy/phy-stih407-usb.txt +++ b/Documentation/devicetree/bindings/phy/phy-stih407-usb.txt | |||
@@ -5,10 +5,7 @@ host controllers (when controlling usb2/1.1 devices) available on STiH407 SoC fa | |||
5 | 5 | ||
6 | Required properties: | 6 | Required properties: |
7 | - compatible : should be "st,stih407-usb2-phy" | 7 | - compatible : should be "st,stih407-usb2-phy" |
8 | - reg : contain the offset and length of the system configuration registers | 8 | - st,syscfg : phandle of sysconfig bank plus integer array containing phyparam and phyctrl register offsets |
9 | used as glue logic to control & parameter phy | ||
10 | - reg-names : the names of the system configuration registers in "reg", should be "param" and "reg" | ||
11 | - st,syscfg : sysconfig register to manage phy parameter at driver level | ||
12 | - resets : list of phandle and reset specifier pairs. There should be two entries, one | 9 | - resets : list of phandle and reset specifier pairs. There should be two entries, one |
13 | for the whole phy and one for the port | 10 | for the whole phy and one for the port |
14 | - reset-names : list of reset signal names. Should be "global" and "port" | 11 | - reset-names : list of reset signal names. Should be "global" and "port" |
@@ -19,11 +16,8 @@ Example: | |||
19 | 16 | ||
20 | usb2_picophy0: usbpicophy@f8 { | 17 | usb2_picophy0: usbpicophy@f8 { |
21 | compatible = "st,stih407-usb2-phy"; | 18 | compatible = "st,stih407-usb2-phy"; |
22 | reg = <0xf8 0x04>, /* syscfg 5062 */ | ||
23 | <0xf4 0x04>; /* syscfg 5061 */ | ||
24 | reg-names = "param", "ctrl"; | ||
25 | #phy-cells = <0>; | 19 | #phy-cells = <0>; |
26 | st,syscfg = <&syscfg_core>; | 20 | st,syscfg = <&syscfg_core 0x100 0xf4>; |
27 | resets = <&softreset STIH407_PICOPHY_SOFTRESET>, | 21 | resets = <&softreset STIH407_PICOPHY_SOFTRESET>, |
28 | <&picophyreset STIH407_PICOPHY0_RESET>; | 22 | <&picophyreset STIH407_PICOPHY0_RESET>; |
29 | reset-names = "global", "port"; | 23 | reset-names = "global", "port"; |
diff --git a/Documentation/devicetree/bindings/phy/rockchip-usb-phy.txt b/Documentation/devicetree/bindings/phy/rockchip-usb-phy.txt new file mode 100644 index 000000000000..826454ac43bb --- /dev/null +++ b/Documentation/devicetree/bindings/phy/rockchip-usb-phy.txt | |||
@@ -0,0 +1,37 @@ | |||
1 | ROCKCHIP USB2 PHY | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: rockchip,rk3288-usb-phy | ||
5 | - rockchip,grf : phandle to the syscon managing the "general | ||
6 | register files" | ||
7 | - #address-cells: should be 1 | ||
8 | - #size-cells: should be 0 | ||
9 | |||
10 | Sub-nodes: | ||
11 | Each PHY should be represented as a sub-node. | ||
12 | |||
13 | Sub-nodes | ||
14 | required properties: | ||
15 | - #phy-cells: should be 0 | ||
16 | - reg: PHY configure reg address offset in GRF | ||
17 | "0x320" - for PHY attach to OTG controller | ||
18 | "0x334" - for PHY attach to HOST0 controller | ||
19 | "0x348" - for PHY attach to HOST1 controller | ||
20 | |||
21 | Optional Properties: | ||
22 | - clocks : phandle + clock specifier for the phy clocks | ||
23 | - clock-names: string, clock name, must be "phyclk" | ||
24 | |||
25 | Example: | ||
26 | |||
27 | usbphy: phy { | ||
28 | compatible = "rockchip,rk3288-usb-phy"; | ||
29 | rockchip,grf = <&grf>; | ||
30 | #address-cells = <1>; | ||
31 | #size-cells = <0>; | ||
32 | |||
33 | usbphy0: usb-phy0 { | ||
34 | #phy-cells = <0>; | ||
35 | reg = <0x320>; | ||
36 | }; | ||
37 | }; | ||
diff --git a/Documentation/devicetree/bindings/phy/samsung-phy.txt b/Documentation/devicetree/bindings/phy/samsung-phy.txt index d5bad920827f..91e38cfe1f8f 100644 --- a/Documentation/devicetree/bindings/phy/samsung-phy.txt +++ b/Documentation/devicetree/bindings/phy/samsung-phy.txt | |||
@@ -3,8 +3,8 @@ Samsung S5P/EXYNOS SoC series MIPI CSIS/DSIM DPHY | |||
3 | 3 | ||
4 | Required properties: | 4 | Required properties: |
5 | - compatible : should be "samsung,s5pv210-mipi-video-phy"; | 5 | - compatible : should be "samsung,s5pv210-mipi-video-phy"; |
6 | - reg : offset and length of the MIPI DPHY register set; | ||
7 | - #phy-cells : from the generic phy bindings, must be 1; | 6 | - #phy-cells : from the generic phy bindings, must be 1; |
7 | - syscon - phandle to the PMU system controller; | ||
8 | 8 | ||
9 | For "samsung,s5pv210-mipi-video-phy" compatible PHYs the second cell in | 9 | For "samsung,s5pv210-mipi-video-phy" compatible PHYs the second cell in |
10 | the PHY specifier identifies the PHY and its meaning is as follows: | 10 | the PHY specifier identifies the PHY and its meaning is as follows: |
diff --git a/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt index 93ce12eb422a..fdd8046e650a 100644 --- a/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/allwinner,sunxi-pinctrl.txt | |||
@@ -11,6 +11,7 @@ Required properties: | |||
11 | "allwinner,sun5i-a10s-pinctrl" | 11 | "allwinner,sun5i-a10s-pinctrl" |
12 | "allwinner,sun5i-a13-pinctrl" | 12 | "allwinner,sun5i-a13-pinctrl" |
13 | "allwinner,sun6i-a31-pinctrl" | 13 | "allwinner,sun6i-a31-pinctrl" |
14 | "allwinner,sun6i-a31s-pinctrl" | ||
14 | "allwinner,sun6i-a31-r-pinctrl" | 15 | "allwinner,sun6i-a31-r-pinctrl" |
15 | "allwinner,sun7i-a20-pinctrl" | 16 | "allwinner,sun7i-a20-pinctrl" |
16 | "allwinner,sun8i-a23-pinctrl" | 17 | "allwinner,sun8i-a23-pinctrl" |
diff --git a/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-pinmux.txt b/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-pinmux.txt index 189814e7cdc7..ecb5c0d25218 100644 --- a/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-pinmux.txt +++ b/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-pinmux.txt | |||
@@ -6,7 +6,8 @@ nvidia,tegra30-pinmux.txt. In fact, this document assumes that binding as | |||
6 | a baseline, and only documents the differences between the two bindings. | 6 | a baseline, and only documents the differences between the two bindings. |
7 | 7 | ||
8 | Required properties: | 8 | Required properties: |
9 | - compatible: "nvidia,tegra124-pinmux" | 9 | - compatible: For Tegra124, must contain "nvidia,tegra124-pinmux". For |
10 | Tegra132, must contain '"nvidia,tegra132-pinmux", "nvidia-tegra124-pinmux"'. | ||
10 | - reg: Should contain a list of base address and size pairs for: | 11 | - reg: Should contain a list of base address and size pairs for: |
11 | -- first entry - the drive strength and pad control registers. | 12 | -- first entry - the drive strength and pad control registers. |
12 | -- second entry - the pinmux registers | 13 | -- second entry - the pinmux registers |
diff --git a/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-xusb-padctl.txt b/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-xusb-padctl.txt index 2f9c0bd66457..30676ded85bb 100644 --- a/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-xusb-padctl.txt +++ b/Documentation/devicetree/bindings/pinctrl/nvidia,tegra124-xusb-padctl.txt | |||
@@ -13,7 +13,9 @@ how to describe and reference PHYs in device trees. | |||
13 | 13 | ||
14 | Required properties: | 14 | Required properties: |
15 | -------------------- | 15 | -------------------- |
16 | - compatible: should be "nvidia,tegra124-xusb-padctl" | 16 | - compatible: For Tegra124, must contain "nvidia,tegra124-xusb-padctl". |
17 | Otherwise, must contain '"nvidia,<chip>-xusb-padctl", | ||
18 | "nvidia-tegra124-xusb-padctl"', where <chip> is tegra132 or tegra210. | ||
17 | - reg: Physical base address and length of the controller's registers. | 19 | - reg: Physical base address and length of the controller's registers. |
18 | - resets: Must contain an entry for each entry in reset-names. | 20 | - resets: Must contain an entry for each entry in reset-names. |
19 | See ../reset/reset.txt for details. | 21 | See ../reset/reset.txt for details. |
diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,msm8916-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/qcom,msm8916-pinctrl.txt new file mode 100644 index 000000000000..498caff6029e --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/qcom,msm8916-pinctrl.txt | |||
@@ -0,0 +1,186 @@ | |||
1 | Qualcomm MSM8916 TLMM block | ||
2 | |||
3 | This binding describes the Top Level Mode Multiplexer block found in the | ||
4 | MSM8916 platform. | ||
5 | |||
6 | - compatible: | ||
7 | Usage: required | ||
8 | Value type: <string> | ||
9 | Definition: must be "qcom,msm8916-pinctrl" | ||
10 | |||
11 | - reg: | ||
12 | Usage: required | ||
13 | Value type: <prop-encoded-array> | ||
14 | Definition: the base address and size of the TLMM register space. | ||
15 | |||
16 | - interrupts: | ||
17 | Usage: required | ||
18 | Value type: <prop-encoded-array> | ||
19 | Definition: should specify the TLMM summary IRQ. | ||
20 | |||
21 | - interrupt-controller: | ||
22 | Usage: required | ||
23 | Value type: <none> | ||
24 | Definition: identifies this node as an interrupt controller | ||
25 | |||
26 | - #interrupt-cells: | ||
27 | Usage: required | ||
28 | Value type: <u32> | ||
29 | Definition: must be 2. Specifying the pin number and flags, as defined | ||
30 | in <dt-bindings/interrupt-controller/irq.h> | ||
31 | |||
32 | - gpio-controller: | ||
33 | Usage: required | ||
34 | Value type: <none> | ||
35 | Definition: identifies this node as a gpio controller | ||
36 | |||
37 | - #gpio-cells: | ||
38 | Usage: required | ||
39 | Value type: <u32> | ||
40 | Definition: must be 2. Specifying the pin number and flags, as defined | ||
41 | in <dt-bindings/gpio/gpio.h> | ||
42 | |||
43 | Please refer to ../gpio/gpio.txt and ../interrupt-controller/interrupts.txt for | ||
44 | a general description of GPIO and interrupt bindings. | ||
45 | |||
46 | Please refer to pinctrl-bindings.txt in this directory for details of the | ||
47 | common pinctrl bindings used by client devices, including the meaning of the | ||
48 | phrase "pin configuration node". | ||
49 | |||
50 | The pin configuration nodes act as a container for an arbitrary number of | ||
51 | subnodes. Each of these subnodes represents some desired configuration for a | ||
52 | pin, a group, or a list of pins or groups. This configuration can include the | ||
53 | mux function to select on those pin(s)/group(s), and various pin configuration | ||
54 | parameters, such as pull-up, drive strength, etc. | ||
55 | |||
56 | |||
57 | PIN CONFIGURATION NODES: | ||
58 | |||
59 | The name of each subnode is not important; all subnodes should be enumerated | ||
60 | and processed purely based on their content. | ||
61 | |||
62 | Each subnode only affects those parameters that are explicitly listed. In | ||
63 | other words, a subnode that lists a mux function but no pin configuration | ||
64 | parameters implies no information about any pin configuration parameters. | ||
65 | Similarly, a pin subnode that describes a pullup parameter implies no | ||
66 | information about e.g. the mux function. | ||
67 | |||
68 | |||
69 | The following generic properties as defined in pinctrl-bindings.txt are valid | ||
70 | to specify in a pin configuration subnode: | ||
71 | |||
72 | - pins: | ||
73 | Usage: required | ||
74 | Value type: <string-array> | ||
75 | Definition: List of gpio pins affected by the properties specified in | ||
76 | this subnode. Valid pins are: | ||
77 | gpio0-gpio121, | ||
78 | sdc1_clk, | ||
79 | sdc1_cmd, | ||
80 | sdc1_data | ||
81 | sdc2_clk, | ||
82 | sdc2_cmd, | ||
83 | sdc2_data, | ||
84 | qdsd_cmd, | ||
85 | qdsd_data0, | ||
86 | qdsd_data1, | ||
87 | qdsd_data2, | ||
88 | qdsd_data3 | ||
89 | |||
90 | - function: | ||
91 | Usage: required | ||
92 | Value type: <string> | ||
93 | Definition: Specify the alternative function to be configured for the | ||
94 | specified pins. Functions are only valid for gpio pins. | ||
95 | Valid values are: | ||
96 | adsp_ext, alsp_int, atest_bbrx0, atest_bbrx1, atest_char, atest_char0, | ||
97 | atest_char1, atest_char2, atest_char3, atest_combodac, atest_gpsadc0, | ||
98 | atest_gpsadc1, atest_tsens, atest_wlan0, atest_wlan1, backlight_en, | ||
99 | bimc_dte0,bimc_dte1, blsp_i2c1, blsp_i2c2, blsp_i2c3, blsp_i2c4, | ||
100 | blsp_i2c5, blsp_i2c6, blsp_spi1, blsp_spi1_cs1, blsp_spi1_cs2, | ||
101 | blsp_spi1_cs3, blsp_spi2, blsp_spi2_cs1, blsp_spi2_cs2, blsp_spi2_cs3, | ||
102 | blsp_spi3, blsp_spi3_cs1, blsp_spi3_cs2, blsp_spi3_cs3, blsp_spi4, | ||
103 | blsp_spi5, blsp_spi6, blsp_uart1, blsp_uart2, blsp_uim1, blsp_uim2, | ||
104 | cam1_rst, cam1_standby, cam_mclk0, cam_mclk1, cci_async, cci_i2c, | ||
105 | cci_timer0, cci_timer1, cci_timer2, cdc_pdm0, codec_mad, dbg_out, | ||
106 | display_5v, dmic0_clk, dmic0_data, dsi_rst, ebi0_wrcdc, euro_us, | ||
107 | ext_lpass, flash_strobe, gcc_gp1_clk_a, gcc_gp1_clk_b, gcc_gp2_clk_a, | ||
108 | gcc_gp2_clk_b, gcc_gp3_clk_a, gcc_gp3_clk_b, gpio, gsm0_tx0, gsm0_tx1, | ||
109 | gsm1_tx0, gsm1_tx1, gyro_accl, kpsns0, kpsns1, kpsns2, ldo_en, | ||
110 | ldo_update, mag_int, mdp_vsync, modem_tsync, m_voc, nav_pps, nav_tsync, | ||
111 | pa_indicator, pbs0, pbs1, pbs2, pri_mi2s, pri_mi2s_ws, prng_rosc, | ||
112 | pwr_crypto_enabled_a, pwr_crypto_enabled_b, pwr_modem_enabled_a, | ||
113 | pwr_modem_enabled_b, pwr_nav_enabled_a, pwr_nav_enabled_b, | ||
114 | qdss_ctitrig_in_a0, qdss_ctitrig_in_a1, qdss_ctitrig_in_b0, | ||
115 | qdss_ctitrig_in_b1, qdss_ctitrig_out_a0, qdss_ctitrig_out_a1, | ||
116 | qdss_ctitrig_out_b0, qdss_ctitrig_out_b1, qdss_traceclk_a, | ||
117 | qdss_traceclk_b, qdss_tracectl_a, qdss_tracectl_b, qdss_tracedata_a, | ||
118 | qdss_tracedata_b, reset_n, sd_card, sd_write, sec_mi2s, smb_int, | ||
119 | ssbi_wtr0, ssbi_wtr1, uim1, uim2, uim3, uim_batt, wcss_bt, wcss_fm, | ||
120 | wcss_wlan, webcam1_rst | ||
121 | |||
122 | - bias-disable: | ||
123 | Usage: optional | ||
124 | Value type: <none> | ||
125 | Definition: The specified pins should be configued as no pull. | ||
126 | |||
127 | - bias-pull-down: | ||
128 | Usage: optional | ||
129 | Value type: <none> | ||
130 | Definition: The specified pins should be configued as pull down. | ||
131 | |||
132 | - bias-pull-up: | ||
133 | Usage: optional | ||
134 | Value type: <none> | ||
135 | Definition: The specified pins should be configued as pull up. | ||
136 | |||
137 | - output-high: | ||
138 | Usage: optional | ||
139 | Value type: <none> | ||
140 | Definition: The specified pins are configured in output mode, driven | ||
141 | high. | ||
142 | Not valid for sdc pins. | ||
143 | |||
144 | - output-low: | ||
145 | Usage: optional | ||
146 | Value type: <none> | ||
147 | Definition: The specified pins are configured in output mode, driven | ||
148 | low. | ||
149 | Not valid for sdc pins. | ||
150 | |||
151 | - drive-strength: | ||
152 | Usage: optional | ||
153 | Value type: <u32> | ||
154 | Definition: Selects the drive strength for the specified pins, in mA. | ||
155 | Valid values are: 2, 4, 6, 8, 10, 12, 14 and 16 | ||
156 | |||
157 | Example: | ||
158 | |||
159 | tlmm: pinctrl@1000000 { | ||
160 | compatible = "qcom,msm8916-pinctrl"; | ||
161 | reg = <0x1000000 0x300000>; | ||
162 | interrupts = <0 208 0>; | ||
163 | gpio-controller; | ||
164 | #gpio-cells = <2>; | ||
165 | interrupt-controller; | ||
166 | #interrupt-cells = <2>; | ||
167 | |||
168 | uart2: uart2-default { | ||
169 | mux { | ||
170 | pins = "gpio4", "gpio5"; | ||
171 | function = "blsp_uart2"; | ||
172 | }; | ||
173 | |||
174 | tx { | ||
175 | pins = "gpio4"; | ||
176 | drive-strength = <4>; | ||
177 | bias-disable; | ||
178 | }; | ||
179 | |||
180 | rx { | ||
181 | pins = "gpio5"; | ||
182 | drive-strength = <2>; | ||
183 | bias-pull-up; | ||
184 | }; | ||
185 | }; | ||
186 | }; | ||
diff --git a/Documentation/devicetree/bindings/pinctrl/renesas,pfc-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/renesas,pfc-pinctrl.txt index daef6fad6a5f..bfe72ec055e3 100644 --- a/Documentation/devicetree/bindings/pinctrl/renesas,pfc-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/renesas,pfc-pinctrl.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | * Renesas Pin Function Controller (GPIO and Pin Mux/Config) | 1 | * Renesas Pin Function Controller (GPIO and Pin Mux/Config) |
2 | 2 | ||
3 | The Pin Function Controller (PFC) is a Pin Mux/Config controller. On SH7372, | 3 | The Pin Function Controller (PFC) is a Pin Mux/Config controller. On SH73A0, |
4 | SH73A0, R8A73A4 and R8A7740 it also acts as a GPIO controller. | 4 | R8A73A4 and R8A7740 it also acts as a GPIO controller. |
5 | 5 | ||
6 | 6 | ||
7 | Pin Control | 7 | Pin Control |
@@ -10,13 +10,13 @@ Pin Control | |||
10 | Required Properties: | 10 | Required Properties: |
11 | 11 | ||
12 | - compatible: should be one of the following. | 12 | - compatible: should be one of the following. |
13 | - "renesas,pfc-emev2": for EMEV2 (EMMA Mobile EV2) compatible pin-controller. | ||
13 | - "renesas,pfc-r8a73a4": for R8A73A4 (R-Mobile APE6) compatible pin-controller. | 14 | - "renesas,pfc-r8a73a4": for R8A73A4 (R-Mobile APE6) compatible pin-controller. |
14 | - "renesas,pfc-r8a7740": for R8A7740 (R-Mobile A1) compatible pin-controller. | 15 | - "renesas,pfc-r8a7740": for R8A7740 (R-Mobile A1) compatible pin-controller. |
15 | - "renesas,pfc-r8a7778": for R8A7778 (R-Mobile M1) compatible pin-controller. | 16 | - "renesas,pfc-r8a7778": for R8A7778 (R-Mobile M1) compatible pin-controller. |
16 | - "renesas,pfc-r8a7779": for R8A7779 (R-Car H1) compatible pin-controller. | 17 | - "renesas,pfc-r8a7779": for R8A7779 (R-Car H1) compatible pin-controller. |
17 | - "renesas,pfc-r8a7790": for R8A7790 (R-Car H2) compatible pin-controller. | 18 | - "renesas,pfc-r8a7790": for R8A7790 (R-Car H2) compatible pin-controller. |
18 | - "renesas,pfc-r8a7791": for R8A7791 (R-Car M2) compatible pin-controller. | 19 | - "renesas,pfc-r8a7791": for R8A7791 (R-Car M2) compatible pin-controller. |
19 | - "renesas,pfc-sh7372": for SH7372 (SH-Mobile AP4) compatible pin-controller. | ||
20 | - "renesas,pfc-sh73a0": for SH73A0 (SH-Mobile AG5) compatible pin-controller. | 20 | - "renesas,pfc-sh73a0": for SH73A0 (SH-Mobile AG5) compatible pin-controller. |
21 | 21 | ||
22 | - reg: Base address and length of each memory resource used by the pin | 22 | - reg: Base address and length of each memory resource used by the pin |
@@ -75,8 +75,7 @@ bias-disable, bias-pull-up and bias-pull-down. | |||
75 | GPIO | 75 | GPIO |
76 | ---- | 76 | ---- |
77 | 77 | ||
78 | On SH7372, SH73A0, R8A73A4 and R8A7740 the PFC node is also a GPIO controller | 78 | On SH73A0, R8A73A4 and R8A7740 the PFC node is also a GPIO controller node. |
79 | node. | ||
80 | 79 | ||
81 | Required Properties: | 80 | Required Properties: |
82 | 81 | ||
diff --git a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt index 8425838a6dff..9d2a995293e6 100644 --- a/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt +++ b/Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt | |||
@@ -171,6 +171,18 @@ Aliases: | |||
171 | All the pin controller nodes should be represented in the aliases node using | 171 | All the pin controller nodes should be represented in the aliases node using |
172 | the following format 'pinctrl{n}' where n is a unique number for the alias. | 172 | the following format 'pinctrl{n}' where n is a unique number for the alias. |
173 | 173 | ||
174 | Aliases for controllers compatible with "samsung,exynos7-pinctrl": | ||
175 | - pinctrl0: pin controller of ALIVE block, | ||
176 | - pinctrl1: pin controller of BUS0 block, | ||
177 | - pinctrl2: pin controller of NFC block, | ||
178 | - pinctrl3: pin controller of TOUCH block, | ||
179 | - pinctrl4: pin controller of FF block, | ||
180 | - pinctrl5: pin controller of ESE block, | ||
181 | - pinctrl6: pin controller of FSYS0 block, | ||
182 | - pinctrl7: pin controller of FSYS1 block, | ||
183 | - pinctrl8: pin controller of BUS1 block, | ||
184 | - pinctrl9: pin controller of AUDIO block, | ||
185 | |||
174 | Example: A pin-controller node with pin banks: | 186 | Example: A pin-controller node with pin banks: |
175 | 187 | ||
176 | pinctrl_0: pinctrl@11400000 { | 188 | pinctrl_0: pinctrl@11400000 { |
diff --git a/Documentation/devicetree/bindings/pinctrl/ste,nomadik.txt b/Documentation/devicetree/bindings/pinctrl/ste,nomadik.txt index 6b33b9f18e88..f63fcb3ed352 100644 --- a/Documentation/devicetree/bindings/pinctrl/ste,nomadik.txt +++ b/Documentation/devicetree/bindings/pinctrl/ste,nomadik.txt | |||
@@ -16,17 +16,22 @@ mux function to select on those pin(s)/group(s), and various pin configuration | |||
16 | parameters, such as input, output, pull up, pull down... | 16 | parameters, such as input, output, pull up, pull down... |
17 | 17 | ||
18 | The name of each subnode is not important; all subnodes should be enumerated | 18 | The name of each subnode is not important; all subnodes should be enumerated |
19 | and processed purely based on their content. | 19 | and processed purely based on their content. The subnodes use the generic |
20 | pin multiplexing node layout from the standard pin control bindings | ||
21 | (see pinctrl-bindings.txt): | ||
20 | 22 | ||
21 | Required subnode-properties: | 23 | Required pin multiplexing subnode properties: |
22 | - ste,pins : An array of strings. Each string contains the name of a pin or | 24 | - function: A string containing the name of the function to mux to the |
23 | group. | ||
24 | |||
25 | Optional subnode-properties: | ||
26 | - ste,function: A string containing the name of the function to mux to the | ||
27 | pin or group. | 25 | pin or group. |
26 | - groups : An array of strings. Each string contains the name of a pin | ||
27 | group that will be combined with the function to form a multiplexing | ||
28 | set-up. | ||
28 | 29 | ||
29 | - ste,config: Handle of pin configuration node (e.g. ste,config = <&slpm_in_wkup_pdis>) | 30 | Required pin configuration subnode properties: |
31 | - pins: A string array describing the pins affected by the configuration | ||
32 | in the node. | ||
33 | - ste,config: Handle of pin configuration node | ||
34 | (e.g. ste,config = <&slpm_in_wkup_pdis>) | ||
30 | 35 | ||
31 | - ste,input : <0/1/2> | 36 | - ste,input : <0/1/2> |
32 | 0: input with no pull | 37 | 0: input with no pull |
@@ -97,32 +102,32 @@ Example board file extract: | |||
97 | uart0 { | 102 | uart0 { |
98 | uart0_default_mux: uart0_mux { | 103 | uart0_default_mux: uart0_mux { |
99 | u0_default_mux { | 104 | u0_default_mux { |
100 | ste,function = "u0"; | 105 | function = "u0"; |
101 | ste,pins = "u0_a_1"; | 106 | pins = "u0_a_1"; |
102 | }; | 107 | }; |
103 | }; | 108 | }; |
104 | uart0_default_mode: uart0_default { | 109 | uart0_default_mode: uart0_default { |
105 | uart0_default_cfg1 { | 110 | uart0_default_cfg1 { |
106 | ste,pins = "GPIO0", "GPIO2"; | 111 | pins = "GPIO0", "GPIO2"; |
107 | ste,input = <1>; | 112 | ste,input = <1>; |
108 | }; | 113 | }; |
109 | 114 | ||
110 | uart0_default_cfg2 { | 115 | uart0_default_cfg2 { |
111 | ste,pins = "GPIO1", "GPIO3"; | 116 | pins = "GPIO1", "GPIO3"; |
112 | ste,output = <1>; | 117 | ste,output = <1>; |
113 | }; | 118 | }; |
114 | }; | 119 | }; |
115 | uart0_sleep_mode: uart0_sleep { | 120 | uart0_sleep_mode: uart0_sleep { |
116 | uart0_sleep_cfg1 { | 121 | uart0_sleep_cfg1 { |
117 | ste,pins = "GPIO0", "GPIO2"; | 122 | pins = "GPIO0", "GPIO2"; |
118 | ste,config = <&slpm_in_wkup_pdis>; | 123 | ste,config = <&slpm_in_wkup_pdis>; |
119 | }; | 124 | }; |
120 | uart0_sleep_cfg2 { | 125 | uart0_sleep_cfg2 { |
121 | ste,pins = "GPIO1"; | 126 | pins = "GPIO1"; |
122 | ste,config = <&slpm_out_hi_wkup_pdis>; | 127 | ste,config = <&slpm_out_hi_wkup_pdis>; |
123 | }; | 128 | }; |
124 | uart0_sleep_cfg3 { | 129 | uart0_sleep_cfg3 { |
125 | ste,pins = "GPIO3"; | 130 | pins = "GPIO3"; |
126 | ste,config = <&slpm_out_wkup_pdis>; | 131 | ste,config = <&slpm_out_wkup_pdis>; |
127 | }; | 132 | }; |
128 | }; | 133 | }; |
diff --git a/Documentation/devicetree/bindings/pinctrl/xlnx,zynq-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/xlnx,zynq-pinctrl.txt new file mode 100644 index 000000000000..b7b55a964f65 --- /dev/null +++ b/Documentation/devicetree/bindings/pinctrl/xlnx,zynq-pinctrl.txt | |||
@@ -0,0 +1,104 @@ | |||
1 | Binding for Xilinx Zynq Pinctrl | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "xlnx,zynq-pinctrl" | ||
5 | - syscon: phandle to SLCR | ||
6 | - reg: Offset and length of pinctrl space in SLCR | ||
7 | |||
8 | Please refer to pinctrl-bindings.txt in this directory for details of the | ||
9 | common pinctrl bindings used by client devices, including the meaning of the | ||
10 | phrase "pin configuration node". | ||
11 | |||
12 | Zynq's pin configuration nodes act as a container for an arbitrary number of | ||
13 | subnodes. Each of these subnodes represents some desired configuration for a | ||
14 | pin, a group, or a list of pins or groups. This configuration can include the | ||
15 | mux function to select on those pin(s)/group(s), and various pin configuration | ||
16 | parameters, such as pull-up, slew rate, etc. | ||
17 | |||
18 | Each configuration node can consist of multiple nodes describing the pinmux and | ||
19 | pinconf options. Those nodes can be pinmux nodes or pinconf nodes. | ||
20 | |||
21 | The name of each subnode is not important; all subnodes should be enumerated | ||
22 | and processed purely based on their content. | ||
23 | |||
24 | Required properties for pinmux nodes are: | ||
25 | - groups: A list of pinmux groups. | ||
26 | - function: The name of a pinmux function to activate for the specified set | ||
27 | of groups. | ||
28 | |||
29 | Required properties for configuration nodes: | ||
30 | One of: | ||
31 | - pins: a list of pin names | ||
32 | - groups: A list of pinmux groups. | ||
33 | |||
34 | The following generic properties as defined in pinctrl-bindings.txt are valid | ||
35 | to specify in a pinmux subnode: | ||
36 | groups, function | ||
37 | |||
38 | The following generic properties as defined in pinctrl-bindings.txt are valid | ||
39 | to specify in a pinconf subnode: | ||
40 | groups, pins, bias-disable, bias-high-impedance, bias-pull-up, slew-rate, | ||
41 | low-power-disable, low-power-enable | ||
42 | |||
43 | Valid arguments for 'slew-rate' are '0' and '1' to select between slow and fast | ||
44 | respectively. | ||
45 | |||
46 | Valid values for groups are: | ||
47 | ethernet0_0_grp, ethernet1_0_grp, mdio0_0_grp, mdio1_0_grp, | ||
48 | qspi0_0_grp, qspi1_0_grp, qspi_fbclk, qspi_cs1_grp, spi0_0_grp, | ||
49 | spi0_1_grp - spi0_2_grp, spi1_0_grp - spi1_3_grp, sdio0_0_grp - sdio0_2_grp, | ||
50 | sdio1_0_grp - sdio1_3_grp, sdio0_emio_wp, sdio0_emio_cd, sdio1_emio_wp, | ||
51 | sdio1_emio_cd, smc0_nor, smc0_nor_cs1_grp, smc0_nor_addr25_grp, smc0_nand, | ||
52 | can0_0_grp - can0_10_grp, can1_0_grp - can1_11_grp, uart0_0_grp - uart0_10_grp, | ||
53 | uart1_0_grp - uart1_11_grp, i2c0_0_grp - i2c0_10_grp, i2c1_0_grp - i2c1_10_grp, | ||
54 | ttc0_0_grp - ttc0_2_grp, ttc1_0_grp - ttc1_2_grp, swdt0_0_grp - swdt0_4_grp, | ||
55 | gpio0_0_grp - gpio0_53_grp, usb0_0_grp, usb1_0_grp | ||
56 | |||
57 | Valid values for pins are: | ||
58 | MIO0 - MIO53 | ||
59 | |||
60 | Valid values for function are: | ||
61 | ethernet0, ethernet1, mdio0, mdio1, qspi0, qspi1, qspi_fbclk, qspi_cs1, | ||
62 | spi0, spi1, sdio0, sdio0_pc, sdio0_cd, sdio0_wp, | ||
63 | sdio1, sdio1_pc, sdio1_cd, sdio1_wp, | ||
64 | smc0_nor, smc0_nor_cs1, smc0_nor_addr25, smc0_nand, can0, can1, uart0, uart1, | ||
65 | i2c0, i2c1, ttc0, ttc1, swdt0, gpio0, usb0, usb1 | ||
66 | |||
67 | The following driver-specific properties as defined here are valid to specify in | ||
68 | a pin configuration subnode: | ||
69 | - io-standard: Configure the pin to use the selected IO standard according to | ||
70 | this mapping: | ||
71 | 1: LVCMOS18 | ||
72 | 2: LVCMOS25 | ||
73 | 3: LVCMOS33 | ||
74 | 4: HSTL | ||
75 | |||
76 | Example: | ||
77 | pinctrl0: pinctrl@700 { | ||
78 | compatible = "xlnx,pinctrl-zynq"; | ||
79 | reg = <0x700 0x200>; | ||
80 | syscon = <&slcr>; | ||
81 | |||
82 | pinctrl_uart1_default: uart1-default { | ||
83 | mux { | ||
84 | groups = "uart1_10_grp"; | ||
85 | function = "uart1"; | ||
86 | }; | ||
87 | |||
88 | conf { | ||
89 | groups = "uart1_10_grp"; | ||
90 | slew-rate = <0>; | ||
91 | io-standard = <1>; | ||
92 | }; | ||
93 | |||
94 | conf-rx { | ||
95 | pins = "MIO49"; | ||
96 | bias-high-impedance; | ||
97 | }; | ||
98 | |||
99 | conf-tx { | ||
100 | pins = "MIO48"; | ||
101 | bias-disable; | ||
102 | }; | ||
103 | }; | ||
104 | }; | ||
diff --git a/Documentation/devicetree/bindings/power/ltc2941.txt b/Documentation/devicetree/bindings/power/ltc2941.txt new file mode 100644 index 000000000000..ea42ae12d924 --- /dev/null +++ b/Documentation/devicetree/bindings/power/ltc2941.txt | |||
@@ -0,0 +1,27 @@ | |||
1 | binding for LTC2941 and LTC2943 battery gauges | ||
2 | |||
3 | Both the LTC2941 and LTC2943 measure battery capacity. | ||
4 | The LTC2943 is compatible with the LTC2941, it adds voltage and | ||
5 | temperature monitoring, and uses a slightly different conversion | ||
6 | formula for the charge counter. | ||
7 | |||
8 | Required properties: | ||
9 | - compatible: Should contain "ltc2941" or "ltc2943" which also indicates the | ||
10 | type of I2C chip attached. | ||
11 | - reg: The 7-bit I2C address. | ||
12 | - lltc,resistor-sense: The sense resistor value in milli-ohms. Can be a 32-bit | ||
13 | negative value when the battery has been connected to the wrong end of the | ||
14 | resistor. | ||
15 | - lltc,prescaler-exponent: The prescaler exponent as explained in the datasheet. | ||
16 | This determines the range and accuracy of the gauge. The value is programmed | ||
17 | into the chip only if it differs from the current setting. The setting is | ||
18 | lost when the battery is disconnected. | ||
19 | |||
20 | Example from the Topic Miami Florida board: | ||
21 | |||
22 | fuelgauge: ltc2943@64 { | ||
23 | compatible = "ltc2943"; | ||
24 | reg = <0x64>; | ||
25 | lltc,resistor-sense = <15>; | ||
26 | lltc,prescaler-exponent = <5>; /* 2^(2*5) = 1024 */ | ||
27 | }; | ||
diff --git a/Documentation/devicetree/bindings/power/renesas,sysc-rmobile.txt b/Documentation/devicetree/bindings/power/renesas,sysc-rmobile.txt new file mode 100644 index 000000000000..cc3b1f0a9b1a --- /dev/null +++ b/Documentation/devicetree/bindings/power/renesas,sysc-rmobile.txt | |||
@@ -0,0 +1,99 @@ | |||
1 | DT bindings for the Renesas R-Mobile System Controller | ||
2 | |||
3 | == System Controller Node == | ||
4 | |||
5 | The R-Mobile System Controller provides the following functions: | ||
6 | - Boot mode management, | ||
7 | - Reset generation, | ||
8 | - Power management. | ||
9 | |||
10 | Required properties: | ||
11 | - compatible: Should be "renesas,sysc-<soctype>", "renesas,sysc-rmobile" as | ||
12 | fallback. | ||
13 | Examples with soctypes are: | ||
14 | - "renesas,sysc-r8a7740" (R-Mobile A1) | ||
15 | - "renesas,sysc-sh73a0" (SH-Mobile AG5) | ||
16 | - reg: Two address start and address range blocks for the device: | ||
17 | - The first block refers to the normally accessible registers, | ||
18 | - the second block refers to the registers protected by the HPB | ||
19 | semaphore. | ||
20 | |||
21 | Optional nodes: | ||
22 | - pm-domains: This node contains a hierarchy of PM domain nodes, which should | ||
23 | match the Power Area Hierarchy in the Power Domain Specifications section of | ||
24 | the device's datasheet. | ||
25 | |||
26 | |||
27 | == PM Domain Nodes == | ||
28 | |||
29 | Each of the PM domain nodes represents a PM domain, as documented by the | ||
30 | generic PM domain bindings in | ||
31 | Documentation/devicetree/bindings/power/power_domain.txt. | ||
32 | |||
33 | The nodes should be named by the real power area names, and thus their names | ||
34 | should be unique. | ||
35 | |||
36 | Required properties: | ||
37 | - #power-domain-cells: Must be 0. | ||
38 | |||
39 | Optional properties: | ||
40 | - reg: If the PM domain is not always-on, this property must contain the bit | ||
41 | index number for the corresponding power area in the various Power | ||
42 | Control and Status Registers. The parent's node must contain the | ||
43 | following two properties: | ||
44 | - #address-cells: Must be 1, | ||
45 | - #size-cells: Must be 0. | ||
46 | If the PM domain is always-on, this property must be omitted. | ||
47 | |||
48 | |||
49 | Example: | ||
50 | |||
51 | This shows a subset of the r8a7740 PM domain hierarchy, containing the | ||
52 | C5 "always-on" domain, 2 of its subdomains (A4S and A4SU), and the A3SP domain, | ||
53 | which is a subdomain of A4S. | ||
54 | |||
55 | sysc: system-controller@e6180000 { | ||
56 | compatible = "renesas,sysc-r8a7740", "renesas,sysc-rmobile"; | ||
57 | reg = <0xe6180000 0x8000>, <0xe6188000 0x8000>; | ||
58 | |||
59 | pm-domains { | ||
60 | pd_c5: c5 { | ||
61 | #address-cells = <1>; | ||
62 | #size-cells = <0>; | ||
63 | #power-domain-cells = <0>; | ||
64 | |||
65 | pd_a4s: a4s@10 { | ||
66 | reg = <10>; | ||
67 | #address-cells = <1>; | ||
68 | #size-cells = <0>; | ||
69 | #power-domain-cells = <0>; | ||
70 | |||
71 | pd_a3sp: a3sp@11 { | ||
72 | reg = <11>; | ||
73 | #power-domain-cells = <0>; | ||
74 | }; | ||
75 | }; | ||
76 | |||
77 | pd_a4su: a4su@20 { | ||
78 | reg = <20>; | ||
79 | #power-domain-cells = <0>; | ||
80 | }; | ||
81 | }; | ||
82 | }; | ||
83 | }; | ||
84 | |||
85 | |||
86 | == PM Domain Consumers == | ||
87 | |||
88 | Hardware blocks belonging to a PM domain should contain a "power-domains" | ||
89 | property that is a phandle pointing to the corresponding PM domain node. | ||
90 | |||
91 | Example: | ||
92 | |||
93 | tpu: pwm@e6600000 { | ||
94 | compatible = "renesas,tpu-r8a7740", "renesas,tpu"; | ||
95 | reg = <0xe6600000 0x100>; | ||
96 | clocks = <&mstp3_clks R8A7740_CLK_TPU0>; | ||
97 | power-domains = <&pd_a3sp>; | ||
98 | #pwm-cells = <3>; | ||
99 | }; | ||
diff --git a/Documentation/devicetree/bindings/power/reset/ltc2952-poweroff.txt b/Documentation/devicetree/bindings/power/reset/ltc2952-poweroff.txt index 0c94c637f63b..cd2d7f58a9d7 100644 --- a/Documentation/devicetree/bindings/power/reset/ltc2952-poweroff.txt +++ b/Documentation/devicetree/bindings/power/reset/ltc2952-poweroff.txt | |||
@@ -1,20 +1,23 @@ | |||
1 | Binding for the LTC2952 PowerPath controller | 1 | Binding for the LTC2952 PowerPath controller |
2 | 2 | ||
3 | This chip is used to externally trigger a system shut down. Once the trigger has | 3 | This chip is used to externally trigger a system shut down. Once the trigger has |
4 | been sent, the chips' watchdog has to be reset to gracefully shut down. | 4 | been sent, the chip's watchdog has to be reset to gracefully shut down. |
5 | If the Linux systems decides to shut down it powers off the platform via the | 5 | A full powerdown can be triggered via the kill signal. |
6 | kill signal. | ||
7 | 6 | ||
8 | Required properties: | 7 | Required properties: |
9 | 8 | ||
10 | - compatible: Must contain: "lltc,ltc2952" | 9 | - compatible: Must contain: "lltc,ltc2952" |
11 | - trigger-gpios: phandle + gpio-specifier for the GPIO connected to the | ||
12 | chip's trigger line | ||
13 | - watchdog-gpios: phandle + gpio-specifier for the GPIO connected to the | 10 | - watchdog-gpios: phandle + gpio-specifier for the GPIO connected to the |
14 | chip's watchdog line | 11 | chip's watchdog line |
15 | - kill-gpios: phandle + gpio-specifier for the GPIO connected to the | 12 | - kill-gpios: phandle + gpio-specifier for the GPIO connected to the |
16 | chip's kill line | 13 | chip's kill line |
17 | 14 | ||
15 | Optional properties: | ||
16 | - trigger-gpios: phandle + gpio-specifier for the GPIO connected to the | ||
17 | chip's trigger line. If this property is not set, the | ||
18 | trigger function is ignored and the chip is kept alive | ||
19 | until an explicit kill signal is received | ||
20 | |||
18 | Example: | 21 | Example: |
19 | 22 | ||
20 | ltc2952 { | 23 | ltc2952 { |
diff --git a/Documentation/devicetree/bindings/power/rockchip-io-domain.txt b/Documentation/devicetree/bindings/power/rockchip-io-domain.txt index 6fbf6e7ecde6..8b70db103ca7 100644 --- a/Documentation/devicetree/bindings/power/rockchip-io-domain.txt +++ b/Documentation/devicetree/bindings/power/rockchip-io-domain.txt | |||
@@ -37,7 +37,7 @@ Required properties: | |||
37 | 37 | ||
38 | 38 | ||
39 | You specify supplies using the standard regulator bindings by including | 39 | You specify supplies using the standard regulator bindings by including |
40 | a phandle the the relevant regulator. All specified supplies must be able | 40 | a phandle the relevant regulator. All specified supplies must be able |
41 | to report their voltage. The IO Voltage Domain for any non-specified | 41 | to report their voltage. The IO Voltage Domain for any non-specified |
42 | supplies will be not be touched. | 42 | supplies will be not be touched. |
43 | 43 | ||
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt index edeea160ca39..edda55f74004 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/fman.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/fman.txt | |||
@@ -7,6 +7,7 @@ CONTENTS | |||
7 | - FMan MURAM Node | 7 | - FMan MURAM Node |
8 | - FMan dTSEC/XGEC/mEMAC Node | 8 | - FMan dTSEC/XGEC/mEMAC Node |
9 | - FMan IEEE 1588 Node | 9 | - FMan IEEE 1588 Node |
10 | - FMan MDIO Node | ||
10 | - Example | 11 | - Example |
11 | 12 | ||
12 | ============================================================================= | 13 | ============================================================================= |
@@ -357,6 +358,69 @@ ptp-timer@fe000 { | |||
357 | }; | 358 | }; |
358 | 359 | ||
359 | ============================================================================= | 360 | ============================================================================= |
361 | FMan MDIO Node | ||
362 | |||
363 | DESCRIPTION | ||
364 | |||
365 | The MDIO is a bus to which the PHY devices are connected. | ||
366 | |||
367 | PROPERTIES | ||
368 | |||
369 | - compatible | ||
370 | Usage: required | ||
371 | Value type: <stringlist> | ||
372 | Definition: A standard property. | ||
373 | Must include "fsl,fman-mdio" for 1 Gb/s MDIO from FMan v2. | ||
374 | Must include "fsl,fman-xmdio" for 10 Gb/s MDIO from FMan v2. | ||
375 | Must include "fsl,fman-memac-mdio" for 1/10 Gb/s MDIO from | ||
376 | FMan v3. | ||
377 | |||
378 | - reg | ||
379 | Usage: required | ||
380 | Value type: <prop-encoded-array> | ||
381 | Definition: A standard property. | ||
382 | |||
383 | - bus-frequency | ||
384 | Usage: optional | ||
385 | Value type: <u32> | ||
386 | Definition: Specifies the external MDIO bus clock speed to | ||
387 | be used, if different from the standard 2.5 MHz. | ||
388 | This may be due to the standard speed being unsupported (e.g. | ||
389 | due to a hardware problem), or to advertise that all relevant | ||
390 | components in the system support a faster speed. | ||
391 | |||
392 | - interrupts | ||
393 | Usage: required for external MDIO | ||
394 | Value type: <prop-encoded-array> | ||
395 | Definition: Event interrupt of external MDIO controller. | ||
396 | |||
397 | - fsl,fman-internal-mdio | ||
398 | Usage: required for internal MDIO | ||
399 | Value type: boolean | ||
400 | Definition: Fman has internal MDIO for internal PCS(Physical | ||
401 | Coding Sublayer) PHYs and external MDIO for external PHYs. | ||
402 | The settings and programming routines for internal/external | ||
403 | MDIO are different. Must be included for internal MDIO. | ||
404 | |||
405 | EXAMPLE | ||
406 | |||
407 | Example for FMan v2 external MDIO: | ||
408 | |||
409 | mdio@f1000 { | ||
410 | compatible = "fsl,fman-xmdio"; | ||
411 | reg = <0xf1000 0x1000>; | ||
412 | interrupts = <101 2 0 0>; | ||
413 | }; | ||
414 | |||
415 | Example for FMan v3 internal MDIO: | ||
416 | |||
417 | mdio@f1000 { | ||
418 | compatible = "fsl,fman-memac-mdio"; | ||
419 | reg = <0xf1000 0x1000>; | ||
420 | fsl,fman-internal-mdio; | ||
421 | }; | ||
422 | |||
423 | ============================================================================= | ||
360 | Example | 424 | Example |
361 | 425 | ||
362 | fman@400000 { | 426 | fman@400000 { |
@@ -531,4 +595,10 @@ fman@400000 { | |||
531 | compatible = "fsl,fman-ptp-timer"; | 595 | compatible = "fsl,fman-ptp-timer"; |
532 | reg = <0xfe000 0x1000>; | 596 | reg = <0xfe000 0x1000>; |
533 | }; | 597 | }; |
598 | |||
599 | mdio@f1000 { | ||
600 | compatible = "fsl,fman-xmdio"; | ||
601 | reg = <0xf1000 0x1000>; | ||
602 | interrupts = <101 2 0 0>; | ||
603 | }; | ||
534 | }; | 604 | }; |
diff --git a/Documentation/devicetree/bindings/powerpc/fsl/lbc.txt b/Documentation/devicetree/bindings/powerpc/fsl/lbc.txt index 3300fec501c5..1c80fcedebb5 100644 --- a/Documentation/devicetree/bindings/powerpc/fsl/lbc.txt +++ b/Documentation/devicetree/bindings/powerpc/fsl/lbc.txt | |||
@@ -16,20 +16,28 @@ Example: | |||
16 | "fsl,pq2-localbus"; | 16 | "fsl,pq2-localbus"; |
17 | #address-cells = <2>; | 17 | #address-cells = <2>; |
18 | #size-cells = <1>; | 18 | #size-cells = <1>; |
19 | reg = <f0010100 40>; | 19 | reg = <0xf0010100 0x40>; |
20 | 20 | ||
21 | ranges = <0 0 fe000000 02000000 | 21 | ranges = <0x0 0x0 0xfe000000 0x02000000 |
22 | 1 0 f4500000 00008000>; | 22 | 0x1 0x0 0xf4500000 0x00008000 |
23 | 0x2 0x0 0xfd810000 0x00010000>; | ||
23 | 24 | ||
24 | flash@0,0 { | 25 | flash@0,0 { |
25 | compatible = "jedec-flash"; | 26 | compatible = "jedec-flash"; |
26 | reg = <0 0 2000000>; | 27 | reg = <0x0 0x0 0x2000000>; |
27 | bank-width = <4>; | 28 | bank-width = <4>; |
28 | device-width = <1>; | 29 | device-width = <1>; |
29 | }; | 30 | }; |
30 | 31 | ||
31 | board-control@1,0 { | 32 | board-control@1,0 { |
32 | reg = <1 0 20>; | 33 | reg = <0x1 0x0 0x20>; |
33 | compatible = "fsl,mpc8272ads-bcsr"; | 34 | compatible = "fsl,mpc8272ads-bcsr"; |
34 | }; | 35 | }; |
36 | |||
37 | simple-periph@2,0 { | ||
38 | compatible = "fsl,elbc-gpcm-uio"; | ||
39 | reg = <0x2 0x0 0x10000>; | ||
40 | elbc-gpcm-br = <0xfd810800>; | ||
41 | elbc-gpcm-or = <0xffff09f7>; | ||
42 | }; | ||
35 | }; | 43 | }; |
diff --git a/Documentation/devicetree/bindings/pwm/img-pwm.txt b/Documentation/devicetree/bindings/pwm/img-pwm.txt new file mode 100644 index 000000000000..fade5f26fcac --- /dev/null +++ b/Documentation/devicetree/bindings/pwm/img-pwm.txt | |||
@@ -0,0 +1,24 @@ | |||
1 | *Imagination Technologies PWM DAC driver | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "img,pistachio-pwm" | ||
5 | - reg: Should contain physical base address and length of pwm registers. | ||
6 | - clocks: Must contain an entry for each entry in clock-names. | ||
7 | See ../clock/clock-bindings.txt for details. | ||
8 | - clock-names: Must include the following entries. | ||
9 | - pwm: PWM operating clock. | ||
10 | - sys: PWM system interface clock. | ||
11 | - #pwm-cells: Should be 2. See pwm.txt in this directory for the | ||
12 | description of the cells format. | ||
13 | - img,cr-periph: Must contain a phandle to the peripheral control | ||
14 | syscon node which contains PWM control registers. | ||
15 | |||
16 | Example: | ||
17 | pwm: pwm@18101300 { | ||
18 | compatible = "img,pistachio-pwm"; | ||
19 | reg = <0x18101300 0x100>; | ||
20 | clocks = <&pwm_clk>, <&system_clk>; | ||
21 | clock-names = "pwm", "sys"; | ||
22 | #pwm-cells = <2>; | ||
23 | img,cr-periph = <&cr_periph>; | ||
24 | }; | ||
diff --git a/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt index c7ea9d4a988b..c52f03b5032f 100644 --- a/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt +++ b/Documentation/devicetree/bindings/pwm/nvidia,tegra20-pwm.txt | |||
@@ -1,9 +1,10 @@ | |||
1 | Tegra SoC PWFM controller | 1 | Tegra SoC PWFM controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: should be one of: | 4 | - compatible: For Tegra20, must contain "nvidia,tegra20-pwm". For Tegra30, |
5 | - "nvidia,tegra20-pwm" | 5 | must contain "nvidia,tegra30-pwm". Otherwise, must contain |
6 | - "nvidia,tegra30-pwm" | 6 | "nvidia,<chip>-pwm", plus one of the above, where <chip> is tegra114, |
7 | tegra124, tegra132, or tegra210. | ||
7 | - reg: physical base address and length of the controller's registers | 8 | - reg: physical base address and length of the controller's registers |
8 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of | 9 | - #pwm-cells: should be 2. See pwm.txt in this directory for a description of |
9 | the cells format. | 10 | the cells format. |
diff --git a/Documentation/devicetree/bindings/pwm/pwm-sun4i.txt b/Documentation/devicetree/bindings/pwm/pwm-sun4i.txt new file mode 100644 index 000000000000..ae0273e19506 --- /dev/null +++ b/Documentation/devicetree/bindings/pwm/pwm-sun4i.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | Allwinner sun4i and sun7i SoC PWM controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: should be one of: | ||
5 | - "allwinner,sun4i-a10-pwm" | ||
6 | - "allwinner,sun7i-a20-pwm" | ||
7 | - reg: physical base address and length of the controller's registers | ||
8 | - #pwm-cells: should be 3. See pwm.txt in this directory for a description of | ||
9 | the cells format. | ||
10 | - clocks: From common clock binding, handle to the parent clock. | ||
11 | |||
12 | Example: | ||
13 | |||
14 | pwm: pwm@01c20e00 { | ||
15 | compatible = "allwinner,sun7i-a20-pwm"; | ||
16 | reg = <0x01c20e00 0xc>; | ||
17 | clocks = <&osc24M>; | ||
18 | #pwm-cells = <3>; | ||
19 | status = "disabled"; | ||
20 | }; | ||
diff --git a/Documentation/devicetree/bindings/regulator/da9211.txt b/Documentation/devicetree/bindings/regulator/da9211.txt index 240019a82f9a..eb618907c7de 100644 --- a/Documentation/devicetree/bindings/regulator/da9211.txt +++ b/Documentation/devicetree/bindings/regulator/da9211.txt | |||
@@ -11,6 +11,7 @@ Required properties: | |||
11 | BUCKA and BUCKB. | 11 | BUCKA and BUCKB. |
12 | 12 | ||
13 | Optional properties: | 13 | Optional properties: |
14 | - enable-gpios: platform gpio for control of BUCKA/BUCKB. | ||
14 | - Any optional property defined in regulator.txt | 15 | - Any optional property defined in regulator.txt |
15 | 16 | ||
16 | Example 1) DA9211 | 17 | Example 1) DA9211 |
@@ -27,6 +28,7 @@ Example 1) DA9211 | |||
27 | regulator-max-microvolt = <1570000>; | 28 | regulator-max-microvolt = <1570000>; |
28 | regulator-min-microamp = <2000000>; | 29 | regulator-min-microamp = <2000000>; |
29 | regulator-max-microamp = <5000000>; | 30 | regulator-max-microamp = <5000000>; |
31 | enable-gpios = <&gpio 27 0>; | ||
30 | }; | 32 | }; |
31 | BUCKB { | 33 | BUCKB { |
32 | regulator-name = "VBUCKB"; | 34 | regulator-name = "VBUCKB"; |
@@ -34,11 +36,12 @@ Example 1) DA9211 | |||
34 | regulator-max-microvolt = <1570000>; | 36 | regulator-max-microvolt = <1570000>; |
35 | regulator-min-microamp = <2000000>; | 37 | regulator-min-microamp = <2000000>; |
36 | regulator-max-microamp = <5000000>; | 38 | regulator-max-microamp = <5000000>; |
39 | enable-gpios = <&gpio 17 0>; | ||
37 | }; | 40 | }; |
38 | }; | 41 | }; |
39 | }; | 42 | }; |
40 | 43 | ||
41 | Example 2) DA92113 | 44 | Example 2) DA9213 |
42 | pmic: da9213@68 { | 45 | pmic: da9213@68 { |
43 | compatible = "dlg,da9213"; | 46 | compatible = "dlg,da9213"; |
44 | reg = <0x68>; | 47 | reg = <0x68>; |
@@ -51,6 +54,7 @@ Example 2) DA92113 | |||
51 | regulator-max-microvolt = <1570000>; | 54 | regulator-max-microvolt = <1570000>; |
52 | regulator-min-microamp = <3000000>; | 55 | regulator-min-microamp = <3000000>; |
53 | regulator-max-microamp = <6000000>; | 56 | regulator-max-microamp = <6000000>; |
57 | enable-gpios = <&gpio 27 0>; | ||
54 | }; | 58 | }; |
55 | BUCKB { | 59 | BUCKB { |
56 | regulator-name = "VBUCKB"; | 60 | regulator-name = "VBUCKB"; |
@@ -58,6 +62,7 @@ Example 2) DA92113 | |||
58 | regulator-max-microvolt = <1570000>; | 62 | regulator-max-microvolt = <1570000>; |
59 | regulator-min-microamp = <3000000>; | 63 | regulator-min-microamp = <3000000>; |
60 | regulator-max-microamp = <6000000>; | 64 | regulator-max-microamp = <6000000>; |
65 | enable-gpios = <&gpio 17 0>; | ||
61 | }; | 66 | }; |
62 | }; | 67 | }; |
63 | }; | 68 | }; |
diff --git a/Documentation/devicetree/bindings/regulator/isl9305.txt b/Documentation/devicetree/bindings/regulator/isl9305.txt index a626fc1bbf0d..d6e7c9ec9413 100644 --- a/Documentation/devicetree/bindings/regulator/isl9305.txt +++ b/Documentation/devicetree/bindings/regulator/isl9305.txt | |||
@@ -2,7 +2,7 @@ Intersil ISL9305/ISL9305H voltage regulator | |||
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | 4 | ||
5 | - compatible: "isl,isl9305" or "isl,isl9305h" | 5 | - compatible: "isil,isl9305" or "isil,isl9305h" |
6 | - reg: I2C slave address, usually 0x68. | 6 | - reg: I2C slave address, usually 0x68. |
7 | - regulators: A node that houses a sub-node for each regulator within the | 7 | - regulators: A node that houses a sub-node for each regulator within the |
8 | device. Each sub-node is identified using the node's name, with valid | 8 | device. Each sub-node is identified using the node's name, with valid |
@@ -19,7 +19,7 @@ Optional properties: | |||
19 | Example | 19 | Example |
20 | 20 | ||
21 | pmic: isl9305@68 { | 21 | pmic: isl9305@68 { |
22 | compatible = "isl,isl9305"; | 22 | compatible = "isil,isl9305"; |
23 | reg = <0x68>; | 23 | reg = <0x68>; |
24 | 24 | ||
25 | VINDCD1-supply = <&system_power>; | 25 | VINDCD1-supply = <&system_power>; |
diff --git a/Documentation/devicetree/bindings/regulator/mt6397-regulator.txt b/Documentation/devicetree/bindings/regulator/mt6397-regulator.txt new file mode 100644 index 000000000000..a42b1d6e9863 --- /dev/null +++ b/Documentation/devicetree/bindings/regulator/mt6397-regulator.txt | |||
@@ -0,0 +1,217 @@ | |||
1 | Mediatek MT6397 Regulator Driver | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "mediatek,mt6397-regulator" | ||
5 | - mt6397regulator: List of regulators provided by this controller. It is named | ||
6 | according to its regulator type, buck_<name> and ldo_<name>. | ||
7 | The definition for each of these nodes is defined using the standard binding | ||
8 | for regulators at Documentation/devicetree/bindings/regulator/regulator.txt. | ||
9 | |||
10 | The valid names for regulators are:: | ||
11 | BUCK: | ||
12 | buck_vpca15, buck_vpca7, buck_vsramca15, buck_vsramca7, buck_vcore, buck_vgpu, | ||
13 | buck_vdrm, buck_vio18 | ||
14 | LDO: | ||
15 | ldo_vtcxo, ldo_va28, ldo_vcama, ldo_vio28, ldo_vusb, ldo_vmc, ldo_vmch, | ||
16 | ldo_vemc3v3, ldo_vgp1, ldo_vgp2, ldo_vgp3, ldo_vgp4, ldo_vgp5, ldo_vgp6, | ||
17 | ldo_vibr | ||
18 | |||
19 | Example: | ||
20 | pmic { | ||
21 | compatible = "mediatek,mt6397"; | ||
22 | |||
23 | mt6397regulator: mt6397regulator { | ||
24 | compatible = "mediatek,mt6397-regulator"; | ||
25 | |||
26 | mt6397_vpca15_reg: buck_vpca15 { | ||
27 | regulator-compatible = "buck_vpca15"; | ||
28 | regulator-name = "vpca15"; | ||
29 | regulator-min-microvolt = < 850000>; | ||
30 | regulator-max-microvolt = <1350000>; | ||
31 | regulator-ramp-delay = <12500>; | ||
32 | regulator-enable-ramp-delay = <200>; | ||
33 | }; | ||
34 | |||
35 | mt6397_vpca7_reg: buck_vpca7 { | ||
36 | regulator-compatible = "buck_vpca7"; | ||
37 | regulator-name = "vpca7"; | ||
38 | regulator-min-microvolt = < 850000>; | ||
39 | regulator-max-microvolt = <1350000>; | ||
40 | regulator-ramp-delay = <12500>; | ||
41 | regulator-enable-ramp-delay = <115>; | ||
42 | }; | ||
43 | |||
44 | mt6397_vsramca15_reg: buck_vsramca15 { | ||
45 | regulator-compatible = "buck_vsramca15"; | ||
46 | regulator-name = "vsramca15"; | ||
47 | regulator-min-microvolt = < 850000>; | ||
48 | regulator-max-microvolt = <1350000>; | ||
49 | regulator-ramp-delay = <12500>; | ||
50 | regulator-enable-ramp-delay = <115>; | ||
51 | |||
52 | }; | ||
53 | |||
54 | mt6397_vsramca7_reg: buck_vsramca7 { | ||
55 | regulator-compatible = "buck_vsramca7"; | ||
56 | regulator-name = "vsramca7"; | ||
57 | regulator-min-microvolt = < 850000>; | ||
58 | regulator-max-microvolt = <1350000>; | ||
59 | regulator-ramp-delay = <12500>; | ||
60 | regulator-enable-ramp-delay = <115>; | ||
61 | |||
62 | }; | ||
63 | |||
64 | mt6397_vcore_reg: buck_vcore { | ||
65 | regulator-compatible = "buck_vcore"; | ||
66 | regulator-name = "vcore"; | ||
67 | regulator-min-microvolt = < 850000>; | ||
68 | regulator-max-microvolt = <1350000>; | ||
69 | regulator-ramp-delay = <12500>; | ||
70 | regulator-enable-ramp-delay = <115>; | ||
71 | }; | ||
72 | |||
73 | mt6397_vgpu_reg: buck_vgpu { | ||
74 | regulator-compatible = "buck_vgpu"; | ||
75 | regulator-name = "vgpu"; | ||
76 | regulator-min-microvolt = < 700000>; | ||
77 | regulator-max-microvolt = <1350000>; | ||
78 | regulator-ramp-delay = <12500>; | ||
79 | regulator-enable-ramp-delay = <115>; | ||
80 | }; | ||
81 | |||
82 | mt6397_vdrm_reg: buck_vdrm { | ||
83 | regulator-compatible = "buck_vdrm"; | ||
84 | regulator-name = "vdrm"; | ||
85 | regulator-min-microvolt = < 800000>; | ||
86 | regulator-max-microvolt = <1400000>; | ||
87 | regulator-ramp-delay = <12500>; | ||
88 | regulator-enable-ramp-delay = <500>; | ||
89 | }; | ||
90 | |||
91 | mt6397_vio18_reg: buck_vio18 { | ||
92 | regulator-compatible = "buck_vio18"; | ||
93 | regulator-name = "vio18"; | ||
94 | regulator-min-microvolt = <1500000>; | ||
95 | regulator-max-microvolt = <2120000>; | ||
96 | regulator-ramp-delay = <12500>; | ||
97 | regulator-enable-ramp-delay = <500>; | ||
98 | }; | ||
99 | |||
100 | mt6397_vtcxo_reg: ldo_vtcxo { | ||
101 | regulator-compatible = "ldo_vtcxo"; | ||
102 | regulator-name = "vtcxo"; | ||
103 | regulator-min-microvolt = <2800000>; | ||
104 | regulator-max-microvolt = <2800000>; | ||
105 | regulator-enable-ramp-delay = <90>; | ||
106 | }; | ||
107 | |||
108 | mt6397_va28_reg: ldo_va28 { | ||
109 | regulator-compatible = "ldo_va28"; | ||
110 | regulator-name = "va28"; | ||
111 | /* fixed output 2.8 V */ | ||
112 | regulator-enable-ramp-delay = <218>; | ||
113 | }; | ||
114 | |||
115 | mt6397_vcama_reg: ldo_vcama { | ||
116 | regulator-compatible = "ldo_vcama"; | ||
117 | regulator-name = "vcama"; | ||
118 | regulator-min-microvolt = <1500000>; | ||
119 | regulator-max-microvolt = <2800000>; | ||
120 | regulator-enable-ramp-delay = <218>; | ||
121 | }; | ||
122 | |||
123 | mt6397_vio28_reg: ldo_vio28 { | ||
124 | regulator-compatible = "ldo_vio28"; | ||
125 | regulator-name = "vio28"; | ||
126 | /* fixed output 2.8 V */ | ||
127 | regulator-enable-ramp-delay = <240>; | ||
128 | }; | ||
129 | |||
130 | mt6397_usb_reg: ldo_vusb { | ||
131 | regulator-compatible = "ldo_vusb"; | ||
132 | regulator-name = "vusb"; | ||
133 | /* fixed output 3.3 V */ | ||
134 | regulator-enable-ramp-delay = <218>; | ||
135 | }; | ||
136 | |||
137 | mt6397_vmc_reg: ldo_vmc { | ||
138 | regulator-compatible = "ldo_vmc"; | ||
139 | regulator-name = "vmc"; | ||
140 | regulator-min-microvolt = <1800000>; | ||
141 | regulator-max-microvolt = <3300000>; | ||
142 | regulator-enable-ramp-delay = <218>; | ||
143 | }; | ||
144 | |||
145 | mt6397_vmch_reg: ldo_vmch { | ||
146 | regulator-compatible = "ldo_vmch"; | ||
147 | regulator-name = "vmch"; | ||
148 | regulator-min-microvolt = <3000000>; | ||
149 | regulator-max-microvolt = <3300000>; | ||
150 | regulator-enable-ramp-delay = <218>; | ||
151 | }; | ||
152 | |||
153 | mt6397_vemc_3v3_reg: ldo_vemc3v3 { | ||
154 | regulator-compatible = "ldo_vemc3v3"; | ||
155 | regulator-name = "vemc_3v3"; | ||
156 | regulator-min-microvolt = <3000000>; | ||
157 | regulator-max-microvolt = <3300000>; | ||
158 | regulator-enable-ramp-delay = <218>; | ||
159 | }; | ||
160 | |||
161 | mt6397_vgp1_reg: ldo_vgp1 { | ||
162 | regulator-compatible = "ldo_vgp1"; | ||
163 | regulator-name = "vcamd"; | ||
164 | regulator-min-microvolt = <1220000>; | ||
165 | regulator-max-microvolt = <3300000>; | ||
166 | regulator-enable-ramp-delay = <240>; | ||
167 | }; | ||
168 | |||
169 | mt6397_vgp2_reg: ldo_vgp2 { | ||
170 | egulator-compatible = "ldo_vgp2"; | ||
171 | regulator-name = "vcamio"; | ||
172 | regulator-min-microvolt = <1000000>; | ||
173 | regulator-max-microvolt = <3300000>; | ||
174 | regulator-enable-ramp-delay = <218>; | ||
175 | }; | ||
176 | |||
177 | mt6397_vgp3_reg: ldo_vgp3 { | ||
178 | regulator-compatible = "ldo_vgp3"; | ||
179 | regulator-name = "vcamaf"; | ||
180 | regulator-min-microvolt = <1200000>; | ||
181 | regulator-max-microvolt = <3300000>; | ||
182 | regulator-enable-ramp-delay = <218>; | ||
183 | }; | ||
184 | |||
185 | mt6397_vgp4_reg: ldo_vgp4 { | ||
186 | regulator-compatible = "ldo_vgp4"; | ||
187 | regulator-name = "vgp4"; | ||
188 | regulator-min-microvolt = <1200000>; | ||
189 | regulator-max-microvolt = <3300000>; | ||
190 | regulator-enable-ramp-delay = <218>; | ||
191 | }; | ||
192 | |||
193 | mt6397_vgp5_reg: ldo_vgp5 { | ||
194 | regulator-compatible = "ldo_vgp5"; | ||
195 | regulator-name = "vgp5"; | ||
196 | regulator-min-microvolt = <1200000>; | ||
197 | regulator-max-microvolt = <3000000>; | ||
198 | regulator-enable-ramp-delay = <218>; | ||
199 | }; | ||
200 | |||
201 | mt6397_vgp6_reg: ldo_vgp6 { | ||
202 | regulator-compatible = "ldo_vgp6"; | ||
203 | regulator-name = "vgp6"; | ||
204 | regulator-min-microvolt = <1200000>; | ||
205 | regulator-max-microvolt = <3300000>; | ||
206 | regulator-enable-ramp-delay = <218>; | ||
207 | }; | ||
208 | |||
209 | mt6397_vibr_reg: ldo_vibr { | ||
210 | regulator-compatible = "ldo_vibr"; | ||
211 | regulator-name = "vibr"; | ||
212 | regulator-min-microvolt = <1200000>; | ||
213 | regulator-max-microvolt = <3300000>; | ||
214 | regulator-enable-ramp-delay = <218>; | ||
215 | }; | ||
216 | }; | ||
217 | }; | ||
diff --git a/Documentation/devicetree/bindings/regulator/pfuze100.txt b/Documentation/devicetree/bindings/regulator/pfuze100.txt index 34ef5d16d0f1..9b40db88f637 100644 --- a/Documentation/devicetree/bindings/regulator/pfuze100.txt +++ b/Documentation/devicetree/bindings/regulator/pfuze100.txt | |||
@@ -1,7 +1,7 @@ | |||
1 | PFUZE100 family of regulators | 1 | PFUZE100 family of regulators |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: "fsl,pfuze100" or "fsl,pfuze200" | 4 | - compatible: "fsl,pfuze100", "fsl,pfuze200", "fsl,pfuze3000" |
5 | - reg: I2C slave address | 5 | - reg: I2C slave address |
6 | 6 | ||
7 | Required child node: | 7 | Required child node: |
@@ -14,6 +14,8 @@ Required child node: | |||
14 | sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6 | 14 | sw1ab,sw1c,sw2,sw3a,sw3b,sw4,swbst,vsnvs,vrefddr,vgen1~vgen6 |
15 | --PFUZE200 | 15 | --PFUZE200 |
16 | sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6 | 16 | sw1ab,sw2,sw3a,sw3b,swbst,vsnvs,vrefddr,vgen1~vgen6 |
17 | --PFUZE3000 | ||
18 | sw1a,sw1b,sw2,sw3,swbst,vsnvs,vrefddr,vldo1,vldo2,vccsd,v33,vldo3,vldo4 | ||
17 | 19 | ||
18 | Each regulator is defined using the standard binding for regulators. | 20 | Each regulator is defined using the standard binding for regulators. |
19 | 21 | ||
@@ -205,3 +207,93 @@ Example 2: PFUZE200 | |||
205 | }; | 207 | }; |
206 | }; | 208 | }; |
207 | }; | 209 | }; |
210 | |||
211 | Example 3: PFUZE3000 | ||
212 | |||
213 | pmic: pfuze3000@08 { | ||
214 | compatible = "fsl,pfuze3000"; | ||
215 | reg = <0x08>; | ||
216 | |||
217 | regulators { | ||
218 | sw1a_reg: sw1a { | ||
219 | regulator-min-microvolt = <700000>; | ||
220 | regulator-max-microvolt = <1475000>; | ||
221 | regulator-boot-on; | ||
222 | regulator-always-on; | ||
223 | regulator-ramp-delay = <6250>; | ||
224 | }; | ||
225 | /* use sw1c_reg to align with pfuze100/pfuze200 */ | ||
226 | sw1c_reg: sw1b { | ||
227 | regulator-min-microvolt = <700000>; | ||
228 | regulator-max-microvolt = <1475000>; | ||
229 | regulator-boot-on; | ||
230 | regulator-always-on; | ||
231 | regulator-ramp-delay = <6250>; | ||
232 | }; | ||
233 | |||
234 | sw2_reg: sw2 { | ||
235 | regulator-min-microvolt = <2500000>; | ||
236 | regulator-max-microvolt = <3300000>; | ||
237 | regulator-boot-on; | ||
238 | regulator-always-on; | ||
239 | }; | ||
240 | |||
241 | sw3a_reg: sw3 { | ||
242 | regulator-min-microvolt = <900000>; | ||
243 | regulator-max-microvolt = <1650000>; | ||
244 | regulator-boot-on; | ||
245 | regulator-always-on; | ||
246 | }; | ||
247 | |||
248 | swbst_reg: swbst { | ||
249 | regulator-min-microvolt = <5000000>; | ||
250 | regulator-max-microvolt = <5150000>; | ||
251 | }; | ||
252 | |||
253 | snvs_reg: vsnvs { | ||
254 | regulator-min-microvolt = <1000000>; | ||
255 | regulator-max-microvolt = <3000000>; | ||
256 | regulator-boot-on; | ||
257 | regulator-always-on; | ||
258 | }; | ||
259 | |||
260 | vref_reg: vrefddr { | ||
261 | regulator-boot-on; | ||
262 | regulator-always-on; | ||
263 | }; | ||
264 | |||
265 | vgen1_reg: vldo1 { | ||
266 | regulator-min-microvolt = <1800000>; | ||
267 | regulator-max-microvolt = <3300000>; | ||
268 | regulator-always-on; | ||
269 | }; | ||
270 | |||
271 | vgen2_reg: vldo2 { | ||
272 | regulator-min-microvolt = <800000>; | ||
273 | regulator-max-microvolt = <1550000>; | ||
274 | }; | ||
275 | |||
276 | vgen3_reg: vccsd { | ||
277 | regulator-min-microvolt = <2850000>; | ||
278 | regulator-max-microvolt = <3300000>; | ||
279 | regulator-always-on; | ||
280 | }; | ||
281 | |||
282 | vgen4_reg: v33 { | ||
283 | regulator-min-microvolt = <2850000>; | ||
284 | regulator-max-microvolt = <3300000>; | ||
285 | }; | ||
286 | |||
287 | vgen5_reg: vldo3 { | ||
288 | regulator-min-microvolt = <1800000>; | ||
289 | regulator-max-microvolt = <3300000>; | ||
290 | regulator-always-on; | ||
291 | }; | ||
292 | |||
293 | vgen6_reg: vldo4 { | ||
294 | regulator-min-microvolt = <1800000>; | ||
295 | regulator-max-microvolt = <3300000>; | ||
296 | regulator-always-on; | ||
297 | }; | ||
298 | }; | ||
299 | }; | ||
diff --git a/Documentation/devicetree/bindings/rtc/armada-380-rtc.txt b/Documentation/devicetree/bindings/rtc/armada-380-rtc.txt new file mode 100644 index 000000000000..2eb9d4ee7dc0 --- /dev/null +++ b/Documentation/devicetree/bindings/rtc/armada-380-rtc.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | * Real Time Clock of the Armada 38x SoCs | ||
2 | |||
3 | RTC controller for the Armada 38x SoCs | ||
4 | |||
5 | Required properties: | ||
6 | - compatible : Should be "marvell,armada-380-rtc" | ||
7 | - reg: a list of base address and size pairs, one for each entry in | ||
8 | reg-names | ||
9 | - reg names: should contain: | ||
10 | * "rtc" for the RTC registers | ||
11 | * "rtc-soc" for the SoC related registers and among them the one | ||
12 | related to the interrupt. | ||
13 | - interrupts: IRQ line for the RTC. | ||
14 | |||
15 | Example: | ||
16 | |||
17 | rtc@a3800 { | ||
18 | compatible = "marvell,armada-380-rtc"; | ||
19 | reg = <0xa3800 0x20>, <0x184a0 0x0c>; | ||
20 | reg-names = "rtc", "rtc-soc"; | ||
21 | interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; | ||
22 | }; | ||
diff --git a/Documentation/devicetree/bindings/rtc/isil,isl12057.txt b/Documentation/devicetree/bindings/rtc/isil,isl12057.txt new file mode 100644 index 000000000000..501c39ceae79 --- /dev/null +++ b/Documentation/devicetree/bindings/rtc/isil,isl12057.txt | |||
@@ -0,0 +1,78 @@ | |||
1 | Intersil ISL12057 I2C RTC/Alarm chip | ||
2 | |||
3 | ISL12057 is a trivial I2C device (it has simple device tree bindings, | ||
4 | consisting of a compatible field, an address and possibly an interrupt | ||
5 | line). | ||
6 | |||
7 | Nonetheless, it also supports an option boolean property | ||
8 | ("isil,irq2-can-wakeup-machine") to handle the specific use-case found | ||
9 | on at least three in-tree users of the chip (NETGEAR ReadyNAS 102, 104 | ||
10 | and 2120 ARM-based NAS); On those devices, the IRQ#2 pin of the chip | ||
11 | (associated with the alarm supported by the driver) is not connected | ||
12 | to the SoC but to a PMIC. It allows the device to be powered up when | ||
13 | RTC alarm rings. In order to mark the device has a wakeup source and | ||
14 | get access to the 'wakealarm' sysfs entry, this specific property can | ||
15 | be set when the IRQ#2 pin of the chip is not connected to the SoC but | ||
16 | can wake up the device. | ||
17 | |||
18 | Required properties supported by the device: | ||
19 | |||
20 | - "compatible": must be "isil,isl12057" | ||
21 | - "reg": I2C bus address of the device | ||
22 | |||
23 | Optional properties: | ||
24 | |||
25 | - "isil,irq2-can-wakeup-machine": mark the chip as a wakeup source, | ||
26 | independently of the availability of an IRQ line connected to the | ||
27 | SoC. | ||
28 | |||
29 | - "interrupt-parent", "interrupts": for passing the interrupt line | ||
30 | of the SoC connected to IRQ#2 of the RTC chip. | ||
31 | |||
32 | |||
33 | Example isl12057 node without IRQ#2 pin connected (no alarm support): | ||
34 | |||
35 | isl12057: isl12057@68 { | ||
36 | compatible = "isil,isl12057"; | ||
37 | reg = <0x68>; | ||
38 | }; | ||
39 | |||
40 | |||
41 | Example isl12057 node with IRQ#2 pin connected to main SoC via MPP6 (note | ||
42 | that the pinctrl-related properties below are given for completeness and | ||
43 | may not be required or may be different depending on your system or | ||
44 | SoC, and the main function of the MPP used as IRQ line, i.e. | ||
45 | "interrupt-parent" and "interrupts" are usually sufficient): | ||
46 | |||
47 | pinctrl { | ||
48 | ... | ||
49 | |||
50 | rtc_alarm_pin: rtc_alarm_pin { | ||
51 | marvell,pins = "mpp6"; | ||
52 | marvell,function = "gpio"; | ||
53 | }; | ||
54 | |||
55 | ... | ||
56 | |||
57 | }; | ||
58 | |||
59 | ... | ||
60 | |||
61 | isl12057: isl12057@68 { | ||
62 | compatible = "isil,isl12057"; | ||
63 | reg = <0x68>; | ||
64 | pinctrl-0 = <&rtc_alarm_pin>; | ||
65 | pinctrl-names = "default"; | ||
66 | interrupt-parent = <&gpio0>; | ||
67 | interrupts = <6 IRQ_TYPE_EDGE_FALLING>; | ||
68 | }; | ||
69 | |||
70 | |||
71 | Example isl12057 node without IRQ#2 pin connected to the SoC but to a | ||
72 | PMIC, allowing the device to be started based on configured alarm: | ||
73 | |||
74 | isl12057: isl12057@68 { | ||
75 | compatible = "isil,isl12057"; | ||
76 | reg = <0x68>; | ||
77 | isil,irq2-can-wakeup-machine; | ||
78 | }; | ||
diff --git a/Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt b/Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt index 652d1ff2e8be..b7d98ed3e098 100644 --- a/Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt +++ b/Documentation/devicetree/bindings/rtc/nvidia,tegra20-rtc.txt | |||
@@ -6,7 +6,9 @@ state. | |||
6 | 6 | ||
7 | Required properties: | 7 | Required properties: |
8 | 8 | ||
9 | - compatible : should be "nvidia,tegra20-rtc". | 9 | - compatible : For Tegra20, must contain "nvidia,tegra20-rtc". Otherwise, |
10 | must contain '"nvidia,<chip>-rtc", "nvidia,tegra20-rtc"', where <chip> | ||
11 | can be tegra30, tegra114, tegra124, or tegra132. | ||
10 | - reg : Specifies base physical address and size of the registers. | 12 | - reg : Specifies base physical address and size of the registers. |
11 | - interrupts : A single interrupt specifier. | 13 | - interrupts : A single interrupt specifier. |
12 | - clocks : Must contain one entry, for the module clock. | 14 | - clocks : Must contain one entry, for the module clock. |
diff --git a/Documentation/devicetree/bindings/rtc/nxp,rtc-2123.txt b/Documentation/devicetree/bindings/rtc/nxp,rtc-2123.txt new file mode 100644 index 000000000000..5cbc0b145a61 --- /dev/null +++ b/Documentation/devicetree/bindings/rtc/nxp,rtc-2123.txt | |||
@@ -0,0 +1,16 @@ | |||
1 | NXP PCF2123 SPI Real Time Clock | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: should be: "nxp,rtc-pcf2123" | ||
5 | - reg: should be the SPI slave chipselect address | ||
6 | |||
7 | Optional properties: | ||
8 | - spi-cs-high: PCF2123 needs chipselect high | ||
9 | |||
10 | Example: | ||
11 | |||
12 | rtc: nxp,rtc-pcf2123@3 { | ||
13 | compatible = "nxp,rtc-pcf2123" | ||
14 | reg = <3> | ||
15 | spi-cs-high; | ||
16 | }; | ||
diff --git a/Documentation/devicetree/bindings/security/tpm/st33zp24-i2c.txt b/Documentation/devicetree/bindings/security/tpm/st33zp24-i2c.txt new file mode 100644 index 000000000000..3ad115efed1e --- /dev/null +++ b/Documentation/devicetree/bindings/security/tpm/st33zp24-i2c.txt | |||
@@ -0,0 +1,36 @@ | |||
1 | * STMicroelectronics SAS. ST33ZP24 TPM SoC | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: Should be "st,st33zp24-i2c". | ||
5 | - clock-frequency: I²C work frequency. | ||
6 | - reg: address on the bus | ||
7 | |||
8 | Optional ST33ZP24 Properties: | ||
9 | - interrupt-parent: phandle for the interrupt gpio controller | ||
10 | - interrupts: GPIO interrupt to which the chip is connected | ||
11 | - lpcpd-gpios: Output GPIO pin used for ST33ZP24 power management D1/D2 state. | ||
12 | If set, power must be present when the platform is going into sleep/hibernate mode. | ||
13 | |||
14 | Optional SoC Specific Properties: | ||
15 | - pinctrl-names: Contains only one value - "default". | ||
16 | - pintctrl-0: Specifies the pin control groups used for this controller. | ||
17 | |||
18 | Example (for ARM-based BeagleBoard xM with ST33ZP24 on I2C2): | ||
19 | |||
20 | &i2c2 { | ||
21 | |||
22 | status = "okay"; | ||
23 | |||
24 | st33zp24: st33zp24@13 { | ||
25 | |||
26 | compatible = "st,st33zp24-i2c"; | ||
27 | |||
28 | reg = <0x13>; | ||
29 | clock-frequency = <400000>; | ||
30 | |||
31 | interrupt-parent = <&gpio5>; | ||
32 | interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; | ||
33 | |||
34 | lpcpd-gpios = <&gpio5 15 GPIO_ACTIVE_HIGH>; | ||
35 | }; | ||
36 | }; | ||
diff --git a/Documentation/devicetree/bindings/serial/digicolor-usart.txt b/Documentation/devicetree/bindings/serial/digicolor-usart.txt new file mode 100644 index 000000000000..2d3ede66889d --- /dev/null +++ b/Documentation/devicetree/bindings/serial/digicolor-usart.txt | |||
@@ -0,0 +1,27 @@ | |||
1 | Binding for Conexant Digicolor USART | ||
2 | |||
3 | Note: this binding is only applicable for using the USART peripheral as | ||
4 | UART. USART also support synchronous serial protocols like SPI and I2S. Use | ||
5 | the binding that matches the wiring of your system. | ||
6 | |||
7 | Required properties: | ||
8 | - compatible : should be "cnxt,cx92755-usart". | ||
9 | - reg: Should contain USART controller registers location and length. | ||
10 | - interrupts: Should contain a single USART controller interrupt. | ||
11 | - clocks: Must contain phandles to the USART clock | ||
12 | See ../clocks/clock-bindings.txt for details. | ||
13 | |||
14 | Note: Each UART port should have an alias correctly numbered | ||
15 | in "aliases" node. | ||
16 | |||
17 | Example: | ||
18 | aliases { | ||
19 | serial0 = &uart0; | ||
20 | }; | ||
21 | |||
22 | uart0: uart@f0000740 { | ||
23 | compatible = "cnxt,cx92755-usart"; | ||
24 | reg = <0xf0000740 0x20>; | ||
25 | clocks = <&main_clk>; | ||
26 | interrupts = <44>; | ||
27 | }; | ||
diff --git a/Documentation/devicetree/bindings/serial/mtk-uart.txt b/Documentation/devicetree/bindings/serial/mtk-uart.txt index 48358a33ea7d..44152261e5c5 100644 --- a/Documentation/devicetree/bindings/serial/mtk-uart.txt +++ b/Documentation/devicetree/bindings/serial/mtk-uart.txt | |||
@@ -2,9 +2,13 @@ | |||
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible should contain: | 4 | - compatible should contain: |
5 | * "mediatek,mt8135-uart" for MT8135 compatible UARTS | ||
6 | * "mediatek,mt8127-uart" for MT8127 compatible UARTS | ||
7 | * "mediatek,mt8173-uart" for MT8173 compatible UARTS | ||
5 | * "mediatek,mt6589-uart" for MT6589 compatible UARTS | 8 | * "mediatek,mt6589-uart" for MT6589 compatible UARTS |
6 | * "mediatek,mt6582-uart" for MT6582 compatible UARTS | 9 | * "mediatek,mt6582-uart" for MT6582 compatible UARTS |
7 | * "mediatek,mt6577-uart" for all compatible UARTS (MT6589, MT6582, MT6577) | 10 | * "mediatek,mt6577-uart" for all compatible UARTS (MT8173, MT6589, MT6582, |
11 | MT6577) | ||
8 | 12 | ||
9 | - reg: The base address of the UART register bank. | 13 | - reg: The base address of the UART register bank. |
10 | 14 | ||
diff --git a/Documentation/devicetree/bindings/serial/of-serial.txt b/Documentation/devicetree/bindings/serial/of-serial.txt index b52b98234b9b..91d5ab0e60fc 100644 --- a/Documentation/devicetree/bindings/serial/of-serial.txt +++ b/Documentation/devicetree/bindings/serial/of-serial.txt | |||
@@ -8,7 +8,10 @@ Required properties: | |||
8 | - "ns16550" | 8 | - "ns16550" |
9 | - "ns16750" | 9 | - "ns16750" |
10 | - "ns16850" | 10 | - "ns16850" |
11 | - "nvidia,tegra20-uart" | 11 | - For Tegra20, must contain "nvidia,tegra20-uart" |
12 | - For other Tegra, must contain '"nvidia,<chip>-uart", | ||
13 | "nvidia,tegra20-uart"' where <chip> is tegra30, tegra114, tegra124, | ||
14 | tegra132, or tegra210. | ||
12 | - "nxp,lpc3220-uart" | 15 | - "nxp,lpc3220-uart" |
13 | - "ralink,rt2880-uart" | 16 | - "ralink,rt2880-uart" |
14 | - "ibm,qpace-nwp-serial" | 17 | - "ibm,qpace-nwp-serial" |
@@ -16,6 +19,7 @@ Required properties: | |||
16 | - "altr,16550-FIFO64" | 19 | - "altr,16550-FIFO64" |
17 | - "altr,16550-FIFO128" | 20 | - "altr,16550-FIFO128" |
18 | - "fsl,16550-FIFO64" | 21 | - "fsl,16550-FIFO64" |
22 | - "fsl,ns16550" | ||
19 | - "serial" if the port type is unknown. | 23 | - "serial" if the port type is unknown. |
20 | - reg : offset and length of the register set for the device. | 24 | - reg : offset and length of the register set for the device. |
21 | - interrupts : should contain uart interrupt. | 25 | - interrupts : should contain uart interrupt. |
@@ -40,6 +44,17 @@ Optional properties: | |||
40 | driver is allowed to detect support for the capability even without this | 44 | driver is allowed to detect support for the capability even without this |
41 | property. | 45 | property. |
42 | 46 | ||
47 | Note: | ||
48 | * fsl,ns16550: | ||
49 | ------------ | ||
50 | Freescale DUART is very similar to the PC16552D (and to a | ||
51 | pair of NS16550A), albeit with some nonstandard behavior such as | ||
52 | erratum A-004737 (relating to incorrect BRK handling). | ||
53 | |||
54 | Represents a single port that is compatible with the DUART found | ||
55 | on many Freescale chips (examples include mpc8349, mpc8548, | ||
56 | mpc8641d, p4080 and ls2085a). | ||
57 | |||
43 | Example: | 58 | Example: |
44 | 59 | ||
45 | uart@80230000 { | 60 | uart@80230000 { |
diff --git a/Documentation/devicetree/bindings/serial/sirf-uart.txt b/Documentation/devicetree/bindings/serial/sirf-uart.txt index 3acdd969edf1..f0c39261c5d4 100644 --- a/Documentation/devicetree/bindings/serial/sirf-uart.txt +++ b/Documentation/devicetree/bindings/serial/sirf-uart.txt | |||
@@ -2,7 +2,7 @@ | |||
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : Should be "sirf,prima2-uart", "sirf, prima2-usp-uart", | 4 | - compatible : Should be "sirf,prima2-uart", "sirf, prima2-usp-uart", |
5 | "sirf,marco-uart" or "sirf,marco-bt-uart" which means | 5 | "sirf,atlas7-uart" or "sirf,atlas7-bt-uart" which means |
6 | uart located in BT module and used for BT. | 6 | uart located in BT module and used for BT. |
7 | - reg : Offset and length of the register set for the device | 7 | - reg : Offset and length of the register set for the device |
8 | - interrupts : Should contain uart interrupt | 8 | - interrupts : Should contain uart interrupt |
@@ -37,7 +37,7 @@ usp@b0090000 { | |||
37 | for uart use in BT module, | 37 | for uart use in BT module, |
38 | uart6: uart@11000000 { | 38 | uart6: uart@11000000 { |
39 | cell-index = <6>; | 39 | cell-index = <6>; |
40 | compatible = "sirf,marco-bt-uart", "sirf,marco-uart"; | 40 | compatible = "sirf,atlas7-bt-uart", "sirf,atlas7-uart"; |
41 | reg = <0x11000000 0x1000>; | 41 | reg = <0x11000000 0x1000>; |
42 | interrupts = <0 100 0>; | 42 | interrupts = <0 100 0>; |
43 | clocks = <&clks 138>, <&clks 140>, <&clks 141>; | 43 | clocks = <&clks 138>, <&clks 140>, <&clks 141>; |
diff --git a/Documentation/devicetree/bindings/serial/sprd-uart.txt b/Documentation/devicetree/bindings/serial/sprd-uart.txt new file mode 100644 index 000000000000..2aff0f22c9fa --- /dev/null +++ b/Documentation/devicetree/bindings/serial/sprd-uart.txt | |||
@@ -0,0 +1,7 @@ | |||
1 | * Spreadtrum serial UART | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: must be "sprd,sc9836-uart" | ||
5 | - reg: offset and length of the register set for the device | ||
6 | - interrupts: exactly one interrupt specifier | ||
7 | - clocks: phandles to input clocks. | ||
diff --git a/Documentation/devicetree/bindings/serio/allwinner,sun4i-ps2.txt b/Documentation/devicetree/bindings/serio/allwinner,sun4i-ps2.txt new file mode 100644 index 000000000000..362a76925bcd --- /dev/null +++ b/Documentation/devicetree/bindings/serio/allwinner,sun4i-ps2.txt | |||
@@ -0,0 +1,23 @@ | |||
1 | * Device tree bindings for Allwinner A10, A20 PS2 host controller | ||
2 | |||
3 | A20 PS2 is dual role controller (PS2 host and PS2 device). These bindings are | ||
4 | for PS2 A10/A20 host controller. IBM compliant IBM PS2 and AT-compatible keyboard | ||
5 | and mouse can be connected. | ||
6 | |||
7 | Required properties: | ||
8 | |||
9 | - reg : Offset and length of the register set for the device. | ||
10 | - compatible : Should be as of the following: | ||
11 | - "allwinner,sun4i-a10-ps2" | ||
12 | - interrupts : The interrupt line connected to the PS2. | ||
13 | - clocks : The gate clk connected to the PS2. | ||
14 | |||
15 | |||
16 | Example: | ||
17 | ps20: ps2@0x01c2a000 { | ||
18 | compatible = "allwinner,sun4i-a10-ps2"; | ||
19 | reg = <0x01c2a000 0x400>; | ||
20 | interrupts = <0 62 4>; | ||
21 | clocks = <&apb1_gates 6>; | ||
22 | status = "disabled"; | ||
23 | }; | ||
diff --git a/Documentation/devicetree/bindings/soc/fsl/bman.txt b/Documentation/devicetree/bindings/soc/fsl/bman.txt index 9f80bf8709ac..47ac834414d8 100644 --- a/Documentation/devicetree/bindings/soc/fsl/bman.txt +++ b/Documentation/devicetree/bindings/soc/fsl/bman.txt | |||
@@ -36,6 +36,11 @@ are located at offsets 0xbf8 and 0xbfc | |||
36 | Value type: <prop-encoded-array> | 36 | Value type: <prop-encoded-array> |
37 | Definition: Standard property. The error interrupt | 37 | Definition: Standard property. The error interrupt |
38 | 38 | ||
39 | - fsl,bman-portals | ||
40 | Usage: Required | ||
41 | Value type: <phandle> | ||
42 | Definition: Phandle to this BMan instance's portals | ||
43 | |||
39 | - fsl,liodn | 44 | - fsl,liodn |
40 | Usage: See pamu.txt | 45 | Usage: See pamu.txt |
41 | Value type: <prop-encoded-array> | 46 | Value type: <prop-encoded-array> |
@@ -96,7 +101,7 @@ The example below shows a BMan FBPR dynamic allocation memory node | |||
96 | 101 | ||
97 | bman_fbpr: bman-fbpr { | 102 | bman_fbpr: bman-fbpr { |
98 | compatible = "fsl,bman-fbpr"; | 103 | compatible = "fsl,bman-fbpr"; |
99 | alloc-ranges = <0 0 0xf 0xffffffff>; | 104 | alloc-ranges = <0 0 0x10 0>; |
100 | size = <0 0x1000000>; | 105 | size = <0 0x1000000>; |
101 | alignment = <0 0x1000000>; | 106 | alignment = <0 0x1000000>; |
102 | }; | 107 | }; |
@@ -104,6 +109,10 @@ The example below shows a BMan FBPR dynamic allocation memory node | |||
104 | 109 | ||
105 | The example below shows a (P4080) BMan CCSR-space node | 110 | The example below shows a (P4080) BMan CCSR-space node |
106 | 111 | ||
112 | bportals: bman-portals@ff4000000 { | ||
113 | ... | ||
114 | }; | ||
115 | |||
107 | crypto@300000 { | 116 | crypto@300000 { |
108 | ... | 117 | ... |
109 | fsl,bman = <&bman, 2>; | 118 | fsl,bman = <&bman, 2>; |
@@ -115,6 +124,7 @@ The example below shows a (P4080) BMan CCSR-space node | |||
115 | reg = <0x31a000 0x1000>; | 124 | reg = <0x31a000 0x1000>; |
116 | interrupts = <16 2 1 2>; | 125 | interrupts = <16 2 1 2>; |
117 | fsl,liodn = <0x17>; | 126 | fsl,liodn = <0x17>; |
127 | fsl,bman-portals = <&bportals>; | ||
118 | memory-region = <&bman_fbpr>; | 128 | memory-region = <&bman_fbpr>; |
119 | }; | 129 | }; |
120 | 130 | ||
diff --git a/Documentation/devicetree/bindings/soc/fsl/qman.txt b/Documentation/devicetree/bindings/soc/fsl/qman.txt index 063e3a0b9d04..556ebb8be75d 100644 --- a/Documentation/devicetree/bindings/soc/fsl/qman.txt +++ b/Documentation/devicetree/bindings/soc/fsl/qman.txt | |||
@@ -38,6 +38,11 @@ are located at offsets 0xbf8 and 0xbfc | |||
38 | Value type: <prop-encoded-array> | 38 | Value type: <prop-encoded-array> |
39 | Definition: Standard property. The error interrupt | 39 | Definition: Standard property. The error interrupt |
40 | 40 | ||
41 | - fsl,qman-portals | ||
42 | Usage: Required | ||
43 | Value type: <phandle> | ||
44 | Definition: Phandle to this QMan instance's portals | ||
45 | |||
41 | - fsl,liodn | 46 | - fsl,liodn |
42 | Usage: See pamu.txt | 47 | Usage: See pamu.txt |
43 | Value type: <prop-encoded-array> | 48 | Value type: <prop-encoded-array> |
@@ -113,13 +118,13 @@ The example below shows a QMan FQD and a PFDR dynamic allocation memory nodes | |||
113 | 118 | ||
114 | qman_fqd: qman-fqd { | 119 | qman_fqd: qman-fqd { |
115 | compatible = "fsl,qman-fqd"; | 120 | compatible = "fsl,qman-fqd"; |
116 | alloc-ranges = <0 0 0xf 0xffffffff>; | 121 | alloc-ranges = <0 0 0x10 0>; |
117 | size = <0 0x400000>; | 122 | size = <0 0x400000>; |
118 | alignment = <0 0x400000>; | 123 | alignment = <0 0x400000>; |
119 | }; | 124 | }; |
120 | qman_pfdr: qman-pfdr { | 125 | qman_pfdr: qman-pfdr { |
121 | compatible = "fsl,qman-pfdr"; | 126 | compatible = "fsl,qman-pfdr"; |
122 | alloc-ranges = <0 0 0xf 0xffffffff>; | 127 | alloc-ranges = <0 0 0x10 0>; |
123 | size = <0 0x2000000>; | 128 | size = <0 0x2000000>; |
124 | alignment = <0 0x2000000>; | 129 | alignment = <0 0x2000000>; |
125 | }; | 130 | }; |
@@ -127,6 +132,10 @@ The example below shows a QMan FQD and a PFDR dynamic allocation memory nodes | |||
127 | 132 | ||
128 | The example below shows a (P4080) QMan CCSR-space node | 133 | The example below shows a (P4080) QMan CCSR-space node |
129 | 134 | ||
135 | qportals: qman-portals@ff4200000 { | ||
136 | ... | ||
137 | }; | ||
138 | |||
130 | clockgen: global-utilities@e1000 { | 139 | clockgen: global-utilities@e1000 { |
131 | ... | 140 | ... |
132 | sysclk: sysclk { | 141 | sysclk: sysclk { |
@@ -154,6 +163,7 @@ The example below shows a (P4080) QMan CCSR-space node | |||
154 | reg = <0x318000 0x1000>; | 163 | reg = <0x318000 0x1000>; |
155 | interrupts = <16 2 1 3> | 164 | interrupts = <16 2 1 3> |
156 | fsl,liodn = <0x16>; | 165 | fsl,liodn = <0x16>; |
166 | fsl,qman-portals = <&qportals>; | ||
157 | memory-region = <&qman_fqd &qman_pfdr>; | 167 | memory-region = <&qman_fqd &qman_pfdr>; |
158 | clocks = <&platform_pll 1>; | 168 | clocks = <&platform_pll 1>; |
159 | }; | 169 | }; |
diff --git a/Documentation/devicetree/bindings/sound/atmel_ac97c.txt b/Documentation/devicetree/bindings/sound/atmel_ac97c.txt new file mode 100644 index 000000000000..b151bd902ce3 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/atmel_ac97c.txt | |||
@@ -0,0 +1,20 @@ | |||
1 | * Atmel AC97 controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "atmel,at91sam9263-ac97c" | ||
5 | - reg: Address and length of the register set for the device | ||
6 | - interrupts: Should contain AC97 interrupt | ||
7 | - ac97-gpios: Please refer to soc-ac97link.txt, only ac97-reset is used | ||
8 | Optional properties: | ||
9 | - pinctrl-names, pinctrl-0: Please refer to pinctrl-bindings.txt | ||
10 | |||
11 | Example: | ||
12 | sound@fffa0000 { | ||
13 | compatible = "atmel,at91sam9263-ac97c"; | ||
14 | pinctrl-names = "default"; | ||
15 | pinctrl-0 = <&pinctrl_ac97>; | ||
16 | reg = <0xfffa0000 0x4000>; | ||
17 | interrupts = <18 IRQ_TYPE_LEVEL_HIGH 5>; | ||
18 | |||
19 | ac97-gpios = <&pioB 0 0 &pioB 2 0 &pioC 29 GPIO_ACTIVE_LOW>; | ||
20 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/cdns,xtfpga-i2s.txt b/Documentation/devicetree/bindings/sound/cdns,xtfpga-i2s.txt new file mode 100644 index 000000000000..befd125d18bb --- /dev/null +++ b/Documentation/devicetree/bindings/sound/cdns,xtfpga-i2s.txt | |||
@@ -0,0 +1,18 @@ | |||
1 | Bindings for I2S controller built into xtfpga Xtensa bitstreams. | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: shall be "cdns,xtfpga-i2s". | ||
5 | - reg: memory region (address and length) with device registers. | ||
6 | - interrupts: interrupt for the device. | ||
7 | - clocks: phandle to the clk used as master clock. I2S bus clock | ||
8 | is derived from it. | ||
9 | |||
10 | Examples: | ||
11 | |||
12 | i2s0: xtfpga-i2s@0d080000 { | ||
13 | #sound-dai-cells = <0>; | ||
14 | compatible = "cdns,xtfpga-i2s"; | ||
15 | reg = <0x0d080000 0x40>; | ||
16 | interrupts = <2 1>; | ||
17 | clocks = <&cdce706 4>; | ||
18 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/designware-i2s.txt b/Documentation/devicetree/bindings/sound/designware-i2s.txt new file mode 100644 index 000000000000..7bb54247f8e8 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/designware-i2s.txt | |||
@@ -0,0 +1,31 @@ | |||
1 | DesignWare I2S controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Must be "snps,designware-i2s" | ||
5 | - reg : Must contain the I2S core's registers location and length | ||
6 | - clocks : Pairs of phandle and specifier referencing the controller's | ||
7 | clocks. The controller expects one clock: the clock used as the sampling | ||
8 | rate reference clock sample. | ||
9 | - clock-names : "i2sclk" for the sample rate reference clock. | ||
10 | - dmas: Pairs of phandle and specifier for the DMA channels that are used by | ||
11 | the core. The core expects one or two dma channels: one for transmit and | ||
12 | one for receive. | ||
13 | - dma-names : "tx" for the transmit channel, "rx" for the receive channel. | ||
14 | |||
15 | For more details on the 'dma', 'dma-names', 'clock' and 'clock-names' | ||
16 | properties please check: | ||
17 | * resource-names.txt | ||
18 | * clock/clock-bindings.txt | ||
19 | * dma/dma.txt | ||
20 | |||
21 | Example: | ||
22 | |||
23 | soc_i2s: i2s@7ff90000 { | ||
24 | compatible = "snps,designware-i2s"; | ||
25 | reg = <0x0 0x7ff90000 0x0 0x1000>; | ||
26 | clocks = <&scpi_i2sclk 0>; | ||
27 | clock-names = "i2sclk"; | ||
28 | #sound-dai-cells = <0>; | ||
29 | dmas = <&dma0 5>; | ||
30 | dma-names = "tx"; | ||
31 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/ingenic,jz4740-i2s.txt b/Documentation/devicetree/bindings/sound/ingenic,jz4740-i2s.txt new file mode 100644 index 000000000000..b41433386e2f --- /dev/null +++ b/Documentation/devicetree/bindings/sound/ingenic,jz4740-i2s.txt | |||
@@ -0,0 +1,23 @@ | |||
1 | Ingenic JZ4740 I2S controller | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "ingenic,jz4740-i2s" | ||
5 | - reg : I2S registers location and length | ||
6 | - clocks : AIC and I2S PLL clock specifiers. | ||
7 | - clock-names: "aic" and "i2s" | ||
8 | - dmas: DMA controller phandle and DMA request line for I2S Tx and Rx channels | ||
9 | - dma-names: Must be "tx" and "rx" | ||
10 | |||
11 | Example: | ||
12 | |||
13 | i2s: i2s@10020000 { | ||
14 | compatible = "ingenic,jz4740-i2s"; | ||
15 | reg = <0x10020000 0x94>; | ||
16 | |||
17 | clocks = <&cgu JZ4740_CLK_AIC>, <&cgu JZ4740_CLK_I2SPLL>; | ||
18 | clock-names = "aic", "i2s"; | ||
19 | |||
20 | dmas = <&dma 2>, <&dma 3>; | ||
21 | dma-names = "tx", "rx"; | ||
22 | |||
23 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/max98357a.txt b/Documentation/devicetree/bindings/sound/max98357a.txt new file mode 100644 index 000000000000..a7a149a236e5 --- /dev/null +++ b/Documentation/devicetree/bindings/sound/max98357a.txt | |||
@@ -0,0 +1,14 @@ | |||
1 | Maxim MAX98357A audio DAC | ||
2 | |||
3 | This node models the Maxim MAX98357A DAC. | ||
4 | |||
5 | Required properties: | ||
6 | - compatible : "maxim,max98357a" | ||
7 | - sdmode-gpios : GPIO specifier for the GPIO -> DAC SDMODE pin | ||
8 | |||
9 | Example: | ||
10 | |||
11 | max98357a { | ||
12 | compatible = "maxim,max98357a"; | ||
13 | sdmode-gpios = <&qcom_pinmux 25 0>; | ||
14 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5677.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5677.txt new file mode 100644 index 000000000000..a4589cda214e --- /dev/null +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra-audio-rt5677.txt | |||
@@ -0,0 +1,67 @@ | |||
1 | NVIDIA Tegra audio complex, with RT5677 CODEC | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : "nvidia,tegra-audio-rt5677" | ||
5 | - clocks : Must contain an entry for each entry in clock-names. | ||
6 | See ../clocks/clock-bindings.txt for details. | ||
7 | - clock-names : Must include the following entries: | ||
8 | - pll_a | ||
9 | - pll_a_out0 | ||
10 | - mclk (The Tegra cdev1/extern1 clock, which feeds the CODEC's mclk) | ||
11 | - nvidia,model : The user-visible name of this sound complex. | ||
12 | - nvidia,audio-routing : A list of the connections between audio components. | ||
13 | Each entry is a pair of strings, the first being the connection's sink, | ||
14 | the second being the connection's source. Valid names for sources and | ||
15 | sinks are the RT5677's pins (as documented in its binding), and the jacks | ||
16 | on the board: | ||
17 | |||
18 | * Headphone | ||
19 | * Speaker | ||
20 | * Headset Mic | ||
21 | * Internal Mic 1 | ||
22 | * Internal Mic 2 | ||
23 | |||
24 | - nvidia,i2s-controller : The phandle of the Tegra I2S controller that's | ||
25 | connected to the CODEC. | ||
26 | - nvidia,audio-codec : The phandle of the RT5677 audio codec. This binding | ||
27 | assumes that AIF1 on the CODEC is connected to Tegra. | ||
28 | |||
29 | Optional properties: | ||
30 | - nvidia,hp-det-gpios : The GPIO that detects headphones are plugged in | ||
31 | - nvidia,hp-en-gpios : The GPIO that enables headphone amplifier | ||
32 | - nvidia,mic-present-gpios: The GPIO that mic jack is plugged in | ||
33 | - nvidia,dmic-clk-en-gpios : The GPIO that gates DMIC clock signal | ||
34 | |||
35 | Example: | ||
36 | |||
37 | sound { | ||
38 | compatible = "nvidia,tegra-audio-rt5677-ryu", | ||
39 | "nvidia,tegra-audio-rt5677"; | ||
40 | nvidia,model = "NVIDIA Tegra Ryu"; | ||
41 | |||
42 | nvidia,audio-routing = | ||
43 | "Headphone", "LOUT2", | ||
44 | "Headphone", "LOUT1", | ||
45 | "Headset Mic", "MICBIAS1", | ||
46 | "IN1P", "Headset Mic", | ||
47 | "IN1N", "Headset Mic", | ||
48 | "DMIC L1", "Internal Mic 1", | ||
49 | "DMIC R1", "Internal Mic 1", | ||
50 | "DMIC L2", "Internal Mic 2", | ||
51 | "DMIC R2", "Internal Mic 2", | ||
52 | "Speaker", "PDM1L", | ||
53 | "Speaker", "PDM1R"; | ||
54 | |||
55 | nvidia,i2s-controller = <&tegra_i2s1>; | ||
56 | nvidia,audio-codec = <&rt5677>; | ||
57 | |||
58 | nvidia,hp-det-gpios = <&gpio TEGRA_GPIO(R, 7) GPIO_ACTIVE_HIGH>; | ||
59 | nvidia,mic-present-gpios = <&gpio TEGRA_GPIO(O, 5) GPIO_ACTIVE_LOW>; | ||
60 | nvidia,hp-en-gpios = <&rt5677 1 GPIO_ACTIVE_HIGH>; | ||
61 | nvidia,dmic-clk-en-gpios = <&rt5677 2 GPIO_ACTIVE_HIGH>; | ||
62 | |||
63 | clocks = <&tegra_car TEGRA124_CLK_PLL_A>, | ||
64 | <&tegra_car TEGRA124_CLK_PLL_A_OUT0>, | ||
65 | <&tegra_car TEGRA124_CLK_EXTERN1>; | ||
66 | clock-names = "pll_a", "pll_a_out0", "mclk"; | ||
67 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-ahub.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra30-ahub.txt index 946e2ac46091..0e9a1895d7fb 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra30-ahub.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-ahub.txt | |||
@@ -1,7 +1,10 @@ | |||
1 | NVIDIA Tegra30 AHUB (Audio Hub) | 1 | NVIDIA Tegra30 AHUB (Audio Hub) |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : "nvidia,tegra30-ahub", "nvidia,tegra114-ahub", etc. | 4 | - compatible : For Tegra30, must contain "nvidia,tegra30-ahub". For Tegra114, |
5 | must contain "nvidia,tegra114-ahub". For Tegra124, must contain | ||
6 | "nvidia,tegra124-ahub". Otherwise, must contain "nvidia,<chip>-ahub", | ||
7 | plus at least one of the above, where <chip> is tegra132. | ||
5 | - reg : Should contain the register physical address and length for each of | 8 | - reg : Should contain the register physical address and length for each of |
6 | the AHUB's register blocks. | 9 | the AHUB's register blocks. |
7 | - Tegra30 requires 2 entries, for the APBIF and AHUB/AUDIO register blocks. | 10 | - Tegra30 requires 2 entries, for the APBIF and AHUB/AUDIO register blocks. |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.txt index b4730c2822bc..13e2ef496724 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-hda.txt | |||
@@ -1,7 +1,9 @@ | |||
1 | NVIDIA Tegra30 HDA controller | 1 | NVIDIA Tegra30 HDA controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : "nvidia,tegra30-hda" | 4 | - compatible : For Tegra30, must contain "nvidia,tegra30-hda". Otherwise, |
5 | must contain '"nvidia,<chip>-hda", "nvidia,tegra30-hda"', where <chip> is | ||
6 | tegra114, tegra124, or tegra132. | ||
5 | - reg : Should contain the HDA registers location and length. | 7 | - reg : Should contain the HDA registers location and length. |
6 | - interrupts : The interrupt from the HDA controller. | 8 | - interrupts : The interrupt from the HDA controller. |
7 | - clocks : Must contain an entry for each required entry in clock-names. | 9 | - clocks : Must contain an entry for each required entry in clock-names. |
diff --git a/Documentation/devicetree/bindings/sound/nvidia,tegra30-i2s.txt b/Documentation/devicetree/bindings/sound/nvidia,tegra30-i2s.txt index 0c113ffe3814..38caa936f6f8 100644 --- a/Documentation/devicetree/bindings/sound/nvidia,tegra30-i2s.txt +++ b/Documentation/devicetree/bindings/sound/nvidia,tegra30-i2s.txt | |||
@@ -1,7 +1,10 @@ | |||
1 | NVIDIA Tegra30 I2S controller | 1 | NVIDIA Tegra30 I2S controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : "nvidia,tegra30-i2s" | 4 | - compatible : For Tegra30, must contain "nvidia,tegra30-i2s". For Tegra124, |
5 | must contain "nvidia,tegra124-i2s". Otherwise, must contain | ||
6 | "nvidia,<chip>-i2s" plus at least one of the above, where <chip> is | ||
7 | tegra114 or tegra132. | ||
5 | - reg : Should contain I2S registers location and length | 8 | - reg : Should contain I2S registers location and length |
6 | - clocks : Must contain one entry, for the module clock. | 9 | - clocks : Must contain one entry, for the module clock. |
7 | See ../clocks/clock-bindings.txt for details. | 10 | See ../clocks/clock-bindings.txt for details. |
diff --git a/Documentation/devicetree/bindings/sound/pcm512x.txt b/Documentation/devicetree/bindings/sound/pcm512x.txt index faff75e64573..3aae3b41bd8e 100644 --- a/Documentation/devicetree/bindings/sound/pcm512x.txt +++ b/Documentation/devicetree/bindings/sound/pcm512x.txt | |||
@@ -5,7 +5,8 @@ on the board). | |||
5 | 5 | ||
6 | Required properties: | 6 | Required properties: |
7 | 7 | ||
8 | - compatible : One of "ti,pcm5121" or "ti,pcm5122" | 8 | - compatible : One of "ti,pcm5121", "ti,pcm5122", "ti,pcm5141" or |
9 | "ti,pcm5142" | ||
9 | 10 | ||
10 | - reg : the I2C address of the device for I2C, the chip select | 11 | - reg : the I2C address of the device for I2C, the chip select |
11 | number for SPI. | 12 | number for SPI. |
@@ -16,9 +17,16 @@ Required properties: | |||
16 | Optional properties: | 17 | Optional properties: |
17 | 18 | ||
18 | - clocks : A clock specifier for the clock connected as SCLK. If this | 19 | - clocks : A clock specifier for the clock connected as SCLK. If this |
19 | is absent the device will be configured to clock from BCLK. | 20 | is absent the device will be configured to clock from BCLK. If pll-in |
21 | and pll-out are specified in addition to a clock, the device is | ||
22 | configured to accept clock input on a specified gpio pin. | ||
20 | 23 | ||
21 | Example: | 24 | - pll-in, pll-out : gpio pins used to connect the pll using <1> |
25 | through <6>. The device will be configured for clock input on the | ||
26 | given pll-in pin and PLL output on the given pll-out pin. An | ||
27 | external connection from the pll-out pin to the SCLK pin is assumed. | ||
28 | |||
29 | Examples: | ||
22 | 30 | ||
23 | pcm5122: pcm5122@4c { | 31 | pcm5122: pcm5122@4c { |
24 | compatible = "ti,pcm5122"; | 32 | compatible = "ti,pcm5122"; |
@@ -28,3 +36,17 @@ Example: | |||
28 | DVDD-supply = <®_1v8>; | 36 | DVDD-supply = <®_1v8>; |
29 | CPVDD-supply = <®_3v3>; | 37 | CPVDD-supply = <®_3v3>; |
30 | }; | 38 | }; |
39 | |||
40 | |||
41 | pcm5142: pcm5142@4c { | ||
42 | compatible = "ti,pcm5142"; | ||
43 | reg = <0x4c>; | ||
44 | |||
45 | AVDD-supply = <®_3v3_analog>; | ||
46 | DVDD-supply = <®_1v8>; | ||
47 | CPVDD-supply = <®_3v3>; | ||
48 | |||
49 | clocks = <&sck>; | ||
50 | pll-in = <3>; | ||
51 | pll-out = <6>; | ||
52 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/samsung-i2s.txt b/Documentation/devicetree/bindings/sound/samsung-i2s.txt index d188296bb6ec..09e0e18591ae 100644 --- a/Documentation/devicetree/bindings/sound/samsung-i2s.txt +++ b/Documentation/devicetree/bindings/sound/samsung-i2s.txt | |||
@@ -33,6 +33,25 @@ Required SoC Specific Properties: | |||
33 | "iis" is the i2s bus clock and i2s_opclk0, i2s_opclk1 are sources of the root | 33 | "iis" is the i2s bus clock and i2s_opclk0, i2s_opclk1 are sources of the root |
34 | clk. i2s0 has internal mux to select the source of root clk and i2s1 and i2s2 | 34 | clk. i2s0 has internal mux to select the source of root clk and i2s1 and i2s2 |
35 | doesn't have any such mux. | 35 | doesn't have any such mux. |
36 | - #clock-cells: should be 1, this property must be present if the I2S device | ||
37 | is a clock provider in terms of the common clock bindings, described in | ||
38 | ../clock/clock-bindings.txt. | ||
39 | - clock-output-names: from the common clock bindings, names of the CDCLK | ||
40 | I2S output clocks, suggested values are "i2s_cdclk0", "i2s_cdclk1", | ||
41 | "i2s_cdclk3" for the I2S0, I2S1, I2S2 devices recpectively. | ||
42 | |||
43 | There are following clocks available at the I2S device nodes: | ||
44 | CLK_I2S_CDCLK - the CDCLK (CODECLKO) gate clock, | ||
45 | CLK_I2S_RCLK_PSR - the RCLK prescaler divider clock (corresponding to the | ||
46 | IISPSR register), | ||
47 | CLK_I2S_RCLK_SRC - the RCLKSRC mux clock (corresponding to RCLKSRC bit in | ||
48 | IISMOD register). | ||
49 | |||
50 | Refer to the SoC datasheet for availability of the above clocks. | ||
51 | The CLK_I2S_RCLK_PSR and CLK_I2S_RCLK_SRC clocks are usually only available | ||
52 | in the IIS Multi Audio Interface (I2S0). | ||
53 | Note: Old DTs may not have the #clock-cells, clock-output-names properties | ||
54 | and then not use the I2S node as a clock supplier. | ||
36 | 55 | ||
37 | Optional SoC Specific Properties: | 56 | Optional SoC Specific Properties: |
38 | 57 | ||
@@ -41,6 +60,7 @@ Optional SoC Specific Properties: | |||
41 | - pinctrl-0: Should specify pin control groups used for this controller. | 60 | - pinctrl-0: Should specify pin control groups used for this controller. |
42 | - pinctrl-names: Should contain only one value - "default". | 61 | - pinctrl-names: Should contain only one value - "default". |
43 | 62 | ||
63 | |||
44 | Example: | 64 | Example: |
45 | 65 | ||
46 | i2s0: i2s@03830000 { | 66 | i2s0: i2s@03830000 { |
@@ -54,6 +74,8 @@ i2s0: i2s@03830000 { | |||
54 | <&clock_audss EXYNOS_I2S_BUS>, | 74 | <&clock_audss EXYNOS_I2S_BUS>, |
55 | <&clock_audss EXYNOS_SCLK_I2S>; | 75 | <&clock_audss EXYNOS_SCLK_I2S>; |
56 | clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; | 76 | clock-names = "iis", "i2s_opclk0", "i2s_opclk1"; |
77 | #clock-cells; | ||
78 | clock-output-names = "i2s_cdclk0"; | ||
57 | samsung,idma-addr = <0x03000000>; | 79 | samsung,idma-addr = <0x03000000>; |
58 | pinctrl-names = "default"; | 80 | pinctrl-names = "default"; |
59 | pinctrl-0 = <&i2s0_bus>; | 81 | pinctrl-0 = <&i2s0_bus>; |
diff --git a/Documentation/devicetree/bindings/sound/simple-card.txt b/Documentation/devicetree/bindings/sound/simple-card.txt index c3cba600bf11..73bf314f7240 100644 --- a/Documentation/devicetree/bindings/sound/simple-card.txt +++ b/Documentation/devicetree/bindings/sound/simple-card.txt | |||
@@ -75,6 +75,11 @@ Optional CPU/CODEC subnodes properties: | |||
75 | it can be specified via "clocks" if system has | 75 | it can be specified via "clocks" if system has |
76 | clock node (= common clock), or "system-clock-frequency" | 76 | clock node (= common clock), or "system-clock-frequency" |
77 | (if system doens't support common clock) | 77 | (if system doens't support common clock) |
78 | If a clock is specified, it is | ||
79 | enabled with clk_prepare_enable() | ||
80 | in dai startup() and disabled with | ||
81 | clk_disable_unprepare() in dai | ||
82 | shutdown(). | ||
78 | 83 | ||
79 | Example 1 - single DAI link: | 84 | Example 1 - single DAI link: |
80 | 85 | ||
diff --git a/Documentation/devicetree/bindings/sound/st,sta32x.txt b/Documentation/devicetree/bindings/sound/st,sta32x.txt new file mode 100644 index 000000000000..255de3ae5b2f --- /dev/null +++ b/Documentation/devicetree/bindings/sound/st,sta32x.txt | |||
@@ -0,0 +1,92 @@ | |||
1 | STA32X audio CODEC | ||
2 | |||
3 | The driver for this device only supports I2C. | ||
4 | |||
5 | Required properties: | ||
6 | |||
7 | - compatible: "st,sta32x" | ||
8 | - reg: the I2C address of the device for I2C | ||
9 | - reset-gpios: a GPIO spec for the reset pin. If specified, it will be | ||
10 | deasserted before communication to the codec starts. | ||
11 | |||
12 | - power-down-gpios: a GPIO spec for the power down pin. If specified, | ||
13 | it will be deasserted before communication to the codec | ||
14 | starts. | ||
15 | |||
16 | - Vdda-supply: regulator spec, providing 3.3V | ||
17 | - Vdd3-supply: regulator spec, providing 3.3V | ||
18 | - Vcc-supply: regulator spec, providing 5V - 26V | ||
19 | |||
20 | Optional properties: | ||
21 | |||
22 | - st,output-conf: number, Selects the output configuration: | ||
23 | 0: 2-channel (full-bridge) power, 2-channel data-out | ||
24 | 1: 2 (half-bridge). 1 (full-bridge) on-board power | ||
25 | 2: 2 Channel (Full-Bridge) Power, 1 Channel FFX | ||
26 | 3: 1 Channel Mono-Parallel | ||
27 | If parameter is missing, mode 0 will be enabled. | ||
28 | This property has to be specified as '/bits/ 8' value. | ||
29 | |||
30 | - st,ch1-output-mapping: Channel 1 output mapping | ||
31 | - st,ch2-output-mapping: Channel 2 output mapping | ||
32 | - st,ch3-output-mapping: Channel 3 output mapping | ||
33 | 0: Channel 1 | ||
34 | 1: Channel 2 | ||
35 | 2: Channel 3 | ||
36 | If parameter is missing, channel 1 is chosen. | ||
37 | This properties have to be specified as '/bits/ 8' values. | ||
38 | |||
39 | - st,thermal-warning-recover: | ||
40 | If present, thermal warning recovery is enabled. | ||
41 | |||
42 | - st,thermal-warning-adjustment: | ||
43 | If present, thermal warning adjustment is enabled. | ||
44 | |||
45 | - st,fault-detect-recovery: | ||
46 | If present, then fault recovery will be enabled. | ||
47 | |||
48 | - st,drop-compensation-ns: number | ||
49 | Only required for "st,ffx-power-output-mode" == | ||
50 | "variable-drop-compensation". | ||
51 | Specifies the drop compensation in nanoseconds. | ||
52 | The value must be in the range of 0..300, and only | ||
53 | multiples of 20 are allowed. Default is 140ns. | ||
54 | |||
55 | - st,max-power-use-mpcc: | ||
56 | If present, then MPCC bits are used for MPC coefficients, | ||
57 | otherwise standard MPC coefficients are used. | ||
58 | |||
59 | - st,max-power-corr: | ||
60 | If present, power bridge correction for THD reduction near maximum | ||
61 | power output is enabled. | ||
62 | |||
63 | - st,am-reduction-mode: | ||
64 | If present, FFX mode runs in AM reduction mode, otherwise normal | ||
65 | FFX mode is used. | ||
66 | |||
67 | - st,odd-pwm-speed-mode: | ||
68 | If present, PWM speed mode run on odd speed mode (341.3 kHz) on all | ||
69 | channels. If not present, normal PWM spped mode (384 kHz) will be used. | ||
70 | |||
71 | - st,invalid-input-detect-mute: | ||
72 | If present, automatic invalid input detect mute is enabled. | ||
73 | |||
74 | Example: | ||
75 | |||
76 | codec: sta32x@38 { | ||
77 | compatible = "st,sta32x"; | ||
78 | reg = <0x1c>; | ||
79 | reset-gpios = <&gpio1 19 0>; | ||
80 | power-down-gpios = <&gpio1 16 0>; | ||
81 | st,output-conf = /bits/ 8 <0x3>; // set output to 2-channel | ||
82 | // (full-bridge) power, | ||
83 | // 2-channel data-out | ||
84 | st,ch1-output-mapping = /bits/ 8 <0>; // set channel 1 output ch 1 | ||
85 | st,ch2-output-mapping = /bits/ 8 <0>; // set channel 2 output ch 1 | ||
86 | st,ch3-output-mapping = /bits/ 8 <0>; // set channel 3 output ch 1 | ||
87 | st,max-power-correction; // enables power bridge | ||
88 | // correction for THD reduction | ||
89 | // near maximum power output | ||
90 | st,invalid-input-detect-mute; // mute if no valid digital | ||
91 | // audio signal is provided. | ||
92 | }; | ||
diff --git a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt index 5e6040c2c2e9..47a213c411ce 100644 --- a/Documentation/devicetree/bindings/sound/tlv320aic3x.txt +++ b/Documentation/devicetree/bindings/sound/tlv320aic3x.txt | |||
@@ -9,6 +9,7 @@ Required properties: | |||
9 | "ti,tlv320aic33" - TLV320AIC33 | 9 | "ti,tlv320aic33" - TLV320AIC33 |
10 | "ti,tlv320aic3007" - TLV320AIC3007 | 10 | "ti,tlv320aic3007" - TLV320AIC3007 |
11 | "ti,tlv320aic3106" - TLV320AIC3106 | 11 | "ti,tlv320aic3106" - TLV320AIC3106 |
12 | "ti,tlv320aic3104" - TLV320AIC3104 | ||
12 | 13 | ||
13 | 14 | ||
14 | - reg - <int> - I2C slave address | 15 | - reg - <int> - I2C slave address |
@@ -18,6 +19,7 @@ Optional properties: | |||
18 | 19 | ||
19 | - gpio-reset - gpio pin number used for codec reset | 20 | - gpio-reset - gpio pin number used for codec reset |
20 | - ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality | 21 | - ai3x-gpio-func - <array of 2 int> - AIC3X_GPIO1 & AIC3X_GPIO2 Functionality |
22 | - Not supported on tlv320aic3104 | ||
21 | - ai3x-micbias-vg - MicBias Voltage required. | 23 | - ai3x-micbias-vg - MicBias Voltage required. |
22 | 1 - MICBIAS output is powered to 2.0V, | 24 | 1 - MICBIAS output is powered to 2.0V, |
23 | 2 - MICBIAS output is powered to 2.5V, | 25 | 2 - MICBIAS output is powered to 2.5V, |
@@ -36,7 +38,13 @@ CODEC output pins: | |||
36 | * HPLCOM | 38 | * HPLCOM |
37 | * HPRCOM | 39 | * HPRCOM |
38 | 40 | ||
39 | CODEC input pins: | 41 | CODEC input pins for TLV320AIC3104: |
42 | * MIC2L | ||
43 | * MIC2R | ||
44 | * LINE1L | ||
45 | * LINE1R | ||
46 | |||
47 | CODEC input pins for other compatible codecs: | ||
40 | * MIC3L | 48 | * MIC3L |
41 | * MIC3R | 49 | * MIC3R |
42 | * LINE1L | 50 | * LINE1L |
diff --git a/Documentation/devicetree/bindings/sound/ts3a227e.txt b/Documentation/devicetree/bindings/sound/ts3a227e.txt index e8bf23eb1803..a836881d9608 100644 --- a/Documentation/devicetree/bindings/sound/ts3a227e.txt +++ b/Documentation/devicetree/bindings/sound/ts3a227e.txt | |||
@@ -13,6 +13,11 @@ Required properties: | |||
13 | - interrupt-parent: The parent interrupt controller | 13 | - interrupt-parent: The parent interrupt controller |
14 | - interrupts: Interrupt number for /INT pin from the 227e | 14 | - interrupts: Interrupt number for /INT pin from the 227e |
15 | 15 | ||
16 | Optional properies: | ||
17 | - ti,micbias: Intended MICBIAS voltage (datasheet section 9.6.7). | ||
18 | Select 0/1/2/3/4/5/6/7 to specify MACBIAS voltage | ||
19 | 2.1V/2.2V/2.3V/2.4V/2.5V/2.6V/2.7V/2.8V | ||
20 | Default value is "1" (2.2V). | ||
16 | 21 | ||
17 | Examples: | 22 | Examples: |
18 | 23 | ||
diff --git a/Documentation/devicetree/bindings/sound/wm8904.txt b/Documentation/devicetree/bindings/sound/wm8904.txt index e99f4097c83c..66bf261423b9 100644 --- a/Documentation/devicetree/bindings/sound/wm8904.txt +++ b/Documentation/devicetree/bindings/sound/wm8904.txt | |||
@@ -3,7 +3,7 @@ WM8904 audio CODEC | |||
3 | This device supports I2C only. | 3 | This device supports I2C only. |
4 | 4 | ||
5 | Required properties: | 5 | Required properties: |
6 | - compatible: "wlf,wm8904" | 6 | - compatible: "wlf,wm8904" or "wlf,wm8912" |
7 | - reg: the I2C address of the device. | 7 | - reg: the I2C address of the device. |
8 | - clock-names: "mclk" | 8 | - clock-names: "mclk" |
9 | - clocks: reference to | 9 | - clocks: reference to |
diff --git a/Documentation/devicetree/bindings/spi/nvidia,tegra114-spi.txt b/Documentation/devicetree/bindings/spi/nvidia,tegra114-spi.txt index 7ea701e07dc2..b785976fe98a 100644 --- a/Documentation/devicetree/bindings/spi/nvidia,tegra114-spi.txt +++ b/Documentation/devicetree/bindings/spi/nvidia,tegra114-spi.txt | |||
@@ -1,7 +1,9 @@ | |||
1 | NVIDIA Tegra114 SPI controller. | 1 | NVIDIA Tegra114 SPI controller. |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible : should be "nvidia,tegra114-spi". | 4 | - compatible : For Tegra114, must contain "nvidia,tegra114-spi". |
5 | Otherwise, must contain '"nvidia,<chip>-spi", "nvidia,tegra114-spi"' where | ||
6 | <chip> is tegra124, tegra132, or tegra210. | ||
5 | - reg: Should contain SPI registers location and length. | 7 | - reg: Should contain SPI registers location and length. |
6 | - interrupts: Should contain SPI interrupts. | 8 | - interrupts: Should contain SPI interrupts. |
7 | - clock-names : Must include the following entries: | 9 | - clock-names : Must include the following entries: |
diff --git a/Documentation/devicetree/bindings/spi/sh-msiof.txt b/Documentation/devicetree/bindings/spi/sh-msiof.txt index d11c3721e7cd..4c388bb2f0a2 100644 --- a/Documentation/devicetree/bindings/spi/sh-msiof.txt +++ b/Documentation/devicetree/bindings/spi/sh-msiof.txt | |||
@@ -30,6 +30,22 @@ Optional properties: | |||
30 | specifiers, one for transmission, and one for | 30 | specifiers, one for transmission, and one for |
31 | reception. | 31 | reception. |
32 | - dma-names : Must contain a list of two DMA names, "tx" and "rx". | 32 | - dma-names : Must contain a list of two DMA names, "tx" and "rx". |
33 | - renesas,dtdl : delay sync signal (setup) in transmit mode. | ||
34 | Must contain one of the following values: | ||
35 | 0 (no bit delay) | ||
36 | 50 (0.5-clock-cycle delay) | ||
37 | 100 (1-clock-cycle delay) | ||
38 | 150 (1.5-clock-cycle delay) | ||
39 | 200 (2-clock-cycle delay) | ||
40 | |||
41 | - renesas,syncdl : delay sync signal (hold) in transmit mode. | ||
42 | Must contain one of the following values: | ||
43 | 0 (no bit delay) | ||
44 | 50 (0.5-clock-cycle delay) | ||
45 | 100 (1-clock-cycle delay) | ||
46 | 150 (1.5-clock-cycle delay) | ||
47 | 200 (2-clock-cycle delay) | ||
48 | 300 (3-clock-cycle delay) | ||
33 | 49 | ||
34 | Optional properties, deprecated for soctype-specific bindings: | 50 | Optional properties, deprecated for soctype-specific bindings: |
35 | - renesas,tx-fifo-size : Overrides the default tx fifo size given in words | 51 | - renesas,tx-fifo-size : Overrides the default tx fifo size given in words |
diff --git a/Documentation/devicetree/bindings/spi/spi-sirf.txt b/Documentation/devicetree/bindings/spi/spi-sirf.txt new file mode 100644 index 000000000000..4c7adb8f777c --- /dev/null +++ b/Documentation/devicetree/bindings/spi/spi-sirf.txt | |||
@@ -0,0 +1,41 @@ | |||
1 | * CSR SiRFprimaII Serial Peripheral Interface | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Should be "sirf,prima2-spi" | ||
5 | - reg : Offset and length of the register set for the device | ||
6 | - interrupts : Should contain SPI interrupt | ||
7 | - resets: phandle to the reset controller asserting this device in | ||
8 | reset | ||
9 | See ../reset/reset.txt for details. | ||
10 | - dmas : Must contain an entry for each entry in clock-names. | ||
11 | See ../dma/dma.txt for details. | ||
12 | - dma-names : Must include the following entries: | ||
13 | - rx | ||
14 | - tx | ||
15 | - clocks : Must contain an entry for each entry in clock-names. | ||
16 | See ../clocks/clock-bindings.txt for details. | ||
17 | |||
18 | - #address-cells: Number of cells required to define a chip select | ||
19 | address on the SPI bus. Should be set to 1. | ||
20 | - #size-cells: Should be zero. | ||
21 | |||
22 | Optional properties: | ||
23 | - spi-max-frequency: Specifies maximum SPI clock frequency, | ||
24 | Units - Hz. Definition as per | ||
25 | Documentation/devicetree/bindings/spi/spi-bus.txt | ||
26 | - cs-gpios: should specify GPIOs used for chipselects. | ||
27 | |||
28 | Example: | ||
29 | |||
30 | spi0: spi@b00d0000 { | ||
31 | compatible = "sirf,prima2-spi"; | ||
32 | reg = <0xb00d0000 0x10000>; | ||
33 | interrupts = <15>; | ||
34 | dmas = <&dmac1 9>, | ||
35 | <&dmac1 4>; | ||
36 | dma-names = "rx", "tx"; | ||
37 | #address-cells = <1>; | ||
38 | #size-cells = <0>; | ||
39 | clocks = <&clks 19>; | ||
40 | resets = <&rstc 26>; | ||
41 | }; | ||
diff --git a/Documentation/devicetree/bindings/spi/spi-st-ssc.txt b/Documentation/devicetree/bindings/spi/spi-st-ssc.txt new file mode 100644 index 000000000000..fe54959ec957 --- /dev/null +++ b/Documentation/devicetree/bindings/spi/spi-st-ssc.txt | |||
@@ -0,0 +1,40 @@ | |||
1 | STMicroelectronics SSC (SPI) Controller | ||
2 | --------------------------------------- | ||
3 | |||
4 | Required properties: | ||
5 | - compatible : "st,comms-ssc4-spi" | ||
6 | - reg : Offset and length of the device's register set | ||
7 | - interrupts : The interrupt specifier | ||
8 | - clock-names : Must contain "ssc" | ||
9 | - clocks : Must contain an entry for each name in clock-names | ||
10 | See ../clk/* | ||
11 | - pinctrl-names : Uses "default", can use "sleep" if provided | ||
12 | See ../pinctrl/pinctrl-binding.txt | ||
13 | |||
14 | Optional properties: | ||
15 | - cs-gpios : List of GPIO chip selects | ||
16 | See ../spi/spi-bus.txt | ||
17 | |||
18 | Child nodes represent devices on the SPI bus | ||
19 | See ../spi/spi-bus.txt | ||
20 | |||
21 | Example: | ||
22 | spi@9840000 { | ||
23 | compatible = "st,comms-ssc4-spi"; | ||
24 | reg = <0x9840000 0x110>; | ||
25 | interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>; | ||
26 | clocks = <&clk_s_c0_flexgen CLK_EXT2F_A9>; | ||
27 | clock-names = "ssc"; | ||
28 | pinctrl-0 = <&pinctrl_spi0_default>; | ||
29 | pinctrl-names = "default"; | ||
30 | cs-gpios = <&pio17 5 0>; | ||
31 | #address-cells = <1>; | ||
32 | #size-cells = <0>; | ||
33 | |||
34 | st95hf@0{ | ||
35 | compatible = "st,st95hf"; | ||
36 | reg = <0>; | ||
37 | spi-max-frequency = <1000000>; | ||
38 | interrupts = <2 IRQ_TYPE_EDGE_FALLING>; | ||
39 | }; | ||
40 | }; | ||
diff --git a/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt b/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt index ee05dc390694..307537787574 100644 --- a/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt +++ b/Documentation/devicetree/bindings/staging/iio/adc/mxs-lradc.txt | |||
@@ -12,9 +12,9 @@ Optional properties: | |||
12 | property is not present, then the touchscreen is | 12 | property is not present, then the touchscreen is |
13 | disabled. 5 wires is valid for i.MX28 SoC only. | 13 | disabled. 5 wires is valid for i.MX28 SoC only. |
14 | - fsl,ave-ctrl: number of samples per direction to calculate an average value. | 14 | - fsl,ave-ctrl: number of samples per direction to calculate an average value. |
15 | Allowed value is 1 ... 31, default is 4 | 15 | Allowed value is 1 ... 32, default is 4 |
16 | - fsl,ave-delay: delay between consecutive samples. Allowed value is | 16 | - fsl,ave-delay: delay between consecutive samples. Allowed value is |
17 | 1 ... 2047. It is used if 'fsl,ave-ctrl' > 1, counts at | 17 | 2 ... 2048. It is used if 'fsl,ave-ctrl' > 1, counts at |
18 | 2 kHz and its default is 2 (= 1 ms) | 18 | 2 kHz and its default is 2 (= 1 ms) |
19 | - fsl,settling: delay between plate switch to next sample. Allowed value is | 19 | - fsl,settling: delay between plate switch to next sample. Allowed value is |
20 | 1 ... 2047. It counts at 2 kHz and its default is | 20 | 1 ... 2047. It counts at 2 kHz and its default is |
diff --git a/Documentation/devicetree/bindings/submitting-patches.txt b/Documentation/devicetree/bindings/submitting-patches.txt index b7ba01ad1426..56742bc70218 100644 --- a/Documentation/devicetree/bindings/submitting-patches.txt +++ b/Documentation/devicetree/bindings/submitting-patches.txt | |||
@@ -15,6 +15,29 @@ I. For patch submitters | |||
15 | 3) The Documentation/ portion of the patch should come in the series before | 15 | 3) The Documentation/ portion of the patch should come in the series before |
16 | the code implementing the binding. | 16 | the code implementing the binding. |
17 | 17 | ||
18 | 4) Any compatible strings used in a chip or board DTS file must be | ||
19 | previously documented in the corresponding DT binding text file | ||
20 | in Documentation/devicetree/bindings. This rule applies even if | ||
21 | the Linux device driver does not yet match on the compatible | ||
22 | string. [ checkpatch will emit warnings if this step is not | ||
23 | followed as of commit bff5da4335256513497cc8c79f9a9d1665e09864 | ||
24 | ("checkpatch: add DT compatible string documentation checks"). ] | ||
25 | |||
26 | 5) The wildcard "<chip>" may be used in compatible strings, as in | ||
27 | the following example: | ||
28 | |||
29 | - compatible: Must contain '"nvidia,<chip>-pcie", | ||
30 | "nvidia,tegra20-pcie"' where <chip> is tegra30, tegra132, ... | ||
31 | |||
32 | As in the above example, the known values of "<chip>" should be | ||
33 | documented if it is used. | ||
34 | |||
35 | 6) If a documented compatible string is not yet matched by the | ||
36 | driver, the documentation should also include a compatible | ||
37 | string that is matched by the driver (as in the "nvidia,tegra20-pcie" | ||
38 | example above). | ||
39 | |||
40 | |||
18 | II. For kernel maintainers | 41 | II. For kernel maintainers |
19 | 42 | ||
20 | 1) If you aren't comfortable reviewing a given binding, reply to it and ask | 43 | 1) If you aren't comfortable reviewing a given binding, reply to it and ask |
diff --git a/Documentation/devicetree/bindings/thermal/exynos-thermal.txt b/Documentation/devicetree/bindings/thermal/exynos-thermal.txt index ae738f562acc..695150a4136b 100644 --- a/Documentation/devicetree/bindings/thermal/exynos-thermal.txt +++ b/Documentation/devicetree/bindings/thermal/exynos-thermal.txt | |||
@@ -12,6 +12,7 @@ | |||
12 | "samsung,exynos5420-tmu-ext-triminfo" for TMU channels 2, 3 and 4 | 12 | "samsung,exynos5420-tmu-ext-triminfo" for TMU channels 2, 3 and 4 |
13 | Exynos5420 (Must pass triminfo base and triminfo clock) | 13 | Exynos5420 (Must pass triminfo base and triminfo clock) |
14 | "samsung,exynos5440-tmu" | 14 | "samsung,exynos5440-tmu" |
15 | "samsung,exynos7-tmu" | ||
15 | - interrupt-parent : The phandle for the interrupt controller | 16 | - interrupt-parent : The phandle for the interrupt controller |
16 | - reg : Address range of the thermal registers. For soc's which has multiple | 17 | - reg : Address range of the thermal registers. For soc's which has multiple |
17 | instances of TMU and some registers are shared across all TMU's like | 18 | instances of TMU and some registers are shared across all TMU's like |
@@ -32,13 +33,28 @@ | |||
32 | - clocks : The main clocks for TMU device | 33 | - clocks : The main clocks for TMU device |
33 | -- 1. operational clock for TMU channel | 34 | -- 1. operational clock for TMU channel |
34 | -- 2. optional clock to access the shared registers of TMU channel | 35 | -- 2. optional clock to access the shared registers of TMU channel |
36 | -- 3. optional special clock for functional operation | ||
35 | - clock-names : Thermal system clock name | 37 | - clock-names : Thermal system clock name |
36 | -- "tmu_apbif" operational clock for current TMU channel | 38 | -- "tmu_apbif" operational clock for current TMU channel |
37 | -- "tmu_triminfo_apbif" clock to access the shared triminfo register | 39 | -- "tmu_triminfo_apbif" clock to access the shared triminfo register |
38 | for current TMU channel | 40 | for current TMU channel |
41 | -- "tmu_sclk" clock for functional operation of the current TMU | ||
42 | channel | ||
39 | - vtmu-supply: This entry is optional and provides the regulator node supplying | 43 | - vtmu-supply: This entry is optional and provides the regulator node supplying |
40 | voltage to TMU. If needed this entry can be placed inside | 44 | voltage to TMU. If needed this entry can be placed inside |
41 | board/platform specific dts file. | 45 | board/platform specific dts file. |
46 | Following properties are mandatory (depending on SoC): | ||
47 | - samsung,tmu_gain: Gain value for internal TMU operation. | ||
48 | - samsung,tmu_reference_voltage: Value of TMU IP block's reference voltage | ||
49 | - samsung,tmu_noise_cancel_mode: Mode for noise cancellation | ||
50 | - samsung,tmu_efuse_value: Default level of temperature - it is needed when | ||
51 | in factory fusing produced wrong value | ||
52 | - samsung,tmu_min_efuse_value: Minimum temperature fused value | ||
53 | - samsung,tmu_max_efuse_value: Maximum temperature fused value | ||
54 | - samsung,tmu_first_point_trim: First point trimming value | ||
55 | - samsung,tmu_second_point_trim: Second point trimming value | ||
56 | - samsung,tmu_default_temp_offset: Default temperature offset | ||
57 | - samsung,tmu_cal_type: Callibration type | ||
42 | 58 | ||
43 | Example 1): | 59 | Example 1): |
44 | 60 | ||
@@ -51,6 +67,7 @@ Example 1): | |||
51 | clock-names = "tmu_apbif"; | 67 | clock-names = "tmu_apbif"; |
52 | status = "disabled"; | 68 | status = "disabled"; |
53 | vtmu-supply = <&tmu_regulator_node>; | 69 | vtmu-supply = <&tmu_regulator_node>; |
70 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
54 | }; | 71 | }; |
55 | 72 | ||
56 | Example 2): | 73 | Example 2): |
@@ -61,6 +78,7 @@ Example 2): | |||
61 | interrupts = <0 58 0>; | 78 | interrupts = <0 58 0>; |
62 | clocks = <&clock 21>; | 79 | clocks = <&clock 21>; |
63 | clock-names = "tmu_apbif"; | 80 | clock-names = "tmu_apbif"; |
81 | #include "exynos5440-tmu-sensor-conf.dtsi" | ||
64 | }; | 82 | }; |
65 | 83 | ||
66 | Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | 84 | Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") |
@@ -70,6 +88,7 @@ Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | |||
70 | interrupts = <0 184 0>; | 88 | interrupts = <0 184 0>; |
71 | clocks = <&clock 318>, <&clock 318>; | 89 | clocks = <&clock 318>, <&clock 318>; |
72 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 90 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
91 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
73 | }; | 92 | }; |
74 | 93 | ||
75 | tmu_cpu3: tmu@1006c000 { | 94 | tmu_cpu3: tmu@1006c000 { |
@@ -78,6 +97,7 @@ Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | |||
78 | interrupts = <0 185 0>; | 97 | interrupts = <0 185 0>; |
79 | clocks = <&clock 318>, <&clock 319>; | 98 | clocks = <&clock 318>, <&clock 319>; |
80 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 99 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
100 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
81 | }; | 101 | }; |
82 | 102 | ||
83 | tmu_gpu: tmu@100a0000 { | 103 | tmu_gpu: tmu@100a0000 { |
@@ -86,6 +106,7 @@ Example 3): (In case of Exynos5420 "with misplaced TRIMINFO register") | |||
86 | interrupts = <0 215 0>; | 106 | interrupts = <0 215 0>; |
87 | clocks = <&clock 319>, <&clock 318>; | 107 | clocks = <&clock 319>, <&clock 318>; |
88 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 108 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
109 | #include "exynos4412-tmu-sensor-conf.dtsi" | ||
89 | }; | 110 | }; |
90 | 111 | ||
91 | Note: For multi-instance tmu each instance should have an alias correctly | 112 | Note: For multi-instance tmu each instance should have an alias correctly |
diff --git a/Documentation/devicetree/bindings/thermal/tegra-soctherm.txt b/Documentation/devicetree/bindings/thermal/tegra-soctherm.txt index ecf3ed76cd46..6b68cd150405 100644 --- a/Documentation/devicetree/bindings/thermal/tegra-soctherm.txt +++ b/Documentation/devicetree/bindings/thermal/tegra-soctherm.txt | |||
@@ -7,7 +7,9 @@ notifications. It is also used to manage emergency shutdown in an | |||
7 | overheating situation. | 7 | overheating situation. |
8 | 8 | ||
9 | Required properties : | 9 | Required properties : |
10 | - compatible : "nvidia,tegra124-soctherm". | 10 | - compatible : For Tegra124, must contain "nvidia,tegra124-soctherm". |
11 | For Tegra132, must contain "nvidia,tegra132-soctherm". | ||
12 | For Tegra210, must contain "nvidia,tegra210-soctherm". | ||
11 | - reg : Should contain 1 entry: | 13 | - reg : Should contain 1 entry: |
12 | - SOCTHERM register set | 14 | - SOCTHERM register set |
13 | - interrupts : Defines the interrupt used by SOCTHERM | 15 | - interrupts : Defines the interrupt used by SOCTHERM |
diff --git a/Documentation/devicetree/bindings/thermal/thermal.txt b/Documentation/devicetree/bindings/thermal/thermal.txt index f5db6b72a36f..29fe0bfae38e 100644 --- a/Documentation/devicetree/bindings/thermal/thermal.txt +++ b/Documentation/devicetree/bindings/thermal/thermal.txt | |||
@@ -251,24 +251,24 @@ ocp { | |||
251 | }; | 251 | }; |
252 | 252 | ||
253 | thermal-zones { | 253 | thermal-zones { |
254 | cpu-thermal: cpu-thermal { | 254 | cpu_thermal: cpu-thermal { |
255 | polling-delay-passive = <250>; /* milliseconds */ | 255 | polling-delay-passive = <250>; /* milliseconds */ |
256 | polling-delay = <1000>; /* milliseconds */ | 256 | polling-delay = <1000>; /* milliseconds */ |
257 | 257 | ||
258 | thermal-sensors = <&bandgap0>; | 258 | thermal-sensors = <&bandgap0>; |
259 | 259 | ||
260 | trips { | 260 | trips { |
261 | cpu-alert0: cpu-alert { | 261 | cpu_alert0: cpu-alert0 { |
262 | temperature = <90000>; /* millicelsius */ | 262 | temperature = <90000>; /* millicelsius */ |
263 | hysteresis = <2000>; /* millicelsius */ | 263 | hysteresis = <2000>; /* millicelsius */ |
264 | type = "active"; | 264 | type = "active"; |
265 | }; | 265 | }; |
266 | cpu-alert1: cpu-alert { | 266 | cpu_alert1: cpu-alert1 { |
267 | temperature = <100000>; /* millicelsius */ | 267 | temperature = <100000>; /* millicelsius */ |
268 | hysteresis = <2000>; /* millicelsius */ | 268 | hysteresis = <2000>; /* millicelsius */ |
269 | type = "passive"; | 269 | type = "passive"; |
270 | }; | 270 | }; |
271 | cpu-crit: cpu-crit { | 271 | cpu_crit: cpu-crit { |
272 | temperature = <125000>; /* millicelsius */ | 272 | temperature = <125000>; /* millicelsius */ |
273 | hysteresis = <2000>; /* millicelsius */ | 273 | hysteresis = <2000>; /* millicelsius */ |
274 | type = "critical"; | 274 | type = "critical"; |
@@ -277,17 +277,17 @@ thermal-zones { | |||
277 | 277 | ||
278 | cooling-maps { | 278 | cooling-maps { |
279 | map0 { | 279 | map0 { |
280 | trip = <&cpu-alert0>; | 280 | trip = <&cpu_alert0>; |
281 | cooling-device = <&fan0 THERMAL_NO_LIMITS 4>; | 281 | cooling-device = <&fan0 THERMAL_NO_LIMIT 4>; |
282 | }; | 282 | }; |
283 | map1 { | 283 | map1 { |
284 | trip = <&cpu-alert1>; | 284 | trip = <&cpu_alert1>; |
285 | cooling-device = <&fan0 5 THERMAL_NO_LIMITS>; | 285 | cooling-device = <&fan0 5 THERMAL_NO_LIMIT>; |
286 | }; | 286 | }; |
287 | map2 { | 287 | map2 { |
288 | trip = <&cpu-alert1>; | 288 | trip = <&cpu_alert1>; |
289 | cooling-device = | 289 | cooling-device = |
290 | <&cpu0 THERMAL_NO_LIMITS THERMAL_NO_LIMITS>; | 290 | <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; |
291 | }; | 291 | }; |
292 | }; | 292 | }; |
293 | }; | 293 | }; |
@@ -298,13 +298,13 @@ used to monitor the zone 'cpu-thermal' using its sole sensor. A fan | |||
298 | device (fan0) is controlled via I2C bus 1, at address 0x48, and has ten | 298 | device (fan0) is controlled via I2C bus 1, at address 0x48, and has ten |
299 | different cooling states 0-9. It is used to remove the heat out of | 299 | different cooling states 0-9. It is used to remove the heat out of |
300 | the thermal zone 'cpu-thermal' using its cooling states | 300 | the thermal zone 'cpu-thermal' using its cooling states |
301 | from its minimum to 4, when it reaches trip point 'cpu-alert0' | 301 | from its minimum to 4, when it reaches trip point 'cpu_alert0' |
302 | at 90C, as an example of active cooling. The same cooling device is used at | 302 | at 90C, as an example of active cooling. The same cooling device is used at |
303 | 'cpu-alert1', but from 5 to its maximum state. The cpu@0 device is also | 303 | 'cpu_alert1', but from 5 to its maximum state. The cpu@0 device is also |
304 | linked to the same thermal zone, 'cpu-thermal', as a passive cooling device, | 304 | linked to the same thermal zone, 'cpu-thermal', as a passive cooling device, |
305 | using all its cooling states at trip point 'cpu-alert1', | 305 | using all its cooling states at trip point 'cpu_alert1', |
306 | which is a trip point at 100C. On the thermal zone 'cpu-thermal', at the | 306 | which is a trip point at 100C. On the thermal zone 'cpu-thermal', at the |
307 | temperature of 125C, represented by the trip point 'cpu-crit', the silicon | 307 | temperature of 125C, represented by the trip point 'cpu_crit', the silicon |
308 | is not reliable anymore. | 308 | is not reliable anymore. |
309 | 309 | ||
310 | (b) - IC with several internal sensors | 310 | (b) - IC with several internal sensors |
@@ -329,7 +329,7 @@ ocp { | |||
329 | }; | 329 | }; |
330 | 330 | ||
331 | thermal-zones { | 331 | thermal-zones { |
332 | cpu-thermal: cpu-thermal { | 332 | cpu_thermal: cpu-thermal { |
333 | polling-delay-passive = <250>; /* milliseconds */ | 333 | polling-delay-passive = <250>; /* milliseconds */ |
334 | polling-delay = <1000>; /* milliseconds */ | 334 | polling-delay = <1000>; /* milliseconds */ |
335 | 335 | ||
@@ -338,12 +338,12 @@ thermal-zones { | |||
338 | 338 | ||
339 | trips { | 339 | trips { |
340 | /* each zone within the SoC may have its own trips */ | 340 | /* each zone within the SoC may have its own trips */ |
341 | cpu-alert: cpu-alert { | 341 | cpu_alert: cpu-alert { |
342 | temperature = <100000>; /* millicelsius */ | 342 | temperature = <100000>; /* millicelsius */ |
343 | hysteresis = <2000>; /* millicelsius */ | 343 | hysteresis = <2000>; /* millicelsius */ |
344 | type = "passive"; | 344 | type = "passive"; |
345 | }; | 345 | }; |
346 | cpu-crit: cpu-crit { | 346 | cpu_crit: cpu-crit { |
347 | temperature = <125000>; /* millicelsius */ | 347 | temperature = <125000>; /* millicelsius */ |
348 | hysteresis = <2000>; /* millicelsius */ | 348 | hysteresis = <2000>; /* millicelsius */ |
349 | type = "critical"; | 349 | type = "critical"; |
@@ -356,7 +356,7 @@ thermal-zones { | |||
356 | }; | 356 | }; |
357 | }; | 357 | }; |
358 | 358 | ||
359 | gpu-thermal: gpu-thermal { | 359 | gpu_thermal: gpu-thermal { |
360 | polling-delay-passive = <120>; /* milliseconds */ | 360 | polling-delay-passive = <120>; /* milliseconds */ |
361 | polling-delay = <1000>; /* milliseconds */ | 361 | polling-delay = <1000>; /* milliseconds */ |
362 | 362 | ||
@@ -365,12 +365,12 @@ thermal-zones { | |||
365 | 365 | ||
366 | trips { | 366 | trips { |
367 | /* each zone within the SoC may have its own trips */ | 367 | /* each zone within the SoC may have its own trips */ |
368 | gpu-alert: gpu-alert { | 368 | gpu_alert: gpu-alert { |
369 | temperature = <90000>; /* millicelsius */ | 369 | temperature = <90000>; /* millicelsius */ |
370 | hysteresis = <2000>; /* millicelsius */ | 370 | hysteresis = <2000>; /* millicelsius */ |
371 | type = "passive"; | 371 | type = "passive"; |
372 | }; | 372 | }; |
373 | gpu-crit: gpu-crit { | 373 | gpu_crit: gpu-crit { |
374 | temperature = <105000>; /* millicelsius */ | 374 | temperature = <105000>; /* millicelsius */ |
375 | hysteresis = <2000>; /* millicelsius */ | 375 | hysteresis = <2000>; /* millicelsius */ |
376 | type = "critical"; | 376 | type = "critical"; |
@@ -383,7 +383,7 @@ thermal-zones { | |||
383 | }; | 383 | }; |
384 | }; | 384 | }; |
385 | 385 | ||
386 | dsp-thermal: dsp-thermal { | 386 | dsp_thermal: dsp-thermal { |
387 | polling-delay-passive = <50>; /* milliseconds */ | 387 | polling-delay-passive = <50>; /* milliseconds */ |
388 | polling-delay = <1000>; /* milliseconds */ | 388 | polling-delay = <1000>; /* milliseconds */ |
389 | 389 | ||
@@ -392,12 +392,12 @@ thermal-zones { | |||
392 | 392 | ||
393 | trips { | 393 | trips { |
394 | /* each zone within the SoC may have its own trips */ | 394 | /* each zone within the SoC may have its own trips */ |
395 | dsp-alert: gpu-alert { | 395 | dsp_alert: dsp-alert { |
396 | temperature = <90000>; /* millicelsius */ | 396 | temperature = <90000>; /* millicelsius */ |
397 | hysteresis = <2000>; /* millicelsius */ | 397 | hysteresis = <2000>; /* millicelsius */ |
398 | type = "passive"; | 398 | type = "passive"; |
399 | }; | 399 | }; |
400 | dsp-crit: gpu-crit { | 400 | dsp_crit: gpu-crit { |
401 | temperature = <135000>; /* millicelsius */ | 401 | temperature = <135000>; /* millicelsius */ |
402 | hysteresis = <2000>; /* millicelsius */ | 402 | hysteresis = <2000>; /* millicelsius */ |
403 | type = "critical"; | 403 | type = "critical"; |
@@ -457,7 +457,7 @@ ocp { | |||
457 | }; | 457 | }; |
458 | 458 | ||
459 | thermal-zones { | 459 | thermal-zones { |
460 | cpu-thermal: cpu-thermal { | 460 | cpu_thermal: cpu-thermal { |
461 | polling-delay-passive = <250>; /* milliseconds */ | 461 | polling-delay-passive = <250>; /* milliseconds */ |
462 | polling-delay = <1000>; /* milliseconds */ | 462 | polling-delay = <1000>; /* milliseconds */ |
463 | 463 | ||
@@ -508,7 +508,7 @@ with many sensors and many cooling devices. | |||
508 | /* | 508 | /* |
509 | * An IC with several temperature sensor. | 509 | * An IC with several temperature sensor. |
510 | */ | 510 | */ |
511 | adc-dummy: sensor@0x50 { | 511 | adc_dummy: sensor@0x50 { |
512 | ... | 512 | ... |
513 | #thermal-sensor-cells = <1>; /* sensor internal ID */ | 513 | #thermal-sensor-cells = <1>; /* sensor internal ID */ |
514 | }; | 514 | }; |
@@ -520,7 +520,7 @@ thermal-zones { | |||
520 | polling-delay = <2500>; /* milliseconds */ | 520 | polling-delay = <2500>; /* milliseconds */ |
521 | 521 | ||
522 | /* sensor ID */ | 522 | /* sensor ID */ |
523 | thermal-sensors = <&adc-dummy 4>; | 523 | thermal-sensors = <&adc_dummy 4>; |
524 | 524 | ||
525 | trips { | 525 | trips { |
526 | ... | 526 | ... |
@@ -531,14 +531,14 @@ thermal-zones { | |||
531 | }; | 531 | }; |
532 | }; | 532 | }; |
533 | 533 | ||
534 | board-thermal: board-thermal { | 534 | board_thermal: board-thermal { |
535 | polling-delay-passive = <1000>; /* milliseconds */ | 535 | polling-delay-passive = <1000>; /* milliseconds */ |
536 | polling-delay = <2500>; /* milliseconds */ | 536 | polling-delay = <2500>; /* milliseconds */ |
537 | 537 | ||
538 | /* sensor ID */ | 538 | /* sensor ID */ |
539 | thermal-sensors = <&adc-dummy 0>, /* pcb top edge */ | 539 | thermal-sensors = <&adc_dummy 0>, /* pcb top edge */ |
540 | <&adc-dummy 1>, /* lcd */ | 540 | <&adc_dummy 1>, /* lcd */ |
541 | <&adc-dymmy 2>; /* back cover */ | 541 | <&adc_dummy 2>; /* back cover */ |
542 | /* | 542 | /* |
543 | * An array of coefficients describing the sensor | 543 | * An array of coefficients describing the sensor |
544 | * linear relation. E.g.: | 544 | * linear relation. E.g.: |
@@ -548,22 +548,22 @@ thermal-zones { | |||
548 | 548 | ||
549 | trips { | 549 | trips { |
550 | /* Trips are based on resulting linear equation */ | 550 | /* Trips are based on resulting linear equation */ |
551 | cpu-trip: cpu-trip { | 551 | cpu_trip: cpu-trip { |
552 | temperature = <60000>; /* millicelsius */ | 552 | temperature = <60000>; /* millicelsius */ |
553 | hysteresis = <2000>; /* millicelsius */ | 553 | hysteresis = <2000>; /* millicelsius */ |
554 | type = "passive"; | 554 | type = "passive"; |
555 | }; | 555 | }; |
556 | gpu-trip: gpu-trip { | 556 | gpu_trip: gpu-trip { |
557 | temperature = <55000>; /* millicelsius */ | 557 | temperature = <55000>; /* millicelsius */ |
558 | hysteresis = <2000>; /* millicelsius */ | 558 | hysteresis = <2000>; /* millicelsius */ |
559 | type = "passive"; | 559 | type = "passive"; |
560 | } | 560 | } |
561 | lcd-trip: lcp-trip { | 561 | lcd_trip: lcp-trip { |
562 | temperature = <53000>; /* millicelsius */ | 562 | temperature = <53000>; /* millicelsius */ |
563 | hysteresis = <2000>; /* millicelsius */ | 563 | hysteresis = <2000>; /* millicelsius */ |
564 | type = "passive"; | 564 | type = "passive"; |
565 | }; | 565 | }; |
566 | crit-trip: crit-trip { | 566 | crit_trip: crit-trip { |
567 | temperature = <68000>; /* millicelsius */ | 567 | temperature = <68000>; /* millicelsius */ |
568 | hysteresis = <2000>; /* millicelsius */ | 568 | hysteresis = <2000>; /* millicelsius */ |
569 | type = "critical"; | 569 | type = "critical"; |
@@ -572,17 +572,17 @@ thermal-zones { | |||
572 | 572 | ||
573 | cooling-maps { | 573 | cooling-maps { |
574 | map0 { | 574 | map0 { |
575 | trip = <&cpu-trip>; | 575 | trip = <&cpu_trip>; |
576 | cooling-device = <&cpu0 0 2>; | 576 | cooling-device = <&cpu0 0 2>; |
577 | contribution = <55>; | 577 | contribution = <55>; |
578 | }; | 578 | }; |
579 | map1 { | 579 | map1 { |
580 | trip = <&gpu-trip>; | 580 | trip = <&gpu_trip>; |
581 | cooling-device = <&gpu0 0 2>; | 581 | cooling-device = <&gpu0 0 2>; |
582 | contribution = <20>; | 582 | contribution = <20>; |
583 | }; | 583 | }; |
584 | map2 { | 584 | map2 { |
585 | trip = <&lcd-trip>; | 585 | trip = <&lcd_trip>; |
586 | cooling-device = <&lcd0 5 10>; | 586 | cooling-device = <&lcd0 5 10>; |
587 | contribution = <15>; | 587 | contribution = <15>; |
588 | }; | 588 | }; |
diff --git a/Documentation/devicetree/bindings/timer/digicolor-timer.txt b/Documentation/devicetree/bindings/timer/digicolor-timer.txt new file mode 100644 index 000000000000..d1b659bbc29f --- /dev/null +++ b/Documentation/devicetree/bindings/timer/digicolor-timer.txt | |||
@@ -0,0 +1,18 @@ | |||
1 | Conexant Digicolor SoCs Timer Controller | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : should be "cnxt,cx92755-timer" | ||
6 | - reg : Specifies base physical address and size of the "Agent Communication" | ||
7 | timer registers | ||
8 | - interrupts : Contains 8 interrupts, one for each timer | ||
9 | - clocks: phandle to the main clock | ||
10 | |||
11 | Example: | ||
12 | |||
13 | timer@f0000fc0 { | ||
14 | compatible = "cnxt,cx92755-timer"; | ||
15 | reg = <0xf0000fc0 0x40>; | ||
16 | interrupts = <19>, <31>, <34>, <35>, <52>, <53>, <54>, <55>; | ||
17 | clocks = <&main_clk>; | ||
18 | }; | ||
diff --git a/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt b/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt index b5082a1cf461..1761f53ee36f 100644 --- a/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt +++ b/Documentation/devicetree/bindings/timer/nvidia,tegra30-timer.txt | |||
@@ -6,7 +6,9 @@ trigger a legacy watchdog reset. | |||
6 | 6 | ||
7 | Required properties: | 7 | Required properties: |
8 | 8 | ||
9 | - compatible : should be "nvidia,tegra30-timer", "nvidia,tegra20-timer". | 9 | - compatible : For Tegra30, must contain "nvidia,tegra30-timer". Otherwise, |
10 | must contain '"nvidia,<chip>-timer", "nvidia,tegra30-timer"' where | ||
11 | <chip> is tegra124 or tegra132. | ||
10 | - reg : Specifies base physical address and size of the registers. | 12 | - reg : Specifies base physical address and size of the registers. |
11 | - interrupts : A list of 6 interrupts; one per each of timer channels 1 | 13 | - interrupts : A list of 6 interrupts; one per each of timer channels 1 |
12 | through 5, and one for the shared interrupt for the remaining channels. | 14 | through 5, and one for the shared interrupt for the remaining channels. |
diff --git a/Documentation/devicetree/bindings/timer/rockchip,rk3288-timer.txt b/Documentation/devicetree/bindings/timer/rockchip,rk3288-timer.txt new file mode 100644 index 000000000000..87f0b0042bae --- /dev/null +++ b/Documentation/devicetree/bindings/timer/rockchip,rk3288-timer.txt | |||
@@ -0,0 +1,18 @@ | |||
1 | Rockchip rk3288 timer | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: shall be "rockchip,rk3288-timer" | ||
5 | - reg: base address of the timer register starting with TIMERS CONTROL register | ||
6 | - interrupts: should contain the interrupts for Timer0 | ||
7 | - clocks : must contain an entry for each entry in clock-names | ||
8 | - clock-names : must include the following entries: | ||
9 | "timer", "pclk" | ||
10 | |||
11 | Example: | ||
12 | timer: timer@ff810000 { | ||
13 | compatible = "rockchip,rk3288-timer"; | ||
14 | reg = <0xff810000 0x20>; | ||
15 | interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; | ||
16 | clocks = <&xin24m>, <&cru PCLK_TIMER>; | ||
17 | clock-names = "timer", "pclk"; | ||
18 | }; | ||
diff --git a/Documentation/devicetree/bindings/unittest.txt b/Documentation/devicetree/bindings/unittest.txt index 0f92a22fddfa..8933211f32f9 100644 --- a/Documentation/devicetree/bindings/unittest.txt +++ b/Documentation/devicetree/bindings/unittest.txt | |||
@@ -1,4 +1,4 @@ | |||
1 | * OF selftest platform device | 1 | 1) OF selftest platform device |
2 | 2 | ||
3 | ** selftest | 3 | ** selftest |
4 | 4 | ||
@@ -12,3 +12,60 @@ Example: | |||
12 | compatible = "selftest"; | 12 | compatible = "selftest"; |
13 | status = "okay"; | 13 | status = "okay"; |
14 | }; | 14 | }; |
15 | |||
16 | 2) OF selftest i2c adapter platform device | ||
17 | |||
18 | ** platform device unittest adapter | ||
19 | |||
20 | Required properties: | ||
21 | - compatible: must be selftest-i2c-bus | ||
22 | |||
23 | Children nodes contain selftest i2c devices. | ||
24 | |||
25 | Example: | ||
26 | selftest-i2c-bus { | ||
27 | compatible = "selftest-i2c-bus"; | ||
28 | status = "okay"; | ||
29 | }; | ||
30 | |||
31 | 3) OF selftest i2c device | ||
32 | |||
33 | ** I2C selftest device | ||
34 | |||
35 | Required properties: | ||
36 | - compatible: must be selftest-i2c-dev | ||
37 | |||
38 | All other properties are optional | ||
39 | |||
40 | Example: | ||
41 | selftest-i2c-dev { | ||
42 | compatible = "selftest-i2c-dev"; | ||
43 | status = "okay"; | ||
44 | }; | ||
45 | |||
46 | 4) OF selftest i2c mux device | ||
47 | |||
48 | ** I2C selftest mux | ||
49 | |||
50 | Required properties: | ||
51 | - compatible: must be selftest-i2c-mux | ||
52 | |||
53 | Children nodes contain selftest i2c bus nodes per channel. | ||
54 | |||
55 | Example: | ||
56 | selftest-i2c-mux { | ||
57 | compatible = "selftest-i2c-mux"; | ||
58 | status = "okay"; | ||
59 | #address-cells = <1>; | ||
60 | #size-cells = <0>; | ||
61 | channel-0 { | ||
62 | reg = <0>; | ||
63 | #address-cells = <1>; | ||
64 | #size-cells = <0>; | ||
65 | i2c-dev { | ||
66 | reg = <8>; | ||
67 | compatible = "selftest-i2c-dev"; | ||
68 | status = "okay"; | ||
69 | }; | ||
70 | }; | ||
71 | }; | ||
diff --git a/Documentation/devicetree/bindings/usb/atmel-usb.txt b/Documentation/devicetree/bindings/usb/atmel-usb.txt index bc2222ca3f2a..e180d56c75db 100644 --- a/Documentation/devicetree/bindings/usb/atmel-usb.txt +++ b/Documentation/devicetree/bindings/usb/atmel-usb.txt | |||
@@ -33,9 +33,17 @@ usb1: ehci@00800000 { | |||
33 | AT91 USB device controller | 33 | AT91 USB device controller |
34 | 34 | ||
35 | Required properties: | 35 | Required properties: |
36 | - compatible: Should be "atmel,at91rm9200-udc" | 36 | - compatible: Should be one of the following |
37 | "atmel,at91rm9200-udc" | ||
38 | "atmel,at91sam9260-udc" | ||
39 | "atmel,at91sam9261-udc" | ||
40 | "atmel,at91sam9263-udc" | ||
37 | - reg: Address and length of the register set for the device | 41 | - reg: Address and length of the register set for the device |
38 | - interrupts: Should contain macb interrupt | 42 | - interrupts: Should contain macb interrupt |
43 | - clocks: Should reference the peripheral and the AHB clocks | ||
44 | - clock-names: Should contains two strings | ||
45 | "pclk" for the peripheral clock | ||
46 | "hclk" for the AHB clock | ||
39 | 47 | ||
40 | Optional properties: | 48 | Optional properties: |
41 | - atmel,vbus-gpio: If present, specifies a gpio that needs to be | 49 | - atmel,vbus-gpio: If present, specifies a gpio that needs to be |
@@ -51,7 +59,10 @@ usb1: gadget@fffa4000 { | |||
51 | Atmel High-Speed USB device controller | 59 | Atmel High-Speed USB device controller |
52 | 60 | ||
53 | Required properties: | 61 | Required properties: |
54 | - compatible: Should be "atmel,at91sam9rl-udc" | 62 | - compatible: Should be one of the following |
63 | "at91sam9rl-udc" | ||
64 | "at91sam9g45-udc" | ||
65 | "sama5d3-udc" | ||
55 | - reg: Address and length of the register set for the device | 66 | - reg: Address and length of the register set for the device |
56 | - interrupts: Should contain usba interrupt | 67 | - interrupts: Should contain usba interrupt |
57 | - ep childnode: To specify the number of endpoints and their properties. | 68 | - ep childnode: To specify the number of endpoints and their properties. |
diff --git a/Documentation/devicetree/bindings/usb/dwc2.txt b/Documentation/devicetree/bindings/usb/dwc2.txt index 482f815363ef..fd132cbee70e 100644 --- a/Documentation/devicetree/bindings/usb/dwc2.txt +++ b/Documentation/devicetree/bindings/usb/dwc2.txt | |||
@@ -20,6 +20,10 @@ Optional properties: | |||
20 | Refer to phy/phy-bindings.txt for generic phy consumer properties | 20 | Refer to phy/phy-bindings.txt for generic phy consumer properties |
21 | - dr_mode: shall be one of "host", "peripheral" and "otg" | 21 | - dr_mode: shall be one of "host", "peripheral" and "otg" |
22 | Refer to usb/generic.txt | 22 | Refer to usb/generic.txt |
23 | - g-use-dma: enable dma usage in gadget driver. | ||
24 | - g-rx-fifo-size: size of rx fifo size in gadget mode. | ||
25 | - g-np-tx-fifo-size: size of non-periodic tx fifo size in gadget mode. | ||
26 | - g-tx-fifo-size: size of periodic tx fifo per endpoint (except ep0) in gadget mode. | ||
23 | 27 | ||
24 | Example: | 28 | Example: |
25 | 29 | ||
diff --git a/Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt b/Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt index 3dc9140e3dfb..f60785f73d3d 100644 --- a/Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt +++ b/Documentation/devicetree/bindings/usb/nvidia,tegra20-ehci.txt | |||
@@ -6,7 +6,10 @@ Practice : Universal Serial Bus" with the following modifications | |||
6 | and additions : | 6 | and additions : |
7 | 7 | ||
8 | Required properties : | 8 | Required properties : |
9 | - compatible : Should be "nvidia,tegra20-ehci". | 9 | - compatible : For Tegra20, must contain "nvidia,tegra20-ehci". |
10 | For Tegra30, must contain "nvidia,tegra30-ehci". Otherwise, must contain | ||
11 | "nvidia,<chip>-ehci" plus at least one of the above, where <chip> is | ||
12 | tegra114, tegra124, tegra132, or tegra210. | ||
10 | - nvidia,phy : phandle of the PHY that the controller is connected to. | 13 | - nvidia,phy : phandle of the PHY that the controller is connected to. |
11 | - clocks : Must contain one entry, for the module clock. | 14 | - clocks : Must contain one entry, for the module clock. |
12 | See ../clocks/clock-bindings.txt for details. | 15 | See ../clocks/clock-bindings.txt for details. |
diff --git a/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt b/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt index c9205fbf26e2..a9aa79fb90ed 100644 --- a/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt +++ b/Documentation/devicetree/bindings/usb/nvidia,tegra20-usb-phy.txt | |||
@@ -3,7 +3,10 @@ Tegra SOC USB PHY | |||
3 | The device node for Tegra SOC USB PHY: | 3 | The device node for Tegra SOC USB PHY: |
4 | 4 | ||
5 | Required properties : | 5 | Required properties : |
6 | - compatible : Should be "nvidia,tegra<chip>-usb-phy". | 6 | - compatible : For Tegra20, must contain "nvidia,tegra20-usb-phy". |
7 | For Tegra30, must contain "nvidia,tegra30-usb-phy". Otherwise, must contain | ||
8 | "nvidia,<chip>-usb-phy" plus at least one of the above, where <chip> is | ||
9 | tegra114, tegra124, tegra132, or tegra210. | ||
7 | - reg : Defines the following set of registers, in the order listed: | 10 | - reg : Defines the following set of registers, in the order listed: |
8 | - The PHY's own register set. | 11 | - The PHY's own register set. |
9 | Always present. | 12 | Always present. |
diff --git a/Documentation/devicetree/bindings/usb/renesas_usbhs.txt b/Documentation/devicetree/bindings/usb/renesas_usbhs.txt index b08c903f8668..61b045b6d50e 100644 --- a/Documentation/devicetree/bindings/usb/renesas_usbhs.txt +++ b/Documentation/devicetree/bindings/usb/renesas_usbhs.txt | |||
@@ -14,6 +14,8 @@ Optional properties: | |||
14 | function should be enabled | 14 | function should be enabled |
15 | - phys: phandle + phy specifier pair | 15 | - phys: phandle + phy specifier pair |
16 | - phy-names: must be "usb" | 16 | - phy-names: must be "usb" |
17 | - dmas: Must contain a list of references to DMA specifiers. | ||
18 | - dma-names : Must contain a list of DMA names, "tx" or "rx". | ||
17 | 19 | ||
18 | Example: | 20 | Example: |
19 | usbhs: usb@e6590000 { | 21 | usbhs: usb@e6590000 { |
diff --git a/Documentation/devicetree/bindings/usb/usb-ehci.txt b/Documentation/devicetree/bindings/usb/usb-ehci.txt index 43c1a4e06767..0b04fdff9d5a 100644 --- a/Documentation/devicetree/bindings/usb/usb-ehci.txt +++ b/Documentation/devicetree/bindings/usb/usb-ehci.txt | |||
@@ -12,6 +12,7 @@ Optional properties: | |||
12 | - big-endian-regs : boolean, set this for hcds with big-endian registers | 12 | - big-endian-regs : boolean, set this for hcds with big-endian registers |
13 | - big-endian-desc : boolean, set this for hcds with big-endian descriptors | 13 | - big-endian-desc : boolean, set this for hcds with big-endian descriptors |
14 | - big-endian : boolean, for hcds with big-endian-regs + big-endian-desc | 14 | - big-endian : boolean, for hcds with big-endian-regs + big-endian-desc |
15 | - needs-reset-on-resume : boolean, set this to force EHCI reset after resume | ||
15 | - clocks : a list of phandle + clock specifier pairs | 16 | - clocks : a list of phandle + clock specifier pairs |
16 | - phys : phandle + phy specifier pair | 17 | - phys : phandle + phy specifier pair |
17 | - phy-names : "usb" | 18 | - phy-names : "usb" |
diff --git a/Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt b/Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt index 1bd37faba05b..5be01c859b7a 100644 --- a/Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt +++ b/Documentation/devicetree/bindings/usb/usb-nop-xceiv.txt | |||
@@ -13,10 +13,15 @@ Optional properties: | |||
13 | - clock-frequency: the clock frequency (in Hz) that the PHY clock must | 13 | - clock-frequency: the clock frequency (in Hz) that the PHY clock must |
14 | be configured to. | 14 | be configured to. |
15 | 15 | ||
16 | - vcc-supply: phandle to the regulator that provides RESET to the PHY. | 16 | - vcc-supply: phandle to the regulator that provides power to the PHY. |
17 | 17 | ||
18 | - reset-gpios: Should specify the GPIO for reset. | 18 | - reset-gpios: Should specify the GPIO for reset. |
19 | 19 | ||
20 | - vbus-detect-gpio: should specify the GPIO detecting a VBus insertion | ||
21 | (see Documentation/devicetree/bindings/gpio/gpio.txt) | ||
22 | - vbus-regulator : should specifiy the regulator supplying current drawn from | ||
23 | the VBus line (see Documentation/devicetree/bindings/regulator/regulator.txt). | ||
24 | |||
20 | Example: | 25 | Example: |
21 | 26 | ||
22 | hsusb1_phy { | 27 | hsusb1_phy { |
@@ -26,8 +31,11 @@ Example: | |||
26 | clock-names = "main_clk"; | 31 | clock-names = "main_clk"; |
27 | vcc-supply = <&hsusb1_vcc_regulator>; | 32 | vcc-supply = <&hsusb1_vcc_regulator>; |
28 | reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; | 33 | reset-gpios = <&gpio1 7 GPIO_ACTIVE_LOW>; |
34 | vbus-detect-gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>; | ||
35 | vbus-regulator = <&vbus_regulator>; | ||
29 | }; | 36 | }; |
30 | 37 | ||
31 | hsusb1_phy is a NOP USB PHY device that gets its clock from an oscillator | 38 | hsusb1_phy is a NOP USB PHY device that gets its clock from an oscillator |
32 | and expects that clock to be configured to 19.2MHz by the NOP PHY driver. | 39 | and expects that clock to be configured to 19.2MHz by the NOP PHY driver. |
33 | hsusb1_vcc_regulator provides power to the PHY and GPIO 7 controls RESET. | 40 | hsusb1_vcc_regulator provides power to the PHY and GPIO 7 controls RESET. |
41 | GPIO 13 detects VBus insertion, and accordingly notifies the vbus-regulator. | ||
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.txt b/Documentation/devicetree/bindings/vendor-prefixes.txt index d443279c95dc..389ca1347a77 100644 --- a/Documentation/devicetree/bindings/vendor-prefixes.txt +++ b/Documentation/devicetree/bindings/vendor-prefixes.txt | |||
@@ -4,12 +4,15 @@ This isn't an exhaustive list, but you should add new prefixes to it before | |||
4 | using them to avoid name-space collisions. | 4 | using them to avoid name-space collisions. |
5 | 5 | ||
6 | abilis Abilis Systems | 6 | abilis Abilis Systems |
7 | abcn Abracon Corporation | ||
7 | active-semi Active-Semi International Inc | 8 | active-semi Active-Semi International Inc |
8 | ad Avionic Design GmbH | 9 | ad Avionic Design GmbH |
9 | adapteva Adapteva, Inc. | 10 | adapteva Adapteva, Inc. |
11 | adh AD Holdings Plc. | ||
10 | adi Analog Devices, Inc. | 12 | adi Analog Devices, Inc. |
11 | aeroflexgaisler Aeroflex Gaisler AB | 13 | aeroflexgaisler Aeroflex Gaisler AB |
12 | allwinner Allwinner Technology Co., Ltd. | 14 | allwinner Allwinner Technology Co., Ltd. |
15 | alphascale AlphaScale Integrated Circuits Systems, Inc. | ||
13 | altr Altera Corp. | 16 | altr Altera Corp. |
14 | amcc Applied Micro Circuits Corporation (APM, formally AMCC) | 17 | amcc Applied Micro Circuits Corporation (APM, formally AMCC) |
15 | amd Advanced Micro Devices (AMD), Inc. | 18 | amd Advanced Micro Devices (AMD), Inc. |
@@ -23,6 +26,7 @@ asahi-kasei Asahi Kasei Corp. | |||
23 | atmel Atmel Corporation | 26 | atmel Atmel Corporation |
24 | auo AU Optronics Corporation | 27 | auo AU Optronics Corporation |
25 | avago Avago Technologies | 28 | avago Avago Technologies |
29 | avic Shanghai AVIC Optoelectronics Co., Ltd. | ||
26 | bosch Bosch Sensortec GmbH | 30 | bosch Bosch Sensortec GmbH |
27 | brcm Broadcom Corporation | 31 | brcm Broadcom Corporation |
28 | buffalo Buffalo, Inc. | 32 | buffalo Buffalo, Inc. |
@@ -31,11 +35,15 @@ capella Capella Microsystems, Inc | |||
31 | cavium Cavium, Inc. | 35 | cavium Cavium, Inc. |
32 | cdns Cadence Design Systems Inc. | 36 | cdns Cadence Design Systems Inc. |
33 | chipidea Chipidea, Inc | 37 | chipidea Chipidea, Inc |
38 | chipspark ChipSPARK | ||
34 | chrp Common Hardware Reference Platform | 39 | chrp Common Hardware Reference Platform |
35 | chunghwa Chunghwa Picture Tubes Ltd. | 40 | chunghwa Chunghwa Picture Tubes Ltd. |
36 | cirrus Cirrus Logic, Inc. | 41 | cirrus Cirrus Logic, Inc. |
42 | cloudengines Cloud Engines, Inc. | ||
37 | cnm Chips&Media, Inc. | 43 | cnm Chips&Media, Inc. |
44 | cnxt Conexant Systems, Inc. | ||
38 | cortina Cortina Systems, Inc. | 45 | cortina Cortina Systems, Inc. |
46 | cosmic Cosmic Circuits | ||
39 | crystalfontz Crystalfontz America, Inc. | 47 | crystalfontz Crystalfontz America, Inc. |
40 | dallas Maxim Integrated Products (formerly Dallas Semiconductor) | 48 | dallas Maxim Integrated Products (formerly Dallas Semiconductor) |
41 | davicom DAVICOM Semiconductor, Inc. | 49 | davicom DAVICOM Semiconductor, Inc. |
@@ -54,14 +62,18 @@ epcos EPCOS AG | |||
54 | epfl Ecole Polytechnique Fédérale de Lausanne | 62 | epfl Ecole Polytechnique Fédérale de Lausanne |
55 | epson Seiko Epson Corp. | 63 | epson Seiko Epson Corp. |
56 | est ESTeem Wireless Modems | 64 | est ESTeem Wireless Modems |
65 | ettus NI Ettus Research | ||
57 | eukrea Eukréa Electromatique | 66 | eukrea Eukréa Electromatique |
58 | everest Everest Semiconductor Co. Ltd. | 67 | everest Everest Semiconductor Co. Ltd. |
68 | everspin Everspin Technologies, Inc. | ||
59 | excito Excito | 69 | excito Excito |
60 | fcs Fairchild Semiconductor | 70 | fcs Fairchild Semiconductor |
71 | firefly Firefly | ||
61 | fsl Freescale Semiconductor | 72 | fsl Freescale Semiconductor |
62 | GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc. | 73 | GEFanuc GE Fanuc Intelligent Platforms Embedded Systems, Inc. |
63 | gef GE Fanuc Intelligent Platforms Embedded Systems, Inc. | 74 | gef GE Fanuc Intelligent Platforms Embedded Systems, Inc. |
64 | geniatech Geniatech, Inc. | 75 | geniatech Geniatech, Inc. |
76 | giantplus Giantplus Technology Co., Ltd. | ||
65 | globalscale Globalscale Technologies, Inc. | 77 | globalscale Globalscale Technologies, Inc. |
66 | gmt Global Mixed-mode Technology, Inc. | 78 | gmt Global Mixed-mode Technology, Inc. |
67 | google Google, Inc. | 79 | google Google, Inc. |
@@ -69,6 +81,7 @@ gumstix Gumstix, Inc. | |||
69 | gw Gateworks Corporation | 81 | gw Gateworks Corporation |
70 | hannstar HannStar Display Corporation | 82 | hannstar HannStar Display Corporation |
71 | haoyu Haoyu Microelectronic Co. Ltd. | 83 | haoyu Haoyu Microelectronic Co. Ltd. |
84 | himax Himax Technologies, Inc. | ||
72 | hisilicon Hisilicon Limited. | 85 | hisilicon Hisilicon Limited. |
73 | hit Hitachi Ltd. | 86 | hit Hitachi Ltd. |
74 | honeywell Honeywell | 87 | honeywell Honeywell |
@@ -82,8 +95,7 @@ innolux Innolux Corporation | |||
82 | intel Intel Corporation | 95 | intel Intel Corporation |
83 | intercontrol Inter Control Group | 96 | intercontrol Inter Control Group |
84 | isee ISEE 2007 S.L. | 97 | isee ISEE 2007 S.L. |
85 | isil Intersil (deprecated, use isl) | 98 | isil Intersil |
86 | isl Intersil | ||
87 | karo Ka-Ro electronics GmbH | 99 | karo Ka-Ro electronics GmbH |
88 | keymile Keymile GmbH | 100 | keymile Keymile GmbH |
89 | lacie LaCie | 101 | lacie LaCie |
@@ -118,7 +130,9 @@ nvidia NVIDIA | |||
118 | nxp NXP Semiconductors | 130 | nxp NXP Semiconductors |
119 | onnn ON Semiconductor Corp. | 131 | onnn ON Semiconductor Corp. |
120 | opencores OpenCores.org | 132 | opencores OpenCores.org |
133 | ovti OmniVision Technologies | ||
121 | panasonic Panasonic Corporation | 134 | panasonic Panasonic Corporation |
135 | parade Parade Technologies Inc. | ||
122 | pericom Pericom Technology Inc. | 136 | pericom Pericom Technology Inc. |
123 | phytec PHYTEC Messtechnik GmbH | 137 | phytec PHYTEC Messtechnik GmbH |
124 | picochip Picochip Ltd | 138 | picochip Picochip Ltd |
@@ -142,8 +156,10 @@ sandisk Sandisk Corporation | |||
142 | sbs Smart Battery System | 156 | sbs Smart Battery System |
143 | schindler Schindler | 157 | schindler Schindler |
144 | seagate Seagate Technology PLC | 158 | seagate Seagate Technology PLC |
159 | semtech Semtech Corporation | ||
145 | sil Silicon Image | 160 | sil Silicon Image |
146 | silabs Silicon Laboratories | 161 | silabs Silicon Laboratories |
162 | siliconmitus Silicon Mitus, Inc. | ||
147 | simtek | 163 | simtek |
148 | sii Seiko Instruments, Inc. | 164 | sii Seiko Instruments, Inc. |
149 | silergy Silergy Corp. | 165 | silergy Silergy Corp. |
@@ -154,6 +170,7 @@ snps Synopsys, Inc. | |||
154 | solidrun SolidRun | 170 | solidrun SolidRun |
155 | sony Sony Corporation | 171 | sony Sony Corporation |
156 | spansion Spansion Inc. | 172 | spansion Spansion Inc. |
173 | sprd Spreadtrum Communications Inc. | ||
157 | st STMicroelectronics | 174 | st STMicroelectronics |
158 | ste ST-Ericsson | 175 | ste ST-Ericsson |
159 | stericsson ST-Ericsson | 176 | stericsson ST-Ericsson |
@@ -165,6 +182,7 @@ tlm Trusted Logic Mobility | |||
165 | toradex Toradex AG | 182 | toradex Toradex AG |
166 | toshiba Toshiba Corporation | 183 | toshiba Toshiba Corporation |
167 | toumaz Toumaz | 184 | toumaz Toumaz |
185 | truly Truly Semiconductors Limited | ||
168 | usi Universal Scientific Industrial Co., Ltd. | 186 | usi Universal Scientific Industrial Co., Ltd. |
169 | v3 V3 Semiconductor | 187 | v3 V3 Semiconductor |
170 | variscite Variscite Ltd. | 188 | variscite Variscite Ltd. |
diff --git a/Documentation/devicetree/bindings/video/bridge/ps8622.txt b/Documentation/devicetree/bindings/video/bridge/ps8622.txt new file mode 100644 index 000000000000..c989c3807f2b --- /dev/null +++ b/Documentation/devicetree/bindings/video/bridge/ps8622.txt | |||
@@ -0,0 +1,31 @@ | |||
1 | ps8622-bridge bindings | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "parade,ps8622" or "parade,ps8625" | ||
5 | - reg: first i2c address of the bridge | ||
6 | - sleep-gpios: OF device-tree gpio specification for PD_ pin. | ||
7 | - reset-gpios: OF device-tree gpio specification for RST_ pin. | ||
8 | |||
9 | Optional properties: | ||
10 | - lane-count: number of DP lanes to use | ||
11 | - use-external-pwm: backlight will be controlled by an external PWM | ||
12 | - video interfaces: Device node can contain video interface port | ||
13 | nodes for panel according to [1]. | ||
14 | |||
15 | [1]: Documentation/devicetree/bindings/media/video-interfaces.txt | ||
16 | |||
17 | Example: | ||
18 | lvds-bridge@48 { | ||
19 | compatible = "parade,ps8622"; | ||
20 | reg = <0x48>; | ||
21 | sleep-gpios = <&gpc3 6 1 0 0>; | ||
22 | reset-gpios = <&gpc3 1 1 0 0>; | ||
23 | lane-count = <1>; | ||
24 | ports { | ||
25 | port@0 { | ||
26 | bridge_out: endpoint { | ||
27 | remote-endpoint = <&panel_in>; | ||
28 | }; | ||
29 | }; | ||
30 | }; | ||
31 | }; | ||
diff --git a/Documentation/devicetree/bindings/drm/bridge/ptn3460.txt b/Documentation/devicetree/bindings/video/bridge/ptn3460.txt index 52b93b2c6748..361971ba104d 100644 --- a/Documentation/devicetree/bindings/drm/bridge/ptn3460.txt +++ b/Documentation/devicetree/bindings/video/bridge/ptn3460.txt | |||
@@ -3,8 +3,8 @@ ptn3460 bridge bindings | |||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: "nxp,ptn3460" | 4 | - compatible: "nxp,ptn3460" |
5 | - reg: i2c address of the bridge | 5 | - reg: i2c address of the bridge |
6 | - powerdown-gpio: OF device-tree gpio specification | 6 | - powerdown-gpio: OF device-tree gpio specification for PD_N pin. |
7 | - reset-gpio: OF device-tree gpio specification | 7 | - reset-gpio: OF device-tree gpio specification for RST_N pin. |
8 | - edid-emulation: The EDID emulation entry to use | 8 | - edid-emulation: The EDID emulation entry to use |
9 | +-------+------------+------------------+ | 9 | +-------+------------+------------------+ |
10 | | Value | Resolution | Description | | 10 | | Value | Resolution | Description | |
@@ -17,6 +17,11 @@ Required properties: | |||
17 | | 6 | 1600x900 | ChiMei M215HGE | | 17 | | 6 | 1600x900 | ChiMei M215HGE | |
18 | +-------+------------+------------------+ | 18 | +-------+------------+------------------+ |
19 | 19 | ||
20 | - video interfaces: Device node can contain video interface port | ||
21 | nodes for panel according to [1]. | ||
22 | |||
23 | [1]: Documentation/devicetree/bindings/media/video-interfaces.txt | ||
24 | |||
20 | Example: | 25 | Example: |
21 | lvds-bridge@20 { | 26 | lvds-bridge@20 { |
22 | compatible = "nxp,ptn3460"; | 27 | compatible = "nxp,ptn3460"; |
@@ -24,4 +29,11 @@ Example: | |||
24 | powerdown-gpio = <&gpy2 5 1 0 0>; | 29 | powerdown-gpio = <&gpy2 5 1 0 0>; |
25 | reset-gpio = <&gpx1 5 1 0 0>; | 30 | reset-gpio = <&gpx1 5 1 0 0>; |
26 | edid-emulation = <5>; | 31 | edid-emulation = <5>; |
32 | ports { | ||
33 | port@0 { | ||
34 | bridge_out: endpoint { | ||
35 | remote-endpoint = <&panel_in>; | ||
36 | }; | ||
37 | }; | ||
38 | }; | ||
27 | }; | 39 | }; |
diff --git a/Documentation/devicetree/bindings/video/dw_hdmi-rockchip.txt b/Documentation/devicetree/bindings/video/dw_hdmi-rockchip.txt new file mode 100644 index 000000000000..668091f27674 --- /dev/null +++ b/Documentation/devicetree/bindings/video/dw_hdmi-rockchip.txt | |||
@@ -0,0 +1,46 @@ | |||
1 | Rockchip specific extensions to the Synopsys Designware HDMI | ||
2 | ================================ | ||
3 | |||
4 | Required properties: | ||
5 | - compatible: "rockchip,rk3288-dw-hdmi"; | ||
6 | - reg: Physical base address and length of the controller's registers. | ||
7 | - clocks: phandle to hdmi iahb and isfr clocks. | ||
8 | - clock-names: should be "iahb" "isfr" | ||
9 | - rockchip,grf: this soc should set GRF regs to mux vopl/vopb. | ||
10 | - interrupts: HDMI interrupt number | ||
11 | - ports: contain a port node with endpoint definitions as defined in | ||
12 | Documentation/devicetree/bindings/media/video-interfaces.txt. For | ||
13 | vopb,set the reg = <0> and set the reg = <1> for vopl. | ||
14 | - reg-io-width: the width of the reg:1,4, the value should be 4 on | ||
15 | rk3288 platform | ||
16 | |||
17 | Optional properties | ||
18 | - ddc-i2c-bus: phandle of an I2C controller used for DDC EDID probing | ||
19 | - clocks, clock-names: phandle to the HDMI CEC clock, name should be "cec" | ||
20 | |||
21 | Example: | ||
22 | hdmi: hdmi@ff980000 { | ||
23 | compatible = "rockchip,rk3288-dw-hdmi"; | ||
24 | reg = <0xff980000 0x20000>; | ||
25 | reg-io-width = <4>; | ||
26 | ddc-i2c-bus = <&i2c5>; | ||
27 | rockchip,grf = <&grf>; | ||
28 | interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; | ||
29 | clocks = <&cru PCLK_HDMI_CTRL>, <&cru SCLK_HDMI_HDCP>; | ||
30 | clock-names = "iahb", "isfr"; | ||
31 | status = "disabled"; | ||
32 | ports { | ||
33 | hdmi_in: port { | ||
34 | #address-cells = <1>; | ||
35 | #size-cells = <0>; | ||
36 | hdmi_in_vopb: endpoint@0 { | ||
37 | reg = <0>; | ||
38 | remote-endpoint = <&vopb_out_hdmi>; | ||
39 | }; | ||
40 | hdmi_in_vopl: endpoint@1 { | ||
41 | reg = <1>; | ||
42 | remote-endpoint = <&vopl_out_hdmi>; | ||
43 | }; | ||
44 | }; | ||
45 | }; | ||
46 | }; | ||
diff --git a/Documentation/devicetree/bindings/video/exynos7-decon.txt b/Documentation/devicetree/bindings/video/exynos7-decon.txt new file mode 100644 index 000000000000..f5f9c8d4a55a --- /dev/null +++ b/Documentation/devicetree/bindings/video/exynos7-decon.txt | |||
@@ -0,0 +1,68 @@ | |||
1 | Device-Tree bindings for Samsung Exynos7 SoC display controller (DECON) | ||
2 | |||
3 | DECON (Display and Enhancement Controller) is the Display Controller for the | ||
4 | Exynos7 series of SoCs which transfers the image data from a video memory | ||
5 | buffer to an external LCD interface. | ||
6 | |||
7 | Required properties: | ||
8 | - compatible: value should be "samsung,exynos7-decon"; | ||
9 | |||
10 | - reg: physical base address and length of the DECON registers set. | ||
11 | |||
12 | - interrupt-parent: should be the phandle of the decon controller's | ||
13 | parent interrupt controller. | ||
14 | |||
15 | - interrupts: should contain a list of all DECON IP block interrupts in the | ||
16 | order: FIFO Level, VSYNC, LCD_SYSTEM. The interrupt specifier | ||
17 | format depends on the interrupt controller used. | ||
18 | |||
19 | - interrupt-names: should contain the interrupt names: "fifo", "vsync", | ||
20 | "lcd_sys", in the same order as they were listed in the interrupts | ||
21 | property. | ||
22 | |||
23 | - pinctrl-0: pin control group to be used for this controller. | ||
24 | |||
25 | - pinctrl-names: must contain a "default" entry. | ||
26 | |||
27 | - clocks: must include clock specifiers corresponding to entries in the | ||
28 | clock-names property. | ||
29 | |||
30 | - clock-names: list of clock names sorted in the same order as the clocks | ||
31 | property. Must contain "pclk_decon0", "aclk_decon0", | ||
32 | "decon0_eclk", "decon0_vclk". | ||
33 | - i80-if-timings: timing configuration for lcd i80 interface support. | ||
34 | |||
35 | Optional Properties: | ||
36 | - samsung,power-domain: a phandle to DECON power domain node. | ||
37 | - display-timings: timing settings for DECON, as described in document [1]. | ||
38 | Can be used in case timings cannot be provided otherwise | ||
39 | or to override timings provided by the panel. | ||
40 | |||
41 | [1]: Documentation/devicetree/bindings/video/display-timing.txt | ||
42 | |||
43 | Example: | ||
44 | |||
45 | SoC specific DT entry: | ||
46 | |||
47 | decon@13930000 { | ||
48 | compatible = "samsung,exynos7-decon"; | ||
49 | interrupt-parent = <&combiner>; | ||
50 | reg = <0x13930000 0x1000>; | ||
51 | interrupt-names = "lcd_sys", "vsync", "fifo"; | ||
52 | interrupts = <0 188 0>, <0 189 0>, <0 190 0>; | ||
53 | clocks = <&clock_disp PCLK_DECON_INT>, | ||
54 | <&clock_disp ACLK_DECON_INT>, | ||
55 | <&clock_disp SCLK_DECON_INT_ECLK>, | ||
56 | <&clock_disp SCLK_DECON_INT_EXTCLKPLL>; | ||
57 | clock-names = "pclk_decon0", "aclk_decon0", "decon0_eclk", | ||
58 | "decon0_vclk"; | ||
59 | status = "disabled"; | ||
60 | }; | ||
61 | |||
62 | Board specific DT entry: | ||
63 | |||
64 | decon@13930000 { | ||
65 | pinctrl-0 = <&lcd_clk &pwm1_out>; | ||
66 | pinctrl-names = "default"; | ||
67 | status = "okay"; | ||
68 | }; | ||
diff --git a/Documentation/devicetree/bindings/video/exynos_dp.txt b/Documentation/devicetree/bindings/video/exynos_dp.txt index 53dbccfa80ca..7a3a9cdb86ab 100644 --- a/Documentation/devicetree/bindings/video/exynos_dp.txt +++ b/Documentation/devicetree/bindings/video/exynos_dp.txt | |||
@@ -66,6 +66,10 @@ Optional properties for dp-controller: | |||
66 | Hotplug detect GPIO. | 66 | Hotplug detect GPIO. |
67 | Indicates which GPIO should be used for hotplug | 67 | Indicates which GPIO should be used for hotplug |
68 | detection | 68 | detection |
69 | -video interfaces: Device node can contain video interface port | ||
70 | nodes according to [1]. | ||
71 | |||
72 | [1]: Documentation/devicetree/bindings/media/video-interfaces.txt | ||
69 | 73 | ||
70 | Example: | 74 | Example: |
71 | 75 | ||
@@ -105,4 +109,12 @@ Board Specific portion: | |||
105 | vsync-len = <6>; | 109 | vsync-len = <6>; |
106 | }; | 110 | }; |
107 | }; | 111 | }; |
112 | |||
113 | ports { | ||
114 | port@0 { | ||
115 | dp_out: endpoint { | ||
116 | remote-endpoint = <&bridge_in>; | ||
117 | }; | ||
118 | }; | ||
119 | }; | ||
108 | }; | 120 | }; |
diff --git a/Documentation/devicetree/bindings/video/exynos_dsim.txt b/Documentation/devicetree/bindings/video/exynos_dsim.txt index ca2b4aacd9af..802aa7ef64e5 100644 --- a/Documentation/devicetree/bindings/video/exynos_dsim.txt +++ b/Documentation/devicetree/bindings/video/exynos_dsim.txt | |||
@@ -21,7 +21,7 @@ Required properties: | |||
21 | according to DSI host bindings (see MIPI DSI bindings [1]) | 21 | according to DSI host bindings (see MIPI DSI bindings [1]) |
22 | 22 | ||
23 | Optional properties: | 23 | Optional properties: |
24 | - samsung,power-domain: a phandle to DSIM power domain node | 24 | - power-domains: a phandle to DSIM power domain node |
25 | 25 | ||
26 | Child nodes: | 26 | Child nodes: |
27 | Should contain DSI peripheral nodes (see MIPI DSI bindings [1]). | 27 | Should contain DSI peripheral nodes (see MIPI DSI bindings [1]). |
@@ -53,7 +53,7 @@ Example: | |||
53 | phy-names = "dsim"; | 53 | phy-names = "dsim"; |
54 | vddcore-supply = <&vusb_reg>; | 54 | vddcore-supply = <&vusb_reg>; |
55 | vddio-supply = <&vmipi_reg>; | 55 | vddio-supply = <&vmipi_reg>; |
56 | samsung,power-domain = <&pd_lcd0>; | 56 | power-domains = <&pd_lcd0>; |
57 | #address-cells = <1>; | 57 | #address-cells = <1>; |
58 | #size-cells = <0>; | 58 | #size-cells = <0>; |
59 | samsung,pll-clock-frequency = <24000000>; | 59 | samsung,pll-clock-frequency = <24000000>; |
diff --git a/Documentation/devicetree/bindings/video/exynos_mixer.txt b/Documentation/devicetree/bindings/video/exynos_mixer.txt index 08b394b1edbf..3e38128f866b 100644 --- a/Documentation/devicetree/bindings/video/exynos_mixer.txt +++ b/Documentation/devicetree/bindings/video/exynos_mixer.txt | |||
@@ -15,6 +15,7 @@ Required properties: | |||
15 | a) mixer: Gate of Mixer IP bus clock. | 15 | a) mixer: Gate of Mixer IP bus clock. |
16 | b) sclk_hdmi: HDMI Special clock, one of the two possible inputs of | 16 | b) sclk_hdmi: HDMI Special clock, one of the two possible inputs of |
17 | mixer mux. | 17 | mixer mux. |
18 | c) hdmi: Gate of HDMI IP bus clock, needed together with sclk_hdmi. | ||
18 | 19 | ||
19 | Example: | 20 | Example: |
20 | 21 | ||
diff --git a/Documentation/devicetree/bindings/video/renesas,du.txt b/Documentation/devicetree/bindings/video/renesas,du.txt index 5102830f2760..c902323928f7 100644 --- a/Documentation/devicetree/bindings/video/renesas,du.txt +++ b/Documentation/devicetree/bindings/video/renesas,du.txt | |||
@@ -26,6 +26,10 @@ Required Properties: | |||
26 | per LVDS encoder. The functional clocks must be named "du.x" with "x" | 26 | per LVDS encoder. The functional clocks must be named "du.x" with "x" |
27 | being the channel numerical index. The LVDS clocks must be named | 27 | being the channel numerical index. The LVDS clocks must be named |
28 | "lvds.x" with "x" being the LVDS encoder numerical index. | 28 | "lvds.x" with "x" being the LVDS encoder numerical index. |
29 | - In addition to the functional and encoder clocks, all DU versions also | ||
30 | support externally supplied pixel clocks. Those clocks are optional. | ||
31 | When supplied they must be named "dclkin.x" with "x" being the input | ||
32 | clock numerical index. | ||
29 | 33 | ||
30 | Required nodes: | 34 | Required nodes: |
31 | 35 | ||
diff --git a/Documentation/devicetree/bindings/video/samsung-fimd.txt b/Documentation/devicetree/bindings/video/samsung-fimd.txt index cf1af6371021..a8bbbde03e79 100644 --- a/Documentation/devicetree/bindings/video/samsung-fimd.txt +++ b/Documentation/devicetree/bindings/video/samsung-fimd.txt | |||
@@ -38,7 +38,7 @@ Required properties: | |||
38 | property. Must contain "sclk_fimd" and "fimd". | 38 | property. Must contain "sclk_fimd" and "fimd". |
39 | 39 | ||
40 | Optional Properties: | 40 | Optional Properties: |
41 | - samsung,power-domain: a phandle to FIMD power domain node. | 41 | - power-domains: a phandle to FIMD power domain node. |
42 | - samsung,invert-vden: video enable signal is inverted | 42 | - samsung,invert-vden: video enable signal is inverted |
43 | - samsung,invert-vclk: video clock signal is inverted | 43 | - samsung,invert-vclk: video clock signal is inverted |
44 | - display-timings: timing settings for FIMD, as described in document [1]. | 44 | - display-timings: timing settings for FIMD, as described in document [1]. |
@@ -97,7 +97,7 @@ SoC specific DT entry: | |||
97 | interrupts = <11 0>, <11 1>, <11 2>; | 97 | interrupts = <11 0>, <11 1>, <11 2>; |
98 | clocks = <&clock 140>, <&clock 283>; | 98 | clocks = <&clock 140>, <&clock 283>; |
99 | clock-names = "sclk_fimd", "fimd"; | 99 | clock-names = "sclk_fimd", "fimd"; |
100 | samsung,power-domain = <&pd_lcd0>; | 100 | power-domains = <&pd_lcd0>; |
101 | status = "disabled"; | 101 | status = "disabled"; |
102 | }; | 102 | }; |
103 | 103 | ||
diff --git a/Documentation/devicetree/bindings/video/ti,dra7-dss.txt b/Documentation/devicetree/bindings/video/ti,dra7-dss.txt new file mode 100644 index 000000000000..f33a05137b0e --- /dev/null +++ b/Documentation/devicetree/bindings/video/ti,dra7-dss.txt | |||
@@ -0,0 +1,69 @@ | |||
1 | Texas Instruments DRA7x Display Subsystem | ||
2 | ========================================= | ||
3 | |||
4 | See Documentation/devicetree/bindings/video/ti,omap-dss.txt for generic | ||
5 | description about OMAP Display Subsystem bindings. | ||
6 | |||
7 | DSS Core | ||
8 | -------- | ||
9 | |||
10 | Required properties: | ||
11 | - compatible: "ti,dra7-dss" | ||
12 | - reg: address and length of the register spaces for 'dss' | ||
13 | - ti,hwmods: "dss_core" | ||
14 | - clocks: handle to fclk | ||
15 | - clock-names: "fck" | ||
16 | - syscon: phandle to control module core syscon node | ||
17 | |||
18 | Optional properties: | ||
19 | |||
20 | Some DRA7xx SoCs have one dedicated video PLL, some have two. These properties | ||
21 | can be used to describe the video PLLs: | ||
22 | |||
23 | - reg: address and length of the register spaces for 'pll1_clkctrl', | ||
24 | 'pll1', 'pll2_clkctrl', 'pll2' | ||
25 | - clocks: handle to video1 pll clock and video2 pll clock | ||
26 | - clock-names: "video1_clk" and "video2_clk" | ||
27 | |||
28 | Required nodes: | ||
29 | - DISPC | ||
30 | |||
31 | Optional nodes: | ||
32 | - DSS Submodules: HDMI | ||
33 | - Video port for DPI output | ||
34 | |||
35 | DPI Endpoint required properties: | ||
36 | - data-lines: number of lines used | ||
37 | |||
38 | |||
39 | DISPC | ||
40 | ----- | ||
41 | |||
42 | Required properties: | ||
43 | - compatible: "ti,dra7-dispc" | ||
44 | - reg: address and length of the register space | ||
45 | - ti,hwmods: "dss_dispc" | ||
46 | - interrupts: the DISPC interrupt | ||
47 | - clocks: handle to fclk | ||
48 | - clock-names: "fck" | ||
49 | |||
50 | HDMI | ||
51 | ---- | ||
52 | |||
53 | Required properties: | ||
54 | - compatible: "ti,dra7-hdmi" | ||
55 | - reg: addresses and lengths of the register spaces for 'wp', 'pll', 'phy', | ||
56 | 'core' | ||
57 | - reg-names: "wp", "pll", "phy", "core" | ||
58 | - interrupts: the HDMI interrupt line | ||
59 | - ti,hwmods: "dss_hdmi" | ||
60 | - vdda-supply: vdda power supply | ||
61 | - clocks: handles to fclk and pll clock | ||
62 | - clock-names: "fck", "sys_clk" | ||
63 | |||
64 | Optional nodes: | ||
65 | - Video port for HDMI output | ||
66 | |||
67 | HDMI Endpoint optional properties: | ||
68 | - lanes: list of 8 pin numbers for the HDMI lanes: CLK+, CLK-, D0+, D0-, | ||
69 | D1+, D1-, D2+, D2-. (default: 0,1,2,3,4,5,6,7) | ||
diff --git a/Documentation/devicetree/bindings/video/ti,opa362.txt b/Documentation/devicetree/bindings/video/ti,opa362.txt new file mode 100644 index 000000000000..f96083c0bd17 --- /dev/null +++ b/Documentation/devicetree/bindings/video/ti,opa362.txt | |||
@@ -0,0 +1,38 @@ | |||
1 | OPA362 analog video amplifier | ||
2 | |||
3 | Required properties: | ||
4 | - compatible: "ti,opa362" | ||
5 | - enable-gpios: enable/disable output gpio | ||
6 | |||
7 | Required node: | ||
8 | - Video port 0 for opa362 input | ||
9 | - Video port 1 for opa362 output | ||
10 | |||
11 | Example: | ||
12 | |||
13 | tv_amp: opa362 { | ||
14 | compatible = "ti,opa362"; | ||
15 | enable-gpios = <&gpio1 23 0>; /* GPIO to enable video out amplifier */ | ||
16 | |||
17 | ports { | ||
18 | #address-cells = <1>; | ||
19 | #size-cells = <0>; | ||
20 | |||
21 | port@0 { | ||
22 | reg = <0>; | ||
23 | opa_in: endpoint@0 { | ||
24 | remote-endpoint = <&venc_out>; | ||
25 | }; | ||
26 | }; | ||
27 | |||
28 | port@1 { | ||
29 | reg = <1>; | ||
30 | opa_out: endpoint@0 { | ||
31 | remote-endpoint = <&tv_connector_in>; | ||
32 | }; | ||
33 | }; | ||
34 | }; | ||
35 | }; | ||
36 | |||
37 | |||
38 | |||
diff --git a/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt b/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt index 37afec194949..198794963786 100644 --- a/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt +++ b/Documentation/devicetree/bindings/watchdog/gpio-wdt.txt | |||
@@ -13,6 +13,11 @@ Required Properties: | |||
13 | by the GPIO flags. | 13 | by the GPIO flags. |
14 | - hw_margin_ms: Maximum time to reset watchdog circuit (milliseconds). | 14 | - hw_margin_ms: Maximum time to reset watchdog circuit (milliseconds). |
15 | 15 | ||
16 | Optional Properties: | ||
17 | - always-running: If the watchdog timer cannot be disabled, add this flag to | ||
18 | have the driver keep toggling the signal without a client. It will only cease | ||
19 | to toggle the signal when the device is open and the timeout elapsed. | ||
20 | |||
16 | Example: | 21 | Example: |
17 | watchdog: watchdog { | 22 | watchdog: watchdog { |
18 | /* ADM706 */ | 23 | /* ADM706 */ |
diff --git a/Documentation/devicetree/bindings/watchdog/imgpdc-wdt.txt b/Documentation/devicetree/bindings/watchdog/imgpdc-wdt.txt new file mode 100644 index 000000000000..b2fa11fd43de --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/imgpdc-wdt.txt | |||
@@ -0,0 +1,19 @@ | |||
1 | *ImgTec PowerDown Controller (PDC) Watchdog Timer (WDT) | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : Should be "img,pdc-wdt" | ||
5 | - reg : Should contain WDT registers location and length | ||
6 | - clocks: Must contain an entry for each entry in clock-names. | ||
7 | - clock-names: Should contain "wdt" and "sys"; the watchdog counter | ||
8 | clock and register interface clock respectively. | ||
9 | - interrupts : Should contain WDT interrupt | ||
10 | |||
11 | Examples: | ||
12 | |||
13 | watchdog@18102100 { | ||
14 | compatible = "img,pdc-wdt"; | ||
15 | reg = <0x18102100 0x100>; | ||
16 | clocks = <&pdc_wdt_clk>, <&sys_clk>; | ||
17 | clock-names = "wdt", "sys"; | ||
18 | interrupts = <0 52 IRQ_TYPE_LEVEL_HIGH>; | ||
19 | }; | ||
diff --git a/Documentation/devicetree/bindings/watchdog/ingenic,jz4740-wdt.txt b/Documentation/devicetree/bindings/watchdog/ingenic,jz4740-wdt.txt new file mode 100644 index 000000000000..e27763ef0049 --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/ingenic,jz4740-wdt.txt | |||
@@ -0,0 +1,12 @@ | |||
1 | Ingenic Watchdog Timer (WDT) Controller for JZ4740 | ||
2 | |||
3 | Required properties: | ||
4 | compatible: "ingenic,jz4740-watchdog" | ||
5 | reg: Register address and length for watchdog registers | ||
6 | |||
7 | Example: | ||
8 | |||
9 | watchdog: jz4740-watchdog@0x10002000 { | ||
10 | compatible = "ingenic,jz4740-watchdog"; | ||
11 | reg = <0x10002000 0x100>; | ||
12 | }; | ||
diff --git a/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt b/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt new file mode 100644 index 000000000000..af9eb5b8a253 --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/mtk-wdt.txt | |||
@@ -0,0 +1,13 @@ | |||
1 | Mediatek SoCs Watchdog timer | ||
2 | |||
3 | Required properties: | ||
4 | |||
5 | - compatible : should be "mediatek,mt6589-wdt" | ||
6 | - reg : Specifies base physical address and size of the registers. | ||
7 | |||
8 | Example: | ||
9 | |||
10 | wdt: watchdog@010000000 { | ||
11 | compatible = "mediatek,mt6589-wdt"; | ||
12 | reg = <0x10000000 0x18>; | ||
13 | }; | ||
diff --git a/Documentation/devicetree/overlay-notes.txt b/Documentation/devicetree/overlay-notes.txt index 30ae758e3eef..d418a6ce9812 100644 --- a/Documentation/devicetree/overlay-notes.txt +++ b/Documentation/devicetree/overlay-notes.txt | |||
@@ -10,7 +10,7 @@ How overlays work | |||
10 | ----------------- | 10 | ----------------- |
11 | 11 | ||
12 | A Device Tree's overlay purpose is to modify the kernel's live tree, and | 12 | A Device Tree's overlay purpose is to modify the kernel's live tree, and |
13 | have the modification affecting the state of the the kernel in a way that | 13 | have the modification affecting the state of the kernel in a way that |
14 | is reflecting the changes. | 14 | is reflecting the changes. |
15 | Since the kernel mainly deals with devices, any new device node that result | 15 | Since the kernel mainly deals with devices, any new device node that result |
16 | in an active device should have it created while if the device node is either | 16 | in an active device should have it created while if the device node is either |
@@ -80,7 +80,7 @@ result in foo+bar.dts | |||
80 | }; | 80 | }; |
81 | ---- foo+bar.dts ------------------------------------------------------------- | 81 | ---- foo+bar.dts ------------------------------------------------------------- |
82 | 82 | ||
83 | As a result of the the overlay, a new device node (bar) has been created | 83 | As a result of the overlay, a new device node (bar) has been created |
84 | so a bar platform device will be registered and if a matching device driver | 84 | so a bar platform device will be registered and if a matching device driver |
85 | is loaded the device will be created as expected. | 85 | is loaded the device will be created as expected. |
86 | 86 | ||