aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2014-06-02 19:15:12 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2014-06-02 19:15:12 -0400
commit825f4e0271b0de3f7f31d963dcdaa0056fe9b73a (patch)
treeaef1f198da011a96fefbe9851137ca17afd929a4 /Documentation
parent0a58471541cc823ef8056d23945c39fec154481c (diff)
parentb5b9324a6296bd0176fe1f8e06a1220207bd1bd3 (diff)
Merge tag 'soc-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc into next
Pull part one of ARM SoC updates from Olof Johansson: "A quite large set of SoC updates this cycle. In no particular order: - Multi-cluster power management for Samsung Exynos, adding support for big.LITTLE CPU switching on EXYNOS5 - SMP support for Marvell Armada 375 and 38x - SMP rework on Allwinner A31 - Xilinx Zynq support for SOC_BUS, big endian - Marvell orion5x platform cleanup, modernizing the implementation and moving to DT. - _Finally_ moving Samsung Exynos over to support MULTIPLATFORM, so that their platform can be enabled in the same kernel binary as most of the other v7 platforms in the tree. \o/ The work isn't quite complete, there's some driver fixes still needed, but the basics now work. New SoC support added: - Freescale i.MX6SX - LSI Axxia AXM55xx SoCs - Samsung EXYNOS 3250, 5260, 5410, 5420 and 5800 - STi STIH407 plus a large set of various smaller updates for different platforms. I'm probably missing some important one here" * tag 'soc-for-3.16' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (281 commits) ARM: exynos: don't run exynos4 l2x0 setup on other platforms ARM: exynos: Fix "allmodconfig" build errors in mcpm and hotplug ARM: EXYNOS: mcpm rename the power_down_finish ARM: EXYNOS: Enable mcpm for dual-cluster exynos5800 SoC ARM: EXYNOS: Enable multi-platform build support ARM: EXYNOS: Consolidate Kconfig entries ARM: EXYNOS: Add support for EXYNOS5410 SoC ARM: EXYNOS: Support secondary CPU boot of Exynos3250 ARM: EXYNOS: Add Exynos3250 SoC ID ARM: EXYNOS: Add 5800 SoC support ARM: EXYNOS: initial board support for exynos5260 SoC clk: exynos5410: register clocks using common clock framework ARM: debug: qcom: add UART addresses to Kconfig help for APQ8084 ARM: sunxi: allow building without reset controller Documentation: devicetree: arm: sort enable-method entries ARM: rockchip: convert smp bringup to CPU_METHOD_OF_DECLARE clk: exynos5250: Add missing sysmmu clocks for DISP and ISP blocks ARM: dts: axxia: Add reset controller power: reset: Add Axxia system reset driver ARM: axxia: Adding defconfig for AXM55xx ...
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/arm/Marvell/README5
-rw-r--r--Documentation/arm/sti/stih407-overview.txt18
-rw-r--r--Documentation/devicetree/bindings/arm/armada-370-xp-pmsu.txt19
-rw-r--r--Documentation/devicetree/bindings/arm/armada-cpu-reset.txt14
-rw-r--r--Documentation/devicetree/bindings/arm/axxia.txt12
-rw-r--r--Documentation/devicetree/bindings/arm/coherency-fabric.txt32
-rw-r--r--Documentation/devicetree/bindings/arm/cpus.txt8
-rw-r--r--Documentation/devicetree/bindings/arm/exynos/smp-sysram.txt38
-rw-r--r--Documentation/devicetree/bindings/arm/sti.txt15
-rw-r--r--Documentation/devicetree/bindings/clock/at91-clock.txt128
-rw-r--r--Documentation/devicetree/bindings/clock/exynos3250-clock.txt41
-rw-r--r--Documentation/devicetree/bindings/clock/exynos5260-clock.txt190
-rw-r--r--Documentation/devicetree/bindings/clock/exynos5410-clock.txt45
-rw-r--r--Documentation/devicetree/bindings/clock/exynos5420-clock.txt3
-rw-r--r--Documentation/devicetree/bindings/clock/imx25-clock.txt3
-rw-r--r--Documentation/devicetree/bindings/clock/imx27-clock.txt7
-rw-r--r--Documentation/devicetree/bindings/clock/imx6q-clock.txt1
-rw-r--r--Documentation/devicetree/bindings/clock/imx6sx-clock.txt13
-rw-r--r--Documentation/devicetree/bindings/clock/samsung,s3c2410-clock.txt2
-rw-r--r--Documentation/devicetree/bindings/power_supply/axxia-reset.txt20
20 files changed, 587 insertions, 27 deletions
diff --git a/Documentation/arm/Marvell/README b/Documentation/arm/Marvell/README
index 963ec445e15a..2cce5401e323 100644
--- a/Documentation/arm/Marvell/README
+++ b/Documentation/arm/Marvell/README
@@ -234,6 +234,11 @@ Berlin family (Digital Entertainment)
234 Core: Marvell PJ4B (ARMv7), Tauros3 L2CC 234 Core: Marvell PJ4B (ARMv7), Tauros3 L2CC
235 Homepage: http://www.marvell.com/digital-entertainment/armada-1500/ 235 Homepage: http://www.marvell.com/digital-entertainment/armada-1500/
236 Product Brief: http://www.marvell.com/digital-entertainment/armada-1500/assets/Marvell-ARMADA-1500-Product-Brief.pdf 236 Product Brief: http://www.marvell.com/digital-entertainment/armada-1500/assets/Marvell-ARMADA-1500-Product-Brief.pdf
237 88DE3114, Armada 1500 Pro
238 Design name: BG2-Q
239 Core: Quad Core ARM Cortex-A9, PL310 L2CC
240 Homepage: http://www.marvell.com/digital-entertainment/armada-1500-pro/
241 Product Brief: http://www.marvell.com/digital-entertainment/armada-1500-pro/assets/Marvell_ARMADA_1500_PRO-01_product_brief.pdf
237 88DE???? 242 88DE????
238 Design name: BG3 243 Design name: BG3
239 Core: ARM Cortex-A15, CA15 integrated L2CC 244 Core: ARM Cortex-A15, CA15 integrated L2CC
diff --git a/Documentation/arm/sti/stih407-overview.txt b/Documentation/arm/sti/stih407-overview.txt
new file mode 100644
index 000000000000..3343f32f58bc
--- /dev/null
+++ b/Documentation/arm/sti/stih407-overview.txt
@@ -0,0 +1,18 @@
1 STiH407 Overview
2 ================
3
4Introduction
5------------
6
7 The STiH407 is the new generation of SoC for Multi-HD, AVC set-top boxes
8 and server/connected client application for satellite, cable, terrestrial
9 and IP-STB markets.
10
11 Features
12 - ARM Cortex-A9 1.5 GHz dual core CPU (28nm)
13 - SATA2, USB 3.0, PCIe, Gbit Ethernet
14
15 Document Author
16 ---------------
17
18 Maxime Coquelin <maxime.coquelin@st.com>, (c) 2014 ST Microelectronics
diff --git a/Documentation/devicetree/bindings/arm/armada-370-xp-pmsu.txt b/Documentation/devicetree/bindings/arm/armada-370-xp-pmsu.txt
index 926b4d6aae7e..26799ef562df 100644
--- a/Documentation/devicetree/bindings/arm/armada-370-xp-pmsu.txt
+++ b/Documentation/devicetree/bindings/arm/armada-370-xp-pmsu.txt
@@ -1,20 +1,21 @@
1Power Management Service Unit(PMSU) 1Power Management Service Unit(PMSU)
2----------------------------------- 2-----------------------------------
3Available on Marvell SOCs: Armada 370 and Armada XP 3Available on Marvell SOCs: Armada 370, Armada 38x and Armada XP
4 4
5Required properties: 5Required properties:
6 6
7- compatible: "marvell,armada-370-xp-pmsu" 7- compatible: should be one of:
8 - "marvell,armada-370-pmsu" for Armada 370 or Armada XP
9 - "marvell,armada-380-pmsu" for Armada 38x
10 - "marvell,armada-370-xp-pmsu" was used for Armada 370/XP but is now
11 deprecated and will be removed
8 12
9- reg: Should contain PMSU registers location and length. First pair 13- reg: Should contain PMSU registers location and length.
10 for the per-CPU SW Reset Control registers, second pair for the
11 Power Management Service Unit.
12 14
13Example: 15Example:
14 16
15armada-370-xp-pmsu@d0022000 { 17armada-370-xp-pmsu@22000 {
16 compatible = "marvell,armada-370-xp-pmsu"; 18 compatible = "marvell,armada-370-pmsu";
17 reg = <0xd0022100 0x430>, 19 reg = <0x22000 0x1000>;
18 <0xd0020800 0x20>;
19}; 20};
20 21
diff --git a/Documentation/devicetree/bindings/arm/armada-cpu-reset.txt b/Documentation/devicetree/bindings/arm/armada-cpu-reset.txt
new file mode 100644
index 000000000000..b63a7b6ab998
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/armada-cpu-reset.txt
@@ -0,0 +1,14 @@
1Marvell Armada CPU reset controller
2===================================
3
4Required properties:
5
6- compatible: Should be "marvell,armada-370-cpu-reset".
7
8- reg: should be register base and length as documented in the
9 datasheet for the CPU reset registers
10
11cpurst: cpurst@20800 {
12 compatible = "marvell,armada-370-cpu-reset";
13 reg = <0x20800 0x20>;
14};
diff --git a/Documentation/devicetree/bindings/arm/axxia.txt b/Documentation/devicetree/bindings/arm/axxia.txt
new file mode 100644
index 000000000000..7b4ef9c07696
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/axxia.txt
@@ -0,0 +1,12 @@
1Axxia AXM55xx device tree bindings
2
3Boards using the AXM55xx SoC need to have the following properties:
4
5Required root node property:
6
7 - compatible = "lsi,axm5516"
8
9Boards:
10
11 LSI AXM5516 Validation board (Amarillo)
12 compatible = "lsi,axm5516-amarillo", "lsi,axm5516"
diff --git a/Documentation/devicetree/bindings/arm/coherency-fabric.txt b/Documentation/devicetree/bindings/arm/coherency-fabric.txt
index 17d8cd107559..8dd46617c889 100644
--- a/Documentation/devicetree/bindings/arm/coherency-fabric.txt
+++ b/Documentation/devicetree/bindings/arm/coherency-fabric.txt
@@ -1,16 +1,33 @@
1Coherency fabric 1Coherency fabric
2---------------- 2----------------
3Available on Marvell SOCs: Armada 370 and Armada XP 3Available on Marvell SOCs: Armada 370, Armada 375, Armada 38x and Armada XP
4 4
5Required properties: 5Required properties:
6 6
7- compatible: "marvell,coherency-fabric" 7- compatible: the possible values are:
8
9 * "marvell,coherency-fabric", to be used for the coherency fabric of
10 the Armada 370 and Armada XP.
11
12 * "marvell,armada-375-coherency-fabric", for the Armada 375 coherency
13 fabric.
14
15 * "marvell,armada-380-coherency-fabric", for the Armada 38x coherency
16 fabric.
8 17
9- reg: Should contain coherency fabric registers location and 18- reg: Should contain coherency fabric registers location and
10 length. First pair for the coherency fabric registers, second pair 19 length.
11 for the per-CPU fabric registers registers. 20
21 * For "marvell,coherency-fabric", the first pair for the coherency
22 fabric registers, second pair for the per-CPU fabric registers.
12 23
13Example: 24 * For "marvell,armada-375-coherency-fabric", only one pair is needed
25 for the per-CPU fabric registers.
26
27 * For "marvell,armada-380-coherency-fabric", only one pair is needed
28 for the per-CPU fabric registers.
29
30Examples:
14 31
15coherency-fabric@d0020200 { 32coherency-fabric@d0020200 {
16 compatible = "marvell,coherency-fabric"; 33 compatible = "marvell,coherency-fabric";
@@ -19,3 +36,8 @@ coherency-fabric@d0020200 {
19 36
20}; 37};
21 38
39coherency-fabric@21810 {
40 compatible = "marvell,armada-375-coherency-fabric";
41 reg = <0x21810 0x1c>;
42};
43
diff --git a/Documentation/devicetree/bindings/arm/cpus.txt b/Documentation/devicetree/bindings/arm/cpus.txt
index 333f4aea3029..1fe72a0778cd 100644
--- a/Documentation/devicetree/bindings/arm/cpus.txt
+++ b/Documentation/devicetree/bindings/arm/cpus.txt
@@ -178,13 +178,19 @@ nodes to be present and contain the properties described below.
178 Usage and definition depend on ARM architecture version. 178 Usage and definition depend on ARM architecture version.
179 # On ARM v8 64-bit this property is required and must 179 # On ARM v8 64-bit this property is required and must
180 be one of: 180 be one of:
181 "spin-table"
182 "psci" 181 "psci"
182 "spin-table"
183 # On ARM 32-bit systems this property is optional and 183 # On ARM 32-bit systems this property is optional and
184 can be one of: 184 can be one of:
185 "allwinner,sun6i-a31"
186 "arm,psci"
187 "marvell,armada-375-smp"
188 "marvell,armada-380-smp"
189 "marvell,armada-xp-smp"
185 "qcom,gcc-msm8660" 190 "qcom,gcc-msm8660"
186 "qcom,kpss-acc-v1" 191 "qcom,kpss-acc-v1"
187 "qcom,kpss-acc-v2" 192 "qcom,kpss-acc-v2"
193 "rockchip,rk3066-smp"
188 194
189 - cpu-release-addr 195 - cpu-release-addr
190 Usage: required for systems that have an "enable-method" 196 Usage: required for systems that have an "enable-method"
diff --git a/Documentation/devicetree/bindings/arm/exynos/smp-sysram.txt b/Documentation/devicetree/bindings/arm/exynos/smp-sysram.txt
new file mode 100644
index 000000000000..4a0a4f70a0ce
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/exynos/smp-sysram.txt
@@ -0,0 +1,38 @@
1Samsung Exynos SYSRAM for SMP bringup:
2------------------------------------
3
4Samsung SMP-capable Exynos SoCs use part of the SYSRAM for the bringup
5of the secondary cores. Once the core gets powered up it executes the
6code that is residing at some specific location of the SYSRAM.
7
8Therefore reserved section sub-nodes have to be added to the mmio-sram
9declaration. These nodes are of two types depending upon secure or
10non-secure execution environment.
11
12Required sub-node properties:
13- compatible : depending upon boot mode, should be
14 "samsung,exynos4210-sysram" : for Secure SYSRAM
15 "samsung,exynos4210-sysram-ns" : for Non-secure SYSRAM
16
17The rest of the properties should follow the generic mmio-sram discription
18found in ../../misc/sysram.txt
19
20Example:
21
22 sysram@02020000 {
23 compatible = "mmio-sram";
24 reg = <0x02020000 0x54000>;
25 #address-cells = <1>;
26 #size-cells = <1>;
27 ranges = <0 0x02020000 0x54000>;
28
29 smp-sysram@0 {
30 compatible = "samsung,exynos4210-sysram";
31 reg = <0x0 0x1000>;
32 };
33
34 smp-sysram@53000 {
35 compatible = "samsung,exynos4210-sysram-ns";
36 reg = <0x53000 0x1000>;
37 };
38 };
diff --git a/Documentation/devicetree/bindings/arm/sti.txt b/Documentation/devicetree/bindings/arm/sti.txt
new file mode 100644
index 000000000000..92f16c78bb69
--- /dev/null
+++ b/Documentation/devicetree/bindings/arm/sti.txt
@@ -0,0 +1,15 @@
1ST STi Platforms Device Tree Bindings
2---------------------------------------
3
4Boards with the ST STiH415 SoC shall have the following properties:
5Required root node property:
6compatible = "st,stih415";
7
8Boards with the ST STiH416 SoC shall have the following properties:
9Required root node property:
10compatible = "st,stih416";
11
12Boards with the ST STiH407 SoC shall have the following properties:
13Required root node property:
14compatible = "st,stih407";
15
diff --git a/Documentation/devicetree/bindings/clock/at91-clock.txt b/Documentation/devicetree/bindings/clock/at91-clock.txt
index 6794cdc96d8f..b3d544ca522a 100644
--- a/Documentation/devicetree/bindings/clock/at91-clock.txt
+++ b/Documentation/devicetree/bindings/clock/at91-clock.txt
@@ -6,6 +6,16 @@ This binding uses the common clock binding[1].
6 6
7Required properties: 7Required properties:
8- compatible : shall be one of the following: 8- compatible : shall be one of the following:
9 "atmel,at91sam9x5-sckc":
10 at91 SCKC (Slow Clock Controller)
11 This node contains the slow clock definitions.
12
13 "atmel,at91sam9x5-clk-slow-osc":
14 at91 slow oscillator
15
16 "atmel,at91sam9x5-clk-slow-rc-osc":
17 at91 internal slow RC oscillator
18
9 "atmel,at91rm9200-pmc" or 19 "atmel,at91rm9200-pmc" or
10 "atmel,at91sam9g45-pmc" or 20 "atmel,at91sam9g45-pmc" or
11 "atmel,at91sam9n12-pmc" or 21 "atmel,at91sam9n12-pmc" or
@@ -15,8 +25,18 @@ Required properties:
15 All at91 specific clocks (clocks defined below) must be child 25 All at91 specific clocks (clocks defined below) must be child
16 node of the PMC node. 26 node of the PMC node.
17 27
28 "atmel,at91sam9x5-clk-slow" (under sckc node)
29 or
30 "atmel,at91sam9260-clk-slow" (under pmc node):
31 at91 slow clk
32
33 "atmel,at91rm9200-clk-main-osc"
34 "atmel,at91sam9x5-clk-main-rc-osc"
35 at91 main clk sources
36
37 "atmel,at91sam9x5-clk-main"
18 "atmel,at91rm9200-clk-main": 38 "atmel,at91rm9200-clk-main":
19 at91 main oscillator 39 at91 main clock
20 40
21 "atmel,at91rm9200-clk-master" or 41 "atmel,at91rm9200-clk-master" or
22 "atmel,at91sam9x5-clk-master": 42 "atmel,at91sam9x5-clk-master":
@@ -54,6 +74,63 @@ Required properties:
54 "atmel,at91sam9x5-clk-utmi": 74 "atmel,at91sam9x5-clk-utmi":
55 at91 utmi clock 75 at91 utmi clock
56 76
77Required properties for SCKC node:
78- reg : defines the IO memory reserved for the SCKC.
79- #size-cells : shall be 0 (reg is used to encode clk id).
80- #address-cells : shall be 1 (reg is used to encode clk id).
81
82
83For example:
84 sckc: sckc@fffffe50 {
85 compatible = "atmel,sama5d3-pmc";
86 reg = <0xfffffe50 0x4>
87 #size-cells = <0>;
88 #address-cells = <1>;
89
90 /* put at91 slow clocks here */
91 };
92
93
94Required properties for internal slow RC oscillator:
95- #clock-cells : from common clock binding; shall be set to 0.
96- clock-frequency : define the internal RC oscillator frequency.
97
98Optional properties:
99- clock-accuracy : define the internal RC oscillator accuracy.
100
101For example:
102 slow_rc_osc: slow_rc_osc {
103 compatible = "atmel,at91sam9x5-clk-slow-rc-osc";
104 clock-frequency = <32768>;
105 clock-accuracy = <50000000>;
106 };
107
108Required properties for slow oscillator:
109- #clock-cells : from common clock binding; shall be set to 0.
110- clocks : shall encode the main osc source clk sources (see atmel datasheet).
111
112Optional properties:
113- atmel,osc-bypass : boolean property. Set this when a clock signal is directly
114 provided on XIN.
115
116For example:
117 slow_osc: slow_osc {
118 compatible = "atmel,at91rm9200-clk-slow-osc";
119 #clock-cells = <0>;
120 clocks = <&slow_xtal>;
121 };
122
123Required properties for slow clock:
124- #clock-cells : from common clock binding; shall be set to 0.
125- clocks : shall encode the slow clk sources (see atmel datasheet).
126
127For example:
128 clk32k: slck {
129 compatible = "atmel,at91sam9x5-clk-slow";
130 #clock-cells = <0>;
131 clocks = <&slow_rc_osc &slow_osc>;
132 };
133
57Required properties for PMC node: 134Required properties for PMC node:
58- reg : defines the IO memory reserved for the PMC. 135- reg : defines the IO memory reserved for the PMC.
59- #size-cells : shall be 0 (reg is used to encode clk id). 136- #size-cells : shall be 0 (reg is used to encode clk id).
@@ -85,24 +162,57 @@ For example:
85 /* put at91 clocks here */ 162 /* put at91 clocks here */
86 }; 163 };
87 164
165Required properties for main clock internal RC oscillator:
166- interrupt-parent : must reference the PMC node.
167- interrupts : shall be set to "<0>".
168- clock-frequency : define the internal RC oscillator frequency.
169
170Optional properties:
171- clock-accuracy : define the internal RC oscillator accuracy.
172
173For example:
174 main_rc_osc: main_rc_osc {
175 compatible = "atmel,at91sam9x5-clk-main-rc-osc";
176 interrupt-parent = <&pmc>;
177 interrupts = <0>;
178 clock-frequency = <12000000>;
179 clock-accuracy = <50000000>;
180 };
181
182Required properties for main clock oscillator:
183- interrupt-parent : must reference the PMC node.
184- interrupts : shall be set to "<0>".
185- #clock-cells : from common clock binding; shall be set to 0.
186- clocks : shall encode the main osc source clk sources (see atmel datasheet).
187
188Optional properties:
189- atmel,osc-bypass : boolean property. Specified if a clock signal is provided
190 on XIN.
191
192 clock signal is directly provided on XIN pin.
193
194For example:
195 main_osc: main_osc {
196 compatible = "atmel,at91rm9200-clk-main-osc";
197 interrupt-parent = <&pmc>;
198 interrupts = <0>;
199 #clock-cells = <0>;
200 clocks = <&main_xtal>;
201 };
202
88Required properties for main clock: 203Required properties for main clock:
89- interrupt-parent : must reference the PMC node. 204- interrupt-parent : must reference the PMC node.
90- interrupts : shall be set to "<0>". 205- interrupts : shall be set to "<0>".
91- #clock-cells : from common clock binding; shall be set to 0. 206- #clock-cells : from common clock binding; shall be set to 0.
92- clocks (optional if clock-frequency is provided) : shall be the slow clock 207- clocks : shall encode the main clk sources (see atmel datasheet).
93 phandle. This clock is used to calculate the main clock rate if
94 "clock-frequency" is not provided.
95- clock-frequency : the main oscillator frequency.Prefer the use of
96 "clock-frequency" over automatic clock rate calculation.
97 208
98For example: 209For example:
99 main: mainck { 210 main: mainck {
100 compatible = "atmel,at91rm9200-clk-main"; 211 compatible = "atmel,at91sam9x5-clk-main";
101 interrupt-parent = <&pmc>; 212 interrupt-parent = <&pmc>;
102 interrupts = <0>; 213 interrupts = <0>;
103 #clock-cells = <0>; 214 #clock-cells = <0>;
104 clocks = <&ck32k>; 215 clocks = <&main_rc_osc &main_osc>;
105 clock-frequency = <18432000>;
106 }; 216 };
107 217
108Required properties for master clock: 218Required properties for master clock:
diff --git a/Documentation/devicetree/bindings/clock/exynos3250-clock.txt b/Documentation/devicetree/bindings/clock/exynos3250-clock.txt
new file mode 100644
index 000000000000..aadc9c59e2d1
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/exynos3250-clock.txt
@@ -0,0 +1,41 @@
1* Samsung Exynos3250 Clock Controller
2
3The Exynos3250 clock controller generates and supplies clock to various
4controllers within the Exynos3250 SoC.
5
6Required Properties:
7
8- compatible: should be one of the following.
9 - "samsung,exynos3250-cmu" - controller compatible with Exynos3250 SoC.
10
11- reg: physical base address of the controller and length of memory mapped
12 region.
13
14- #clock-cells: should be 1.
15
16Each clock is assigned an identifier and client nodes can use this identifier
17to specify the clock which they consume.
18
19All available clocks are defined as preprocessor macros in
20dt-bindings/clock/exynos3250.h header and can be used in device
21tree sources.
22
23Example 1: An example of a clock controller node is listed below.
24
25 cmu: clock-controller@10030000 {
26 compatible = "samsung,exynos3250-cmu";
27 reg = <0x10030000 0x20000>;
28 #clock-cells = <1>;
29 };
30
31Example 2: UART controller node that consumes the clock generated by the clock
32 controller. Refer to the standard clock bindings for information
33 about 'clocks' and 'clock-names' property.
34
35 serial@13800000 {
36 compatible = "samsung,exynos4210-uart";
37 reg = <0x13800000 0x100>;
38 interrupts = <0 109 0>;
39 clocks = <&cmu CLK_UART0>, <&cmu CLK_SCLK_UART0>;
40 clock-names = "uart", "clk_uart_baud0";
41 };
diff --git a/Documentation/devicetree/bindings/clock/exynos5260-clock.txt b/Documentation/devicetree/bindings/clock/exynos5260-clock.txt
new file mode 100644
index 000000000000..5496b2fac483
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/exynos5260-clock.txt
@@ -0,0 +1,190 @@
1* Samsung Exynos5260 Clock Controller
2
3Exynos5260 has 13 clock controllers which are instantiated
4independently from the device-tree. These clock controllers
5generate and supply clocks to various hardware blocks within
6the SoC.
7
8Each clock is assigned an identifier and client nodes can use
9this identifier to specify the clock which they consume. All
10available clocks are defined as preprocessor macros in
11dt-bindings/clock/exynos5260-clk.h header and can be used in
12device tree sources.
13
14External clocks:
15
16There are several clocks that are generated outside the SoC. It
17is expected that they are defined using standard clock bindings
18with following clock-output-names:
19
20 - "fin_pll" - PLL input clock from XXTI
21 - "xrtcxti" - input clock from XRTCXTI
22 - "ioclk_pcm_extclk" - pcm external operation clock
23 - "ioclk_spdif_extclk" - spdif external operation clock
24 - "ioclk_i2s_cdclk" - i2s0 codec clock
25
26Phy clocks:
27
28There are several clocks which are generated by specific PHYs.
29These clocks are fed into the clock controller and then routed to
30the hardware blocks. These clocks are defined as fixed clocks in the
31driver with following names:
32
33 - "phyclk_dptx_phy_ch3_txd_clk" - dp phy clock for channel 3
34 - "phyclk_dptx_phy_ch2_txd_clk" - dp phy clock for channel 2
35 - "phyclk_dptx_phy_ch1_txd_clk" - dp phy clock for channel 1
36 - "phyclk_dptx_phy_ch0_txd_clk" - dp phy clock for channel 0
37 - "phyclk_hdmi_phy_tmds_clko" - hdmi phy tmds clock
38 - "phyclk_hdmi_phy_pixel_clko" - hdmi phy pixel clock
39 - "phyclk_hdmi_link_o_tmds_clkhi" - hdmi phy for hdmi link
40 - "phyclk_dptx_phy_o_ref_clk_24m" - dp phy reference clock
41 - "phyclk_dptx_phy_clk_div2"
42 - "phyclk_mipi_dphy_4l_m_rxclkesc0"
43 - "phyclk_usbhost20_phy_phyclock" - usb 2.0 phy clock
44 - "phyclk_usbhost20_phy_freeclk"
45 - "phyclk_usbhost20_phy_clk48mohci"
46 - "phyclk_usbdrd30_udrd30_pipe_pclk"
47 - "phyclk_usbdrd30_udrd30_phyclock" - usb 3.0 phy clock
48
49Required Properties for Clock Controller:
50
51 - compatible: should be one of the following.
52 1) "samsung,exynos5260-clock-top"
53 2) "samsung,exynos5260-clock-peri"
54 3) "samsung,exynos5260-clock-egl"
55 4) "samsung,exynos5260-clock-kfc"
56 5) "samsung,exynos5260-clock-g2d"
57 6) "samsung,exynos5260-clock-mif"
58 7) "samsung,exynos5260-clock-mfc"
59 8) "samsung,exynos5260-clock-g3d"
60 9) "samsung,exynos5260-clock-fsys"
61 10) "samsung,exynos5260-clock-aud"
62 11) "samsung,exynos5260-clock-isp"
63 12) "samsung,exynos5260-clock-gscl"
64 13) "samsung,exynos5260-clock-disp"
65
66 - reg: physical base address of the controller and the length of
67 memory mapped region.
68
69 - #clock-cells: should be 1.
70
71 - clocks: list of clock identifiers which are fed as the input to
72 the given clock controller. Please refer the next section to find
73 the input clocks for a given controller.
74
75 - clock-names: list of names of clocks which are fed as the input
76 to the given clock controller.
77
78Input clocks for top clock controller:
79 - fin_pll
80 - dout_mem_pll
81 - dout_bus_pll
82 - dout_media_pll
83
84Input clocks for peri clock controller:
85 - fin_pll
86 - ioclk_pcm_extclk
87 - ioclk_i2s_cdclk
88 - ioclk_spdif_extclk
89 - phyclk_hdmi_phy_ref_cko
90 - dout_aclk_peri_66
91 - dout_sclk_peri_uart0
92 - dout_sclk_peri_uart1
93 - dout_sclk_peri_uart2
94 - dout_sclk_peri_spi0_b
95 - dout_sclk_peri_spi1_b
96 - dout_sclk_peri_spi2_b
97 - dout_aclk_peri_aud
98 - dout_sclk_peri_spi0_b
99
100Input clocks for egl clock controller:
101 - fin_pll
102 - dout_bus_pll
103
104Input clocks for kfc clock controller:
105 - fin_pll
106 - dout_media_pll
107
108Input clocks for g2d clock controller:
109 - fin_pll
110 - dout_aclk_g2d_333
111
112Input clocks for mif clock controller:
113 - fin_pll
114
115Input clocks for mfc clock controller:
116 - fin_pll
117 - dout_aclk_mfc_333
118
119Input clocks for g3d clock controller:
120 - fin_pll
121
122Input clocks for fsys clock controller:
123 - fin_pll
124 - phyclk_usbhost20_phy_phyclock
125 - phyclk_usbhost20_phy_freeclk
126 - phyclk_usbhost20_phy_clk48mohci
127 - phyclk_usbdrd30_udrd30_pipe_pclk
128 - phyclk_usbdrd30_udrd30_phyclock
129 - dout_aclk_fsys_200
130
131Input clocks for aud clock controller:
132 - fin_pll
133 - fout_aud_pll
134 - ioclk_i2s_cdclk
135 - ioclk_pcm_extclk
136
137Input clocks for isp clock controller:
138 - fin_pll
139 - dout_aclk_isp1_266
140 - dout_aclk_isp1_400
141 - mout_aclk_isp1_266
142
143Input clocks for gscl clock controller:
144 - fin_pll
145 - dout_aclk_gscl_400
146 - dout_aclk_gscl_333
147
148Input clocks for disp clock controller:
149 - fin_pll
150 - phyclk_dptx_phy_ch3_txd_clk
151 - phyclk_dptx_phy_ch2_txd_clk
152 - phyclk_dptx_phy_ch1_txd_clk
153 - phyclk_dptx_phy_ch0_txd_clk
154 - phyclk_hdmi_phy_tmds_clko
155 - phyclk_hdmi_phy_ref_clko
156 - phyclk_hdmi_phy_pixel_clko
157 - phyclk_hdmi_link_o_tmds_clkhi
158 - phyclk_mipi_dphy_4l_m_txbyte_clkhs
159 - phyclk_dptx_phy_o_ref_clk_24m
160 - phyclk_dptx_phy_clk_div2
161 - phyclk_mipi_dphy_4l_m_rxclkesc0
162 - phyclk_hdmi_phy_ref_cko
163 - ioclk_spdif_extclk
164 - dout_aclk_peri_aud
165 - dout_aclk_disp_222
166 - dout_sclk_disp_pixel
167 - dout_aclk_disp_333
168
169Example 1: An example of a clock controller node is listed below.
170
171 clock_mfc: clock-controller@11090000 {
172 compatible = "samsung,exynos5260-clock-mfc";
173 clock = <&fin_pll>, <&clock_top TOP_DOUT_ACLK_MFC_333>;
174 clock-names = "fin_pll", "dout_aclk_mfc_333";
175 reg = <0x11090000 0x10000>;
176 #clock-cells = <1>;
177 };
178
179Example 2: UART controller node that consumes the clock generated by the
180 peri clock controller. Refer to the standard clock bindings for
181 information about 'clocks' and 'clock-names' property.
182
183 serial@12C00000 {
184 compatible = "samsung,exynos4210-uart";
185 reg = <0x12C00000 0x100>;
186 interrupts = <0 146 0>;
187 clocks = <&clock_peri PERI_PCLK_UART0>, <&clock_peri PERI_SCLK_UART0>;
188 clock-names = "uart", "clk_uart_baud0";
189 };
190
diff --git a/Documentation/devicetree/bindings/clock/exynos5410-clock.txt b/Documentation/devicetree/bindings/clock/exynos5410-clock.txt
new file mode 100644
index 000000000000..aeab635b07b5
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/exynos5410-clock.txt
@@ -0,0 +1,45 @@
1* Samsung Exynos5410 Clock Controller
2
3The Exynos5410 clock controller generates and supplies clock to various
4controllers within the Exynos5410 SoC.
5
6Required Properties:
7
8- compatible: should be "samsung,exynos5410-clock"
9
10- reg: physical base address of the controller and length of memory mapped
11 region.
12
13- #clock-cells: should be 1.
14
15All available clocks are defined as preprocessor macros in
16dt-bindings/clock/exynos5410.h header and can be used in device
17tree sources.
18
19External clock:
20
21There is clock that is generated outside the SoC. It
22is expected that it is defined using standard clock bindings
23with following clock-output-name:
24
25 - "fin_pll" - PLL input clock from XXTI
26
27Example 1: An example of a clock controller node is listed below.
28
29 clock: clock-controller@0x10010000 {
30 compatible = "samsung,exynos5410-clock";
31 reg = <0x10010000 0x30000>;
32 #clock-cells = <1>;
33 };
34
35Example 2: UART controller node that consumes the clock generated by the clock
36 controller. Refer to the standard clock bindings for information
37 about 'clocks' and 'clock-names' property.
38
39 serial@12C20000 {
40 compatible = "samsung,exynos4210-uart";
41 reg = <0x12C00000 0x100>;
42 interrupts = <0 51 0>;
43 clocks = <&clock CLK_UART0>, <&clock CLK_SCLK_UART0>;
44 clock-names = "uart", "clk_uart_baud0";
45 };
diff --git a/Documentation/devicetree/bindings/clock/exynos5420-clock.txt b/Documentation/devicetree/bindings/clock/exynos5420-clock.txt
index ca88c97a8562..d54f42cf0440 100644
--- a/Documentation/devicetree/bindings/clock/exynos5420-clock.txt
+++ b/Documentation/devicetree/bindings/clock/exynos5420-clock.txt
@@ -1,12 +1,13 @@
1* Samsung Exynos5420 Clock Controller 1* Samsung Exynos5420 Clock Controller
2 2
3The Exynos5420 clock controller generates and supplies clock to various 3The Exynos5420 clock controller generates and supplies clock to various
4controllers within the Exynos5420 SoC. 4controllers within the Exynos5420 SoC and for the Exynos5800 SoC.
5 5
6Required Properties: 6Required Properties:
7 7
8- compatible: should be one of the following. 8- compatible: should be one of the following.
9 - "samsung,exynos5420-clock" - controller compatible with Exynos5420 SoC. 9 - "samsung,exynos5420-clock" - controller compatible with Exynos5420 SoC.
10 - "samsung,exynos5800-clock" - controller compatible with Exynos5800 SoC.
10 11
11- reg: physical base address of the controller and length of memory mapped 12- reg: physical base address of the controller and length of memory mapped
12 region. 13 region.
diff --git a/Documentation/devicetree/bindings/clock/imx25-clock.txt b/Documentation/devicetree/bindings/clock/imx25-clock.txt
index db4f2f05c4d0..ba6b312ff8a5 100644
--- a/Documentation/devicetree/bindings/clock/imx25-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx25-clock.txt
@@ -139,6 +139,9 @@ clocks and IDs.
139 uart5_ipg 124 139 uart5_ipg 124
140 reserved 125 140 reserved 125
141 wdt_ipg 126 141 wdt_ipg 126
142 cko_div 127
143 cko_sel 128
144 cko 129
142 145
143Examples: 146Examples:
144 147
diff --git a/Documentation/devicetree/bindings/clock/imx27-clock.txt b/Documentation/devicetree/bindings/clock/imx27-clock.txt
index 7a2070393732..6bc9fd2c6631 100644
--- a/Documentation/devicetree/bindings/clock/imx27-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx27-clock.txt
@@ -98,7 +98,12 @@ clocks and IDs.
98 fpm 83 98 fpm 83
99 mpll_osc_sel 84 99 mpll_osc_sel 84
100 mpll_sel 85 100 mpll_sel 85
101 spll_gate 86 101 spll_gate 86
102 mshc_div 87
103 rtic_ipg_gate 88
104 mshc_ipg_gate 89
105 rtic_ahb_gate 90
106 mshc_baud_gate 91
102 107
103Examples: 108Examples:
104 109
diff --git a/Documentation/devicetree/bindings/clock/imx6q-clock.txt b/Documentation/devicetree/bindings/clock/imx6q-clock.txt
index 6aab72bf67ea..90ec91fe5ce0 100644
--- a/Documentation/devicetree/bindings/clock/imx6q-clock.txt
+++ b/Documentation/devicetree/bindings/clock/imx6q-clock.txt
@@ -220,6 +220,7 @@ clocks and IDs.
220 lvds2_sel 205 220 lvds2_sel 205
221 lvds1_gate 206 221 lvds1_gate 206
222 lvds2_gate 207 222 lvds2_gate 207
223 esai_ahb 208
223 224
224Examples: 225Examples:
225 226
diff --git a/Documentation/devicetree/bindings/clock/imx6sx-clock.txt b/Documentation/devicetree/bindings/clock/imx6sx-clock.txt
new file mode 100644
index 000000000000..22362b9b7ba3
--- /dev/null
+++ b/Documentation/devicetree/bindings/clock/imx6sx-clock.txt
@@ -0,0 +1,13 @@
1* Clock bindings for Freescale i.MX6 SoloX
2
3Required properties:
4- compatible: Should be "fsl,imx6sx-ccm"
5- reg: Address and length of the register set
6- #clock-cells: Should be <1>
7- clocks: list of clock specifiers, must contain an entry for each required
8 entry in clock-names
9- clock-names: should include entries "ckil", "osc", "ipp_di0" and "ipp_di1"
10
11The clock consumer should specify the desired clock by having the clock
12ID in its "clocks" phandle cell. See include/dt-bindings/clock/imx6sx-clock.h
13for the full list of i.MX6 SoloX clock IDs.
diff --git a/Documentation/devicetree/bindings/clock/samsung,s3c2410-clock.txt b/Documentation/devicetree/bindings/clock/samsung,s3c2410-clock.txt
index 0b64ad8dadf6..822505e715ae 100644
--- a/Documentation/devicetree/bindings/clock/samsung,s3c2410-clock.txt
+++ b/Documentation/devicetree/bindings/clock/samsung,s3c2410-clock.txt
@@ -19,7 +19,7 @@ to specify the clock which they consume. Some of the clocks are available only
19on a particular SoC. 19on a particular SoC.
20 20
21All available clocks are defined as preprocessor macros in 21All available clocks are defined as preprocessor macros in
22dt-bindings/clock/samsung,s3c2410-clock.h header and can be used in device 22dt-bindings/clock/s3c2410.h header and can be used in device
23tree sources. 23tree sources.
24 24
25External clocks: 25External clocks:
diff --git a/Documentation/devicetree/bindings/power_supply/axxia-reset.txt b/Documentation/devicetree/bindings/power_supply/axxia-reset.txt
new file mode 100644
index 000000000000..47e720d249d2
--- /dev/null
+++ b/Documentation/devicetree/bindings/power_supply/axxia-reset.txt
@@ -0,0 +1,20 @@
1Axxia Restart Driver
2
3This driver can do reset of the Axxia SoC. It uses the registers in the syscon
4block to initiate a chip reset.
5
6Required Properties:
7 -compatible: "lsi,axm55xx-reset"
8 -syscon: phandle to the syscon node.
9
10Example:
11
12 syscon: syscon@2010030000 {
13 compatible = "lsi,axxia-syscon", "syscon";
14 reg = <0x20 0x10030000 0 0x2000>;
15 };
16
17 reset: reset@2010031000 {
18 compatible = "lsi,axm55xx-reset";
19 syscon = <&syscon>;
20 };