diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2017-05-09 12:54:39 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2017-05-09 12:54:39 -0400 |
commit | 85d604902eb28eaea4f9e0f3a655ae986fa4bd2e (patch) | |
tree | 3ca4ff0c7e13c09ad006f378fac066790586f391 | |
parent | 8d648aad05811ccc07df22834de60a7bf8d9e0e6 (diff) | |
parent | b9f34da74e1c4b5f2574333277cd8d8f53bad056 (diff) |
Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc
Pull ARM Device-tree updates from Olof Johansson:
"Device-tree continues to see lots of updates. The majority of patches
here are smaller changes for new hardware on existing platforms, and
there are a few larger changes worth pointing out.
Major new platforms:
- Gemini has been ported to DT, so a handful of "new" platforms moved
over from board files
- Rockchip RK3288 support for Tinkerboard and Phytec phyCORE-RK3288
SoM and RDK
- A bunch of embedded platforms, several Linksys platforms, Synology
DS116,
- Motorola Droid4 (really old OMAP-based phone) support is added.
Some refactorings, i.e. Allwinner H3/H5 support is commonalized.
And lots of smaller changes, cleanups, etc. See shortlog for more
description
We're adding ability to cross-include DT files between arm and arm64,
by creating appropriate links in the dt-include directory, and using
arm/ and arm64/ as include prefixes. This will avoid other local hacks
such as per-file links between the two arch trees (this broke for
external mirroring of DT contents). Now they can just provide their
own appropriate dt-include hierarcy per platform"
* tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (349 commits)
ARM: dts: exynos: Use - instead of @ for DT OPP entries
arm: spear6xx: add DT description of the ADC on SPEAr600
arm: spear6xx: remove unneeded pinctrl properties in spear600-evb
arm: spear6xx: switch spear600-evb to the new flash partition DT binding
arm: spear6xx: fix spaces in spear600-evb.dts
arm: spear6xx: use node labels in spear600-evb.dts
arm: spear6xx: add labels to various nodes in spear600.dtsi
ARM: dts: vexpress: fix few unit address format warnings
ARM: dts: at91: sama5d3_xplained: not all ADC channels are available
ARM: dts: at91: sama5d3_xplained: fix ADC vref
ARM: dts: at91: add envelope detector mux to the Axentia TSE-850
ARM: dts: armada-38x: label USB and SATA nodes
ARM: dts: imx6q-utilite-pro: add hpd gpio
ARM: dts: imx6qp-sabresd: Set reg_arm regulator supply
ARM: dts: imx6qdl-sabresd: Set LDO regulator supply
ARM: dts: imx: add Gateworks Ventana GW5903 support
ARM: dts: i.MX25: add AIPS control registers
ARM: dts: imx7-colibri: add Carrier Board 3.3V/5V regulators
ARM: dts: imx7-colibri: remove 1.8V fixed regulator
ARM: dts: imx7-colibri: allow to disable Ethernet rail
...
378 files changed, 13121 insertions, 2800 deletions
diff --git a/Documentation/devicetree/bindings/arm/atmel-at91.txt b/Documentation/devicetree/bindings/arm/atmel-at91.txt index 29737b9b616e..799af90dd75b 100644 --- a/Documentation/devicetree/bindings/arm/atmel-at91.txt +++ b/Documentation/devicetree/bindings/arm/atmel-at91.txt | |||
@@ -217,7 +217,8 @@ memory, bridge implementations, processor and other functionality not controlled | |||
217 | elsewhere. | 217 | elsewhere. |
218 | 218 | ||
219 | required properties: | 219 | required properties: |
220 | - compatible: Should be "atmel,<chip>-sfr", "syscon". | 220 | - compatible: Should be "atmel,<chip>-sfr", "syscon" or |
221 | "atmel,<chip>-sfrbu", "syscon" | ||
221 | <chip> can be "sama5d3", "sama5d4" or "sama5d2". | 222 | <chip> can be "sama5d3", "sama5d4" or "sama5d2". |
222 | - reg: Should contain registers location and length | 223 | - reg: Should contain registers location and length |
223 | 224 | ||
diff --git a/Documentation/devicetree/bindings/arm/gemini.txt b/Documentation/devicetree/bindings/arm/gemini.txt new file mode 100644 index 000000000000..0041eb031116 --- /dev/null +++ b/Documentation/devicetree/bindings/arm/gemini.txt | |||
@@ -0,0 +1,86 @@ | |||
1 | Cortina systems Gemini platforms | ||
2 | |||
3 | The Gemini SoC is the project name for an ARMv4 FA525-based SoC originally | ||
4 | produced by Storlink Semiconductor around 2005. The company was renamed | ||
5 | later renamed Storm Semiconductor. The chip product name is Storlink SL3516. | ||
6 | It was derived from earlier products from Storm named SL3316 (Centroid) and | ||
7 | SL3512 (Bulverde). | ||
8 | |||
9 | Storm Semiconductor was acquired by Cortina Systems in 2008 and the SoC was | ||
10 | produced and used for NAS and similar usecases. In 2014 Cortina Systems was | ||
11 | in turn acquired by Inphi, who seem to have discontinued this product family. | ||
12 | |||
13 | Many of the IP blocks used in the SoC comes from Faraday Technology. | ||
14 | |||
15 | Required properties (in root node): | ||
16 | compatible = "cortina,gemini"; | ||
17 | |||
18 | Required nodes: | ||
19 | |||
20 | - soc: the SoC should be represented by a simple bus encompassing all the | ||
21 | onchip devices, this is referred to as the soc bus node. | ||
22 | |||
23 | - syscon: the soc bus node must have a system controller node pointing to the | ||
24 | global control registers, with the compatible string | ||
25 | "cortina,gemini-syscon", "syscon"; | ||
26 | |||
27 | - timer: the soc bus node must have a timer node pointing to the SoC timer | ||
28 | block, with the compatible string "cortina,gemini-timer" | ||
29 | See: clocksource/cortina,gemini-timer.txt | ||
30 | |||
31 | - interrupt-controller: the sob bus node must have an interrupt controller | ||
32 | node pointing to the SoC interrupt controller block, with the compatible | ||
33 | string "cortina,gemini-interrupt-controller" | ||
34 | See interrupt-controller/cortina,gemini-interrupt-controller.txt | ||
35 | |||
36 | Example: | ||
37 | |||
38 | / { | ||
39 | model = "Foo Gemini Machine"; | ||
40 | compatible = "cortina,gemini"; | ||
41 | #address-cells = <1>; | ||
42 | #size-cells = <1>; | ||
43 | |||
44 | memory { | ||
45 | device_type = "memory"; | ||
46 | reg = <0x00000000 0x8000000>; | ||
47 | }; | ||
48 | |||
49 | soc { | ||
50 | #address-cells = <1>; | ||
51 | #size-cells = <1>; | ||
52 | ranges; | ||
53 | compatible = "simple-bus"; | ||
54 | interrupt-parent = <&intcon>; | ||
55 | |||
56 | syscon: syscon@40000000 { | ||
57 | compatible = "cortina,gemini-syscon", "syscon"; | ||
58 | reg = <0x40000000 0x1000>; | ||
59 | }; | ||
60 | |||
61 | uart0: serial@42000000 { | ||
62 | compatible = "ns16550a"; | ||
63 | reg = <0x42000000 0x100>; | ||
64 | clock-frequency = <48000000>; | ||
65 | interrupts = <18 IRQ_TYPE_LEVEL_HIGH>; | ||
66 | reg-shift = <2>; | ||
67 | }; | ||
68 | |||
69 | timer@43000000 { | ||
70 | compatible = "cortina,gemini-timer"; | ||
71 | reg = <0x43000000 0x1000>; | ||
72 | interrupt-parent = <&intcon>; | ||
73 | interrupts = <14 IRQ_TYPE_EDGE_FALLING>, /* Timer 1 */ | ||
74 | <15 IRQ_TYPE_EDGE_FALLING>, /* Timer 2 */ | ||
75 | <16 IRQ_TYPE_EDGE_FALLING>; /* Timer 3 */ | ||
76 | syscon = <&syscon>; | ||
77 | }; | ||
78 | |||
79 | intcon: interrupt-controller@48000000 { | ||
80 | compatible = "cortina,gemini-interrupt-controller"; | ||
81 | reg = <0x48000000 0x1000>; | ||
82 | interrupt-controller; | ||
83 | #interrupt-cells = <2>; | ||
84 | }; | ||
85 | }; | ||
86 | }; | ||
diff --git a/Documentation/devicetree/bindings/arm/i2se.txt b/Documentation/devicetree/bindings/arm/i2se.txt new file mode 100644 index 000000000000..dbd54a3aa07d --- /dev/null +++ b/Documentation/devicetree/bindings/arm/i2se.txt | |||
@@ -0,0 +1,22 @@ | |||
1 | I2SE Device Tree Bindings | ||
2 | ------------------------- | ||
3 | |||
4 | Duckbill Board | ||
5 | Required root node properties: | ||
6 | - compatible = "i2se,duckbill", "fsl,imx28"; | ||
7 | |||
8 | Duckbill 2 Board | ||
9 | Required root node properties: | ||
10 | - compatible = "i2se,duckbill-2", "fsl,imx28"; | ||
11 | |||
12 | Duckbill 2 485 Board | ||
13 | Required root node properties: | ||
14 | - compatible = "i2se,duckbill-2-485", "i2se,duckbill-2", "fsl,imx28"; | ||
15 | |||
16 | Duckbill 2 EnOcean Board | ||
17 | Required root node properties: | ||
18 | - compatible = "i2se,duckbill-2-enocean", "i2se,duckbill-2", "fsl,imx28"; | ||
19 | |||
20 | Duckbill 2 SPI Board | ||
21 | Required root node properties: | ||
22 | - compatible = "i2se,duckbill-2-spi", "i2se,duckbill-2", "fsl,imx28"; | ||
diff --git a/Documentation/devicetree/bindings/arm/rockchip.txt b/Documentation/devicetree/bindings/arm/rockchip.txt index cc4ace6397ab..6b8d50a0ee78 100644 --- a/Documentation/devicetree/bindings/arm/rockchip.txt +++ b/Documentation/devicetree/bindings/arm/rockchip.txt | |||
@@ -1,5 +1,8 @@ | |||
1 | Rockchip platforms device tree bindings | 1 | Rockchip platforms device tree bindings |
2 | --------------------------------------- | 2 | --------------------------------------- |
3 | - Asus Tinker board | ||
4 | Required root node properties: | ||
5 | - compatible = "asus,rk3288-tinker", "rockchip,rk3288"; | ||
3 | 6 | ||
4 | - Kylin RK3036 board: | 7 | - Kylin RK3036 board: |
5 | Required root node properties: | 8 | Required root node properties: |
@@ -103,6 +106,10 @@ Rockchip platforms device tree bindings | |||
103 | Required root node properties: | 106 | Required root node properties: |
104 | - compatible = "mqmaker,miqi", "rockchip,rk3288"; | 107 | - compatible = "mqmaker,miqi", "rockchip,rk3288"; |
105 | 108 | ||
109 | - Phytec phyCORE-RK3288: Rapid Development Kit | ||
110 | Required root node properties: | ||
111 | - compatible = "phytec,rk3288-pcm-947", "phytec,rk3288-phycore-som", "rockchip,rk3288"; | ||
112 | |||
106 | - Rockchip PX3 Evaluation board: | 113 | - Rockchip PX3 Evaluation board: |
107 | Required root node properties: | 114 | Required root node properties: |
108 | - compatible = "rockchip,px3-evb", "rockchip,px3", "rockchip,rk3188"; | 115 | - compatible = "rockchip,px3-evb", "rockchip,px3", "rockchip,rk3188"; |
diff --git a/Documentation/devicetree/bindings/arm/shmobile.txt b/Documentation/devicetree/bindings/arm/shmobile.txt index c9502634316d..170fe0562c63 100644 --- a/Documentation/devicetree/bindings/arm/shmobile.txt +++ b/Documentation/devicetree/bindings/arm/shmobile.txt | |||
@@ -13,8 +13,12 @@ SoCs: | |||
13 | compatible = "renesas,r8a73a4" | 13 | compatible = "renesas,r8a73a4" |
14 | - R-Mobile A1 (R8A77400) | 14 | - R-Mobile A1 (R8A77400) |
15 | compatible = "renesas,r8a7740" | 15 | compatible = "renesas,r8a7740" |
16 | - RZ/G1H (R8A77420) | ||
17 | compatible = "renesas,r8a7742" | ||
16 | - RZ/G1M (R8A77430) | 18 | - RZ/G1M (R8A77430) |
17 | compatible = "renesas,r8a7743" | 19 | compatible = "renesas,r8a7743" |
20 | - RZ/G1N (R8A77440) | ||
21 | compatible = "renesas,r8a7744" | ||
18 | - RZ/G1E (R8A77450) | 22 | - RZ/G1E (R8A77450) |
19 | compatible = "renesas,r8a7745" | 23 | compatible = "renesas,r8a7745" |
20 | - R-Car M1A (R8A77781) | 24 | - R-Car M1A (R8A77781) |
diff --git a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-flowctrl.txt b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-flowctrl.txt index ccf0adddc820..a855c1bffc0f 100644 --- a/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-flowctrl.txt +++ b/Documentation/devicetree/bindings/arm/tegra/nvidia,tegra20-flowctrl.txt | |||
@@ -1,7 +1,13 @@ | |||
1 | NVIDIA Tegra Flow Controller | 1 | NVIDIA Tegra Flow Controller |
2 | 2 | ||
3 | Required properties: | 3 | Required properties: |
4 | - compatible: Should be "nvidia,tegra<chip>-flowctrl" | 4 | - compatible: Should contain one of the following: |
5 | - "nvidia,tegra20-flowctrl": for Tegra20 | ||
6 | - "nvidia,tegra30-flowctrl": for Tegra30 | ||
7 | - "nvidia,tegra114-flowctrl": for Tegra114 | ||
8 | - "nvidia,tegra124-flowctrl": for Tegra124 | ||
9 | - "nvidia,tegra132-flowctrl", "nvidia,tegra124-flowctrl": for Tegra132 | ||
10 | - "nvidia,tegra210-flowctrl": for Tegra210 | ||
5 | - reg: Should contain one register range (address and length) | 11 | - reg: Should contain one register range (address and length) |
6 | 12 | ||
7 | Example: | 13 | Example: |
diff --git a/Documentation/devicetree/bindings/clock/mvebu-core-clock.txt b/Documentation/devicetree/bindings/clock/mvebu-core-clock.txt index eb985a633d59..796c260c183d 100644 --- a/Documentation/devicetree/bindings/clock/mvebu-core-clock.txt +++ b/Documentation/devicetree/bindings/clock/mvebu-core-clock.txt | |||
@@ -31,6 +31,12 @@ The following is a list of provided IDs and clock names on Armada 39x: | |||
31 | 4 = dclk (SDRAM Interface Clock) | 31 | 4 = dclk (SDRAM Interface Clock) |
32 | 5 = refclk (Reference Clock) | 32 | 5 = refclk (Reference Clock) |
33 | 33 | ||
34 | The following is a list of provided IDs and clock names on 98dx3236: | ||
35 | 0 = tclk (Internal Bus clock) | ||
36 | 1 = cpuclk (CPU clock) | ||
37 | 2 = ddrclk (DDR clock) | ||
38 | 3 = mpll (MPLL Clock) | ||
39 | |||
34 | The following is a list of provided IDs and clock names on Kirkwood and Dove: | 40 | The following is a list of provided IDs and clock names on Kirkwood and Dove: |
35 | 0 = tclk (Internal Bus clock) | 41 | 0 = tclk (Internal Bus clock) |
36 | 1 = cpuclk (CPU0 clock) | 42 | 1 = cpuclk (CPU0 clock) |
@@ -49,6 +55,7 @@ Required properties: | |||
49 | "marvell,armada-380-core-clock" - For Armada 380/385 SoC core clocks | 55 | "marvell,armada-380-core-clock" - For Armada 380/385 SoC core clocks |
50 | "marvell,armada-390-core-clock" - For Armada 39x SoC core clocks | 56 | "marvell,armada-390-core-clock" - For Armada 39x SoC core clocks |
51 | "marvell,armada-xp-core-clock" - For Armada XP SoC core clocks | 57 | "marvell,armada-xp-core-clock" - For Armada XP SoC core clocks |
58 | "marvell,mv98dx3236-core-clock" - For 98dx3236 family SoC core clocks | ||
52 | "marvell,dove-core-clock" - for Dove SoC core clocks | 59 | "marvell,dove-core-clock" - for Dove SoC core clocks |
53 | "marvell,kirkwood-core-clock" - for Kirkwood SoC (except mv88f6180) | 60 | "marvell,kirkwood-core-clock" - for Kirkwood SoC (except mv88f6180) |
54 | "marvell,mv88f6180-core-clock" - for Kirkwood MV88f6180 SoC | 61 | "marvell,mv88f6180-core-clock" - for Kirkwood MV88f6180 SoC |
diff --git a/Documentation/devicetree/bindings/clock/mvebu-gated-clock.txt b/Documentation/devicetree/bindings/clock/mvebu-gated-clock.txt index 5142efc8099d..de562da2ae77 100644 --- a/Documentation/devicetree/bindings/clock/mvebu-gated-clock.txt +++ b/Documentation/devicetree/bindings/clock/mvebu-gated-clock.txt | |||
@@ -119,6 +119,16 @@ ID Clock Peripheral | |||
119 | 29 sata1lnk | 119 | 29 sata1lnk |
120 | 30 sata1 SATA Host 1 | 120 | 30 sata1 SATA Host 1 |
121 | 121 | ||
122 | The following is a list of provided IDs for 98dx3236: | ||
123 | ID Clock Peripheral | ||
124 | ----------------------------------- | ||
125 | 3 ge1 Gigabit Ethernet 1 | ||
126 | 4 ge0 Gigabit Ethernet 0 | ||
127 | 5 pex0 PCIe Cntrl 0 | ||
128 | 17 sdio SDHCI Host | ||
129 | 18 usb0 USB Host 0 | ||
130 | 22 xor0 XOR DMA 0 | ||
131 | |||
122 | The following is a list of provided IDs for Dove: | 132 | The following is a list of provided IDs for Dove: |
123 | ID Clock Peripheral | 133 | ID Clock Peripheral |
124 | ----------------------------------- | 134 | ----------------------------------- |
@@ -169,6 +179,7 @@ Required properties: | |||
169 | "marvell,armada-380-gating-clock" - for Armada 380/385 SoC clock gating | 179 | "marvell,armada-380-gating-clock" - for Armada 380/385 SoC clock gating |
170 | "marvell,armada-390-gating-clock" - for Armada 39x SoC clock gating | 180 | "marvell,armada-390-gating-clock" - for Armada 39x SoC clock gating |
171 | "marvell,armada-xp-gating-clock" - for Armada XP SoC clock gating | 181 | "marvell,armada-xp-gating-clock" - for Armada XP SoC clock gating |
182 | "marvell,mv98dx3236-gating-clock" - for 98dx3236 SoC clock gating | ||
172 | "marvell,dove-gating-clock" - for Dove SoC clock gating | 183 | "marvell,dove-gating-clock" - for Dove SoC clock gating |
173 | "marvell,kirkwood-gating-clock" - for Kirkwood SoC clock gating | 184 | "marvell,kirkwood-gating-clock" - for Kirkwood SoC clock gating |
174 | - reg : shall be the register address of the Clock Gating Control register | 185 | - reg : shall be the register address of the Clock Gating Control register |
diff --git a/Documentation/devicetree/bindings/devfreq/exynos-bus.txt b/Documentation/devicetree/bindings/devfreq/exynos-bus.txt index d085ef90d27c..f8e946471a58 100644 --- a/Documentation/devicetree/bindings/devfreq/exynos-bus.txt +++ b/Documentation/devicetree/bindings/devfreq/exynos-bus.txt | |||
@@ -202,23 +202,23 @@ Example2 : | |||
202 | compatible = "operating-points-v2"; | 202 | compatible = "operating-points-v2"; |
203 | opp-shared; | 203 | opp-shared; |
204 | 204 | ||
205 | opp@50000000 { | 205 | opp-50000000 { |
206 | opp-hz = /bits/ 64 <50000000>; | 206 | opp-hz = /bits/ 64 <50000000>; |
207 | opp-microvolt = <800000>; | 207 | opp-microvolt = <800000>; |
208 | }; | 208 | }; |
209 | opp@100000000 { | 209 | opp-100000000 { |
210 | opp-hz = /bits/ 64 <100000000>; | 210 | opp-hz = /bits/ 64 <100000000>; |
211 | opp-microvolt = <800000>; | 211 | opp-microvolt = <800000>; |
212 | }; | 212 | }; |
213 | opp@134000000 { | 213 | opp-134000000 { |
214 | opp-hz = /bits/ 64 <134000000>; | 214 | opp-hz = /bits/ 64 <134000000>; |
215 | opp-microvolt = <800000>; | 215 | opp-microvolt = <800000>; |
216 | }; | 216 | }; |
217 | opp@200000000 { | 217 | opp-200000000 { |
218 | opp-hz = /bits/ 64 <200000000>; | 218 | opp-hz = /bits/ 64 <200000000>; |
219 | opp-microvolt = <825000>; | 219 | opp-microvolt = <825000>; |
220 | }; | 220 | }; |
221 | opp@400000000 { | 221 | opp-400000000 { |
222 | opp-hz = /bits/ 64 <400000000>; | 222 | opp-hz = /bits/ 64 <400000000>; |
223 | opp-microvolt = <875000>; | 223 | opp-microvolt = <875000>; |
224 | }; | 224 | }; |
@@ -292,23 +292,23 @@ Example2 : | |||
292 | compatible = "operating-points-v2"; | 292 | compatible = "operating-points-v2"; |
293 | opp-shared; | 293 | opp-shared; |
294 | 294 | ||
295 | opp@50000000 { | 295 | opp-50000000 { |
296 | opp-hz = /bits/ 64 <50000000>; | 296 | opp-hz = /bits/ 64 <50000000>; |
297 | opp-microvolt = <900000>; | 297 | opp-microvolt = <900000>; |
298 | }; | 298 | }; |
299 | opp@80000000 { | 299 | opp-80000000 { |
300 | opp-hz = /bits/ 64 <80000000>; | 300 | opp-hz = /bits/ 64 <80000000>; |
301 | opp-microvolt = <900000>; | 301 | opp-microvolt = <900000>; |
302 | }; | 302 | }; |
303 | opp@100000000 { | 303 | opp-100000000 { |
304 | opp-hz = /bits/ 64 <100000000>; | 304 | opp-hz = /bits/ 64 <100000000>; |
305 | opp-microvolt = <1000000>; | 305 | opp-microvolt = <1000000>; |
306 | }; | 306 | }; |
307 | opp@134000000 { | 307 | opp-134000000 { |
308 | opp-hz = /bits/ 64 <134000000>; | 308 | opp-hz = /bits/ 64 <134000000>; |
309 | opp-microvolt = <1000000>; | 309 | opp-microvolt = <1000000>; |
310 | }; | 310 | }; |
311 | opp@200000000 { | 311 | opp-200000000 { |
312 | opp-hz = /bits/ 64 <200000000>; | 312 | opp-hz = /bits/ 64 <200000000>; |
313 | opp-microvolt = <1000000>; | 313 | opp-microvolt = <1000000>; |
314 | }; | 314 | }; |
@@ -318,19 +318,19 @@ Example2 : | |||
318 | compatible = "operating-points-v2"; | 318 | compatible = "operating-points-v2"; |
319 | opp-shared; | 319 | opp-shared; |
320 | 320 | ||
321 | opp@50000000 { | 321 | opp-50000000 { |
322 | opp-hz = /bits/ 64 <50000000>; | 322 | opp-hz = /bits/ 64 <50000000>; |
323 | }; | 323 | }; |
324 | opp@80000000 { | 324 | opp-80000000 { |
325 | opp-hz = /bits/ 64 <80000000>; | 325 | opp-hz = /bits/ 64 <80000000>; |
326 | }; | 326 | }; |
327 | opp@100000000 { | 327 | opp-100000000 { |
328 | opp-hz = /bits/ 64 <100000000>; | 328 | opp-hz = /bits/ 64 <100000000>; |
329 | }; | 329 | }; |
330 | opp@200000000 { | 330 | opp-200000000 { |
331 | opp-hz = /bits/ 64 <200000000>; | 331 | opp-hz = /bits/ 64 <200000000>; |
332 | }; | 332 | }; |
333 | opp@400000000 { | 333 | opp-400000000 { |
334 | opp-hz = /bits/ 64 <400000000>; | 334 | opp-hz = /bits/ 64 <400000000>; |
335 | }; | 335 | }; |
336 | }; | 336 | }; |
@@ -339,19 +339,19 @@ Example2 : | |||
339 | compatible = "operating-points-v2"; | 339 | compatible = "operating-points-v2"; |
340 | opp-shared; | 340 | opp-shared; |
341 | 341 | ||
342 | opp@50000000 { | 342 | opp-50000000 { |
343 | opp-hz = /bits/ 64 <50000000>; | 343 | opp-hz = /bits/ 64 <50000000>; |
344 | }; | 344 | }; |
345 | opp@80000000 { | 345 | opp-80000000 { |
346 | opp-hz = /bits/ 64 <80000000>; | 346 | opp-hz = /bits/ 64 <80000000>; |
347 | }; | 347 | }; |
348 | opp@100000000 { | 348 | opp-100000000 { |
349 | opp-hz = /bits/ 64 <100000000>; | 349 | opp-hz = /bits/ 64 <100000000>; |
350 | }; | 350 | }; |
351 | opp@200000000 { | 351 | opp-200000000 { |
352 | opp-hz = /bits/ 64 <200000000>; | 352 | opp-hz = /bits/ 64 <200000000>; |
353 | }; | 353 | }; |
354 | opp@300000000 { | 354 | opp-300000000 { |
355 | opp-hz = /bits/ 64 <300000000>; | 355 | opp-hz = /bits/ 64 <300000000>; |
356 | }; | 356 | }; |
357 | }; | 357 | }; |
@@ -360,13 +360,13 @@ Example2 : | |||
360 | compatible = "operating-points-v2"; | 360 | compatible = "operating-points-v2"; |
361 | opp-shared; | 361 | opp-shared; |
362 | 362 | ||
363 | opp@50000000 { | 363 | opp-50000000 { |
364 | opp-hz = /bits/ 64 <50000000>; | 364 | opp-hz = /bits/ 64 <50000000>; |
365 | }; | 365 | }; |
366 | opp@80000000 { | 366 | opp-80000000 { |
367 | opp-hz = /bits/ 64 <80000000>; | 367 | opp-hz = /bits/ 64 <80000000>; |
368 | }; | 368 | }; |
369 | opp@100000000 { | 369 | opp-100000000 { |
370 | opp-hz = /bits/ 64 <100000000>; | 370 | opp-hz = /bits/ 64 <100000000>; |
371 | }; | 371 | }; |
372 | }; | 372 | }; |
diff --git a/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt index b82c00449468..57a8d0610062 100644 --- a/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt +++ b/Documentation/devicetree/bindings/display/sunxi/sun4i-drm.txt | |||
@@ -94,6 +94,7 @@ Required properties: | |||
94 | * allwinner,sun6i-a31-display-backend | 94 | * allwinner,sun6i-a31-display-backend |
95 | * allwinner,sun8i-a33-display-backend | 95 | * allwinner,sun8i-a33-display-backend |
96 | - reg: base address and size of the memory-mapped region. | 96 | - reg: base address and size of the memory-mapped region. |
97 | - interrupts: interrupt associated to this IP | ||
97 | - clocks: phandles to the clocks feeding the frontend and backend | 98 | - clocks: phandles to the clocks feeding the frontend and backend |
98 | * ahb: the backend interface clock | 99 | * ahb: the backend interface clock |
99 | * mod: the backend module clock | 100 | * mod: the backend module clock |
@@ -265,6 +266,7 @@ fe0: display-frontend@1e00000 { | |||
265 | be0: display-backend@1e60000 { | 266 | be0: display-backend@1e60000 { |
266 | compatible = "allwinner,sun5i-a13-display-backend"; | 267 | compatible = "allwinner,sun5i-a13-display-backend"; |
267 | reg = <0x01e60000 0x10000>; | 268 | reg = <0x01e60000 0x10000>; |
269 | interrupts = <47>; | ||
268 | clocks = <&ahb_gates 44>, <&de_be_clk>, | 270 | clocks = <&ahb_gates 44>, <&de_be_clk>, |
269 | <&dram_gates 26>; | 271 | <&dram_gates 26>; |
270 | clock-names = "ahb", "mod", | 272 | clock-names = "ahb", "mod", |
diff --git a/Documentation/devicetree/bindings/gpu/arm,mali-utgard.txt b/Documentation/devicetree/bindings/gpu/arm,mali-utgard.txt index 476f5ea6c627..2b6243e730f6 100644 --- a/Documentation/devicetree/bindings/gpu/arm,mali-utgard.txt +++ b/Documentation/devicetree/bindings/gpu/arm,mali-utgard.txt | |||
@@ -35,6 +35,14 @@ Optional properties: | |||
35 | - interrupt-names and interrupts: | 35 | - interrupt-names and interrupts: |
36 | * pmu: Power Management Unit interrupt, if implemented in hardware | 36 | * pmu: Power Management Unit interrupt, if implemented in hardware |
37 | 37 | ||
38 | - memory-region: | ||
39 | Memory region to allocate from, as defined in | ||
40 | Documentation/devicetree/bindi/reserved-memory/reserved-memory.txt | ||
41 | |||
42 | - operating-points-v2: | ||
43 | Operating Points for the GPU, as defined in | ||
44 | Documentation/devicetree/bindings/opp/opp.txt | ||
45 | |||
38 | Vendor-specific bindings | 46 | Vendor-specific bindings |
39 | ------------------------ | 47 | ------------------------ |
40 | 48 | ||
diff --git a/Documentation/devicetree/bindings/gpu/nvidia,gk20a.txt b/Documentation/devicetree/bindings/gpu/nvidia,gk20a.txt index ff3db65e50de..b7e4c7444510 100644 --- a/Documentation/devicetree/bindings/gpu/nvidia,gk20a.txt +++ b/Documentation/devicetree/bindings/gpu/nvidia,gk20a.txt | |||
@@ -5,6 +5,7 @@ Required properties: | |||
5 | Currently recognized values: | 5 | Currently recognized values: |
6 | - nvidia,gk20a | 6 | - nvidia,gk20a |
7 | - nvidia,gm20b | 7 | - nvidia,gm20b |
8 | - nvidia,gp10b | ||
8 | - reg: Physical base address and length of the controller's registers. | 9 | - reg: Physical base address and length of the controller's registers. |
9 | Must contain two entries: | 10 | Must contain two entries: |
10 | - first entry for bar0 | 11 | - first entry for bar0 |
@@ -14,7 +15,8 @@ Required properties: | |||
14 | - interrupt-names: Must include the following entries: | 15 | - interrupt-names: Must include the following entries: |
15 | - stall | 16 | - stall |
16 | - nonstall | 17 | - nonstall |
17 | - vdd-supply: regulator for supply voltage. | 18 | - vdd-supply: regulator for supply voltage. Only required for GPUs not using |
19 | power domains. | ||
18 | - clocks: Must contain an entry for each entry in clock-names. | 20 | - clocks: Must contain an entry for each entry in clock-names. |
19 | See ../clocks/clock-bindings.txt for details. | 21 | See ../clocks/clock-bindings.txt for details. |
20 | - clock-names: Must include the following entries: | 22 | - clock-names: Must include the following entries: |
@@ -27,6 +29,8 @@ is also required: | |||
27 | See ../reset/reset.txt for details. | 29 | See ../reset/reset.txt for details. |
28 | - reset-names: Must include the following entries: | 30 | - reset-names: Must include the following entries: |
29 | - gpu | 31 | - gpu |
32 | - power-domains: GPUs that make use of power domains can define this property | ||
33 | instead of vdd-supply. Currently "nvidia,gp10b" makes use of this. | ||
30 | 34 | ||
31 | Optional properties: | 35 | Optional properties: |
32 | - iommus: A reference to the IOMMU. See ../iommu/iommu.txt for details. | 36 | - iommus: A reference to the IOMMU. See ../iommu/iommu.txt for details. |
@@ -68,3 +72,22 @@ Example for GM20B: | |||
68 | iommus = <&mc TEGRA_SWGROUP_GPU>; | 72 | iommus = <&mc TEGRA_SWGROUP_GPU>; |
69 | status = "disabled"; | 73 | status = "disabled"; |
70 | }; | 74 | }; |
75 | |||
76 | Example for GP10B: | ||
77 | |||
78 | gpu@17000000 { | ||
79 | compatible = "nvidia,gp10b"; | ||
80 | reg = <0x0 0x17000000 0x0 0x1000000>, | ||
81 | <0x0 0x18000000 0x0 0x1000000>; | ||
82 | interrupts = <GIC_SPI 70 IRQ_TYPE_LEVEL_HIGH | ||
83 | GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; | ||
84 | interrupt-names = "stall", "nonstall"; | ||
85 | clocks = <&bpmp TEGRA186_CLK_GPCCLK>, | ||
86 | <&bpmp TEGRA186_CLK_GPU>; | ||
87 | clock-names = "gpu", "pwr"; | ||
88 | resets = <&bpmp TEGRA186_RESET_GPU>; | ||
89 | reset-names = "gpu"; | ||
90 | power-domains = <&bpmp TEGRA186_POWER_DOMAIN_GPU>; | ||
91 | iommus = <&smmu TEGRA186_SID_GPU>; | ||
92 | status = "disabled"; | ||
93 | }; | ||
diff --git a/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt b/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt index 3e920ec5c4d3..9ce35af8507c 100644 --- a/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt +++ b/Documentation/devicetree/bindings/mtd/jedec,spi-nor.txt | |||
@@ -40,6 +40,7 @@ Required properties: | |||
40 | w25x80 | 40 | w25x80 |
41 | w25x32 | 41 | w25x32 |
42 | w25q32 | 42 | w25q32 |
43 | w25q64 | ||
43 | w25q32dw | 44 | w25q32dw |
44 | w25q80bl | 45 | w25q80bl |
45 | w25q128 | 46 | w25q128 |
diff --git a/Documentation/devicetree/bindings/net/marvell,prestera.txt b/Documentation/devicetree/bindings/net/marvell,prestera.txt index 5fbab29718e8..c329608fa887 100644 --- a/Documentation/devicetree/bindings/net/marvell,prestera.txt +++ b/Documentation/devicetree/bindings/net/marvell,prestera.txt | |||
@@ -32,19 +32,16 @@ DFX Server bindings | |||
32 | ------------------- | 32 | ------------------- |
33 | 33 | ||
34 | Required properties: | 34 | Required properties: |
35 | - compatible: must be "marvell,dfx-server" | 35 | - compatible: must be "marvell,dfx-server", "simple-bus" |
36 | - ranges: describes the address mapping of a memory-mapped bus. | ||
36 | - reg: address and length of the register set for the device. | 37 | - reg: address and length of the register set for the device. |
37 | 38 | ||
38 | Example: | 39 | Example: |
39 | 40 | ||
40 | dfx-registers { | 41 | dfx-server { |
41 | compatible = "simple-bus"; | 42 | compatible = "marvell,dfx-server", "simple-bus"; |
42 | #address-cells = <1>; | 43 | #address-cells = <1>; |
43 | #size-cells = <1>; | 44 | #size-cells = <1>; |
44 | ranges = <0 MBUS_ID(0x08, 0x00) 0 0x100000>; | 45 | ranges = <0 MBUS_ID(0x08, 0x00) 0 0x100000>; |
45 | 46 | reg = <MBUS_ID(0x08, 0x00) 0 0x100000>; | |
46 | dfx: dfx@0 { | ||
47 | compatible = "marvell,dfx-server"; | ||
48 | reg = <0 0x100000>; | ||
49 | }; | ||
50 | }; | 47 | }; |
diff --git a/Documentation/devicetree/bindings/usb/dwc2.txt b/Documentation/devicetree/bindings/usb/dwc2.txt index 6c7c2bce6d0c..00bea038639e 100644 --- a/Documentation/devicetree/bindings/usb/dwc2.txt +++ b/Documentation/devicetree/bindings/usb/dwc2.txt | |||
@@ -14,6 +14,10 @@ Required properties: | |||
14 | - "amlogic,meson-gxbb-usb": The DWC2 USB controller instance in Amlogic S905 SoCs; | 14 | - "amlogic,meson-gxbb-usb": The DWC2 USB controller instance in Amlogic S905 SoCs; |
15 | - "amcc,dwc-otg": The DWC2 USB controller instance in AMCC Canyonlands 460EX SoCs; | 15 | - "amcc,dwc-otg": The DWC2 USB controller instance in AMCC Canyonlands 460EX SoCs; |
16 | - snps,dwc2: A generic DWC2 USB controller with default parameters. | 16 | - snps,dwc2: A generic DWC2 USB controller with default parameters. |
17 | - "st,stm32f4x9-fsotg": The DWC2 USB FS/HS controller instance in STM32F4x9 SoCs | ||
18 | configured in FS mode; | ||
19 | - "st,stm32f4x9-hsotg": The DWC2 USB HS controller instance in STM32F4x9 SoCs | ||
20 | configured in HS mode; | ||
17 | - reg : Should contain 1 register range (address and length) | 21 | - reg : Should contain 1 register range (address and length) |
18 | - interrupts : Should contain 1 interrupt | 22 | - interrupts : Should contain 1 interrupt |
19 | - clocks: clock provider specifier | 23 | - clocks: clock provider specifier |
diff --git a/Documentation/devicetree/bindings/watchdog/cortina,gemini-watchdog.txt b/Documentation/devicetree/bindings/watchdog/cortina,gemini-watchdog.txt new file mode 100644 index 000000000000..bc4b865d178b --- /dev/null +++ b/Documentation/devicetree/bindings/watchdog/cortina,gemini-watchdog.txt | |||
@@ -0,0 +1,17 @@ | |||
1 | Cortina Systems Gemini SoC Watchdog | ||
2 | |||
3 | Required properties: | ||
4 | - compatible : must be "cortina,gemini-watchdog" | ||
5 | - reg : shall contain base register location and length | ||
6 | - interrupts : shall contain the interrupt for the watchdog | ||
7 | |||
8 | Optional properties: | ||
9 | - timeout-sec : the default watchdog timeout in seconds. | ||
10 | |||
11 | Example: | ||
12 | |||
13 | watchdog@41000000 { | ||
14 | compatible = "cortina,gemini-watchdog"; | ||
15 | reg = <0x41000000 0x1000>; | ||
16 | interrupts = <3 IRQ_TYPE_LEVEL_HIGH>; | ||
17 | }; | ||
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 011808490fed..9c5e1d944d1c 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -77,6 +77,7 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \ | |||
77 | bcm4708-asus-rt-ac56u.dtb \ | 77 | bcm4708-asus-rt-ac56u.dtb \ |
78 | bcm4708-asus-rt-ac68u.dtb \ | 78 | bcm4708-asus-rt-ac68u.dtb \ |
79 | bcm4708-buffalo-wzr-1750dhp.dtb \ | 79 | bcm4708-buffalo-wzr-1750dhp.dtb \ |
80 | bcm4708-linksys-ea6300-v1.dtb \ | ||
80 | bcm4708-luxul-xap-1510.dtb \ | 81 | bcm4708-luxul-xap-1510.dtb \ |
81 | bcm4708-luxul-xwc-1000.dtb \ | 82 | bcm4708-luxul-xwc-1000.dtb \ |
82 | bcm4708-netgear-r6250.dtb \ | 83 | bcm4708-netgear-r6250.dtb \ |
@@ -87,17 +88,21 @@ dtb-$(CONFIG_ARCH_BCM_5301X) += \ | |||
87 | bcm47081-buffalo-wzr-900dhp.dtb \ | 88 | bcm47081-buffalo-wzr-900dhp.dtb \ |
88 | bcm47081-luxul-xap-1410.dtb \ | 89 | bcm47081-luxul-xap-1410.dtb \ |
89 | bcm47081-luxul-xwr-1200.dtb \ | 90 | bcm47081-luxul-xwr-1200.dtb \ |
91 | bcm47081-tplink-archer-c5-v2.dtb \ | ||
90 | bcm4709-asus-rt-ac87u.dtb \ | 92 | bcm4709-asus-rt-ac87u.dtb \ |
91 | bcm4709-buffalo-wxr-1900dhp.dtb \ | 93 | bcm4709-buffalo-wxr-1900dhp.dtb \ |
94 | bcm4709-linksys-ea9200.dtb \ | ||
92 | bcm4709-netgear-r7000.dtb \ | 95 | bcm4709-netgear-r7000.dtb \ |
93 | bcm4709-netgear-r8000.dtb \ | 96 | bcm4709-netgear-r8000.dtb \ |
94 | bcm4709-tplink-archer-c9-v1.dtb \ | 97 | bcm4709-tplink-archer-c9-v1.dtb \ |
95 | bcm47094-dlink-dir-885l.dtb \ | 98 | bcm47094-dlink-dir-885l.dtb \ |
99 | bcm47094-linksys-panamera.dtb \ | ||
96 | bcm47094-luxul-xwr-3100.dtb \ | 100 | bcm47094-luxul-xwr-3100.dtb \ |
97 | bcm47094-netgear-r8500.dtb \ | 101 | bcm47094-netgear-r8500.dtb \ |
98 | bcm94708.dtb \ | 102 | bcm94708.dtb \ |
99 | bcm94709.dtb \ | 103 | bcm94709.dtb \ |
100 | bcm953012er.dtb \ | 104 | bcm953012er.dtb \ |
105 | bcm953012hr.dtb \ | ||
101 | bcm953012k.dtb | 106 | bcm953012k.dtb |
102 | dtb-$(CONFIG_ARCH_BCM_53573) += \ | 107 | dtb-$(CONFIG_ARCH_BCM_53573) += \ |
103 | bcm47189-tenda-ac9.dtb | 108 | bcm47189-tenda-ac9.dtb |
@@ -173,6 +178,12 @@ dtb-$(CONFIG_ARCH_EXYNOS5) += \ | |||
173 | exynos5440-sd5v1.dtb \ | 178 | exynos5440-sd5v1.dtb \ |
174 | exynos5440-ssdk5440.dtb \ | 179 | exynos5440-ssdk5440.dtb \ |
175 | exynos5800-peach-pi.dtb | 180 | exynos5800-peach-pi.dtb |
181 | dtb-$(CONFIG_ARCH_GEMINI) += \ | ||
182 | gemini-nas4220b.dtb \ | ||
183 | gemini-rut1xx.dtb \ | ||
184 | gemini-sq201.dtb \ | ||
185 | gemini-wbd111.dtb \ | ||
186 | gemini-wbd222.dtb | ||
176 | dtb-$(CONFIG_ARCH_HI3xxx) += \ | 187 | dtb-$(CONFIG_ARCH_HI3xxx) += \ |
177 | hi3620-hi4511.dtb | 188 | hi3620-hi4511.dtb |
178 | dtb-$(CONFIG_ARCH_HIGHBANK) += \ | 189 | dtb-$(CONFIG_ARCH_HIGHBANK) += \ |
@@ -352,6 +363,8 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ | |||
352 | imx6dl-gw551x.dtb \ | 363 | imx6dl-gw551x.dtb \ |
353 | imx6dl-gw552x.dtb \ | 364 | imx6dl-gw552x.dtb \ |
354 | imx6dl-gw553x.dtb \ | 365 | imx6dl-gw553x.dtb \ |
366 | imx6dl-gw5903.dtb \ | ||
367 | imx6dl-gw5904.dtb \ | ||
355 | imx6dl-hummingboard.dtb \ | 368 | imx6dl-hummingboard.dtb \ |
356 | imx6dl-icore.dtb \ | 369 | imx6dl-icore.dtb \ |
357 | imx6dl-icore-rqs.dtb \ | 370 | imx6dl-icore-rqs.dtb \ |
@@ -395,9 +408,13 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ | |||
395 | imx6q-gw551x.dtb \ | 408 | imx6q-gw551x.dtb \ |
396 | imx6q-gw552x.dtb \ | 409 | imx6q-gw552x.dtb \ |
397 | imx6q-gw553x.dtb \ | 410 | imx6q-gw553x.dtb \ |
411 | imx6q-gw5903.dtb \ | ||
412 | imx6q-gw5904.dtb \ | ||
398 | imx6q-h100.dtb \ | 413 | imx6q-h100.dtb \ |
399 | imx6q-hummingboard.dtb \ | 414 | imx6q-hummingboard.dtb \ |
400 | imx6q-icore.dtb \ | 415 | imx6q-icore.dtb \ |
416 | imx6q-icore-ofcap10.dtb \ | ||
417 | imx6q-icore-ofcap12.dtb \ | ||
401 | imx6q-icore-rqs.dtb \ | 418 | imx6q-icore-rqs.dtb \ |
402 | imx6q-marsboard.dtb \ | 419 | imx6q-marsboard.dtb \ |
403 | imx6q-mccmon6.dtb \ | 420 | imx6q-mccmon6.dtb \ |
@@ -425,9 +442,12 @@ dtb-$(CONFIG_SOC_IMX6Q) += \ | |||
425 | imx6q-utilite-pro.dtb \ | 442 | imx6q-utilite-pro.dtb \ |
426 | imx6q-wandboard.dtb \ | 443 | imx6q-wandboard.dtb \ |
427 | imx6q-wandboard-revb1.dtb \ | 444 | imx6q-wandboard-revb1.dtb \ |
445 | imx6q-zii-rdu2.dtb \ | ||
428 | imx6qp-nitrogen6_max.dtb \ | 446 | imx6qp-nitrogen6_max.dtb \ |
447 | imx6qp-nitrogen6_som2.dtb \ | ||
429 | imx6qp-sabreauto.dtb \ | 448 | imx6qp-sabreauto.dtb \ |
430 | imx6qp-sabresd.dtb | 449 | imx6qp-sabresd.dtb \ |
450 | imx6qp-zii-rdu2.dtb | ||
431 | dtb-$(CONFIG_SOC_IMX6SL) += \ | 451 | dtb-$(CONFIG_SOC_IMX6SL) += \ |
432 | imx6sl-evk.dtb \ | 452 | imx6sl-evk.dtb \ |
433 | imx6sl-warp.dtb | 453 | imx6sl-warp.dtb |
@@ -458,6 +478,7 @@ dtb-$(CONFIG_SOC_IMX7D) += \ | |||
458 | imx7d-nitrogen7.dtb \ | 478 | imx7d-nitrogen7.dtb \ |
459 | imx7d-sbc-imx7.dtb \ | 479 | imx7d-sbc-imx7.dtb \ |
460 | imx7d-sdb.dtb \ | 480 | imx7d-sdb.dtb \ |
481 | imx7d-sdb-sht11.dtb \ | ||
461 | imx7s-colibri-eval-v3.dtb \ | 482 | imx7s-colibri-eval-v3.dtb \ |
462 | imx7s-warp.dtb | 483 | imx7s-warp.dtb |
463 | dtb-$(CONFIG_SOC_LS1021A) += \ | 484 | dtb-$(CONFIG_SOC_LS1021A) += \ |
@@ -488,6 +509,10 @@ dtb-$(CONFIG_ARCH_MXS) += \ | |||
488 | imx28-cfa10056.dtb \ | 509 | imx28-cfa10056.dtb \ |
489 | imx28-cfa10057.dtb \ | 510 | imx28-cfa10057.dtb \ |
490 | imx28-cfa10058.dtb \ | 511 | imx28-cfa10058.dtb \ |
512 | imx28-duckbill-2-485.dtb \ | ||
513 | imx28-duckbill-2.dtb \ | ||
514 | imx28-duckbill-2-enocean.dtb \ | ||
515 | imx28-duckbill-2-spi.dtb \ | ||
491 | imx28-duckbill.dtb \ | 516 | imx28-duckbill.dtb \ |
492 | imx28-eukrea-mbmx283lc.dtb \ | 517 | imx28-eukrea-mbmx283lc.dtb \ |
493 | imx28-eukrea-mbmx287lc.dtb \ | 518 | imx28-eukrea-mbmx287lc.dtb \ |
@@ -673,6 +698,25 @@ dtb-$(CONFIG_ARCH_REALVIEW) += \ | |||
673 | arm-realview-eb-a9mp-bbrevd.dtb \ | 698 | arm-realview-eb-a9mp-bbrevd.dtb \ |
674 | arm-realview-pba8.dtb \ | 699 | arm-realview-pba8.dtb \ |
675 | arm-realview-pbx-a9.dtb | 700 | arm-realview-pbx-a9.dtb |
701 | dtb-$(CONFIG_ARCH_RENESAS) += \ | ||
702 | emev2-kzm9d.dtb \ | ||
703 | r7s72100-genmai.dtb \ | ||
704 | r7s72100-rskrza1.dtb \ | ||
705 | r8a73a4-ape6evm.dtb \ | ||
706 | r8a7740-armadillo800eva.dtb \ | ||
707 | r8a7743-sk-rzg1m.dtb \ | ||
708 | r8a7745-sk-rzg1e.dtb \ | ||
709 | r8a7778-bockw.dtb \ | ||
710 | r8a7779-marzen.dtb \ | ||
711 | r8a7790-lager.dtb \ | ||
712 | r8a7791-koelsch.dtb \ | ||
713 | r8a7791-porter.dtb \ | ||
714 | r8a7792-blanche.dtb \ | ||
715 | r8a7792-wheat.dtb \ | ||
716 | r8a7793-gose.dtb \ | ||
717 | r8a7794-alt.dtb \ | ||
718 | r8a7794-silk.dtb \ | ||
719 | sh73a0-kzm9g.dtb | ||
676 | dtb-$(CONFIG_ARCH_ROCKCHIP) += \ | 720 | dtb-$(CONFIG_ARCH_ROCKCHIP) += \ |
677 | rk1108-evb.dtb \ | 721 | rk1108-evb.dtb \ |
678 | rk3036-evb.dtb \ | 722 | rk3036-evb.dtb \ |
@@ -692,9 +736,11 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += \ | |||
692 | rk3288-firefly.dtb \ | 736 | rk3288-firefly.dtb \ |
693 | rk3288-firefly-reload.dtb \ | 737 | rk3288-firefly-reload.dtb \ |
694 | rk3288-miqi.dtb \ | 738 | rk3288-miqi.dtb \ |
739 | rk3288-phycore-rdk.dtb \ | ||
695 | rk3288-popmetal.dtb \ | 740 | rk3288-popmetal.dtb \ |
696 | rk3288-r89.dtb \ | 741 | rk3288-r89.dtb \ |
697 | rk3288-rock2-square.dtb \ | 742 | rk3288-rock2-square.dtb \ |
743 | rk3288-tinker.dtb \ | ||
698 | rk3288-veyron-brain.dtb \ | 744 | rk3288-veyron-brain.dtb \ |
699 | rk3288-veyron-jaq.dtb \ | 745 | rk3288-veyron-jaq.dtb \ |
700 | rk3288-veyron-jerry.dtb \ | 746 | rk3288-veyron-jerry.dtb \ |
@@ -713,25 +759,6 @@ dtb-$(CONFIG_ARCH_S5PV210) += \ | |||
713 | s5pv210-smdkc110.dtb \ | 759 | s5pv210-smdkc110.dtb \ |
714 | s5pv210-smdkv210.dtb \ | 760 | s5pv210-smdkv210.dtb \ |
715 | s5pv210-torbreck.dtb | 761 | s5pv210-torbreck.dtb |
716 | dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += \ | ||
717 | emev2-kzm9d.dtb \ | ||
718 | r7s72100-genmai.dtb \ | ||
719 | r7s72100-rskrza1.dtb \ | ||
720 | r8a73a4-ape6evm.dtb \ | ||
721 | r8a7740-armadillo800eva.dtb \ | ||
722 | r8a7743-sk-rzg1m.dtb \ | ||
723 | r8a7745-sk-rzg1e.dtb \ | ||
724 | r8a7778-bockw.dtb \ | ||
725 | r8a7779-marzen.dtb \ | ||
726 | r8a7790-lager.dtb \ | ||
727 | r8a7791-koelsch.dtb \ | ||
728 | r8a7791-porter.dtb \ | ||
729 | r8a7792-blanche.dtb \ | ||
730 | r8a7792-wheat.dtb \ | ||
731 | r8a7793-gose.dtb \ | ||
732 | r8a7794-alt.dtb \ | ||
733 | r8a7794-silk.dtb \ | ||
734 | sh73a0-kzm9g.dtb | ||
735 | dtb-$(CONFIG_ARCH_SOCFPGA) += \ | 762 | dtb-$(CONFIG_ARCH_SOCFPGA) += \ |
736 | socfpga_arria5_socdk.dtb \ | 763 | socfpga_arria5_socdk.dtb \ |
737 | socfpga_arria10_socdk_nand.dtb \ | 764 | socfpga_arria10_socdk_nand.dtb \ |
@@ -764,7 +791,8 @@ dtb-$(CONFIG_ARCH_STM32)+= \ | |||
764 | stm32f429-disco.dtb \ | 791 | stm32f429-disco.dtb \ |
765 | stm32f469-disco.dtb \ | 792 | stm32f469-disco.dtb \ |
766 | stm32429i-eval.dtb \ | 793 | stm32429i-eval.dtb \ |
767 | stm32746g-eval.dtb | 794 | stm32746g-eval.dtb \ |
795 | stm32h743i-eval.dtb | ||
768 | dtb-$(CONFIG_MACH_SUN4I) += \ | 796 | dtb-$(CONFIG_MACH_SUN4I) += \ |
769 | sun4i-a10-a1000.dtb \ | 797 | sun4i-a10-a1000.dtb \ |
770 | sun4i-a10-ba10-tvbox.dtb \ | 798 | sun4i-a10-ba10-tvbox.dtb \ |
@@ -868,6 +896,7 @@ dtb-$(CONFIG_MACH_SUN8I) += \ | |||
868 | sun8i-h3-beelink-x2.dtb \ | 896 | sun8i-h3-beelink-x2.dtb \ |
869 | sun8i-h3-nanopi-m1.dtb \ | 897 | sun8i-h3-nanopi-m1.dtb \ |
870 | sun8i-h3-nanopi-neo.dtb \ | 898 | sun8i-h3-nanopi-neo.dtb \ |
899 | sun8i-h3-nanopi-neo-air.dtb \ | ||
871 | sun8i-h3-orangepi-2.dtb \ | 900 | sun8i-h3-orangepi-2.dtb \ |
872 | sun8i-h3-orangepi-lite.dtb \ | 901 | sun8i-h3-orangepi-lite.dtb \ |
873 | sun8i-h3-orangepi-one.dtb \ | 902 | sun8i-h3-orangepi-one.dtb \ |
@@ -970,6 +999,8 @@ dtb-$(CONFIG_MACH_ARMADA_38X) += \ | |||
970 | armada-385-db-ap.dtb \ | 999 | armada-385-db-ap.dtb \ |
971 | armada-385-linksys-caiman.dtb \ | 1000 | armada-385-linksys-caiman.dtb \ |
972 | armada-385-linksys-cobra.dtb \ | 1001 | armada-385-linksys-cobra.dtb \ |
1002 | armada-385-linksys-shelby.dtb \ | ||
1003 | armada-385-synology-ds116.dtb \ | ||
973 | armada-385-turris-omnia.dtb \ | 1004 | armada-385-turris-omnia.dtb \ |
974 | armada-388-clearfog.dtb \ | 1005 | armada-388-clearfog.dtb \ |
975 | armada-388-clearfog-base.dtb \ | 1006 | armada-388-clearfog-base.dtb \ |
diff --git a/arch/arm/boot/dts/alpine.dtsi b/arch/arm/boot/dts/alpine.dtsi index d0eefc3b886c..731df7a8c4e6 100644 --- a/arch/arm/boot/dts/alpine.dtsi +++ b/arch/arm/boot/dts/alpine.dtsi | |||
@@ -41,28 +41,28 @@ | |||
41 | compatible = "arm,cortex-a15"; | 41 | compatible = "arm,cortex-a15"; |
42 | device_type = "cpu"; | 42 | device_type = "cpu"; |
43 | reg = <0>; | 43 | reg = <0>; |
44 | clock-frequency = <0>; /* Filled by loader */ | 44 | clock-frequency = <1700000000>; |
45 | }; | 45 | }; |
46 | 46 | ||
47 | cpu@1 { | 47 | cpu@1 { |
48 | compatible = "arm,cortex-a15"; | 48 | compatible = "arm,cortex-a15"; |
49 | device_type = "cpu"; | 49 | device_type = "cpu"; |
50 | reg = <1>; | 50 | reg = <1>; |
51 | clock-frequency = <0>; /* Filled by loader */ | 51 | clock-frequency = <1700000000>; |
52 | }; | 52 | }; |
53 | 53 | ||
54 | cpu@2 { | 54 | cpu@2 { |
55 | compatible = "arm,cortex-a15"; | 55 | compatible = "arm,cortex-a15"; |
56 | device_type = "cpu"; | 56 | device_type = "cpu"; |
57 | reg = <2>; | 57 | reg = <2>; |
58 | clock-frequency = <0>; /* Filled by loader */ | 58 | clock-frequency = <1700000000>; |
59 | }; | 59 | }; |
60 | 60 | ||
61 | cpu@3 { | 61 | cpu@3 { |
62 | compatible = "arm,cortex-a15"; | 62 | compatible = "arm,cortex-a15"; |
63 | device_type = "cpu"; | 63 | device_type = "cpu"; |
64 | reg = <3>; | 64 | reg = <3>; |
65 | clock-frequency = <0>; /* Filled by loader */ | 65 | clock-frequency = <1700000000>; |
66 | }; | 66 | }; |
67 | }; | 67 | }; |
68 | 68 | ||
@@ -81,7 +81,7 @@ | |||
81 | <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | 81 | <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, |
82 | <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | 82 | <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, |
83 | <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; | 83 | <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; |
84 | clock-frequency = <0>; /* Filled by loader */ | 84 | clock-frequency = <50000000>; |
85 | }; | 85 | }; |
86 | 86 | ||
87 | /* Interrupt Controller */ | 87 | /* Interrupt Controller */ |
@@ -120,26 +120,26 @@ | |||
120 | <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; | 120 | <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; |
121 | }; | 121 | }; |
122 | 122 | ||
123 | uart0:uart@fd883000 { | 123 | uart0: uart@fd883000 { |
124 | compatible = "ns16550a"; | 124 | compatible = "ns16550a"; |
125 | reg = <0x0 0xfd883000 0x0 0x1000>; | 125 | reg = <0x0 0xfd883000 0x0 0x1000>; |
126 | clock-frequency = <0>; /* Filled by loader */ | 126 | clock-frequency = <375000000>; |
127 | interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; | 127 | interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; |
128 | reg-shift = <2>; | 128 | reg-shift = <2>; |
129 | reg-io-width = <4>; | 129 | reg-io-width = <4>; |
130 | }; | 130 | }; |
131 | 131 | ||
132 | uart1:uart@0xfd884000 { | 132 | uart1: uart@fd884000 { |
133 | compatible = "ns16550a"; | 133 | compatible = "ns16550a"; |
134 | reg = <0x0 0xfd884000 0x0 0x1000>; | 134 | reg = <0x0 0xfd884000 0x0 0x1000>; |
135 | clock-frequency = <0>; /* Filled by loader */ | 135 | clock-frequency = <375000000>; |
136 | interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; | 136 | interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; |
137 | reg-shift = <2>; | 137 | reg-shift = <2>; |
138 | reg-io-width = <4>; | 138 | reg-io-width = <4>; |
139 | }; | 139 | }; |
140 | 140 | ||
141 | /* Internal PCIe Controller */ | 141 | /* Internal PCIe Controller */ |
142 | pcie-internal@0xfbc00000 { | 142 | pcie@fbc00000 { |
143 | compatible = "pci-host-ecam-generic"; | 143 | compatible = "pci-host-ecam-generic"; |
144 | device_type = "pci"; | 144 | device_type = "pci"; |
145 | #size-cells = <2>; | 145 | #size-cells = <2>; |
diff --git a/arch/arm/boot/dts/am335x-baltos-ir2110.dts b/arch/arm/boot/dts/am335x-baltos-ir2110.dts index 501c7527121b..75de1e723303 100644 --- a/arch/arm/boot/dts/am335x-baltos-ir2110.dts +++ b/arch/arm/boot/dts/am335x-baltos-ir2110.dts | |||
@@ -14,6 +14,7 @@ | |||
14 | /dts-v1/; | 14 | /dts-v1/; |
15 | 15 | ||
16 | #include "am335x-baltos.dtsi" | 16 | #include "am335x-baltos.dtsi" |
17 | #include "am335x-baltos-leds.dtsi" | ||
17 | 18 | ||
18 | / { | 19 | / { |
19 | model = "OnRISC Baltos iR 2110"; | 20 | model = "OnRISC Baltos iR 2110"; |
diff --git a/arch/arm/boot/dts/am335x-baltos-ir3220.dts b/arch/arm/boot/dts/am335x-baltos-ir3220.dts index 19f53b8569e1..46df1b22022c 100644 --- a/arch/arm/boot/dts/am335x-baltos-ir3220.dts +++ b/arch/arm/boot/dts/am335x-baltos-ir3220.dts | |||
@@ -14,6 +14,7 @@ | |||
14 | /dts-v1/; | 14 | /dts-v1/; |
15 | 15 | ||
16 | #include "am335x-baltos.dtsi" | 16 | #include "am335x-baltos.dtsi" |
17 | #include "am335x-baltos-leds.dtsi" | ||
17 | 18 | ||
18 | / { | 19 | / { |
19 | model = "OnRISC Baltos iR 3220"; | 20 | model = "OnRISC Baltos iR 3220"; |
diff --git a/arch/arm/boot/dts/am335x-baltos-ir5221.dts b/arch/arm/boot/dts/am335x-baltos-ir5221.dts index 2b9d7f4db23f..5d56355ba040 100644 --- a/arch/arm/boot/dts/am335x-baltos-ir5221.dts +++ b/arch/arm/boot/dts/am335x-baltos-ir5221.dts | |||
@@ -14,6 +14,7 @@ | |||
14 | /dts-v1/; | 14 | /dts-v1/; |
15 | 15 | ||
16 | #include "am335x-baltos.dtsi" | 16 | #include "am335x-baltos.dtsi" |
17 | #include "am335x-baltos-leds.dtsi" | ||
17 | 18 | ||
18 | / { | 19 | / { |
19 | model = "OnRISC Baltos iR 5221"; | 20 | model = "OnRISC Baltos iR 5221"; |
diff --git a/arch/arm/boot/dts/am335x-baltos-leds.dtsi b/arch/arm/boot/dts/am335x-baltos-leds.dtsi new file mode 100644 index 000000000000..3ab1767d5c13 --- /dev/null +++ b/arch/arm/boot/dts/am335x-baltos-leds.dtsi | |||
@@ -0,0 +1,50 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | /* | ||
10 | * VScom OnRISC | ||
11 | * http://www.vscom.de | ||
12 | */ | ||
13 | |||
14 | /*#include "am33xx.dtsi"*/ | ||
15 | |||
16 | / { | ||
17 | leds { | ||
18 | pinctrl-names = "default"; | ||
19 | pinctrl-0 = <&user_leds>; | ||
20 | |||
21 | compatible = "gpio-leds"; | ||
22 | |||
23 | power { | ||
24 | label = "onrisc:red:power"; | ||
25 | linux,default-trigger = "default-on"; | ||
26 | gpios = <&gpio3 0 GPIO_ACTIVE_LOW>; | ||
27 | default-state = "on"; | ||
28 | }; | ||
29 | wlan { | ||
30 | label = "onrisc:blue:wlan"; | ||
31 | gpios = <&gpio0 16 GPIO_ACTIVE_HIGH>; | ||
32 | default-state = "off"; | ||
33 | }; | ||
34 | app { | ||
35 | label = "onrisc:green:app"; | ||
36 | gpios = <&gpio0 17 GPIO_ACTIVE_HIGH>; | ||
37 | default-state = "off"; | ||
38 | }; | ||
39 | }; | ||
40 | }; | ||
41 | |||
42 | &am33xx_pinmux { | ||
43 | user_leds: pinmux_user_leds { | ||
44 | pinctrl-single,pins = < | ||
45 | AM33XX_IOPAD(0x908, PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* mii1_col.gpio3_0 PWR LED */ | ||
46 | AM33XX_IOPAD(0x91c, PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* mii1_txd3.gpio0_16 WLAN LED */ | ||
47 | AM33XX_IOPAD(0x920, PIN_OUTPUT_PULLDOWN | MUX_MODE7) /* mii1_txd2.gpio0_17 APP LED */ | ||
48 | >; | ||
49 | }; | ||
50 | }; | ||
diff --git a/arch/arm/boot/dts/am335x-boneblack.dts b/arch/arm/boot/dts/am335x-boneblack.dts index 77273df1a028..935ed17d22e4 100644 --- a/arch/arm/boot/dts/am335x-boneblack.dts +++ b/arch/arm/boot/dts/am335x-boneblack.dts | |||
@@ -15,3 +15,14 @@ | |||
15 | model = "TI AM335x BeagleBone Black"; | 15 | model = "TI AM335x BeagleBone Black"; |
16 | compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx"; | 16 | compatible = "ti,am335x-bone-black", "ti,am335x-bone", "ti,am33xx"; |
17 | }; | 17 | }; |
18 | |||
19 | &cpu0_opp_table { | ||
20 | /* | ||
21 | * All PG 2.0 silicon may not support 1GHz but some of the early | ||
22 | * BeagleBone Blacks have PG 2.0 silicon which is guaranteed | ||
23 | * to support 1GHz OPP so enable it for PG 2.0 on this board. | ||
24 | */ | ||
25 | oppnitro@1000000000 { | ||
26 | opp-supported-hw = <0x06 0x0100>; | ||
27 | }; | ||
28 | }; | ||
diff --git a/arch/arm/boot/dts/am335x-icev2.dts b/arch/arm/boot/dts/am335x-icev2.dts index a2ad076822db..f2005ecca74f 100644 --- a/arch/arm/boot/dts/am335x-icev2.dts +++ b/arch/arm/boot/dts/am335x-icev2.dts | |||
@@ -201,6 +201,69 @@ | |||
201 | AM33XX_IOPAD(0x938, PIN_OUTPUT_PULLUP | MUX_MODE1) /* (L16) gmii1_rxd2.uart3_txd */ | 201 | AM33XX_IOPAD(0x938, PIN_OUTPUT_PULLUP | MUX_MODE1) /* (L16) gmii1_rxd2.uart3_txd */ |
202 | >; | 202 | >; |
203 | }; | 203 | }; |
204 | |||
205 | cpsw_default: cpsw_default { | ||
206 | pinctrl-single,pins = < | ||
207 | /* Slave 1, RMII mode */ | ||
208 | AM33XX_IOPAD(0x90c, (PIN_INPUT_PULLUP | MUX_MODE1)) /* mii1_crs.rmii1_crs_dv */ | ||
209 | AM33XX_IOPAD(0x944, (PIN_INPUT_PULLUP | MUX_MODE0)) /* rmii1_refclk.rmii1_refclk */ | ||
210 | AM33XX_IOPAD(0x940, (PIN_INPUT_PULLUP | MUX_MODE1)) /* mii1_rxd0.rmii1_rxd0 */ | ||
211 | AM33XX_IOPAD(0x93c, (PIN_INPUT_PULLUP | MUX_MODE1)) /* mii1_rxd1.rmii1_rxd1 */ | ||
212 | AM33XX_IOPAD(0x910, (PIN_INPUT_PULLUP | MUX_MODE1)) /* mii1_rxerr.rmii1_rxerr */ | ||
213 | AM33XX_IOPAD(0x928, (PIN_OUTPUT_PULLDOWN | MUX_MODE1)) /* mii1_txd0.rmii1_txd0 */ | ||
214 | AM33XX_IOPAD(0x924, (PIN_OUTPUT_PULLDOWN | MUX_MODE1)) /* mii1_txd1.rmii1_txd1 */ | ||
215 | AM33XX_IOPAD(0x914, (PIN_OUTPUT_PULLDOWN | MUX_MODE1)) /* mii1_txen.rmii1_txen */ | ||
216 | /* Slave 2, RMII mode */ | ||
217 | AM33XX_IOPAD(0x870, (PIN_INPUT_PULLUP | MUX_MODE3)) /* gpmc_wait0.rmii2_crs_dv */ | ||
218 | AM33XX_IOPAD(0x908, (PIN_INPUT_PULLUP | MUX_MODE1)) /* mii1_col.rmii2_refclk */ | ||
219 | AM33XX_IOPAD(0x86c, (PIN_INPUT_PULLUP | MUX_MODE3)) /* gpmc_a11.rmii2_rxd0 */ | ||
220 | AM33XX_IOPAD(0x868, (PIN_INPUT_PULLUP | MUX_MODE3)) /* gpmc_a10.rmii2_rxd1 */ | ||
221 | AM33XX_IOPAD(0x874, (PIN_INPUT_PULLUP | MUX_MODE3)) /* gpmc_wpn.rmii2_rxerr */ | ||
222 | AM33XX_IOPAD(0x854, (PIN_OUTPUT_PULLDOWN | MUX_MODE3)) /* gpmc_a5.rmii2_txd0 */ | ||
223 | AM33XX_IOPAD(0x850, (PIN_OUTPUT_PULLDOWN | MUX_MODE3)) /* gpmc_a4.rmii2_txd1 */ | ||
224 | AM33XX_IOPAD(0x840, (PIN_OUTPUT_PULLDOWN | MUX_MODE3)) /* gpmc_a0.rmii2_txen */ | ||
225 | >; | ||
226 | }; | ||
227 | |||
228 | cpsw_sleep: cpsw_sleep { | ||
229 | pinctrl-single,pins = < | ||
230 | /* Slave 1 reset value */ | ||
231 | AM33XX_IOPAD(0x90c, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
232 | AM33XX_IOPAD(0x944, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
233 | AM33XX_IOPAD(0x940, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
234 | AM33XX_IOPAD(0x93c, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
235 | AM33XX_IOPAD(0x910, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
236 | AM33XX_IOPAD(0x928, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
237 | AM33XX_IOPAD(0x924, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
238 | AM33XX_IOPAD(0x914, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
239 | |||
240 | /* Slave 2 reset value */ | ||
241 | AM33XX_IOPAD(0x870, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
242 | AM33XX_IOPAD(0x908, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
243 | AM33XX_IOPAD(0x86c, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
244 | AM33XX_IOPAD(0x868, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
245 | AM33XX_IOPAD(0x874, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
246 | AM33XX_IOPAD(0x854, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
247 | AM33XX_IOPAD(0x850, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
248 | AM33XX_IOPAD(0x840, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
249 | >; | ||
250 | }; | ||
251 | |||
252 | davinci_mdio_default: davinci_mdio_default { | ||
253 | pinctrl-single,pins = < | ||
254 | /* MDIO */ | ||
255 | AM33XX_IOPAD(0x948, (PIN_INPUT_PULLUP | SLEWCTRL_FAST | MUX_MODE0)) /* mdio_data.mdio_data */ | ||
256 | AM33XX_IOPAD(0x94c, (PIN_OUTPUT_PULLUP | MUX_MODE0)) /* mdio_clk.mdio_clk */ | ||
257 | >; | ||
258 | }; | ||
259 | |||
260 | davinci_mdio_sleep: davinci_mdio_sleep { | ||
261 | pinctrl-single,pins = < | ||
262 | /* MDIO reset value */ | ||
263 | AM33XX_IOPAD(0x948, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
264 | AM33XX_IOPAD(0x94c, (PIN_INPUT_PULLDOWN | MUX_MODE7)) | ||
265 | >; | ||
266 | }; | ||
204 | }; | 267 | }; |
205 | 268 | ||
206 | &i2c0 { | 269 | &i2c0 { |
@@ -245,6 +308,39 @@ | |||
245 | spi-max-frequency = <1000000>; | 308 | spi-max-frequency = <1000000>; |
246 | spi-cpol; | 309 | spi-cpol; |
247 | }; | 310 | }; |
311 | |||
312 | spi_nor: flash@0 { | ||
313 | #address-cells = <1>; | ||
314 | #size-cells = <1>; | ||
315 | compatible = "winbond,w25q64", "jedec,spi-nor"; | ||
316 | spi-max-frequency = <80000000>; | ||
317 | m25p,fast-read; | ||
318 | reg = <0>; | ||
319 | |||
320 | partition@0 { | ||
321 | label = "u-boot-spl"; | ||
322 | reg = <0x0 0x80000>; | ||
323 | read-only; | ||
324 | }; | ||
325 | |||
326 | partition@1 { | ||
327 | label = "u-boot"; | ||
328 | reg = <0x80000 0x100000>; | ||
329 | read-only; | ||
330 | }; | ||
331 | |||
332 | partition@2 { | ||
333 | label = "u-boot-env"; | ||
334 | reg = <0x180000 0x20000>; | ||
335 | read-only; | ||
336 | }; | ||
337 | |||
338 | partition@3 { | ||
339 | label = "misc"; | ||
340 | reg = <0x1A0000 0x660000>; | ||
341 | }; | ||
342 | }; | ||
343 | |||
248 | }; | 344 | }; |
249 | 345 | ||
250 | &tscadc { | 346 | &tscadc { |
@@ -350,3 +446,61 @@ | |||
350 | pinctrl-0 = <&uart3_pins_default>; | 446 | pinctrl-0 = <&uart3_pins_default>; |
351 | status = "okay"; | 447 | status = "okay"; |
352 | }; | 448 | }; |
449 | |||
450 | &gpio3 { | ||
451 | p4 { | ||
452 | gpio-hog; | ||
453 | gpios = <4 GPIO_ACTIVE_HIGH>; | ||
454 | output-high; | ||
455 | line-name = "PR1_MII_CTRL"; | ||
456 | }; | ||
457 | |||
458 | p10 { | ||
459 | gpio-hog; | ||
460 | gpios = <10 GPIO_ACTIVE_HIGH>; | ||
461 | /* ETH1 mux: Low for MII-PRU, high for RMII-CPSW */ | ||
462 | output-high; | ||
463 | line-name = "MUX_MII_CTL1"; | ||
464 | }; | ||
465 | }; | ||
466 | |||
467 | &cpsw_emac0 { | ||
468 | phy-handle = <ðphy0>; | ||
469 | phy-mode = "rmii"; | ||
470 | dual_emac_res_vlan = <1>; | ||
471 | }; | ||
472 | |||
473 | &cpsw_emac1 { | ||
474 | phy-handle = <ðphy1>; | ||
475 | phy-mode = "rmii"; | ||
476 | dual_emac_res_vlan = <2>; | ||
477 | }; | ||
478 | |||
479 | &mac { | ||
480 | pinctrl-names = "default", "sleep"; | ||
481 | pinctrl-0 = <&cpsw_default>; | ||
482 | pinctrl-1 = <&cpsw_sleep>; | ||
483 | status = "okay"; | ||
484 | dual_emac; | ||
485 | }; | ||
486 | |||
487 | &phy_sel { | ||
488 | rmii-clock-ext; | ||
489 | }; | ||
490 | |||
491 | &davinci_mdio { | ||
492 | pinctrl-names = "default", "sleep"; | ||
493 | pinctrl-0 = <&davinci_mdio_default>; | ||
494 | pinctrl-1 = <&davinci_mdio_sleep>; | ||
495 | status = "okay"; | ||
496 | reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>; | ||
497 | reset-delay-us = <2>; /* PHY datasheet states 1uS min */ | ||
498 | |||
499 | ethphy0: ethernet-phy@1 { | ||
500 | reg = <1>; | ||
501 | }; | ||
502 | |||
503 | ethphy1: ethernet-phy@3 { | ||
504 | reg = <3>; | ||
505 | }; | ||
506 | }; | ||
diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi index 9e96d60976b7..9e242943dcec 100644 --- a/arch/arm/boot/dts/am33xx.dtsi +++ b/arch/arm/boot/dts/am33xx.dtsi | |||
@@ -46,19 +46,7 @@ | |||
46 | device_type = "cpu"; | 46 | device_type = "cpu"; |
47 | reg = <0>; | 47 | reg = <0>; |
48 | 48 | ||
49 | /* | 49 | operating-points-v2 = <&cpu0_opp_table>; |
50 | * To consider voltage drop between PMIC and SoC, | ||
51 | * tolerance value is reduced to 2% from 4% and | ||
52 | * voltage value is increased as a precaution. | ||
53 | */ | ||
54 | operating-points = < | ||
55 | /* kHz uV */ | ||
56 | 720000 1285000 | ||
57 | 600000 1225000 | ||
58 | 500000 1125000 | ||
59 | 275000 1125000 | ||
60 | >; | ||
61 | voltage-tolerance = <2>; /* 2 percentage */ | ||
62 | 50 | ||
63 | clocks = <&dpll_mpu_ck>; | 51 | clocks = <&dpll_mpu_ck>; |
64 | clock-names = "cpu"; | 52 | clock-names = "cpu"; |
@@ -67,6 +55,79 @@ | |||
67 | }; | 55 | }; |
68 | }; | 56 | }; |
69 | 57 | ||
58 | cpu0_opp_table: opp-table { | ||
59 | compatible = "operating-points-v2-ti-cpu"; | ||
60 | syscon = <&scm_conf>; | ||
61 | |||
62 | /* | ||
63 | * The three following nodes are marked with opp-suspend | ||
64 | * because the can not be enabled simultaneously on a | ||
65 | * single SoC. | ||
66 | */ | ||
67 | opp50@300000000 { | ||
68 | opp-hz = /bits/ 64 <300000000>; | ||
69 | opp-microvolt = <950000 931000 969000>; | ||
70 | opp-supported-hw = <0x06 0x0010>; | ||
71 | opp-suspend; | ||
72 | }; | ||
73 | |||
74 | opp100@275000000 { | ||
75 | opp-hz = /bits/ 64 <275000000>; | ||
76 | opp-microvolt = <1100000 1078000 1122000>; | ||
77 | opp-supported-hw = <0x01 0x00FF>; | ||
78 | opp-suspend; | ||
79 | }; | ||
80 | |||
81 | opp100@300000000 { | ||
82 | opp-hz = /bits/ 64 <300000000>; | ||
83 | opp-microvolt = <1100000 1078000 1122000>; | ||
84 | opp-supported-hw = <0x06 0x0020>; | ||
85 | opp-suspend; | ||
86 | }; | ||
87 | |||
88 | opp100@500000000 { | ||
89 | opp-hz = /bits/ 64 <500000000>; | ||
90 | opp-microvolt = <1100000 1078000 1122000>; | ||
91 | opp-supported-hw = <0x01 0xFFFF>; | ||
92 | }; | ||
93 | |||
94 | opp100@600000000 { | ||
95 | opp-hz = /bits/ 64 <600000000>; | ||
96 | opp-microvolt = <1100000 1078000 1122000>; | ||
97 | opp-supported-hw = <0x06 0x0040>; | ||
98 | }; | ||
99 | |||
100 | opp120@600000000 { | ||
101 | opp-hz = /bits/ 64 <600000000>; | ||
102 | opp-microvolt = <1200000 1176000 1224000>; | ||
103 | opp-supported-hw = <0x01 0xFFFF>; | ||
104 | }; | ||
105 | |||
106 | opp120@720000000 { | ||
107 | opp-hz = /bits/ 64 <720000000>; | ||
108 | opp-microvolt = <1200000 1176000 1224000>; | ||
109 | opp-supported-hw = <0x06 0x0080>; | ||
110 | }; | ||
111 | |||
112 | oppturbo@720000000 { | ||
113 | opp-hz = /bits/ 64 <720000000>; | ||
114 | opp-microvolt = <1260000 1234800 1285200>; | ||
115 | opp-supported-hw = <0x01 0xFFFF>; | ||
116 | }; | ||
117 | |||
118 | oppturbo@800000000 { | ||
119 | opp-hz = /bits/ 64 <800000000>; | ||
120 | opp-microvolt = <1260000 1234800 1285200>; | ||
121 | opp-supported-hw = <0x06 0x0100>; | ||
122 | }; | ||
123 | |||
124 | oppnitro@1000000000 { | ||
125 | opp-hz = /bits/ 64 <1000000000>; | ||
126 | opp-microvolt = <1325000 1298500 1351500>; | ||
127 | opp-supported-hw = <0x04 0x0200>; | ||
128 | }; | ||
129 | }; | ||
130 | |||
70 | pmu { | 131 | pmu { |
71 | compatible = "arm,cortex-a8-pmu"; | 132 | compatible = "arm,cortex-a8-pmu"; |
72 | interrupts = <3>; | 133 | interrupts = <3>; |
diff --git a/arch/arm/boot/dts/am3517.dtsi b/arch/arm/boot/dts/am3517.dtsi index 9fe545dbfa89..00da3f2c4072 100644 --- a/arch/arm/boot/dts/am3517.dtsi +++ b/arch/arm/boot/dts/am3517.dtsi | |||
@@ -13,6 +13,7 @@ | |||
13 | / { | 13 | / { |
14 | aliases { | 14 | aliases { |
15 | serial3 = &uart4; | 15 | serial3 = &uart4; |
16 | can = &hecc; | ||
16 | }; | 17 | }; |
17 | 18 | ||
18 | ocp@68000000 { | 19 | ocp@68000000 { |
@@ -72,6 +73,17 @@ | |||
72 | pinctrl-single,register-width = <16>; | 73 | pinctrl-single,register-width = <16>; |
73 | pinctrl-single,function-mask = <0xff1f>; | 74 | pinctrl-single,function-mask = <0xff1f>; |
74 | }; | 75 | }; |
76 | |||
77 | hecc: can@5c050000 { | ||
78 | compatible = "ti,am3517-hecc"; | ||
79 | status = "disabled"; | ||
80 | reg = <0x5c050000 0x80>, | ||
81 | <0x5c053000 0x180>, | ||
82 | <0x5c052000 0x200>; | ||
83 | reg-names = "hecc", "hecc-ram", "mbx"; | ||
84 | interrupts = <24>; | ||
85 | clocks = <&hecc_ck>; | ||
86 | }; | ||
75 | }; | 87 | }; |
76 | }; | 88 | }; |
77 | 89 | ||
diff --git a/arch/arm/boot/dts/am4372.dtsi b/arch/arm/boot/dts/am4372.dtsi index 97fcaf415de1..176e09e9a45e 100644 --- a/arch/arm/boot/dts/am4372.dtsi +++ b/arch/arm/boot/dts/am4372.dtsi | |||
@@ -50,15 +50,14 @@ | |||
50 | clock-names = "cpu"; | 50 | clock-names = "cpu"; |
51 | 51 | ||
52 | operating-points-v2 = <&cpu0_opp_table>; | 52 | operating-points-v2 = <&cpu0_opp_table>; |
53 | ti,syscon-efuse = <&scm_conf 0x610 0x3f 0>; | ||
54 | ti,syscon-rev = <&scm_conf 0x600>; | ||
55 | 53 | ||
56 | clock-latency = <300000>; /* From omap-cpufreq driver */ | 54 | clock-latency = <300000>; /* From omap-cpufreq driver */ |
57 | }; | 55 | }; |
58 | }; | 56 | }; |
59 | 57 | ||
60 | cpu0_opp_table: opp_table0 { | 58 | cpu0_opp_table: opp-table { |
61 | compatible = "operating-points-v2"; | 59 | compatible = "operating-points-v2-ti-cpu"; |
60 | syscon = <&scm_conf>; | ||
62 | 61 | ||
63 | opp50@300000000 { | 62 | opp50@300000000 { |
64 | opp-hz = /bits/ 64 <300000000>; | 63 | opp-hz = /bits/ 64 <300000000>; |
diff --git a/arch/arm/boot/dts/am437x-gp-evm.dts b/arch/arm/boot/dts/am437x-gp-evm.dts index a4f31739057f..397e98b7e246 100644 --- a/arch/arm/boot/dts/am437x-gp-evm.dts +++ b/arch/arm/boot/dts/am437x-gp-evm.dts | |||
@@ -501,6 +501,21 @@ | |||
501 | AM4372_IOPAD(0x884, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn2.gpio1_31 */ | 501 | AM4372_IOPAD(0x884, PIN_INPUT_PULLDOWN | MUX_MODE7) /* gpmc_csn2.gpio1_31 */ |
502 | >; | 502 | >; |
503 | }; | 503 | }; |
504 | |||
505 | uart0_pins_default: uart0_pins_default { | ||
506 | pinctrl-single,pins = < | ||
507 | AM4372_IOPAD(0x968, PIN_INPUT | MUX_MODE0) /* uart0_ctsn.uart0_ctsn */ | ||
508 | AM4372_IOPAD(0x96C, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_rtsn.uart0_rtsn */ | ||
509 | AM4372_IOPAD(0x970, PIN_INPUT_PULLUP | MUX_MODE0) /* uart0_rxd.uart0_rxd */ | ||
510 | AM4372_IOPAD(0x974, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* uart0_txd.uart0_txd */ | ||
511 | >; | ||
512 | }; | ||
513 | }; | ||
514 | |||
515 | &uart0 { | ||
516 | status = "okay"; | ||
517 | pinctrl-names = "default"; | ||
518 | pinctrl-0 = <&uart0_pins_default>; | ||
504 | }; | 519 | }; |
505 | 520 | ||
506 | &i2c0 { | 521 | &i2c0 { |
diff --git a/arch/arm/boot/dts/am57xx-idk-common.dtsi b/arch/arm/boot/dts/am57xx-idk-common.dtsi index e5ac1d81d15c..c536b2f5389f 100644 --- a/arch/arm/boot/dts/am57xx-idk-common.dtsi +++ b/arch/arm/boot/dts/am57xx-idk-common.dtsi | |||
@@ -101,6 +101,22 @@ | |||
101 | }; | 101 | }; |
102 | }; | 102 | }; |
103 | 103 | ||
104 | &dra7_pmx_core { | ||
105 | dcan1_pins_default: dcan1_pins_default { | ||
106 | pinctrl-single,pins = < | ||
107 | DRA7XX_CORE_IOPAD(0x37d0, PIN_OUTPUT_PULLUP | MUX_MODE0) /* dcan1_tx */ | ||
108 | DRA7XX_CORE_IOPAD(0x37d4, PIN_INPUT_PULLUP | MUX_MODE0) /* dcan1_rx */ | ||
109 | >; | ||
110 | }; | ||
111 | |||
112 | dcan1_pins_sleep: dcan1_pins_sleep { | ||
113 | pinctrl-single,pins = < | ||
114 | DRA7XX_CORE_IOPAD(0x37d0, MUX_MODE15 | PULL_UP) /* dcan1_tx.off */ | ||
115 | DRA7XX_CORE_IOPAD(0x37d4, MUX_MODE15 | PULL_UP) /* dcan1_rx.off */ | ||
116 | >; | ||
117 | }; | ||
118 | }; | ||
119 | |||
104 | &i2c1 { | 120 | &i2c1 { |
105 | status = "okay"; | 121 | status = "okay"; |
106 | clock-frequency = <400000>; | 122 | clock-frequency = <400000>; |
@@ -391,6 +407,14 @@ | |||
391 | max-frequency = <96000000>; | 407 | max-frequency = <96000000>; |
392 | }; | 408 | }; |
393 | 409 | ||
410 | &dcan1 { | ||
411 | status = "okay"; | ||
412 | pinctrl-names = "default", "sleep", "active"; | ||
413 | pinctrl-0 = <&dcan1_pins_sleep>; | ||
414 | pinctrl-1 = <&dcan1_pins_sleep>; | ||
415 | pinctrl-2 = <&dcan1_pins_default>; | ||
416 | }; | ||
417 | |||
394 | &qspi { | 418 | &qspi { |
395 | status = "okay"; | 419 | status = "okay"; |
396 | 420 | ||
diff --git a/arch/arm/boot/dts/armada-385-linksys-shelby.dts b/arch/arm/boot/dts/armada-385-linksys-shelby.dts new file mode 100644 index 000000000000..c7a8ddd7f9a5 --- /dev/null +++ b/arch/arm/boot/dts/armada-385-linksys-shelby.dts | |||
@@ -0,0 +1,114 @@ | |||
1 | /* | ||
2 | * Device Tree file for the Linksys WRT1900ACS (Shelby) | ||
3 | * | ||
4 | * Copyright (C) 2015 Imre Kaloz <kaloz@openwrt.org> | ||
5 | * | ||
6 | * | ||
7 | * This file is dual-licensed: you can use it either under the terms | ||
8 | * of the GPL or the X11 license, at your option. Note that this dual | ||
9 | * licensing only applies to this file, and not this project as a | ||
10 | * whole. | ||
11 | * | ||
12 | * a) This file is licensed under the terms of the GNU General Public | ||
13 | * License version 2. This program is licensed "as is" without | ||
14 | * any warranty of any kind, whether express or implied. | ||
15 | * | ||
16 | * Or, alternatively, | ||
17 | * | ||
18 | * b) Permission is hereby granted, free of charge, to any person | ||
19 | * obtaining a copy of this software and associated documentation | ||
20 | * files (the "Software"), to deal in the Software without | ||
21 | * restriction, including without limitation the rights to use, | ||
22 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
23 | * sell copies of the Software, and to permit persons to whom the | ||
24 | * Software is furnished to do so, subject to the following | ||
25 | * conditions: | ||
26 | * | ||
27 | * The above copyright notice and this permission notice shall be | ||
28 | * included in all copies or substantial portions of the Software. | ||
29 | * | ||
30 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
31 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
32 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
33 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
34 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
35 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
36 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
37 | * OTHER DEALINGS IN THE SOFTWARE. | ||
38 | */ | ||
39 | |||
40 | /dts-v1/; | ||
41 | #include "armada-385-linksys.dtsi" | ||
42 | |||
43 | / { | ||
44 | model = "Linksys WRT1900ACS"; | ||
45 | compatible = "linksys,shelby", "linksys,armada385", "marvell,armada385", | ||
46 | "marvell,armada380"; | ||
47 | |||
48 | soc { | ||
49 | internal-regs{ | ||
50 | i2c@11000 { | ||
51 | |||
52 | pca9635@68 { | ||
53 | #address-cells = <1>; | ||
54 | #size-cells = <0>; | ||
55 | |||
56 | wan_amber@0 { | ||
57 | label = "shelby:amber:wan"; | ||
58 | reg = <0x0>; | ||
59 | }; | ||
60 | |||
61 | wan_white@1 { | ||
62 | label = "shelby:white:wan"; | ||
63 | reg = <0x1>; | ||
64 | }; | ||
65 | |||
66 | wlan_2g@2 { | ||
67 | label = "shelby:white:wlan_2g"; | ||
68 | reg = <0x2>; | ||
69 | }; | ||
70 | |||
71 | wlan_5g@3 { | ||
72 | label = "shelby:white:wlan_5g"; | ||
73 | reg = <0x3>; | ||
74 | }; | ||
75 | |||
76 | usb2@5 { | ||
77 | label = "shelby:white:usb2"; | ||
78 | reg = <0x5>; | ||
79 | }; | ||
80 | |||
81 | usb3_1@6 { | ||
82 | label = "shelby:white:usb3_1"; | ||
83 | reg = <0x6>; | ||
84 | }; | ||
85 | |||
86 | usb3_2@7 { | ||
87 | label = "shelby:white:usb3_2"; | ||
88 | reg = <0x7>; | ||
89 | }; | ||
90 | |||
91 | wps_white@8 { | ||
92 | label = "shelby:white:wps"; | ||
93 | reg = <0x8>; | ||
94 | }; | ||
95 | |||
96 | wps_amber@9 { | ||
97 | label = "shelby:amber:wps"; | ||
98 | reg = <0x9>; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
102 | }; | ||
103 | }; | ||
104 | |||
105 | gpio-leds { | ||
106 | power { | ||
107 | label = "shelby:white:power"; | ||
108 | }; | ||
109 | |||
110 | sata { | ||
111 | label = "shelby:white:sata"; | ||
112 | }; | ||
113 | }; | ||
114 | }; | ||
diff --git a/arch/arm/boot/dts/armada-385-linksys.dtsi b/arch/arm/boot/dts/armada-385-linksys.dtsi index df47bf1ea5eb..2306c45685b1 100644 --- a/arch/arm/boot/dts/armada-385-linksys.dtsi +++ b/arch/arm/boot/dts/armada-385-linksys.dtsi | |||
@@ -59,7 +59,8 @@ | |||
59 | ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 | 59 | ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 |
60 | MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000 | 60 | MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000 |
61 | MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000 | 61 | MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000 |
62 | MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000>; | 62 | MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000 |
63 | MBUS_ID(0x0c, 0x04) 0 0xf1200000 0x100000>; | ||
63 | 64 | ||
64 | internal-regs { | 65 | internal-regs { |
65 | i2c@11000 { | 66 | i2c@11000 { |
@@ -88,6 +89,9 @@ | |||
88 | ethernet@70000 { | 89 | ethernet@70000 { |
89 | status = "okay"; | 90 | status = "okay"; |
90 | phy-mode = "rgmii-id"; | 91 | phy-mode = "rgmii-id"; |
92 | buffer-manager = <&bm>; | ||
93 | bm,pool-long = <2>; | ||
94 | bm,pool-short = <3>; | ||
91 | fixed-link { | 95 | fixed-link { |
92 | speed = <1000>; | 96 | speed = <1000>; |
93 | full-duplex; | 97 | full-duplex; |
@@ -97,6 +101,9 @@ | |||
97 | ethernet@34000 { | 101 | ethernet@34000 { |
98 | status = "okay"; | 102 | status = "okay"; |
99 | phy-mode = "sgmii"; | 103 | phy-mode = "sgmii"; |
104 | buffer-manager = <&bm>; | ||
105 | bm,pool-long = <0>; | ||
106 | bm,pool-short = <1>; | ||
100 | fixed-link { | 107 | fixed-link { |
101 | speed = <1000>; | 108 | speed = <1000>; |
102 | full-duplex; | 109 | full-duplex; |
@@ -159,6 +166,10 @@ | |||
159 | status = "okay"; | 166 | status = "okay"; |
160 | }; | 167 | }; |
161 | 168 | ||
169 | bm@c8000 { | ||
170 | status = "okay"; | ||
171 | }; | ||
172 | |||
162 | /* USB part of the eSATA/USB 2.0 port */ | 173 | /* USB part of the eSATA/USB 2.0 port */ |
163 | usb@58000 { | 174 | usb@58000 { |
164 | status = "okay"; | 175 | status = "okay"; |
@@ -241,6 +252,10 @@ | |||
241 | }; | 252 | }; |
242 | }; | 253 | }; |
243 | 254 | ||
255 | bm-bppi { | ||
256 | status = "okay"; | ||
257 | }; | ||
258 | |||
244 | pcie-controller { | 259 | pcie-controller { |
245 | status = "okay"; | 260 | status = "okay"; |
246 | 261 | ||
@@ -305,6 +320,7 @@ | |||
305 | sata { | 320 | sata { |
306 | gpios = <&gpio1 22 GPIO_ACTIVE_LOW>; | 321 | gpios = <&gpio1 22 GPIO_ACTIVE_LOW>; |
307 | default-state = "off"; | 322 | default-state = "off"; |
323 | linux,default-trigger = "disk-activity"; | ||
308 | }; | 324 | }; |
309 | }; | 325 | }; |
310 | 326 | ||
diff --git a/arch/arm/boot/dts/armada-385-synology-ds116.dts b/arch/arm/boot/dts/armada-385-synology-ds116.dts new file mode 100644 index 000000000000..31510eb56f10 --- /dev/null +++ b/arch/arm/boot/dts/armada-385-synology-ds116.dts | |||
@@ -0,0 +1,321 @@ | |||
1 | /* | ||
2 | * Device Tree file for Synology DS116 NAS | ||
3 | * | ||
4 | * Copyright (C) 2017 Willy Tarreau <w@1wt.eu> | ||
5 | * | ||
6 | * This file is dual-licensed: you can use it either under the terms | ||
7 | * of the GPL or the X11 license, at your option. Note that this dual | ||
8 | * licensing only applies to this file, and not this project as a | ||
9 | * whole. | ||
10 | * | ||
11 | * a) This file is licensed under the terms of the GNU General Public | ||
12 | * License version 2. This program is licensed "as is" without | ||
13 | * any warranty of any kind, whether express or implied. | ||
14 | * | ||
15 | * Or, alternatively, | ||
16 | * | ||
17 | * b) Permission is hereby granted, free of charge, to any person | ||
18 | * obtaining a copy of this software and associated documentation | ||
19 | * files (the "Software"), to deal in the Software without | ||
20 | * restriction, including without limitation the rights to use, | ||
21 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
22 | * sell copies of the Software, and to permit persons to whom the | ||
23 | * Software is furnished to do so, subject to the following | ||
24 | * conditions: | ||
25 | * | ||
26 | * The above copyright notice and this permission notice shall be | ||
27 | * included in all copies or substantial portions of the Software. | ||
28 | * | ||
29 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
30 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
31 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
32 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
33 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
34 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
35 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
36 | * OTHER DEALINGS IN THE SOFTWARE. | ||
37 | */ | ||
38 | |||
39 | /dts-v1/; | ||
40 | #include "armada-385.dtsi" | ||
41 | #include <dt-bindings/gpio/gpio.h> | ||
42 | |||
43 | / { | ||
44 | model = "Synology DS116"; | ||
45 | compatible = "marvell,a385-gp", "marvell,armada385", "marvell,armada380"; | ||
46 | |||
47 | chosen { | ||
48 | stdout-path = "serial0:115200n8"; | ||
49 | }; | ||
50 | |||
51 | memory { | ||
52 | device_type = "memory"; | ||
53 | reg = <0x00000000 0x40000000>; /* 1 GB */ | ||
54 | }; | ||
55 | |||
56 | soc { | ||
57 | ranges = <MBUS_ID(0xf0, 0x01) 0 0xf1000000 0x100000 | ||
58 | MBUS_ID(0x01, 0x1d) 0 0xfff00000 0x100000 | ||
59 | MBUS_ID(0x09, 0x19) 0 0xf1100000 0x10000 | ||
60 | MBUS_ID(0x09, 0x15) 0 0xf1110000 0x10000 | ||
61 | MBUS_ID(0x0c, 0x04) 0 0xf1200000 0x100000>; | ||
62 | |||
63 | internal-regs { | ||
64 | i2c@11000 { | ||
65 | pinctrl-names = "default"; | ||
66 | pinctrl-0 = <&i2c0_pins>; | ||
67 | status = "okay"; | ||
68 | clock-frequency = <100000>; | ||
69 | |||
70 | eeprom@57 { | ||
71 | compatible = "atmel,24c64"; | ||
72 | reg = <0x57>; | ||
73 | }; | ||
74 | }; | ||
75 | |||
76 | serial@12000 { | ||
77 | pinctrl-names = "default"; | ||
78 | pinctrl-0 = <&uart0_pins>; | ||
79 | status = "okay"; | ||
80 | }; | ||
81 | |||
82 | serial@12100 { | ||
83 | /* A PIC16F1829 is connected to uart1 at 9600 bps, | ||
84 | * and takes single-character orders : | ||
85 | * "1" : power off // already handled by the poweroff node | ||
86 | * "2" : short beep | ||
87 | * "3" : long beep | ||
88 | * "4" : turn the power LED ON | ||
89 | * "5" : flash the power LED | ||
90 | * "6" : turn the power LED OFF | ||
91 | * "7" : turn the status LED OFF | ||
92 | * "8" : turn the status LED ON | ||
93 | * "9" : flash the status LED | ||
94 | * "A" : flash the motherboard LED (D8) | ||
95 | * "B" : turn the motherboard LED OFF | ||
96 | * "C" : hard reset | ||
97 | */ | ||
98 | pinctrl-names = "default"; | ||
99 | pinctrl-0 = <&uart1_pins>; | ||
100 | status = "okay"; | ||
101 | }; | ||
102 | |||
103 | poweroff@12100 { | ||
104 | compatible = "synology,power-off"; | ||
105 | reg = <0x12100 0x100>; | ||
106 | clocks = <&coreclk 0>; | ||
107 | }; | ||
108 | |||
109 | ethernet@70000 { | ||
110 | pinctrl-names = "default"; | ||
111 | phy = <&phy0>; | ||
112 | phy-mode = "sgmii"; | ||
113 | buffer-manager = <&bm>; | ||
114 | bm,pool-long = <0>; | ||
115 | status = "okay"; | ||
116 | }; | ||
117 | |||
118 | |||
119 | mdio@72004 { | ||
120 | pinctrl-names = "default"; | ||
121 | pinctrl-0 = <&mdio_pins>; | ||
122 | |||
123 | phy0: ethernet-phy@1 { | ||
124 | reg = <1>; | ||
125 | }; | ||
126 | }; | ||
127 | |||
128 | sata@a8000 { | ||
129 | pinctrl-names = "default"; | ||
130 | pinctrl-0 = <&sata0_pins>; | ||
131 | status = "okay"; | ||
132 | #address-cells = <1>; | ||
133 | #size-cells = <0>; | ||
134 | |||
135 | sata0: sata-port@0 { | ||
136 | reg = <0>; | ||
137 | target-supply = <®_5v_sata0>; | ||
138 | }; | ||
139 | }; | ||
140 | |||
141 | bm@c8000 { | ||
142 | status = "okay"; | ||
143 | }; | ||
144 | |||
145 | usb3@f0000 { | ||
146 | usb-phy = <&usb3_0_phy>; | ||
147 | status = "okay"; | ||
148 | }; | ||
149 | |||
150 | usb3@f8000 { | ||
151 | usb-phy = <&usb3_1_phy>; | ||
152 | status = "okay"; | ||
153 | }; | ||
154 | }; | ||
155 | |||
156 | bm-bppi { | ||
157 | status = "okay"; | ||
158 | }; | ||
159 | |||
160 | gpio-fan { | ||
161 | compatible = "gpio-fan"; | ||
162 | gpios = <&gpio1 18 GPIO_ACTIVE_HIGH>, | ||
163 | <&gpio1 17 GPIO_ACTIVE_HIGH>, | ||
164 | <&gpio1 16 GPIO_ACTIVE_HIGH>; | ||
165 | gpio-fan,speed-map = < 0 0 | ||
166 | 1500 1 | ||
167 | 2500 2 | ||
168 | 3000 3 | ||
169 | 3400 4 | ||
170 | 3700 5 | ||
171 | 3900 6 | ||
172 | 4000 7>; | ||
173 | cooling-cells = <2>; | ||
174 | }; | ||
175 | |||
176 | gpio-leds { | ||
177 | compatible = "gpio-leds"; | ||
178 | |||
179 | /* The green part is on gpio0.20 which is also used by | ||
180 | * sata0, and accesses to SATA disk 0 make it blink so it | ||
181 | * doesn't need to be declared here. | ||
182 | */ | ||
183 | orange { | ||
184 | gpios = <&gpio0 13 GPIO_ACTIVE_HIGH>; | ||
185 | label = "ds116:orange:disk"; | ||
186 | default-state = "off"; | ||
187 | }; | ||
188 | }; | ||
189 | }; | ||
190 | |||
191 | usb3_0_phy: usb3_0_phy { | ||
192 | compatible = "usb-nop-xceiv"; | ||
193 | vcc-supply = <®_usb3_0_vbus>; | ||
194 | }; | ||
195 | |||
196 | usb3_1_phy: usb3_1_phy { | ||
197 | compatible = "usb-nop-xceiv"; | ||
198 | vcc-supply = <®_usb3_1_vbus>; | ||
199 | }; | ||
200 | |||
201 | reg_usb3_0_vbus: usb3-vbus0 { | ||
202 | compatible = "regulator-fixed"; | ||
203 | regulator-name = "usb3-vbus0"; | ||
204 | pinctrl-names = "default"; | ||
205 | pinctrl-0 = <&xhci0_vbus_pins>; | ||
206 | regulator-min-microvolt = <5000000>; | ||
207 | regulator-max-microvolt = <5000000>; | ||
208 | enable-active-high; | ||
209 | gpio = <&gpio1 26 GPIO_ACTIVE_HIGH>; | ||
210 | }; | ||
211 | |||
212 | reg_usb3_1_vbus: usb3-vbus1 { | ||
213 | compatible = "regulator-fixed"; | ||
214 | regulator-name = "usb3-vbus1"; | ||
215 | pinctrl-names = "default"; | ||
216 | pinctrl-0 = <&xhci1_vbus_pins>; | ||
217 | regulator-min-microvolt = <5000000>; | ||
218 | regulator-max-microvolt = <5000000>; | ||
219 | enable-active-high; | ||
220 | gpio = <&gpio1 27 GPIO_ACTIVE_HIGH>; | ||
221 | }; | ||
222 | |||
223 | reg_sata0: pwr-sata0 { | ||
224 | compatible = "regulator-fixed"; | ||
225 | regulator-name = "pwr_en_sata0"; | ||
226 | regulator-min-microvolt = <12000000>; | ||
227 | regulator-max-microvolt = <12000000>; | ||
228 | enable-active-high; | ||
229 | regulator-boot-on; | ||
230 | gpio = <&gpio0 15 GPIO_ACTIVE_HIGH>; | ||
231 | }; | ||
232 | |||
233 | reg_5v_sata0: v5-sata0 { | ||
234 | compatible = "regulator-fixed"; | ||
235 | regulator-name = "v5.0-sata0"; | ||
236 | regulator-min-microvolt = <5000000>; | ||
237 | regulator-max-microvolt = <5000000>; | ||
238 | vin-supply = <®_sata0>; | ||
239 | }; | ||
240 | |||
241 | reg_12v_sata0: v12-sata0 { | ||
242 | compatible = "regulator-fixed"; | ||
243 | regulator-name = "v12.0-sata0"; | ||
244 | regulator-min-microvolt = <12000000>; | ||
245 | regulator-max-microvolt = <12000000>; | ||
246 | vin-supply = <®_sata0>; | ||
247 | }; | ||
248 | }; | ||
249 | |||
250 | &spi0 { | ||
251 | pinctrl-names = "default"; | ||
252 | pinctrl-0 = <&spi0_pins>; | ||
253 | status = "okay"; | ||
254 | |||
255 | spi-flash@0 { | ||
256 | #address-cells = <1>; | ||
257 | #size-cells = <1>; | ||
258 | compatible = "macronix,mx25l6405d", "jedec,spi-nor"; | ||
259 | reg = <0>; /* Chip select 0 */ | ||
260 | spi-max-frequency = <50000000>; | ||
261 | m25p,fast-read; | ||
262 | |||
263 | /* Note: there is a redboot partition table despite u-boot | ||
264 | * being used. The names presented here are the same as those | ||
265 | * found in the FIS directory. There is also a small device | ||
266 | * tree in the last 64kB of the RedBoot partition which is not | ||
267 | * enumerated. The MAC address and the serial number are listed | ||
268 | * in the "vendor" partition. | ||
269 | */ | ||
270 | partition@00000000 { | ||
271 | label = "RedBoot"; | ||
272 | reg = <0x00000000 0x000f0000>; | ||
273 | read-only; | ||
274 | }; | ||
275 | |||
276 | partition@000c0000 { | ||
277 | label = "zImage"; | ||
278 | reg = <0x000f0000 0x002d0000>; | ||
279 | }; | ||
280 | |||
281 | partition@00390000 { | ||
282 | label = "rd.gz"; | ||
283 | reg = <0x003c0000 0x00410000>; | ||
284 | }; | ||
285 | |||
286 | partition@007d0000 { | ||
287 | label = "vendor"; | ||
288 | reg = <0x007d0000 0x00010000>; | ||
289 | read-only; | ||
290 | }; | ||
291 | |||
292 | partition@007e0000 { | ||
293 | label = "RedBoot config"; | ||
294 | reg = <0x007e0000 0x00010000>; | ||
295 | read-only; | ||
296 | }; | ||
297 | |||
298 | partition@007f0000 { | ||
299 | label = "FIS directory"; | ||
300 | reg = <0x007f0000 0x00010000>; | ||
301 | read-only; | ||
302 | }; | ||
303 | }; | ||
304 | }; | ||
305 | |||
306 | &pinctrl { | ||
307 | /* use only one pin for UART1, as mpp20 is used by sata0 */ | ||
308 | uart1_pins: uart-pins-1 { | ||
309 | marvell,pins = "mpp19"; | ||
310 | marvell,function = "ua1"; | ||
311 | }; | ||
312 | |||
313 | xhci0_vbus_pins: xhci0_vbus_pins { | ||
314 | marvell,pins = "mpp58"; | ||
315 | marvell,function = "gpio"; | ||
316 | }; | ||
317 | xhci1_vbus_pins: xhci1_vbus_pins { | ||
318 | marvell,pins = "mpp59"; | ||
319 | marvell,function = "gpio"; | ||
320 | }; | ||
321 | }; | ||
diff --git a/arch/arm/boot/dts/armada-385.dtsi b/arch/arm/boot/dts/armada-385.dtsi index 8e63be33472e..7fcc4c4885cf 100644 --- a/arch/arm/boot/dts/armada-385.dtsi +++ b/arch/arm/boot/dts/armada-385.dtsi | |||
@@ -70,13 +70,7 @@ | |||
70 | }; | 70 | }; |
71 | 71 | ||
72 | soc { | 72 | soc { |
73 | internal-regs { | 73 | pciec: pcie-controller { |
74 | pinctrl@18000 { | ||
75 | compatible = "marvell,mv88f6820-pinctrl"; | ||
76 | }; | ||
77 | }; | ||
78 | |||
79 | pcie-controller { | ||
80 | compatible = "marvell,armada-370-pcie"; | 74 | compatible = "marvell,armada-370-pcie"; |
81 | status = "disabled"; | 75 | status = "disabled"; |
82 | device_type = "pci"; | 76 | device_type = "pci"; |
@@ -106,7 +100,7 @@ | |||
106 | * configured in x4 by the bootloader, then | 100 | * configured in x4 by the bootloader, then |
107 | * pcie@4,0 is not available. | 101 | * pcie@4,0 is not available. |
108 | */ | 102 | */ |
109 | pcie@1,0 { | 103 | pcie1: pcie@1,0 { |
110 | device_type = "pci"; | 104 | device_type = "pci"; |
111 | assigned-addresses = <0x82000800 0 0x80000 0 0x2000>; | 105 | assigned-addresses = <0x82000800 0 0x80000 0 0x2000>; |
112 | reg = <0x0800 0 0 0 0>; | 106 | reg = <0x0800 0 0 0 0>; |
@@ -124,7 +118,7 @@ | |||
124 | }; | 118 | }; |
125 | 119 | ||
126 | /* x1 port */ | 120 | /* x1 port */ |
127 | pcie@2,0 { | 121 | pcie2: pcie@2,0 { |
128 | device_type = "pci"; | 122 | device_type = "pci"; |
129 | assigned-addresses = <0x82000800 0 0x40000 0 0x2000>; | 123 | assigned-addresses = <0x82000800 0 0x40000 0 0x2000>; |
130 | reg = <0x1000 0 0 0 0>; | 124 | reg = <0x1000 0 0 0 0>; |
@@ -142,7 +136,7 @@ | |||
142 | }; | 136 | }; |
143 | 137 | ||
144 | /* x1 port */ | 138 | /* x1 port */ |
145 | pcie@3,0 { | 139 | pcie3: pcie@3,0 { |
146 | device_type = "pci"; | 140 | device_type = "pci"; |
147 | assigned-addresses = <0x82000800 0 0x44000 0 0x2000>; | 141 | assigned-addresses = <0x82000800 0 0x44000 0 0x2000>; |
148 | reg = <0x1800 0 0 0 0>; | 142 | reg = <0x1800 0 0 0 0>; |
@@ -163,7 +157,7 @@ | |||
163 | * x1 port only available when pcie@1,0 is | 157 | * x1 port only available when pcie@1,0 is |
164 | * configured as a x1 port | 158 | * configured as a x1 port |
165 | */ | 159 | */ |
166 | pcie@4,0 { | 160 | pcie4: pcie@4,0 { |
167 | device_type = "pci"; | 161 | device_type = "pci"; |
168 | assigned-addresses = <0x82000800 0 0x48000 0 0x2000>; | 162 | assigned-addresses = <0x82000800 0 0x48000 0 0x2000>; |
169 | reg = <0x2000 0 0 0 0>; | 163 | reg = <0x2000 0 0 0 0>; |
@@ -182,3 +176,7 @@ | |||
182 | }; | 176 | }; |
183 | }; | 177 | }; |
184 | }; | 178 | }; |
179 | |||
180 | &pinctrl { | ||
181 | compatible = "marvell,mv88f6820-pinctrl"; | ||
182 | }; | ||
diff --git a/arch/arm/boot/dts/armada-388-clearfog.dts b/arch/arm/boot/dts/armada-388-clearfog.dts index 2745b7416313..0d5f1f062275 100644 --- a/arch/arm/boot/dts/armada-388-clearfog.dts +++ b/arch/arm/boot/dts/armada-388-clearfog.dts | |||
@@ -186,25 +186,6 @@ | |||
186 | }; | 186 | }; |
187 | }; | 187 | }; |
188 | 188 | ||
189 | &pinctrl { | ||
190 | clearfog_dsa0_clk_pins: clearfog-dsa0-clk-pins { | ||
191 | marvell,pins = "mpp46"; | ||
192 | marvell,function = "ref"; | ||
193 | }; | ||
194 | clearfog_dsa0_pins: clearfog-dsa0-pins { | ||
195 | marvell,pins = "mpp23", "mpp41"; | ||
196 | marvell,function = "gpio"; | ||
197 | }; | ||
198 | clearfog_spi1_cs_pins: spi1-cs-pins { | ||
199 | marvell,pins = "mpp55"; | ||
200 | marvell,function = "spi1"; | ||
201 | }; | ||
202 | rear_button_pins: rear-button-pins { | ||
203 | marvell,pins = "mpp34"; | ||
204 | marvell,function = "gpio"; | ||
205 | }; | ||
206 | }; | ||
207 | |||
208 | &mdio { | 189 | &mdio { |
209 | status = "okay"; | 190 | status = "okay"; |
210 | 191 | ||
@@ -268,6 +249,25 @@ | |||
268 | }; | 249 | }; |
269 | }; | 250 | }; |
270 | 251 | ||
252 | &pinctrl { | ||
253 | clearfog_dsa0_clk_pins: clearfog-dsa0-clk-pins { | ||
254 | marvell,pins = "mpp46"; | ||
255 | marvell,function = "ref"; | ||
256 | }; | ||
257 | clearfog_dsa0_pins: clearfog-dsa0-pins { | ||
258 | marvell,pins = "mpp23", "mpp41"; | ||
259 | marvell,function = "gpio"; | ||
260 | }; | ||
261 | clearfog_spi1_cs_pins: spi1-cs-pins { | ||
262 | marvell,pins = "mpp55"; | ||
263 | marvell,function = "spi1"; | ||
264 | }; | ||
265 | rear_button_pins: rear-button-pins { | ||
266 | marvell,pins = "mpp34"; | ||
267 | marvell,function = "gpio"; | ||
268 | }; | ||
269 | }; | ||
270 | |||
271 | &spi1 { | 271 | &spi1 { |
272 | /* | 272 | /* |
273 | * Add SPI CS pins for clearfog: | 273 | * Add SPI CS pins for clearfog: |
diff --git a/arch/arm/boot/dts/armada-388.dtsi b/arch/arm/boot/dts/armada-388.dtsi index 564fa5937e25..1c0d151b2aaa 100644 --- a/arch/arm/boot/dts/armada-388.dtsi +++ b/arch/arm/boot/dts/armada-388.dtsi | |||
@@ -50,13 +50,8 @@ | |||
50 | model = "Marvell Armada 388 family SoC"; | 50 | model = "Marvell Armada 388 family SoC"; |
51 | compatible = "marvell,armada388", "marvell,armada385", | 51 | compatible = "marvell,armada388", "marvell,armada385", |
52 | "marvell,armada380"; | 52 | "marvell,armada380"; |
53 | |||
54 | soc { | 53 | soc { |
55 | internal-regs { | 54 | internal-regs { |
56 | pinctrl@18000 { | ||
57 | compatible = "marvell,mv88f6828-pinctrl"; | ||
58 | }; | ||
59 | |||
60 | sata@e0000 { | 55 | sata@e0000 { |
61 | compatible = "marvell,armada-380-ahci"; | 56 | compatible = "marvell,armada-380-ahci"; |
62 | reg = <0xe0000 0x2000>; | 57 | reg = <0xe0000 0x2000>; |
@@ -68,3 +63,7 @@ | |||
68 | }; | 63 | }; |
69 | }; | 64 | }; |
70 | }; | 65 | }; |
66 | |||
67 | &pinctrl { | ||
68 | compatible = "marvell,mv88f6828-pinctrl"; | ||
69 | }; | ||
diff --git a/arch/arm/boot/dts/armada-38x.dtsi b/arch/arm/boot/dts/armada-38x.dtsi index 79b767507eab..8b165c31de1e 100644 --- a/arch/arm/boot/dts/armada-38x.dtsi +++ b/arch/arm/boot/dts/armada-38x.dtsi | |||
@@ -82,7 +82,7 @@ | |||
82 | reg = <MBUS_ID(0x01, 0x1d) 0 0x200000>; | 82 | reg = <MBUS_ID(0x01, 0x1d) 0 0x200000>; |
83 | }; | 83 | }; |
84 | 84 | ||
85 | devbus-bootcs { | 85 | devbus_bootcs: devbus-bootcs { |
86 | compatible = "marvell,mvebu-devbus"; | 86 | compatible = "marvell,mvebu-devbus"; |
87 | reg = <MBUS_ID(0xf0, 0x01) 0x10400 0x8>; | 87 | reg = <MBUS_ID(0xf0, 0x01) 0x10400 0x8>; |
88 | ranges = <0 MBUS_ID(0x01, 0x2f) 0 0xffffffff>; | 88 | ranges = <0 MBUS_ID(0x01, 0x2f) 0 0xffffffff>; |
@@ -92,7 +92,7 @@ | |||
92 | status = "disabled"; | 92 | status = "disabled"; |
93 | }; | 93 | }; |
94 | 94 | ||
95 | devbus-cs0 { | 95 | devbus_cs0: devbus-cs0 { |
96 | compatible = "marvell,mvebu-devbus"; | 96 | compatible = "marvell,mvebu-devbus"; |
97 | reg = <MBUS_ID(0xf0, 0x01) 0x10408 0x8>; | 97 | reg = <MBUS_ID(0xf0, 0x01) 0x10408 0x8>; |
98 | ranges = <0 MBUS_ID(0x01, 0x3e) 0 0xffffffff>; | 98 | ranges = <0 MBUS_ID(0x01, 0x3e) 0 0xffffffff>; |
@@ -102,7 +102,7 @@ | |||
102 | status = "disabled"; | 102 | status = "disabled"; |
103 | }; | 103 | }; |
104 | 104 | ||
105 | devbus-cs1 { | 105 | devbus_cs1: devbus-cs1 { |
106 | compatible = "marvell,mvebu-devbus"; | 106 | compatible = "marvell,mvebu-devbus"; |
107 | reg = <MBUS_ID(0xf0, 0x01) 0x10410 0x8>; | 107 | reg = <MBUS_ID(0xf0, 0x01) 0x10410 0x8>; |
108 | ranges = <0 MBUS_ID(0x01, 0x3d) 0 0xffffffff>; | 108 | ranges = <0 MBUS_ID(0x01, 0x3d) 0 0xffffffff>; |
@@ -112,7 +112,7 @@ | |||
112 | status = "disabled"; | 112 | status = "disabled"; |
113 | }; | 113 | }; |
114 | 114 | ||
115 | devbus-cs2 { | 115 | devbus_cs2: devbus-cs2 { |
116 | compatible = "marvell,mvebu-devbus"; | 116 | compatible = "marvell,mvebu-devbus"; |
117 | reg = <MBUS_ID(0xf0, 0x01) 0x10418 0x8>; | 117 | reg = <MBUS_ID(0xf0, 0x01) 0x10418 0x8>; |
118 | ranges = <0 MBUS_ID(0x01, 0x3b) 0 0xffffffff>; | 118 | ranges = <0 MBUS_ID(0x01, 0x3b) 0 0xffffffff>; |
@@ -122,7 +122,7 @@ | |||
122 | status = "disabled"; | 122 | status = "disabled"; |
123 | }; | 123 | }; |
124 | 124 | ||
125 | devbus-cs3 { | 125 | devbus_cs3: devbus-cs3 { |
126 | compatible = "marvell,mvebu-devbus"; | 126 | compatible = "marvell,mvebu-devbus"; |
127 | reg = <MBUS_ID(0xf0, 0x01) 0x10420 0x8>; | 127 | reg = <MBUS_ID(0xf0, 0x01) 0x10420 0x8>; |
128 | ranges = <0 MBUS_ID(0x01, 0x37) 0 0xffffffff>; | 128 | ranges = <0 MBUS_ID(0x01, 0x37) 0 0xffffffff>; |
@@ -339,7 +339,7 @@ | |||
339 | <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; | 339 | <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; |
340 | }; | 340 | }; |
341 | 341 | ||
342 | system-controller@18200 { | 342 | systemc: system-controller@18200 { |
343 | compatible = "marvell,armada-380-system-controller", | 343 | compatible = "marvell,armada-380-system-controller", |
344 | "marvell,armada-370-xp-system-controller"; | 344 | "marvell,armada-370-xp-system-controller"; |
345 | reg = <0x18200 0x100>; | 345 | reg = <0x18200 0x100>; |
@@ -360,7 +360,8 @@ | |||
360 | 360 | ||
361 | mbusc: mbus-controller@20000 { | 361 | mbusc: mbus-controller@20000 { |
362 | compatible = "marvell,mbus-controller"; | 362 | compatible = "marvell,mbus-controller"; |
363 | reg = <0x20000 0x100>, <0x20180 0x20>; | 363 | reg = <0x20000 0x100>, <0x20180 0x20>, |
364 | <0x20250 0x8>; | ||
364 | }; | 365 | }; |
365 | 366 | ||
366 | mpic: interrupt-controller@20a00 { | 367 | mpic: interrupt-controller@20a00 { |
@@ -373,7 +374,7 @@ | |||
373 | interrupts = <GIC_PPI 15 IRQ_TYPE_LEVEL_HIGH>; | 374 | interrupts = <GIC_PPI 15 IRQ_TYPE_LEVEL_HIGH>; |
374 | }; | 375 | }; |
375 | 376 | ||
376 | timer@20300 { | 377 | timer: timer@20300 { |
377 | compatible = "marvell,armada-380-timer", | 378 | compatible = "marvell,armada-380-timer", |
378 | "marvell,armada-xp-timer"; | 379 | "marvell,armada-xp-timer"; |
379 | reg = <0x20300 0x30>, <0x21040 0x30>; | 380 | reg = <0x20300 0x30>, <0x21040 0x30>; |
@@ -387,14 +388,14 @@ | |||
387 | clock-names = "nbclk", "fixed"; | 388 | clock-names = "nbclk", "fixed"; |
388 | }; | 389 | }; |
389 | 390 | ||
390 | watchdog@20300 { | 391 | watchdog: watchdog@20300 { |
391 | compatible = "marvell,armada-380-wdt"; | 392 | compatible = "marvell,armada-380-wdt"; |
392 | reg = <0x20300 0x34>, <0x20704 0x4>, <0x18260 0x4>; | 393 | reg = <0x20300 0x34>, <0x20704 0x4>, <0x18260 0x4>; |
393 | clocks = <&coreclk 2>, <&refclk>; | 394 | clocks = <&coreclk 2>, <&refclk>; |
394 | clock-names = "nbclk", "fixed"; | 395 | clock-names = "nbclk", "fixed"; |
395 | }; | 396 | }; |
396 | 397 | ||
397 | cpurst@20800 { | 398 | cpurst: cpurst@20800 { |
398 | compatible = "marvell,armada-370-cpu-reset"; | 399 | compatible = "marvell,armada-370-cpu-reset"; |
399 | reg = <0x20800 0x10>; | 400 | reg = <0x20800 0x10>; |
400 | }; | 401 | }; |
@@ -404,12 +405,12 @@ | |||
404 | reg = <0x20d20 0x6c>; | 405 | reg = <0x20d20 0x6c>; |
405 | }; | 406 | }; |
406 | 407 | ||
407 | coherency-fabric@21010 { | 408 | coherencyfab: coherency-fabric@21010 { |
408 | compatible = "marvell,armada-380-coherency-fabric"; | 409 | compatible = "marvell,armada-380-coherency-fabric"; |
409 | reg = <0x21010 0x1c>; | 410 | reg = <0x21010 0x1c>; |
410 | }; | 411 | }; |
411 | 412 | ||
412 | pmsu@22000 { | 413 | pmsu: pmsu@22000 { |
413 | compatible = "marvell,armada-380-pmsu"; | 414 | compatible = "marvell,armada-380-pmsu"; |
414 | reg = <0x22000 0x1000>; | 415 | reg = <0x22000 0x1000>; |
415 | }; | 416 | }; |
@@ -451,7 +452,7 @@ | |||
451 | status = "disabled"; | 452 | status = "disabled"; |
452 | }; | 453 | }; |
453 | 454 | ||
454 | usb@58000 { | 455 | usb0: usb@58000 { |
455 | compatible = "marvell,orion-ehci"; | 456 | compatible = "marvell,orion-ehci"; |
456 | reg = <0x58000 0x500>; | 457 | reg = <0x58000 0x500>; |
457 | interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; | 458 | interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>; |
@@ -459,7 +460,7 @@ | |||
459 | status = "disabled"; | 460 | status = "disabled"; |
460 | }; | 461 | }; |
461 | 462 | ||
462 | xor@60800 { | 463 | xor0: xor@60800 { |
463 | compatible = "marvell,armada-380-xor", "marvell,orion-xor"; | 464 | compatible = "marvell,armada-380-xor", "marvell,orion-xor"; |
464 | reg = <0x60800 0x100 | 465 | reg = <0x60800 0x100 |
465 | 0x60a00 0x100>; | 466 | 0x60a00 0x100>; |
@@ -479,7 +480,7 @@ | |||
479 | }; | 480 | }; |
480 | }; | 481 | }; |
481 | 482 | ||
482 | xor@60900 { | 483 | xor1: xor@60900 { |
483 | compatible = "marvell,armada-380-xor", "marvell,orion-xor"; | 484 | compatible = "marvell,armada-380-xor", "marvell,orion-xor"; |
484 | reg = <0x60900 0x100 | 485 | reg = <0x60900 0x100 |
485 | 0x60b00 0x100>; | 486 | 0x60b00 0x100>; |
@@ -507,7 +508,7 @@ | |||
507 | clocks = <&gateclk 4>; | 508 | clocks = <&gateclk 4>; |
508 | }; | 509 | }; |
509 | 510 | ||
510 | crypto@90000 { | 511 | cesa: crypto@90000 { |
511 | compatible = "marvell,armada-38x-crypto"; | 512 | compatible = "marvell,armada-38x-crypto"; |
512 | reg = <0x90000 0x10000>; | 513 | reg = <0x90000 0x10000>; |
513 | reg-names = "regs"; | 514 | reg-names = "regs"; |
@@ -522,14 +523,14 @@ | |||
522 | marvell,crypto-sram-size = <0x800>; | 523 | marvell,crypto-sram-size = <0x800>; |
523 | }; | 524 | }; |
524 | 525 | ||
525 | rtc@a3800 { | 526 | rtc: rtc@a3800 { |
526 | compatible = "marvell,armada-380-rtc"; | 527 | compatible = "marvell,armada-380-rtc"; |
527 | reg = <0xa3800 0x20>, <0x184a0 0x0c>; | 528 | reg = <0xa3800 0x20>, <0x184a0 0x0c>; |
528 | reg-names = "rtc", "rtc-soc"; | 529 | reg-names = "rtc", "rtc-soc"; |
529 | interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; | 530 | interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; |
530 | }; | 531 | }; |
531 | 532 | ||
532 | sata@a8000 { | 533 | ahci0: sata@a8000 { |
533 | compatible = "marvell,armada-380-ahci"; | 534 | compatible = "marvell,armada-380-ahci"; |
534 | reg = <0xa8000 0x2000>; | 535 | reg = <0xa8000 0x2000>; |
535 | interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; | 536 | interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; |
@@ -545,7 +546,7 @@ | |||
545 | status = "disabled"; | 546 | status = "disabled"; |
546 | }; | 547 | }; |
547 | 548 | ||
548 | sata@e0000 { | 549 | ahci1: sata@e0000 { |
549 | compatible = "marvell,armada-380-ahci"; | 550 | compatible = "marvell,armada-380-ahci"; |
550 | reg = <0xe0000 0x2000>; | 551 | reg = <0xe0000 0x2000>; |
551 | interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; | 552 | interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; |
@@ -561,13 +562,13 @@ | |||
561 | clock-output-names = "nand"; | 562 | clock-output-names = "nand"; |
562 | }; | 563 | }; |
563 | 564 | ||
564 | thermal@e8078 { | 565 | thermal: thermal@e8078 { |
565 | compatible = "marvell,armada380-thermal"; | 566 | compatible = "marvell,armada380-thermal"; |
566 | reg = <0xe4078 0x4>, <0xe4074 0x4>; | 567 | reg = <0xe4078 0x4>, <0xe4074 0x4>; |
567 | status = "okay"; | 568 | status = "okay"; |
568 | }; | 569 | }; |
569 | 570 | ||
570 | flash@d0000 { | 571 | nand: flash@d0000 { |
571 | compatible = "marvell,armada370-nand"; | 572 | compatible = "marvell,armada370-nand"; |
572 | reg = <0xd0000 0x54>; | 573 | reg = <0xd0000 0x54>; |
573 | #address-cells = <1>; | 574 | #address-cells = <1>; |
@@ -577,7 +578,7 @@ | |||
577 | status = "disabled"; | 578 | status = "disabled"; |
578 | }; | 579 | }; |
579 | 580 | ||
580 | sdhci@d8000 { | 581 | sdhci: sdhci@d8000 { |
581 | compatible = "marvell,armada-380-sdhci"; | 582 | compatible = "marvell,armada-380-sdhci"; |
582 | reg-names = "sdhci", "mbus", "conf-sdio3"; | 583 | reg-names = "sdhci", "mbus", "conf-sdio3"; |
583 | reg = <0xd8000 0x1000>, | 584 | reg = <0xd8000 0x1000>, |
@@ -589,7 +590,7 @@ | |||
589 | status = "disabled"; | 590 | status = "disabled"; |
590 | }; | 591 | }; |
591 | 592 | ||
592 | usb3@f0000 { | 593 | usb3_0: usb3@f0000 { |
593 | compatible = "marvell,armada-380-xhci"; | 594 | compatible = "marvell,armada-380-xhci"; |
594 | reg = <0xf0000 0x4000>,<0xf4000 0x4000>; | 595 | reg = <0xf0000 0x4000>,<0xf4000 0x4000>; |
595 | interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; | 596 | interrupts = <GIC_SPI 16 IRQ_TYPE_LEVEL_HIGH>; |
@@ -597,7 +598,7 @@ | |||
597 | status = "disabled"; | 598 | status = "disabled"; |
598 | }; | 599 | }; |
599 | 600 | ||
600 | usb3@f8000 { | 601 | usb3_1: usb3@f8000 { |
601 | compatible = "marvell,armada-380-xhci"; | 602 | compatible = "marvell,armada-380-xhci"; |
602 | reg = <0xf8000 0x4000>,<0xfc000 0x4000>; | 603 | reg = <0xf8000 0x4000>,<0xfc000 0x4000>; |
603 | interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; | 604 | interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; |
diff --git a/arch/arm/boot/dts/armada-xp-98dx3236.dtsi b/arch/arm/boot/dts/armada-xp-98dx3236.dtsi index f6a03dcee5ef..84cc232a29e9 100644 --- a/arch/arm/boot/dts/armada-xp-98dx3236.dtsi +++ b/arch/arm/boot/dts/armada-xp-98dx3236.dtsi | |||
@@ -45,11 +45,14 @@ | |||
45 | * common to all Armada XP SoCs. | 45 | * common to all Armada XP SoCs. |
46 | */ | 46 | */ |
47 | 47 | ||
48 | #include "armada-xp.dtsi" | 48 | #include "armada-370-xp.dtsi" |
49 | 49 | ||
50 | / { | 50 | / { |
51 | #address-cells = <2>; | ||
52 | #size-cells = <2>; | ||
53 | |||
51 | model = "Marvell 98DX3236 SoC"; | 54 | model = "Marvell 98DX3236 SoC"; |
52 | compatible = "marvell,armadaxp-98dx3236", "marvell,armadaxp", "marvell,armada-370-xp"; | 55 | compatible = "marvell,armadaxp-98dx3236", "marvell,armada-370-xp"; |
53 | 56 | ||
54 | aliases { | 57 | aliases { |
55 | gpio0 = &gpio0; | 58 | gpio0 = &gpio0; |
@@ -72,12 +75,19 @@ | |||
72 | }; | 75 | }; |
73 | 76 | ||
74 | soc { | 77 | soc { |
78 | compatible = "marvell,armadaxp-mbus", "simple-bus"; | ||
79 | |||
75 | ranges = <MBUS_ID(0xf0, 0x01) 0 0 0xf1000000 0x100000 | 80 | ranges = <MBUS_ID(0xf0, 0x01) 0 0 0xf1000000 0x100000 |
76 | MBUS_ID(0x01, 0x1d) 0 0 0xfff00000 0x100000 | 81 | MBUS_ID(0x01, 0x1d) 0 0 0xfff00000 0x100000 |
77 | MBUS_ID(0x01, 0x2f) 0 0 0xf0000000 0x1000000 | 82 | MBUS_ID(0x01, 0x2f) 0 0 0xf0000000 0x1000000 |
78 | MBUS_ID(0x03, 0x00) 0 0 0xa8000000 0x4000000 | 83 | MBUS_ID(0x03, 0x00) 0 0 0xa8000000 0x4000000 |
79 | MBUS_ID(0x08, 0x00) 0 0 0xac000000 0x100000>; | 84 | MBUS_ID(0x08, 0x00) 0 0 0xac000000 0x100000>; |
80 | 85 | ||
86 | bootrom { | ||
87 | compatible = "marvell,bootrom"; | ||
88 | reg = <MBUS_ID(0x01, 0x1d) 0 0x100000>; | ||
89 | }; | ||
90 | |||
81 | /* | 91 | /* |
82 | * 98DX3236 has 1 x1 PCIe unit Gen2.0 | 92 | * 98DX3236 has 1 x1 PCIe unit Gen2.0 |
83 | */ | 93 | */ |
@@ -95,8 +105,7 @@ | |||
95 | ranges = | 105 | ranges = |
96 | <0x82000000 0 0x40000 MBUS_ID(0xf0, 0x01) 0x40000 0 0x00002000 /* Port 0.0 registers */ | 106 | <0x82000000 0 0x40000 MBUS_ID(0xf0, 0x01) 0x40000 0 0x00002000 /* Port 0.0 registers */ |
97 | 0x82000000 0x1 0 MBUS_ID(0x04, 0xe8) 0 1 0 /* Port 0.0 MEM */ | 107 | 0x82000000 0x1 0 MBUS_ID(0x04, 0xe8) 0 1 0 /* Port 0.0 MEM */ |
98 | 0x81000000 0x1 0 MBUS_ID(0x04, 0xe0) 0 1 0 /* Port 0.0 IO */ | 108 | 0x81000000 0x1 0 MBUS_ID(0x04, 0xe0) 0 1 0 /* Port 0.0 IO */>; |
99 | 0x82000000 0x2 0 MBUS_ID(0x04, 0xd8) 0 1 0 /* Port 0.1 MEM */>; | ||
100 | 109 | ||
101 | pcie1: pcie@1,0 { | 110 | pcie1: pcie@1,0 { |
102 | device_type = "pci"; | 111 | device_type = "pci"; |
@@ -117,31 +126,86 @@ | |||
117 | }; | 126 | }; |
118 | 127 | ||
119 | internal-regs { | 128 | internal-regs { |
120 | coreclk: mvebu-sar@18230 { | 129 | sdramc@1400 { |
121 | compatible = "marvell,mv98dx3236-core-clock"; | 130 | compatible = "marvell,armada-xp-sdram-controller"; |
131 | reg = <0x1400 0x500>; | ||
132 | }; | ||
133 | |||
134 | L2: l2-cache@8000 { | ||
135 | compatible = "marvell,aurora-system-cache"; | ||
136 | reg = <0x08000 0x1000>; | ||
137 | cache-id-part = <0x100>; | ||
138 | cache-level = <2>; | ||
139 | cache-unified; | ||
140 | wt-override; | ||
141 | }; | ||
142 | |||
143 | gpio0: gpio@18100 { | ||
144 | compatible = "marvell,orion-gpio"; | ||
145 | reg = <0x18100 0x40>; | ||
146 | ngpios = <32>; | ||
147 | gpio-controller; | ||
148 | #gpio-cells = <2>; | ||
149 | interrupt-controller; | ||
150 | #interrupt-cells = <2>; | ||
151 | interrupts = <82>, <83>, <84>, <85>; | ||
152 | }; | ||
153 | |||
154 | /* does not exist */ | ||
155 | gpio1: gpio@18140 { | ||
156 | compatible = "marvell,orion-gpio"; | ||
157 | reg = <0x18140 0x40>; | ||
158 | status = "disabled"; | ||
159 | }; | ||
160 | |||
161 | gpio2: gpio@18180 { /* rework some properties */ | ||
162 | compatible = "marvell,orion-gpio"; | ||
163 | reg = <0x18180 0x40>; | ||
164 | ngpios = <1>; /* only gpio #32 */ | ||
165 | gpio-controller; | ||
166 | #gpio-cells = <2>; | ||
167 | interrupt-controller; | ||
168 | #interrupt-cells = <2>; | ||
169 | interrupts = <87>; | ||
170 | }; | ||
171 | |||
172 | systemc: system-controller@18200 { | ||
173 | compatible = "marvell,armada-370-xp-system-controller"; | ||
174 | reg = <0x18200 0x500>; | ||
175 | }; | ||
176 | |||
177 | gateclk: clock-gating-control@18220 { | ||
178 | compatible = "marvell,mv98dx3236-gating-clock"; | ||
179 | reg = <0x18220 0x4>; | ||
180 | clocks = <&coreclk 0>; | ||
181 | #clock-cells = <1>; | ||
122 | }; | 182 | }; |
123 | 183 | ||
124 | cpuclk: clock-complex@18700 { | 184 | cpuclk: clock-complex@18700 { |
185 | #clock-cells = <1>; | ||
125 | compatible = "marvell,mv98dx3236-cpu-clock"; | 186 | compatible = "marvell,mv98dx3236-cpu-clock"; |
187 | reg = <0x18700 0x24>, <0x1c054 0x10>; | ||
188 | clocks = <&coreclk 1>; | ||
126 | }; | 189 | }; |
127 | 190 | ||
128 | corediv-clock@18740 { | 191 | corediv-clock@18740 { |
129 | status = "disabled"; | 192 | status = "disabled"; |
130 | }; | 193 | }; |
131 | 194 | ||
132 | xor@60900 { | 195 | cpu-config@21000 { |
133 | status = "disabled"; | 196 | compatible = "marvell,armada-xp-cpu-config"; |
197 | reg = <0x21000 0x8>; | ||
134 | }; | 198 | }; |
135 | 199 | ||
136 | crypto@90000 { | 200 | ethernet@70000 { |
137 | status = "disabled"; | 201 | compatible = "marvell,armada-xp-neta"; |
138 | }; | 202 | }; |
139 | 203 | ||
140 | xor@f0900 { | 204 | ethernet@74000 { |
141 | status = "disabled"; | 205 | compatible = "marvell,armada-xp-neta"; |
142 | }; | 206 | }; |
143 | 207 | ||
144 | xor@f0800 { | 208 | xor1: xor@f0800 { |
145 | compatible = "marvell,orion-xor"; | 209 | compatible = "marvell,orion-xor"; |
146 | reg = <0xf0800 0x100 | 210 | reg = <0xf0800 0x100 |
147 | 0xf0a00 0x100>; | 211 | 0xf0a00 0x100>; |
@@ -161,45 +225,43 @@ | |||
161 | }; | 225 | }; |
162 | }; | 226 | }; |
163 | 227 | ||
164 | gpio0: gpio@18100 { | 228 | nand: nand@d0000 { |
165 | compatible = "marvell,orion-gpio"; | 229 | clocks = <&dfx_coredivclk 0>; |
166 | reg = <0x18100 0x40>; | ||
167 | ngpios = <32>; | ||
168 | gpio-controller; | ||
169 | #gpio-cells = <2>; | ||
170 | interrupt-controller; | ||
171 | #interrupt-cells = <2>; | ||
172 | interrupts = <82>, <83>, <84>, <85>; | ||
173 | }; | ||
174 | |||
175 | /* does not exist */ | ||
176 | gpio1: gpio@18140 { | ||
177 | compatible = "marvell,orion-gpio"; | ||
178 | reg = <0x18140 0x40>; | ||
179 | status = "disabled"; | ||
180 | }; | 230 | }; |
181 | 231 | ||
182 | gpio2: gpio@18180 { /* rework some properties */ | 232 | xor0: xor@f0900 { |
183 | compatible = "marvell,orion-gpio"; | 233 | compatible = "marvell,orion-xor"; |
184 | reg = <0x18180 0x40>; | 234 | reg = <0xF0900 0x100 |
185 | ngpios = <1>; /* only gpio #32 */ | 235 | 0xF0B00 0x100>; |
186 | gpio-controller; | 236 | clocks = <&gateclk 28>; |
187 | #gpio-cells = <2>; | 237 | status = "okay"; |
188 | interrupt-controller; | ||
189 | #interrupt-cells = <2>; | ||
190 | interrupts = <87>; | ||
191 | }; | ||
192 | 238 | ||
193 | nand: nand@d0000 { | 239 | xor00 { |
194 | clocks = <&dfx_coredivclk 0>; | 240 | interrupts = <94>; |
241 | dmacap,memcpy; | ||
242 | dmacap,xor; | ||
243 | }; | ||
244 | xor01 { | ||
245 | interrupts = <95>; | ||
246 | dmacap,memcpy; | ||
247 | dmacap,xor; | ||
248 | dmacap,memset; | ||
249 | }; | ||
195 | }; | 250 | }; |
196 | }; | 251 | }; |
197 | 252 | ||
198 | dfxr: dfx-registers@ac000000 { | 253 | dfx: dfx-server@ac000000 { |
199 | compatible = "simple-bus"; | 254 | compatible = "marvell,dfx-server", "simple-bus"; |
200 | #address-cells = <1>; | 255 | #address-cells = <1>; |
201 | #size-cells = <1>; | 256 | #size-cells = <1>; |
202 | ranges = <0 MBUS_ID(0x08, 0x00) 0 0x100000>; | 257 | ranges = <0 MBUS_ID(0x08, 0x00) 0 0x100000>; |
258 | reg = <MBUS_ID(0x08, 0x00) 0 0x100000>; | ||
259 | |||
260 | coreclk: mvebu-sar@f8204 { | ||
261 | compatible = "marvell,mv98dx3236-core-clock"; | ||
262 | reg = <0xf8204 0x4>; | ||
263 | #clock-cells = <1>; | ||
264 | }; | ||
203 | 265 | ||
204 | dfx_coredivclk: corediv-clock@f8268 { | 266 | dfx_coredivclk: corediv-clock@f8268 { |
205 | compatible = "marvell,mv98dx3236-corediv-clock"; | 267 | compatible = "marvell,mv98dx3236-corediv-clock"; |
@@ -208,11 +270,6 @@ | |||
208 | clocks = <&mainpll>; | 270 | clocks = <&mainpll>; |
209 | clock-output-names = "nand"; | 271 | clock-output-names = "nand"; |
210 | }; | 272 | }; |
211 | |||
212 | dfx: dfx@0 { | ||
213 | compatible = "marvell,dfx-server"; | ||
214 | reg = <0 0x100000>; | ||
215 | }; | ||
216 | }; | 273 | }; |
217 | 274 | ||
218 | switch: switch@a8000000 { | 275 | switch: switch@a8000000 { |
@@ -229,6 +286,53 @@ | |||
229 | }; | 286 | }; |
230 | }; | 287 | }; |
231 | }; | 288 | }; |
289 | |||
290 | clocks { | ||
291 | /* 25 MHz reference crystal */ | ||
292 | refclk: oscillator { | ||
293 | compatible = "fixed-clock"; | ||
294 | #clock-cells = <0>; | ||
295 | clock-frequency = <25000000>; | ||
296 | }; | ||
297 | }; | ||
298 | }; | ||
299 | |||
300 | &i2c0 { | ||
301 | compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c"; | ||
302 | reg = <0x11000 0x100>; | ||
303 | }; | ||
304 | |||
305 | &i2c1 { | ||
306 | compatible = "marvell,mv78230-i2c", "marvell,mv64xxx-i2c"; | ||
307 | reg = <0x11100 0x100>; | ||
308 | }; | ||
309 | |||
310 | &mpic { | ||
311 | reg = <0x20a00 0x2d0>, <0x21070 0x58>; | ||
312 | }; | ||
313 | |||
314 | &timer { | ||
315 | compatible = "marvell,armada-xp-timer"; | ||
316 | clocks = <&coreclk 2>, <&refclk>; | ||
317 | clock-names = "nbclk", "fixed"; | ||
318 | }; | ||
319 | |||
320 | &watchdog { | ||
321 | compatible = "marvell,armada-xp-wdt"; | ||
322 | clocks = <&coreclk 2>, <&refclk>; | ||
323 | clock-names = "nbclk", "fixed"; | ||
324 | }; | ||
325 | |||
326 | &cpurst { | ||
327 | reg = <0x20800 0x20>; | ||
328 | }; | ||
329 | |||
330 | &usb0 { | ||
331 | clocks = <&gateclk 18>; | ||
332 | }; | ||
333 | |||
334 | &usb1 { | ||
335 | clocks = <&gateclk 19>; | ||
232 | }; | 336 | }; |
233 | 337 | ||
234 | &pinctrl { | 338 | &pinctrl { |
@@ -241,14 +345,13 @@ | |||
241 | }; | 345 | }; |
242 | }; | 346 | }; |
243 | 347 | ||
244 | &sdio { | 348 | &spi0 { |
245 | status = "disabled"; | 349 | compatible = "marvell,armada-xp-spi", "marvell,orion-spi"; |
350 | pinctrl-0 = <&spi0_pins>; | ||
351 | pinctrl-names = "default"; | ||
246 | }; | 352 | }; |
247 | 353 | ||
248 | &crypto_sram0 { | 354 | &sdio { |
249 | status = "disabled"; | 355 | status = "disabled"; |
250 | }; | 356 | }; |
251 | 357 | ||
252 | &crypto_sram1 { | ||
253 | status = "disabled"; | ||
254 | }; | ||
diff --git a/arch/arm/boot/dts/armada-xp-98dx3336.dtsi b/arch/arm/boot/dts/armada-xp-98dx3336.dtsi index e1580afdc260..a0d81bd7312b 100644 --- a/arch/arm/boot/dts/armada-xp-98dx3336.dtsi +++ b/arch/arm/boot/dts/armada-xp-98dx3336.dtsi | |||
@@ -49,7 +49,7 @@ | |||
49 | 49 | ||
50 | / { | 50 | / { |
51 | model = "Marvell 98DX3336 SoC"; | 51 | model = "Marvell 98DX3336 SoC"; |
52 | compatible = "marvell,armadaxp-98dx3336", "marvell,armadaxp-98dx3236", "marvell,armadaxp", "marvell,armada-370-xp"; | 52 | compatible = "marvell,armadaxp-98dx3336", "marvell,armadaxp-98dx3236", "marvell,armada-370-xp"; |
53 | 53 | ||
54 | cpus { | 54 | cpus { |
55 | cpu@1 { | 55 | cpu@1 { |
diff --git a/arch/arm/boot/dts/armada-xp-98dx4251.dtsi b/arch/arm/boot/dts/armada-xp-98dx4251.dtsi index b9d9b269efb4..51de91b31a9d 100644 --- a/arch/arm/boot/dts/armada-xp-98dx4251.dtsi +++ b/arch/arm/boot/dts/armada-xp-98dx4251.dtsi | |||
@@ -49,7 +49,7 @@ | |||
49 | 49 | ||
50 | / { | 50 | / { |
51 | model = "Marvell 98DX4251 SoC"; | 51 | model = "Marvell 98DX4251 SoC"; |
52 | compatible = "marvell,armadaxp-98dx4251", "marvell,armadaxp-98dx3236", "marvell,armadaxp", "marvell,armada-370-xp"; | 52 | compatible = "marvell,armadaxp-98dx4251", "marvell,armadaxp-98dx3236", "marvell,armada-370-xp"; |
53 | 53 | ||
54 | cpus { | 54 | cpus { |
55 | cpu@1 { | 55 | cpu@1 { |
diff --git a/arch/arm/boot/dts/armada-xp-db-dxbc2.dts b/arch/arm/boot/dts/armada-xp-db-dxbc2.dts index a8130805074e..1b1ff17fdd9c 100644 --- a/arch/arm/boot/dts/armada-xp-db-dxbc2.dts +++ b/arch/arm/boot/dts/armada-xp-db-dxbc2.dts | |||
@@ -58,7 +58,7 @@ | |||
58 | 58 | ||
59 | / { | 59 | / { |
60 | model = "Marvell Bobcat2 Evaluation Board"; | 60 | model = "Marvell Bobcat2 Evaluation Board"; |
61 | compatible = "marvell,db-dxbc2", "marvell,armadaxp-98dx4251", "marvell,armadaxp", "marvell,armada-370-xp"; | 61 | compatible = "marvell,db-dxbc2", "marvell,armadaxp-98dx4251", "marvell,armada-370-xp"; |
62 | 62 | ||
63 | chosen { | 63 | chosen { |
64 | bootargs = "console=ttyS0,115200 earlyprintk"; | 64 | bootargs = "console=ttyS0,115200 earlyprintk"; |
diff --git a/arch/arm/boot/dts/armada-xp-db-xc3-24g4xg.dts b/arch/arm/boot/dts/armada-xp-db-xc3-24g4xg.dts index 4e07cb6ed800..06fce35d7491 100644 --- a/arch/arm/boot/dts/armada-xp-db-xc3-24g4xg.dts +++ b/arch/arm/boot/dts/armada-xp-db-xc3-24g4xg.dts | |||
@@ -58,7 +58,7 @@ | |||
58 | 58 | ||
59 | / { | 59 | / { |
60 | model = "DB-XC3-24G4XG"; | 60 | model = "DB-XC3-24G4XG"; |
61 | compatible = "marvell,db-xc3-24g4xg", "marvell,armadaxp-98dx3336", "marvell,armadaxp", "marvell,armada-370-xp"; | 61 | compatible = "marvell,db-xc3-24g4xg", "marvell,armadaxp-98dx3336", "marvell,armada-370-xp"; |
62 | 62 | ||
63 | chosen { | 63 | chosen { |
64 | bootargs = "console=ttyS0,115200 earlyprintk"; | 64 | bootargs = "console=ttyS0,115200 earlyprintk"; |
diff --git a/arch/arm/boot/dts/armada-xp-linksys-mamba.dts b/arch/arm/boot/dts/armada-xp-linksys-mamba.dts index 42ea8764814c..9efcf59c9b44 100644 --- a/arch/arm/boot/dts/armada-xp-linksys-mamba.dts +++ b/arch/arm/boot/dts/armada-xp-linksys-mamba.dts | |||
@@ -71,7 +71,8 @@ | |||
71 | ranges = <MBUS_ID(0xf0, 0x01) 0 0 0xf1000000 0x100000 | 71 | ranges = <MBUS_ID(0xf0, 0x01) 0 0 0xf1000000 0x100000 |
72 | MBUS_ID(0x01, 0x1d) 0 0 0xfff00000 0x100000 | 72 | MBUS_ID(0x01, 0x1d) 0 0 0xfff00000 0x100000 |
73 | MBUS_ID(0x09, 0x09) 0 0 0xf1100000 0x10000 | 73 | MBUS_ID(0x09, 0x09) 0 0 0xf1100000 0x10000 |
74 | MBUS_ID(0x09, 0x05) 0 0 0xf1110000 0x10000>; | 74 | MBUS_ID(0x09, 0x05) 0 0 0xf1110000 0x10000 |
75 | MBUS_ID(0x0c, 0x04) 0 0 0xf1200000 0x100000>; | ||
75 | 76 | ||
76 | internal-regs { | 77 | internal-regs { |
77 | 78 | ||
@@ -95,6 +96,9 @@ | |||
95 | pinctrl-names = "default"; | 96 | pinctrl-names = "default"; |
96 | status = "okay"; | 97 | status = "okay"; |
97 | phy-mode = "rgmii-id"; | 98 | phy-mode = "rgmii-id"; |
99 | buffer-manager = <&bm>; | ||
100 | bm,pool-long = <0>; | ||
101 | bm,pool-short = <1>; | ||
98 | fixed-link { | 102 | fixed-link { |
99 | speed = <1000>; | 103 | speed = <1000>; |
100 | full-duplex; | 104 | full-duplex; |
@@ -106,6 +110,9 @@ | |||
106 | pinctrl-names = "default"; | 110 | pinctrl-names = "default"; |
107 | status = "okay"; | 111 | status = "okay"; |
108 | phy-mode = "rgmii-id"; | 112 | phy-mode = "rgmii-id"; |
113 | buffer-manager = <&bm>; | ||
114 | bm,pool-long = <2>; | ||
115 | bm,pool-short = <3>; | ||
109 | fixed-link { | 116 | fixed-link { |
110 | speed = <1000>; | 117 | speed = <1000>; |
111 | full-duplex; | 118 | full-duplex; |
@@ -156,6 +163,7 @@ | |||
156 | esata@4 { | 163 | esata@4 { |
157 | label = "mamba:white:esata"; | 164 | label = "mamba:white:esata"; |
158 | reg = <0x4>; | 165 | reg = <0x4>; |
166 | linux,default-trigger = "disk-activity"; | ||
159 | }; | 167 | }; |
160 | 168 | ||
161 | usb2@5 { | 169 | usb2@5 { |
@@ -185,6 +193,10 @@ | |||
185 | }; | 193 | }; |
186 | }; | 194 | }; |
187 | 195 | ||
196 | bm@c8000 { | ||
197 | status = "okay"; | ||
198 | }; | ||
199 | |||
188 | nand@d0000 { | 200 | nand@d0000 { |
189 | status = "okay"; | 201 | status = "okay"; |
190 | num-cs = <1>; | 202 | num-cs = <1>; |
@@ -258,6 +270,10 @@ | |||
258 | }; | 270 | }; |
259 | }; | 271 | }; |
260 | }; | 272 | }; |
273 | |||
274 | bm-bppi { | ||
275 | status = "okay"; | ||
276 | }; | ||
261 | }; | 277 | }; |
262 | 278 | ||
263 | gpio_keys { | 279 | gpio_keys { |
diff --git a/arch/arm/boot/dts/aspeed-ast2500-evb.dts b/arch/arm/boot/dts/aspeed-ast2500-evb.dts index d967603dade8..7c90dac99822 100644 --- a/arch/arm/boot/dts/aspeed-ast2500-evb.dts +++ b/arch/arm/boot/dts/aspeed-ast2500-evb.dts | |||
@@ -20,6 +20,28 @@ | |||
20 | }; | 20 | }; |
21 | }; | 21 | }; |
22 | 22 | ||
23 | &fmc { | ||
24 | status = "okay"; | ||
25 | flash@0 { | ||
26 | status = "okay"; | ||
27 | m25p,fast-read; | ||
28 | label = "bmc"; | ||
29 | }; | ||
30 | }; | ||
31 | |||
32 | &spi1 { | ||
33 | status = "okay"; | ||
34 | flash@0 { | ||
35 | status = "okay"; | ||
36 | m25p,fast-read; | ||
37 | label = "pnor"; | ||
38 | }; | ||
39 | }; | ||
40 | |||
41 | &spi2 { | ||
42 | status = "okay"; | ||
43 | }; | ||
44 | |||
23 | &uart5 { | 45 | &uart5 { |
24 | status = "okay"; | 46 | status = "okay"; |
25 | }; | 47 | }; |
diff --git a/arch/arm/boot/dts/aspeed-bmc-opp-palmetto.dts b/arch/arm/boot/dts/aspeed-bmc-opp-palmetto.dts index 1d2fc1e1dc29..112551766275 100644 --- a/arch/arm/boot/dts/aspeed-bmc-opp-palmetto.dts +++ b/arch/arm/boot/dts/aspeed-bmc-opp-palmetto.dts | |||
@@ -31,6 +31,24 @@ | |||
31 | }; | 31 | }; |
32 | }; | 32 | }; |
33 | 33 | ||
34 | &fmc { | ||
35 | status = "okay"; | ||
36 | flash@0 { | ||
37 | status = "okay"; | ||
38 | m25p,fast-read; | ||
39 | label = "bmc"; | ||
40 | }; | ||
41 | }; | ||
42 | |||
43 | &spi { | ||
44 | status = "okay"; | ||
45 | flash@0 { | ||
46 | status = "okay"; | ||
47 | m25p,fast-read; | ||
48 | label = "pnor"; | ||
49 | }; | ||
50 | }; | ||
51 | |||
34 | &uart5 { | 52 | &uart5 { |
35 | status = "okay"; | 53 | status = "okay"; |
36 | }; | 54 | }; |
diff --git a/arch/arm/boot/dts/aspeed-bmc-opp-romulus.dts b/arch/arm/boot/dts/aspeed-bmc-opp-romulus.dts index 7a3b2b50c884..1190fec1b5d0 100644 --- a/arch/arm/boot/dts/aspeed-bmc-opp-romulus.dts +++ b/arch/arm/boot/dts/aspeed-bmc-opp-romulus.dts | |||
@@ -31,6 +31,42 @@ | |||
31 | }; | 31 | }; |
32 | }; | 32 | }; |
33 | 33 | ||
34 | &fmc { | ||
35 | status = "okay"; | ||
36 | flash@0 { | ||
37 | status = "okay"; | ||
38 | m25p,fast-read; | ||
39 | label = "bmc"; | ||
40 | }; | ||
41 | }; | ||
42 | |||
43 | &spi1 { | ||
44 | status = "okay"; | ||
45 | pinctrl-names = "default"; | ||
46 | pinctrl-0 = <&pinctrl_spi1_default>; | ||
47 | |||
48 | flash@0 { | ||
49 | status = "okay"; | ||
50 | m25p,fast-read; | ||
51 | label = "pnor"; | ||
52 | }; | ||
53 | }; | ||
54 | |||
55 | &uart1 { | ||
56 | /* Rear RS-232 connector */ | ||
57 | status = "okay"; | ||
58 | |||
59 | pinctrl-names = "default"; | ||
60 | pinctrl-0 = <&pinctrl_txd1_default | ||
61 | &pinctrl_rxd1_default | ||
62 | &pinctrl_nrts1_default | ||
63 | &pinctrl_ndtr1_default | ||
64 | &pinctrl_ndsr1_default | ||
65 | &pinctrl_ncts1_default | ||
66 | &pinctrl_ndcd1_default | ||
67 | &pinctrl_nri1_default>; | ||
68 | }; | ||
69 | |||
34 | &uart5 { | 70 | &uart5 { |
35 | status = "okay"; | 71 | status = "okay"; |
36 | }; | 72 | }; |
diff --git a/arch/arm/boot/dts/aspeed-g4.dtsi b/arch/arm/boot/dts/aspeed-g4.dtsi index c79c937b0a8a..8c6bc29eb7f6 100644 --- a/arch/arm/boot/dts/aspeed-g4.dtsi +++ b/arch/arm/boot/dts/aspeed-g4.dtsi | |||
@@ -18,21 +18,41 @@ | |||
18 | }; | 18 | }; |
19 | }; | 19 | }; |
20 | 20 | ||
21 | clocks { | ||
22 | clk_clkin: clk_clkin { | ||
23 | #clock-cells = <0>; | ||
24 | compatible = "fixed-clock"; | ||
25 | clock-frequency = <48000000>; | ||
26 | }; | ||
27 | |||
28 | }; | ||
29 | |||
30 | ahb { | 21 | ahb { |
31 | compatible = "simple-bus"; | 22 | compatible = "simple-bus"; |
32 | #address-cells = <1>; | 23 | #address-cells = <1>; |
33 | #size-cells = <1>; | 24 | #size-cells = <1>; |
34 | ranges; | 25 | ranges; |
35 | 26 | ||
27 | fmc: flash-controller@1e620000 { | ||
28 | reg = < 0x1e620000 0x94 | ||
29 | 0x20000000 0x02000000 >; | ||
30 | #address-cells = <1>; | ||
31 | #size-cells = <0>; | ||
32 | compatible = "aspeed,ast2400-fmc"; | ||
33 | status = "disabled"; | ||
34 | interrupts = <19>; | ||
35 | flash@0 { | ||
36 | reg = < 0 >; | ||
37 | compatible = "jedec,spi-nor"; | ||
38 | status = "disabled"; | ||
39 | }; | ||
40 | }; | ||
41 | |||
42 | spi: flash-controller@1e630000 { | ||
43 | reg = < 0x1e630000 0x18 | ||
44 | 0x30000000 0x02000000 >; | ||
45 | #address-cells = <1>; | ||
46 | #size-cells = <0>; | ||
47 | compatible = "aspeed,ast2400-spi"; | ||
48 | status = "disabled"; | ||
49 | flash@0 { | ||
50 | reg = < 0 >; | ||
51 | compatible = "jedec,spi-nor"; | ||
52 | status = "disabled"; | ||
53 | }; | ||
54 | }; | ||
55 | |||
36 | vic: interrupt-controller@1e6c0080 { | 56 | vic: interrupt-controller@1e6c0080 { |
37 | compatible = "aspeed,ast2400-vic"; | 57 | compatible = "aspeed,ast2400-vic"; |
38 | interrupt-controller; | 58 | interrupt-controller; |
@@ -61,16 +81,48 @@ | |||
61 | #size-cells = <1>; | 81 | #size-cells = <1>; |
62 | ranges; | 82 | ranges; |
63 | 83 | ||
64 | clk_hpll: clk_hpll@1e6e2070 { | ||
65 | #clock-cells = <0>; | ||
66 | compatible = "aspeed,g4-hpll-clock"; | ||
67 | reg = <0x1e6e2070 0x4>; | ||
68 | clocks = <&clk_clkin>; | ||
69 | }; | ||
70 | |||
71 | syscon: syscon@1e6e2000 { | 84 | syscon: syscon@1e6e2000 { |
72 | compatible = "aspeed,g4-scu", "syscon", "simple-mfd"; | 85 | compatible = "aspeed,g4-scu", "syscon", "simple-mfd"; |
73 | reg = <0x1e6e2000 0x1a8>; | 86 | reg = <0x1e6e2000 0x1a8>; |
87 | #address-cells = <1>; | ||
88 | #size-cells = <0>; | ||
89 | |||
90 | clk_clkin: clk_clkin { | ||
91 | #clock-cells = <0>; | ||
92 | compatible = "fixed-clock"; | ||
93 | clock-frequency = <48000000>; | ||
94 | }; | ||
95 | |||
96 | clk_hpll: clk_hpll@70 { | ||
97 | #clock-cells = <0>; | ||
98 | compatible = "aspeed,g4-hpll-clock", "fixed-clock"; | ||
99 | reg = <0x70>; | ||
100 | clocks = <&clk_clkin>; | ||
101 | clock-frequency = <384000000>; | ||
102 | }; | ||
103 | |||
104 | clk_ahb: clk_ahb@70 { | ||
105 | #clock-cells = <0>; | ||
106 | compatible = "aspeed,g4-ahb-clock", "fixed-clock"; | ||
107 | reg = <0x70>; | ||
108 | clocks = <&clk_hpll>; | ||
109 | clock-frequency = <192000000>; | ||
110 | }; | ||
111 | |||
112 | clk_apb: clk_apb@08 { | ||
113 | #clock-cells = <0>; | ||
114 | compatible = "aspeed,g4-apb-clock", "fixed-clock"; | ||
115 | reg = <0x08>; | ||
116 | clocks = <&clk_hpll>; | ||
117 | clock-frequency = <48000000>; | ||
118 | }; | ||
119 | |||
120 | clk_uart: clk_uart@2c{ | ||
121 | #clock-cells = <0>; | ||
122 | compatible = "aspeed,g4-uart-clock", "fixed-clock"; | ||
123 | reg = <0x2c>; | ||
124 | clock-frequency = <24000000>; | ||
125 | }; | ||
74 | 126 | ||
75 | pinctrl: pinctrl { | 127 | pinctrl: pinctrl { |
76 | compatible = "aspeed,g4-pinctrl"; | 128 | compatible = "aspeed,g4-pinctrl"; |
@@ -818,19 +870,6 @@ | |||
818 | }; | 870 | }; |
819 | }; | 871 | }; |
820 | 872 | ||
821 | clk_apb: clk_apb@1e6e2008 { | ||
822 | #clock-cells = <0>; | ||
823 | compatible = "aspeed,g4-apb-clock"; | ||
824 | reg = <0x1e6e2008 0x4>; | ||
825 | clocks = <&clk_hpll>; | ||
826 | }; | ||
827 | |||
828 | clk_uart: clk_uart@1e6e2008 { | ||
829 | #clock-cells = <0>; | ||
830 | compatible = "aspeed,uart-clock"; | ||
831 | reg = <0x1e6e202c 0x4>; | ||
832 | }; | ||
833 | |||
834 | sram@1e720000 { | 873 | sram@1e720000 { |
835 | compatible = "mmio-sram"; | 874 | compatible = "mmio-sram"; |
836 | reg = <0x1e720000 0x8000>; // 32K | 875 | reg = <0x1e720000 0x8000>; // 32K |
@@ -857,13 +896,13 @@ | |||
857 | }; | 896 | }; |
858 | 897 | ||
859 | wdt1: wdt@1e785000 { | 898 | wdt1: wdt@1e785000 { |
860 | compatible = "aspeed,wdt"; | 899 | compatible = "aspeed,ast2400-wdt"; |
861 | reg = <0x1e785000 0x1c>; | 900 | reg = <0x1e785000 0x1c>; |
862 | interrupts = <27>; | 901 | interrupts = <27>; |
863 | }; | 902 | }; |
864 | 903 | ||
865 | wdt2: wdt@1e785020 { | 904 | wdt2: wdt@1e785020 { |
866 | compatible = "aspeed,wdt"; | 905 | compatible = "aspeed,ast2400-wdt"; |
867 | reg = <0x1e785020 0x1c>; | 906 | reg = <0x1e785020 0x1c>; |
868 | interrupts = <27>; | 907 | interrupts = <27>; |
869 | clocks = <&clk_apb>; | 908 | clocks = <&clk_apb>; |
@@ -930,6 +969,14 @@ | |||
930 | no-loopback-test; | 969 | no-loopback-test; |
931 | status = "disabled"; | 970 | status = "disabled"; |
932 | }; | 971 | }; |
972 | |||
973 | adc: adc@1e6e9000 { | ||
974 | compatible = "aspeed,ast2400-adc"; | ||
975 | reg = <0x1e6e9000 0xb0>; | ||
976 | clocks = <&clk_apb>; | ||
977 | #io-channel-cells = <1>; | ||
978 | status = "disabled"; | ||
979 | }; | ||
933 | }; | 980 | }; |
934 | }; | 981 | }; |
935 | }; | 982 | }; |
diff --git a/arch/arm/boot/dts/aspeed-g5.dtsi b/arch/arm/boot/dts/aspeed-g5.dtsi index b6596633036c..a0bea4a6ec77 100644 --- a/arch/arm/boot/dts/aspeed-g5.dtsi +++ b/arch/arm/boot/dts/aspeed-g5.dtsi | |||
@@ -24,6 +24,69 @@ | |||
24 | #size-cells = <1>; | 24 | #size-cells = <1>; |
25 | ranges; | 25 | ranges; |
26 | 26 | ||
27 | fmc: flash-controller@1e620000 { | ||
28 | reg = < 0x1e620000 0xc4 | ||
29 | 0x20000000 0x10000000 >; | ||
30 | #address-cells = <1>; | ||
31 | #size-cells = <0>; | ||
32 | compatible = "aspeed,ast2500-fmc"; | ||
33 | status = "disabled"; | ||
34 | interrupts = <19>; | ||
35 | flash@0 { | ||
36 | reg = < 0 >; | ||
37 | compatible = "jedec,spi-nor"; | ||
38 | status = "disabled"; | ||
39 | }; | ||
40 | flash@1 { | ||
41 | reg = < 1 >; | ||
42 | compatible = "jedec,spi-nor"; | ||
43 | status = "disabled"; | ||
44 | }; | ||
45 | flash@2 { | ||
46 | reg = < 2 >; | ||
47 | compatible = "jedec,spi-nor"; | ||
48 | status = "disabled"; | ||
49 | }; | ||
50 | }; | ||
51 | |||
52 | spi1: flash-controller@1e630000 { | ||
53 | reg = < 0x1e630000 0xc4 | ||
54 | 0x30000000 0x08000000 >; | ||
55 | #address-cells = <1>; | ||
56 | #size-cells = <0>; | ||
57 | compatible = "aspeed,ast2500-spi"; | ||
58 | status = "disabled"; | ||
59 | flash@0 { | ||
60 | reg = < 0 >; | ||
61 | compatible = "jedec,spi-nor"; | ||
62 | status = "disabled"; | ||
63 | }; | ||
64 | flash@1 { | ||
65 | reg = < 1 >; | ||
66 | compatible = "jedec,spi-nor"; | ||
67 | status = "disabled"; | ||
68 | }; | ||
69 | }; | ||
70 | |||
71 | spi2: flash-controller@1e631000 { | ||
72 | reg = < 0x1e631000 0xc4 | ||
73 | 0x38000000 0x08000000 >; | ||
74 | #address-cells = <1>; | ||
75 | #size-cells = <0>; | ||
76 | compatible = "aspeed,ast2500-spi"; | ||
77 | status = "disabled"; | ||
78 | flash@0 { | ||
79 | reg = < 0 >; | ||
80 | compatible = "jedec,spi-nor"; | ||
81 | status = "disabled"; | ||
82 | }; | ||
83 | flash@1 { | ||
84 | reg = < 1 >; | ||
85 | compatible = "jedec,spi-nor"; | ||
86 | status = "disabled"; | ||
87 | }; | ||
88 | }; | ||
89 | |||
27 | vic: interrupt-controller@1e6c0080 { | 90 | vic: interrupt-controller@1e6c0080 { |
28 | compatible = "aspeed,ast2400-vic"; | 91 | compatible = "aspeed,ast2400-vic"; |
29 | interrupt-controller; | 92 | interrupt-controller; |
@@ -52,15 +115,49 @@ | |||
52 | #size-cells = <1>; | 115 | #size-cells = <1>; |
53 | ranges; | 116 | ranges; |
54 | 117 | ||
55 | clk_clkin: clk_clkin@1e6e2070 { | ||
56 | #clock-cells = <0>; | ||
57 | compatible = "aspeed,g5-clkin-clock"; | ||
58 | reg = <0x1e6e2070 0x04>; | ||
59 | }; | ||
60 | |||
61 | syscon: syscon@1e6e2000 { | 118 | syscon: syscon@1e6e2000 { |
62 | compatible = "aspeed,g5-scu", "syscon", "simple-mfd"; | 119 | compatible = "aspeed,g5-scu", "syscon", "simple-mfd"; |
63 | reg = <0x1e6e2000 0x1a8>; | 120 | reg = <0x1e6e2000 0x1a8>; |
121 | #address-cells = <1>; | ||
122 | #size-cells = <0>; | ||
123 | |||
124 | clk_clkin: clk_clkin@70 { | ||
125 | #clock-cells = <0>; | ||
126 | compatible = "aspeed,g5-clkin-clock", "fixed-clock"; | ||
127 | reg = <0x70>; | ||
128 | clock-frequency = <24000000>; | ||
129 | }; | ||
130 | |||
131 | clk_hpll: clk_hpll@24 { | ||
132 | #clock-cells = <0>; | ||
133 | compatible = "aspeed,g5-hpll-clock", "fixed-clock"; | ||
134 | reg = <0x24>; | ||
135 | clocks = <&clk_clkin>; | ||
136 | clock-frequency = <792000000>; | ||
137 | }; | ||
138 | |||
139 | clk_ahb: clk_ahb@70 { | ||
140 | #clock-cells = <0>; | ||
141 | compatible = "aspeed,g5-ahb-clock", "fixed-clock"; | ||
142 | reg = <0x70>; | ||
143 | clocks = <&clk_hpll>; | ||
144 | clock-frequency = <198000000>; | ||
145 | }; | ||
146 | |||
147 | clk_apb: clk_apb@08 { | ||
148 | #clock-cells = <0>; | ||
149 | compatible = "aspeed,g5-apb-clock", "fixed-clock"; | ||
150 | reg = <0x08>; | ||
151 | clocks = <&clk_hpll>; | ||
152 | clock-frequency = <24750000>; | ||
153 | }; | ||
154 | |||
155 | clk_uart: clk_uart@2c { | ||
156 | #clock-cells = <0>; | ||
157 | compatible = "aspeed,uart-clock", "fixed-clock"; | ||
158 | reg = <0x2c>; | ||
159 | clock-frequency = <24000000>; | ||
160 | }; | ||
64 | 161 | ||
65 | pinctrl: pinctrl { | 162 | pinctrl: pinctrl { |
66 | compatible = "aspeed,g5-pinctrl"; | 163 | compatible = "aspeed,g5-pinctrl"; |
@@ -285,7 +382,6 @@ | |||
285 | function = "LAD0"; | 382 | function = "LAD0"; |
286 | groups = "LAD0"; | 383 | groups = "LAD0"; |
287 | }; | 384 | }; |
288 | |||
289 | pinctrl_lad1_default: lad1_default { | 385 | pinctrl_lad1_default: lad1_default { |
290 | function = "LAD1"; | 386 | function = "LAD1"; |
291 | groups = "LAD1"; | 387 | groups = "LAD1"; |
@@ -872,33 +968,7 @@ | |||
872 | }; | 968 | }; |
873 | 969 | ||
874 | }; | 970 | }; |
875 | }; | ||
876 | |||
877 | clk_hpll: clk_hpll@1e6e2024 { | ||
878 | #clock-cells = <0>; | ||
879 | compatible = "aspeed,g5-hpll-clock"; | ||
880 | reg = <0x1e6e2024 0x4>; | ||
881 | clocks = <&clk_clkin>; | ||
882 | }; | ||
883 | |||
884 | clk_ahb: clk_ahb@1e6e2070 { | ||
885 | #clock-cells = <0>; | ||
886 | compatible = "aspeed,g5-ahb-clock"; | ||
887 | reg = <0x1e6e2070 0x4>; | ||
888 | clocks = <&clk_hpll>; | ||
889 | }; | ||
890 | 971 | ||
891 | clk_apb: clk_apb@1e6e2008 { | ||
892 | #clock-cells = <0>; | ||
893 | compatible = "aspeed,g5-apb-clock"; | ||
894 | reg = <0x1e6e2008 0x4>; | ||
895 | clocks = <&clk_hpll>; | ||
896 | }; | ||
897 | |||
898 | clk_uart: clk_uart@1e6e2008 { | ||
899 | #clock-cells = <0>; | ||
900 | compatible = "aspeed,uart-clock"; | ||
901 | reg = <0x1e6e202c 0x4>; | ||
902 | }; | 972 | }; |
903 | 973 | ||
904 | gfx: display@1e6e6000 { | 974 | gfx: display@1e6e6000 { |
@@ -934,21 +1004,21 @@ | |||
934 | 1004 | ||
935 | 1005 | ||
936 | wdt1: wdt@1e785000 { | 1006 | wdt1: wdt@1e785000 { |
937 | compatible = "aspeed,wdt"; | 1007 | compatible = "aspeed,ast2500-wdt"; |
938 | reg = <0x1e785000 0x1c>; | 1008 | reg = <0x1e785000 0x20>; |
939 | interrupts = <27>; | 1009 | interrupts = <27>; |
940 | }; | 1010 | }; |
941 | 1011 | ||
942 | wdt2: wdt@1e785020 { | 1012 | wdt2: wdt@1e785020 { |
943 | compatible = "aspeed,wdt"; | 1013 | compatible = "aspeed,ast2500-wdt"; |
944 | reg = <0x1e785020 0x1c>; | 1014 | reg = <0x1e785020 0x20>; |
945 | interrupts = <27>; | 1015 | interrupts = <27>; |
946 | status = "disabled"; | 1016 | status = "disabled"; |
947 | }; | 1017 | }; |
948 | 1018 | ||
949 | wdt3: wdt@1e785040 { | 1019 | wdt3: wdt@1e785040 { |
950 | compatible = "aspeed,wdt"; | 1020 | compatible = "aspeed,ast2500-wdt"; |
951 | reg = <0x1e785074 0x1c>; | 1021 | reg = <0x1e785040 0x20>; |
952 | status = "disabled"; | 1022 | status = "disabled"; |
953 | }; | 1023 | }; |
954 | 1024 | ||
@@ -1042,6 +1112,14 @@ | |||
1042 | no-loopback-test; | 1112 | no-loopback-test; |
1043 | status = "disabled"; | 1113 | status = "disabled"; |
1044 | }; | 1114 | }; |
1115 | |||
1116 | adc: adc@1e6e9000 { | ||
1117 | compatible = "aspeed,ast2500-adc"; | ||
1118 | reg = <0x1e6e9000 0xb0>; | ||
1119 | clocks = <&clk_apb>; | ||
1120 | #io-channel-cells = <1>; | ||
1121 | status = "disabled"; | ||
1122 | }; | ||
1045 | }; | 1123 | }; |
1046 | }; | 1124 | }; |
1047 | }; | 1125 | }; |
diff --git a/arch/arm/boot/dts/at91-sama5d2_xplained.dts b/arch/arm/boot/dts/at91-sama5d2_xplained.dts index 9f7f8a7d8ff9..0bef9e0b89c6 100644 --- a/arch/arm/boot/dts/at91-sama5d2_xplained.dts +++ b/arch/arm/boot/dts/at91-sama5d2_xplained.dts | |||
@@ -246,6 +246,7 @@ | |||
246 | 246 | ||
247 | shdwc@f8048010 { | 247 | shdwc@f8048010 { |
248 | atmel,shdwc-debouncer = <976>; | 248 | atmel,shdwc-debouncer = <976>; |
249 | atmel,wakeup-rtc-timer; | ||
249 | 250 | ||
250 | input@0 { | 251 | input@0 { |
251 | reg = <0>; | 252 | reg = <0>; |
diff --git a/arch/arm/boot/dts/at91-sama5d3_xplained.dts b/arch/arm/boot/dts/at91-sama5d3_xplained.dts index c51fc652f6c7..5a53fcf542ab 100644 --- a/arch/arm/boot/dts/at91-sama5d3_xplained.dts +++ b/arch/arm/boot/dts/at91-sama5d3_xplained.dts | |||
@@ -162,9 +162,10 @@ | |||
162 | }; | 162 | }; |
163 | 163 | ||
164 | adc0: adc@f8018000 { | 164 | adc0: adc@f8018000 { |
165 | atmel,adc-vref = <3300>; | ||
166 | atmel,adc-channels-used = <0xfe>; | ||
165 | pinctrl-0 = < | 167 | pinctrl-0 = < |
166 | &pinctrl_adc0_adtrg | 168 | &pinctrl_adc0_adtrg |
167 | &pinctrl_adc0_ad0 | ||
168 | &pinctrl_adc0_ad1 | 169 | &pinctrl_adc0_ad1 |
169 | &pinctrl_adc0_ad2 | 170 | &pinctrl_adc0_ad2 |
170 | &pinctrl_adc0_ad3 | 171 | &pinctrl_adc0_ad3 |
@@ -172,8 +173,6 @@ | |||
172 | &pinctrl_adc0_ad5 | 173 | &pinctrl_adc0_ad5 |
173 | &pinctrl_adc0_ad6 | 174 | &pinctrl_adc0_ad6 |
174 | &pinctrl_adc0_ad7 | 175 | &pinctrl_adc0_ad7 |
175 | &pinctrl_adc0_ad8 | ||
176 | &pinctrl_adc0_ad9 | ||
177 | >; | 176 | >; |
178 | status = "okay"; | 177 | status = "okay"; |
179 | }; | 178 | }; |
diff --git a/arch/arm/boot/dts/at91-tse850-3.dts b/arch/arm/boot/dts/at91-tse850-3.dts index 669a2c6bdefc..498fba3e52b5 100644 --- a/arch/arm/boot/dts/at91-tse850-3.dts +++ b/arch/arm/boot/dts/at91-tse850-3.dts | |||
@@ -86,16 +86,43 @@ | |||
86 | #io-channel-cells = <1>; | 86 | #io-channel-cells = <1>; |
87 | }; | 87 | }; |
88 | 88 | ||
89 | envelope-detector { | 89 | env_det: envelope-detector { |
90 | compatible = "axentia,tse850-envelope-detector"; | 90 | compatible = "axentia,tse850-envelope-detector"; |
91 | io-channels = <&dac 0>; | 91 | io-channels = <&dac 0>; |
92 | io-channel-names = "dac"; | 92 | io-channel-names = "dac"; |
93 | #io-channel-cells = <1>; | ||
93 | 94 | ||
94 | interrupt-parent = <&pioA>; | 95 | interrupt-parent = <&pioA>; |
95 | interrupts = <3 IRQ_TYPE_EDGE_RISING>; | 96 | interrupts = <3 IRQ_TYPE_EDGE_RISING>; |
96 | interrupt-names = "comp"; | 97 | interrupt-names = "comp"; |
97 | }; | 98 | }; |
98 | 99 | ||
100 | mux: mux-controller { | ||
101 | compatible = "gpio-mux"; | ||
102 | #mux-control-cells = <0>; | ||
103 | |||
104 | mux-gpios = <&pioA 0 GPIO_ACTIVE_HIGH>, | ||
105 | <&pioA 1 GPIO_ACTIVE_HIGH>, | ||
106 | <&pioA 2 GPIO_ACTIVE_HIGH>; | ||
107 | idle-state = <0>; | ||
108 | }; | ||
109 | |||
110 | envelope-detector-mux { | ||
111 | compatible = "io-channel-mux"; | ||
112 | io-channels = <&env_det 0>; | ||
113 | io-channel-names = "parent"; | ||
114 | |||
115 | mux-controls = <&mux>; | ||
116 | |||
117 | channels = "", "", | ||
118 | "sync-1", | ||
119 | "in", | ||
120 | "out", | ||
121 | "sync-2", | ||
122 | "sys-reg", | ||
123 | "ana-reg"; | ||
124 | }; | ||
125 | |||
99 | leds { | 126 | leds { |
100 | compatible = "gpio-leds"; | 127 | compatible = "gpio-leds"; |
101 | 128 | ||
diff --git a/arch/arm/boot/dts/at91sam9261.dtsi b/arch/arm/boot/dts/at91sam9261.dtsi index 3fe77c38bd0d..7e80acda8f69 100644 --- a/arch/arm/boot/dts/at91sam9261.dtsi +++ b/arch/arm/boot/dts/at91sam9261.dtsi | |||
@@ -263,7 +263,7 @@ | |||
263 | }; | 263 | }; |
264 | 264 | ||
265 | matrix: matrix@ffffee00 { | 265 | matrix: matrix@ffffee00 { |
266 | compatible = "atmel,at91sam9260-bus-matrix", "syscon"; | 266 | compatible = "atmel,at91sam9261-matrix", "syscon"; |
267 | reg = <0xffffee00 0x200>; | 267 | reg = <0xffffee00 0x200>; |
268 | }; | 268 | }; |
269 | 269 | ||
diff --git a/arch/arm/boot/dts/at91sam9x5ek.dtsi b/arch/arm/boot/dts/at91sam9x5ek.dtsi index 696b8ba064a6..9d2bbc41a7b0 100644 --- a/arch/arm/boot/dts/at91sam9x5ek.dtsi +++ b/arch/arm/boot/dts/at91sam9x5ek.dtsi | |||
@@ -116,7 +116,7 @@ | |||
116 | }; | 116 | }; |
117 | 117 | ||
118 | spi0: spi@f0000000 { | 118 | spi0: spi@f0000000 { |
119 | status = "okay"; | 119 | status = "disabled"; /* conflicts with mmc1 */ |
120 | cs-gpios = <&pioA 14 0>, <0>, <0>, <0>; | 120 | cs-gpios = <&pioA 14 0>, <0>, <0>, <0>; |
121 | m25p80@0 { | 121 | m25p80@0 { |
122 | compatible = "atmel,at25df321a"; | 122 | compatible = "atmel,at25df321a"; |
diff --git a/arch/arm/boot/dts/axp209.dtsi b/arch/arm/boot/dts/axp209.dtsi index 675bb0f30825..9677dd5cf6b6 100644 --- a/arch/arm/boot/dts/axp209.dtsi +++ b/arch/arm/boot/dts/axp209.dtsi | |||
@@ -53,6 +53,11 @@ | |||
53 | interrupt-controller; | 53 | interrupt-controller; |
54 | #interrupt-cells = <1>; | 54 | #interrupt-cells = <1>; |
55 | 55 | ||
56 | ac_power_supply: ac-power-supply { | ||
57 | compatible = "x-powers,axp202-ac-power-supply"; | ||
58 | status = "disabled"; | ||
59 | }; | ||
60 | |||
56 | axp_gpio: gpio { | 61 | axp_gpio: gpio { |
57 | compatible = "x-powers,axp209-gpio"; | 62 | compatible = "x-powers,axp209-gpio"; |
58 | gpio-controller; | 63 | gpio-controller; |
diff --git a/arch/arm/boot/dts/axp22x.dtsi b/arch/arm/boot/dts/axp22x.dtsi index 458b6681e3ec..67331c5f1714 100644 --- a/arch/arm/boot/dts/axp22x.dtsi +++ b/arch/arm/boot/dts/axp22x.dtsi | |||
@@ -52,6 +52,11 @@ | |||
52 | interrupt-controller; | 52 | interrupt-controller; |
53 | #interrupt-cells = <1>; | 53 | #interrupt-cells = <1>; |
54 | 54 | ||
55 | ac_power_supply: ac-power-supply { | ||
56 | compatible = "x-powers,axp221-ac-power-supply"; | ||
57 | status = "disabled"; | ||
58 | }; | ||
59 | |||
55 | regulators { | 60 | regulators { |
56 | /* Default work frequency for buck regulators */ | 61 | /* Default work frequency for buck regulators */ |
57 | x-powers,dcdc-freq = <3000>; | 62 | x-powers,dcdc-freq = <3000>; |
diff --git a/arch/arm/boot/dts/bcm-cygnus.dtsi b/arch/arm/boot/dts/bcm-cygnus.dtsi index 8833a4c3cd96..9644fddb5e3c 100644 --- a/arch/arm/boot/dts/bcm-cygnus.dtsi +++ b/arch/arm/boot/dts/bcm-cygnus.dtsi | |||
@@ -205,7 +205,7 @@ | |||
205 | status = "disabled"; | 205 | status = "disabled"; |
206 | 206 | ||
207 | msi-parent = <&msi0>; | 207 | msi-parent = <&msi0>; |
208 | msi0: msi@18012000 { | 208 | msi0: msi-controller { |
209 | compatible = "brcm,iproc-msi"; | 209 | compatible = "brcm,iproc-msi"; |
210 | msi-controller; | 210 | msi-controller; |
211 | interrupt-parent = <&gic>; | 211 | interrupt-parent = <&gic>; |
@@ -240,7 +240,7 @@ | |||
240 | status = "disabled"; | 240 | status = "disabled"; |
241 | 241 | ||
242 | msi-parent = <&msi1>; | 242 | msi-parent = <&msi1>; |
243 | msi1: msi@18013000 { | 243 | msi1: msi-controller { |
244 | compatible = "brcm,iproc-msi"; | 244 | compatible = "brcm,iproc-msi"; |
245 | msi-controller; | 245 | msi-controller; |
246 | interrupt-parent = <&gic>; | 246 | interrupt-parent = <&gic>; |
diff --git a/arch/arm/boot/dts/bcm-nsp.dtsi b/arch/arm/boot/dts/bcm-nsp.dtsi index 832795b0fd0f..fe6cba994a97 100644 --- a/arch/arm/boot/dts/bcm-nsp.dtsi +++ b/arch/arm/boot/dts/bcm-nsp.dtsi | |||
@@ -245,6 +245,15 @@ | |||
245 | status = "disabled"; | 245 | status = "disabled"; |
246 | }; | 246 | }; |
247 | 247 | ||
248 | mailbox: mailbox@25000 { | ||
249 | compatible = "brcm,iproc-fa2-mbox"; | ||
250 | reg = <0x25000 0x445>; | ||
251 | interrupts = <GIC_SPI 150 IRQ_TYPE_LEVEL_HIGH>; | ||
252 | #mbox-cells = <1>; | ||
253 | brcm,rx-status-len = <32>; | ||
254 | brcm,use-bcm-hdr; | ||
255 | }; | ||
256 | |||
248 | nand: nand@26000 { | 257 | nand: nand@26000 { |
249 | compatible = "brcm,nand-iproc", "brcm,brcmnand-v6.1"; | 258 | compatible = "brcm,nand-iproc", "brcm,brcmnand-v6.1"; |
250 | reg = <0x026000 0x600>, | 259 | reg = <0x026000 0x600>, |
@@ -288,6 +297,12 @@ | |||
288 | #size-cells = <0>; | 297 | #size-cells = <0>; |
289 | }; | 298 | }; |
290 | 299 | ||
300 | crypto@2f000 { | ||
301 | compatible = "brcm,spum-nsp-crypto"; | ||
302 | reg = <0x2f000 0x900>; | ||
303 | mboxes = <&mailbox 0>; | ||
304 | }; | ||
305 | |||
291 | gpiob: gpio@30000 { | 306 | gpiob: gpio@30000 { |
292 | compatible = "brcm,iproc-nsp-gpio", "brcm,iproc-gpio"; | 307 | compatible = "brcm,iproc-nsp-gpio", "brcm,iproc-gpio"; |
293 | reg = <0x30000 0x50>; | 308 | reg = <0x30000 0x50>; |
@@ -306,6 +321,20 @@ | |||
306 | status = "disabled"; | 321 | status = "disabled"; |
307 | }; | 322 | }; |
308 | 323 | ||
324 | ehci0: usb@2a000 { | ||
325 | compatible = "generic-ehci"; | ||
326 | reg = <0x2a000 0x100>; | ||
327 | interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; | ||
328 | status = "disabled"; | ||
329 | }; | ||
330 | |||
331 | ohci0: usb@2b000 { | ||
332 | compatible = "generic-ohci"; | ||
333 | reg = <0x2b000 0x100>; | ||
334 | interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; | ||
335 | status = "disabled"; | ||
336 | }; | ||
337 | |||
309 | rng: rng@33000 { | 338 | rng: rng@33000 { |
310 | compatible = "brcm,bcm-nsp-rng"; | 339 | compatible = "brcm,bcm-nsp-rng"; |
311 | reg = <0x33000 0x14>; | 340 | reg = <0x33000 0x14>; |
@@ -347,6 +376,7 @@ | |||
347 | #size-cells = <0>; | 376 | #size-cells = <0>; |
348 | interrupts = <GIC_SPI 89 IRQ_TYPE_NONE>; | 377 | interrupts = <GIC_SPI 89 IRQ_TYPE_NONE>; |
349 | clock-frequency = <100000>; | 378 | clock-frequency = <100000>; |
379 | status = "disabled"; | ||
350 | }; | 380 | }; |
351 | 381 | ||
352 | watchdog@39000 { | 382 | watchdog@39000 { |
@@ -450,7 +480,7 @@ | |||
450 | status = "disabled"; | 480 | status = "disabled"; |
451 | 481 | ||
452 | msi-parent = <&msi0>; | 482 | msi-parent = <&msi0>; |
453 | msi0: msi@18012000 { | 483 | msi0: msi-controller { |
454 | compatible = "brcm,iproc-msi"; | 484 | compatible = "brcm,iproc-msi"; |
455 | msi-controller; | 485 | msi-controller; |
456 | interrupt-parent = <&gic>; | 486 | interrupt-parent = <&gic>; |
@@ -486,7 +516,7 @@ | |||
486 | status = "disabled"; | 516 | status = "disabled"; |
487 | 517 | ||
488 | msi-parent = <&msi1>; | 518 | msi-parent = <&msi1>; |
489 | msi1: msi@18013000 { | 519 | msi1: msi-controller { |
490 | compatible = "brcm,iproc-msi"; | 520 | compatible = "brcm,iproc-msi"; |
491 | msi-controller; | 521 | msi-controller; |
492 | interrupt-parent = <&gic>; | 522 | interrupt-parent = <&gic>; |
@@ -522,7 +552,7 @@ | |||
522 | status = "disabled"; | 552 | status = "disabled"; |
523 | 553 | ||
524 | msi-parent = <&msi2>; | 554 | msi-parent = <&msi2>; |
525 | msi2: msi@18014000 { | 555 | msi2: msi-controller { |
526 | compatible = "brcm,iproc-msi"; | 556 | compatible = "brcm,iproc-msi"; |
527 | msi-controller; | 557 | msi-controller; |
528 | interrupt-parent = <&gic>; | 558 | interrupt-parent = <&gic>; |
diff --git a/arch/arm/boot/dts/bcm2835-rpi.dtsi b/arch/arm/boot/dts/bcm2835-rpi.dtsi index 38e6050035bc..a7b5ce133784 100644 --- a/arch/arm/boot/dts/bcm2835-rpi.dtsi +++ b/arch/arm/boot/dts/bcm2835-rpi.dtsi | |||
@@ -69,6 +69,12 @@ | |||
69 | bus-width = <4>; | 69 | bus-width = <4>; |
70 | }; | 70 | }; |
71 | 71 | ||
72 | &sdhost { | ||
73 | pinctrl-names = "default"; | ||
74 | pinctrl-0 = <&sdhost_gpio48>; | ||
75 | bus-width = <4>; | ||
76 | }; | ||
77 | |||
72 | &pwm { | 78 | &pwm { |
73 | pinctrl-names = "default"; | 79 | pinctrl-names = "default"; |
74 | pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>; | 80 | pinctrl-0 = <&pwm0_gpio40 &pwm1_gpio45>; |
@@ -92,3 +98,11 @@ | |||
92 | power-domains = <&power RPI_POWER_DOMAIN_VEC>; | 98 | power-domains = <&power RPI_POWER_DOMAIN_VEC>; |
93 | status = "okay"; | 99 | status = "okay"; |
94 | }; | 100 | }; |
101 | |||
102 | &dsi0 { | ||
103 | power-domains = <&power RPI_POWER_DOMAIN_DSI0>; | ||
104 | }; | ||
105 | |||
106 | &dsi1 { | ||
107 | power-domains = <&power RPI_POWER_DOMAIN_DSI1>; | ||
108 | }; | ||
diff --git a/arch/arm/boot/dts/bcm283x.dtsi b/arch/arm/boot/dts/bcm283x.dtsi index a3106aa446c6..35cea3fcaf5c 100644 --- a/arch/arm/boot/dts/bcm283x.dtsi +++ b/arch/arm/boot/dts/bcm283x.dtsi | |||
@@ -93,10 +93,13 @@ | |||
93 | #clock-cells = <1>; | 93 | #clock-cells = <1>; |
94 | reg = <0x7e101000 0x2000>; | 94 | reg = <0x7e101000 0x2000>; |
95 | 95 | ||
96 | /* CPRMAN derives everything from the platform's | 96 | /* CPRMAN derives almost everything from the |
97 | * oscillator. | 97 | * platform's oscillator. However, the DSI |
98 | * pixel clocks come from the DSI analog PHY. | ||
98 | */ | 99 | */ |
99 | clocks = <&clk_osc>; | 100 | clocks = <&clk_osc>, |
101 | <&dsi0 0>, <&dsi0 1>, <&dsi0 2>, | ||
102 | <&dsi1 0>, <&dsi1 1>, <&dsi1 2>; | ||
100 | }; | 103 | }; |
101 | 104 | ||
102 | rng@7e104000 { | 105 | rng@7e104000 { |
@@ -347,6 +350,16 @@ | |||
347 | arm,primecell-periphid = <0x00241011>; | 350 | arm,primecell-periphid = <0x00241011>; |
348 | }; | 351 | }; |
349 | 352 | ||
353 | sdhost: mmc@7e202000 { | ||
354 | compatible = "brcm,bcm2835-sdhost"; | ||
355 | reg = <0x7e202000 0x100>; | ||
356 | interrupts = <2 24>; | ||
357 | clocks = <&clocks BCM2835_CLOCK_VPU>; | ||
358 | dmas = <&dma 13>; | ||
359 | dma-names = "rx-tx"; | ||
360 | status = "disabled"; | ||
361 | }; | ||
362 | |||
350 | i2s: i2s@7e203000 { | 363 | i2s: i2s@7e203000 { |
351 | compatible = "brcm,bcm2835-i2s"; | 364 | compatible = "brcm,bcm2835-i2s"; |
352 | reg = <0x7e203000 0x20>, | 365 | reg = <0x7e203000 0x20>, |
@@ -390,6 +403,25 @@ | |||
390 | interrupts = <2 14>; /* pwa1 */ | 403 | interrupts = <2 14>; /* pwa1 */ |
391 | }; | 404 | }; |
392 | 405 | ||
406 | dsi0: dsi@7e209000 { | ||
407 | compatible = "brcm,bcm2835-dsi0"; | ||
408 | reg = <0x7e209000 0x78>; | ||
409 | interrupts = <2 4>; | ||
410 | #address-cells = <1>; | ||
411 | #size-cells = <0>; | ||
412 | #clock-cells = <1>; | ||
413 | |||
414 | clocks = <&clocks BCM2835_PLLA_DSI0>, | ||
415 | <&clocks BCM2835_CLOCK_DSI0E>, | ||
416 | <&clocks BCM2835_CLOCK_DSI0P>; | ||
417 | clock-names = "phy", "escape", "pixel"; | ||
418 | |||
419 | clock-output-names = "dsi0_byte", | ||
420 | "dsi0_ddr2", | ||
421 | "dsi0_ddr"; | ||
422 | |||
423 | }; | ||
424 | |||
393 | thermal: thermal@7e212000 { | 425 | thermal: thermal@7e212000 { |
394 | compatible = "brcm,bcm2835-thermal"; | 426 | compatible = "brcm,bcm2835-thermal"; |
395 | reg = <0x7e212000 0x8>; | 427 | reg = <0x7e212000 0x8>; |
@@ -456,6 +488,26 @@ | |||
456 | interrupts = <2 1>; | 488 | interrupts = <2 1>; |
457 | }; | 489 | }; |
458 | 490 | ||
491 | dsi1: dsi@7e700000 { | ||
492 | compatible = "brcm,bcm2835-dsi1"; | ||
493 | reg = <0x7e700000 0x8c>; | ||
494 | interrupts = <2 12>; | ||
495 | #address-cells = <1>; | ||
496 | #size-cells = <0>; | ||
497 | #clock-cells = <1>; | ||
498 | |||
499 | clocks = <&clocks BCM2835_PLLD_DSI1>, | ||
500 | <&clocks BCM2835_CLOCK_DSI1E>, | ||
501 | <&clocks BCM2835_CLOCK_DSI1P>; | ||
502 | clock-names = "phy", "escape", "pixel"; | ||
503 | |||
504 | clock-output-names = "dsi1_byte", | ||
505 | "dsi1_ddr2", | ||
506 | "dsi1_ddr"; | ||
507 | |||
508 | status = "disabled"; | ||
509 | }; | ||
510 | |||
459 | i2c1: i2c@7e804000 { | 511 | i2c1: i2c@7e804000 { |
460 | compatible = "brcm,bcm2835-i2c"; | 512 | compatible = "brcm,bcm2835-i2c"; |
461 | reg = <0x7e804000 0x1000>; | 513 | reg = <0x7e804000 0x1000>; |
@@ -499,6 +551,8 @@ | |||
499 | clocks = <&clocks BCM2835_PLLH_PIX>, | 551 | clocks = <&clocks BCM2835_PLLH_PIX>, |
500 | <&clocks BCM2835_CLOCK_HSM>; | 552 | <&clocks BCM2835_CLOCK_HSM>; |
501 | clock-names = "pixel", "hdmi"; | 553 | clock-names = "pixel", "hdmi"; |
554 | dmas = <&dma 17>; | ||
555 | dma-names = "audio-rx"; | ||
502 | status = "disabled"; | 556 | status = "disabled"; |
503 | }; | 557 | }; |
504 | 558 | ||
diff --git a/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts b/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts index d241cee4bfcc..4175174e589a 100644 --- a/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts +++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac56u.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -31,19 +41,16 @@ | |||
31 | usb3 { | 41 | usb3 { |
32 | label = "bcm53xx:blue:usb3"; | 42 | label = "bcm53xx:blue:usb3"; |
33 | gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>; | 43 | gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>; |
34 | linux,default-trigger = "default-off"; | ||
35 | }; | 44 | }; |
36 | 45 | ||
37 | wan { | 46 | wan { |
38 | label = "bcm53xx:blue:wan"; | 47 | label = "bcm53xx:blue:wan"; |
39 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; | 48 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; |
40 | linux,default-trigger = "default-off"; | ||
41 | }; | 49 | }; |
42 | 50 | ||
43 | lan { | 51 | lan { |
44 | label = "bcm53xx:blue:lan"; | 52 | label = "bcm53xx:blue:lan"; |
45 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; | 53 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; |
46 | linux,default-trigger = "default-off"; | ||
47 | }; | 54 | }; |
48 | 55 | ||
49 | power { | 56 | power { |
@@ -61,14 +68,12 @@ | |||
61 | 2ghz { | 68 | 2ghz { |
62 | label = "bcm53xx:blue:2ghz"; | 69 | label = "bcm53xx:blue:2ghz"; |
63 | gpios = <&chipcommon 6 GPIO_ACTIVE_LOW>; | 70 | gpios = <&chipcommon 6 GPIO_ACTIVE_LOW>; |
64 | linux,default-trigger = "default-off"; | ||
65 | }; | 71 | }; |
66 | 72 | ||
67 | 73 | ||
68 | usb2 { | 74 | usb2 { |
69 | label = "bcm53xx:blue:usb2"; | 75 | label = "bcm53xx:blue:usb2"; |
70 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; | 76 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; |
71 | linux,default-trigger = "default-off"; | ||
72 | }; | 77 | }; |
73 | }; | 78 | }; |
74 | 79 | ||
diff --git a/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts b/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts index b0e62042f62f..8fa033fea959 100644 --- a/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts +++ b/arch/arm/boot/dts/bcm4708-asus-rt-ac68u.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -31,7 +41,6 @@ | |||
31 | usb2 { | 41 | usb2 { |
32 | label = "bcm53xx:blue:usb2"; | 42 | label = "bcm53xx:blue:usb2"; |
33 | gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>; | 43 | gpios = <&chipcommon 0 GPIO_ACTIVE_LOW>; |
34 | linux,default-trigger = "default-off"; | ||
35 | }; | 44 | }; |
36 | 45 | ||
37 | power { | 46 | power { |
@@ -49,7 +58,6 @@ | |||
49 | usb3 { | 58 | usb3 { |
50 | label = "bcm53xx:blue:usb3"; | 59 | label = "bcm53xx:blue:usb3"; |
51 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; | 60 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; |
52 | linux,default-trigger = "default-off"; | ||
53 | }; | 61 | }; |
54 | }; | 62 | }; |
55 | 63 | ||
diff --git a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts index c9ba6b964b38..62e1427b3f10 100644 --- a/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts +++ b/arch/arm/boot/dts/bcm4708-buffalo-wzr-1750dhp.dts | |||
@@ -52,13 +52,11 @@ | |||
52 | usb { | 52 | usb { |
53 | label = "bcm53xx:blue:usb"; | 53 | label = "bcm53xx:blue:usb"; |
54 | gpios = <&hc595 0 GPIO_ACTIVE_HIGH>; | 54 | gpios = <&hc595 0 GPIO_ACTIVE_HIGH>; |
55 | linux,default-trigger = "default-off"; | ||
56 | }; | 55 | }; |
57 | 56 | ||
58 | power0 { | 57 | power0 { |
59 | label = "bcm53xx:red:power"; | 58 | label = "bcm53xx:red:power"; |
60 | gpios = <&hc595 1 GPIO_ACTIVE_HIGH>; | 59 | gpios = <&hc595 1 GPIO_ACTIVE_HIGH>; |
61 | linux,default-trigger = "default-off"; | ||
62 | }; | 60 | }; |
63 | 61 | ||
64 | power1 { | 62 | power1 { |
@@ -76,7 +74,6 @@ | |||
76 | router1 { | 74 | router1 { |
77 | label = "bcm53xx:amber:router"; | 75 | label = "bcm53xx:amber:router"; |
78 | gpios = <&hc595 4 GPIO_ACTIVE_HIGH>; | 76 | gpios = <&hc595 4 GPIO_ACTIVE_HIGH>; |
79 | linux,default-trigger = "default-off"; | ||
80 | }; | 77 | }; |
81 | 78 | ||
82 | wan { | 79 | wan { |
@@ -88,13 +85,11 @@ | |||
88 | wireless0 { | 85 | wireless0 { |
89 | label = "bcm53xx:blue:wireless"; | 86 | label = "bcm53xx:blue:wireless"; |
90 | gpios = <&hc595 6 GPIO_ACTIVE_HIGH>; | 87 | gpios = <&hc595 6 GPIO_ACTIVE_HIGH>; |
91 | linux,default-trigger = "default-off"; | ||
92 | }; | 88 | }; |
93 | 89 | ||
94 | wireless1 { | 90 | wireless1 { |
95 | label = "bcm53xx:amber:wireless"; | 91 | label = "bcm53xx:amber:wireless"; |
96 | gpios = <&hc595 7 GPIO_ACTIVE_HIGH>; | 92 | gpios = <&hc595 7 GPIO_ACTIVE_HIGH>; |
97 | linux,default-trigger = "default-off"; | ||
98 | }; | 93 | }; |
99 | }; | 94 | }; |
100 | 95 | ||
diff --git a/arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts b/arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts new file mode 100644 index 000000000000..126ab5867772 --- /dev/null +++ b/arch/arm/boot/dts/bcm4708-linksys-ea6300-v1.dts | |||
@@ -0,0 +1,41 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl> | ||
3 | * | ||
4 | * Licensed under the ISC license. | ||
5 | */ | ||
6 | |||
7 | /dts-v1/; | ||
8 | |||
9 | #include "bcm4708.dtsi" | ||
10 | #include "bcm5301x-nand-cs0-bch8.dtsi" | ||
11 | |||
12 | / { | ||
13 | compatible = "linksys,ea6300-v1", "brcm,bcm4708"; | ||
14 | model = "Linksys EA6300 V1"; | ||
15 | |||
16 | chosen { | ||
17 | bootargs = "console=ttyS0,115200"; | ||
18 | }; | ||
19 | |||
20 | memory { | ||
21 | reg = <0x00000000 0x08000000>; | ||
22 | }; | ||
23 | |||
24 | gpio-keys { | ||
25 | compatible = "gpio-keys"; | ||
26 | #address-cells = <1>; | ||
27 | #size-cells = <0>; | ||
28 | |||
29 | wps { | ||
30 | label = "WPS"; | ||
31 | linux,code = <KEY_WPS_BUTTON>; | ||
32 | gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>; | ||
33 | }; | ||
34 | |||
35 | restart { | ||
36 | label = "Reset"; | ||
37 | linux,code = <KEY_RESTART>; | ||
38 | gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>; | ||
39 | }; | ||
40 | }; | ||
41 | }; | ||
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts index b9f66c0fae27..a5647efe4118 100644 --- a/arch/arm/boot/dts/bcm4708-netgear-r6250.dts +++ b/arch/arm/boot/dts/bcm4708-netgear-r6250.dts | |||
@@ -43,19 +43,16 @@ | |||
43 | power1 { | 43 | power1 { |
44 | label = "bcm53xx:amber:power"; | 44 | label = "bcm53xx:amber:power"; |
45 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | 45 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; |
46 | linux,default-trigger = "default-off"; | ||
47 | }; | 46 | }; |
48 | 47 | ||
49 | usb { | 48 | usb { |
50 | label = "bcm53xx:blue:usb"; | 49 | label = "bcm53xx:blue:usb"; |
51 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; | 50 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; |
52 | linux,default-trigger = "default-off"; | ||
53 | }; | 51 | }; |
54 | 52 | ||
55 | wireless { | 53 | wireless { |
56 | label = "bcm53xx:blue:wireless"; | 54 | label = "bcm53xx:blue:wireless"; |
57 | gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>; | 55 | gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>; |
58 | linux,default-trigger = "default-off"; | ||
59 | }; | 56 | }; |
60 | }; | 57 | }; |
61 | 58 | ||
diff --git a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts index ae0199f6c7a2..bb66cebe0bd8 100644 --- a/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts +++ b/arch/arm/boot/dts/bcm4708-netgear-r6300-v2.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -37,7 +47,6 @@ | |||
37 | power0 { | 47 | power0 { |
38 | label = "bcm53xx:green:power"; | 48 | label = "bcm53xx:green:power"; |
39 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; | 49 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; |
40 | linux,default-trigger = "default-off"; | ||
41 | }; | 50 | }; |
42 | 51 | ||
43 | power1 { | 52 | power1 { |
@@ -49,13 +58,11 @@ | |||
49 | usb { | 58 | usb { |
50 | label = "bcm53xx:blue:usb"; | 59 | label = "bcm53xx:blue:usb"; |
51 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; | 60 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; |
52 | linux,default-trigger = "default-off"; | ||
53 | }; | 61 | }; |
54 | 62 | ||
55 | wireless { | 63 | wireless { |
56 | label = "bcm53xx:blue:wireless"; | 64 | label = "bcm53xx:blue:wireless"; |
57 | gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>; | 65 | gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>; |
58 | linux,default-trigger = "default-off"; | ||
59 | }; | 66 | }; |
60 | }; | 67 | }; |
61 | 68 | ||
diff --git a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts index 36b628b190d7..19ee924d7d53 100644 --- a/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts +++ b/arch/arm/boot/dts/bcm4708-smartrg-sr400ac.dts | |||
@@ -37,61 +37,51 @@ | |||
37 | power-amber { | 37 | power-amber { |
38 | label = "bcm53xx:amber:power"; | 38 | label = "bcm53xx:amber:power"; |
39 | gpios = <&chipcommon 2 GPIO_ACTIVE_HIGH>; | 39 | gpios = <&chipcommon 2 GPIO_ACTIVE_HIGH>; |
40 | linux,default-trigger = "default-off"; | ||
41 | }; | 40 | }; |
42 | 41 | ||
43 | usb2 { | 42 | usb2 { |
44 | label = "bcm53xx:white:usb2"; | 43 | label = "bcm53xx:white:usb2"; |
45 | gpios = <&chipcommon 3 GPIO_ACTIVE_HIGH>; | 44 | gpios = <&chipcommon 3 GPIO_ACTIVE_HIGH>; |
46 | linux,default-trigger = "default-off"; | ||
47 | }; | 45 | }; |
48 | 46 | ||
49 | usb3-white { | 47 | usb3-white { |
50 | label = "bcm53xx:white:usb3"; | 48 | label = "bcm53xx:white:usb3"; |
51 | gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; | 49 | gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; |
52 | linux,default-trigger = "default-off"; | ||
53 | }; | 50 | }; |
54 | 51 | ||
55 | usb3-green { | 52 | usb3-green { |
56 | label = "bcm53xx:green:usb3"; | 53 | label = "bcm53xx:green:usb3"; |
57 | gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; | 54 | gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; |
58 | linux,default-trigger = "default-off"; | ||
59 | }; | 55 | }; |
60 | 56 | ||
61 | wps { | 57 | wps { |
62 | label = "bcm53xx:white:wps"; | 58 | label = "bcm53xx:white:wps"; |
63 | gpios = <&chipcommon 6 GPIO_ACTIVE_HIGH>; | 59 | gpios = <&chipcommon 6 GPIO_ACTIVE_HIGH>; |
64 | linux,default-trigger = "default-off"; | ||
65 | }; | 60 | }; |
66 | 61 | ||
67 | status-red { | 62 | status-red { |
68 | label = "bcm53xx:red:status"; | 63 | label = "bcm53xx:red:status"; |
69 | gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>; | 64 | gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>; |
70 | linux,default-trigger = "default-off"; | ||
71 | }; | 65 | }; |
72 | 66 | ||
73 | status-green { | 67 | status-green { |
74 | label = "bcm53xx:green:status"; | 68 | label = "bcm53xx:green:status"; |
75 | gpios = <&chipcommon 9 GPIO_ACTIVE_HIGH>; | 69 | gpios = <&chipcommon 9 GPIO_ACTIVE_HIGH>; |
76 | linux,default-trigger = "default-off"; | ||
77 | }; | 70 | }; |
78 | 71 | ||
79 | status-blue { | 72 | status-blue { |
80 | label = "bcm53xx:blue:status"; | 73 | label = "bcm53xx:blue:status"; |
81 | gpios = <&chipcommon 10 GPIO_ACTIVE_HIGH>; | 74 | gpios = <&chipcommon 10 GPIO_ACTIVE_HIGH>; |
82 | linux,default-trigger = "default-off"; | ||
83 | }; | 75 | }; |
84 | 76 | ||
85 | wan-white { | 77 | wan-white { |
86 | label = "bcm53xx:white:wan"; | 78 | label = "bcm53xx:white:wan"; |
87 | gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>; | 79 | gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>; |
88 | linux,default-trigger = "default-off"; | ||
89 | }; | 80 | }; |
90 | 81 | ||
91 | wan-red { | 82 | wan-red { |
92 | label = "bcm53xx:red:wan"; | 83 | label = "bcm53xx:red:wan"; |
93 | gpios = <&chipcommon 13 GPIO_ACTIVE_HIGH>; | 84 | gpios = <&chipcommon 13 GPIO_ACTIVE_HIGH>; |
94 | linux,default-trigger = "default-off"; | ||
95 | }; | 85 | }; |
96 | }; | 86 | }; |
97 | 87 | ||
diff --git a/arch/arm/boot/dts/bcm4708.dtsi b/arch/arm/boot/dts/bcm4708.dtsi index d0eec099f1f8..1a19e97a987d 100644 --- a/arch/arm/boot/dts/bcm4708.dtsi +++ b/arch/arm/boot/dts/bcm4708.dtsi | |||
@@ -12,6 +12,14 @@ | |||
12 | / { | 12 | / { |
13 | compatible = "brcm,bcm4708"; | 13 | compatible = "brcm,bcm4708"; |
14 | 14 | ||
15 | aliases { | ||
16 | serial0 = &uart0; | ||
17 | }; | ||
18 | |||
19 | chosen { | ||
20 | stdout-path = "serial0:115200n8"; | ||
21 | }; | ||
22 | |||
15 | cpus { | 23 | cpus { |
16 | #address-cells = <1>; | 24 | #address-cells = <1>; |
17 | #size-cells = <0>; | 25 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts index db8608be0ee7..0800a964f2fe 100644 --- a/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts +++ b/arch/arm/boot/dts/bcm47081-asus-rt-n18u.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -37,7 +47,6 @@ | |||
37 | usb2 { | 47 | usb2 { |
38 | label = "bcm53xx:blue:usb2"; | 48 | label = "bcm53xx:blue:usb2"; |
39 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | 49 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; |
40 | linux,default-trigger = "default-off"; | ||
41 | }; | 50 | }; |
42 | 51 | ||
43 | wan { | 52 | wan { |
@@ -55,7 +64,6 @@ | |||
55 | usb3 { | 64 | usb3 { |
56 | label = "bcm53xx:blue:usb3"; | 65 | label = "bcm53xx:blue:usb3"; |
57 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; | 66 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; |
58 | linux,default-trigger = "default-off"; | ||
59 | }; | 67 | }; |
60 | }; | 68 | }; |
61 | 69 | ||
diff --git a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts index d51586d95b9a..c2af33eb47de 100644 --- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts +++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-600dhp2.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2014 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -58,7 +68,6 @@ | |||
58 | power1 { | 68 | power1 { |
59 | label = "bcm53xx:red:power"; | 69 | label = "bcm53xx:red:power"; |
60 | gpios = <&hc595 2 GPIO_ACTIVE_HIGH>; | 70 | gpios = <&hc595 2 GPIO_ACTIVE_HIGH>; |
61 | linux,default-trigger = "default-off"; | ||
62 | }; | 71 | }; |
63 | 72 | ||
64 | router0 { | 73 | router0 { |
@@ -70,7 +79,6 @@ | |||
70 | router1 { | 79 | router1 { |
71 | label = "bcm53xx:amber:router"; | 80 | label = "bcm53xx:amber:router"; |
72 | gpios = <&hc595 4 GPIO_ACTIVE_HIGH>; | 81 | gpios = <&hc595 4 GPIO_ACTIVE_HIGH>; |
73 | linux,default-trigger = "default-off"; | ||
74 | }; | 82 | }; |
75 | 83 | ||
76 | wan { | 84 | wan { |
@@ -82,13 +90,11 @@ | |||
82 | wireless0 { | 90 | wireless0 { |
83 | label = "bcm53xx:green:wireless"; | 91 | label = "bcm53xx:green:wireless"; |
84 | gpios = <&hc595 6 GPIO_ACTIVE_HIGH>; | 92 | gpios = <&hc595 6 GPIO_ACTIVE_HIGH>; |
85 | linux,default-trigger = "default-off"; | ||
86 | }; | 93 | }; |
87 | 94 | ||
88 | wireless1 { | 95 | wireless1 { |
89 | label = "bcm53xx:amber:wireless"; | 96 | label = "bcm53xx:amber:wireless"; |
90 | gpios = <&hc595 7 GPIO_ACTIVE_HIGH>; | 97 | gpios = <&hc595 7 GPIO_ACTIVE_HIGH>; |
91 | linux,default-trigger = "default-off"; | ||
92 | }; | 98 | }; |
93 | }; | 99 | }; |
94 | 100 | ||
diff --git a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts index de041b8c3342..8bef6429feee 100644 --- a/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts +++ b/arch/arm/boot/dts/bcm47081-buffalo-wzr-900dhp.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
diff --git a/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts b/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts new file mode 100644 index 000000000000..a854a5174b7f --- /dev/null +++ b/arch/arm/boot/dts/bcm47081-tplink-archer-c5-v2.dts | |||
@@ -0,0 +1,98 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl> | ||
3 | * | ||
4 | * Licensed under the ISC license. | ||
5 | */ | ||
6 | |||
7 | /dts-v1/; | ||
8 | |||
9 | #include "bcm47081.dtsi" | ||
10 | |||
11 | / { | ||
12 | compatible = "tplink,archer-c5-v2", "brcm,bcm47081", "brcm,bcm4708"; | ||
13 | model = "TP-LINK Archer C5 V2"; | ||
14 | |||
15 | chosen { | ||
16 | bootargs = "earlycon"; | ||
17 | }; | ||
18 | |||
19 | memory { | ||
20 | reg = <0x00000000 0x08000000>; | ||
21 | }; | ||
22 | |||
23 | leds { | ||
24 | compatible = "gpio-leds"; | ||
25 | |||
26 | 2ghz { | ||
27 | label = "bcm53xx:green:2ghz"; | ||
28 | gpios = <&chipcommon 0 GPIO_ACTIVE_HIGH>; | ||
29 | }; | ||
30 | |||
31 | lan { | ||
32 | label = "bcm53xx:green:lan"; | ||
33 | gpios = <&chipcommon 1 GPIO_ACTIVE_HIGH>; | ||
34 | }; | ||
35 | |||
36 | usb2-port1 { | ||
37 | label = "bcm53xx:green:usb2-port1"; | ||
38 | gpios = <&chipcommon 2 GPIO_ACTIVE_HIGH>; | ||
39 | }; | ||
40 | |||
41 | power { | ||
42 | label = "bcm53xx:green:power"; | ||
43 | gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; | ||
44 | linux,default-trigger = "default-on"; | ||
45 | }; | ||
46 | |||
47 | wan-green { | ||
48 | label = "bcm53xx:green:wan"; | ||
49 | gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; | ||
50 | }; | ||
51 | |||
52 | wps { | ||
53 | label = "bcm53xx:green:wps"; | ||
54 | gpios = <&chipcommon 6 GPIO_ACTIVE_HIGH>; | ||
55 | }; | ||
56 | |||
57 | wan-amber { | ||
58 | label = "bcm53xx:amber:wan"; | ||
59 | gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>; | ||
60 | }; | ||
61 | |||
62 | 5ghz { | ||
63 | label = "bcm53xx:green:5ghz"; | ||
64 | gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>; | ||
65 | }; | ||
66 | |||
67 | usb2-port2 { | ||
68 | label = "bcm53xx:green:usb2-port2"; | ||
69 | gpios = <&chipcommon 13 GPIO_ACTIVE_HIGH>; | ||
70 | }; | ||
71 | }; | ||
72 | |||
73 | gpio-keys { | ||
74 | compatible = "gpio-keys"; | ||
75 | #address-cells = <1>; | ||
76 | #size-cells = <0>; | ||
77 | |||
78 | rfkill { | ||
79 | label = "WiFi"; | ||
80 | linux,code = <KEY_RFKILL>; | ||
81 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | ||
82 | }; | ||
83 | |||
84 | restart { | ||
85 | label = "Reset"; | ||
86 | linux,code = <KEY_RESTART>; | ||
87 | gpios = <&chipcommon 7 GPIO_ACTIVE_LOW>; | ||
88 | }; | ||
89 | }; | ||
90 | }; | ||
91 | |||
92 | &spi_nor { | ||
93 | status = "okay"; | ||
94 | }; | ||
95 | |||
96 | &usb2 { | ||
97 | vcc-gpio = <&chipcommon 9 GPIO_ACTIVE_HIGH>; | ||
98 | }; | ||
diff --git a/arch/arm/boot/dts/bcm47081.dtsi b/arch/arm/boot/dts/bcm47081.dtsi index c5f7619af4a6..9829d044aaf4 100644 --- a/arch/arm/boot/dts/bcm47081.dtsi +++ b/arch/arm/boot/dts/bcm47081.dtsi | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright © 2014 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright © 2014 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | #include "bcm5301x.dtsi" | 20 | #include "bcm5301x.dtsi" |
@@ -12,6 +22,14 @@ | |||
12 | / { | 22 | / { |
13 | compatible = "brcm,bcm47081"; | 23 | compatible = "brcm,bcm47081"; |
14 | 24 | ||
25 | aliases { | ||
26 | serial0 = &uart0; | ||
27 | }; | ||
28 | |||
29 | chosen { | ||
30 | stdout-path = "serial0:115200n8"; | ||
31 | }; | ||
32 | |||
15 | cpus { | 33 | cpus { |
16 | #address-cells = <1>; | 34 | #address-cells = <1>; |
17 | #size-cells = <0>; | 35 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts index eaca6876db0f..df473cc41572 100644 --- a/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts +++ b/arch/arm/boot/dts/bcm4709-asus-rt-ac87u.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -31,7 +41,6 @@ | |||
31 | wps { | 41 | wps { |
32 | label = "bcm53xx:blue:wps"; | 42 | label = "bcm53xx:blue:wps"; |
33 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; | 43 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; |
34 | linux,default-trigger = "default-off"; | ||
35 | }; | 44 | }; |
36 | 45 | ||
37 | power { | 46 | power { |
@@ -43,7 +52,6 @@ | |||
43 | wan { | 52 | wan { |
44 | label = "bcm53xx:red:wan"; | 53 | label = "bcm53xx:red:wan"; |
45 | gpios = <&chipcommon 5 GPIO_ACTIVE_LOW>; | 54 | gpios = <&chipcommon 5 GPIO_ACTIVE_LOW>; |
46 | linux,default-trigger = "default-off"; | ||
47 | }; | 55 | }; |
48 | }; | 56 | }; |
49 | 57 | ||
diff --git a/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts b/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts index b32957ca9443..92058c73ee59 100644 --- a/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts +++ b/arch/arm/boot/dts/bcm4709-buffalo-wxr-1900dhp.dts | |||
@@ -31,13 +31,11 @@ | |||
31 | usb { | 31 | usb { |
32 | label = "bcm53xx:green:usb"; | 32 | label = "bcm53xx:green:usb"; |
33 | gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; | 33 | gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; |
34 | linux,default-trigger = "default-off"; | ||
35 | }; | 34 | }; |
36 | 35 | ||
37 | power-amber { | 36 | power-amber { |
38 | label = "bcm53xx:amber:power"; | 37 | label = "bcm53xx:amber:power"; |
39 | gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; | 38 | gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; |
40 | linux,default-trigger = "default-off"; | ||
41 | }; | 39 | }; |
42 | 40 | ||
43 | power-white { | 41 | power-white { |
@@ -49,37 +47,31 @@ | |||
49 | router-amber { | 47 | router-amber { |
50 | label = "bcm53xx:amber:router"; | 48 | label = "bcm53xx:amber:router"; |
51 | gpios = <&chipcommon 7 GPIO_ACTIVE_HIGH>; | 49 | gpios = <&chipcommon 7 GPIO_ACTIVE_HIGH>; |
52 | linux,default-trigger = "default-off"; | ||
53 | }; | 50 | }; |
54 | 51 | ||
55 | router-white { | 52 | router-white { |
56 | label = "bcm53xx:white:router"; | 53 | label = "bcm53xx:white:router"; |
57 | gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>; | 54 | gpios = <&chipcommon 8 GPIO_ACTIVE_HIGH>; |
58 | linux,default-trigger = "default-off"; | ||
59 | }; | 55 | }; |
60 | 56 | ||
61 | wan-amber { | 57 | wan-amber { |
62 | label = "bcm53xx:amber:wan"; | 58 | label = "bcm53xx:amber:wan"; |
63 | gpios = <&chipcommon 9 GPIO_ACTIVE_HIGH>; | 59 | gpios = <&chipcommon 9 GPIO_ACTIVE_HIGH>; |
64 | linux,default-trigger = "default-off"; | ||
65 | }; | 60 | }; |
66 | 61 | ||
67 | wan-white { | 62 | wan-white { |
68 | label = "bcm53xx:white:wan"; | 63 | label = "bcm53xx:white:wan"; |
69 | gpios = <&chipcommon 10 GPIO_ACTIVE_HIGH>; | 64 | gpios = <&chipcommon 10 GPIO_ACTIVE_HIGH>; |
70 | linux,default-trigger = "default-off"; | ||
71 | }; | 65 | }; |
72 | 66 | ||
73 | wireless-amber { | 67 | wireless-amber { |
74 | label = "bcm53xx:amber:wireless"; | 68 | label = "bcm53xx:amber:wireless"; |
75 | gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>; | 69 | gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>; |
76 | linux,default-trigger = "default-off"; | ||
77 | }; | 70 | }; |
78 | 71 | ||
79 | wireless-white { | 72 | wireless-white { |
80 | label = "bcm53xx:white:wireless"; | 73 | label = "bcm53xx:white:wireless"; |
81 | gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>; | 74 | gpios = <&chipcommon 12 GPIO_ACTIVE_HIGH>; |
82 | linux,default-trigger = "default-off"; | ||
83 | }; | 75 | }; |
84 | }; | 76 | }; |
85 | 77 | ||
diff --git a/arch/arm/boot/dts/bcm4709-linksys-ea9200.dts b/arch/arm/boot/dts/bcm4709-linksys-ea9200.dts new file mode 100644 index 000000000000..3d1d9c2c4efc --- /dev/null +++ b/arch/arm/boot/dts/bcm4709-linksys-ea9200.dts | |||
@@ -0,0 +1,42 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl> | ||
3 | * | ||
4 | * Licensed under the ISC license. | ||
5 | */ | ||
6 | |||
7 | /dts-v1/; | ||
8 | |||
9 | #include "bcm4709.dtsi" | ||
10 | #include "bcm5301x-nand-cs0-bch8.dtsi" | ||
11 | |||
12 | / { | ||
13 | compatible = "linksys,ea9200", "brcm,bcm4709", "brcm,bcm4708"; | ||
14 | model = "Linksys EA9200"; | ||
15 | |||
16 | chosen { | ||
17 | bootargs = "console=ttyS0,115200"; | ||
18 | }; | ||
19 | |||
20 | memory { | ||
21 | reg = <0x00000000 0x08000000 | ||
22 | 0x88000000 0x08000000>; | ||
23 | }; | ||
24 | |||
25 | gpio-keys { | ||
26 | compatible = "gpio-keys"; | ||
27 | #address-cells = <1>; | ||
28 | #size-cells = <0>; | ||
29 | |||
30 | wps { | ||
31 | label = "WPS"; | ||
32 | linux,code = <KEY_WPS_BUTTON>; | ||
33 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | ||
34 | }; | ||
35 | |||
36 | restart { | ||
37 | label = "Reset"; | ||
38 | linux,code = <KEY_RESTART>; | ||
39 | gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; | ||
40 | }; | ||
41 | }; | ||
42 | }; | ||
diff --git a/arch/arm/boot/dts/bcm4709-netgear-r7000.dts b/arch/arm/boot/dts/bcm4709-netgear-r7000.dts index f459a98a72c6..f43ab4721456 100644 --- a/arch/arm/boot/dts/bcm4709-netgear-r7000.dts +++ b/arch/arm/boot/dts/bcm4709-netgear-r7000.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -37,43 +47,36 @@ | |||
37 | power-amber { | 47 | power-amber { |
38 | label = "bcm53xx:amber:power"; | 48 | label = "bcm53xx:amber:power"; |
39 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | 49 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; |
40 | linux,default-trigger = "default-off"; | ||
41 | }; | 50 | }; |
42 | 51 | ||
43 | 5ghz { | 52 | 5ghz { |
44 | label = "bcm53xx:white:5ghz"; | 53 | label = "bcm53xx:white:5ghz"; |
45 | gpios = <&chipcommon 12 GPIO_ACTIVE_LOW>; | 54 | gpios = <&chipcommon 12 GPIO_ACTIVE_LOW>; |
46 | linux,default-trigger = "default-off"; | ||
47 | }; | 55 | }; |
48 | 56 | ||
49 | 2ghz { | 57 | 2ghz { |
50 | label = "bcm53xx:white:2ghz"; | 58 | label = "bcm53xx:white:2ghz"; |
51 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; | 59 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; |
52 | linux,default-trigger = "default-off"; | ||
53 | }; | 60 | }; |
54 | 61 | ||
55 | wps { | 62 | wps { |
56 | label = "bcm53xx:white:wps"; | 63 | label = "bcm53xx:white:wps"; |
57 | gpios = <&chipcommon 14 GPIO_ACTIVE_HIGH>; | 64 | gpios = <&chipcommon 14 GPIO_ACTIVE_HIGH>; |
58 | linux,default-trigger = "default-off"; | ||
59 | }; | 65 | }; |
60 | 66 | ||
61 | wireless { | 67 | wireless { |
62 | label = "bcm53xx:white:wireless"; | 68 | label = "bcm53xx:white:wireless"; |
63 | gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>; | 69 | gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>; |
64 | linux,default-trigger = "default-off"; | ||
65 | }; | 70 | }; |
66 | 71 | ||
67 | usb3 { | 72 | usb3 { |
68 | label = "bcm53xx:white:usb3"; | 73 | label = "bcm53xx:white:usb3"; |
69 | gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; | 74 | gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; |
70 | linux,default-trigger = "default-off"; | ||
71 | }; | 75 | }; |
72 | 76 | ||
73 | usb2 { | 77 | usb2 { |
74 | label = "bcm53xx:white:usb2"; | 78 | label = "bcm53xx:white:usb2"; |
75 | gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>; | 79 | gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>; |
76 | linux,default-trigger = "default-off"; | ||
77 | }; | 80 | }; |
78 | }; | 81 | }; |
79 | 82 | ||
diff --git a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts index 8e39a84e5bf9..d266131652ad 100644 --- a/arch/arm/boot/dts/bcm4709-netgear-r8000.dts +++ b/arch/arm/boot/dts/bcm4709-netgear-r8000.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2015 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -28,58 +38,61 @@ | |||
28 | leds { | 38 | leds { |
29 | compatible = "gpio-leds"; | 39 | compatible = "gpio-leds"; |
30 | 40 | ||
31 | power0 { | 41 | power-white { |
32 | label = "bcm53xx:white:power"; | 42 | label = "bcm53xx:white:power"; |
33 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; | 43 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; |
34 | linux,default-trigger = "default-on"; | 44 | linux,default-trigger = "default-on"; |
35 | }; | 45 | }; |
36 | 46 | ||
37 | power1 { | 47 | power-amber { |
38 | label = "bcm53xx:amber:power"; | 48 | label = "bcm53xx:amber:power"; |
39 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | 49 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; |
40 | linux,default-trigger = "default-off"; | 50 | }; |
51 | |||
52 | wan-white { | ||
53 | label = "bcm53xx:white:wan"; | ||
54 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; | ||
55 | linux,default-trigger = "default-on"; | ||
56 | }; | ||
57 | |||
58 | wan-amber { | ||
59 | label = "bcm53xx:amber:wan"; | ||
60 | gpios = <&chipcommon 9 GPIO_ACTIVE_HIGH>; | ||
41 | }; | 61 | }; |
42 | 62 | ||
43 | 5ghz-1 { | 63 | 5ghz-1 { |
44 | label = "bcm53xx:white:5ghz-1"; | 64 | label = "bcm53xx:white:5ghz-1"; |
45 | gpios = <&chipcommon 12 GPIO_ACTIVE_LOW>; | 65 | gpios = <&chipcommon 12 GPIO_ACTIVE_LOW>; |
46 | linux,default-trigger = "default-off"; | ||
47 | }; | 66 | }; |
48 | 67 | ||
49 | 2ghz { | 68 | 2ghz { |
50 | label = "bcm53xx:white:2ghz"; | 69 | label = "bcm53xx:white:2ghz"; |
51 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; | 70 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; |
52 | linux,default-trigger = "default-off"; | ||
53 | }; | 71 | }; |
54 | 72 | ||
55 | wireless { | 73 | wireless { |
56 | label = "bcm53xx:white:wireless"; | 74 | label = "bcm53xx:white:wireless"; |
57 | gpios = <&chipcommon 14 GPIO_ACTIVE_HIGH>; | 75 | gpios = <&chipcommon 14 GPIO_ACTIVE_HIGH>; |
58 | linux,default-trigger = "default-off"; | ||
59 | }; | 76 | }; |
60 | 77 | ||
61 | wps { | 78 | wps { |
62 | label = "bcm53xx:white:wps"; | 79 | label = "bcm53xx:white:wps"; |
63 | gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>; | 80 | gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>; |
64 | linux,default-trigger = "default-off"; | ||
65 | }; | 81 | }; |
66 | 82 | ||
67 | 5ghz-2 { | 83 | 5ghz-2 { |
68 | label = "bcm53xx:white:5ghz-2"; | 84 | label = "bcm53xx:white:5ghz-2"; |
69 | gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>; | 85 | gpios = <&chipcommon 16 GPIO_ACTIVE_LOW>; |
70 | linux,default-trigger = "default-off"; | ||
71 | }; | 86 | }; |
72 | 87 | ||
73 | usb3 { | 88 | usb3 { |
74 | label = "bcm53xx:white:usb3"; | 89 | label = "bcm53xx:white:usb3"; |
75 | gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; | 90 | gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; |
76 | linux,default-trigger = "default-off"; | ||
77 | }; | 91 | }; |
78 | 92 | ||
79 | usb2 { | 93 | usb2 { |
80 | label = "bcm53xx:white:usb2"; | 94 | label = "bcm53xx:white:usb2"; |
81 | gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>; | 95 | gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>; |
82 | linux,default-trigger = "default-off"; | ||
83 | }; | 96 | }; |
84 | }; | 97 | }; |
85 | 98 | ||
@@ -105,6 +118,12 @@ | |||
105 | linux,code = <KEY_RESTART>; | 118 | linux,code = <KEY_RESTART>; |
106 | gpios = <&chipcommon 6 GPIO_ACTIVE_LOW>; | 119 | gpios = <&chipcommon 6 GPIO_ACTIVE_LOW>; |
107 | }; | 120 | }; |
121 | |||
122 | brightness { | ||
123 | label = "Backlight"; | ||
124 | linux,code = <KEY_BRIGHTNESS_ZERO>; | ||
125 | gpios = <&chipcommon 19 GPIO_ACTIVE_LOW>; | ||
126 | }; | ||
108 | }; | 127 | }; |
109 | }; | 128 | }; |
110 | 129 | ||
diff --git a/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts b/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts index c67bfaa0c8e8..97aa5d59a1d8 100644 --- a/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts +++ b/arch/arm/boot/dts/bcm4709-tplink-archer-c9-v1.dts | |||
@@ -26,49 +26,41 @@ | |||
26 | lan { | 26 | lan { |
27 | label = "bcm53xx:blue:lan"; | 27 | label = "bcm53xx:blue:lan"; |
28 | gpios = <&chipcommon 1 GPIO_ACTIVE_HIGH>; | 28 | gpios = <&chipcommon 1 GPIO_ACTIVE_HIGH>; |
29 | linux,default-trigger = "default-off"; | ||
30 | }; | 29 | }; |
31 | 30 | ||
32 | wps { | 31 | wps { |
33 | label = "bcm53xx:blue:wps"; | 32 | label = "bcm53xx:blue:wps"; |
34 | gpios = <&chipcommon 2 GPIO_ACTIVE_HIGH>; | 33 | gpios = <&chipcommon 2 GPIO_ACTIVE_HIGH>; |
35 | linux,default-trigger = "default-off"; | ||
36 | }; | 34 | }; |
37 | 35 | ||
38 | 2ghz { | 36 | 2ghz { |
39 | label = "bcm53xx:blue:2ghz"; | 37 | label = "bcm53xx:blue:2ghz"; |
40 | gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; | 38 | gpios = <&chipcommon 4 GPIO_ACTIVE_HIGH>; |
41 | linux,default-trigger = "default-off"; | ||
42 | }; | 39 | }; |
43 | 40 | ||
44 | 5ghz { | 41 | 5ghz { |
45 | label = "bcm53xx:blue:5ghz"; | 42 | label = "bcm53xx:blue:5ghz"; |
46 | gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; | 43 | gpios = <&chipcommon 5 GPIO_ACTIVE_HIGH>; |
47 | linux,default-trigger = "default-off"; | ||
48 | }; | 44 | }; |
49 | 45 | ||
50 | usb3 { | 46 | usb3 { |
51 | label = "bcm53xx:blue:usb3"; | 47 | label = "bcm53xx:blue:usb3"; |
52 | gpios = <&chipcommon 6 GPIO_ACTIVE_HIGH>; | 48 | gpios = <&chipcommon 6 GPIO_ACTIVE_HIGH>; |
53 | linux,default-trigger = "default-off"; | ||
54 | }; | 49 | }; |
55 | 50 | ||
56 | usb2 { | 51 | usb2 { |
57 | label = "bcm53xx:blue:usb2"; | 52 | label = "bcm53xx:blue:usb2"; |
58 | gpios = <&chipcommon 7 GPIO_ACTIVE_HIGH>; | 53 | gpios = <&chipcommon 7 GPIO_ACTIVE_HIGH>; |
59 | linux,default-trigger = "default-off"; | ||
60 | }; | 54 | }; |
61 | 55 | ||
62 | wan-blue { | 56 | wan-blue { |
63 | label = "bcm53xx:blue:wan"; | 57 | label = "bcm53xx:blue:wan"; |
64 | gpios = <&chipcommon 14 GPIO_ACTIVE_HIGH>; | 58 | gpios = <&chipcommon 14 GPIO_ACTIVE_HIGH>; |
65 | linux,default-trigger = "default-off"; | ||
66 | }; | 59 | }; |
67 | 60 | ||
68 | wan-amber { | 61 | wan-amber { |
69 | label = "bcm53xx:amber:wan"; | 62 | label = "bcm53xx:amber:wan"; |
70 | gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>; | 63 | gpios = <&chipcommon 15 GPIO_ACTIVE_HIGH>; |
71 | linux,default-trigger = "default-off"; | ||
72 | }; | 64 | }; |
73 | 65 | ||
74 | power { | 66 | power { |
diff --git a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts index 64ded7643e9f..51b0641b5f79 100644 --- a/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts +++ b/arch/arm/boot/dts/bcm47094-dlink-dir-885l.dts | |||
@@ -4,7 +4,17 @@ | |||
4 | * | 4 | * |
5 | * Copyright (C) 2016 Rafał Miłecki <zajec5@gmail.com> | 5 | * Copyright (C) 2016 Rafał Miłecki <zajec5@gmail.com> |
6 | * | 6 | * |
7 | * Licensed under the GNU/GPL. See COPYING for details. | 7 | * Permission to use, copy, modify, and/or distribute this software for any |
8 | * purpose with or without fee is hereby granted, provided that the above | ||
9 | * copyright notice and this permission notice appear in all copies. | ||
10 | * | ||
11 | * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH | ||
12 | * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY | ||
13 | * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, | ||
14 | * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM | ||
15 | * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE | ||
16 | * OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR | ||
17 | * PERFORMANCE OF THIS SOFTWARE. | ||
8 | */ | 18 | */ |
9 | 19 | ||
10 | /dts-v1/; | 20 | /dts-v1/; |
@@ -46,37 +56,31 @@ | |||
46 | wan-white { | 56 | wan-white { |
47 | label = "bcm53xx:white:wan"; | 57 | label = "bcm53xx:white:wan"; |
48 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; | 58 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; |
49 | linux,default-trigger = "default-off"; | ||
50 | }; | 59 | }; |
51 | 60 | ||
52 | power-amber { | 61 | power-amber { |
53 | label = "bcm53xx:amber:power"; | 62 | label = "bcm53xx:amber:power"; |
54 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; | 63 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; |
55 | linux,default-trigger = "default-off"; | ||
56 | }; | 64 | }; |
57 | 65 | ||
58 | wan-amber { | 66 | wan-amber { |
59 | label = "bcm53xx:amber:wan"; | 67 | label = "bcm53xx:amber:wan"; |
60 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | 68 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; |
61 | linux,default-trigger = "default-off"; | ||
62 | }; | 69 | }; |
63 | 70 | ||
64 | usb3-white { | 71 | usb3-white { |
65 | label = "bcm53xx:white:usb3"; | 72 | label = "bcm53xx:white:usb3"; |
66 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; | 73 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; |
67 | linux,default-trigger = "default-off"; | ||
68 | }; | 74 | }; |
69 | 75 | ||
70 | 2ghz { | 76 | 2ghz { |
71 | label = "bcm53xx:white:2ghz"; | 77 | label = "bcm53xx:white:2ghz"; |
72 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; | 78 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; |
73 | linux,default-trigger = "default-off"; | ||
74 | }; | 79 | }; |
75 | 80 | ||
76 | 5ghz { | 81 | 5ghz { |
77 | label = "bcm53xx:white:5ghz"; | 82 | label = "bcm53xx:white:5ghz"; |
78 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; | 83 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; |
79 | linux,default-trigger = "default-off"; | ||
80 | }; | 84 | }; |
81 | }; | 85 | }; |
82 | 86 | ||
diff --git a/arch/arm/boot/dts/bcm47094-linksys-panamera.dts b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts new file mode 100644 index 000000000000..b6750f70dffb --- /dev/null +++ b/arch/arm/boot/dts/bcm47094-linksys-panamera.dts | |||
@@ -0,0 +1,36 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2017 Rafał Miłecki <rafal@milecki.pl> | ||
3 | * | ||
4 | * Licensed under the ISC license. | ||
5 | */ | ||
6 | |||
7 | /dts-v1/; | ||
8 | |||
9 | #include "bcm47094.dtsi" | ||
10 | #include "bcm5301x-nand-cs0-bch8.dtsi" | ||
11 | |||
12 | / { | ||
13 | compatible = "linksys,panamera", "brcm,bcm47094", "brcm,bcm4708"; | ||
14 | model = "Linksys EA9500"; | ||
15 | |||
16 | chosen { | ||
17 | bootargs = "console=ttyS0,115200"; | ||
18 | }; | ||
19 | |||
20 | memory { | ||
21 | reg = <0x00000000 0x08000000 | ||
22 | 0x88000000 0x08000000>; | ||
23 | }; | ||
24 | |||
25 | gpio-keys { | ||
26 | compatible = "gpio-keys"; | ||
27 | #address-cells = <1>; | ||
28 | #size-cells = <0>; | ||
29 | |||
30 | wps { | ||
31 | label = "WPS"; | ||
32 | linux,code = <KEY_WPS_BUTTON>; | ||
33 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | ||
34 | }; | ||
35 | }; | ||
36 | }; | ||
diff --git a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts index 5cf4ab1ebe85..5f8621d00c50 100644 --- a/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts +++ b/arch/arm/boot/dts/bcm47094-luxul-xwr-3100.dts | |||
@@ -34,37 +34,31 @@ | |||
34 | lan3 { | 34 | lan3 { |
35 | label = "bcm53xx:green:lan3"; | 35 | label = "bcm53xx:green:lan3"; |
36 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; | 36 | gpios = <&chipcommon 1 GPIO_ACTIVE_LOW>; |
37 | linux,default-trigger = "default-off"; | ||
38 | }; | 37 | }; |
39 | 38 | ||
40 | lan4 { | 39 | lan4 { |
41 | label = "bcm53xx:green:lan4"; | 40 | label = "bcm53xx:green:lan4"; |
42 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; | 41 | gpios = <&chipcommon 2 GPIO_ACTIVE_LOW>; |
43 | linux,default-trigger = "default-off"; | ||
44 | }; | 42 | }; |
45 | 43 | ||
46 | wan { | 44 | wan { |
47 | label = "bcm53xx:green:wan"; | 45 | label = "bcm53xx:green:wan"; |
48 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | 46 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; |
49 | linux,default-trigger = "default-off"; | ||
50 | }; | 47 | }; |
51 | 48 | ||
52 | lan1 { | 49 | lan1 { |
53 | label = "bcm53xx:green:lan1"; | 50 | label = "bcm53xx:green:lan1"; |
54 | gpios = <&chipcommon 4 GPIO_ACTIVE_LOW>; | 51 | gpios = <&chipcommon 4 GPIO_ACTIVE_LOW>; |
55 | linux,default-trigger = "default-off"; | ||
56 | }; | 52 | }; |
57 | 53 | ||
58 | lan2 { | 54 | lan2 { |
59 | label = "bcm53xx:green:lan2"; | 55 | label = "bcm53xx:green:lan2"; |
60 | gpios = <&chipcommon 6 GPIO_ACTIVE_LOW>; | 56 | gpios = <&chipcommon 6 GPIO_ACTIVE_LOW>; |
61 | linux,default-trigger = "default-off"; | ||
62 | }; | 57 | }; |
63 | 58 | ||
64 | usb3 { | 59 | usb3 { |
65 | label = "bcm53xx:green:usb3"; | 60 | label = "bcm53xx:green:usb3"; |
66 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; | 61 | gpios = <&chipcommon 8 GPIO_ACTIVE_LOW>; |
67 | linux,default-trigger = "default-off"; | ||
68 | }; | 62 | }; |
69 | 63 | ||
70 | status { | 64 | status { |
@@ -76,13 +70,11 @@ | |||
76 | 2ghz { | 70 | 2ghz { |
77 | label = "bcm53xx:green:2ghz"; | 71 | label = "bcm53xx:green:2ghz"; |
78 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; | 72 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; |
79 | linux,default-trigger = "default-off"; | ||
80 | }; | 73 | }; |
81 | 74 | ||
82 | 5ghz { | 75 | 5ghz { |
83 | label = "bcm53xx:green:5ghz"; | 76 | label = "bcm53xx:green:5ghz"; |
84 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; | 77 | gpios = <&chipcommon 14 GPIO_ACTIVE_LOW>; |
85 | linux,default-trigger = "default-off"; | ||
86 | }; | 78 | }; |
87 | }; | 79 | }; |
88 | 80 | ||
diff --git a/arch/arm/boot/dts/bcm47094-netgear-r8500.dts b/arch/arm/boot/dts/bcm47094-netgear-r8500.dts index 600795ee1aed..859929973158 100644 --- a/arch/arm/boot/dts/bcm47094-netgear-r8500.dts +++ b/arch/arm/boot/dts/bcm47094-netgear-r8500.dts | |||
@@ -34,37 +34,31 @@ | |||
34 | power1 { | 34 | power1 { |
35 | label = "bcm53xx:amber:power"; | 35 | label = "bcm53xx:amber:power"; |
36 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; | 36 | gpios = <&chipcommon 3 GPIO_ACTIVE_LOW>; |
37 | linux,default-trigger = "default-off"; | ||
38 | }; | 37 | }; |
39 | 38 | ||
40 | 5ghz-1 { | 39 | 5ghz-1 { |
41 | label = "bcm53xx:white:5ghz-1"; | 40 | label = "bcm53xx:white:5ghz-1"; |
42 | gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>; | 41 | gpios = <&chipcommon 11 GPIO_ACTIVE_LOW>; |
43 | linux,default-trigger = "default-off"; | ||
44 | }; | 42 | }; |
45 | 43 | ||
46 | 5ghz-2 { | 44 | 5ghz-2 { |
47 | label = "bcm53xx:white:5ghz-2"; | 45 | label = "bcm53xx:white:5ghz-2"; |
48 | gpios = <&chipcommon 12 GPIO_ACTIVE_LOW>; | 46 | gpios = <&chipcommon 12 GPIO_ACTIVE_LOW>; |
49 | linux,default-trigger = "default-off"; | ||
50 | }; | 47 | }; |
51 | 48 | ||
52 | 2ghz { | 49 | 2ghz { |
53 | label = "bcm53xx:white:2ghz"; | 50 | label = "bcm53xx:white:2ghz"; |
54 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; | 51 | gpios = <&chipcommon 13 GPIO_ACTIVE_LOW>; |
55 | linux,default-trigger = "default-off"; | ||
56 | }; | 52 | }; |
57 | 53 | ||
58 | usb2 { | 54 | usb2 { |
59 | label = "bcm53xx:white:usb2"; | 55 | label = "bcm53xx:white:usb2"; |
60 | gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; | 56 | gpios = <&chipcommon 17 GPIO_ACTIVE_LOW>; |
61 | linux,default-trigger = "default-off"; | ||
62 | }; | 57 | }; |
63 | 58 | ||
64 | usb3 { | 59 | usb3 { |
65 | label = "bcm53xx:white:usb3"; | 60 | label = "bcm53xx:white:usb3"; |
66 | gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>; | 61 | gpios = <&chipcommon 18 GPIO_ACTIVE_LOW>; |
67 | linux,default-trigger = "default-off"; | ||
68 | }; | 62 | }; |
69 | }; | 63 | }; |
70 | 64 | ||
diff --git a/arch/arm/boot/dts/bcm47189-tenda-ac9.dts b/arch/arm/boot/dts/bcm47189-tenda-ac9.dts index 4403ae8790c2..34417dac1cd0 100644 --- a/arch/arm/boot/dts/bcm47189-tenda-ac9.dts +++ b/arch/arm/boot/dts/bcm47189-tenda-ac9.dts | |||
@@ -26,19 +26,16 @@ | |||
26 | usb { | 26 | usb { |
27 | label = "bcm53xx:blue:usb"; | 27 | label = "bcm53xx:blue:usb"; |
28 | gpios = <&chipcommon 1 GPIO_ACTIVE_HIGH>; | 28 | gpios = <&chipcommon 1 GPIO_ACTIVE_HIGH>; |
29 | linux,default-trigger = "default-off"; | ||
30 | }; | 29 | }; |
31 | 30 | ||
32 | wps { | 31 | wps { |
33 | label = "bcm53xx:blue:wps"; | 32 | label = "bcm53xx:blue:wps"; |
34 | gpios = <&chipcommon 10 GPIO_ACTIVE_HIGH>; | 33 | gpios = <&chipcommon 10 GPIO_ACTIVE_HIGH>; |
35 | linux,default-trigger = "default-off"; | ||
36 | }; | 34 | }; |
37 | 35 | ||
38 | 5ghz { | 36 | 5ghz { |
39 | label = "bcm53xx:blue:5ghz"; | 37 | label = "bcm53xx:blue:5ghz"; |
40 | gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>; | 38 | gpios = <&chipcommon 11 GPIO_ACTIVE_HIGH>; |
41 | linux,default-trigger = "default-off"; | ||
42 | }; | 39 | }; |
43 | 40 | ||
44 | system { | 41 | system { |
@@ -48,6 +45,15 @@ | |||
48 | }; | 45 | }; |
49 | }; | 46 | }; |
50 | 47 | ||
48 | pcie0_leds { | ||
49 | compatible = "gpio-leds"; | ||
50 | |||
51 | 2ghz { | ||
52 | label = "bcm53xx:blue:2ghz"; | ||
53 | gpios = <&pcie0_chipcommon 3 GPIO_ACTIVE_HIGH>; | ||
54 | }; | ||
55 | }; | ||
56 | |||
51 | gpio-keys { | 57 | gpio-keys { |
52 | compatible = "gpio-keys"; | 58 | compatible = "gpio-keys"; |
53 | #address-cells = <1>; | 59 | #address-cells = <1>; |
@@ -72,3 +78,30 @@ | |||
72 | }; | 78 | }; |
73 | }; | 79 | }; |
74 | }; | 80 | }; |
81 | |||
82 | &pcie0 { | ||
83 | ranges = <0x00000000 0 0 0 0 0x00100000>; | ||
84 | #address-cells = <3>; | ||
85 | #size-cells = <2>; | ||
86 | |||
87 | bridge@0,0,0 { | ||
88 | reg = <0x0000 0 0 0 0>; | ||
89 | ranges = <0x00000000 0 0 0 0 0 0 0x00100000>; | ||
90 | #address-cells = <3>; | ||
91 | #size-cells = <2>; | ||
92 | |||
93 | wifi@0,1,0 { | ||
94 | reg = <0x0000 0 0 0 0>; | ||
95 | ranges = <0x00000000 0 0 0 0x00100000>; | ||
96 | #address-cells = <1>; | ||
97 | #size-cells = <1>; | ||
98 | |||
99 | pcie0_chipcommon: chipcommon@0 { | ||
100 | reg = <0 0x1000>; | ||
101 | |||
102 | gpio-controller; | ||
103 | #gpio-cells = <2>; | ||
104 | }; | ||
105 | }; | ||
106 | }; | ||
107 | }; | ||
diff --git a/arch/arm/boot/dts/bcm5301x.dtsi b/arch/arm/boot/dts/bcm5301x.dtsi index 00de62dc0042..acee36a61004 100644 --- a/arch/arm/boot/dts/bcm5301x.dtsi +++ b/arch/arm/boot/dts/bcm5301x.dtsi | |||
@@ -18,10 +18,6 @@ | |||
18 | / { | 18 | / { |
19 | interrupt-parent = <&gic>; | 19 | interrupt-parent = <&gic>; |
20 | 20 | ||
21 | chosen { | ||
22 | stdout-path = &uart0; | ||
23 | }; | ||
24 | |||
25 | chipcommonA { | 21 | chipcommonA { |
26 | compatible = "simple-bus"; | 22 | compatible = "simple-bus"; |
27 | ranges = <0x00000000 0x18000000 0x00001000>; | 23 | ranges = <0x00000000 0x18000000 0x00001000>; |
@@ -70,10 +66,19 @@ | |||
70 | clocks = <&periph_clk>; | 66 | clocks = <&periph_clk>; |
71 | }; | 67 | }; |
72 | 68 | ||
73 | local-timer@20600 { | 69 | timer@20600 { |
74 | compatible = "arm,cortex-a9-twd-timer"; | 70 | compatible = "arm,cortex-a9-twd-timer"; |
75 | reg = <0x20600 0x100>; | 71 | reg = <0x20600 0x20>; |
76 | interrupts = <GIC_PPI 13 IRQ_TYPE_EDGE_RISING>; | 72 | interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | |
73 | IRQ_TYPE_EDGE_RISING)>; | ||
74 | clocks = <&periph_clk>; | ||
75 | }; | ||
76 | |||
77 | watchdog@20620 { | ||
78 | compatible = "arm,cortex-a9-twd-wdt"; | ||
79 | reg = <0x20620 0x20>; | ||
80 | interrupts = <GIC_PPI 14 (GIC_CPU_MASK_SIMPLE(2) | | ||
81 | IRQ_TYPE_EDGE_RISING)>; | ||
77 | clocks = <&periph_clk>; | 82 | clocks = <&periph_clk>; |
78 | }; | 83 | }; |
79 | 84 | ||
@@ -298,20 +303,6 @@ | |||
298 | }; | 303 | }; |
299 | }; | 304 | }; |
300 | 305 | ||
301 | spi@29000 { | ||
302 | reg = <0x00029000 0x1000>; | ||
303 | #address-cells = <1>; | ||
304 | #size-cells = <0>; | ||
305 | |||
306 | spi_nor: spi-nor@0 { | ||
307 | compatible = "jedec,spi-nor"; | ||
308 | reg = <0>; | ||
309 | spi-max-frequency = <20000000>; | ||
310 | linux,part-probe = "ofpart", "bcm47xxpart"; | ||
311 | status = "disabled"; | ||
312 | }; | ||
313 | }; | ||
314 | |||
315 | gmac0: ethernet@24000 { | 306 | gmac0: ethernet@24000 { |
316 | reg = <0x24000 0x800>; | 307 | reg = <0x24000 0x800>; |
317 | }; | 308 | }; |
@@ -329,6 +320,16 @@ | |||
329 | }; | 320 | }; |
330 | }; | 321 | }; |
331 | 322 | ||
323 | i2c0: i2c@18009000 { | ||
324 | compatible = "brcm,iproc-i2c"; | ||
325 | reg = <0x18009000 0x50>; | ||
326 | interrupts = <GIC_SPI 121 IRQ_TYPE_NONE>; | ||
327 | #address-cells = <1>; | ||
328 | #size-cells = <0>; | ||
329 | clock-frequency = <100000>; | ||
330 | status = "disabled"; | ||
331 | }; | ||
332 | |||
332 | lcpll0: lcpll0@1800c100 { | 333 | lcpll0: lcpll0@1800c100 { |
333 | #clock-cells = <1>; | 334 | #clock-cells = <1>; |
334 | compatible = "brcm,nsp-lcpll0"; | 335 | compatible = "brcm,nsp-lcpll0"; |
@@ -375,4 +376,40 @@ | |||
375 | 376 | ||
376 | brcm,nand-has-wp; | 377 | brcm,nand-has-wp; |
377 | }; | 378 | }; |
379 | |||
380 | spi@18029200 { | ||
381 | compatible = "brcm,spi-bcm-qspi", "brcm,spi-nsp-qspi"; | ||
382 | reg = <0x18029200 0x184>, | ||
383 | <0x18029000 0x124>, | ||
384 | <0x1811b408 0x004>, | ||
385 | <0x180293a0 0x01c>; | ||
386 | reg-names = "mspi", "bspi", "intr_regs", "intr_status_reg"; | ||
387 | interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>, | ||
388 | <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>, | ||
389 | <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>, | ||
390 | <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>, | ||
391 | <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>, | ||
392 | <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>, | ||
393 | <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; | ||
394 | interrupt-names = "spi_lr_fullness_reached", | ||
395 | "spi_lr_session_aborted", | ||
396 | "spi_lr_impatient", | ||
397 | "spi_lr_session_done", | ||
398 | "spi_lr_overhead", | ||
399 | "mspi_done", | ||
400 | "mspi_halted"; | ||
401 | clocks = <&iprocmed>; | ||
402 | clock-names = "iprocmed"; | ||
403 | num-cs = <2>; | ||
404 | #address-cells = <1>; | ||
405 | #size-cells = <0>; | ||
406 | |||
407 | spi_nor: spi-nor@0 { | ||
408 | compatible = "jedec,spi-nor"; | ||
409 | reg = <0>; | ||
410 | spi-max-frequency = <20000000>; | ||
411 | linux,part-probe = "ofpart", "bcm47xxpart"; | ||
412 | status = "disabled"; | ||
413 | }; | ||
414 | }; | ||
378 | }; | 415 | }; |
diff --git a/arch/arm/boot/dts/bcm53573.dtsi b/arch/arm/boot/dts/bcm53573.dtsi index 2da04d0a7348..eae623f76401 100644 --- a/arch/arm/boot/dts/bcm53573.dtsi +++ b/arch/arm/boot/dts/bcm53573.dtsi | |||
@@ -13,8 +13,12 @@ | |||
13 | / { | 13 | / { |
14 | interrupt-parent = <&gic>; | 14 | interrupt-parent = <&gic>; |
15 | 15 | ||
16 | aliases { | ||
17 | serial0 = &uart0; | ||
18 | }; | ||
19 | |||
16 | chosen { | 20 | chosen { |
17 | stdout-path = &uart0; | 21 | stdout-path = "serial0:115200n8"; |
18 | }; | 22 | }; |
19 | 23 | ||
20 | cpus { | 24 | cpus { |
@@ -113,6 +117,10 @@ | |||
113 | }; | 117 | }; |
114 | }; | 118 | }; |
115 | 119 | ||
120 | pcie0: pcie@2000 { | ||
121 | reg = <0x00002000 0x1000>; | ||
122 | }; | ||
123 | |||
116 | usb2: usb2@4000 { | 124 | usb2: usb2@4000 { |
117 | reg = <0x4000 0x1000>; | 125 | reg = <0x4000 0x1000>; |
118 | ranges; | 126 | ranges; |
diff --git a/arch/arm/boot/dts/bcm94708.dts b/arch/arm/boot/dts/bcm94708.dts index 42855a7c1bfa..2e08c895f281 100644 --- a/arch/arm/boot/dts/bcm94708.dts +++ b/arch/arm/boot/dts/bcm94708.dts | |||
@@ -38,14 +38,6 @@ | |||
38 | model = "NorthStar SVK (BCM94708)"; | 38 | model = "NorthStar SVK (BCM94708)"; |
39 | compatible = "brcm,bcm94708", "brcm,bcm4708"; | 39 | compatible = "brcm,bcm94708", "brcm,bcm4708"; |
40 | 40 | ||
41 | aliases { | ||
42 | serial0 = &uart0; | ||
43 | }; | ||
44 | |||
45 | chosen { | ||
46 | stdout-path = "serial0:115200n8"; | ||
47 | }; | ||
48 | |||
49 | memory { | 41 | memory { |
50 | reg = <0x00000000 0x08000000>; | 42 | reg = <0x00000000 0x08000000>; |
51 | }; | 43 | }; |
diff --git a/arch/arm/boot/dts/bcm94709.dts b/arch/arm/boot/dts/bcm94709.dts index 95e8be65f2f1..c37616c67edc 100644 --- a/arch/arm/boot/dts/bcm94709.dts +++ b/arch/arm/boot/dts/bcm94709.dts | |||
@@ -38,14 +38,6 @@ | |||
38 | model = "NorthStar SVK (BCM94709)"; | 38 | model = "NorthStar SVK (BCM94709)"; |
39 | compatible = "brcm,bcm94709", "brcm,bcm4709", "brcm,bcm4708"; | 39 | compatible = "brcm,bcm94709", "brcm,bcm4709", "brcm,bcm4708"; |
40 | 40 | ||
41 | aliases { | ||
42 | serial0 = &uart0; | ||
43 | }; | ||
44 | |||
45 | chosen { | ||
46 | stdout-path = "serial0:115200n8"; | ||
47 | }; | ||
48 | |||
49 | memory { | 41 | memory { |
50 | reg = <0x00000000 0x08000000>; | 42 | reg = <0x00000000 0x08000000>; |
51 | }; | 43 | }; |
diff --git a/arch/arm/boot/dts/bcm953012er.dts b/arch/arm/boot/dts/bcm953012er.dts index decd86bae901..40e694bfe5ca 100644 --- a/arch/arm/boot/dts/bcm953012er.dts +++ b/arch/arm/boot/dts/bcm953012er.dts | |||
@@ -39,14 +39,6 @@ | |||
39 | model = "NorthStar Enterprise Router (BCM953012ER)"; | 39 | model = "NorthStar Enterprise Router (BCM953012ER)"; |
40 | compatible = "brcm,bcm953012er", "brcm,brcm53012", "brcm,bcm4708"; | 40 | compatible = "brcm,bcm953012er", "brcm,brcm53012", "brcm,bcm4708"; |
41 | 41 | ||
42 | aliases { | ||
43 | serial0 = &uart0; | ||
44 | }; | ||
45 | |||
46 | chosen { | ||
47 | stdout-path = "serial0:115200n8"; | ||
48 | }; | ||
49 | |||
50 | memory { | 42 | memory { |
51 | reg = <0x00000000 0x8000000>; | 43 | reg = <0x00000000 0x8000000>; |
52 | }; | 44 | }; |
diff --git a/arch/arm/boot/dts/bcm953012hr.dts b/arch/arm/boot/dts/bcm953012hr.dts new file mode 100644 index 000000000000..3076e81699cf --- /dev/null +++ b/arch/arm/boot/dts/bcm953012hr.dts | |||
@@ -0,0 +1,97 @@ | |||
1 | /* | ||
2 | * SPDX-License-Identifier: BSD-3-Clause | ||
3 | * | ||
4 | * Copyright(c) 2017 Broadcom | ||
5 | * | ||
6 | * Redistribution and use in source and binary forms, with or without | ||
7 | * modification, are permitted provided that the following conditions | ||
8 | * are met: | ||
9 | * | ||
10 | * * Redistributions of source code must retain the above copyright | ||
11 | * notice, this list of conditions and the following disclaimer. | ||
12 | * * Redistributions in binary form must reproduce the above copyright | ||
13 | * notice, this list of conditions and the following disclaimer in | ||
14 | * the documentation and/or other materials provided with the | ||
15 | * distribution. | ||
16 | * * Neither the name of Broadcom nor the names of its contributors | ||
17 | * may be used to endorse or promote products derived from this | ||
18 | * software without specific prior written permission. | ||
19 | * | ||
20 | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS | ||
21 | * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT | ||
22 | * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR | ||
23 | * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT | ||
24 | * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, | ||
25 | * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT | ||
26 | * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, | ||
27 | * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY | ||
28 | * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT | ||
29 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE | ||
30 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | ||
31 | */ | ||
32 | |||
33 | /dts-v1/; | ||
34 | |||
35 | #include "bcm4708.dtsi" | ||
36 | #include "bcm5301x-nand-cs0-bch4.dtsi" | ||
37 | |||
38 | / { | ||
39 | model = "NorthStar HR (BCM953012HR)"; | ||
40 | compatible = "brcm,bcm953012hr", "brcm,brcm53012", "brcm,bcm4708"; | ||
41 | |||
42 | aliases { | ||
43 | ethernet0 = &gmac0; | ||
44 | ethernet1 = &gmac1; | ||
45 | ethernet2 = &gmac2; | ||
46 | }; | ||
47 | |||
48 | memory@80000000 { | ||
49 | reg = <0x80000000 0x10000000>; | ||
50 | }; | ||
51 | }; | ||
52 | |||
53 | &nandcs { | ||
54 | partition@0 { | ||
55 | label = "nboot"; | ||
56 | reg = <0x00000000 0x00200000>; | ||
57 | read-only; | ||
58 | }; | ||
59 | partition@200000 { | ||
60 | label = "nenv"; | ||
61 | reg = <0x00200000 0x00400000>; | ||
62 | }; | ||
63 | partition@600000 { | ||
64 | label = "nsystem"; | ||
65 | reg = <0x00600000 0x00a00000>; | ||
66 | }; | ||
67 | partition@1000000 { | ||
68 | label = "nrootfs"; | ||
69 | reg = <0x01000000 0x07000000>; | ||
70 | }; | ||
71 | }; | ||
72 | |||
73 | &spi_nor { | ||
74 | status = "okay"; | ||
75 | spi-max-frequency = <62500000>; | ||
76 | m25p,default-addr-width = <3>; | ||
77 | |||
78 | #address-cells = <1>; | ||
79 | #size-cells = <1>; | ||
80 | |||
81 | partition@0 { | ||
82 | label = "boot"; | ||
83 | reg = <0x00000000 0x000d0000>; | ||
84 | }; | ||
85 | partition@d000 { | ||
86 | label = "env"; | ||
87 | reg = <0x000d0000 0x00030000>; | ||
88 | }; | ||
89 | partition@100000 { | ||
90 | label = "system"; | ||
91 | reg = <0x00100000 0x00600000>; | ||
92 | }; | ||
93 | partition@700000 { | ||
94 | label = "rootfs"; | ||
95 | reg = <0x00700000 0x00900000>; | ||
96 | }; | ||
97 | }; | ||
diff --git a/arch/arm/boot/dts/bcm953012k.dts b/arch/arm/boot/dts/bcm953012k.dts index ae31a5826e91..79c168e2714b 100644 --- a/arch/arm/boot/dts/bcm953012k.dts +++ b/arch/arm/boot/dts/bcm953012k.dts | |||
@@ -43,15 +43,69 @@ | |||
43 | serial1 = &uart1; | 43 | serial1 = &uart1; |
44 | }; | 44 | }; |
45 | 45 | ||
46 | chosen { | ||
47 | stdout-path = "serial0:115200n8"; | ||
48 | }; | ||
49 | |||
50 | memory { | 46 | memory { |
51 | reg = <0x80000000 0x10000000>; | 47 | reg = <0x80000000 0x10000000>; |
52 | }; | 48 | }; |
53 | }; | 49 | }; |
54 | 50 | ||
51 | &nand { | ||
52 | nandcs@0 { | ||
53 | compatible = "brcm,nandcs"; | ||
54 | reg = <0>; | ||
55 | nand-on-flash-bbt; | ||
56 | |||
57 | #address-cells = <1>; | ||
58 | #size-cells = <1>; | ||
59 | |||
60 | nand-ecc-strength = <4>; | ||
61 | nand-ecc-step-size = <512>; | ||
62 | |||
63 | partition@0 { | ||
64 | label = "nboot"; | ||
65 | reg = <0x00000000 0x00200000>; | ||
66 | read-only; | ||
67 | }; | ||
68 | partition@200000 { | ||
69 | label = "nenv"; | ||
70 | reg = <0x00200000 0x00400000>; | ||
71 | }; | ||
72 | partition@600000 { | ||
73 | label = "nsystem"; | ||
74 | reg = <0x00600000 0x00a00000>; | ||
75 | }; | ||
76 | partition@1000000 { | ||
77 | label = "nrootfs"; | ||
78 | reg = <0x01000000 0x07000000>; | ||
79 | }; | ||
80 | }; | ||
81 | }; | ||
82 | |||
83 | &spi_nor { | ||
84 | status = "okay"; | ||
85 | spi-max-frequency = <62500000>; | ||
86 | m25p,default-addr-width = <3>; | ||
87 | |||
88 | #address-cells = <1>; | ||
89 | #size-cells = <1>; | ||
90 | |||
91 | partition@0 { | ||
92 | label = "boot"; | ||
93 | reg = <0x00000000 0x000d0000>; | ||
94 | }; | ||
95 | partition@d000 { | ||
96 | label = "env"; | ||
97 | reg = <0x000d0000 0x00030000>; | ||
98 | }; | ||
99 | partition@100000 { | ||
100 | label = "system"; | ||
101 | reg = <0x00100000 0x00600000>; | ||
102 | }; | ||
103 | partition@700000 { | ||
104 | label = "rootfs"; | ||
105 | reg = <0x00700000 0x00900000>; | ||
106 | }; | ||
107 | }; | ||
108 | |||
55 | &uart0 { | 109 | &uart0 { |
56 | status = "okay"; | 110 | status = "okay"; |
57 | }; | 111 | }; |
diff --git a/arch/arm/boot/dts/bcm958522er.dts b/arch/arm/boot/dts/bcm958522er.dts index df05e7f568af..f5c42962c201 100644 --- a/arch/arm/boot/dts/bcm958522er.dts +++ b/arch/arm/boot/dts/bcm958522er.dts | |||
@@ -60,7 +60,7 @@ | |||
60 | }; | 60 | }; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | /* USB 2/3 support needed to be complete */ | 63 | /* USB 3 support needed to be complete */ |
64 | 64 | ||
65 | &amac0 { | 65 | &amac0 { |
66 | status = "okay"; | 66 | status = "okay"; |
@@ -70,6 +70,10 @@ | |||
70 | status = "okay"; | 70 | status = "okay"; |
71 | }; | 71 | }; |
72 | 72 | ||
73 | &ehci0 { | ||
74 | status = "okay"; | ||
75 | }; | ||
76 | |||
73 | &nand { | 77 | &nand { |
74 | nandcs@0 { | 78 | nandcs@0 { |
75 | compatible = "brcm,nandcs"; | 79 | compatible = "brcm,nandcs"; |
@@ -108,6 +112,10 @@ | |||
108 | }; | 112 | }; |
109 | }; | 113 | }; |
110 | 114 | ||
115 | &ohci0 { | ||
116 | status = "okay"; | ||
117 | }; | ||
118 | |||
111 | &pcie0 { | 119 | &pcie0 { |
112 | status = "okay"; | 120 | status = "okay"; |
113 | }; | 121 | }; |
diff --git a/arch/arm/boot/dts/bcm958525er.dts b/arch/arm/boot/dts/bcm958525er.dts index 4a3ab19c6281..efcb1f67bdad 100644 --- a/arch/arm/boot/dts/bcm958525er.dts +++ b/arch/arm/boot/dts/bcm958525er.dts | |||
@@ -60,7 +60,7 @@ | |||
60 | }; | 60 | }; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | /* USB 2/3 support needed to be complete */ | 63 | /* USB 3 support needed to be complete */ |
64 | 64 | ||
65 | &amac0 { | 65 | &amac0 { |
66 | status = "okay"; | 66 | status = "okay"; |
@@ -70,6 +70,10 @@ | |||
70 | status = "okay"; | 70 | status = "okay"; |
71 | }; | 71 | }; |
72 | 72 | ||
73 | &ehci0 { | ||
74 | status = "okay"; | ||
75 | }; | ||
76 | |||
73 | &nand { | 77 | &nand { |
74 | nandcs@0 { | 78 | nandcs@0 { |
75 | compatible = "brcm,nandcs"; | 79 | compatible = "brcm,nandcs"; |
@@ -108,6 +112,10 @@ | |||
108 | }; | 112 | }; |
109 | }; | 113 | }; |
110 | 114 | ||
115 | &ohci0 { | ||
116 | status = "okay"; | ||
117 | }; | ||
118 | |||
111 | &pcie0 { | 119 | &pcie0 { |
112 | status = "okay"; | 120 | status = "okay"; |
113 | }; | 121 | }; |
diff --git a/arch/arm/boot/dts/bcm958525xmc.dts b/arch/arm/boot/dts/bcm958525xmc.dts index 81f78435d8c7..b335ce02e32f 100644 --- a/arch/arm/boot/dts/bcm958525xmc.dts +++ b/arch/arm/boot/dts/bcm958525xmc.dts | |||
@@ -66,7 +66,13 @@ | |||
66 | status = "okay"; | 66 | status = "okay"; |
67 | }; | 67 | }; |
68 | 68 | ||
69 | &ehci0 { | ||
70 | status = "okay"; | ||
71 | }; | ||
72 | |||
69 | &i2c0 { | 73 | &i2c0 { |
74 | status = "okay"; | ||
75 | |||
70 | temperature-sensor@4c { | 76 | temperature-sensor@4c { |
71 | compatible = "adi,adt7461a"; | 77 | compatible = "adi,adt7461a"; |
72 | reg = <0x4c>; | 78 | reg = <0x4c>; |
@@ -122,6 +128,10 @@ | |||
122 | }; | 128 | }; |
123 | }; | 129 | }; |
124 | 130 | ||
131 | &ohci0 { | ||
132 | status = "okay"; | ||
133 | }; | ||
134 | |||
125 | &pcie0 { | 135 | &pcie0 { |
126 | status = "okay"; | 136 | status = "okay"; |
127 | }; | 137 | }; |
diff --git a/arch/arm/boot/dts/bcm958622hr.dts b/arch/arm/boot/dts/bcm958622hr.dts index c88b8fefcb2f..16ab2d82a14b 100644 --- a/arch/arm/boot/dts/bcm958622hr.dts +++ b/arch/arm/boot/dts/bcm958622hr.dts | |||
@@ -60,7 +60,7 @@ | |||
60 | }; | 60 | }; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | /* USB 2/3 and SLIC support needed to be complete */ | 63 | /* USB 3 and SLIC support needed to be complete */ |
64 | 64 | ||
65 | &amac0 { | 65 | &amac0 { |
66 | status = "okay"; | 66 | status = "okay"; |
@@ -74,6 +74,10 @@ | |||
74 | status = "okay"; | 74 | status = "okay"; |
75 | }; | 75 | }; |
76 | 76 | ||
77 | &ehci0 { | ||
78 | status = "okay"; | ||
79 | }; | ||
80 | |||
77 | &nand { | 81 | &nand { |
78 | nandcs@0 { | 82 | nandcs@0 { |
79 | compatible = "brcm,nandcs"; | 83 | compatible = "brcm,nandcs"; |
@@ -112,6 +116,10 @@ | |||
112 | }; | 116 | }; |
113 | }; | 117 | }; |
114 | 118 | ||
119 | &ohci0 { | ||
120 | status = "okay"; | ||
121 | }; | ||
122 | |||
115 | &pcie0 { | 123 | &pcie0 { |
116 | status = "okay"; | 124 | status = "okay"; |
117 | }; | 125 | }; |
diff --git a/arch/arm/boot/dts/bcm958623hr.dts b/arch/arm/boot/dts/bcm958623hr.dts index d503fa0dde31..9b921c6aa8f8 100644 --- a/arch/arm/boot/dts/bcm958623hr.dts +++ b/arch/arm/boot/dts/bcm958623hr.dts | |||
@@ -60,7 +60,7 @@ | |||
60 | }; | 60 | }; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | /* USB 2/3 and SLIC support needed to be complete */ | 63 | /* USB 3 and SLIC support needed to be complete */ |
64 | 64 | ||
65 | &amac0 { | 65 | &amac0 { |
66 | status = "okay"; | 66 | status = "okay"; |
@@ -74,6 +74,10 @@ | |||
74 | status = "okay"; | 74 | status = "okay"; |
75 | }; | 75 | }; |
76 | 76 | ||
77 | &ehci0 { | ||
78 | status = "okay"; | ||
79 | }; | ||
80 | |||
77 | &nand { | 81 | &nand { |
78 | nandcs@0 { | 82 | nandcs@0 { |
79 | compatible = "brcm,nandcs"; | 83 | compatible = "brcm,nandcs"; |
@@ -112,6 +116,10 @@ | |||
112 | }; | 116 | }; |
113 | }; | 117 | }; |
114 | 118 | ||
119 | &ohci0 { | ||
120 | status = "okay"; | ||
121 | }; | ||
122 | |||
115 | &pcie0 { | 123 | &pcie0 { |
116 | status = "okay"; | 124 | status = "okay"; |
117 | }; | 125 | }; |
diff --git a/arch/arm/boot/dts/bcm958625hr.dts b/arch/arm/boot/dts/bcm958625hr.dts index cc0363b843c1..006b08e41a3b 100644 --- a/arch/arm/boot/dts/bcm958625hr.dts +++ b/arch/arm/boot/dts/bcm958625hr.dts | |||
@@ -72,6 +72,10 @@ | |||
72 | status = "okay"; | 72 | status = "okay"; |
73 | }; | 73 | }; |
74 | 74 | ||
75 | &ehci0 { | ||
76 | status = "okay"; | ||
77 | }; | ||
78 | |||
75 | &nand { | 79 | &nand { |
76 | nandcs@0 { | 80 | nandcs@0 { |
77 | compatible = "brcm,nandcs"; | 81 | compatible = "brcm,nandcs"; |
@@ -110,6 +114,10 @@ | |||
110 | }; | 114 | }; |
111 | }; | 115 | }; |
112 | 116 | ||
117 | &ohci0 { | ||
118 | status = "okay"; | ||
119 | }; | ||
120 | |||
113 | &pcie0 { | 121 | &pcie0 { |
114 | status = "okay"; | 122 | status = "okay"; |
115 | }; | 123 | }; |
diff --git a/arch/arm/boot/dts/bcm958625k.dts b/arch/arm/boot/dts/bcm958625k.dts index f8d47e517e18..64740f85cf4c 100644 --- a/arch/arm/boot/dts/bcm958625k.dts +++ b/arch/arm/boot/dts/bcm958625k.dts | |||
@@ -65,6 +65,10 @@ | |||
65 | status = "okay"; | 65 | status = "okay"; |
66 | }; | 66 | }; |
67 | 67 | ||
68 | &ehci0 { | ||
69 | status = "okay"; | ||
70 | }; | ||
71 | |||
68 | &nand { | 72 | &nand { |
69 | nandcs@0 { | 73 | nandcs@0 { |
70 | compatible = "brcm,nandcs"; | 74 | compatible = "brcm,nandcs"; |
@@ -103,6 +107,10 @@ | |||
103 | }; | 107 | }; |
104 | }; | 108 | }; |
105 | 109 | ||
110 | &ohci0 { | ||
111 | status = "okay"; | ||
112 | }; | ||
113 | |||
106 | &pcie0 { | 114 | &pcie0 { |
107 | status = "okay"; | 115 | status = "okay"; |
108 | }; | 116 | }; |
diff --git a/arch/arm/boot/dts/bcm988312hr.dts b/arch/arm/boot/dts/bcm988312hr.dts index 74e15a3cd9f8..bce251a68591 100644 --- a/arch/arm/boot/dts/bcm988312hr.dts +++ b/arch/arm/boot/dts/bcm988312hr.dts | |||
@@ -60,7 +60,7 @@ | |||
60 | }; | 60 | }; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | /* USB 2/3 support needed to be complete */ | 63 | /* USB 3 support needed to be complete */ |
64 | 64 | ||
65 | &amac0 { | 65 | &amac0 { |
66 | status = "okay"; | 66 | status = "okay"; |
@@ -74,6 +74,10 @@ | |||
74 | status = "okay"; | 74 | status = "okay"; |
75 | }; | 75 | }; |
76 | 76 | ||
77 | &ehci0 { | ||
78 | status = "okay"; | ||
79 | }; | ||
80 | |||
77 | &nand { | 81 | &nand { |
78 | nandcs@0 { | 82 | nandcs@0 { |
79 | compatible = "brcm,nandcs"; | 83 | compatible = "brcm,nandcs"; |
@@ -112,6 +116,10 @@ | |||
112 | }; | 116 | }; |
113 | }; | 117 | }; |
114 | 118 | ||
119 | &ohci0 { | ||
120 | status = "okay"; | ||
121 | }; | ||
122 | |||
115 | &pcie0 { | 123 | &pcie0 { |
116 | status = "okay"; | 124 | status = "okay"; |
117 | }; | 125 | }; |
diff --git a/arch/arm/boot/dts/da850-evm.dts b/arch/arm/boot/dts/da850-evm.dts index d15107cba765..8d244cd76c36 100644 --- a/arch/arm/boot/dts/da850-evm.dts +++ b/arch/arm/boot/dts/da850-evm.dts | |||
@@ -9,6 +9,7 @@ | |||
9 | */ | 9 | */ |
10 | /dts-v1/; | 10 | /dts-v1/; |
11 | #include "da850.dtsi" | 11 | #include "da850.dtsi" |
12 | #include <dt-bindings/gpio/gpio.h> | ||
12 | 13 | ||
13 | / { | 14 | / { |
14 | compatible = "ti,da850-evm", "ti,da850"; | 15 | compatible = "ti,da850-evm", "ti,da850"; |
@@ -78,7 +79,10 @@ | |||
78 | DRVDD-supply = <&vbat>; | 79 | DRVDD-supply = <&vbat>; |
79 | DVDD-supply = <&vbat>; | 80 | DVDD-supply = <&vbat>; |
80 | }; | 81 | }; |
81 | 82 | tca6416: gpio@20 { | |
83 | compatible = "ti,tca6416"; | ||
84 | reg = <0x20>; | ||
85 | }; | ||
82 | }; | 86 | }; |
83 | wdt: wdt@21000 { | 87 | wdt: wdt@21000 { |
84 | status = "okay"; | 88 | status = "okay"; |
@@ -293,20 +297,27 @@ | |||
293 | 297 | ||
294 | &vpif { | 298 | &vpif { |
295 | pinctrl-names = "default"; | 299 | pinctrl-names = "default"; |
296 | pinctrl-0 = <&vpif_capture_pins>; | 300 | pinctrl-0 = <&vpif_capture_pins>, <&vpif_display_pins>; |
297 | status = "okay"; | 301 | status = "okay"; |
298 | 302 | ||
299 | /* VPIF capture port */ | 303 | /* VPIF capture port */ |
300 | port { | 304 | port@0 { |
301 | vpif_ch0: endpoint@0 { | 305 | vpif_input_ch0: endpoint@0 { |
302 | reg = <0>; | 306 | reg = <0>; |
303 | bus-width = <8>; | 307 | bus-width = <8>; |
304 | }; | 308 | }; |
305 | 309 | ||
306 | vpif_ch1: endpoint@1 { | 310 | vpif_input_ch1: endpoint@1 { |
307 | reg = <1>; | 311 | reg = <1>; |
308 | bus-width = <8>; | 312 | bus-width = <8>; |
309 | data-shift = <8>; | 313 | data-shift = <8>; |
314 | }; | ||
315 | }; | ||
316 | |||
317 | /* VPIF display port */ | ||
318 | port@1 { | ||
319 | vpif_output_ch0: endpoint { | ||
320 | bus-width = <8>; | ||
310 | }; | 321 | }; |
311 | }; | 322 | }; |
312 | }; | 323 | }; |
diff --git a/arch/arm/boot/dts/da850-lego-ev3.dts b/arch/arm/boot/dts/da850-lego-ev3.dts index 112ec92064ce..512604ad8b71 100644 --- a/arch/arm/boot/dts/da850-lego-ev3.dts +++ b/arch/arm/boot/dts/da850-lego-ev3.dts | |||
@@ -123,6 +123,14 @@ | |||
123 | pinctrl-0 = <&system_power_pin>; | 123 | pinctrl-0 = <&system_power_pin>; |
124 | }; | 124 | }; |
125 | 125 | ||
126 | sound { | ||
127 | compatible = "pwm-beeper"; | ||
128 | pinctrl-names = "default"; | ||
129 | pinctrl-0 = <&ehrpwm0b_pins>; | ||
130 | pwms = <&ehrpwm0 1 1000000 0>; | ||
131 | amp-supply = <&>; | ||
132 | }; | ||
133 | |||
126 | /* | 134 | /* |
127 | * This is a 5V current limiting regulator that is shared by USB, | 135 | * This is a 5V current limiting regulator that is shared by USB, |
128 | * the sensor (input) ports, the motor (output) ports and the A/DC. | 136 | * the sensor (input) ports, the motor (output) ports and the A/DC. |
@@ -139,18 +147,36 @@ | |||
139 | enable-active-high; | 147 | enable-active-high; |
140 | regulator-boot-on; | 148 | regulator-boot-on; |
141 | }; | 149 | }; |
150 | |||
151 | /* | ||
152 | * This is a simple voltage divider on VCC5V to provide a 2.5V | ||
153 | * reference signal to the ADC. | ||
154 | */ | ||
155 | adc_ref: regulator2 { | ||
156 | compatible = "regulator-fixed"; | ||
157 | regulator-name = "adc ref"; | ||
158 | regulator-min-microvolt = <2500000>; | ||
159 | regulator-max-microvolt = <2500000>; | ||
160 | regulator-boot-on; | ||
161 | vin-supply = <&vcc5v>; | ||
162 | }; | ||
163 | |||
164 | /* | ||
165 | * This is the amplifier for the speaker. | ||
166 | */ | ||
167 | amp: regulator3 { | ||
168 | pinctrl-names = "default"; | ||
169 | pinctrl-0 = <&_pins>; | ||
170 | compatible = "regulator-fixed"; | ||
171 | regulator-name = "amp"; | ||
172 | gpio = <&gpio 111 GPIO_ACTIVE_HIGH>; | ||
173 | enable-active-high; | ||
174 | }; | ||
142 | }; | 175 | }; |
143 | 176 | ||
144 | &pmx_core { | 177 | &pmx_core { |
145 | status = "okay"; | 178 | status = "okay"; |
146 | 179 | ||
147 | spi0_cs3_pin: pinmux_spi0_cs3_pin { | ||
148 | pinctrl-single,bits = < | ||
149 | /* CS3 */ | ||
150 | 0xc 0x01000000 0x0f000000 | ||
151 | >; | ||
152 | }; | ||
153 | |||
154 | mmc0_cd_pin: pinmux_mmc0_cd { | 180 | mmc0_cd_pin: pinmux_mmc0_cd { |
155 | pinctrl-single,bits = < | 181 | pinctrl-single,bits = < |
156 | /* GP5[14] */ | 182 | /* GP5[14] */ |
@@ -195,6 +221,13 @@ | |||
195 | 0x4c 0x00008000 0x0000f000 | 221 | 0x4c 0x00008000 0x0000f000 |
196 | >; | 222 | >; |
197 | }; | 223 | }; |
224 | |||
225 | amp_pins: pinmux_amp_pins { | ||
226 | pinctrl-single,bits = < | ||
227 | /* GP6[15] */ | ||
228 | 0x34 0x00000008 0x0000000f | ||
229 | >; | ||
230 | }; | ||
198 | }; | 231 | }; |
199 | 232 | ||
200 | &pinconf { | 233 | &pinconf { |
@@ -293,6 +326,18 @@ | |||
293 | }; | 326 | }; |
294 | }; | 327 | }; |
295 | }; | 328 | }; |
329 | |||
330 | adc: adc@3 { | ||
331 | compatible = "ti,ads7957"; | ||
332 | reg = <3>; | ||
333 | #io-channel-cells = <1>; | ||
334 | spi-max-frequency = <10000000>; | ||
335 | vref-supply = <&adc_ref>; | ||
336 | }; | ||
337 | }; | ||
338 | |||
339 | &ehrpwm0 { | ||
340 | status = "okay"; | ||
296 | }; | 341 | }; |
297 | 342 | ||
298 | &gpio { | 343 | &gpio { |
diff --git a/arch/arm/boot/dts/da850.dtsi b/arch/arm/boot/dts/da850.dtsi index 92d633d1da68..941d455000a7 100644 --- a/arch/arm/boot/dts/da850.dtsi +++ b/arch/arm/boot/dts/da850.dtsi | |||
@@ -153,6 +153,12 @@ | |||
153 | 0x10 0x00000010 0x000000f0 | 153 | 0x10 0x00000010 0x000000f0 |
154 | >; | 154 | >; |
155 | }; | 155 | }; |
156 | spi0_cs3_pin: pinmux_spi0_cs3_pin { | ||
157 | pinctrl-single,bits = < | ||
158 | /* CS3 */ | ||
159 | 0xc 0x01000000 0x0f000000 | ||
160 | >; | ||
161 | }; | ||
156 | spi1_pins: pinmux_spi1_pins { | 162 | spi1_pins: pinmux_spi1_pins { |
157 | pinctrl-single,bits = < | 163 | pinctrl-single,bits = < |
158 | /* SIMO, SOMI, CLK */ | 164 | /* SIMO, SOMI, CLK */ |
@@ -216,8 +222,21 @@ | |||
216 | 0x3c 0x11111111 0xffffffff | 222 | 0x3c 0x11111111 0xffffffff |
217 | /* VP_DIN[8..9] */ | 223 | /* VP_DIN[8..9] */ |
218 | 0x40 0x00000011 0x000000ff | 224 | 0x40 0x00000011 0x000000ff |
219 | /* VP_CLKIN3, VP_CLKIN2 */ | 225 | >; |
220 | 0x4c 0x00010100 0x000f0f00 | 226 | }; |
227 | vpif_display_pins: vpif_display_pins { | ||
228 | pinctrl-single,bits = < | ||
229 | /* VP_DOUT[2..7] */ | ||
230 | 0x40 0x11111100 0xffffff00 | ||
231 | /* VP_DOUT[10..15,0..1] */ | ||
232 | 0x44 0x11111111 0xffffffff | ||
233 | /* VP_DOUT[8..9] */ | ||
234 | 0x48 0x00000011 0x000000ff | ||
235 | /* | ||
236 | * VP_CLKOUT3, VP_CLKIN3, | ||
237 | * VP_CLKOUT2, VP_CLKIN2 | ||
238 | */ | ||
239 | 0x4c 0x00111100 0x00ffff00 | ||
221 | >; | 240 | >; |
222 | }; | 241 | }; |
223 | }; | 242 | }; |
@@ -345,7 +364,13 @@ | |||
345 | status = "disabled"; | 364 | status = "disabled"; |
346 | 365 | ||
347 | /* VPIF capture port */ | 366 | /* VPIF capture port */ |
348 | port { | 367 | port@0 { |
368 | #address-cells = <1>; | ||
369 | #size-cells = <0>; | ||
370 | }; | ||
371 | |||
372 | /* VPIF display port */ | ||
373 | port@1 { | ||
349 | #address-cells = <1>; | 374 | #address-cells = <1>; |
350 | #size-cells = <0>; | 375 | #size-cells = <0>; |
351 | }; | 376 | }; |
diff --git a/arch/arm/boot/dts/dm8168-evm.dts b/arch/arm/boot/dts/dm8168-evm.dts index 0bf55fa72dea..1865976db5f9 100644 --- a/arch/arm/boot/dts/dm8168-evm.dts +++ b/arch/arm/boot/dts/dm8168-evm.dts | |||
@@ -25,6 +25,12 @@ | |||
25 | regulator-min-microvolt = <3300000>; | 25 | regulator-min-microvolt = <3300000>; |
26 | regulator-max-microvolt = <3300000>; | 26 | regulator-max-microvolt = <3300000>; |
27 | }; | 27 | }; |
28 | |||
29 | sata_refclk: fixedclock0 { | ||
30 | compatible = "fixed-clock"; | ||
31 | #clock-cells = <0>; | ||
32 | clock-frequency = <100000000>; | ||
33 | }; | ||
28 | }; | 34 | }; |
29 | 35 | ||
30 | &dm816x_pinmux { | 36 | &dm816x_pinmux { |
@@ -173,3 +179,7 @@ | |||
173 | pinctrl-0 = <&usb1_pins>; | 179 | pinctrl-0 = <&usb1_pins>; |
174 | mentor,multipoint = <0>; | 180 | mentor,multipoint = <0>; |
175 | }; | 181 | }; |
182 | |||
183 | &sata { | ||
184 | clocks = <&sysclk5_ck>, <&sata_refclk>; | ||
185 | }; | ||
diff --git a/arch/arm/boot/dts/dm816x.dtsi b/arch/arm/boot/dts/dm816x.dtsi index 276211e1ee53..59cbf958fcc3 100644 --- a/arch/arm/boot/dts/dm816x.dtsi +++ b/arch/arm/boot/dts/dm816x.dtsi | |||
@@ -293,6 +293,13 @@ | |||
293 | phy-handle = <&phy1>; | 293 | phy-handle = <&phy1>; |
294 | }; | 294 | }; |
295 | 295 | ||
296 | sata: sata@4a140000 { | ||
297 | compatible = "ti,dm816-ahci"; | ||
298 | reg = <0x4a140000 0x10000>; | ||
299 | interrupts = <16>; | ||
300 | ti,hwmods = "sata"; | ||
301 | }; | ||
302 | |||
296 | mcspi1: spi@48030000 { | 303 | mcspi1: spi@48030000 { |
297 | compatible = "ti,omap4-mcspi"; | 304 | compatible = "ti,omap4-mcspi"; |
298 | reg = <0x48030000 0x1000>; | 305 | reg = <0x48030000 0x1000>; |
diff --git a/arch/arm/boot/dts/dra7.dtsi b/arch/arm/boot/dts/dra7.dtsi index bbfb9d5a70a9..57892f264cea 100644 --- a/arch/arm/boot/dts/dra7.dtsi +++ b/arch/arm/boot/dts/dra7.dtsi | |||
@@ -81,11 +81,7 @@ | |||
81 | compatible = "arm,cortex-a15"; | 81 | compatible = "arm,cortex-a15"; |
82 | reg = <0>; | 82 | reg = <0>; |
83 | 83 | ||
84 | operating-points = < | 84 | operating-points-v2 = <&cpu0_opp_table>; |
85 | /* kHz uV */ | ||
86 | 1000000 1060000 | ||
87 | 1176000 1160000 | ||
88 | >; | ||
89 | 85 | ||
90 | clocks = <&dpll_mpu_ck>; | 86 | clocks = <&dpll_mpu_ck>; |
91 | clock-names = "cpu"; | 87 | clock-names = "cpu"; |
@@ -99,6 +95,24 @@ | |||
99 | }; | 95 | }; |
100 | }; | 96 | }; |
101 | 97 | ||
98 | cpu0_opp_table: opp-table { | ||
99 | compatible = "operating-points-v2-ti-cpu"; | ||
100 | syscon = <&scm_wkup>; | ||
101 | |||
102 | opp_nom@1000000000 { | ||
103 | opp-hz = /bits/ 64 <1000000000>; | ||
104 | opp-microvolt = <1060000 850000 1150000>; | ||
105 | opp-supported-hw = <0xFF 0x01>; | ||
106 | opp-suspend; | ||
107 | }; | ||
108 | |||
109 | opp_od@1176000000 { | ||
110 | opp-hz = /bits/ 64 <1176000000>; | ||
111 | opp-microvolt = <1160000 885000 1160000>; | ||
112 | opp-supported-hw = <0xFF 0x02>; | ||
113 | }; | ||
114 | }; | ||
115 | |||
102 | /* | 116 | /* |
103 | * The soc node represents the soc top level view. It is used for IPs | 117 | * The soc node represents the soc top level view. It is used for IPs |
104 | * that are not memory mapped in the MPU view or for the MPU itself. | 118 | * that are not memory mapped in the MPU view or for the MPU itself. |
@@ -1984,6 +1998,23 @@ | |||
1984 | 1998 | ||
1985 | &cpu_thermal { | 1999 | &cpu_thermal { |
1986 | polling-delay = <500>; /* milliseconds */ | 2000 | polling-delay = <500>; /* milliseconds */ |
2001 | coefficients = <0 2000>; | ||
2002 | }; | ||
2003 | |||
2004 | &gpu_thermal { | ||
2005 | coefficients = <0 2000>; | ||
2006 | }; | ||
2007 | |||
2008 | &core_thermal { | ||
2009 | coefficients = <0 2000>; | ||
2010 | }; | ||
2011 | |||
2012 | &dspeve_thermal { | ||
2013 | coefficients = <0 2000>; | ||
2014 | }; | ||
2015 | |||
2016 | &iva_thermal { | ||
2017 | coefficients = <0 2000>; | ||
1987 | }; | 2018 | }; |
1988 | 2019 | ||
1989 | /include/ "dra7xx-clocks.dtsi" | 2020 | /include/ "dra7xx-clocks.dtsi" |
diff --git a/arch/arm/boot/dts/dra74x.dtsi b/arch/arm/boot/dts/dra74x.dtsi index 0a78347e6615..24e6746c5b26 100644 --- a/arch/arm/boot/dts/dra74x.dtsi +++ b/arch/arm/boot/dts/dra74x.dtsi | |||
@@ -17,6 +17,7 @@ | |||
17 | device_type = "cpu"; | 17 | device_type = "cpu"; |
18 | compatible = "arm,cortex-a15"; | 18 | compatible = "arm,cortex-a15"; |
19 | reg = <1>; | 19 | reg = <1>; |
20 | operating-points-v2 = <&cpu0_opp_table>; | ||
20 | }; | 21 | }; |
21 | }; | 22 | }; |
22 | 23 | ||
@@ -79,6 +80,10 @@ | |||
79 | }; | 80 | }; |
80 | }; | 81 | }; |
81 | 82 | ||
83 | &cpu0_opp_table { | ||
84 | opp-shared; | ||
85 | }; | ||
86 | |||
82 | &dss { | 87 | &dss { |
83 | reg = <0x58000000 0x80>, | 88 | reg = <0x58000000 0x80>, |
84 | <0x58004054 0x4>, | 89 | <0x58004054 0x4>, |
diff --git a/arch/arm/boot/dts/exynos3250-rinato.dts b/arch/arm/boot/dts/exynos3250-rinato.dts index 548413e23c47..c9f191ca7b9c 100644 --- a/arch/arm/boot/dts/exynos3250-rinato.dts +++ b/arch/arm/boot/dts/exynos3250-rinato.dts | |||
@@ -215,6 +215,8 @@ | |||
215 | &dsi_0 { | 215 | &dsi_0 { |
216 | vddcore-supply = <&ldo6_reg>; | 216 | vddcore-supply = <&ldo6_reg>; |
217 | vddio-supply = <&ldo6_reg>; | 217 | vddio-supply = <&ldo6_reg>; |
218 | samsung,burst-clock-frequency = <250000000>; | ||
219 | samsung,esc-clock-frequency = <20000000>; | ||
218 | samsung,pll-clock-frequency = <24000000>; | 220 | samsung,pll-clock-frequency = <24000000>; |
219 | status = "okay"; | 221 | status = "okay"; |
220 | 222 | ||
diff --git a/arch/arm/boot/dts/exynos3250.dtsi b/arch/arm/boot/dts/exynos3250.dtsi index 9c28ef4508e0..590ee442d0ae 100644 --- a/arch/arm/boot/dts/exynos3250.dtsi +++ b/arch/arm/boot/dts/exynos3250.dtsi | |||
@@ -745,23 +745,23 @@ | |||
745 | compatible = "operating-points-v2"; | 745 | compatible = "operating-points-v2"; |
746 | opp-shared; | 746 | opp-shared; |
747 | 747 | ||
748 | opp@50000000 { | 748 | opp-50000000 { |
749 | opp-hz = /bits/ 64 <50000000>; | 749 | opp-hz = /bits/ 64 <50000000>; |
750 | opp-microvolt = <800000>; | 750 | opp-microvolt = <800000>; |
751 | }; | 751 | }; |
752 | opp@100000000 { | 752 | opp-100000000 { |
753 | opp-hz = /bits/ 64 <100000000>; | 753 | opp-hz = /bits/ 64 <100000000>; |
754 | opp-microvolt = <800000>; | 754 | opp-microvolt = <800000>; |
755 | }; | 755 | }; |
756 | opp@134000000 { | 756 | opp-134000000 { |
757 | opp-hz = /bits/ 64 <134000000>; | 757 | opp-hz = /bits/ 64 <134000000>; |
758 | opp-microvolt = <800000>; | 758 | opp-microvolt = <800000>; |
759 | }; | 759 | }; |
760 | opp@200000000 { | 760 | opp-200000000 { |
761 | opp-hz = /bits/ 64 <200000000>; | 761 | opp-hz = /bits/ 64 <200000000>; |
762 | opp-microvolt = <825000>; | 762 | opp-microvolt = <825000>; |
763 | }; | 763 | }; |
764 | opp@400000000 { | 764 | opp-400000000 { |
765 | opp-hz = /bits/ 64 <400000000>; | 765 | opp-hz = /bits/ 64 <400000000>; |
766 | opp-microvolt = <875000>; | 766 | opp-microvolt = <875000>; |
767 | }; | 767 | }; |
@@ -835,23 +835,23 @@ | |||
835 | compatible = "operating-points-v2"; | 835 | compatible = "operating-points-v2"; |
836 | opp-shared; | 836 | opp-shared; |
837 | 837 | ||
838 | opp@50000000 { | 838 | opp-50000000 { |
839 | opp-hz = /bits/ 64 <50000000>; | 839 | opp-hz = /bits/ 64 <50000000>; |
840 | opp-microvolt = <900000>; | 840 | opp-microvolt = <900000>; |
841 | }; | 841 | }; |
842 | opp@80000000 { | 842 | opp-80000000 { |
843 | opp-hz = /bits/ 64 <80000000>; | 843 | opp-hz = /bits/ 64 <80000000>; |
844 | opp-microvolt = <900000>; | 844 | opp-microvolt = <900000>; |
845 | }; | 845 | }; |
846 | opp@100000000 { | 846 | opp-100000000 { |
847 | opp-hz = /bits/ 64 <100000000>; | 847 | opp-hz = /bits/ 64 <100000000>; |
848 | opp-microvolt = <1000000>; | 848 | opp-microvolt = <1000000>; |
849 | }; | 849 | }; |
850 | opp@134000000 { | 850 | opp-134000000 { |
851 | opp-hz = /bits/ 64 <134000000>; | 851 | opp-hz = /bits/ 64 <134000000>; |
852 | opp-microvolt = <1000000>; | 852 | opp-microvolt = <1000000>; |
853 | }; | 853 | }; |
854 | opp@200000000 { | 854 | opp-200000000 { |
855 | opp-hz = /bits/ 64 <200000000>; | 855 | opp-hz = /bits/ 64 <200000000>; |
856 | opp-microvolt = <1000000>; | 856 | opp-microvolt = <1000000>; |
857 | }; | 857 | }; |
@@ -861,19 +861,19 @@ | |||
861 | compatible = "operating-points-v2"; | 861 | compatible = "operating-points-v2"; |
862 | opp-shared; | 862 | opp-shared; |
863 | 863 | ||
864 | opp@50000000 { | 864 | opp-50000000 { |
865 | opp-hz = /bits/ 64 <50000000>; | 865 | opp-hz = /bits/ 64 <50000000>; |
866 | }; | 866 | }; |
867 | opp@80000000 { | 867 | opp-80000000 { |
868 | opp-hz = /bits/ 64 <80000000>; | 868 | opp-hz = /bits/ 64 <80000000>; |
869 | }; | 869 | }; |
870 | opp@100000000 { | 870 | opp-100000000 { |
871 | opp-hz = /bits/ 64 <100000000>; | 871 | opp-hz = /bits/ 64 <100000000>; |
872 | }; | 872 | }; |
873 | opp@200000000 { | 873 | opp-200000000 { |
874 | opp-hz = /bits/ 64 <200000000>; | 874 | opp-hz = /bits/ 64 <200000000>; |
875 | }; | 875 | }; |
876 | opp@400000000 { | 876 | opp-400000000 { |
877 | opp-hz = /bits/ 64 <400000000>; | 877 | opp-hz = /bits/ 64 <400000000>; |
878 | }; | 878 | }; |
879 | }; | 879 | }; |
@@ -882,19 +882,19 @@ | |||
882 | compatible = "operating-points-v2"; | 882 | compatible = "operating-points-v2"; |
883 | opp-shared; | 883 | opp-shared; |
884 | 884 | ||
885 | opp@50000000 { | 885 | opp-50000000 { |
886 | opp-hz = /bits/ 64 <50000000>; | 886 | opp-hz = /bits/ 64 <50000000>; |
887 | }; | 887 | }; |
888 | opp@80000000 { | 888 | opp-80000000 { |
889 | opp-hz = /bits/ 64 <80000000>; | 889 | opp-hz = /bits/ 64 <80000000>; |
890 | }; | 890 | }; |
891 | opp@100000000 { | 891 | opp-100000000 { |
892 | opp-hz = /bits/ 64 <100000000>; | 892 | opp-hz = /bits/ 64 <100000000>; |
893 | }; | 893 | }; |
894 | opp@200000000 { | 894 | opp-200000000 { |
895 | opp-hz = /bits/ 64 <200000000>; | 895 | opp-hz = /bits/ 64 <200000000>; |
896 | }; | 896 | }; |
897 | opp@300000000 { | 897 | opp-300000000 { |
898 | opp-hz = /bits/ 64 <300000000>; | 898 | opp-hz = /bits/ 64 <300000000>; |
899 | }; | 899 | }; |
900 | }; | 900 | }; |
@@ -903,13 +903,13 @@ | |||
903 | compatible = "operating-points-v2"; | 903 | compatible = "operating-points-v2"; |
904 | opp-shared; | 904 | opp-shared; |
905 | 905 | ||
906 | opp@50000000 { | 906 | opp-50000000 { |
907 | opp-hz = /bits/ 64 <50000000>; | 907 | opp-hz = /bits/ 64 <50000000>; |
908 | }; | 908 | }; |
909 | opp@80000000 { | 909 | opp-80000000 { |
910 | opp-hz = /bits/ 64 <80000000>; | 910 | opp-hz = /bits/ 64 <80000000>; |
911 | }; | 911 | }; |
912 | opp@100000000 { | 912 | opp-100000000 { |
913 | opp-hz = /bits/ 64 <100000000>; | 913 | opp-hz = /bits/ 64 <100000000>; |
914 | }; | 914 | }; |
915 | }; | 915 | }; |
diff --git a/arch/arm/boot/dts/exynos4.dtsi b/arch/arm/boot/dts/exynos4.dtsi index 84fcdff140ae..497a9470c888 100644 --- a/arch/arm/boot/dts/exynos4.dtsi +++ b/arch/arm/boot/dts/exynos4.dtsi | |||
@@ -283,15 +283,6 @@ | |||
283 | }; | 283 | }; |
284 | }; | 284 | }; |
285 | 285 | ||
286 | watchdog: watchdog@10060000 { | ||
287 | compatible = "samsung,s3c2410-wdt"; | ||
288 | reg = <0x10060000 0x100>; | ||
289 | interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; | ||
290 | clocks = <&clock CLK_WDT>; | ||
291 | clock-names = "watchdog"; | ||
292 | status = "disabled"; | ||
293 | }; | ||
294 | |||
295 | rtc: rtc@10070000 { | 286 | rtc: rtc@10070000 { |
296 | compatible = "samsung,s3c6410-rtc"; | 287 | compatible = "samsung,s3c6410-rtc"; |
297 | reg = <0x10070000 0x100>; | 288 | reg = <0x10070000 0x100>; |
diff --git a/arch/arm/boot/dts/exynos4210-origen.dts b/arch/arm/boot/dts/exynos4210-origen.dts index a2c6a13fe67b..312650e2450f 100644 --- a/arch/arm/boot/dts/exynos4210-origen.dts +++ b/arch/arm/boot/dts/exynos4210-origen.dts | |||
@@ -328,7 +328,3 @@ | |||
328 | &tmu { | 328 | &tmu { |
329 | status = "okay"; | 329 | status = "okay"; |
330 | }; | 330 | }; |
331 | |||
332 | &watchdog { | ||
333 | status = "okay"; | ||
334 | }; | ||
diff --git a/arch/arm/boot/dts/exynos4210-trats.dts b/arch/arm/boot/dts/exynos4210-trats.dts index 0ca1b4d355f2..1743ca850070 100644 --- a/arch/arm/boot/dts/exynos4210-trats.dts +++ b/arch/arm/boot/dts/exynos4210-trats.dts | |||
@@ -197,6 +197,8 @@ | |||
197 | &dsi_0 { | 197 | &dsi_0 { |
198 | vddcore-supply = <&vusb_reg>; | 198 | vddcore-supply = <&vusb_reg>; |
199 | vddio-supply = <&vmipi_reg>; | 199 | vddio-supply = <&vmipi_reg>; |
200 | samsung,burst-clock-frequency = <500000000>; | ||
201 | samsung,esc-clock-frequency = <20000000>; | ||
200 | samsung,pll-clock-frequency = <24000000>; | 202 | samsung,pll-clock-frequency = <24000000>; |
201 | status = "okay"; | 203 | status = "okay"; |
202 | 204 | ||
diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi index f9408188f97f..768fb075b1fd 100644 --- a/arch/arm/boot/dts/exynos4210.dtsi +++ b/arch/arm/boot/dts/exynos4210.dtsi | |||
@@ -119,6 +119,14 @@ | |||
119 | }; | 119 | }; |
120 | }; | 120 | }; |
121 | 121 | ||
122 | watchdog: watchdog@10060000 { | ||
123 | compatible = "samsung,s3c6410-wdt"; | ||
124 | reg = <0x10060000 0x100>; | ||
125 | interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; | ||
126 | clocks = <&clock CLK_WDT>; | ||
127 | clock-names = "watchdog"; | ||
128 | }; | ||
129 | |||
122 | clock: clock-controller@10030000 { | 130 | clock: clock-controller@10030000 { |
123 | compatible = "samsung,exynos4210-clock"; | 131 | compatible = "samsung,exynos4210-clock"; |
124 | reg = <0x10030000 0x20000>; | 132 | reg = <0x10030000 0x20000>; |
@@ -335,15 +343,15 @@ | |||
335 | compatible = "operating-points-v2"; | 343 | compatible = "operating-points-v2"; |
336 | opp-shared; | 344 | opp-shared; |
337 | 345 | ||
338 | opp@134000000 { | 346 | opp-134000000 { |
339 | opp-hz = /bits/ 64 <134000000>; | 347 | opp-hz = /bits/ 64 <134000000>; |
340 | opp-microvolt = <1025000>; | 348 | opp-microvolt = <1025000>; |
341 | }; | 349 | }; |
342 | opp@267000000 { | 350 | opp-267000000 { |
343 | opp-hz = /bits/ 64 <267000000>; | 351 | opp-hz = /bits/ 64 <267000000>; |
344 | opp-microvolt = <1050000>; | 352 | opp-microvolt = <1050000>; |
345 | }; | 353 | }; |
346 | opp@400000000 { | 354 | opp-400000000 { |
347 | opp-hz = /bits/ 64 <400000000>; | 355 | opp-hz = /bits/ 64 <400000000>; |
348 | opp-microvolt = <1150000>; | 356 | opp-microvolt = <1150000>; |
349 | }; | 357 | }; |
@@ -353,13 +361,13 @@ | |||
353 | compatible = "operating-points-v2"; | 361 | compatible = "operating-points-v2"; |
354 | opp-shared; | 362 | opp-shared; |
355 | 363 | ||
356 | opp@134000000 { | 364 | opp-134000000 { |
357 | opp-hz = /bits/ 64 <134000000>; | 365 | opp-hz = /bits/ 64 <134000000>; |
358 | }; | 366 | }; |
359 | opp@160000000 { | 367 | opp-160000000 { |
360 | opp-hz = /bits/ 64 <160000000>; | 368 | opp-hz = /bits/ 64 <160000000>; |
361 | }; | 369 | }; |
362 | opp@200000000 { | 370 | opp-200000000 { |
363 | opp-hz = /bits/ 64 <200000000>; | 371 | opp-hz = /bits/ 64 <200000000>; |
364 | }; | 372 | }; |
365 | }; | 373 | }; |
@@ -368,10 +376,10 @@ | |||
368 | compatible = "operating-points-v2"; | 376 | compatible = "operating-points-v2"; |
369 | opp-shared; | 377 | opp-shared; |
370 | 378 | ||
371 | opp@5000000 { | 379 | opp-5000000 { |
372 | opp-hz = /bits/ 64 <5000000>; | 380 | opp-hz = /bits/ 64 <5000000>; |
373 | }; | 381 | }; |
374 | opp@100000000 { | 382 | opp-100000000 { |
375 | opp-hz = /bits/ 64 <100000000>; | 383 | opp-hz = /bits/ 64 <100000000>; |
376 | }; | 384 | }; |
377 | }; | 385 | }; |
@@ -380,10 +388,10 @@ | |||
380 | compatible = "operating-points-v2"; | 388 | compatible = "operating-points-v2"; |
381 | opp-shared; | 389 | opp-shared; |
382 | 390 | ||
383 | opp@10000000 { | 391 | opp-10000000 { |
384 | opp-hz = /bits/ 64 <10000000>; | 392 | opp-hz = /bits/ 64 <10000000>; |
385 | }; | 393 | }; |
386 | opp@134000000 { | 394 | opp-134000000 { |
387 | opp-hz = /bits/ 64 <134000000>; | 395 | opp-hz = /bits/ 64 <134000000>; |
388 | }; | 396 | }; |
389 | }; | 397 | }; |
@@ -392,13 +400,13 @@ | |||
392 | compatible = "operating-points-v2"; | 400 | compatible = "operating-points-v2"; |
393 | opp-shared; | 401 | opp-shared; |
394 | 402 | ||
395 | opp@100000000 { | 403 | opp-100000000 { |
396 | opp-hz = /bits/ 64 <100000000>; | 404 | opp-hz = /bits/ 64 <100000000>; |
397 | }; | 405 | }; |
398 | opp@134000000 { | 406 | opp-134000000 { |
399 | opp-hz = /bits/ 64 <134000000>; | 407 | opp-hz = /bits/ 64 <134000000>; |
400 | }; | 408 | }; |
401 | opp@160000000 { | 409 | opp-160000000 { |
402 | opp-hz = /bits/ 64 <160000000>; | 410 | opp-hz = /bits/ 64 <160000000>; |
403 | }; | 411 | }; |
404 | }; | 412 | }; |
@@ -407,13 +415,13 @@ | |||
407 | compatible = "operating-points-v2"; | 415 | compatible = "operating-points-v2"; |
408 | opp-shared; | 416 | opp-shared; |
409 | 417 | ||
410 | opp@100000000 { | 418 | opp-100000000 { |
411 | opp-hz = /bits/ 64 <100000000>; | 419 | opp-hz = /bits/ 64 <100000000>; |
412 | }; | 420 | }; |
413 | opp@160000000 { | 421 | opp-160000000 { |
414 | opp-hz = /bits/ 64 <160000000>; | 422 | opp-hz = /bits/ 64 <160000000>; |
415 | }; | 423 | }; |
416 | opp@200000000 { | 424 | opp-200000000 { |
417 | opp-hz = /bits/ 64 <200000000>; | 425 | opp-hz = /bits/ 64 <200000000>; |
418 | }; | 426 | }; |
419 | }; | 427 | }; |
diff --git a/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi b/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi index a36cd36a26b8..4cd62487bb16 100644 --- a/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi +++ b/arch/arm/boot/dts/exynos4412-itop-scp-core.dtsi | |||
@@ -495,7 +495,3 @@ | |||
495 | vtmu-supply = <&ldo16_reg>; | 495 | vtmu-supply = <&ldo16_reg>; |
496 | status = "okay"; | 496 | status = "okay"; |
497 | }; | 497 | }; |
498 | |||
499 | &watchdog { | ||
500 | status = "okay"; | ||
501 | }; | ||
diff --git a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi index 78f118cb73d4..0f1ff792fe44 100644 --- a/arch/arm/boot/dts/exynos4412-odroid-common.dtsi +++ b/arch/arm/boot/dts/exynos4412-odroid-common.dtsi | |||
@@ -555,7 +555,3 @@ | |||
555 | vtmu-supply = <&ldo10_reg>; | 555 | vtmu-supply = <&ldo10_reg>; |
556 | status = "okay"; | 556 | status = "okay"; |
557 | }; | 557 | }; |
558 | |||
559 | &watchdog { | ||
560 | status = "okay"; | ||
561 | }; | ||
diff --git a/arch/arm/boot/dts/exynos4412-origen.dts b/arch/arm/boot/dts/exynos4412-origen.dts index a1ab6f94bb64..7a83e2df18a6 100644 --- a/arch/arm/boot/dts/exynos4412-origen.dts +++ b/arch/arm/boot/dts/exynos4412-origen.dts | |||
@@ -541,7 +541,3 @@ | |||
541 | &serial_3 { | 541 | &serial_3 { |
542 | status = "okay"; | 542 | status = "okay"; |
543 | }; | 543 | }; |
544 | |||
545 | &watchdog { | ||
546 | status = "okay"; | ||
547 | }; | ||
diff --git a/arch/arm/boot/dts/exynos4412-prime.dtsi b/arch/arm/boot/dts/exynos4412-prime.dtsi index e75bc170c89c..a67bd953d754 100644 --- a/arch/arm/boot/dts/exynos4412-prime.dtsi +++ b/arch/arm/boot/dts/exynos4412-prime.dtsi | |||
@@ -20,12 +20,12 @@ | |||
20 | }; | 20 | }; |
21 | 21 | ||
22 | &cpu0_opp_table { | 22 | &cpu0_opp_table { |
23 | opp@1600000000 { | 23 | opp-1600000000 { |
24 | opp-hz = /bits/ 64 <1600000000>; | 24 | opp-hz = /bits/ 64 <1600000000>; |
25 | opp-microvolt = <1350000>; | 25 | opp-microvolt = <1350000>; |
26 | clock-latency-ns = <200000>; | 26 | clock-latency-ns = <200000>; |
27 | }; | 27 | }; |
28 | opp@1704000000 { | 28 | opp-1704000000 { |
29 | opp-hz = /bits/ 64 <1704000000>; | 29 | opp-hz = /bits/ 64 <1704000000>; |
30 | opp-microvolt = <1350000>; | 30 | opp-microvolt = <1350000>; |
31 | clock-latency-ns = <200000>; | 31 | clock-latency-ns = <200000>; |
diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts index 41ecd6d465a7..82221a00444d 100644 --- a/arch/arm/boot/dts/exynos4412-trats2.dts +++ b/arch/arm/boot/dts/exynos4412-trats2.dts | |||
@@ -385,6 +385,8 @@ | |||
385 | &dsi_0 { | 385 | &dsi_0 { |
386 | vddcore-supply = <&ldo8_reg>; | 386 | vddcore-supply = <&ldo8_reg>; |
387 | vddio-supply = <&ldo10_reg>; | 387 | vddio-supply = <&ldo10_reg>; |
388 | samsung,burst-clock-frequency = <500000000>; | ||
389 | samsung,esc-clock-frequency = <20000000>; | ||
388 | samsung,pll-clock-frequency = <24000000>; | 390 | samsung,pll-clock-frequency = <24000000>; |
389 | status = "okay"; | 391 | status = "okay"; |
390 | 392 | ||
diff --git a/arch/arm/boot/dts/exynos4412.dtsi b/arch/arm/boot/dts/exynos4412.dtsi index 235bbb69ad7c..7ff03a7e8fb9 100644 --- a/arch/arm/boot/dts/exynos4412.dtsi +++ b/arch/arm/boot/dts/exynos4412.dtsi | |||
@@ -76,73 +76,73 @@ | |||
76 | compatible = "operating-points-v2"; | 76 | compatible = "operating-points-v2"; |
77 | opp-shared; | 77 | opp-shared; |
78 | 78 | ||
79 | opp@200000000 { | 79 | opp-200000000 { |
80 | opp-hz = /bits/ 64 <200000000>; | 80 | opp-hz = /bits/ 64 <200000000>; |
81 | opp-microvolt = <900000>; | 81 | opp-microvolt = <900000>; |
82 | clock-latency-ns = <200000>; | 82 | clock-latency-ns = <200000>; |
83 | }; | 83 | }; |
84 | opp@300000000 { | 84 | opp-300000000 { |
85 | opp-hz = /bits/ 64 <300000000>; | 85 | opp-hz = /bits/ 64 <300000000>; |
86 | opp-microvolt = <900000>; | 86 | opp-microvolt = <900000>; |
87 | clock-latency-ns = <200000>; | 87 | clock-latency-ns = <200000>; |
88 | }; | 88 | }; |
89 | opp@400000000 { | 89 | opp-400000000 { |
90 | opp-hz = /bits/ 64 <400000000>; | 90 | opp-hz = /bits/ 64 <400000000>; |
91 | opp-microvolt = <925000>; | 91 | opp-microvolt = <925000>; |
92 | clock-latency-ns = <200000>; | 92 | clock-latency-ns = <200000>; |
93 | }; | 93 | }; |
94 | opp@500000000 { | 94 | opp-500000000 { |
95 | opp-hz = /bits/ 64 <500000000>; | 95 | opp-hz = /bits/ 64 <500000000>; |
96 | opp-microvolt = <950000>; | 96 | opp-microvolt = <950000>; |
97 | clock-latency-ns = <200000>; | 97 | clock-latency-ns = <200000>; |
98 | }; | 98 | }; |
99 | opp@600000000 { | 99 | opp-600000000 { |
100 | opp-hz = /bits/ 64 <600000000>; | 100 | opp-hz = /bits/ 64 <600000000>; |
101 | opp-microvolt = <975000>; | 101 | opp-microvolt = <975000>; |
102 | clock-latency-ns = <200000>; | 102 | clock-latency-ns = <200000>; |
103 | }; | 103 | }; |
104 | opp@700000000 { | 104 | opp-700000000 { |
105 | opp-hz = /bits/ 64 <700000000>; | 105 | opp-hz = /bits/ 64 <700000000>; |
106 | opp-microvolt = <987500>; | 106 | opp-microvolt = <987500>; |
107 | clock-latency-ns = <200000>; | 107 | clock-latency-ns = <200000>; |
108 | }; | 108 | }; |
109 | opp@800000000 { | 109 | opp-800000000 { |
110 | opp-hz = /bits/ 64 <800000000>; | 110 | opp-hz = /bits/ 64 <800000000>; |
111 | opp-microvolt = <1000000>; | 111 | opp-microvolt = <1000000>; |
112 | clock-latency-ns = <200000>; | 112 | clock-latency-ns = <200000>; |
113 | opp-suspend; | 113 | opp-suspend; |
114 | }; | 114 | }; |
115 | opp@900000000 { | 115 | opp-900000000 { |
116 | opp-hz = /bits/ 64 <900000000>; | 116 | opp-hz = /bits/ 64 <900000000>; |
117 | opp-microvolt = <1037500>; | 117 | opp-microvolt = <1037500>; |
118 | clock-latency-ns = <200000>; | 118 | clock-latency-ns = <200000>; |
119 | }; | 119 | }; |
120 | opp@1000000000 { | 120 | opp-1000000000 { |
121 | opp-hz = /bits/ 64 <1000000000>; | 121 | opp-hz = /bits/ 64 <1000000000>; |
122 | opp-microvolt = <1087500>; | 122 | opp-microvolt = <1087500>; |
123 | clock-latency-ns = <200000>; | 123 | clock-latency-ns = <200000>; |
124 | }; | 124 | }; |
125 | opp@1100000000 { | 125 | opp-1100000000 { |
126 | opp-hz = /bits/ 64 <1100000000>; | 126 | opp-hz = /bits/ 64 <1100000000>; |
127 | opp-microvolt = <1137500>; | 127 | opp-microvolt = <1137500>; |
128 | clock-latency-ns = <200000>; | 128 | clock-latency-ns = <200000>; |
129 | }; | 129 | }; |
130 | opp@1200000000 { | 130 | opp-1200000000 { |
131 | opp-hz = /bits/ 64 <1200000000>; | 131 | opp-hz = /bits/ 64 <1200000000>; |
132 | opp-microvolt = <1187500>; | 132 | opp-microvolt = <1187500>; |
133 | clock-latency-ns = <200000>; | 133 | clock-latency-ns = <200000>; |
134 | }; | 134 | }; |
135 | opp@1300000000 { | 135 | opp-1300000000 { |
136 | opp-hz = /bits/ 64 <1300000000>; | 136 | opp-hz = /bits/ 64 <1300000000>; |
137 | opp-microvolt = <1250000>; | 137 | opp-microvolt = <1250000>; |
138 | clock-latency-ns = <200000>; | 138 | clock-latency-ns = <200000>; |
139 | }; | 139 | }; |
140 | opp@1400000000 { | 140 | opp-1400000000 { |
141 | opp-hz = /bits/ 64 <1400000000>; | 141 | opp-hz = /bits/ 64 <1400000000>; |
142 | opp-microvolt = <1287500>; | 142 | opp-microvolt = <1287500>; |
143 | clock-latency-ns = <200000>; | 143 | clock-latency-ns = <200000>; |
144 | }; | 144 | }; |
145 | cpu0_opp_1500: opp@1500000000 { | 145 | cpu0_opp_1500: opp-1500000000 { |
146 | opp-hz = /bits/ 64 <1500000000>; | 146 | opp-hz = /bits/ 64 <1500000000>; |
147 | opp-microvolt = <1350000>; | 147 | opp-microvolt = <1350000>; |
148 | clock-latency-ns = <200000>; | 148 | clock-latency-ns = <200000>; |
@@ -215,6 +215,15 @@ | |||
215 | }; | 215 | }; |
216 | }; | 216 | }; |
217 | 217 | ||
218 | watchdog: watchdog@10060000 { | ||
219 | compatible = "samsung,exynos5250-wdt"; | ||
220 | reg = <0x10060000 0x100>; | ||
221 | interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH>; | ||
222 | clocks = <&clock CLK_WDT>; | ||
223 | clock-names = "watchdog"; | ||
224 | samsung,syscon-phandle = <&pmu_system_controller>; | ||
225 | }; | ||
226 | |||
218 | adc: adc@126C0000 { | 227 | adc: adc@126C0000 { |
219 | compatible = "samsung,exynos-adc-v1"; | 228 | compatible = "samsung,exynos-adc-v1"; |
220 | reg = <0x126C0000 0x100>; | 229 | reg = <0x126C0000 0x100>; |
@@ -433,23 +442,23 @@ | |||
433 | compatible = "operating-points-v2"; | 442 | compatible = "operating-points-v2"; |
434 | opp-shared; | 443 | opp-shared; |
435 | 444 | ||
436 | opp@100000000 { | 445 | opp-100000000 { |
437 | opp-hz = /bits/ 64 <100000000>; | 446 | opp-hz = /bits/ 64 <100000000>; |
438 | opp-microvolt = <900000>; | 447 | opp-microvolt = <900000>; |
439 | }; | 448 | }; |
440 | opp@134000000 { | 449 | opp-134000000 { |
441 | opp-hz = /bits/ 64 <134000000>; | 450 | opp-hz = /bits/ 64 <134000000>; |
442 | opp-microvolt = <900000>; | 451 | opp-microvolt = <900000>; |
443 | }; | 452 | }; |
444 | opp@160000000 { | 453 | opp-160000000 { |
445 | opp-hz = /bits/ 64 <160000000>; | 454 | opp-hz = /bits/ 64 <160000000>; |
446 | opp-microvolt = <900000>; | 455 | opp-microvolt = <900000>; |
447 | }; | 456 | }; |
448 | opp@267000000 { | 457 | opp-267000000 { |
449 | opp-hz = /bits/ 64 <267000000>; | 458 | opp-hz = /bits/ 64 <267000000>; |
450 | opp-microvolt = <950000>; | 459 | opp-microvolt = <950000>; |
451 | }; | 460 | }; |
452 | opp@400000000 { | 461 | opp-400000000 { |
453 | opp-hz = /bits/ 64 <400000000>; | 462 | opp-hz = /bits/ 64 <400000000>; |
454 | opp-microvolt = <1050000>; | 463 | opp-microvolt = <1050000>; |
455 | }; | 464 | }; |
@@ -459,16 +468,16 @@ | |||
459 | compatible = "operating-points-v2"; | 468 | compatible = "operating-points-v2"; |
460 | opp-shared; | 469 | opp-shared; |
461 | 470 | ||
462 | opp@100000000 { | 471 | opp-100000000 { |
463 | opp-hz = /bits/ 64 <100000000>; | 472 | opp-hz = /bits/ 64 <100000000>; |
464 | }; | 473 | }; |
465 | opp@134000000 { | 474 | opp-134000000 { |
466 | opp-hz = /bits/ 64 <134000000>; | 475 | opp-hz = /bits/ 64 <134000000>; |
467 | }; | 476 | }; |
468 | opp@160000000 { | 477 | opp-160000000 { |
469 | opp-hz = /bits/ 64 <160000000>; | 478 | opp-hz = /bits/ 64 <160000000>; |
470 | }; | 479 | }; |
471 | opp@267000000 { | 480 | opp-267000000 { |
472 | opp-hz = /bits/ 64 <267000000>; | 481 | opp-hz = /bits/ 64 <267000000>; |
473 | }; | 482 | }; |
474 | }; | 483 | }; |
@@ -525,19 +534,19 @@ | |||
525 | compatible = "operating-points-v2"; | 534 | compatible = "operating-points-v2"; |
526 | opp-shared; | 535 | opp-shared; |
527 | 536 | ||
528 | opp@100000000 { | 537 | opp-100000000 { |
529 | opp-hz = /bits/ 64 <100000000>; | 538 | opp-hz = /bits/ 64 <100000000>; |
530 | opp-microvolt = <900000>; | 539 | opp-microvolt = <900000>; |
531 | }; | 540 | }; |
532 | opp@134000000 { | 541 | opp-134000000 { |
533 | opp-hz = /bits/ 64 <134000000>; | 542 | opp-hz = /bits/ 64 <134000000>; |
534 | opp-microvolt = <925000>; | 543 | opp-microvolt = <925000>; |
535 | }; | 544 | }; |
536 | opp@160000000 { | 545 | opp-160000000 { |
537 | opp-hz = /bits/ 64 <160000000>; | 546 | opp-hz = /bits/ 64 <160000000>; |
538 | opp-microvolt = <950000>; | 547 | opp-microvolt = <950000>; |
539 | }; | 548 | }; |
540 | opp@200000000 { | 549 | opp-200000000 { |
541 | opp-hz = /bits/ 64 <200000000>; | 550 | opp-hz = /bits/ 64 <200000000>; |
542 | opp-microvolt = <1000000>; | 551 | opp-microvolt = <1000000>; |
543 | }; | 552 | }; |
@@ -547,10 +556,10 @@ | |||
547 | compatible = "operating-points-v2"; | 556 | compatible = "operating-points-v2"; |
548 | opp-shared; | 557 | opp-shared; |
549 | 558 | ||
550 | opp@160000000 { | 559 | opp-160000000 { |
551 | opp-hz = /bits/ 64 <160000000>; | 560 | opp-hz = /bits/ 64 <160000000>; |
552 | }; | 561 | }; |
553 | opp@200000000 { | 562 | opp-200000000 { |
554 | opp-hz = /bits/ 64 <200000000>; | 563 | opp-hz = /bits/ 64 <200000000>; |
555 | }; | 564 | }; |
556 | }; | 565 | }; |
@@ -559,10 +568,10 @@ | |||
559 | compatible = "operating-points-v2"; | 568 | compatible = "operating-points-v2"; |
560 | opp-shared; | 569 | opp-shared; |
561 | 570 | ||
562 | opp@100000000 { | 571 | opp-100000000 { |
563 | opp-hz = /bits/ 64 <100000000>; | 572 | opp-hz = /bits/ 64 <100000000>; |
564 | }; | 573 | }; |
565 | opp@134000000 { | 574 | opp-134000000 { |
566 | opp-hz = /bits/ 64 <134000000>; | 575 | opp-hz = /bits/ 64 <134000000>; |
567 | }; | 576 | }; |
568 | }; | 577 | }; |
@@ -571,10 +580,10 @@ | |||
571 | compatible = "operating-points-v2"; | 580 | compatible = "operating-points-v2"; |
572 | opp-shared; | 581 | opp-shared; |
573 | 582 | ||
574 | opp@50000000 { | 583 | opp-50000000 { |
575 | opp-hz = /bits/ 64 <50000000>; | 584 | opp-hz = /bits/ 64 <50000000>; |
576 | }; | 585 | }; |
577 | opp@100000000 { | 586 | opp-100000000 { |
578 | opp-hz = /bits/ 64 <100000000>; | 587 | opp-hz = /bits/ 64 <100000000>; |
579 | }; | 588 | }; |
580 | }; | 589 | }; |
diff --git a/arch/arm/boot/dts/exynos5420-tmu-sensor-conf.dtsi b/arch/arm/boot/dts/exynos5420-tmu-sensor-conf.dtsi new file mode 100644 index 000000000000..c8771c660550 --- /dev/null +++ b/arch/arm/boot/dts/exynos5420-tmu-sensor-conf.dtsi | |||
@@ -0,0 +1,25 @@ | |||
1 | /* | ||
2 | * Device tree sources for Exynos5420 TMU sensor configuration | ||
3 | * | ||
4 | * Copyright (c) 2014 Lukasz Majewski <l.majewski@samsung.com> | ||
5 | * Copyright (c) 2017 Krzysztof Kozlowski <krzk@kernel.org> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License version 2 as | ||
9 | * published by the Free Software Foundation. | ||
10 | * | ||
11 | */ | ||
12 | |||
13 | #include <dt-bindings/thermal/thermal_exynos.h> | ||
14 | |||
15 | #thermal-sensor-cells = <0>; | ||
16 | samsung,tmu_gain = <8>; | ||
17 | samsung,tmu_reference_voltage = <16>; | ||
18 | samsung,tmu_noise_cancel_mode = <4>; | ||
19 | samsung,tmu_efuse_value = <55>; | ||
20 | samsung,tmu_min_efuse_value = <0>; | ||
21 | samsung,tmu_max_efuse_value = <100>; | ||
22 | samsung,tmu_first_point_trim = <25>; | ||
23 | samsung,tmu_second_point_trim = <85>; | ||
24 | samsung,tmu_default_temp_offset = <50>; | ||
25 | samsung,tmu_cal_type = <TYPE_ONE_POINT_TRIMMING>; | ||
diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 7dc9dc82afd8..0db0bcf8da36 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi | |||
@@ -49,62 +49,62 @@ | |||
49 | cluster_a15_opp_table: opp_table0 { | 49 | cluster_a15_opp_table: opp_table0 { |
50 | compatible = "operating-points-v2"; | 50 | compatible = "operating-points-v2"; |
51 | opp-shared; | 51 | opp-shared; |
52 | opp@1800000000 { | 52 | opp-1800000000 { |
53 | opp-hz = /bits/ 64 <1800000000>; | 53 | opp-hz = /bits/ 64 <1800000000>; |
54 | opp-microvolt = <1250000>; | 54 | opp-microvolt = <1250000>; |
55 | clock-latency-ns = <140000>; | 55 | clock-latency-ns = <140000>; |
56 | }; | 56 | }; |
57 | opp@1700000000 { | 57 | opp-1700000000 { |
58 | opp-hz = /bits/ 64 <1700000000>; | 58 | opp-hz = /bits/ 64 <1700000000>; |
59 | opp-microvolt = <1212500>; | 59 | opp-microvolt = <1212500>; |
60 | clock-latency-ns = <140000>; | 60 | clock-latency-ns = <140000>; |
61 | }; | 61 | }; |
62 | opp@1600000000 { | 62 | opp-1600000000 { |
63 | opp-hz = /bits/ 64 <1600000000>; | 63 | opp-hz = /bits/ 64 <1600000000>; |
64 | opp-microvolt = <1175000>; | 64 | opp-microvolt = <1175000>; |
65 | clock-latency-ns = <140000>; | 65 | clock-latency-ns = <140000>; |
66 | }; | 66 | }; |
67 | opp@1500000000 { | 67 | opp-1500000000 { |
68 | opp-hz = /bits/ 64 <1500000000>; | 68 | opp-hz = /bits/ 64 <1500000000>; |
69 | opp-microvolt = <1137500>; | 69 | opp-microvolt = <1137500>; |
70 | clock-latency-ns = <140000>; | 70 | clock-latency-ns = <140000>; |
71 | }; | 71 | }; |
72 | opp@1400000000 { | 72 | opp-1400000000 { |
73 | opp-hz = /bits/ 64 <1400000000>; | 73 | opp-hz = /bits/ 64 <1400000000>; |
74 | opp-microvolt = <1112500>; | 74 | opp-microvolt = <1112500>; |
75 | clock-latency-ns = <140000>; | 75 | clock-latency-ns = <140000>; |
76 | }; | 76 | }; |
77 | opp@1300000000 { | 77 | opp-1300000000 { |
78 | opp-hz = /bits/ 64 <1300000000>; | 78 | opp-hz = /bits/ 64 <1300000000>; |
79 | opp-microvolt = <1062500>; | 79 | opp-microvolt = <1062500>; |
80 | clock-latency-ns = <140000>; | 80 | clock-latency-ns = <140000>; |
81 | }; | 81 | }; |
82 | opp@1200000000 { | 82 | opp-1200000000 { |
83 | opp-hz = /bits/ 64 <1200000000>; | 83 | opp-hz = /bits/ 64 <1200000000>; |
84 | opp-microvolt = <1037500>; | 84 | opp-microvolt = <1037500>; |
85 | clock-latency-ns = <140000>; | 85 | clock-latency-ns = <140000>; |
86 | }; | 86 | }; |
87 | opp@1100000000 { | 87 | opp-1100000000 { |
88 | opp-hz = /bits/ 64 <1100000000>; | 88 | opp-hz = /bits/ 64 <1100000000>; |
89 | opp-microvolt = <1012500>; | 89 | opp-microvolt = <1012500>; |
90 | clock-latency-ns = <140000>; | 90 | clock-latency-ns = <140000>; |
91 | }; | 91 | }; |
92 | opp@1000000000 { | 92 | opp-1000000000 { |
93 | opp-hz = /bits/ 64 <1000000000>; | 93 | opp-hz = /bits/ 64 <1000000000>; |
94 | opp-microvolt = < 987500>; | 94 | opp-microvolt = < 987500>; |
95 | clock-latency-ns = <140000>; | 95 | clock-latency-ns = <140000>; |
96 | }; | 96 | }; |
97 | opp@900000000 { | 97 | opp-900000000 { |
98 | opp-hz = /bits/ 64 <900000000>; | 98 | opp-hz = /bits/ 64 <900000000>; |
99 | opp-microvolt = < 962500>; | 99 | opp-microvolt = < 962500>; |
100 | clock-latency-ns = <140000>; | 100 | clock-latency-ns = <140000>; |
101 | }; | 101 | }; |
102 | opp@800000000 { | 102 | opp-800000000 { |
103 | opp-hz = /bits/ 64 <800000000>; | 103 | opp-hz = /bits/ 64 <800000000>; |
104 | opp-microvolt = < 937500>; | 104 | opp-microvolt = < 937500>; |
105 | clock-latency-ns = <140000>; | 105 | clock-latency-ns = <140000>; |
106 | }; | 106 | }; |
107 | opp@700000000 { | 107 | opp-700000000 { |
108 | opp-hz = /bits/ 64 <700000000>; | 108 | opp-hz = /bits/ 64 <700000000>; |
109 | opp-microvolt = < 912500>; | 109 | opp-microvolt = < 912500>; |
110 | clock-latency-ns = <140000>; | 110 | clock-latency-ns = <140000>; |
@@ -114,42 +114,42 @@ | |||
114 | cluster_a7_opp_table: opp_table1 { | 114 | cluster_a7_opp_table: opp_table1 { |
115 | compatible = "operating-points-v2"; | 115 | compatible = "operating-points-v2"; |
116 | opp-shared; | 116 | opp-shared; |
117 | opp@1300000000 { | 117 | opp-1300000000 { |
118 | opp-hz = /bits/ 64 <1300000000>; | 118 | opp-hz = /bits/ 64 <1300000000>; |
119 | opp-microvolt = <1275000>; | 119 | opp-microvolt = <1275000>; |
120 | clock-latency-ns = <140000>; | 120 | clock-latency-ns = <140000>; |
121 | }; | 121 | }; |
122 | opp@1200000000 { | 122 | opp-1200000000 { |
123 | opp-hz = /bits/ 64 <1200000000>; | 123 | opp-hz = /bits/ 64 <1200000000>; |
124 | opp-microvolt = <1212500>; | 124 | opp-microvolt = <1212500>; |
125 | clock-latency-ns = <140000>; | 125 | clock-latency-ns = <140000>; |
126 | }; | 126 | }; |
127 | opp@1100000000 { | 127 | opp-1100000000 { |
128 | opp-hz = /bits/ 64 <1100000000>; | 128 | opp-hz = /bits/ 64 <1100000000>; |
129 | opp-microvolt = <1162500>; | 129 | opp-microvolt = <1162500>; |
130 | clock-latency-ns = <140000>; | 130 | clock-latency-ns = <140000>; |
131 | }; | 131 | }; |
132 | opp@1000000000 { | 132 | opp-1000000000 { |
133 | opp-hz = /bits/ 64 <1000000000>; | 133 | opp-hz = /bits/ 64 <1000000000>; |
134 | opp-microvolt = <1112500>; | 134 | opp-microvolt = <1112500>; |
135 | clock-latency-ns = <140000>; | 135 | clock-latency-ns = <140000>; |
136 | }; | 136 | }; |
137 | opp@900000000 { | 137 | opp-900000000 { |
138 | opp-hz = /bits/ 64 <900000000>; | 138 | opp-hz = /bits/ 64 <900000000>; |
139 | opp-microvolt = <1062500>; | 139 | opp-microvolt = <1062500>; |
140 | clock-latency-ns = <140000>; | 140 | clock-latency-ns = <140000>; |
141 | }; | 141 | }; |
142 | opp@800000000 { | 142 | opp-800000000 { |
143 | opp-hz = /bits/ 64 <800000000>; | 143 | opp-hz = /bits/ 64 <800000000>; |
144 | opp-microvolt = <1025000>; | 144 | opp-microvolt = <1025000>; |
145 | clock-latency-ns = <140000>; | 145 | clock-latency-ns = <140000>; |
146 | }; | 146 | }; |
147 | opp@700000000 { | 147 | opp-700000000 { |
148 | opp-hz = /bits/ 64 <700000000>; | 148 | opp-hz = /bits/ 64 <700000000>; |
149 | opp-microvolt = <975000>; | 149 | opp-microvolt = <975000>; |
150 | clock-latency-ns = <140000>; | 150 | clock-latency-ns = <140000>; |
151 | }; | 151 | }; |
152 | opp@600000000 { | 152 | opp-600000000 { |
153 | opp-hz = /bits/ 64 <600000000>; | 153 | opp-hz = /bits/ 64 <600000000>; |
154 | opp-microvolt = <937500>; | 154 | opp-microvolt = <937500>; |
155 | clock-latency-ns = <140000>; | 155 | clock-latency-ns = <140000>; |
@@ -699,7 +699,7 @@ | |||
699 | interrupts = <0 65 IRQ_TYPE_LEVEL_HIGH>; | 699 | interrupts = <0 65 IRQ_TYPE_LEVEL_HIGH>; |
700 | clocks = <&clock CLK_TMU>; | 700 | clocks = <&clock CLK_TMU>; |
701 | clock-names = "tmu_apbif"; | 701 | clock-names = "tmu_apbif"; |
702 | #include "exynos4412-tmu-sensor-conf.dtsi" | 702 | #include "exynos5420-tmu-sensor-conf.dtsi" |
703 | }; | 703 | }; |
704 | 704 | ||
705 | tmu_cpu1: tmu@10064000 { | 705 | tmu_cpu1: tmu@10064000 { |
@@ -708,7 +708,7 @@ | |||
708 | interrupts = <0 183 IRQ_TYPE_LEVEL_HIGH>; | 708 | interrupts = <0 183 IRQ_TYPE_LEVEL_HIGH>; |
709 | clocks = <&clock CLK_TMU>; | 709 | clocks = <&clock CLK_TMU>; |
710 | clock-names = "tmu_apbif"; | 710 | clock-names = "tmu_apbif"; |
711 | #include "exynos4412-tmu-sensor-conf.dtsi" | 711 | #include "exynos5420-tmu-sensor-conf.dtsi" |
712 | }; | 712 | }; |
713 | 713 | ||
714 | tmu_cpu2: tmu@10068000 { | 714 | tmu_cpu2: tmu@10068000 { |
@@ -717,7 +717,7 @@ | |||
717 | interrupts = <0 184 IRQ_TYPE_LEVEL_HIGH>; | 717 | interrupts = <0 184 IRQ_TYPE_LEVEL_HIGH>; |
718 | clocks = <&clock CLK_TMU>, <&clock CLK_TMU>; | 718 | clocks = <&clock CLK_TMU>, <&clock CLK_TMU>; |
719 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 719 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
720 | #include "exynos4412-tmu-sensor-conf.dtsi" | 720 | #include "exynos5420-tmu-sensor-conf.dtsi" |
721 | }; | 721 | }; |
722 | 722 | ||
723 | tmu_cpu3: tmu@1006c000 { | 723 | tmu_cpu3: tmu@1006c000 { |
@@ -726,7 +726,7 @@ | |||
726 | interrupts = <0 185 IRQ_TYPE_LEVEL_HIGH>; | 726 | interrupts = <0 185 IRQ_TYPE_LEVEL_HIGH>; |
727 | clocks = <&clock CLK_TMU>, <&clock CLK_TMU_GPU>; | 727 | clocks = <&clock CLK_TMU>, <&clock CLK_TMU_GPU>; |
728 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 728 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
729 | #include "exynos4412-tmu-sensor-conf.dtsi" | 729 | #include "exynos5420-tmu-sensor-conf.dtsi" |
730 | }; | 730 | }; |
731 | 731 | ||
732 | tmu_gpu: tmu@100a0000 { | 732 | tmu_gpu: tmu@100a0000 { |
@@ -735,7 +735,7 @@ | |||
735 | interrupts = <0 215 IRQ_TYPE_LEVEL_HIGH>; | 735 | interrupts = <0 215 IRQ_TYPE_LEVEL_HIGH>; |
736 | clocks = <&clock CLK_TMU_GPU>, <&clock CLK_TMU>; | 736 | clocks = <&clock CLK_TMU_GPU>, <&clock CLK_TMU>; |
737 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; | 737 | clock-names = "tmu_apbif", "tmu_triminfo_apbif"; |
738 | #include "exynos4412-tmu-sensor-conf.dtsi" | 738 | #include "exynos5420-tmu-sensor-conf.dtsi" |
739 | }; | 739 | }; |
740 | 740 | ||
741 | sysmmu_g2dr: sysmmu@0x10A60000 { | 741 | sysmmu_g2dr: sysmmu@0x10A60000 { |
diff --git a/arch/arm/boot/dts/exynos5440.dtsi b/arch/arm/boot/dts/exynos5440.dtsi index 77d35bb92950..a4ea018464fc 100644 --- a/arch/arm/boot/dts/exynos5440.dtsi +++ b/arch/arm/boot/dts/exynos5440.dtsi | |||
@@ -189,7 +189,7 @@ | |||
189 | }; | 189 | }; |
190 | 190 | ||
191 | watchdog@110000 { | 191 | watchdog@110000 { |
192 | compatible = "samsung,s3c2410-wdt"; | 192 | compatible = "samsung,s3c6410-wdt"; |
193 | reg = <0x110000 0x1000>; | 193 | reg = <0x110000 0x1000>; |
194 | interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; | 194 | interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; |
195 | clocks = <&clock CLK_B_125>; | 195 | clocks = <&clock CLK_B_125>; |
@@ -290,11 +290,22 @@ | |||
290 | clock-names = "usbhost"; | 290 | clock-names = "usbhost"; |
291 | }; | 291 | }; |
292 | 292 | ||
293 | pcie_phy0: pcie-phy@270000 { | ||
294 | #phy-cells = <0>; | ||
295 | compatible = "samsung,exynos5440-pcie-phy"; | ||
296 | reg = <0x270000 0x1000>, <0x271000 0x40>; | ||
297 | }; | ||
298 | |||
299 | pcie_phy1: pcie-phy@272000 { | ||
300 | #phy-cells = <0>; | ||
301 | compatible = "samsung,exynos5440-pcie-phy"; | ||
302 | reg = <0x272000 0x1000>, <0x271040 0x40>; | ||
303 | }; | ||
304 | |||
293 | pcie_0: pcie@290000 { | 305 | pcie_0: pcie@290000 { |
294 | compatible = "samsung,exynos5440-pcie", "snps,dw-pcie"; | 306 | compatible = "samsung,exynos5440-pcie", "snps,dw-pcie"; |
295 | reg = <0x290000 0x1000 | 307 | reg = <0x290000 0x1000>, <0x40000000 0x1000>; |
296 | 0x270000 0x1000 | 308 | reg-names = "elbi", "config"; |
297 | 0x271000 0x40>; | ||
298 | interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, | 309 | interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>, |
299 | <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, | 310 | <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>, |
300 | <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; | 311 | <GIC_SPI 22 IRQ_TYPE_LEVEL_HIGH>; |
@@ -303,8 +314,8 @@ | |||
303 | #address-cells = <3>; | 314 | #address-cells = <3>; |
304 | #size-cells = <2>; | 315 | #size-cells = <2>; |
305 | device_type = "pci"; | 316 | device_type = "pci"; |
306 | ranges = <0x00000800 0 0x40000000 0x40000000 0 0x00001000 /* configuration space */ | 317 | phys = <&pcie_phy0>; |
307 | 0x81000000 0 0 0x40001000 0 0x00010000 /* downstream I/O */ | 318 | ranges = <0x81000000 0 0 0x40001000 0 0x00010000 /* downstream I/O */ |
308 | 0x82000000 0 0x40011000 0x40011000 0 0x1ffef000>; /* non-prefetchable memory */ | 319 | 0x82000000 0 0x40011000 0x40011000 0 0x1ffef000>; /* non-prefetchable memory */ |
309 | #interrupt-cells = <1>; | 320 | #interrupt-cells = <1>; |
310 | interrupt-map-mask = <0 0 0 0>; | 321 | interrupt-map-mask = <0 0 0 0>; |
@@ -315,9 +326,8 @@ | |||
315 | 326 | ||
316 | pcie_1: pcie@2a0000 { | 327 | pcie_1: pcie@2a0000 { |
317 | compatible = "samsung,exynos5440-pcie", "snps,dw-pcie"; | 328 | compatible = "samsung,exynos5440-pcie", "snps,dw-pcie"; |
318 | reg = <0x2a0000 0x1000 | 329 | reg = <0x2a0000 0x1000>, <0x60000000 0x1000>; |
319 | 0x272000 0x1000 | 330 | reg-names = "elbi", "config"; |
320 | 0x271040 0x40>; | ||
321 | interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>, | 331 | interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>, |
322 | <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, | 332 | <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>, |
323 | <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; | 333 | <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; |
@@ -326,8 +336,8 @@ | |||
326 | #address-cells = <3>; | 336 | #address-cells = <3>; |
327 | #size-cells = <2>; | 337 | #size-cells = <2>; |
328 | device_type = "pci"; | 338 | device_type = "pci"; |
329 | ranges = <0x00000800 0 0x60000000 0x60000000 0 0x00001000 /* configuration space */ | 339 | phys = <&pcie_phy1>; |
330 | 0x81000000 0 0 0x60001000 0 0x00010000 /* downstream I/O */ | 340 | ranges = <0x81000000 0 0 0x60001000 0 0x00010000 /* downstream I/O */ |
331 | 0x82000000 0 0x60011000 0x60011000 0 0x1ffef000>; /* non-prefetchable memory */ | 341 | 0x82000000 0 0x60011000 0x60011000 0 0x1ffef000>; /* non-prefetchable memory */ |
332 | #interrupt-cells = <1>; | 342 | #interrupt-cells = <1>; |
333 | interrupt-map-mask = <0 0 0 0>; | 343 | interrupt-map-mask = <0 0 0 0>; |
diff --git a/arch/arm/boot/dts/exynos5800.dtsi b/arch/arm/boot/dts/exynos5800.dtsi index 8213016803e5..9ddb6bacac5a 100644 --- a/arch/arm/boot/dts/exynos5800.dtsi +++ b/arch/arm/boot/dts/exynos5800.dtsi | |||
@@ -24,60 +24,60 @@ | |||
24 | }; | 24 | }; |
25 | 25 | ||
26 | &cluster_a15_opp_table { | 26 | &cluster_a15_opp_table { |
27 | opp@1700000000 { | 27 | opp-1700000000 { |
28 | opp-microvolt = <1250000>; | 28 | opp-microvolt = <1250000>; |
29 | }; | 29 | }; |
30 | opp@1600000000 { | 30 | opp-1600000000 { |
31 | opp-microvolt = <1250000>; | 31 | opp-microvolt = <1250000>; |
32 | }; | 32 | }; |
33 | opp@1500000000 { | 33 | opp-1500000000 { |
34 | opp-microvolt = <1100000>; | 34 | opp-microvolt = <1100000>; |
35 | }; | 35 | }; |
36 | opp@1400000000 { | 36 | opp-1400000000 { |
37 | opp-microvolt = <1100000>; | 37 | opp-microvolt = <1100000>; |
38 | }; | 38 | }; |
39 | opp@1300000000 { | 39 | opp-1300000000 { |
40 | opp-microvolt = <1100000>; | 40 | opp-microvolt = <1100000>; |
41 | }; | 41 | }; |
42 | opp@1200000000 { | 42 | opp-1200000000 { |
43 | opp-microvolt = <1000000>; | 43 | opp-microvolt = <1000000>; |
44 | }; | 44 | }; |
45 | opp@1100000000 { | 45 | opp-1100000000 { |
46 | opp-microvolt = <1000000>; | 46 | opp-microvolt = <1000000>; |
47 | }; | 47 | }; |
48 | opp@1000000000 { | 48 | opp-1000000000 { |
49 | opp-microvolt = <1000000>; | 49 | opp-microvolt = <1000000>; |
50 | }; | 50 | }; |
51 | opp@900000000 { | 51 | opp-900000000 { |
52 | opp-microvolt = <1000000>; | 52 | opp-microvolt = <1000000>; |
53 | }; | 53 | }; |
54 | opp@800000000 { | 54 | opp-800000000 { |
55 | opp-microvolt = <900000>; | 55 | opp-microvolt = <900000>; |
56 | }; | 56 | }; |
57 | opp@700000000 { | 57 | opp-700000000 { |
58 | opp-microvolt = <900000>; | 58 | opp-microvolt = <900000>; |
59 | }; | 59 | }; |
60 | opp@600000000 { | 60 | opp-600000000 { |
61 | opp-hz = /bits/ 64 <600000000>; | 61 | opp-hz = /bits/ 64 <600000000>; |
62 | opp-microvolt = <900000>; | 62 | opp-microvolt = <900000>; |
63 | clock-latency-ns = <140000>; | 63 | clock-latency-ns = <140000>; |
64 | }; | 64 | }; |
65 | opp@500000000 { | 65 | opp-500000000 { |
66 | opp-hz = /bits/ 64 <500000000>; | 66 | opp-hz = /bits/ 64 <500000000>; |
67 | opp-microvolt = <900000>; | 67 | opp-microvolt = <900000>; |
68 | clock-latency-ns = <140000>; | 68 | clock-latency-ns = <140000>; |
69 | }; | 69 | }; |
70 | opp@400000000 { | 70 | opp-400000000 { |
71 | opp-hz = /bits/ 64 <400000000>; | 71 | opp-hz = /bits/ 64 <400000000>; |
72 | opp-microvolt = <900000>; | 72 | opp-microvolt = <900000>; |
73 | clock-latency-ns = <140000>; | 73 | clock-latency-ns = <140000>; |
74 | }; | 74 | }; |
75 | opp@300000000 { | 75 | opp-300000000 { |
76 | opp-hz = /bits/ 64 <300000000>; | 76 | opp-hz = /bits/ 64 <300000000>; |
77 | opp-microvolt = <900000>; | 77 | opp-microvolt = <900000>; |
78 | clock-latency-ns = <140000>; | 78 | clock-latency-ns = <140000>; |
79 | }; | 79 | }; |
80 | opp@200000000 { | 80 | opp-200000000 { |
81 | opp-hz = /bits/ 64 <200000000>; | 81 | opp-hz = /bits/ 64 <200000000>; |
82 | opp-microvolt = <900000>; | 82 | opp-microvolt = <900000>; |
83 | clock-latency-ns = <140000>; | 83 | clock-latency-ns = <140000>; |
@@ -85,46 +85,46 @@ | |||
85 | }; | 85 | }; |
86 | 86 | ||
87 | &cluster_a7_opp_table { | 87 | &cluster_a7_opp_table { |
88 | opp@1300000000 { | 88 | opp-1300000000 { |
89 | opp-microvolt = <1250000>; | 89 | opp-microvolt = <1250000>; |
90 | }; | 90 | }; |
91 | opp@1200000000 { | 91 | opp-1200000000 { |
92 | opp-microvolt = <1250000>; | 92 | opp-microvolt = <1250000>; |
93 | }; | 93 | }; |
94 | opp@1100000000 { | 94 | opp-1100000000 { |
95 | opp-microvolt = <1250000>; | 95 | opp-microvolt = <1250000>; |
96 | }; | 96 | }; |
97 | opp@1000000000 { | 97 | opp-1000000000 { |
98 | opp-microvolt = <1100000>; | 98 | opp-microvolt = <1100000>; |
99 | }; | 99 | }; |
100 | opp@900000000 { | 100 | opp-900000000 { |
101 | opp-microvolt = <1100000>; | 101 | opp-microvolt = <1100000>; |
102 | }; | 102 | }; |
103 | opp@800000000 { | 103 | opp-800000000 { |
104 | opp-microvolt = <1100000>; | 104 | opp-microvolt = <1100000>; |
105 | }; | 105 | }; |
106 | opp@700000000 { | 106 | opp-700000000 { |
107 | opp-microvolt = <1000000>; | 107 | opp-microvolt = <1000000>; |
108 | }; | 108 | }; |
109 | opp@600000000 { | 109 | opp-600000000 { |
110 | opp-microvolt = <1000000>; | 110 | opp-microvolt = <1000000>; |
111 | }; | 111 | }; |
112 | opp@500000000 { | 112 | opp-500000000 { |
113 | opp-hz = /bits/ 64 <500000000>; | 113 | opp-hz = /bits/ 64 <500000000>; |
114 | opp-microvolt = <1000000>; | 114 | opp-microvolt = <1000000>; |
115 | clock-latency-ns = <140000>; | 115 | clock-latency-ns = <140000>; |
116 | }; | 116 | }; |
117 | opp@400000000 { | 117 | opp-400000000 { |
118 | opp-hz = /bits/ 64 <400000000>; | 118 | opp-hz = /bits/ 64 <400000000>; |
119 | opp-microvolt = <1000000>; | 119 | opp-microvolt = <1000000>; |
120 | clock-latency-ns = <140000>; | 120 | clock-latency-ns = <140000>; |
121 | }; | 121 | }; |
122 | opp@300000000 { | 122 | opp-300000000 { |
123 | opp-hz = /bits/ 64 <300000000>; | 123 | opp-hz = /bits/ 64 <300000000>; |
124 | opp-microvolt = <900000>; | 124 | opp-microvolt = <900000>; |
125 | clock-latency-ns = <140000>; | 125 | clock-latency-ns = <140000>; |
126 | }; | 126 | }; |
127 | opp@200000000 { | 127 | opp-200000000 { |
128 | opp-hz = /bits/ 64 <200000000>; | 128 | opp-hz = /bits/ 64 <200000000>; |
129 | opp-microvolt = <900000>; | 129 | opp-microvolt = <900000>; |
130 | clock-latency-ns = <140000>; | 130 | clock-latency-ns = <140000>; |
diff --git a/arch/arm/boot/dts/gemini-nas4220b.dts b/arch/arm/boot/dts/gemini-nas4220b.dts new file mode 100644 index 000000000000..7668ba52158e --- /dev/null +++ b/arch/arm/boot/dts/gemini-nas4220b.dts | |||
@@ -0,0 +1,102 @@ | |||
1 | /* | ||
2 | * Device Tree file for the Gemini-based Raidsonic NAS IB-4220-B | ||
3 | */ | ||
4 | |||
5 | /dts-v1/; | ||
6 | |||
7 | #include "gemini.dtsi" | ||
8 | #include <dt-bindings/input/input.h> | ||
9 | |||
10 | / { | ||
11 | model = "Raidsonic NAS IB-4220-B"; | ||
12 | compatible = "raidsonic,ib-4220-b", "cortina,gemini"; | ||
13 | #address-cells = <1>; | ||
14 | #size-cells = <1>; | ||
15 | |||
16 | memory { /* 128 MB */ | ||
17 | device_type = "memory"; | ||
18 | reg = <0x00000000 0x8000000>; | ||
19 | }; | ||
20 | |||
21 | chosen { | ||
22 | bootargs = "console=ttyS0,19200n8"; | ||
23 | stdout-path = &uart0; | ||
24 | }; | ||
25 | |||
26 | gpio_keys { | ||
27 | compatible = "gpio-keys"; | ||
28 | #address-cells = <1>; | ||
29 | #size-cells = <0>; | ||
30 | |||
31 | button@29 { | ||
32 | debounce_interval = <50>; | ||
33 | wakeup-source; | ||
34 | linux,code = <KEY_SETUP>; | ||
35 | label = "Backup button"; | ||
36 | gpios = <&gpio1 29 GPIO_ACTIVE_LOW>; | ||
37 | }; | ||
38 | button@31 { | ||
39 | debounce_interval = <50>; | ||
40 | wakeup-source; | ||
41 | linux,code = <KEY_RESTART>; | ||
42 | label = "Softreset button"; | ||
43 | gpios = <&gpio1 31 GPIO_ACTIVE_LOW>; | ||
44 | }; | ||
45 | }; | ||
46 | |||
47 | leds { | ||
48 | compatible = "gpio-leds"; | ||
49 | led@28 { | ||
50 | label = "nas4220b:orange:hdd"; | ||
51 | gpios = <&gpio1 28 GPIO_ACTIVE_HIGH>; | ||
52 | default-state = "on"; | ||
53 | }; | ||
54 | led@30 { | ||
55 | label = "nas4220b:green:os"; | ||
56 | gpios = <&gpio1 30 GPIO_ACTIVE_HIGH>; | ||
57 | default-state = "on"; | ||
58 | linux,default-trigger = "heartbeat"; | ||
59 | }; | ||
60 | }; | ||
61 | |||
62 | soc { | ||
63 | flash@30000000 { | ||
64 | status = "okay"; | ||
65 | /* 16MB of flash */ | ||
66 | reg = <0x30000000 0x01000000>; | ||
67 | |||
68 | partition@0 { | ||
69 | label = "RedBoot"; | ||
70 | reg = <0x00000000 0x00020000>; | ||
71 | read-only; | ||
72 | }; | ||
73 | partition@20000 { | ||
74 | label = "Kernel"; | ||
75 | reg = <0x00020000 0x00300000>; | ||
76 | }; | ||
77 | partition@320000 { | ||
78 | label = "Ramdisk"; | ||
79 | reg = <0x00320000 0x00600000>; | ||
80 | }; | ||
81 | partition@920000 { | ||
82 | label = "Application"; | ||
83 | reg = <0x00920000 0x00600000>; | ||
84 | }; | ||
85 | partition@f20000 { | ||
86 | label = "VCTL"; | ||
87 | reg = <0x00f20000 0x00020000>; | ||
88 | read-only; | ||
89 | }; | ||
90 | partition@f40000 { | ||
91 | label = "CurConf"; | ||
92 | reg = <0x00f40000 0x000a0000>; | ||
93 | read-only; | ||
94 | }; | ||
95 | partition@fe0000 { | ||
96 | label = "FIS directory"; | ||
97 | reg = <0x00fe0000 0x00020000>; | ||
98 | read-only; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
102 | }; | ||
diff --git a/arch/arm/boot/dts/gemini-rut1xx.dts b/arch/arm/boot/dts/gemini-rut1xx.dts new file mode 100644 index 000000000000..7b920bfbda32 --- /dev/null +++ b/arch/arm/boot/dts/gemini-rut1xx.dts | |||
@@ -0,0 +1,65 @@ | |||
1 | /* | ||
2 | * Device Tree file for Teltonika RUT1xx | ||
3 | */ | ||
4 | |||
5 | /dts-v1/; | ||
6 | |||
7 | #include "gemini.dtsi" | ||
8 | #include <dt-bindings/input/input.h> | ||
9 | |||
10 | / { | ||
11 | model = "Teltonika RUT1xx"; | ||
12 | compatible = "teltonika,rut1xx", "cortina,gemini"; | ||
13 | #address-cells = <1>; | ||
14 | #size-cells = <1>; | ||
15 | |||
16 | memory { /* 128 MB */ | ||
17 | device_type = "memory"; | ||
18 | reg = <0x00000000 0x8000000>; | ||
19 | }; | ||
20 | |||
21 | chosen { | ||
22 | bootargs = "console=ttyS0,115200n8"; | ||
23 | stdout-path = &uart0; | ||
24 | }; | ||
25 | |||
26 | gpio_keys { | ||
27 | compatible = "gpio-keys"; | ||
28 | #address-cells = <1>; | ||
29 | #size-cells = <0>; | ||
30 | |||
31 | button@28 { | ||
32 | debounce_interval = <50>; | ||
33 | wakeup-source; | ||
34 | linux,code = <KEY_SETUP>; | ||
35 | label = "Reset to defaults"; | ||
36 | gpios = <&gpio1 28 GPIO_ACTIVE_LOW>; | ||
37 | }; | ||
38 | }; | ||
39 | |||
40 | leds { | ||
41 | compatible = "gpio-leds"; | ||
42 | led@7 { | ||
43 | /* FIXME: add the LED color */ | ||
44 | label = "rut1xx::gsm"; | ||
45 | gpios = <&gpio0 7 GPIO_ACTIVE_HIGH>; | ||
46 | default-state = "on"; | ||
47 | }; | ||
48 | led@31 { | ||
49 | /* FIXME: add the LED color */ | ||
50 | label = "rut1xx::power"; | ||
51 | gpios = <&gpio0 17 GPIO_ACTIVE_HIGH>; | ||
52 | default-state = "off"; | ||
53 | linux,default-trigger = "heartbeat"; | ||
54 | }; | ||
55 | }; | ||
56 | |||
57 | soc { | ||
58 | flash@30000000 { | ||
59 | status = "okay"; | ||
60 | /* 8MB of flash */ | ||
61 | reg = <0x30000000 0x00800000>; | ||
62 | /* TODO: add flash partitions here */ | ||
63 | }; | ||
64 | }; | ||
65 | }; | ||
diff --git a/arch/arm/boot/dts/gemini-sq201.dts b/arch/arm/boot/dts/gemini-sq201.dts new file mode 100644 index 000000000000..46309e79cc7b --- /dev/null +++ b/arch/arm/boot/dts/gemini-sq201.dts | |||
@@ -0,0 +1,118 @@ | |||
1 | /* | ||
2 | * Device Tree file for ITian Square One SQ201 NAS | ||
3 | */ | ||
4 | |||
5 | /dts-v1/; | ||
6 | |||
7 | #include "gemini.dtsi" | ||
8 | #include <dt-bindings/input/input.h> | ||
9 | |||
10 | / { | ||
11 | model = "ITian Square One SQ201"; | ||
12 | compatible = "itian,sq201", "cortina,gemini"; | ||
13 | #address-cells = <1>; | ||
14 | #size-cells = <1>; | ||
15 | |||
16 | memory { /* 128 MB */ | ||
17 | device_type = "memory"; | ||
18 | reg = <0x00000000 0x8000000>; | ||
19 | }; | ||
20 | |||
21 | chosen { | ||
22 | bootargs = "console=ttyS0,115200n8"; | ||
23 | stdout-path = &uart0; | ||
24 | }; | ||
25 | |||
26 | gpio_keys { | ||
27 | compatible = "gpio-keys"; | ||
28 | #address-cells = <1>; | ||
29 | #size-cells = <0>; | ||
30 | |||
31 | button@18 { | ||
32 | debounce_interval = <50>; | ||
33 | wakeup-source; | ||
34 | linux,code = <KEY_SETUP>; | ||
35 | label = "factory reset"; | ||
36 | gpios = <&gpio0 18 GPIO_ACTIVE_LOW>; | ||
37 | }; | ||
38 | }; | ||
39 | |||
40 | leds { | ||
41 | compatible = "gpio-leds"; | ||
42 | led@20 { | ||
43 | label = "sq201:green:info"; | ||
44 | gpios = <&gpio0 20 GPIO_ACTIVE_HIGH>; | ||
45 | default-state = "on"; | ||
46 | linux,default-trigger = "heartbeat"; | ||
47 | }; | ||
48 | led@31 { | ||
49 | label = "sq201:green:usb"; | ||
50 | gpios = <&gpio0 31 GPIO_ACTIVE_HIGH>; | ||
51 | default-state = "off"; | ||
52 | linux,default-trigger = "usb-host"; | ||
53 | }; | ||
54 | }; | ||
55 | |||
56 | soc { | ||
57 | flash@30000000 { | ||
58 | status = "okay"; | ||
59 | /* 16MB of flash */ | ||
60 | reg = <0x30000000 0x01000000>; | ||
61 | |||
62 | partition@0 { | ||
63 | label = "RedBoot"; | ||
64 | reg = <0x00000000 0x00120000>; | ||
65 | read-only; | ||
66 | }; | ||
67 | partition@120000 { | ||
68 | label = "Kernel"; | ||
69 | reg = <0x00120000 0x00200000>; | ||
70 | }; | ||
71 | partition@320000 { | ||
72 | label = "Ramdisk"; | ||
73 | reg = <0x00320000 0x00600000>; | ||
74 | }; | ||
75 | partition@920000 { | ||
76 | label = "Application"; | ||
77 | reg = <0x00920000 0x00600000>; | ||
78 | }; | ||
79 | partition@f20000 { | ||
80 | label = "VCTL"; | ||
81 | reg = <0x00f20000 0x00020000>; | ||
82 | read-only; | ||
83 | }; | ||
84 | partition@f40000 { | ||
85 | label = "CurConf"; | ||
86 | reg = <0x00f40000 0x000a0000>; | ||
87 | read-only; | ||
88 | }; | ||
89 | partition@fe0000 { | ||
90 | label = "FIS directory"; | ||
91 | reg = <0x00fe0000 0x00020000>; | ||
92 | read-only; | ||
93 | }; | ||
94 | }; | ||
95 | |||
96 | pci@50000000 { | ||
97 | status = "okay"; | ||
98 | interrupt-map-mask = <0xf800 0 0 7>; | ||
99 | interrupt-map = | ||
100 | <0x4800 0 0 1 &pci_intc 0>, /* Slot 9 */ | ||
101 | <0x4800 0 0 2 &pci_intc 1>, | ||
102 | <0x4800 0 0 3 &pci_intc 2>, | ||
103 | <0x4800 0 0 4 &pci_intc 3>, | ||
104 | <0x5000 0 0 1 &pci_intc 1>, /* Slot 10 */ | ||
105 | <0x5000 0 0 2 &pci_intc 2>, | ||
106 | <0x5000 0 0 3 &pci_intc 3>, | ||
107 | <0x5000 0 0 4 &pci_intc 0>, | ||
108 | <0x5800 0 0 1 &pci_intc 2>, /* Slot 11 */ | ||
109 | <0x5800 0 0 2 &pci_intc 3>, | ||
110 | <0x5800 0 0 3 &pci_intc 0>, | ||
111 | <0x5800 0 0 4 &pci_intc 1>, | ||
112 | <0x6000 0 0 1 &pci_intc 3>, /* Slot 12 */ | ||
113 | <0x6000 0 0 2 &pci_intc 0>, | ||
114 | <0x6000 0 0 3 &pci_intc 1>, | ||
115 | <0x6000 0 0 4 &pci_intc 2>; | ||
116 | }; | ||
117 | }; | ||
118 | }; | ||
diff --git a/arch/arm/boot/dts/gemini-wbd111.dts b/arch/arm/boot/dts/gemini-wbd111.dts new file mode 100644 index 000000000000..63b756e3bf5a --- /dev/null +++ b/arch/arm/boot/dts/gemini-wbd111.dts | |||
@@ -0,0 +1,102 @@ | |||
1 | /* | ||
2 | * Device Tree file for Wiliboard WBD-111 | ||
3 | */ | ||
4 | |||
5 | /dts-v1/; | ||
6 | |||
7 | #include "gemini.dtsi" | ||
8 | #include <dt-bindings/input/input.h> | ||
9 | |||
10 | / { | ||
11 | model = "Wiliboard WBD-111"; | ||
12 | compatible = "wiliboard,wbd111", "cortina,gemini"; | ||
13 | #address-cells = <1>; | ||
14 | #size-cells = <1>; | ||
15 | |||
16 | memory { /* 128 MB */ | ||
17 | device_type = "memory"; | ||
18 | reg = <0x00000000 0x8000000>; | ||
19 | }; | ||
20 | |||
21 | chosen { | ||
22 | bootargs = "console=ttyS0,115200n8"; | ||
23 | stdout-path = &uart0; | ||
24 | }; | ||
25 | |||
26 | gpio_keys { | ||
27 | compatible = "gpio-keys"; | ||
28 | #address-cells = <1>; | ||
29 | #size-cells = <0>; | ||
30 | |||
31 | button@5 { | ||
32 | debounce_interval = <50>; | ||
33 | wakeup-source; | ||
34 | linux,code = <KEY_SETUP>; | ||
35 | label = "reset"; | ||
36 | gpios = <&gpio0 5 GPIO_ACTIVE_LOW>; | ||
37 | }; | ||
38 | }; | ||
39 | |||
40 | leds { | ||
41 | compatible = "gpio-leds"; | ||
42 | |||
43 | led@1 { | ||
44 | label = "wbd111:red:L3"; | ||
45 | gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>; | ||
46 | default-state = "off"; | ||
47 | }; | ||
48 | led@2 { | ||
49 | label = "wbd111:green:L4"; | ||
50 | gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>; | ||
51 | default-state = "off"; | ||
52 | }; | ||
53 | led@3 { | ||
54 | label = "wbd111:red:L4"; | ||
55 | gpios = <&gpio0 3 GPIO_ACTIVE_HIGH>; | ||
56 | default-state = "off"; | ||
57 | }; | ||
58 | led@5 { | ||
59 | label = "wbd111:green:L3"; | ||
60 | gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>; | ||
61 | default-state = "on"; | ||
62 | linux,default-trigger = "heartbeat"; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | soc { | ||
67 | flash@30000000 { | ||
68 | status = "okay"; | ||
69 | /* 8MB of flash */ | ||
70 | reg = <0x30000000 0x00800000>; | ||
71 | |||
72 | partition@0 { | ||
73 | label = "RedBoot"; | ||
74 | reg = <0x00000000 0x00020000>; | ||
75 | read-only; | ||
76 | }; | ||
77 | partition@20000 { | ||
78 | label = "kernel"; | ||
79 | reg = <0x00020000 0x00100000>; | ||
80 | }; | ||
81 | partition@120000 { | ||
82 | label = "rootfs"; | ||
83 | reg = <0x00120000 0x006a0000>; | ||
84 | }; | ||
85 | partition@7c0000 { | ||
86 | label = "VCTL"; | ||
87 | reg = <0x007c0000 0x00010000>; | ||
88 | read-only; | ||
89 | }; | ||
90 | partition@7d0000 { | ||
91 | label = "cfg"; | ||
92 | reg = <0x007d0000 0x00010000>; | ||
93 | read-only; | ||
94 | }; | ||
95 | partition@7e0000 { | ||
96 | label = "FIS"; | ||
97 | reg = <0x007e0000 0x00010000>; | ||
98 | read-only; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
102 | }; | ||
diff --git a/arch/arm/boot/dts/gemini-wbd222.dts b/arch/arm/boot/dts/gemini-wbd222.dts new file mode 100644 index 000000000000..9747f5a47807 --- /dev/null +++ b/arch/arm/boot/dts/gemini-wbd222.dts | |||
@@ -0,0 +1,102 @@ | |||
1 | /* | ||
2 | * Device Tree file for Wiliboard WBD-222 | ||
3 | */ | ||
4 | |||
5 | /dts-v1/; | ||
6 | |||
7 | #include "gemini.dtsi" | ||
8 | #include <dt-bindings/input/input.h> | ||
9 | |||
10 | / { | ||
11 | model = "Wiliboard WBD-222"; | ||
12 | compatible = "wiliboard,wbd222", "cortina,gemini"; | ||
13 | #address-cells = <1>; | ||
14 | #size-cells = <1>; | ||
15 | |||
16 | memory { /* 128 MB */ | ||
17 | device_type = "memory"; | ||
18 | reg = <0x00000000 0x8000000>; | ||
19 | }; | ||
20 | |||
21 | chosen { | ||
22 | bootargs = "console=ttyS0,115200n8"; | ||
23 | stdout-path = &uart0; | ||
24 | }; | ||
25 | |||
26 | gpio_keys { | ||
27 | compatible = "gpio-keys"; | ||
28 | #address-cells = <1>; | ||
29 | #size-cells = <0>; | ||
30 | |||
31 | button@5 { | ||
32 | debounce_interval = <50>; | ||
33 | wakeup-source; | ||
34 | linux,code = <KEY_SETUP>; | ||
35 | label = "reset"; | ||
36 | gpios = <&gpio0 5 GPIO_ACTIVE_LOW>; | ||
37 | }; | ||
38 | }; | ||
39 | |||
40 | leds { | ||
41 | compatible = "gpio-leds"; | ||
42 | |||
43 | led@1 { | ||
44 | label = "wbd111:red:L3"; | ||
45 | gpios = <&gpio0 1 GPIO_ACTIVE_HIGH>; | ||
46 | default-state = "off"; | ||
47 | }; | ||
48 | led@2 { | ||
49 | label = "wbd111:green:L4"; | ||
50 | gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>; | ||
51 | default-state = "off"; | ||
52 | }; | ||
53 | led@3 { | ||
54 | label = "wbd111:red:L4"; | ||
55 | gpios = <&gpio0 3 GPIO_ACTIVE_HIGH>; | ||
56 | default-state = "off"; | ||
57 | }; | ||
58 | led@5 { | ||
59 | label = "wbd111:green:L3"; | ||
60 | gpios = <&gpio0 5 GPIO_ACTIVE_HIGH>; | ||
61 | default-state = "on"; | ||
62 | linux,default-trigger = "heartbeat"; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | soc { | ||
67 | flash@30000000 { | ||
68 | status = "okay"; | ||
69 | /* 8MB of flash */ | ||
70 | reg = <0x30000000 0x00800000>; | ||
71 | |||
72 | partition@0 { | ||
73 | label = "RedBoot"; | ||
74 | reg = <0x00000000 0x00020000>; | ||
75 | read-only; | ||
76 | }; | ||
77 | partition@20000 { | ||
78 | label = "kernel"; | ||
79 | reg = <0x00020000 0x00100000>; | ||
80 | }; | ||
81 | partition@120000 { | ||
82 | label = "rootfs"; | ||
83 | reg = <0x00120000 0x006a0000>; | ||
84 | }; | ||
85 | partition@7c0000 { | ||
86 | label = "VCTL"; | ||
87 | reg = <0x007c0000 0x00010000>; | ||
88 | read-only; | ||
89 | }; | ||
90 | partition@7d0000 { | ||
91 | label = "cfg"; | ||
92 | reg = <0x007d0000 0x00010000>; | ||
93 | read-only; | ||
94 | }; | ||
95 | partition@7e0000 { | ||
96 | label = "FIS"; | ||
97 | reg = <0x007e0000 0x00010000>; | ||
98 | read-only; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
102 | }; | ||
diff --git a/arch/arm/boot/dts/gemini.dtsi b/arch/arm/boot/dts/gemini.dtsi new file mode 100644 index 000000000000..b8d011bdcc76 --- /dev/null +++ b/arch/arm/boot/dts/gemini.dtsi | |||
@@ -0,0 +1,156 @@ | |||
1 | /* | ||
2 | * Device Tree file for Cortina systems Gemini SoC | ||
3 | */ | ||
4 | |||
5 | /include/ "skeleton.dtsi" | ||
6 | |||
7 | #include <dt-bindings/interrupt-controller/irq.h> | ||
8 | #include <dt-bindings/gpio/gpio.h> | ||
9 | |||
10 | / { | ||
11 | soc { | ||
12 | #address-cells = <1>; | ||
13 | #size-cells = <1>; | ||
14 | ranges; | ||
15 | compatible = "simple-bus"; | ||
16 | interrupt-parent = <&intcon>; | ||
17 | |||
18 | flash@30000000 { | ||
19 | compatible = "cortina,gemini-flash", "cfi-flash"; | ||
20 | syscon = <&syscon>; | ||
21 | bank-width = <2>; | ||
22 | #address-cells = <1>; | ||
23 | #size-cells = <1>; | ||
24 | status = "disabled"; | ||
25 | }; | ||
26 | |||
27 | syscon: syscon@40000000 { | ||
28 | compatible = "cortina,gemini-syscon", "syscon", "simple-mfd"; | ||
29 | reg = <0x40000000 0x1000>; | ||
30 | |||
31 | syscon-reboot { | ||
32 | compatible = "syscon-reboot"; | ||
33 | regmap = <&syscon>; | ||
34 | /* GLOBAL_RESET register */ | ||
35 | offset = <0x0c>; | ||
36 | /* RESET_GLOBAL | RESET_CPU1 */ | ||
37 | mask = <0xC0000000>; | ||
38 | }; | ||
39 | }; | ||
40 | |||
41 | watchdog@41000000 { | ||
42 | compatible = "cortina,gemini-watchdog"; | ||
43 | reg = <0x41000000 0x1000>; | ||
44 | interrupts = <3 IRQ_TYPE_LEVEL_HIGH>; | ||
45 | }; | ||
46 | |||
47 | uart0: serial@42000000 { | ||
48 | compatible = "ns16550a"; | ||
49 | reg = <0x42000000 0x100>; | ||
50 | clock-frequency = <48000000>; | ||
51 | interrupts = <18 IRQ_TYPE_LEVEL_HIGH>; | ||
52 | reg-shift = <2>; | ||
53 | }; | ||
54 | |||
55 | timer@43000000 { | ||
56 | compatible = "cortina,gemini-timer"; | ||
57 | reg = <0x43000000 0x1000>; | ||
58 | interrupt-parent = <&intcon>; | ||
59 | interrupts = <14 IRQ_TYPE_EDGE_FALLING>, /* Timer 1 */ | ||
60 | <15 IRQ_TYPE_EDGE_FALLING>, /* Timer 2 */ | ||
61 | <16 IRQ_TYPE_EDGE_FALLING>; /* Timer 3 */ | ||
62 | syscon = <&syscon>; | ||
63 | }; | ||
64 | |||
65 | rtc@45000000 { | ||
66 | compatible = "cortina,gemini-rtc"; | ||
67 | reg = <0x45000000 0x100>; | ||
68 | interrupts = <17 IRQ_TYPE_LEVEL_HIGH>; | ||
69 | }; | ||
70 | |||
71 | intcon: interrupt-controller@48000000 { | ||
72 | compatible = "faraday,ftintc010"; | ||
73 | reg = <0x48000000 0x1000>; | ||
74 | interrupt-controller; | ||
75 | #interrupt-cells = <2>; | ||
76 | }; | ||
77 | |||
78 | power-controller@4b000000 { | ||
79 | compatible = "cortina,gemini-power-controller"; | ||
80 | reg = <0x4b000000 0x100>; | ||
81 | interrupts = <26 IRQ_TYPE_EDGE_RISING>; | ||
82 | }; | ||
83 | |||
84 | gpio0: gpio@4d000000 { | ||
85 | compatible = "cortina,gemini-gpio", "faraday,ftgpio010"; | ||
86 | reg = <0x4d000000 0x100>; | ||
87 | interrupts = <22 IRQ_TYPE_LEVEL_HIGH>; | ||
88 | gpio-controller; | ||
89 | #gpio-cells = <2>; | ||
90 | interrupt-controller; | ||
91 | #interrupt-cells = <2>; | ||
92 | }; | ||
93 | |||
94 | gpio1: gpio@4e000000 { | ||
95 | compatible = "cortina,gemini-gpio", "faraday,ftgpio010"; | ||
96 | reg = <0x4e000000 0x100>; | ||
97 | interrupts = <23 IRQ_TYPE_LEVEL_HIGH>; | ||
98 | gpio-controller; | ||
99 | #gpio-cells = <2>; | ||
100 | interrupt-controller; | ||
101 | #interrupt-cells = <2>; | ||
102 | }; | ||
103 | |||
104 | gpio2: gpio@4f000000 { | ||
105 | compatible = "cortina,gemini-gpio", "faraday,ftgpio010"; | ||
106 | reg = <0x4f000000 0x100>; | ||
107 | interrupts = <24 IRQ_TYPE_LEVEL_HIGH>; | ||
108 | gpio-controller; | ||
109 | #gpio-cells = <2>; | ||
110 | interrupt-controller; | ||
111 | #interrupt-cells = <2>; | ||
112 | }; | ||
113 | |||
114 | pci@50000000 { | ||
115 | compatible = "cortina,gemini-pci", "faraday,ftpci100"; | ||
116 | /* | ||
117 | * The first 256 bytes in the IO range is actually used | ||
118 | * to configure the host bridge. | ||
119 | */ | ||
120 | reg = <0x50000000 0x100>; | ||
121 | #address-cells = <3>; | ||
122 | #size-cells = <2>; | ||
123 | #interrupt-cells = <1>; | ||
124 | status = "disabled"; | ||
125 | |||
126 | bus-range = <0x00 0xff>; | ||
127 | /* PCI ranges mappings */ | ||
128 | ranges = | ||
129 | /* 1MiB I/O space 0x50000000-0x500fffff */ | ||
130 | <0x01000000 0 0 0x50000000 0 0x00100000>, | ||
131 | /* 128MiB non-prefetchable memory 0x58000000-0x5fffffff */ | ||
132 | <0x02000000 0 0x58000000 0x58000000 0 0x08000000>; | ||
133 | |||
134 | /* DMA ranges */ | ||
135 | dma-ranges = | ||
136 | /* 128MiB at 0x00000000-0x07ffffff */ | ||
137 | <0x02000000 0 0x00000000 0x00000000 0 0x08000000>, | ||
138 | /* 64MiB at 0x00000000-0x03ffffff */ | ||
139 | <0x02000000 0 0x00000000 0x00000000 0 0x04000000>, | ||
140 | /* 64MiB at 0x00000000-0x03ffffff */ | ||
141 | <0x02000000 0 0x00000000 0x00000000 0 0x04000000>; | ||
142 | |||
143 | /* | ||
144 | * This PCI host bridge variant has a cascaded interrupt | ||
145 | * controller embedded in the host bridge. | ||
146 | */ | ||
147 | pci_intc: interrupt-controller { | ||
148 | interrupt-parent = <&intcon>; | ||
149 | interrupts = <8 IRQ_TYPE_LEVEL_HIGH>; | ||
150 | interrupt-controller; | ||
151 | #address-cells = <0>; | ||
152 | #interrupt-cells = <1>; | ||
153 | }; | ||
154 | }; | ||
155 | }; | ||
156 | }; | ||
diff --git a/arch/arm/boot/dts/imx25-eukrea-mbimxsd25-baseboard.dts b/arch/arm/boot/dts/imx25-eukrea-mbimxsd25-baseboard.dts index 9300711f1ea3..db39bd6b8e00 100644 --- a/arch/arm/boot/dts/imx25-eukrea-mbimxsd25-baseboard.dts +++ b/arch/arm/boot/dts/imx25-eukrea-mbimxsd25-baseboard.dts | |||
@@ -179,8 +179,6 @@ | |||
179 | }; | 179 | }; |
180 | 180 | ||
181 | &usbotg { | 181 | &usbotg { |
182 | phy_type = "utmi"; | ||
183 | dr_mode = "otg"; | ||
184 | external-vbus-divider; | 182 | external-vbus-divider; |
185 | status = "okay"; | 183 | status = "okay"; |
186 | }; | 184 | }; |
diff --git a/arch/arm/boot/dts/imx25-pdk.dts b/arch/arm/boot/dts/imx25-pdk.dts index 70292101ba03..d921dd2ed676 100644 --- a/arch/arm/boot/dts/imx25-pdk.dts +++ b/arch/arm/boot/dts/imx25-pdk.dts | |||
@@ -309,8 +309,6 @@ | |||
309 | }; | 309 | }; |
310 | 310 | ||
311 | &usbotg { | 311 | &usbotg { |
312 | phy_type = "utmi"; | ||
313 | dr_mode = "otg"; | ||
314 | external-vbus-divider; | 312 | external-vbus-divider; |
315 | status = "okay"; | 313 | status = "okay"; |
316 | }; | 314 | }; |
diff --git a/arch/arm/boot/dts/imx25-pinfunc.h b/arch/arm/boot/dts/imx25-pinfunc.h index f840f03ad171..6c63dca1b9b8 100644 --- a/arch/arm/boot/dts/imx25-pinfunc.h +++ b/arch/arm/boot/dts/imx25-pinfunc.h | |||
@@ -17,8 +17,6 @@ | |||
17 | * <mux_reg conf_reg input_reg mux_mode input_val> | 17 | * <mux_reg conf_reg input_reg mux_mode input_val> |
18 | */ | 18 | */ |
19 | 19 | ||
20 | #define MX25_PAD_TDO__TDO 0x000 0x3e8 0x000 0x00 0x000 | ||
21 | |||
22 | #define MX25_PAD_A10__A10 0x008 0x000 0x000 0x00 0x000 | 20 | #define MX25_PAD_A10__A10 0x008 0x000 0x000 0x00 0x000 |
23 | #define MX25_PAD_A10__GPIO_4_0 0x008 0x000 0x000 0x05 0x000 | 21 | #define MX25_PAD_A10__GPIO_4_0 0x008 0x000 0x000 0x05 0x000 |
24 | 22 | ||
@@ -68,7 +66,6 @@ | |||
68 | 66 | ||
69 | #define MX25_PAD_A22__A22 0x030 0x000 0x000 0x00 0x000 | 67 | #define MX25_PAD_A22__A22 0x030 0x000 0x000 0x00 0x000 |
70 | #define MX25_PAD_A22__GPIO_2_8 0x030 0x000 0x000 0x05 0x000 | 68 | #define MX25_PAD_A22__GPIO_2_8 0x030 0x000 0x000 0x05 0x000 |
71 | #define MX25_PAD_A22__FEC_TDATA2 0x030 0x000 0x000 0x07 0x000 | ||
72 | #define MX25_PAD_A22__SIM2_VEN1 0x030 0x000 0x000 0x06 0x000 | 69 | #define MX25_PAD_A22__SIM2_VEN1 0x030 0x000 0x000 0x06 0x000 |
73 | #define MX25_PAD_A22__FEC_TDATA2 0x030 0x000 0x000 0x07 0x000 | 70 | #define MX25_PAD_A22__FEC_TDATA2 0x030 0x000 0x000 0x07 0x000 |
74 | 71 | ||
@@ -542,6 +539,8 @@ | |||
542 | #define MX25_PAD_RTCK__OWIRE 0x1ec 0x3e4 0x000 0x01 0x000 | 539 | #define MX25_PAD_RTCK__OWIRE 0x1ec 0x3e4 0x000 0x01 0x000 |
543 | #define MX25_PAD_RTCK__GPIO_3_14 0x1ec 0x3e4 0x000 0x05 0x000 | 540 | #define MX25_PAD_RTCK__GPIO_3_14 0x1ec 0x3e4 0x000 0x05 0x000 |
544 | 541 | ||
542 | #define MX25_PAD_TDO__TDO 0x000 0x3e8 0x000 0x00 0x000 | ||
543 | |||
545 | #define MX25_PAD_DE_B__DE_B 0x1f0 0x3ec 0x000 0x00 0x000 | 544 | #define MX25_PAD_DE_B__DE_B 0x1f0 0x3ec 0x000 0x00 0x000 |
546 | #define MX25_PAD_DE_B__GPIO_2_20 0x1f0 0x3ec 0x000 0x05 0x000 | 545 | #define MX25_PAD_DE_B__GPIO_2_20 0x1f0 0x3ec 0x000 0x05 0x000 |
547 | 546 | ||
diff --git a/arch/arm/boot/dts/imx25.dtsi b/arch/arm/boot/dts/imx25.dtsi index e0ba55016a04..0cdf333336cd 100644 --- a/arch/arm/boot/dts/imx25.dtsi +++ b/arch/arm/boot/dts/imx25.dtsi | |||
@@ -93,6 +93,11 @@ | |||
93 | reg = <0x43f00000 0x100000>; | 93 | reg = <0x43f00000 0x100000>; |
94 | ranges; | 94 | ranges; |
95 | 95 | ||
96 | aips1: bridge@43f00000 { | ||
97 | compatible = "fsl,imx25-aips"; | ||
98 | reg = <0x43f00000 0x4000>; | ||
99 | }; | ||
100 | |||
96 | i2c1: i2c@43f80000 { | 101 | i2c1: i2c@43f80000 { |
97 | #address-cells = <1>; | 102 | #address-cells = <1>; |
98 | #size-cells = <0>; | 103 | #size-cells = <0>; |
@@ -342,6 +347,11 @@ | |||
342 | reg = <0x53f00000 0x100000>; | 347 | reg = <0x53f00000 0x100000>; |
343 | ranges; | 348 | ranges; |
344 | 349 | ||
350 | aips2: bridge@53f00000 { | ||
351 | compatible = "fsl,imx25-aips"; | ||
352 | reg = <0x53f00000 0x4000>; | ||
353 | }; | ||
354 | |||
345 | clks: ccm@53f80000 { | 355 | clks: ccm@53f80000 { |
346 | compatible = "fsl,imx25-ccm"; | 356 | compatible = "fsl,imx25-ccm"; |
347 | reg = <0x53f80000 0x4000>; | 357 | reg = <0x53f80000 0x4000>; |
@@ -544,6 +554,8 @@ | |||
544 | clock-names = "ipg", "ahb", "per"; | 554 | clock-names = "ipg", "ahb", "per"; |
545 | fsl,usbmisc = <&usbmisc 0>; | 555 | fsl,usbmisc = <&usbmisc 0>; |
546 | fsl,usbphy = <&usbphy0>; | 556 | fsl,usbphy = <&usbphy0>; |
557 | phy_type = "utmi"; | ||
558 | dr_mode = "otg"; | ||
547 | status = "disabled"; | 559 | status = "disabled"; |
548 | }; | 560 | }; |
549 | 561 | ||
diff --git a/arch/arm/boot/dts/imx28-duckbill-2-485.dts b/arch/arm/boot/dts/imx28-duckbill-2-485.dts new file mode 100644 index 000000000000..bd3fd470f9c3 --- /dev/null +++ b/arch/arm/boot/dts/imx28-duckbill-2-485.dts | |||
@@ -0,0 +1,189 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com> | ||
3 | * Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de> | ||
4 | * | ||
5 | * The code contained herein is licensed under the GNU General Public | ||
6 | * License. You may obtain a copy of the GNU General Public License | ||
7 | * Version 2 or later at the following locations: | ||
8 | * | ||
9 | * http://www.opensource.org/licenses/gpl-license.html | ||
10 | * http://www.gnu.org/copyleft/gpl.html | ||
11 | */ | ||
12 | |||
13 | /dts-v1/; | ||
14 | #include <dt-bindings/interrupt-controller/irq.h> | ||
15 | #include <dt-bindings/gpio/gpio.h> | ||
16 | #include "imx28.dtsi" | ||
17 | |||
18 | / { | ||
19 | model = "I2SE Duckbill 2 485"; | ||
20 | compatible = "i2se,duckbill-2-485", "i2se,duckbill-2", "fsl,imx28"; | ||
21 | |||
22 | memory { | ||
23 | reg = <0x40000000 0x08000000>; | ||
24 | }; | ||
25 | |||
26 | apb@80000000 { | ||
27 | apbh@80000000 { | ||
28 | ssp0: ssp@80010000 { | ||
29 | compatible = "fsl,imx28-mmc"; | ||
30 | pinctrl-names = "default"; | ||
31 | pinctrl-0 = <&mmc0_8bit_pins_a | ||
32 | &mmc0_cd_cfg &mmc0_sck_cfg>; | ||
33 | bus-width = <8>; | ||
34 | vmmc-supply = <®_3p3v>; | ||
35 | status = "okay"; | ||
36 | non-removable; | ||
37 | }; | ||
38 | |||
39 | ssp2: ssp@80014000 { | ||
40 | compatible = "fsl,imx28-mmc"; | ||
41 | pinctrl-names = "default"; | ||
42 | pinctrl-0 = <&mmc2_4bit_pins_b | ||
43 | &mmc2_cd_cfg &mmc2_sck_cfg_b>; | ||
44 | bus-width = <4>; | ||
45 | vmmc-supply = <®_3p3v>; | ||
46 | status = "okay"; | ||
47 | }; | ||
48 | |||
49 | pinctrl@80018000 { | ||
50 | pinctrl-names = "default"; | ||
51 | pinctrl-0 = <&hog_pins_a>; | ||
52 | |||
53 | hog_pins_a: hog@0 { | ||
54 | reg = <0>; | ||
55 | fsl,pinmux-ids = < | ||
56 | MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */ | ||
57 | >; | ||
58 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
59 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
60 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
61 | }; | ||
62 | |||
63 | mac0_phy_reset_pin: mac0-phy-reset@0 { | ||
64 | reg = <0>; | ||
65 | fsl,pinmux-ids = < | ||
66 | MX28_PAD_GPMI_ALE__GPIO_0_26 /* PHY Reset */ | ||
67 | >; | ||
68 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
69 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
70 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
71 | }; | ||
72 | |||
73 | mac0_phy_int_pin: mac0-phy-int@0 { | ||
74 | reg = <0>; | ||
75 | fsl,pinmux-ids = < | ||
76 | MX28_PAD_GPMI_D07__GPIO_0_7 /* PHY Interrupt */ | ||
77 | >; | ||
78 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
79 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
80 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
81 | }; | ||
82 | |||
83 | led_pins: leds@0 { | ||
84 | reg = <0>; | ||
85 | fsl,pinmux-ids = < | ||
86 | MX28_PAD_SAIF0_MCLK__GPIO_3_20 | ||
87 | MX28_PAD_SAIF0_LRCLK__GPIO_3_21 | ||
88 | MX28_PAD_I2C0_SCL__GPIO_3_24 | ||
89 | MX28_PAD_I2C0_SDA__GPIO_3_25 | ||
90 | >; | ||
91 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
92 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
93 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
94 | }; | ||
95 | }; | ||
96 | }; | ||
97 | |||
98 | apbx@80040000 { | ||
99 | lradc@80050000 { | ||
100 | status = "okay"; | ||
101 | }; | ||
102 | |||
103 | auart0: serial@8006a000 { | ||
104 | pinctrl-names = "default"; | ||
105 | pinctrl-0 = <&auart0_2pins_a>; | ||
106 | status = "okay"; | ||
107 | }; | ||
108 | |||
109 | duart: serial@80074000 { | ||
110 | pinctrl-names = "default"; | ||
111 | pinctrl-0 = <&duart_pins_a>; | ||
112 | status = "okay"; | ||
113 | }; | ||
114 | |||
115 | usbphy0: usbphy@8007c000 { | ||
116 | status = "okay"; | ||
117 | }; | ||
118 | }; | ||
119 | }; | ||
120 | |||
121 | ahb@80080000 { | ||
122 | usb0: usb@80080000 { | ||
123 | status = "okay"; | ||
124 | dr_mode = "peripheral"; | ||
125 | }; | ||
126 | |||
127 | mac0: ethernet@800f0000 { | ||
128 | phy-mode = "rmii"; | ||
129 | pinctrl-names = "default"; | ||
130 | pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>; | ||
131 | phy-supply = <®_3p3v>; | ||
132 | phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; | ||
133 | phy-reset-duration = <25>; | ||
134 | phy-handle = <ðphy>; | ||
135 | status = "okay"; | ||
136 | |||
137 | mdio { | ||
138 | #address-cells = <1>; | ||
139 | #size-cells = <0>; | ||
140 | |||
141 | ethphy: ethernet-phy@0 { | ||
142 | compatible = "ethernet-phy-ieee802.3-c22"; | ||
143 | reg = <0>; | ||
144 | pinctrl-names = "default"; | ||
145 | pinctrl-0 = <&mac0_phy_int_pin>; | ||
146 | interrupt-parent = <&gpio0>; | ||
147 | interrupts = <7 IRQ_TYPE_EDGE_FALLING>; | ||
148 | max-speed = <100>; | ||
149 | }; | ||
150 | }; | ||
151 | }; | ||
152 | }; | ||
153 | |||
154 | reg_3p3v: regulator-3p3v { | ||
155 | compatible = "regulator-fixed"; | ||
156 | regulator-name = "3P3V"; | ||
157 | regulator-min-microvolt = <3300000>; | ||
158 | regulator-max-microvolt = <3300000>; | ||
159 | regulator-always-on; | ||
160 | }; | ||
161 | |||
162 | leds { | ||
163 | compatible = "gpio-leds"; | ||
164 | pinctrl-names = "default"; | ||
165 | pinctrl-0 = <&led_pins>; | ||
166 | |||
167 | status-red { | ||
168 | label = "duckbill:red:status"; | ||
169 | gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; | ||
170 | linux,default-trigger = "default-on"; | ||
171 | }; | ||
172 | |||
173 | status-green { | ||
174 | label = "duckbill:green:status"; | ||
175 | gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>; | ||
176 | linux,default-trigger = "heartbeat"; | ||
177 | }; | ||
178 | |||
179 | rs485-red { | ||
180 | label = "duckbill:red:rs485"; | ||
181 | gpios = <&gpio3 24 GPIO_ACTIVE_LOW>; | ||
182 | }; | ||
183 | |||
184 | rs485-green { | ||
185 | label = "duckbill:green:rs485"; | ||
186 | gpios = <&gpio3 25 GPIO_ACTIVE_LOW>; | ||
187 | }; | ||
188 | }; | ||
189 | }; | ||
diff --git a/arch/arm/boot/dts/imx28-duckbill-2-enocean.dts b/arch/arm/boot/dts/imx28-duckbill-2-enocean.dts new file mode 100644 index 000000000000..4450047885eb --- /dev/null +++ b/arch/arm/boot/dts/imx28-duckbill-2-enocean.dts | |||
@@ -0,0 +1,220 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com> | ||
3 | * Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de> | ||
4 | * | ||
5 | * The code contained herein is licensed under the GNU General Public | ||
6 | * License. You may obtain a copy of the GNU General Public License | ||
7 | * Version 2 or later at the following locations: | ||
8 | * | ||
9 | * http://www.opensource.org/licenses/gpl-license.html | ||
10 | * http://www.gnu.org/copyleft/gpl.html | ||
11 | */ | ||
12 | |||
13 | /dts-v1/; | ||
14 | #include <dt-bindings/interrupt-controller/irq.h> | ||
15 | #include <dt-bindings/input/input.h> | ||
16 | #include <dt-bindings/gpio/gpio.h> | ||
17 | #include "imx28.dtsi" | ||
18 | |||
19 | / { | ||
20 | model = "I2SE Duckbill 2 EnOcean"; | ||
21 | compatible = "i2se,duckbill-2-enocean", "i2se,duckbill-2", "fsl,imx28"; | ||
22 | |||
23 | memory { | ||
24 | reg = <0x40000000 0x08000000>; | ||
25 | }; | ||
26 | |||
27 | apb@80000000 { | ||
28 | apbh@80000000 { | ||
29 | ssp0: ssp@80010000 { | ||
30 | compatible = "fsl,imx28-mmc"; | ||
31 | pinctrl-names = "default"; | ||
32 | pinctrl-0 = <&mmc0_8bit_pins_a | ||
33 | &mmc0_cd_cfg &mmc0_sck_cfg>; | ||
34 | bus-width = <8>; | ||
35 | vmmc-supply = <®_3p3v>; | ||
36 | status = "okay"; | ||
37 | non-removable; | ||
38 | }; | ||
39 | |||
40 | ssp2: ssp@80014000 { | ||
41 | compatible = "fsl,imx28-mmc"; | ||
42 | pinctrl-names = "default"; | ||
43 | pinctrl-0 = <&mmc2_4bit_pins_b | ||
44 | &mmc2_cd_cfg &mmc2_sck_cfg_b>; | ||
45 | bus-width = <4>; | ||
46 | vmmc-supply = <®_3p3v>; | ||
47 | status = "okay"; | ||
48 | }; | ||
49 | |||
50 | pinctrl@80018000 { | ||
51 | pinctrl-names = "default"; | ||
52 | pinctrl-0 = <&hog_pins_a>; | ||
53 | |||
54 | hog_pins_a: hog@0 { | ||
55 | reg = <0>; | ||
56 | fsl,pinmux-ids = < | ||
57 | MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */ | ||
58 | >; | ||
59 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
60 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
61 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
62 | }; | ||
63 | |||
64 | mac0_phy_reset_pin: mac0-phy-reset@0 { | ||
65 | reg = <0>; | ||
66 | fsl,pinmux-ids = < | ||
67 | MX28_PAD_GPMI_ALE__GPIO_0_26 /* PHY Reset */ | ||
68 | >; | ||
69 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
70 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
71 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
72 | }; | ||
73 | |||
74 | mac0_phy_int_pin: mac0-phy-int@0 { | ||
75 | reg = <0>; | ||
76 | fsl,pinmux-ids = < | ||
77 | MX28_PAD_GPMI_D07__GPIO_0_7 /* PHY Interrupt */ | ||
78 | >; | ||
79 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
80 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
81 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
82 | }; | ||
83 | |||
84 | led_pins: leds@0 { | ||
85 | reg = <0>; | ||
86 | fsl,pinmux-ids = < | ||
87 | MX28_PAD_SAIF0_MCLK__GPIO_3_20 | ||
88 | MX28_PAD_SAIF0_LRCLK__GPIO_3_21 | ||
89 | MX28_PAD_AUART0_CTS__GPIO_3_2 | ||
90 | MX28_PAD_I2C0_SCL__GPIO_3_24 | ||
91 | MX28_PAD_I2C0_SDA__GPIO_3_25 | ||
92 | >; | ||
93 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
94 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
95 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
96 | }; | ||
97 | |||
98 | enocean_button: enocean-button@0 { | ||
99 | reg = <0>; | ||
100 | fsl,pinmux-ids = < | ||
101 | MX28_PAD_AUART0_RTS__GPIO_3_3 | ||
102 | >; | ||
103 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
104 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
105 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
106 | }; | ||
107 | }; | ||
108 | }; | ||
109 | |||
110 | apbx@80040000 { | ||
111 | lradc@80050000 { | ||
112 | status = "okay"; | ||
113 | }; | ||
114 | |||
115 | auart0: serial@8006a000 { | ||
116 | pinctrl-names = "default"; | ||
117 | pinctrl-0 = <&auart0_2pins_a>; | ||
118 | status = "okay"; | ||
119 | }; | ||
120 | |||
121 | duart: serial@80074000 { | ||
122 | pinctrl-names = "default"; | ||
123 | pinctrl-0 = <&duart_pins_a>; | ||
124 | status = "okay"; | ||
125 | }; | ||
126 | |||
127 | usbphy0: usbphy@8007c000 { | ||
128 | status = "okay"; | ||
129 | }; | ||
130 | }; | ||
131 | }; | ||
132 | |||
133 | ahb@80080000 { | ||
134 | usb0: usb@80080000 { | ||
135 | status = "okay"; | ||
136 | dr_mode = "peripheral"; | ||
137 | }; | ||
138 | |||
139 | mac0: ethernet@800f0000 { | ||
140 | phy-mode = "rmii"; | ||
141 | pinctrl-names = "default"; | ||
142 | pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>; | ||
143 | phy-supply = <®_3p3v>; | ||
144 | phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; | ||
145 | phy-reset-duration = <25>; | ||
146 | phy-handle = <ðphy>; | ||
147 | status = "okay"; | ||
148 | |||
149 | mdio { | ||
150 | #address-cells = <1>; | ||
151 | #size-cells = <0>; | ||
152 | |||
153 | ethphy: ethernet-phy@0 { | ||
154 | compatible = "ethernet-phy-ieee802.3-c22"; | ||
155 | reg = <0>; | ||
156 | pinctrl-names = "default"; | ||
157 | pinctrl-0 = <&mac0_phy_int_pin>; | ||
158 | interrupt-parent = <&gpio0>; | ||
159 | interrupts = <7 IRQ_TYPE_EDGE_FALLING>; | ||
160 | max-speed = <100>; | ||
161 | }; | ||
162 | }; | ||
163 | }; | ||
164 | }; | ||
165 | |||
166 | reg_3p3v: regulator-3p3v { | ||
167 | compatible = "regulator-fixed"; | ||
168 | regulator-name = "3P3V"; | ||
169 | regulator-min-microvolt = <3300000>; | ||
170 | regulator-max-microvolt = <3300000>; | ||
171 | regulator-always-on; | ||
172 | }; | ||
173 | |||
174 | leds { | ||
175 | compatible = "gpio-leds"; | ||
176 | pinctrl-names = "default"; | ||
177 | pinctrl-0 = <&led_pins>; | ||
178 | |||
179 | status-red { | ||
180 | label = "duckbill:red:status"; | ||
181 | gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; | ||
182 | linux,default-trigger = "default-on"; | ||
183 | }; | ||
184 | |||
185 | status-green { | ||
186 | label = "duckbill:green:status"; | ||
187 | gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>; | ||
188 | linux,default-trigger = "heartbeat"; | ||
189 | }; | ||
190 | |||
191 | enocean-blue { | ||
192 | label = "duckbill:blue:enocean"; | ||
193 | gpios = <&gpio3 24 GPIO_ACTIVE_LOW>; | ||
194 | }; | ||
195 | |||
196 | enocean-red { | ||
197 | label = "duckbill:red:enocean"; | ||
198 | gpios = <&gpio3 25 GPIO_ACTIVE_LOW>; | ||
199 | }; | ||
200 | |||
201 | enocean-green { | ||
202 | label = "duckbill:green:enocean"; | ||
203 | gpios = <&gpio3 2 GPIO_ACTIVE_LOW>; | ||
204 | }; | ||
205 | }; | ||
206 | |||
207 | gpio-keys { | ||
208 | compatible = "gpio-keys"; | ||
209 | #address-cells = <1>; | ||
210 | #size-cells = <0>; | ||
211 | pinctrl-names = "default"; | ||
212 | pinctrl-0 = <&enocean_button>; | ||
213 | |||
214 | enocean { | ||
215 | label = "EnOcean"; | ||
216 | linux,code = <KEY_NEW>; | ||
217 | gpios = <&gpio3 3 GPIO_ACTIVE_HIGH>; | ||
218 | }; | ||
219 | }; | ||
220 | }; | ||
diff --git a/arch/arm/boot/dts/imx28-duckbill-2-spi.dts b/arch/arm/boot/dts/imx28-duckbill-2-spi.dts new file mode 100644 index 000000000000..927732efca98 --- /dev/null +++ b/arch/arm/boot/dts/imx28-duckbill-2-spi.dts | |||
@@ -0,0 +1,199 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com> | ||
3 | * Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de> | ||
4 | * | ||
5 | * The code contained herein is licensed under the GNU General Public | ||
6 | * License. You may obtain a copy of the GNU General Public License | ||
7 | * Version 2 or later at the following locations: | ||
8 | * | ||
9 | * http://www.opensource.org/licenses/gpl-license.html | ||
10 | * http://www.gnu.org/copyleft/gpl.html | ||
11 | */ | ||
12 | |||
13 | /dts-v1/; | ||
14 | #include <dt-bindings/interrupt-controller/irq.h> | ||
15 | #include <dt-bindings/gpio/gpio.h> | ||
16 | #include "imx28.dtsi" | ||
17 | |||
18 | / { | ||
19 | model = "I2SE Duckbill 2 SPI"; | ||
20 | compatible = "i2se,duckbill-2-spi", "i2se,duckbill-2", "fsl,imx28"; | ||
21 | |||
22 | aliases { | ||
23 | ethernet1 = &qca7000; | ||
24 | }; | ||
25 | |||
26 | memory { | ||
27 | reg = <0x40000000 0x08000000>; | ||
28 | }; | ||
29 | |||
30 | apb@80000000 { | ||
31 | apbh@80000000 { | ||
32 | ssp0: ssp@80010000 { | ||
33 | compatible = "fsl,imx28-mmc"; | ||
34 | pinctrl-names = "default"; | ||
35 | pinctrl-0 = <&mmc0_8bit_pins_a | ||
36 | &mmc0_cd_cfg &mmc0_sck_cfg>; | ||
37 | bus-width = <8>; | ||
38 | vmmc-supply = <®_3p3v>; | ||
39 | status = "okay"; | ||
40 | non-removable; | ||
41 | }; | ||
42 | |||
43 | ssp2: ssp@80014000 { | ||
44 | compatible = "fsl,imx28-spi"; | ||
45 | pinctrl-names = "default"; | ||
46 | pinctrl-0 = <&spi2_pins_a>; | ||
47 | status = "okay"; | ||
48 | |||
49 | qca7000: ethernet@0 { | ||
50 | reg = <0>; | ||
51 | compatible = "qca,qca7000"; | ||
52 | pinctrl-names = "default"; | ||
53 | pinctrl-0 = <&qca7000_pins>; | ||
54 | interrupt-parent = <&gpio3>; | ||
55 | interrupts = <3 IRQ_TYPE_EDGE_RISING>; | ||
56 | spi-cpha; | ||
57 | spi-cpol; | ||
58 | spi-max-frequency = <8000000>; | ||
59 | }; | ||
60 | }; | ||
61 | |||
62 | pinctrl@80018000 { | ||
63 | pinctrl-names = "default"; | ||
64 | pinctrl-0 = <&hog_pins_a>; | ||
65 | |||
66 | hog_pins_a: hog@0 { | ||
67 | reg = <0>; | ||
68 | fsl,pinmux-ids = < | ||
69 | MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */ | ||
70 | >; | ||
71 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
72 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
73 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
74 | }; | ||
75 | |||
76 | mac0_phy_reset_pin: mac0-phy-reset@0 { | ||
77 | reg = <0>; | ||
78 | fsl,pinmux-ids = < | ||
79 | MX28_PAD_GPMI_ALE__GPIO_0_26 /* PHY Reset */ | ||
80 | >; | ||
81 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
82 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
83 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
84 | }; | ||
85 | |||
86 | mac0_phy_int_pin: mac0-phy-int@0 { | ||
87 | reg = <0>; | ||
88 | fsl,pinmux-ids = < | ||
89 | MX28_PAD_GPMI_D07__GPIO_0_7 /* PHY Interrupt */ | ||
90 | >; | ||
91 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
92 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
93 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
94 | }; | ||
95 | |||
96 | led_pins: led@0 { | ||
97 | reg = <0>; | ||
98 | fsl,pinmux-ids = < | ||
99 | MX28_PAD_SAIF0_MCLK__GPIO_3_20 | ||
100 | MX28_PAD_SAIF0_LRCLK__GPIO_3_21 | ||
101 | >; | ||
102 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
103 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
104 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
105 | }; | ||
106 | |||
107 | qca7000_pins: qca7000@0 { | ||
108 | reg = <0>; | ||
109 | fsl,pinmux-ids = < | ||
110 | MX28_PAD_AUART0_RTS__GPIO_3_3 /* Interrupt */ | ||
111 | MX28_PAD_LCD_D13__GPIO_1_13 /* QCA7K reset */ | ||
112 | MX28_PAD_LCD_D14__GPIO_1_14 /* GPIO 0 */ | ||
113 | MX28_PAD_LCD_D15__GPIO_1_15 /* GPIO 1 */ | ||
114 | MX28_PAD_LCD_D18__GPIO_1_18 /* GPIO 2 */ | ||
115 | MX28_PAD_LCD_D21__GPIO_1_21 /* GPIO 3 */ | ||
116 | >; | ||
117 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
118 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
119 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
120 | }; | ||
121 | }; | ||
122 | }; | ||
123 | |||
124 | apbx@80040000 { | ||
125 | lradc@80050000 { | ||
126 | status = "okay"; | ||
127 | }; | ||
128 | |||
129 | duart: serial@80074000 { | ||
130 | pinctrl-names = "default"; | ||
131 | pinctrl-0 = <&duart_pins_a>; | ||
132 | status = "okay"; | ||
133 | }; | ||
134 | |||
135 | usbphy0: usbphy@8007c000 { | ||
136 | status = "okay"; | ||
137 | }; | ||
138 | }; | ||
139 | }; | ||
140 | |||
141 | ahb@80080000 { | ||
142 | usb0: usb@80080000 { | ||
143 | status = "okay"; | ||
144 | dr_mode = "peripheral"; | ||
145 | }; | ||
146 | |||
147 | mac0: ethernet@800f0000 { | ||
148 | phy-mode = "rmii"; | ||
149 | pinctrl-names = "default"; | ||
150 | pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>; | ||
151 | phy-supply = <®_3p3v>; | ||
152 | phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; | ||
153 | phy-reset-duration = <25>; | ||
154 | phy-handle = <ðphy>; | ||
155 | status = "okay"; | ||
156 | |||
157 | mdio { | ||
158 | #address-cells = <1>; | ||
159 | #size-cells = <0>; | ||
160 | |||
161 | ethphy: ethernet-phy@0 { | ||
162 | compatible = "ethernet-phy-ieee802.3-c22"; | ||
163 | reg = <0>; | ||
164 | pinctrl-names = "default"; | ||
165 | pinctrl-0 = <&mac0_phy_int_pin>; | ||
166 | interrupt-parent = <&gpio0>; | ||
167 | interrupts = <7 IRQ_TYPE_EDGE_FALLING>; | ||
168 | max-speed = <100>; | ||
169 | }; | ||
170 | }; | ||
171 | }; | ||
172 | }; | ||
173 | |||
174 | reg_3p3v: regulator-3p3v { | ||
175 | compatible = "regulator-fixed"; | ||
176 | regulator-name = "3P3V"; | ||
177 | regulator-min-microvolt = <3300000>; | ||
178 | regulator-max-microvolt = <3300000>; | ||
179 | regulator-always-on; | ||
180 | }; | ||
181 | |||
182 | leds { | ||
183 | compatible = "gpio-leds"; | ||
184 | pinctrl-names = "default"; | ||
185 | pinctrl-0 = <&led_pins>; | ||
186 | |||
187 | status-red { | ||
188 | label = "duckbill:red:status"; | ||
189 | gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; | ||
190 | linux,default-trigger = "default-on"; | ||
191 | }; | ||
192 | |||
193 | status-green { | ||
194 | label = "duckbill:green:status"; | ||
195 | gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>; | ||
196 | linux,default-trigger = "heartbeat"; | ||
197 | }; | ||
198 | }; | ||
199 | }; | ||
diff --git a/arch/arm/boot/dts/imx28-duckbill-2.dts b/arch/arm/boot/dts/imx28-duckbill-2.dts new file mode 100644 index 000000000000..7fa3d759505c --- /dev/null +++ b/arch/arm/boot/dts/imx28-duckbill-2.dts | |||
@@ -0,0 +1,183 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com> | ||
3 | * Copyright (C) 2016 Michael Heimpold <mhei@heimpold.de> | ||
4 | * | ||
5 | * The code contained herein is licensed under the GNU General Public | ||
6 | * License. You may obtain a copy of the GNU General Public License | ||
7 | * Version 2 or later at the following locations: | ||
8 | * | ||
9 | * http://www.opensource.org/licenses/gpl-license.html | ||
10 | * http://www.gnu.org/copyleft/gpl.html | ||
11 | */ | ||
12 | |||
13 | /dts-v1/; | ||
14 | #include <dt-bindings/interrupt-controller/irq.h> | ||
15 | #include <dt-bindings/gpio/gpio.h> | ||
16 | #include "imx28.dtsi" | ||
17 | |||
18 | / { | ||
19 | model = "I2SE Duckbill 2"; | ||
20 | compatible = "i2se,duckbill-2", "fsl,imx28"; | ||
21 | |||
22 | memory { | ||
23 | reg = <0x40000000 0x08000000>; | ||
24 | }; | ||
25 | |||
26 | apb@80000000 { | ||
27 | apbh@80000000 { | ||
28 | ssp0: ssp@80010000 { | ||
29 | compatible = "fsl,imx28-mmc"; | ||
30 | pinctrl-names = "default"; | ||
31 | pinctrl-0 = <&mmc0_8bit_pins_a | ||
32 | &mmc0_cd_cfg &mmc0_sck_cfg>; | ||
33 | bus-width = <8>; | ||
34 | vmmc-supply = <®_3p3v>; | ||
35 | status = "okay"; | ||
36 | non-removable; | ||
37 | }; | ||
38 | |||
39 | ssp2: ssp@80014000 { | ||
40 | compatible = "fsl,imx28-mmc"; | ||
41 | pinctrl-names = "default"; | ||
42 | pinctrl-0 = <&mmc2_4bit_pins_b | ||
43 | &mmc2_cd_cfg &mmc2_sck_cfg_b>; | ||
44 | bus-width = <4>; | ||
45 | vmmc-supply = <®_3p3v>; | ||
46 | status = "okay"; | ||
47 | }; | ||
48 | |||
49 | pinctrl@80018000 { | ||
50 | pinctrl-names = "default"; | ||
51 | pinctrl-0 = <&hog_pins_a>; | ||
52 | |||
53 | hog_pins_a: hog@0 { | ||
54 | reg = <0>; | ||
55 | fsl,pinmux-ids = < | ||
56 | MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */ | ||
57 | >; | ||
58 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
59 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
60 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
61 | }; | ||
62 | |||
63 | mac0_phy_reset_pin: mac0-phy-reset@0 { | ||
64 | reg = <0>; | ||
65 | fsl,pinmux-ids = < | ||
66 | MX28_PAD_GPMI_ALE__GPIO_0_26 /* PHY Reset */ | ||
67 | >; | ||
68 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
69 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
70 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
71 | }; | ||
72 | |||
73 | mac0_phy_int_pin: mac0-phy-int@0 { | ||
74 | reg = <0>; | ||
75 | fsl,pinmux-ids = < | ||
76 | MX28_PAD_GPMI_D07__GPIO_0_7 /* PHY Interrupt */ | ||
77 | >; | ||
78 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
79 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
80 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
81 | }; | ||
82 | |||
83 | led_pins: leds@0 { | ||
84 | reg = <0>; | ||
85 | fsl,pinmux-ids = < | ||
86 | MX28_PAD_SAIF0_MCLK__GPIO_3_20 | ||
87 | MX28_PAD_SAIF0_LRCLK__GPIO_3_21 | ||
88 | >; | ||
89 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
90 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
91 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
95 | |||
96 | apbx@80040000 { | ||
97 | lradc@80050000 { | ||
98 | status = "okay"; | ||
99 | }; | ||
100 | |||
101 | i2c0: i2c@80058000 { | ||
102 | pinctrl-names = "default"; | ||
103 | pinctrl-0 = <&i2c0_pins_a>; | ||
104 | status = "okay"; | ||
105 | }; | ||
106 | |||
107 | auart0: serial@8006a000 { | ||
108 | pinctrl-names = "default"; | ||
109 | pinctrl-0 = <&auart0_2pins_a>; | ||
110 | status = "okay"; | ||
111 | }; | ||
112 | |||
113 | duart: serial@80074000 { | ||
114 | pinctrl-names = "default"; | ||
115 | pinctrl-0 = <&duart_pins_a>; | ||
116 | status = "okay"; | ||
117 | }; | ||
118 | |||
119 | usbphy0: usbphy@8007c000 { | ||
120 | status = "okay"; | ||
121 | }; | ||
122 | }; | ||
123 | }; | ||
124 | |||
125 | ahb@80080000 { | ||
126 | usb0: usb@80080000 { | ||
127 | status = "okay"; | ||
128 | dr_mode = "peripheral"; | ||
129 | }; | ||
130 | |||
131 | mac0: ethernet@800f0000 { | ||
132 | phy-mode = "rmii"; | ||
133 | pinctrl-names = "default"; | ||
134 | pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>; | ||
135 | phy-supply = <®_3p3v>; | ||
136 | phy-reset-gpios = <&gpio0 26 GPIO_ACTIVE_LOW>; | ||
137 | phy-reset-duration = <25>; | ||
138 | phy-handle = <ðphy>; | ||
139 | status = "okay"; | ||
140 | |||
141 | mdio { | ||
142 | #address-cells = <1>; | ||
143 | #size-cells = <0>; | ||
144 | |||
145 | ethphy: ethernet-phy@0 { | ||
146 | compatible = "ethernet-phy-ieee802.3-c22"; | ||
147 | reg = <0>; | ||
148 | pinctrl-names = "default"; | ||
149 | pinctrl-0 = <&mac0_phy_int_pin>; | ||
150 | interrupt-parent = <&gpio0>; | ||
151 | interrupts = <7 IRQ_TYPE_EDGE_FALLING>; | ||
152 | max-speed = <100>; | ||
153 | }; | ||
154 | }; | ||
155 | }; | ||
156 | }; | ||
157 | |||
158 | reg_3p3v: regulator-3p3v { | ||
159 | compatible = "regulator-fixed"; | ||
160 | regulator-name = "3P3V"; | ||
161 | regulator-min-microvolt = <3300000>; | ||
162 | regulator-max-microvolt = <3300000>; | ||
163 | regulator-always-on; | ||
164 | }; | ||
165 | |||
166 | leds { | ||
167 | compatible = "gpio-leds"; | ||
168 | pinctrl-names = "default"; | ||
169 | pinctrl-0 = <&led_pins>; | ||
170 | |||
171 | status-red { | ||
172 | label = "duckbill:red:status"; | ||
173 | gpios = <&gpio3 21 GPIO_ACTIVE_HIGH>; | ||
174 | linux,default-trigger = "default-on"; | ||
175 | }; | ||
176 | |||
177 | status-green { | ||
178 | label = "duckbill:green:status"; | ||
179 | gpios = <&gpio3 20 GPIO_ACTIVE_HIGH>; | ||
180 | linux,default-trigger = "heartbeat"; | ||
181 | }; | ||
182 | }; | ||
183 | }; | ||
diff --git a/arch/arm/boot/dts/imx28-duckbill.dts b/arch/arm/boot/dts/imx28-duckbill.dts index ce1a7effba37..3e4385d4ed78 100644 --- a/arch/arm/boot/dts/imx28-duckbill.dts +++ b/arch/arm/boot/dts/imx28-duckbill.dts | |||
@@ -1,5 +1,6 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2013 Michael Heimpold <mhei@heimpold.de> | 2 | * Copyright (C) 2013-2014,2016 Michael Heimpold <mhei@heimpold.de> |
3 | * Copyright (C) 2015-2017 I2SE GmbH <info@i2se.com> | ||
3 | * | 4 | * |
4 | * The code contained herein is licensed under the GNU General Public | 5 | * The code contained herein is licensed under the GNU General Public |
5 | * License. You may obtain a copy of the GNU General Public License | 6 | * License. You may obtain a copy of the GNU General Public License |
@@ -10,6 +11,7 @@ | |||
10 | */ | 11 | */ |
11 | 12 | ||
12 | /dts-v1/; | 13 | /dts-v1/; |
14 | #include <dt-bindings/gpio/gpio.h> | ||
13 | #include "imx28.dtsi" | 15 | #include "imx28.dtsi" |
14 | 16 | ||
15 | / { | 17 | / { |
@@ -32,6 +34,13 @@ | |||
32 | status = "okay"; | 34 | status = "okay"; |
33 | }; | 35 | }; |
34 | 36 | ||
37 | ssp2: ssp@80014000 { | ||
38 | compatible = "fsl,imx28-spi"; | ||
39 | pinctrl-names = "default"; | ||
40 | pinctrl-0 = <&spi2_pins_a>; | ||
41 | status = "okay"; | ||
42 | }; | ||
43 | |||
35 | pinctrl@80018000 { | 44 | pinctrl@80018000 { |
36 | pinctrl-names = "default"; | 45 | pinctrl-names = "default"; |
37 | pinctrl-0 = <&hog_pins_a>; | 46 | pinctrl-0 = <&hog_pins_a>; |
@@ -39,14 +48,24 @@ | |||
39 | hog_pins_a: hog@0 { | 48 | hog_pins_a: hog@0 { |
40 | reg = <0>; | 49 | reg = <0>; |
41 | fsl,pinmux-ids = < | 50 | fsl,pinmux-ids = < |
42 | MX28_PAD_SSP0_DATA7__GPIO_2_7 /* PHY Reset */ | 51 | MX28_PAD_LCD_D17__GPIO_1_17 /* Revision detection */ |
52 | >; | ||
53 | fsl,drive-strength = <MXS_DRIVE_4mA>; | ||
54 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
55 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
56 | }; | ||
57 | |||
58 | mac0_phy_reset_pin: mac0-phy-reset@0 { | ||
59 | reg = <0>; | ||
60 | fsl,pinmux-ids = < | ||
61 | MX28_PAD_SSP0_DATA7__GPIO_2_7 /* PHY Reset */ | ||
43 | >; | 62 | >; |
44 | fsl,drive-strength = <MXS_DRIVE_4mA>; | 63 | fsl,drive-strength = <MXS_DRIVE_4mA>; |
45 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | 64 | fsl,voltage = <MXS_VOLTAGE_HIGH>; |
46 | fsl,pull-up = <MXS_PULL_DISABLE>; | 65 | fsl,pull-up = <MXS_PULL_DISABLE>; |
47 | }; | 66 | }; |
48 | 67 | ||
49 | led_pins_a: led_gpio@0 { | 68 | led_pins: leds@0 { |
50 | reg = <0>; | 69 | reg = <0>; |
51 | fsl,pinmux-ids = < | 70 | fsl,pinmux-ids = < |
52 | MX28_PAD_AUART1_RX__GPIO_3_4 | 71 | MX28_PAD_AUART1_RX__GPIO_3_4 |
@@ -60,6 +79,22 @@ | |||
60 | }; | 79 | }; |
61 | 80 | ||
62 | apbx@80040000 { | 81 | apbx@80040000 { |
82 | lradc@80050000 { | ||
83 | status = "okay"; | ||
84 | }; | ||
85 | |||
86 | i2c0: i2c@80058000 { | ||
87 | pinctrl-names = "default"; | ||
88 | pinctrl-0 = <&i2c0_pins_a>; | ||
89 | status = "okay"; | ||
90 | }; | ||
91 | |||
92 | auart0: serial@8006a000 { | ||
93 | pinctrl-names = "default"; | ||
94 | pinctrl-0 = <&auart0_2pins_a>; | ||
95 | status = "okay"; | ||
96 | }; | ||
97 | |||
63 | duart: serial@80074000 { | 98 | duart: serial@80074000 { |
64 | pinctrl-names = "default"; | 99 | pinctrl-names = "default"; |
65 | pinctrl-0 = <&duart_pins_a>; | 100 | pinctrl-0 = <&duart_pins_a>; |
@@ -75,47 +110,43 @@ | |||
75 | ahb@80080000 { | 110 | ahb@80080000 { |
76 | usb0: usb@80080000 { | 111 | usb0: usb@80080000 { |
77 | status = "okay"; | 112 | status = "okay"; |
113 | dr_mode = "peripheral"; | ||
78 | }; | 114 | }; |
79 | 115 | ||
80 | mac0: ethernet@800f0000 { | 116 | mac0: ethernet@800f0000 { |
81 | phy-mode = "rmii"; | 117 | phy-mode = "rmii"; |
82 | pinctrl-names = "default"; | 118 | pinctrl-names = "default"; |
83 | pinctrl-0 = <&mac0_pins_a>; | 119 | pinctrl-0 = <&mac0_pins_a>, <&mac0_phy_reset_pin>; |
84 | phy-supply = <®_3p3v>; | 120 | phy-supply = <®_3p3v>; |
85 | phy-reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>; | 121 | phy-reset-gpios = <&gpio2 7 GPIO_ACTIVE_LOW>; |
86 | phy-reset-duration = <100>; | 122 | phy-reset-duration = <25>; |
87 | status = "okay"; | 123 | status = "okay"; |
88 | }; | 124 | }; |
89 | }; | 125 | }; |
90 | 126 | ||
91 | regulators { | 127 | reg_3p3v: regulator-3p3v { |
92 | compatible = "simple-bus"; | 128 | compatible = "regulator-fixed"; |
93 | #address-cells = <1>; | 129 | regulator-name = "3P3V"; |
94 | #size-cells = <0>; | 130 | regulator-min-microvolt = <3300000>; |
95 | 131 | regulator-max-microvolt = <3300000>; | |
96 | reg_3p3v: regulator@0 { | 132 | regulator-always-on; |
97 | compatible = "regulator-fixed"; | ||
98 | reg = <0>; | ||
99 | regulator-name = "3P3V"; | ||
100 | regulator-min-microvolt = <3300000>; | ||
101 | regulator-max-microvolt = <3300000>; | ||
102 | regulator-always-on; | ||
103 | }; | ||
104 | }; | 133 | }; |
105 | 134 | ||
106 | leds { | 135 | leds { |
107 | compatible = "gpio-leds"; | 136 | compatible = "gpio-leds"; |
108 | pinctrl-names = "default"; | 137 | pinctrl-names = "default"; |
109 | pinctrl-0 = <&led_pins_a>; | 138 | pinctrl-0 = <&led_pins>; |
110 | 139 | ||
111 | status { | 140 | status-red { |
112 | label = "duckbill:green:status"; | ||
113 | gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>; | ||
114 | }; | ||
115 | |||
116 | failure { | ||
117 | label = "duckbill:red:status"; | 141 | label = "duckbill:red:status"; |
118 | gpios = <&gpio3 4 GPIO_ACTIVE_HIGH>; | 142 | gpios = <&gpio3 4 GPIO_ACTIVE_HIGH>; |
143 | linux,default-trigger = "default-on"; | ||
144 | }; | ||
145 | |||
146 | status-green { | ||
147 | label = "duckbill:green:status"; | ||
148 | gpios = <&gpio3 5 GPIO_ACTIVE_HIGH>; | ||
149 | linux,default-trigger = "heartbeat"; | ||
119 | }; | 150 | }; |
120 | }; | 151 | }; |
121 | }; | 152 | }; |
diff --git a/arch/arm/boot/dts/imx28-m28cu3.dts b/arch/arm/boot/dts/imx28-m28cu3.dts index 2df63bee6f4e..bb5329479c62 100644 --- a/arch/arm/boot/dts/imx28-m28cu3.dts +++ b/arch/arm/boot/dts/imx28-m28cu3.dts | |||
@@ -57,7 +57,7 @@ | |||
57 | pinctrl-names = "default"; | 57 | pinctrl-names = "default"; |
58 | pinctrl-0 = <&mmc2_4bit_pins_a | 58 | pinctrl-0 = <&mmc2_4bit_pins_a |
59 | &mmc2_cd_cfg | 59 | &mmc2_cd_cfg |
60 | &mmc2_sck_cfg>; | 60 | &mmc2_sck_cfg_a>; |
61 | bus-width = <4>; | 61 | bus-width = <4>; |
62 | vmmc-supply = <®_vddio_sd1>; | 62 | vmmc-supply = <®_vddio_sd1>; |
63 | status = "okay"; | 63 | status = "okay"; |
diff --git a/arch/arm/boot/dts/imx28.dtsi b/arch/arm/boot/dts/imx28.dtsi index 148fcf4d3b98..2f4ebe0318d3 100644 --- a/arch/arm/boot/dts/imx28.dtsi +++ b/arch/arm/boot/dts/imx28.dtsi | |||
@@ -590,6 +590,22 @@ | |||
590 | fsl,pull-up = <MXS_PULL_ENABLE>; | 590 | fsl,pull-up = <MXS_PULL_ENABLE>; |
591 | }; | 591 | }; |
592 | 592 | ||
593 | mmc2_4bit_pins_b: mmc2-4bit@1 { | ||
594 | reg = <1>; | ||
595 | fsl,pinmux-ids = < | ||
596 | MX28_PAD_SSP2_SCK__SSP2_SCK | ||
597 | MX28_PAD_SSP2_MOSI__SSP2_CMD | ||
598 | MX28_PAD_SSP2_MISO__SSP2_D0 | ||
599 | MX28_PAD_SSP2_SS0__SSP2_D3 | ||
600 | MX28_PAD_SSP2_SS1__SSP2_D1 | ||
601 | MX28_PAD_SSP2_SS2__SSP2_D2 | ||
602 | MX28_PAD_AUART1_RX__SSP2_CARD_DETECT | ||
603 | >; | ||
604 | fsl,drive-strength = <MXS_DRIVE_8mA>; | ||
605 | fsl,voltage = <MXS_VOLTAGE_HIGH>; | ||
606 | fsl,pull-up = <MXS_PULL_ENABLE>; | ||
607 | }; | ||
608 | |||
593 | mmc2_cd_cfg: mmc2-cd-cfg { | 609 | mmc2_cd_cfg: mmc2-cd-cfg { |
594 | fsl,pinmux-ids = < | 610 | fsl,pinmux-ids = < |
595 | MX28_PAD_AUART1_RX__SSP2_CARD_DETECT | 611 | MX28_PAD_AUART1_RX__SSP2_CARD_DETECT |
@@ -597,7 +613,8 @@ | |||
597 | fsl,pull-up = <MXS_PULL_DISABLE>; | 613 | fsl,pull-up = <MXS_PULL_DISABLE>; |
598 | }; | 614 | }; |
599 | 615 | ||
600 | mmc2_sck_cfg: mmc2-sck-cfg { | 616 | mmc2_sck_cfg_a: mmc2-sck-cfg@0 { |
617 | reg = <0>; | ||
601 | fsl,pinmux-ids = < | 618 | fsl,pinmux-ids = < |
602 | MX28_PAD_SSP0_DATA7__SSP2_SCK | 619 | MX28_PAD_SSP0_DATA7__SSP2_SCK |
603 | >; | 620 | >; |
@@ -605,6 +622,15 @@ | |||
605 | fsl,pull-up = <MXS_PULL_DISABLE>; | 622 | fsl,pull-up = <MXS_PULL_DISABLE>; |
606 | }; | 623 | }; |
607 | 624 | ||
625 | mmc2_sck_cfg_b: mmc2-sck-cfg@1 { | ||
626 | reg = <1>; | ||
627 | fsl,pinmux-ids = < | ||
628 | MX28_PAD_SSP2_SCK__SSP2_SCK | ||
629 | >; | ||
630 | fsl,drive-strength = <MXS_DRIVE_12mA>; | ||
631 | fsl,pull-up = <MXS_PULL_DISABLE>; | ||
632 | }; | ||
633 | |||
608 | i2c0_pins_a: i2c0@0 { | 634 | i2c0_pins_a: i2c0@0 { |
609 | reg = <0>; | 635 | reg = <0>; |
610 | fsl,pinmux-ids = < | 636 | fsl,pinmux-ids = < |
diff --git a/arch/arm/boot/dts/imx50.dtsi b/arch/arm/boot/dts/imx50.dtsi index ceae909e2201..2a98afcd8a4e 100644 --- a/arch/arm/boot/dts/imx50.dtsi +++ b/arch/arm/boot/dts/imx50.dtsi | |||
@@ -109,7 +109,7 @@ | |||
109 | ranges; | 109 | ranges; |
110 | 110 | ||
111 | esdhc1: esdhc@50004000 { | 111 | esdhc1: esdhc@50004000 { |
112 | compatible = "fsl,imx50-esdhc"; | 112 | compatible = "fsl,imx50-esdhc", "fsl,imx53-esdhc"; |
113 | reg = <0x50004000 0x4000>; | 113 | reg = <0x50004000 0x4000>; |
114 | interrupts = <1>; | 114 | interrupts = <1>; |
115 | clocks = <&clks IMX5_CLK_ESDHC1_IPG_GATE>, | 115 | clocks = <&clks IMX5_CLK_ESDHC1_IPG_GATE>, |
@@ -121,7 +121,7 @@ | |||
121 | }; | 121 | }; |
122 | 122 | ||
123 | esdhc2: esdhc@50008000 { | 123 | esdhc2: esdhc@50008000 { |
124 | compatible = "fsl,imx50-esdhc"; | 124 | compatible = "fsl,imx50-esdhc", "fsl,imx53-esdhc"; |
125 | reg = <0x50008000 0x4000>; | 125 | reg = <0x50008000 0x4000>; |
126 | interrupts = <2>; | 126 | interrupts = <2>; |
127 | clocks = <&clks IMX5_CLK_ESDHC2_IPG_GATE>, | 127 | clocks = <&clks IMX5_CLK_ESDHC2_IPG_GATE>, |
@@ -170,7 +170,7 @@ | |||
170 | }; | 170 | }; |
171 | 171 | ||
172 | esdhc3: esdhc@50020000 { | 172 | esdhc3: esdhc@50020000 { |
173 | compatible = "fsl,imx50-esdhc"; | 173 | compatible = "fsl,imx50-esdhc", "fsl,imx53-esdhc"; |
174 | reg = <0x50020000 0x4000>; | 174 | reg = <0x50020000 0x4000>; |
175 | interrupts = <3>; | 175 | interrupts = <3>; |
176 | clocks = <&clks IMX5_CLK_ESDHC3_IPG_GATE>, | 176 | clocks = <&clks IMX5_CLK_ESDHC3_IPG_GATE>, |
@@ -182,7 +182,7 @@ | |||
182 | }; | 182 | }; |
183 | 183 | ||
184 | esdhc4: esdhc@50024000 { | 184 | esdhc4: esdhc@50024000 { |
185 | compatible = "fsl,imx50-esdhc"; | 185 | compatible = "fsl,imx50-esdhc", "fsl,imx53-esdhc"; |
186 | reg = <0x50024000 0x4000>; | 186 | reg = <0x50024000 0x4000>; |
187 | interrupts = <4>; | 187 | interrupts = <4>; |
188 | clocks = <&clks IMX5_CLK_ESDHC4_IPG_GATE>, | 188 | clocks = <&clks IMX5_CLK_ESDHC4_IPG_GATE>, |
diff --git a/arch/arm/boot/dts/imx53-qsb.dts b/arch/arm/boot/dts/imx53-qsb.dts index f4c158cce908..d3d662e37677 100644 --- a/arch/arm/boot/dts/imx53-qsb.dts +++ b/arch/arm/boot/dts/imx53-qsb.dts | |||
@@ -88,8 +88,8 @@ | |||
88 | }; | 88 | }; |
89 | 89 | ||
90 | ldo7_reg: ldo7 { | 90 | ldo7_reg: ldo7 { |
91 | regulator-min-microvolt = <1200000>; | 91 | regulator-min-microvolt = <2750000>; |
92 | regulator-max-microvolt = <3600000>; | 92 | regulator-max-microvolt = <2750000>; |
93 | }; | 93 | }; |
94 | 94 | ||
95 | ldo8_reg: ldo8 { | 95 | ldo8_reg: ldo8 { |
diff --git a/arch/arm/boot/dts/imx53-qsrb.dts b/arch/arm/boot/dts/imx53-qsrb.dts index 479ca4c9e384..de2215832372 100644 --- a/arch/arm/boot/dts/imx53-qsrb.dts +++ b/arch/arm/boot/dts/imx53-qsrb.dts | |||
@@ -128,8 +128,8 @@ | |||
128 | 128 | ||
129 | vdac_reg: vdac { | 129 | vdac_reg: vdac { |
130 | regulator-name = "VDAC"; | 130 | regulator-name = "VDAC"; |
131 | regulator-min-microvolt = <2500000>; | 131 | regulator-min-microvolt = <2750000>; |
132 | regulator-max-microvolt = <2775000>; | 132 | regulator-max-microvolt = <2750000>; |
133 | }; | 133 | }; |
134 | 134 | ||
135 | vgen1_reg: vgen1 { | 135 | vgen1_reg: vgen1 { |
diff --git a/arch/arm/boot/dts/imx6dl-gw5903.dts b/arch/arm/boot/dts/imx6dl-gw5903.dts new file mode 100644 index 000000000000..103261ea9334 --- /dev/null +++ b/arch/arm/boot/dts/imx6dl-gw5903.dts | |||
@@ -0,0 +1,55 @@ | |||
1 | /* | ||
2 | * Copyright 2017 Gateworks Corporation | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of | ||
12 | * the License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public | ||
20 | * License along with this file; if not, write to the Free | ||
21 | * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, | ||
22 | * MA 02110-1301 USA | ||
23 | * | ||
24 | * Or, alternatively, | ||
25 | * | ||
26 | * b) Permission is hereby granted, free of charge, to any person | ||
27 | * obtaining a copy of this software and associated documentation | ||
28 | * files (the "Software"), to deal in the Software without | ||
29 | * restriction, including without limitation the rights to use, | ||
30 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
31 | * sell copies of the Software, and to permit persons to whom the | ||
32 | * Software is furnished to do so, subject to the following | ||
33 | * conditions: | ||
34 | * | ||
35 | * The above copyright notice and this permission notice shall be | ||
36 | * included in all copies or substantial portions of the Software. | ||
37 | * | ||
38 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
39 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
40 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
41 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
42 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
43 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
44 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
45 | * OTHER DEALINGS IN THE SOFTWARE. | ||
46 | */ | ||
47 | |||
48 | /dts-v1/; | ||
49 | #include "imx6dl.dtsi" | ||
50 | #include "imx6qdl-gw5903.dtsi" | ||
51 | |||
52 | / { | ||
53 | model = "Gateworks Ventana i.MX6 Duallite/Solo GW5903"; | ||
54 | compatible = "gw,imx6dl-gw5903", "gw,ventana", "fsl,imx6dl"; | ||
55 | }; | ||
diff --git a/arch/arm/boot/dts/imx6dl-gw5904.dts b/arch/arm/boot/dts/imx6dl-gw5904.dts new file mode 100644 index 000000000000..9c6d3cd3d6a7 --- /dev/null +++ b/arch/arm/boot/dts/imx6dl-gw5904.dts | |||
@@ -0,0 +1,55 @@ | |||
1 | /* | ||
2 | * Copyright 2017 Gateworks Corporation | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of | ||
12 | * the License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public | ||
20 | * License along with this file; if not, write to the Free | ||
21 | * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, | ||
22 | * MA 02110-1301 USA | ||
23 | * | ||
24 | * Or, alternatively, | ||
25 | * | ||
26 | * b) Permission is hereby granted, free of charge, to any person | ||
27 | * obtaining a copy of this software and associated documentation | ||
28 | * files (the "Software"), to deal in the Software without | ||
29 | * restriction, including without limitation the rights to use, | ||
30 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
31 | * sell copies of the Software, and to permit persons to whom the | ||
32 | * Software is furnished to do so, subject to the following | ||
33 | * conditions: | ||
34 | * | ||
35 | * The above copyright notice and this permission notice shall be | ||
36 | * included in all copies or substantial portions of the Software. | ||
37 | * | ||
38 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
39 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
40 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
41 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
42 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
43 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
44 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
45 | * OTHER DEALINGS IN THE SOFTWARE. | ||
46 | */ | ||
47 | |||
48 | /dts-v1/; | ||
49 | #include "imx6dl.dtsi" | ||
50 | #include "imx6qdl-gw5904.dtsi" | ||
51 | |||
52 | / { | ||
53 | model = "Gateworks Ventana i.MX6 DualLite/Solo GW5904"; | ||
54 | compatible = "gw,imx6dl-gw5904", "gw,ventana", "fsl,imx6dl"; | ||
55 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-b450v3.dts b/arch/arm/boot/dts/imx6q-b450v3.dts index 116bebb5e435..404a93d9596b 100644 --- a/arch/arm/boot/dts/imx6q-b450v3.dts +++ b/arch/arm/boot/dts/imx6q-b450v3.dts | |||
@@ -104,4 +104,11 @@ | |||
104 | output-low; | 104 | output-low; |
105 | line-name = "PCA9539-P05"; | 105 | line-name = "PCA9539-P05"; |
106 | }; | 106 | }; |
107 | |||
108 | P07 { | ||
109 | gpio-hog; | ||
110 | gpios = <7 0>; | ||
111 | output-low; | ||
112 | line-name = "PCA9539-P07"; | ||
113 | }; | ||
107 | }; | 114 | }; |
diff --git a/arch/arm/boot/dts/imx6q-b650v3.dts b/arch/arm/boot/dts/imx6q-b650v3.dts index 33f5c436c09f..7f9f176901d4 100644 --- a/arch/arm/boot/dts/imx6q-b650v3.dts +++ b/arch/arm/boot/dts/imx6q-b650v3.dts | |||
@@ -97,6 +97,13 @@ | |||
97 | output-low; | 97 | output-low; |
98 | line-name = "PCA9539-P05"; | 98 | line-name = "PCA9539-P05"; |
99 | }; | 99 | }; |
100 | |||
101 | P07 { | ||
102 | gpio-hog; | ||
103 | gpios = <7 0>; | ||
104 | output-low; | ||
105 | line-name = "PCA9539-P07"; | ||
106 | }; | ||
100 | }; | 107 | }; |
101 | 108 | ||
102 | &usbphy1 { | 109 | &usbphy1 { |
diff --git a/arch/arm/boot/dts/imx6q-b850v3.dts b/arch/arm/boot/dts/imx6q-b850v3.dts index d78514c92349..2c1e98e0cf7b 100644 --- a/arch/arm/boot/dts/imx6q-b850v3.dts +++ b/arch/arm/boot/dts/imx6q-b850v3.dts | |||
@@ -72,6 +72,14 @@ | |||
72 | fsl,data-mapping = "spwg"; | 72 | fsl,data-mapping = "spwg"; |
73 | fsl,data-width = <24>; | 73 | fsl,data-width = <24>; |
74 | status = "okay"; | 74 | status = "okay"; |
75 | |||
76 | port@4 { | ||
77 | reg = <4>; | ||
78 | |||
79 | lvds0_out: endpoint { | ||
80 | remote-endpoint = <&stdp4028_in>; | ||
81 | }; | ||
82 | }; | ||
75 | }; | 83 | }; |
76 | }; | 84 | }; |
77 | 85 | ||
@@ -142,3 +150,65 @@ | |||
142 | reg = <0x4a>; | 150 | reg = <0x4a>; |
143 | }; | 151 | }; |
144 | }; | 152 | }; |
153 | |||
154 | &mux2_i2c2 { | ||
155 | clock-frequency = <100000>; | ||
156 | |||
157 | stdp2690@72 { | ||
158 | compatible = "megachips,stdp2690-ge-b850v3-fw"; | ||
159 | #address-cells = <1>; | ||
160 | #size-cells = <0>; | ||
161 | reg = <0x72>; | ||
162 | |||
163 | ports { | ||
164 | #address-cells = <1>; | ||
165 | #size-cells = <0>; | ||
166 | |||
167 | port@0 { | ||
168 | reg = <0>; | ||
169 | |||
170 | stdp2690_in: endpoint { | ||
171 | remote-endpoint = <&stdp4028_out>; | ||
172 | }; | ||
173 | }; | ||
174 | |||
175 | port@1 { | ||
176 | reg = <1>; | ||
177 | |||
178 | stdp2690_out: endpoint { | ||
179 | /* Connector for external display */ | ||
180 | }; | ||
181 | }; | ||
182 | }; | ||
183 | }; | ||
184 | |||
185 | stdp4028@73 { | ||
186 | compatible = "megachips,stdp4028-ge-b850v3-fw"; | ||
187 | #address-cells = <1>; | ||
188 | #size-cells = <0>; | ||
189 | reg = <0x73>; | ||
190 | interrupt-parent = <&gpio2>; | ||
191 | interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; | ||
192 | |||
193 | ports { | ||
194 | #address-cells = <1>; | ||
195 | #size-cells = <0>; | ||
196 | |||
197 | port@0 { | ||
198 | reg = <0>; | ||
199 | |||
200 | stdp4028_in: endpoint { | ||
201 | remote-endpoint = <&lvds0_out>; | ||
202 | }; | ||
203 | }; | ||
204 | |||
205 | port@1 { | ||
206 | reg = <1>; | ||
207 | |||
208 | stdp4028_out: endpoint { | ||
209 | remote-endpoint = <&stdp2690_in>; | ||
210 | }; | ||
211 | }; | ||
212 | }; | ||
213 | }; | ||
214 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-bx50v3.dtsi b/arch/arm/boot/dts/imx6q-bx50v3.dtsi index 36d6bb39593a..c90b26f00e24 100644 --- a/arch/arm/boot/dts/imx6q-bx50v3.dtsi +++ b/arch/arm/boot/dts/imx6q-bx50v3.dtsi | |||
@@ -102,7 +102,7 @@ | |||
102 | 102 | ||
103 | m25_eeprom: m25p80@0 { | 103 | m25_eeprom: m25p80@0 { |
104 | compatible = "atmel,at25"; | 104 | compatible = "atmel,at25"; |
105 | spi-max-frequency = <20000000>; | 105 | spi-max-frequency = <10000000>; |
106 | size = <0x8000>; | 106 | size = <0x8000>; |
107 | pagesize = <64>; | 107 | pagesize = <64>; |
108 | reg = <0>; | 108 | reg = <0>; |
@@ -183,20 +183,6 @@ | |||
183 | interrupt-parent = <&gpio2>; | 183 | interrupt-parent = <&gpio2>; |
184 | interrupts = <3 IRQ_TYPE_LEVEL_LOW>; | 184 | interrupts = <3 IRQ_TYPE_LEVEL_LOW>; |
185 | 185 | ||
186 | P06 { | ||
187 | gpio-hog; | ||
188 | gpios = <6 0>; | ||
189 | output-low; | ||
190 | line-name = "PCA9539-P06"; | ||
191 | }; | ||
192 | |||
193 | P07 { | ||
194 | gpio-hog; | ||
195 | gpios = <7 0>; | ||
196 | output-low; | ||
197 | line-name = "PCA9539-P07"; | ||
198 | }; | ||
199 | |||
200 | P10 { | 186 | P10 { |
201 | gpio-hog; | 187 | gpio-hog; |
202 | gpios = <8 0>; | 188 | gpios = <8 0>; |
diff --git a/arch/arm/boot/dts/imx6q-cm-fx6.dts b/arch/arm/boot/dts/imx6q-cm-fx6.dts index d8a5789a4bc8..66cac5328b86 100644 --- a/arch/arm/boot/dts/imx6q-cm-fx6.dts +++ b/arch/arm/boot/dts/imx6q-cm-fx6.dts | |||
@@ -43,6 +43,7 @@ | |||
43 | 43 | ||
44 | /dts-v1/; | 44 | /dts-v1/; |
45 | #include <dt-bindings/gpio/gpio.h> | 45 | #include <dt-bindings/gpio/gpio.h> |
46 | #include <dt-bindings/sound/fsl-imx-audmux.h> | ||
46 | #include "imx6q.dtsi" | 47 | #include "imx6q.dtsi" |
47 | 48 | ||
48 | / { | 49 | / { |
@@ -90,6 +91,34 @@ | |||
90 | enable-active-high; | 91 | enable-active-high; |
91 | }; | 92 | }; |
92 | 93 | ||
94 | sound-analog { | ||
95 | compatible = "simple-audio-card"; | ||
96 | simple-audio-card,name = "On-board analog audio"; | ||
97 | simple-audio-card,widgets = | ||
98 | "Headphone", "Headphone Jack", | ||
99 | "Line", "Line Out", | ||
100 | "Microphone", "Mic Jack", | ||
101 | "Line", "Line In"; | ||
102 | simple-audio-card,routing = | ||
103 | "Headphone Jack", "RHPOUT", | ||
104 | "Headphone Jack", "LHPOUT", | ||
105 | "MICIN", "Mic Bias", | ||
106 | "Mic Bias", "Mic Jack"; | ||
107 | simple-audio-card,format = "i2s"; | ||
108 | simple-audio-card,bitclock-master = <&sound_master>; | ||
109 | simple-audio-card,frame-master = <&sound_master>; | ||
110 | simple-audio-card,bitclock-inversion; | ||
111 | |||
112 | sound_master: simple-audio-card,cpu { | ||
113 | sound-dai = <&ssi2>; | ||
114 | system-clock-frequency = <2822400>; | ||
115 | }; | ||
116 | |||
117 | simple-audio-card,codec { | ||
118 | sound-dai = <&wm8731>; | ||
119 | }; | ||
120 | }; | ||
121 | |||
93 | sound-spdif { | 122 | sound-spdif { |
94 | compatible = "fsl,imx-audio-spdif"; | 123 | compatible = "fsl,imx-audio-spdif"; |
95 | model = "imx-spdif"; | 124 | model = "imx-spdif"; |
@@ -99,6 +128,36 @@ | |||
99 | }; | 128 | }; |
100 | }; | 129 | }; |
101 | 130 | ||
131 | &audmux { | ||
132 | pinctrl-names = "default"; | ||
133 | pinctrl-0 = <&pinctrl_audmux>; | ||
134 | status = "okay"; | ||
135 | |||
136 | ssi2 { | ||
137 | fsl,audmux-port = <1>; | ||
138 | fsl,port-config = < | ||
139 | (IMX_AUDMUX_V2_PTCR_RCLKDIR | | ||
140 | IMX_AUDMUX_V2_PTCR_RCSEL(3 | 0x8) | | ||
141 | IMX_AUDMUX_V2_PTCR_TCLKDIR | | ||
142 | IMX_AUDMUX_V2_PTCR_TCSEL(3)) | ||
143 | IMX_AUDMUX_V2_PDCR_RXDSEL(3) | ||
144 | >; | ||
145 | }; | ||
146 | |||
147 | audmux4 { | ||
148 | fsl,audmux-port = <3>; | ||
149 | fsl,port-config = < | ||
150 | (IMX_AUDMUX_V2_PTCR_TFSDIR | | ||
151 | IMX_AUDMUX_V2_PTCR_TFSEL(1) | | ||
152 | IMX_AUDMUX_V2_PTCR_RCLKDIR | | ||
153 | IMX_AUDMUX_V2_PTCR_RCSEL(1 | 0x8) | | ||
154 | IMX_AUDMUX_V2_PTCR_TCLKDIR | | ||
155 | IMX_AUDMUX_V2_PTCR_TCSEL(1)) | ||
156 | IMX_AUDMUX_V2_PDCR_RXDSEL(1) | ||
157 | >; | ||
158 | }; | ||
159 | }; | ||
160 | |||
102 | &cpu0 { | 161 | &cpu0 { |
103 | /* | 162 | /* |
104 | * Although the imx6q fuse indicates that 1.2GHz operation is possible, | 163 | * Although the imx6q fuse indicates that 1.2GHz operation is possible, |
@@ -160,9 +219,25 @@ | |||
160 | reg = <0x50>; | 219 | reg = <0x50>; |
161 | pagesize = <16>; | 220 | pagesize = <16>; |
162 | }; | 221 | }; |
222 | |||
223 | wm8731: codec@1a { | ||
224 | #sound-dai-cells = <0>; | ||
225 | compatible = "wlf,wm8731"; | ||
226 | reg = <0x1a>; | ||
227 | }; | ||
163 | }; | 228 | }; |
164 | 229 | ||
165 | &iomuxc { | 230 | &iomuxc { |
231 | pinctrl_audmux: audmuxgrp { | ||
232 | fsl,pins = < | ||
233 | MX6QDL_PAD_SD2_CMD__AUD4_RXC 0x17059 | ||
234 | MX6QDL_PAD_SD2_DAT0__AUD4_RXD 0x17059 | ||
235 | MX6QDL_PAD_SD2_DAT3__AUD4_TXC 0x17059 | ||
236 | MX6QDL_PAD_SD2_DAT2__AUD4_TXD 0x17059 | ||
237 | MX6QDL_PAD_SD2_DAT1__AUD4_TXFS 0x17059 | ||
238 | >; | ||
239 | }; | ||
240 | |||
166 | pinctrl_ecspi1: ecspi1grp { | 241 | pinctrl_ecspi1: ecspi1grp { |
167 | fsl,pins = < | 242 | fsl,pins = < |
168 | MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 | 243 | MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 |
@@ -279,6 +354,14 @@ | |||
279 | status = "okay"; | 354 | status = "okay"; |
280 | }; | 355 | }; |
281 | 356 | ||
357 | &ssi2 { | ||
358 | assigned-clocks = <&clks IMX6QDL_CLK_SSI2_SEL>, | ||
359 | <&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>; | ||
360 | assigned-clock-parents = <&clks IMX6QDL_CLK_PLL4_AUDIO_DIV>; | ||
361 | assigned-clock-rates = <0>, <786432000>; | ||
362 | status = "okay"; | ||
363 | }; | ||
364 | |||
282 | &uart4 { | 365 | &uart4 { |
283 | pinctrl-names = "default"; | 366 | pinctrl-names = "default"; |
284 | pinctrl-0 = <&pinctrl_uart4>; | 367 | pinctrl-0 = <&pinctrl_uart4>; |
diff --git a/arch/arm/boot/dts/imx6q-gw5903.dts b/arch/arm/boot/dts/imx6q-gw5903.dts new file mode 100644 index 000000000000..a182e4cb0e6e --- /dev/null +++ b/arch/arm/boot/dts/imx6q-gw5903.dts | |||
@@ -0,0 +1,55 @@ | |||
1 | /* | ||
2 | * Copyright 2017 Gateworks Corporation | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of | ||
12 | * the License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public | ||
20 | * License along with this file; if not, write to the Free | ||
21 | * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, | ||
22 | * MA 02110-1301 USA | ||
23 | * | ||
24 | * Or, alternatively, | ||
25 | * | ||
26 | * b) Permission is hereby granted, free of charge, to any person | ||
27 | * obtaining a copy of this software and associated documentation | ||
28 | * files (the "Software"), to deal in the Software without | ||
29 | * restriction, including without limitation the rights to use, | ||
30 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
31 | * sell copies of the Software, and to permit persons to whom the | ||
32 | * Software is furnished to do so, subject to the following | ||
33 | * conditions: | ||
34 | * | ||
35 | * The above copyright notice and this permission notice shall be | ||
36 | * included in all copies or substantial portions of the Software. | ||
37 | * | ||
38 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
39 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
40 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
41 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
42 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
43 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
44 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
45 | * OTHER DEALINGS IN THE SOFTWARE. | ||
46 | */ | ||
47 | |||
48 | /dts-v1/; | ||
49 | #include "imx6q.dtsi" | ||
50 | #include "imx6qdl-gw5903.dtsi" | ||
51 | |||
52 | / { | ||
53 | model = "Gateworks Ventana i.MX6 Dual/Quad GW5903"; | ||
54 | compatible = "gw,imx6q-gw5903", "gw,ventana", "fsl,imx6q"; | ||
55 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-gw5904.dts b/arch/arm/boot/dts/imx6q-gw5904.dts new file mode 100644 index 000000000000..ca1e2ae3341e --- /dev/null +++ b/arch/arm/boot/dts/imx6q-gw5904.dts | |||
@@ -0,0 +1,59 @@ | |||
1 | /* | ||
2 | * Copyright 2017 Gateworks Corporation | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of | ||
12 | * the License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public | ||
20 | * License along with this file; if not, write to the Free | ||
21 | * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, | ||
22 | * MA 02110-1301 USA | ||
23 | * | ||
24 | * Or, alternatively, | ||
25 | * | ||
26 | * b) Permission is hereby granted, free of charge, to any person | ||
27 | * obtaining a copy of this software and associated documentation | ||
28 | * files (the "Software"), to deal in the Software without | ||
29 | * restriction, including without limitation the rights to use, | ||
30 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
31 | * sell copies of the Software, and to permit persons to whom the | ||
32 | * Software is furnished to do so, subject to the following | ||
33 | * conditions: | ||
34 | * | ||
35 | * The above copyright notice and this permission notice shall be | ||
36 | * included in all copies or substantial portions of the Software. | ||
37 | * | ||
38 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
39 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
40 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
41 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
42 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
43 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
44 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
45 | * OTHER DEALINGS IN THE SOFTWARE. | ||
46 | */ | ||
47 | |||
48 | /dts-v1/; | ||
49 | #include "imx6q.dtsi" | ||
50 | #include "imx6qdl-gw5904.dtsi" | ||
51 | |||
52 | / { | ||
53 | model = "Gateworks Ventana i.MX6 Dual/Quad GW5904"; | ||
54 | compatible = "gw,imx6q-gw5904", "gw,ventana", "fsl,imx6q"; | ||
55 | }; | ||
56 | |||
57 | &sata { | ||
58 | status = "okay"; | ||
59 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-icore-ofcap10.dts b/arch/arm/boot/dts/imx6q-icore-ofcap10.dts new file mode 100644 index 000000000000..49b60ca20e6d --- /dev/null +++ b/arch/arm/boot/dts/imx6q-icore-ofcap10.dts | |||
@@ -0,0 +1,76 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016 Amarula Solutions B.V. | ||
3 | * Copyright (C) 2016 Engicam S.r.l. | ||
4 | * | ||
5 | * This file is dual-licensed: you can use it either under the terms | ||
6 | * of the GPL or the X11 license, at your option. Note that this dual | ||
7 | * licensing only applies to this file, and not this project as a | ||
8 | * whole. | ||
9 | * | ||
10 | * a) This file is free software; you can redistribute it and/or | ||
11 | * modify it under the terms of the GNU General Public License | ||
12 | * version 2 as published by the Free Software Foundation. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | /dts-v1/; | ||
44 | |||
45 | #include "imx6q.dtsi" | ||
46 | #include "imx6qdl-icore.dtsi" | ||
47 | |||
48 | / { | ||
49 | model = "Engicam i.CoreM6 Quad/Dual OpenFrame Capacitive touch 10.1 Kit"; | ||
50 | compatible = "engicam,imx6-icore", "fsl,imx6q"; | ||
51 | }; | ||
52 | |||
53 | &ldb { | ||
54 | status = "okay"; | ||
55 | |||
56 | lvds-channel@0 { | ||
57 | fsl,data-mapping = "spwg"; | ||
58 | fsl,data-width = <24>; | ||
59 | status = "okay"; | ||
60 | |||
61 | display-timings { | ||
62 | native-mode = <&timing0>; | ||
63 | timing0: timing0 { | ||
64 | clock-frequency = <60000000>; | ||
65 | hactive = <1280>; | ||
66 | vactive = <800>; | ||
67 | hback-porch = <40>; | ||
68 | hfront-porch = <40>; | ||
69 | vback-porch = <10>; | ||
70 | vfront-porch = <3>; | ||
71 | hsync-len = <80>; | ||
72 | vsync-len = <10>; | ||
73 | }; | ||
74 | }; | ||
75 | }; | ||
76 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-icore-ofcap12.dts b/arch/arm/boot/dts/imx6q-icore-ofcap12.dts new file mode 100644 index 000000000000..9e230f56c5fb --- /dev/null +++ b/arch/arm/boot/dts/imx6q-icore-ofcap12.dts | |||
@@ -0,0 +1,76 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016 Amarula Solutions B.V. | ||
3 | * Copyright (C) 2016 Engicam S.r.l. | ||
4 | * | ||
5 | * This file is dual-licensed: you can use it either under the terms | ||
6 | * of the GPL or the X11 license, at your option. Note that this dual | ||
7 | * licensing only applies to this file, and not this project as a | ||
8 | * whole. | ||
9 | * | ||
10 | * a) This file is free software; you can redistribute it and/or | ||
11 | * modify it under the terms of the GNU General Public License | ||
12 | * version 2 as published by the Free Software Foundation. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | /dts-v1/; | ||
44 | |||
45 | #include "imx6q.dtsi" | ||
46 | #include "imx6qdl-icore.dtsi" | ||
47 | |||
48 | / { | ||
49 | model = "Engicam i.CoreM6 Quad/Dual OpenFrame Capacitive touch 12 Kit"; | ||
50 | compatible = "engicam,imx6-icore", "fsl,imx6q"; | ||
51 | }; | ||
52 | |||
53 | &ldb { | ||
54 | status = "okay"; | ||
55 | |||
56 | lvds-channel@0 { | ||
57 | fsl,data-mapping = "spwg"; | ||
58 | fsl,data-width = <18>; | ||
59 | status = "okay"; | ||
60 | |||
61 | display-timings { | ||
62 | native-mode = <&timing0>; | ||
63 | timing0: timing0 { | ||
64 | clock-frequency = <46800000>; | ||
65 | hactive = <1280>; | ||
66 | vactive = <480>; | ||
67 | hback-porch = <353>; | ||
68 | hfront-porch = <47>; | ||
69 | vback-porch = <39>; | ||
70 | vfront-porch = <4>; | ||
71 | hsync-len = <8>; | ||
72 | vsync-len = <2>; | ||
73 | }; | ||
74 | }; | ||
75 | }; | ||
76 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-icore.dts b/arch/arm/boot/dts/imx6q-icore.dts index 59eb7adc2472..5613dd9dc469 100644 --- a/arch/arm/boot/dts/imx6q-icore.dts +++ b/arch/arm/boot/dts/imx6q-icore.dts | |||
@@ -57,3 +57,37 @@ | |||
57 | &can2 { | 57 | &can2 { |
58 | status = "okay"; | 58 | status = "okay"; |
59 | }; | 59 | }; |
60 | |||
61 | &i2c1 { | ||
62 | max11801: touchscreen@48 { | ||
63 | compatible = "maxim,max11801"; | ||
64 | reg = <0x48>; | ||
65 | interrupt-parent = <&gpio3>; | ||
66 | interrupts = <31 IRQ_TYPE_EDGE_FALLING>; | ||
67 | }; | ||
68 | }; | ||
69 | |||
70 | &ldb { | ||
71 | status = "okay"; | ||
72 | |||
73 | lvds-channel@0 { | ||
74 | fsl,data-mapping = "spwg"; | ||
75 | fsl,data-width = <18>; | ||
76 | status = "okay"; | ||
77 | |||
78 | display-timings { | ||
79 | native-mode = <&timing0>; | ||
80 | timing0: timing0 { | ||
81 | clock-frequency = <60000000>; | ||
82 | hactive = <800>; | ||
83 | vactive = <480>; | ||
84 | hback-porch = <30>; | ||
85 | hfront-porch = <30>; | ||
86 | vback-porch = <5>; | ||
87 | vfront-porch = <5>; | ||
88 | hsync-len = <64>; | ||
89 | vsync-len = <20>; | ||
90 | }; | ||
91 | }; | ||
92 | }; | ||
93 | }; | ||
diff --git a/arch/arm/boot/dts/imx6q-utilite-pro.dts b/arch/arm/boot/dts/imx6q-utilite-pro.dts index 69bdd82ce21f..d900ad6ec5f8 100644 --- a/arch/arm/boot/dts/imx6q-utilite-pro.dts +++ b/arch/arm/boot/dts/imx6q-utilite-pro.dts | |||
@@ -101,9 +101,11 @@ | |||
101 | 101 | ||
102 | hdmi-connector { | 102 | hdmi-connector { |
103 | compatible = "hdmi-connector"; | 103 | compatible = "hdmi-connector"; |
104 | 104 | pinctrl-names = "default"; | |
105 | pinctrl-0 = <&pinctrl_hpd>; | ||
105 | type = "a"; | 106 | type = "a"; |
106 | ddc-i2c-bus = <&i2c_dvi_ddc>; | 107 | ddc-i2c-bus = <&i2c_dvi_ddc>; |
108 | hpd-gpios = <&gpio1 4 GPIO_ACTIVE_HIGH>; | ||
107 | 109 | ||
108 | port { | 110 | port { |
109 | hdmi_connector_in: endpoint { | 111 | hdmi_connector_in: endpoint { |
@@ -209,6 +211,12 @@ | |||
209 | >; | 211 | >; |
210 | }; | 212 | }; |
211 | 213 | ||
214 | pinctrl_hpd: hpdgrp { | ||
215 | fsl,pins = < | ||
216 | MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x1b0b0 | ||
217 | >; | ||
218 | }; | ||
219 | |||
212 | pinctrl_i2c1: i2c1grp { | 220 | pinctrl_i2c1: i2c1grp { |
213 | fsl,pins = < | 221 | fsl,pins = < |
214 | MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 | 222 | MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 |
diff --git a/arch/arm/boot/dts/imx6q-zii-rdu2.dts b/arch/arm/boot/dts/imx6q-zii-rdu2.dts new file mode 100644 index 000000000000..b2d346640fd7 --- /dev/null +++ b/arch/arm/boot/dts/imx6q-zii-rdu2.dts | |||
@@ -0,0 +1,50 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016-2017 Zodiac Inflight Innovations | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License | ||
11 | * version 2 as published by the Free Software Foundation. | ||
12 | * | ||
13 | * This file is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | * | ||
18 | * Or, alternatively, | ||
19 | * | ||
20 | * b) Permission is hereby granted, free of charge, to any person | ||
21 | * obtaining a copy of this software and associated documentation | ||
22 | * files (the "Software"), to deal in the Software without | ||
23 | * restriction, including without limitation the rights to use, | ||
24 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
25 | * sell copies of the Software, and to permit persons to whom the | ||
26 | * Software is furnished to do so, subject to the following | ||
27 | * conditions: | ||
28 | * | ||
29 | * The above copyright notice and this permission notice shall be | ||
30 | * included in all copies or substantial portions of the Software. | ||
31 | * | ||
32 | * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND, | ||
33 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
34 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
35 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
36 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
37 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
38 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
39 | * OTHER DEALINGS IN THE SOFTWARE. | ||
40 | */ | ||
41 | |||
42 | /dts-v1/; | ||
43 | |||
44 | #include <imx6q.dtsi> | ||
45 | #include <imx6qdl-zii-rdu2.dtsi> | ||
46 | |||
47 | / { | ||
48 | model = "ZII RDU2 Board"; | ||
49 | compatible = "zii,imx6q-zii-rdu2", "fsl,imx6q"; | ||
50 | }; | ||
diff --git a/arch/arm/boot/dts/imx6qdl-gw5903.dtsi b/arch/arm/boot/dts/imx6qdl-gw5903.dtsi new file mode 100644 index 000000000000..444425153fc7 --- /dev/null +++ b/arch/arm/boot/dts/imx6qdl-gw5903.dtsi | |||
@@ -0,0 +1,654 @@ | |||
1 | /* | ||
2 | * Copyright 2017 Gateworks Corporation | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of | ||
12 | * the License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public | ||
20 | * License along with this file; if not, write to the Free | ||
21 | * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, | ||
22 | * MA 02110-1301 USA | ||
23 | * | ||
24 | * Or, alternatively, | ||
25 | * | ||
26 | * b) Permission is hereby granted, free of charge, to any person | ||
27 | * obtaining a copy of this software and associated documentation | ||
28 | * files (the "Software"), to deal in the Software without | ||
29 | * restriction, including without limitation the rights to use, | ||
30 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
31 | * sell copies of the Software, and to permit persons to whom the | ||
32 | * Software is furnished to do so, subject to the following | ||
33 | * conditions: | ||
34 | * | ||
35 | * The above copyright notice and this permission notice shall be | ||
36 | * included in all copies or substantial portions of the Software. | ||
37 | * | ||
38 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
39 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
40 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
41 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
42 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
43 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
44 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
45 | * OTHER DEALINGS IN THE SOFTWARE. | ||
46 | */ | ||
47 | |||
48 | #include <dt-bindings/gpio/gpio.h> | ||
49 | |||
50 | / { | ||
51 | chosen { | ||
52 | stdout-path = &uart2; | ||
53 | }; | ||
54 | |||
55 | backlight { | ||
56 | compatible = "pwm-backlight"; | ||
57 | pwms = <&pwm1 0 5000000>; | ||
58 | brightness-levels = < | ||
59 | 0 1 2 3 4 5 6 7 8 9 | ||
60 | 10 11 12 13 14 15 16 17 18 19 | ||
61 | 20 21 22 23 24 25 26 27 28 29 | ||
62 | 30 31 32 33 34 35 36 37 38 39 | ||
63 | 40 41 42 43 44 45 46 47 48 49 | ||
64 | 50 51 52 53 54 55 56 57 58 59 | ||
65 | 60 61 62 63 64 65 66 67 68 69 | ||
66 | 70 71 72 73 74 75 76 77 78 79 | ||
67 | 80 81 82 83 84 85 86 87 88 89 | ||
68 | 90 91 92 93 94 95 96 97 98 99 | ||
69 | 100 | ||
70 | >; | ||
71 | default-brightness-level = <100>; | ||
72 | }; | ||
73 | |||
74 | leds { | ||
75 | compatible = "gpio-leds"; | ||
76 | pinctrl-names = "default"; | ||
77 | pinctrl-0 = <&pinctrl_gpio_leds>; | ||
78 | |||
79 | led0: user1 { | ||
80 | label = "user1"; | ||
81 | gpios = <&gpio6 14 GPIO_ACTIVE_LOW>; /* MX6_LOCLED# */ | ||
82 | default-state = "off"; | ||
83 | }; | ||
84 | }; | ||
85 | |||
86 | memory { | ||
87 | reg = <0x10000000 0x40000000>; | ||
88 | }; | ||
89 | |||
90 | reg_5p0v: regulator-5p0v { | ||
91 | compatible = "regulator-fixed"; | ||
92 | regulator-name = "5P0V"; | ||
93 | regulator-min-microvolt = <5000000>; | ||
94 | regulator-max-microvolt = <5000000>; | ||
95 | regulator-always-on; | ||
96 | }; | ||
97 | |||
98 | reg_3p3v: regulator-3p3v { | ||
99 | compatible = "regulator-fixed"; | ||
100 | regulator-name = "3P3V"; | ||
101 | regulator-min-microvolt = <3300000>; | ||
102 | regulator-max-microvolt = <3300000>; | ||
103 | regulator-always-on; | ||
104 | }; | ||
105 | |||
106 | reg_2p5v: regulator-2p5v { | ||
107 | compatible = "regulator-fixed"; | ||
108 | regulator-name = "2P5V"; | ||
109 | regulator-min-microvolt = <2500000>; | ||
110 | regulator-max-microvolt = <2500000>; | ||
111 | regulator-always-on; | ||
112 | }; | ||
113 | |||
114 | reg_usb_h1_vbus: regulator-usb-h1-vbus { | ||
115 | compatible = "regulator-fixed"; | ||
116 | regulator-name = "usb_h1_vbus"; | ||
117 | regulator-min-microvolt = <5000000>; | ||
118 | regulator-max-microvolt = <5000000>; | ||
119 | gpio = <&gpio3 30 0>; | ||
120 | enable-active-high; | ||
121 | }; | ||
122 | |||
123 | reg_usb_otg_vbus: regulator-usb-otg-vbus { | ||
124 | compatible = "regulator-fixed"; | ||
125 | regulator-name = "usb_otg_vbus"; | ||
126 | regulator-min-microvolt = <5000000>; | ||
127 | regulator-max-microvolt = <5000000>; | ||
128 | gpio = <&gpio4 15 GPIO_ACTIVE_HIGH>; | ||
129 | enable-active-high; | ||
130 | }; | ||
131 | |||
132 | reg_12p0: regulator-12p0v { | ||
133 | compatible = "regulator-fixed"; | ||
134 | regulator-name = "12P0V"; | ||
135 | regulator-min-microvolt = <12000000>; | ||
136 | regulator-max-microvolt = <12000000>; | ||
137 | gpio = <&gpio1 7 GPIO_ACTIVE_HIGH>; | ||
138 | enable-active-high; | ||
139 | }; | ||
140 | |||
141 | sound { | ||
142 | compatible = "fsl,imx-audio-tlv320"; | ||
143 | model = "imx-tlv320"; | ||
144 | ssi-controller = <&ssi1>; | ||
145 | audio-codec = <&tlv320aic3105>; | ||
146 | /* routing of sink, source */ | ||
147 | audio-routing = | ||
148 | /* TLV320 LINE1L pin <-> Mic Jack connector */ | ||
149 | "LINE1L", "Mic Jack", | ||
150 | /* board Headphone Jack <-> HPOUT */ | ||
151 | "Headphone Jack", "HPLOUT", | ||
152 | "Headphone Jack", "HPROUT", | ||
153 | "Mic Jack", "Mic Bias"; | ||
154 | mux-int-port = <1>; | ||
155 | mux-ext-port = <6>; | ||
156 | }; | ||
157 | }; | ||
158 | |||
159 | &audmux { | ||
160 | pinctrl-names = "default"; | ||
161 | pinctrl-0 = <&pinctrl_audmux>; | ||
162 | status = "okay"; | ||
163 | }; | ||
164 | |||
165 | &clks { | ||
166 | assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, | ||
167 | <&clks IMX6QDL_CLK_LDB_DI1_SEL>; | ||
168 | assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>, | ||
169 | <&clks IMX6QDL_CLK_PLL3_USB_OTG>; | ||
170 | }; | ||
171 | |||
172 | &fec { | ||
173 | pinctrl-names = "default"; | ||
174 | pinctrl-0 = <&pinctrl_enet>; | ||
175 | phy-mode = "rgmii-id"; | ||
176 | status = "okay"; | ||
177 | }; | ||
178 | |||
179 | &i2c1 { | ||
180 | clock-frequency = <100000>; | ||
181 | pinctrl-names = "default"; | ||
182 | pinctrl-0 = <&pinctrl_i2c1>; | ||
183 | status = "okay"; | ||
184 | |||
185 | pca9555: gpio@23 { | ||
186 | compatible = "nxp,pca9555"; | ||
187 | reg = <0x23>; | ||
188 | gpio-controller; | ||
189 | #gpio-cells = <2>; | ||
190 | }; | ||
191 | |||
192 | eeprom1: eeprom@50 { | ||
193 | compatible = "atmel,24c02"; | ||
194 | reg = <0x50>; | ||
195 | pagesize = <16>; | ||
196 | }; | ||
197 | |||
198 | eeprom2: eeprom@51 { | ||
199 | compatible = "atmel,24c02"; | ||
200 | reg = <0x51>; | ||
201 | pagesize = <16>; | ||
202 | }; | ||
203 | |||
204 | eeprom3: eeprom@52 { | ||
205 | compatible = "atmel,24c02"; | ||
206 | reg = <0x52>; | ||
207 | pagesize = <16>; | ||
208 | }; | ||
209 | |||
210 | eeprom4: eeprom@53 { | ||
211 | compatible = "atmel,24c02"; | ||
212 | reg = <0x53>; | ||
213 | pagesize = <16>; | ||
214 | }; | ||
215 | |||
216 | dts1672: rtc@68 { | ||
217 | compatible = "dallas,ds1672"; | ||
218 | reg = <0x68>; | ||
219 | }; | ||
220 | }; | ||
221 | |||
222 | &i2c2 { | ||
223 | clock-frequency = <400000>; | ||
224 | pinctrl-names = "default"; | ||
225 | pinctrl-0 = <&pinctrl_i2c2>; | ||
226 | status = "okay"; | ||
227 | |||
228 | ltc3676: pmic@3c { | ||
229 | compatible = "lltc,ltc3676"; | ||
230 | reg = <0x3c>; | ||
231 | interrupt-parent = <&gpio1>; | ||
232 | interrupts = <8 IRQ_TYPE_EDGE_FALLING>; | ||
233 | |||
234 | regulators { | ||
235 | /* VDD_1P8 (1+R1/R2 = 2.505): Aud/eMMC/microSD/Touch */ | ||
236 | reg_1p8v: sw1 { | ||
237 | regulator-name = "vdd1p8"; | ||
238 | regulator-min-microvolt = <1033310>; | ||
239 | regulator-max-microvolt = <2004000>; | ||
240 | lltc,fb-voltage-divider = <301000 200000>; | ||
241 | regulator-ramp-delay = <7000>; | ||
242 | regulator-boot-on; | ||
243 | regulator-always-on; | ||
244 | }; | ||
245 | |||
246 | /* VDD_DDR (1+R1/R2 = 2.105) */ | ||
247 | reg_vdd_ddr: sw2 { | ||
248 | regulator-name = "vddddr"; | ||
249 | regulator-min-microvolt = <868310>; | ||
250 | regulator-max-microvolt = <1684000>; | ||
251 | lltc,fb-voltage-divider = <221000 200000>; | ||
252 | regulator-ramp-delay = <7000>; | ||
253 | regulator-boot-on; | ||
254 | regulator-always-on; | ||
255 | }; | ||
256 | |||
257 | /* VDD_ARM (1+R1/R2 = 1.635) */ | ||
258 | reg_vdd_arm: sw3 { | ||
259 | regulator-name = "vddarm"; | ||
260 | regulator-min-microvolt = <674400>; | ||
261 | regulator-max-microvolt = <1308000>; | ||
262 | lltc,fb-voltage-divider = <127000 200000>; | ||
263 | regulator-ramp-delay = <7000>; | ||
264 | regulator-boot-on; | ||
265 | regulator-always-on; | ||
266 | linux,phandle = <®_vdd_arm>; | ||
267 | }; | ||
268 | |||
269 | /* VDD_SOC (1+R1/R2 = 1.635) */ | ||
270 | reg_vdd_soc: sw4 { | ||
271 | regulator-name = "vddsoc"; | ||
272 | regulator-min-microvolt = <674400>; | ||
273 | regulator-max-microvolt = <1308000>; | ||
274 | lltc,fb-voltage-divider = <127000 200000>; | ||
275 | regulator-ramp-delay = <7000>; | ||
276 | regulator-boot-on; | ||
277 | regulator-always-on; | ||
278 | linux,phandle = <®_vdd_soc>; | ||
279 | }; | ||
280 | |||
281 | /* VDD_1P0 (1+R1/R2 = 1.38): */ | ||
282 | reg_1p0v: ldo2 { | ||
283 | regulator-name = "vdd1p0"; | ||
284 | regulator-min-microvolt = <1002777>; | ||
285 | regulator-max-microvolt = <1002777>; | ||
286 | lltc,fb-voltage-divider = <100000 261000>; | ||
287 | regulator-boot-on; | ||
288 | regulator-always-on; | ||
289 | }; | ||
290 | |||
291 | /* VDD_HIGH (1+R1/R2 = 4.17) */ | ||
292 | reg_3p0v: ldo4 { | ||
293 | regulator-name = "vdd3p0"; | ||
294 | regulator-min-microvolt = <3023250>; | ||
295 | regulator-max-microvolt = <3023250>; | ||
296 | lltc,fb-voltage-divider = <634000 200000>; | ||
297 | regulator-boot-on; | ||
298 | regulator-always-on; | ||
299 | }; | ||
300 | }; | ||
301 | }; | ||
302 | }; | ||
303 | |||
304 | &i2c3 { | ||
305 | clock-frequency = <400000>; | ||
306 | pinctrl-names = "default"; | ||
307 | pinctrl-0 = <&pinctrl_i2c3>; | ||
308 | status = "okay"; | ||
309 | |||
310 | tlv320aic3105: codec@18 { | ||
311 | compatible = "ti,tlv320aic3x"; | ||
312 | reg = <0x18>; | ||
313 | gpio-reset = <&gpio5 17 GPIO_ACTIVE_LOW>; | ||
314 | clocks = <&clks IMX6QDL_CLK_CKO>; | ||
315 | ai3x-micbias-vg = <2>; /* MICBIAS_2_5V */ | ||
316 | /* Regulators */ | ||
317 | DRVDD-supply = <®_3p3v>; | ||
318 | AVDD-supply = <®_3p3v>; | ||
319 | IOVDD-supply = <®_3p3v>; | ||
320 | DVDD-supply = <®_1p8v>; | ||
321 | }; | ||
322 | |||
323 | accelerometer@1d { | ||
324 | compatible = "fsl,mma8451"; | ||
325 | reg = <0x1d>; | ||
326 | interrupt-parent = <&gpio7>; | ||
327 | interrupts = <11 IRQ_TYPE_EDGE_RISING>; | ||
328 | interrupt-names = "INT2"; | ||
329 | }; | ||
330 | |||
331 | /* headphone detect */ | ||
332 | ts3a227e@3b { | ||
333 | compatible = "ti,ts3a227e"; | ||
334 | reg = <0x3b>; | ||
335 | interrupt-parent = <&gpio5>; | ||
336 | interrupts = <15 IRQ_TYPE_LEVEL_LOW>; | ||
337 | ti,micbias = <4>; /* 2.5V micbias */ | ||
338 | }; | ||
339 | }; | ||
340 | |||
341 | &ldb { | ||
342 | status = "okay"; | ||
343 | |||
344 | lvds-channel@0 { | ||
345 | fsl,data-mapping = "spwg"; | ||
346 | fsl,data-width = <18>; | ||
347 | status = "okay"; | ||
348 | |||
349 | display-timings { | ||
350 | native-mode = <&timing0>; | ||
351 | timing0: g101evn010 { | ||
352 | clock-frequency = <68930000>; | ||
353 | hactive = <1280>; | ||
354 | vactive = <800>; | ||
355 | hback-porch = <220>; | ||
356 | hfront-porch = <40>; | ||
357 | vback-porch = <21>; | ||
358 | vfront-porch = <7>; | ||
359 | hsync-len = <60>; | ||
360 | vsync-len = <10>; | ||
361 | }; | ||
362 | }; | ||
363 | }; | ||
364 | }; | ||
365 | |||
366 | &pwm1 { | ||
367 | pinctrl-names = "default"; | ||
368 | pinctrl-0 = <&pinctrl_pwm1>; | ||
369 | status = "okay"; | ||
370 | }; | ||
371 | |||
372 | &ssi1 { | ||
373 | status = "okay"; | ||
374 | }; | ||
375 | |||
376 | &uart1 { | ||
377 | pinctrl-names = "default"; | ||
378 | pinctrl-0 = <&pinctrl_uart1>; | ||
379 | status = "okay"; | ||
380 | }; | ||
381 | |||
382 | &uart2 { | ||
383 | pinctrl-names = "default"; | ||
384 | pinctrl-0 = <&pinctrl_uart2>; | ||
385 | status = "okay"; | ||
386 | }; | ||
387 | |||
388 | &usbotg { | ||
389 | vbus-supply = <®_usb_otg_vbus>; | ||
390 | pinctrl-names = "default"; | ||
391 | pinctrl-0 = <&pinctrl_usbotg>; | ||
392 | disable-over-current; | ||
393 | status = "okay"; | ||
394 | }; | ||
395 | |||
396 | &usbh1 { | ||
397 | vbus-supply = <®_usb_h1_vbus>; | ||
398 | status = "okay"; | ||
399 | }; | ||
400 | |||
401 | &usdhc1 { | ||
402 | pinctrl-names = "default"; | ||
403 | pinctrl-0 = <&pinctrl_usdhc1_200mhz>; | ||
404 | vmmc-supply = <®_3p3v>; | ||
405 | non-removable; | ||
406 | bus-width = <4>; | ||
407 | status = "okay"; | ||
408 | }; | ||
409 | |||
410 | &usdhc2 { | ||
411 | pinctrl-names = "default", "state_100mhz", "state_200mhz"; | ||
412 | pinctrl-0 = <&pinctrl_usdhc2>; | ||
413 | pinctrl-1 = <&pinctrl_usdhc2_100mhz>; | ||
414 | pinctrl-2 = <&pinctrl_usdhc2_200mhz>; | ||
415 | cd-gpios = <&gpio6 11 GPIO_ACTIVE_LOW>; | ||
416 | vmmc-supply = <®_3p3v>; | ||
417 | max-frequency = <100000000>; | ||
418 | status = "okay"; | ||
419 | }; | ||
420 | |||
421 | &usdhc3 { | ||
422 | pinctrl-names = "default", "state_100mhz", "state_200mhz"; | ||
423 | pinctrl-0 = <&pinctrl_usdhc3>; | ||
424 | pinctrl-1 = <&pinctrl_usdhc3_100mhz>; | ||
425 | pinctrl-2 = <&pinctrl_usdhc3_200mhz>; | ||
426 | non-removable; | ||
427 | vmmc-supply = <®_3p3v>; | ||
428 | keep-power-in-suspend; | ||
429 | status = "okay"; | ||
430 | }; | ||
431 | |||
432 | &wdog1 { | ||
433 | pinctrl-names = "default"; | ||
434 | pinctrl-0 = <&pinctrl_wdog>; | ||
435 | fsl,ext-reset-output; | ||
436 | }; | ||
437 | |||
438 | &iomuxc { | ||
439 | pinctrl_audmux: audmuxgrp { | ||
440 | fsl,pins = < | ||
441 | MX6QDL_PAD_DI0_PIN2__AUD6_TXD 0x130b0 | ||
442 | MX6QDL_PAD_DI0_PIN3__AUD6_TXFS 0x130b0 | ||
443 | MX6QDL_PAD_DI0_PIN4__AUD6_RXD 0x130b0 | ||
444 | MX6QDL_PAD_DI0_PIN15__AUD6_TXC 0x130b0 | ||
445 | MX6QDL_PAD_GPIO_0__CCM_CLKO1 0x130b0 /* MCK */ | ||
446 | >; | ||
447 | }; | ||
448 | |||
449 | pinctrl_enet: enetgrp { | ||
450 | fsl,pins = < | ||
451 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 | ||
452 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 | ||
453 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 | ||
454 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 | ||
455 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 | ||
456 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 | ||
457 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030 | ||
458 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030 | ||
459 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030 | ||
460 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030 | ||
461 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030 | ||
462 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030 | ||
463 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 | ||
464 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 | ||
465 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 | ||
466 | MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x4001b0b0 /* PHY_RST# */ | ||
467 | MX6QDL_PAD_ENET_CRS_DV__GPIO1_IO25 0x4001b0b0 /* PHY_EN */ | ||
468 | >; | ||
469 | }; | ||
470 | |||
471 | pinctrl_gpio_leds: gpioledsgrp { | ||
472 | fsl,pins = < | ||
473 | MX6QDL_PAD_NANDF_CS1__GPIO6_IO14 0x1b0b0 | ||
474 | >; | ||
475 | }; | ||
476 | |||
477 | pinctrl_i2c1: i2c1grp { | ||
478 | fsl,pins = < | ||
479 | MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 | ||
480 | MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 | ||
481 | MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x0001b0b0 /* GSC_IRQ# */ | ||
482 | >; | ||
483 | }; | ||
484 | |||
485 | pinctrl_i2c2: i2c2grp { | ||
486 | fsl,pins = < | ||
487 | MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 | ||
488 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 | ||
489 | MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x0001b0b0 /* PMIC_IRQ# */ | ||
490 | >; | ||
491 | }; | ||
492 | |||
493 | pinctrl_i2c3: i2c3grp { | ||
494 | fsl,pins = < | ||
495 | /* I2C3 */ | ||
496 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 | ||
497 | MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 | ||
498 | |||
499 | /* Headphone Detect */ | ||
500 | MX6QDL_PAD_DISP0_DAT21__GPIO5_IO15 0x0001b0b0 /* HPDET_IRQ# */ | ||
501 | MX6QDL_PAD_DISP0_DAT22__GPIO5_IO16 0x0001b0b0 /* HPDET_MIC# */ | ||
502 | |||
503 | /* Codec */ | ||
504 | MX6QDL_PAD_DISP0_DAT23__GPIO5_IO17 0x0001b0b0 /* CODEC_RST# */ | ||
505 | |||
506 | /* Touch Controller */ | ||
507 | MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x0001b0b0 /* TOUCH_IRQ# */ | ||
508 | MX6QDL_PAD_KEY_COL1__GPIO4_IO08 0x0001b0b0 /* TOUCH_RST */ | ||
509 | |||
510 | /* Stow Sensor */ | ||
511 | MX6QDL_PAD_GPIO_16__GPIO7_IO11 0x0001b0b0 /* ACCEL_IRQ2 */ | ||
512 | MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x0001b0b0 /* ACCEL_IRQ1 */ | ||
513 | >; | ||
514 | }; | ||
515 | |||
516 | pinctrl_pwm1: pwm1grp { | ||
517 | fsl,pins = < | ||
518 | MX6QDL_PAD_GPIO_9__PWM1_OUT 0x1b0b1 | ||
519 | >; | ||
520 | }; | ||
521 | |||
522 | pinctrl_uart1: uart1grp { | ||
523 | fsl,pins = < | ||
524 | MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 | ||
525 | MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 | ||
526 | MX6QDL_PAD_CSI0_DAT12__GPIO5_IO30 0x1b0b1 /* TXEN */ | ||
527 | >; | ||
528 | }; | ||
529 | |||
530 | pinctrl_uart2: uart2grp { | ||
531 | fsl,pins = < | ||
532 | MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1 | ||
533 | MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1 | ||
534 | >; | ||
535 | }; | ||
536 | |||
537 | pinctrl_usbotg: usbotggrp { | ||
538 | fsl,pins = < | ||
539 | MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x13059 | ||
540 | MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x4001b0b0 /* PWR_EN */ | ||
541 | MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x1b0b0 /* OC */ | ||
542 | >; | ||
543 | }; | ||
544 | |||
545 | pinctrl_usdhc1_200mhz: usdhc1grp200mhz { | ||
546 | fsl,pins = < | ||
547 | MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x4001b0b0 /* EMMY_EN */ | ||
548 | MX6QDL_PAD_NANDF_D4__GPIO2_IO04 0x4001b0b0 /* EMMY_CFG1# */ | ||
549 | MX6QDL_PAD_NANDF_D5__GPIO2_IO05 0x4001b0b0 /* EMMY_CFG2# */ | ||
550 | MX6QDL_PAD_NANDF_D6__GPIO2_IO06 0x0001b0b0 /* EMMY_BTWAKE# */ | ||
551 | MX6QDL_PAD_NANDF_D7__GPIO2_IO07 0x0001b0b0 /* EMMY_WFWAKE# */ | ||
552 | |||
553 | MX6QDL_PAD_SD1_CLK__SD1_CLK 0x100f9 | ||
554 | MX6QDL_PAD_SD1_CMD__SD1_CMD 0x100f9 | ||
555 | MX6QDL_PAD_SD1_DAT0__SD1_DATA0 0x170f9 | ||
556 | MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x170f9 | ||
557 | MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x170f9 | ||
558 | MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x170f9 | ||
559 | >; | ||
560 | }; | ||
561 | |||
562 | pinctrl_usdhc2: usdhc2grp { | ||
563 | fsl,pins = < | ||
564 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x17059 | ||
565 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10059 | ||
566 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 | ||
567 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 | ||
568 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 | ||
569 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 | ||
570 | MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x17059 /* CD */ | ||
571 | MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x17059 | ||
572 | >; | ||
573 | }; | ||
574 | |||
575 | pinctrl_usdhc2_100mhz: usdhc2grp100mhz { | ||
576 | fsl,pins = < | ||
577 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170b9 | ||
578 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100b9 | ||
579 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170b9 | ||
580 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170b9 | ||
581 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170b9 | ||
582 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170b9 | ||
583 | MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x170b9 /* CD */ | ||
584 | MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x170b9 | ||
585 | >; | ||
586 | }; | ||
587 | |||
588 | pinctrl_usdhc2_200mhz: usdhc2grp200mhz { | ||
589 | fsl,pins = < | ||
590 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x170f9 | ||
591 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x100f9 | ||
592 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x170f9 | ||
593 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x170f9 | ||
594 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x170f9 | ||
595 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x170f9 | ||
596 | MX6QDL_PAD_NANDF_CS0__GPIO6_IO11 0x170f9 /* CD */ | ||
597 | MX6QDL_PAD_KEY_ROW1__SD2_VSELECT 0x170f9 | ||
598 | >; | ||
599 | }; | ||
600 | |||
601 | pinctrl_usdhc3: usdhc3grp { | ||
602 | fsl,pins = < | ||
603 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 | ||
604 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 | ||
605 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x10059 | ||
606 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 | ||
607 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 | ||
608 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 | ||
609 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 | ||
610 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059 | ||
611 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059 | ||
612 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059 | ||
613 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 | ||
614 | >; | ||
615 | }; | ||
616 | |||
617 | pinctrl_usdhc3_100mhz: usdhc3grp100mhz { | ||
618 | fsl,pins = < | ||
619 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170b9 | ||
620 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100b9 | ||
621 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x100b9 | ||
622 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170b9 | ||
623 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170b9 | ||
624 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170b9 | ||
625 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170b9 | ||
626 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170b9 | ||
627 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170b9 | ||
628 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170b9 | ||
629 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170b9 | ||
630 | >; | ||
631 | }; | ||
632 | |||
633 | pinctrl_usdhc3_200mhz: usdhc3grp200mhz { | ||
634 | fsl,pins = < | ||
635 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170f9 | ||
636 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100f9 | ||
637 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x100f9 | ||
638 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170f9 | ||
639 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170f9 | ||
640 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170f9 | ||
641 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170f9 | ||
642 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170f9 | ||
643 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170f9 | ||
644 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170f9 | ||
645 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170f9 | ||
646 | >; | ||
647 | }; | ||
648 | |||
649 | pinctrl_wdog: wdoggrp { | ||
650 | fsl,pins = < | ||
651 | MX6QDL_PAD_DISP0_DAT8__WDOG1_B 0x1b0b0 | ||
652 | >; | ||
653 | }; | ||
654 | }; | ||
diff --git a/arch/arm/boot/dts/imx6qdl-gw5904.dtsi b/arch/arm/boot/dts/imx6qdl-gw5904.dtsi new file mode 100644 index 000000000000..fd4b68be9fe9 --- /dev/null +++ b/arch/arm/boot/dts/imx6qdl-gw5904.dtsi | |||
@@ -0,0 +1,641 @@ | |||
1 | /* | ||
2 | * Copyright 2017 Gateworks Corporation | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of | ||
12 | * the License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * You should have received a copy of the GNU General Public | ||
20 | * License along with this file; if not, write to the Free | ||
21 | * Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, | ||
22 | * MA 02110-1301 USA | ||
23 | * | ||
24 | * Or, alternatively, | ||
25 | * | ||
26 | * b) Permission is hereby granted, free of charge, to any person | ||
27 | * obtaining a copy of this software and associated documentation | ||
28 | * files (the "Software"), to deal in the Software without | ||
29 | * restriction, including without limitation the rights to use, | ||
30 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
31 | * sell copies of the Software, and to permit persons to whom the | ||
32 | * Software is furnished to do so, subject to the following | ||
33 | * conditions: | ||
34 | * | ||
35 | * The above copyright notice and this permission notice shall be | ||
36 | * included in all copies or substantial portions of the Software. | ||
37 | * | ||
38 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
39 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
40 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
41 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
42 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
43 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
44 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
45 | * OTHER DEALINGS IN THE SOFTWARE. | ||
46 | */ | ||
47 | |||
48 | #include <dt-bindings/gpio/gpio.h> | ||
49 | |||
50 | / { | ||
51 | /* these are used by bootloader for disabling nodes */ | ||
52 | aliases { | ||
53 | led0 = &led0; | ||
54 | led1 = &led1; | ||
55 | led2 = &led2; | ||
56 | usb0 = &usbh1; | ||
57 | usb1 = &usbotg; | ||
58 | }; | ||
59 | |||
60 | chosen { | ||
61 | stdout-path = &uart2; | ||
62 | }; | ||
63 | |||
64 | backlight { | ||
65 | compatible = "pwm-backlight"; | ||
66 | pwms = <&pwm4 0 5000000>; | ||
67 | brightness-levels = <0 4 8 16 32 64 128 255>; | ||
68 | default-brightness-level = <7>; | ||
69 | }; | ||
70 | |||
71 | leds { | ||
72 | compatible = "gpio-leds"; | ||
73 | pinctrl-names = "default"; | ||
74 | pinctrl-0 = <&pinctrl_gpio_leds>; | ||
75 | |||
76 | led0: user1 { | ||
77 | label = "user1"; | ||
78 | gpios = <&gpio4 6 GPIO_ACTIVE_HIGH>; /* MX6_PANLEDG */ | ||
79 | default-state = "on"; | ||
80 | linux,default-trigger = "heartbeat"; | ||
81 | }; | ||
82 | |||
83 | led1: user2 { | ||
84 | label = "user2"; | ||
85 | gpios = <&gpio4 7 GPIO_ACTIVE_HIGH>; /* MX6_PANLEDR */ | ||
86 | default-state = "off"; | ||
87 | }; | ||
88 | |||
89 | led2: user3 { | ||
90 | label = "user3"; | ||
91 | gpios = <&gpio4 15 GPIO_ACTIVE_LOW>; /* MX6_LOCLED# */ | ||
92 | default-state = "off"; | ||
93 | }; | ||
94 | }; | ||
95 | |||
96 | memory { | ||
97 | reg = <0x10000000 0x40000000>; | ||
98 | }; | ||
99 | |||
100 | pps { | ||
101 | compatible = "pps-gpio"; | ||
102 | pinctrl-names = "default"; | ||
103 | pinctrl-0 = <&pinctrl_pps>; | ||
104 | gpios = <&gpio1 26 GPIO_ACTIVE_HIGH>; | ||
105 | }; | ||
106 | |||
107 | reg_1p0v: regulator-1p0v { | ||
108 | compatible = "regulator-fixed"; | ||
109 | regulator-name = "1P0V"; | ||
110 | regulator-min-microvolt = <1000000>; | ||
111 | regulator-max-microvolt = <1000000>; | ||
112 | regulator-always-on; | ||
113 | }; | ||
114 | |||
115 | reg_3p3v: regulator-3p3v { | ||
116 | compatible = "regulator-fixed"; | ||
117 | regulator-name = "3P3V"; | ||
118 | regulator-min-microvolt = <3300000>; | ||
119 | regulator-max-microvolt = <3300000>; | ||
120 | regulator-always-on; | ||
121 | }; | ||
122 | |||
123 | reg_usb_h1_vbus: regulator-usb-h1-vbus { | ||
124 | compatible = "regulator-fixed"; | ||
125 | regulator-name = "usb_h1_vbus"; | ||
126 | regulator-min-microvolt = <5000000>; | ||
127 | regulator-max-microvolt = <5000000>; | ||
128 | regulator-always-on; | ||
129 | }; | ||
130 | |||
131 | reg_usb_otg_vbus: regulator-usb-otg-vbus { | ||
132 | compatible = "regulator-fixed"; | ||
133 | regulator-name = "usb_otg_vbus"; | ||
134 | regulator-min-microvolt = <5000000>; | ||
135 | regulator-max-microvolt = <5000000>; | ||
136 | gpio = <&gpio3 22 GPIO_ACTIVE_HIGH>; | ||
137 | enable-active-high; | ||
138 | }; | ||
139 | }; | ||
140 | |||
141 | &clks { | ||
142 | assigned-clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, | ||
143 | <&clks IMX6QDL_CLK_LDB_DI1_SEL>; | ||
144 | assigned-clock-parents = <&clks IMX6QDL_CLK_PLL3_USB_OTG>, | ||
145 | <&clks IMX6QDL_CLK_PLL3_USB_OTG>; | ||
146 | }; | ||
147 | |||
148 | &fec { | ||
149 | pinctrl-names = "default"; | ||
150 | pinctrl-0 = <&pinctrl_enet>; | ||
151 | phy-mode = "rgmii-id"; | ||
152 | status = "okay"; | ||
153 | |||
154 | fixed-link { | ||
155 | speed = <1000>; | ||
156 | full-duplex; | ||
157 | }; | ||
158 | |||
159 | mdio { | ||
160 | #address-cells = <1>; | ||
161 | #size-cells = <0>; | ||
162 | |||
163 | switch@0 { | ||
164 | compatible = "marvell,mv88e6085"; | ||
165 | #address-cells = <1>; | ||
166 | #size-cells = <0>; | ||
167 | reg = <0>; | ||
168 | |||
169 | ports { | ||
170 | #address-cells = <1>; | ||
171 | #size-cells = <0>; | ||
172 | |||
173 | port@0 { | ||
174 | reg = <0>; | ||
175 | label = "lan4"; | ||
176 | }; | ||
177 | |||
178 | port@1 { | ||
179 | reg = <1>; | ||
180 | label = "lan3"; | ||
181 | }; | ||
182 | |||
183 | port@2 { | ||
184 | reg = <2>; | ||
185 | label = "lan2"; | ||
186 | }; | ||
187 | |||
188 | port@3 { | ||
189 | reg = <3>; | ||
190 | label = "lan1"; | ||
191 | }; | ||
192 | |||
193 | port@5 { | ||
194 | reg = <5>; | ||
195 | label = "cpu"; | ||
196 | ethernet = <&fec>; | ||
197 | }; | ||
198 | }; | ||
199 | }; | ||
200 | }; | ||
201 | }; | ||
202 | |||
203 | &i2c1 { | ||
204 | clock-frequency = <100000>; | ||
205 | pinctrl-names = "default"; | ||
206 | pinctrl-0 = <&pinctrl_i2c1>; | ||
207 | status = "okay"; | ||
208 | |||
209 | pca9555: gpio@23 { | ||
210 | compatible = "nxp,pca9555"; | ||
211 | reg = <0x23>; | ||
212 | gpio-controller; | ||
213 | #gpio-cells = <2>; | ||
214 | }; | ||
215 | |||
216 | eeprom1: eeprom@50 { | ||
217 | compatible = "atmel,24c02"; | ||
218 | reg = <0x50>; | ||
219 | pagesize = <16>; | ||
220 | }; | ||
221 | |||
222 | eeprom2: eeprom@51 { | ||
223 | compatible = "atmel,24c02"; | ||
224 | reg = <0x51>; | ||
225 | pagesize = <16>; | ||
226 | }; | ||
227 | |||
228 | eeprom3: eeprom@52 { | ||
229 | compatible = "atmel,24c02"; | ||
230 | reg = <0x52>; | ||
231 | pagesize = <16>; | ||
232 | }; | ||
233 | |||
234 | eeprom4: eeprom@53 { | ||
235 | compatible = "atmel,24c02"; | ||
236 | reg = <0x53>; | ||
237 | pagesize = <16>; | ||
238 | }; | ||
239 | |||
240 | dts1672: rtc@68 { | ||
241 | compatible = "dallas,ds1672"; | ||
242 | reg = <0x68>; | ||
243 | }; | ||
244 | }; | ||
245 | |||
246 | &i2c2 { | ||
247 | clock-frequency = <100000>; | ||
248 | pinctrl-names = "default"; | ||
249 | pinctrl-0 = <&pinctrl_i2c2>; | ||
250 | status = "okay"; | ||
251 | |||
252 | ltc3676: pmic@3c { | ||
253 | compatible = "lltc,ltc3676"; | ||
254 | reg = <0x3c>; | ||
255 | interrupt-parent = <&gpio1>; | ||
256 | interrupts = <8 IRQ_TYPE_EDGE_FALLING>; | ||
257 | |||
258 | regulators { | ||
259 | /* VDD_SOC (1+R1/R2 = 1.635) */ | ||
260 | reg_vdd_soc: sw1 { | ||
261 | regulator-name = "vddsoc"; | ||
262 | regulator-min-microvolt = <674400>; | ||
263 | regulator-max-microvolt = <1308000>; | ||
264 | lltc,fb-voltage-divider = <127000 200000>; | ||
265 | regulator-ramp-delay = <7000>; | ||
266 | regulator-boot-on; | ||
267 | regulator-always-on; | ||
268 | }; | ||
269 | |||
270 | /* VDD_1P8 (1+R1/R2 = 2.505): GbE switch */ | ||
271 | reg_1p8v: sw2 { | ||
272 | regulator-name = "vdd1p8"; | ||
273 | regulator-min-microvolt = <1033310>; | ||
274 | regulator-max-microvolt = <2004000>; | ||
275 | lltc,fb-voltage-divider = <301000 200000>; | ||
276 | regulator-ramp-delay = <7000>; | ||
277 | regulator-boot-on; | ||
278 | regulator-always-on; | ||
279 | }; | ||
280 | |||
281 | /* VDD_ARM (1+R1/R2 = 1.635) */ | ||
282 | reg_vdd_arm: sw3 { | ||
283 | regulator-name = "vddarm"; | ||
284 | regulator-min-microvolt = <674400>; | ||
285 | regulator-max-microvolt = <1308000>; | ||
286 | lltc,fb-voltage-divider = <127000 200000>; | ||
287 | regulator-ramp-delay = <7000>; | ||
288 | regulator-boot-on; | ||
289 | regulator-always-on; | ||
290 | }; | ||
291 | |||
292 | /* VDD_DDR (1+R1/R2 = 2.105) */ | ||
293 | reg_vdd_ddr: sw4 { | ||
294 | regulator-name = "vddddr"; | ||
295 | regulator-min-microvolt = <868310>; | ||
296 | regulator-max-microvolt = <1684000>; | ||
297 | lltc,fb-voltage-divider = <221000 200000>; | ||
298 | regulator-ramp-delay = <7000>; | ||
299 | regulator-boot-on; | ||
300 | regulator-always-on; | ||
301 | }; | ||
302 | |||
303 | /* VDD_2P5 (1+R1/R2 = 3.435): PCIe/ENET-PHY */ | ||
304 | reg_2p5v: ldo2 { | ||
305 | regulator-name = "vdd2p5"; | ||
306 | regulator-min-microvolt = <2490375>; | ||
307 | regulator-max-microvolt = <2490375>; | ||
308 | lltc,fb-voltage-divider = <487000 200000>; | ||
309 | regulator-boot-on; | ||
310 | regulator-always-on; | ||
311 | }; | ||
312 | |||
313 | /* VDD_HIGH (1+R1/R2 = 4.17) */ | ||
314 | reg_3p0v: ldo4 { | ||
315 | regulator-name = "vdd3p0"; | ||
316 | regulator-min-microvolt = <3023250>; | ||
317 | regulator-max-microvolt = <3023250>; | ||
318 | lltc,fb-voltage-divider = <634000 200000>; | ||
319 | regulator-boot-on; | ||
320 | regulator-always-on; | ||
321 | }; | ||
322 | }; | ||
323 | }; | ||
324 | }; | ||
325 | |||
326 | &i2c3 { | ||
327 | clock-frequency = <100000>; | ||
328 | pinctrl-names = "default"; | ||
329 | pinctrl-0 = <&pinctrl_i2c3>; | ||
330 | status = "okay"; | ||
331 | |||
332 | egalax_ts: touchscreen@4 { | ||
333 | compatible = "eeti,egalax_ts"; | ||
334 | reg = <0x04>; | ||
335 | interrupt-parent = <&gpio1>; | ||
336 | interrupts = <11 IRQ_TYPE_EDGE_FALLING>; | ||
337 | wakeup-gpios = <&gpio1 11 GPIO_ACTIVE_LOW>; | ||
338 | }; | ||
339 | }; | ||
340 | |||
341 | &ldb { | ||
342 | status = "okay"; | ||
343 | |||
344 | lvds-channel@0 { | ||
345 | fsl,data-mapping = "spwg"; | ||
346 | fsl,data-width = <18>; | ||
347 | status = "okay"; | ||
348 | |||
349 | display-timings { | ||
350 | native-mode = <&timing0>; | ||
351 | timing0: hsd100pxn1 { | ||
352 | clock-frequency = <65000000>; | ||
353 | hactive = <1024>; | ||
354 | vactive = <768>; | ||
355 | hback-porch = <220>; | ||
356 | hfront-porch = <40>; | ||
357 | vback-porch = <21>; | ||
358 | vfront-porch = <7>; | ||
359 | hsync-len = <60>; | ||
360 | vsync-len = <10>; | ||
361 | }; | ||
362 | }; | ||
363 | }; | ||
364 | }; | ||
365 | |||
366 | &pcie { | ||
367 | pinctrl-names = "default"; | ||
368 | pinctrl-0 = <&pinctrl_pcie>; | ||
369 | reset-gpio = <&gpio1 0 GPIO_ACTIVE_LOW>; | ||
370 | status = "okay"; | ||
371 | }; | ||
372 | |||
373 | &pwm2 { | ||
374 | pinctrl-names = "default"; | ||
375 | pinctrl-0 = <&pinctrl_pwm2>; /* MX6_DIO1 */ | ||
376 | status = "disabled"; | ||
377 | }; | ||
378 | |||
379 | &pwm3 { | ||
380 | pinctrl-names = "default"; | ||
381 | pinctrl-0 = <&pinctrl_pwm3>; /* MX6_DIO2 */ | ||
382 | status = "disabled"; | ||
383 | }; | ||
384 | |||
385 | &pwm4 { | ||
386 | pinctrl-names = "default"; | ||
387 | pinctrl-0 = <&pinctrl_pwm4>; | ||
388 | status = "okay"; | ||
389 | }; | ||
390 | |||
391 | &uart1 { | ||
392 | pinctrl-names = "default"; | ||
393 | pinctrl-0 = <&pinctrl_uart1>; | ||
394 | status = "okay"; | ||
395 | }; | ||
396 | |||
397 | &uart2 { | ||
398 | pinctrl-names = "default"; | ||
399 | pinctrl-0 = <&pinctrl_uart2>; | ||
400 | status = "okay"; | ||
401 | }; | ||
402 | |||
403 | &uart3 { | ||
404 | pinctrl-names = "default"; | ||
405 | pinctrl-0 = <&pinctrl_uart3>; | ||
406 | uart-has-rtscts; | ||
407 | status = "okay"; | ||
408 | }; | ||
409 | |||
410 | &uart4 { | ||
411 | pinctrl-names = "default"; | ||
412 | pinctrl-0 = <&pinctrl_uart4>; | ||
413 | uart-has-rtscts; | ||
414 | status = "okay"; | ||
415 | }; | ||
416 | |||
417 | &uart5 { | ||
418 | pinctrl-names = "default"; | ||
419 | pinctrl-0 = <&pinctrl_uart5>; | ||
420 | status = "okay"; | ||
421 | }; | ||
422 | |||
423 | &usbotg { | ||
424 | vbus-supply = <®_usb_otg_vbus>; | ||
425 | pinctrl-names = "default"; | ||
426 | pinctrl-0 = <&pinctrl_usbotg>; | ||
427 | disable-over-current; | ||
428 | status = "okay"; | ||
429 | }; | ||
430 | |||
431 | &usbh1 { | ||
432 | vbus-supply = <®_usb_h1_vbus>; | ||
433 | status = "okay"; | ||
434 | }; | ||
435 | |||
436 | &usdhc3 { | ||
437 | pinctrl-names = "default", "state_100mhz", "state_200mhz"; | ||
438 | pinctrl-0 = <&pinctrl_usdhc3>; | ||
439 | pinctrl-1 = <&pinctrl_usdhc3_100mhz>; | ||
440 | pinctrl-2 = <&pinctrl_usdhc3_200mhz>; | ||
441 | non-removable; | ||
442 | vmmc-supply = <®_3p3v>; | ||
443 | keep-power-in-suspend; | ||
444 | status = "okay"; | ||
445 | }; | ||
446 | |||
447 | &wdog1 { | ||
448 | pinctrl-names = "default"; | ||
449 | pinctrl-0 = <&pinctrl_wdog>; | ||
450 | fsl,ext-reset-output; | ||
451 | }; | ||
452 | |||
453 | &iomuxc { | ||
454 | pinctrl_enet: enetgrp { | ||
455 | fsl,pins = < | ||
456 | MX6QDL_PAD_RGMII_RXC__RGMII_RXC 0x1b030 | ||
457 | MX6QDL_PAD_RGMII_RD0__RGMII_RD0 0x1b030 | ||
458 | MX6QDL_PAD_RGMII_RD1__RGMII_RD1 0x1b030 | ||
459 | MX6QDL_PAD_RGMII_RD2__RGMII_RD2 0x1b030 | ||
460 | MX6QDL_PAD_RGMII_RD3__RGMII_RD3 0x1b030 | ||
461 | MX6QDL_PAD_RGMII_RX_CTL__RGMII_RX_CTL 0x1b030 | ||
462 | MX6QDL_PAD_RGMII_TXC__RGMII_TXC 0x1b030 | ||
463 | MX6QDL_PAD_RGMII_TD0__RGMII_TD0 0x1b030 | ||
464 | MX6QDL_PAD_RGMII_TD1__RGMII_TD1 0x1b030 | ||
465 | MX6QDL_PAD_RGMII_TD2__RGMII_TD2 0x1b030 | ||
466 | MX6QDL_PAD_RGMII_TD3__RGMII_TD3 0x1b030 | ||
467 | MX6QDL_PAD_RGMII_TX_CTL__RGMII_TX_CTL 0x1b030 | ||
468 | MX6QDL_PAD_ENET_REF_CLK__ENET_TX_CLK 0x1b0b0 | ||
469 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x1b0b0 | ||
470 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x1b0b0 | ||
471 | MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x4001b0a8 | ||
472 | MX6QDL_PAD_ENET_TXD0__GPIO1_IO30 0x4001b0b0 /* PHY_RST# */ | ||
473 | >; | ||
474 | }; | ||
475 | |||
476 | pinctrl_gpio_leds: gpioledsgrp { | ||
477 | fsl,pins = < | ||
478 | MX6QDL_PAD_KEY_COL0__GPIO4_IO06 0x1b0b0 | ||
479 | MX6QDL_PAD_KEY_ROW0__GPIO4_IO07 0x1b0b0 | ||
480 | MX6QDL_PAD_KEY_ROW4__GPIO4_IO15 0x1b0b0 | ||
481 | >; | ||
482 | }; | ||
483 | |||
484 | pinctrl_i2c1: i2c1grp { | ||
485 | fsl,pins = < | ||
486 | MX6QDL_PAD_EIM_D21__I2C1_SCL 0x4001b8b1 | ||
487 | MX6QDL_PAD_EIM_D28__I2C1_SDA 0x4001b8b1 | ||
488 | >; | ||
489 | }; | ||
490 | |||
491 | pinctrl_i2c2: i2c2grp { | ||
492 | fsl,pins = < | ||
493 | MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 | ||
494 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 | ||
495 | >; | ||
496 | }; | ||
497 | |||
498 | pinctrl_i2c3: i2c3grp { | ||
499 | fsl,pins = < | ||
500 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 | ||
501 | MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 | ||
502 | >; | ||
503 | }; | ||
504 | |||
505 | pinctrl_pcie: pciegrp { | ||
506 | fsl,pins = < | ||
507 | MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x1b0b0 /* PCIE RST */ | ||
508 | >; | ||
509 | }; | ||
510 | |||
511 | pinctrl_pmic: pmicgrp { | ||
512 | fsl,pins = < | ||
513 | MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 /* PMIC_IRQ# */ | ||
514 | >; | ||
515 | }; | ||
516 | |||
517 | pinctrl_pps: ppsgrp { | ||
518 | fsl,pins = < | ||
519 | MX6QDL_PAD_ENET_RXD1__GPIO1_IO26 0x1b0b1 | ||
520 | >; | ||
521 | }; | ||
522 | |||
523 | pinctrl_pwm2: pwm2grp { | ||
524 | fsl,pins = < | ||
525 | MX6QDL_PAD_SD1_DAT2__PWM2_OUT 0x1b0b1 | ||
526 | >; | ||
527 | }; | ||
528 | |||
529 | pinctrl_pwm3: pwm3grp { | ||
530 | fsl,pins = < | ||
531 | MX6QDL_PAD_SD1_DAT1__PWM3_OUT 0x1b0b1 | ||
532 | >; | ||
533 | }; | ||
534 | |||
535 | pinctrl_pwm4: pwm4grp { | ||
536 | fsl,pins = < | ||
537 | MX6QDL_PAD_SD1_CMD__PWM4_OUT 0x1b0b1 | ||
538 | >; | ||
539 | }; | ||
540 | |||
541 | pinctrl_uart1: uart1grp { | ||
542 | fsl,pins = < | ||
543 | MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 | ||
544 | MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 | ||
545 | >; | ||
546 | }; | ||
547 | |||
548 | pinctrl_uart2: uart2grp { | ||
549 | fsl,pins = < | ||
550 | MX6QDL_PAD_SD4_DAT7__UART2_TX_DATA 0x1b0b1 | ||
551 | MX6QDL_PAD_SD4_DAT4__UART2_RX_DATA 0x1b0b1 | ||
552 | >; | ||
553 | }; | ||
554 | |||
555 | pinctrl_uart3: uart3grp { | ||
556 | fsl,pins = < | ||
557 | MX6QDL_PAD_EIM_D23__UART3_CTS_B 0x1b0b1 | ||
558 | MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 | ||
559 | MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1 | ||
560 | MX6QDL_PAD_EIM_D31__UART3_RTS_B 0x1b0b1 | ||
561 | >; | ||
562 | }; | ||
563 | |||
564 | pinctrl_uart4: uart4grp { | ||
565 | fsl,pins = < | ||
566 | MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1 | ||
567 | MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1 | ||
568 | MX6QDL_PAD_CSI0_DAT16__UART4_RTS_B 0x1b0b1 | ||
569 | MX6QDL_PAD_CSI0_DAT17__UART4_CTS_B 0x1b0b1 | ||
570 | >; | ||
571 | }; | ||
572 | |||
573 | pinctrl_uart5: uart5grp { | ||
574 | fsl,pins = < | ||
575 | MX6QDL_PAD_KEY_COL1__UART5_TX_DATA 0x1b0b1 | ||
576 | MX6QDL_PAD_KEY_ROW1__UART5_RX_DATA 0x1b0b1 | ||
577 | >; | ||
578 | }; | ||
579 | |||
580 | pinctrl_usbotg: usbotggrp { | ||
581 | fsl,pins = < | ||
582 | MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 | ||
583 | MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x1b0b0 /* PWR_EN */ | ||
584 | MX6QDL_PAD_KEY_COL4__GPIO4_IO14 0x1b0b0 /* OC */ | ||
585 | >; | ||
586 | }; | ||
587 | |||
588 | pinctrl_usdhc3: usdhc3grp { | ||
589 | fsl,pins = < | ||
590 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x17059 | ||
591 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10059 | ||
592 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x10059 | ||
593 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 | ||
594 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 | ||
595 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 | ||
596 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 | ||
597 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x17059 | ||
598 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x17059 | ||
599 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x17059 | ||
600 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x17059 | ||
601 | >; | ||
602 | }; | ||
603 | |||
604 | pinctrl_usdhc3_100mhz: usdhc3grp100mhz { | ||
605 | fsl,pins = < | ||
606 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170b9 | ||
607 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100b9 | ||
608 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x100b9 | ||
609 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170b9 | ||
610 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170b9 | ||
611 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170b9 | ||
612 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170b9 | ||
613 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170b9 | ||
614 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170b9 | ||
615 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170b9 | ||
616 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170b9 | ||
617 | >; | ||
618 | }; | ||
619 | |||
620 | pinctrl_usdhc3_200mhz: usdhc3grp200mhz { | ||
621 | fsl,pins = < | ||
622 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x170f9 | ||
623 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x100f9 | ||
624 | MX6QDL_PAD_SD3_RST__SD3_RESET 0x100f9 | ||
625 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x170f9 | ||
626 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x170f9 | ||
627 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x170f9 | ||
628 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x170f9 | ||
629 | MX6QDL_PAD_SD3_DAT4__SD3_DATA4 0x170f9 | ||
630 | MX6QDL_PAD_SD3_DAT5__SD3_DATA5 0x170f9 | ||
631 | MX6QDL_PAD_SD3_DAT6__SD3_DATA6 0x170f9 | ||
632 | MX6QDL_PAD_SD3_DAT7__SD3_DATA7 0x170f9 | ||
633 | >; | ||
634 | }; | ||
635 | |||
636 | pinctrl_wdog: wdoggrp { | ||
637 | fsl,pins = < | ||
638 | MX6QDL_PAD_DISP0_DAT8__WDOG1_B 0x1b0b0 | ||
639 | >; | ||
640 | }; | ||
641 | }; | ||
diff --git a/arch/arm/boot/dts/imx6qdl-icore.dtsi b/arch/arm/boot/dts/imx6qdl-icore.dtsi index 55bebfc9ad94..56d0c5d21cd0 100644 --- a/arch/arm/boot/dts/imx6qdl-icore.dtsi +++ b/arch/arm/boot/dts/imx6qdl-icore.dtsi | |||
@@ -48,6 +48,13 @@ | |||
48 | reg = <0x10000000 0x80000000>; | 48 | reg = <0x10000000 0x80000000>; |
49 | }; | 49 | }; |
50 | 50 | ||
51 | backlight { | ||
52 | compatible = "pwm-backlight"; | ||
53 | pwms = <&pwm3 0 100000>; | ||
54 | brightness-levels = <0 4 8 16 32 64 128 255>; | ||
55 | default-brightness-level = <7>; | ||
56 | }; | ||
57 | |||
51 | reg_3p3v: regulator-3p3v { | 58 | reg_3p3v: regulator-3p3v { |
52 | compatible = "regulator-fixed"; | 59 | compatible = "regulator-fixed"; |
53 | regulator-name = "3P3V"; | 60 | regulator-name = "3P3V"; |
@@ -136,6 +143,12 @@ | |||
136 | status = "okay"; | 143 | status = "okay"; |
137 | }; | 144 | }; |
138 | 145 | ||
146 | &pwm3 { | ||
147 | pinctrl-names = "default"; | ||
148 | pinctrl-0 = <&pinctrl_pwm3>; | ||
149 | status = "okay"; | ||
150 | }; | ||
151 | |||
139 | &uart4 { | 152 | &uart4 { |
140 | pinctrl-names = "default"; | 153 | pinctrl-names = "default"; |
141 | pinctrl-0 = <&pinctrl_uart4>; | 154 | pinctrl-0 = <&pinctrl_uart4>; |
@@ -246,6 +259,12 @@ | |||
246 | >; | 259 | >; |
247 | }; | 260 | }; |
248 | 261 | ||
262 | pinctrl_pwm3: pwm3grp { | ||
263 | fsl,pins = < | ||
264 | MX6QDL_PAD_SD4_DAT1__PWM3_OUT 0x1b0b1 | ||
265 | >; | ||
266 | }; | ||
267 | |||
249 | pinctrl_usbotg: usbotggrp { | 268 | pinctrl_usbotg: usbotggrp { |
250 | fsl,pins = < | 269 | fsl,pins = < |
251 | MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 | 270 | MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059 |
diff --git a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi index 63bf95ed8c88..58055ceec6dc 100644 --- a/arch/arm/boot/dts/imx6qdl-sabresd.dtsi +++ b/arch/arm/boot/dts/imx6qdl-sabresd.dtsi | |||
@@ -548,6 +548,18 @@ | |||
548 | status = "okay"; | 548 | status = "okay"; |
549 | }; | 549 | }; |
550 | 550 | ||
551 | ®_arm { | ||
552 | vin-supply = <&sw1a_reg>; | ||
553 | }; | ||
554 | |||
555 | ®_pu { | ||
556 | vin-supply = <&sw1c_reg>; | ||
557 | }; | ||
558 | |||
559 | ®_soc { | ||
560 | vin-supply = <&sw1c_reg>; | ||
561 | }; | ||
562 | |||
551 | &snvs_poweroff { | 563 | &snvs_poweroff { |
552 | status = "okay"; | 564 | status = "okay"; |
553 | }; | 565 | }; |
diff --git a/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi b/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi new file mode 100644 index 000000000000..5d94b5ee6aa0 --- /dev/null +++ b/arch/arm/boot/dts/imx6qdl-zii-rdu2.dtsi | |||
@@ -0,0 +1,932 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016-2017 Zodiac Inflight Innovations | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License | ||
11 | * version 2 as published by the Free Software Foundation. | ||
12 | * | ||
13 | * This file is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | * | ||
18 | * Or, alternatively, | ||
19 | * | ||
20 | * b) Permission is hereby granted, free of charge, to any person | ||
21 | * obtaining a copy of this software and associated documentation | ||
22 | * files (the "Software"), to deal in the Software without | ||
23 | * restriction, including without limitation the rights to use, | ||
24 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
25 | * sell copies of the Software, and to permit persons to whom the | ||
26 | * Software is furnished to do so, subject to the following | ||
27 | * conditions: | ||
28 | * | ||
29 | * The above copyright notice and this permission notice shall be | ||
30 | * included in all copies or substantial portions of the Software. | ||
31 | * | ||
32 | * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND, | ||
33 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
34 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
35 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
36 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
37 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
38 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
39 | * OTHER DEALINGS IN THE SOFTWARE. | ||
40 | */ | ||
41 | |||
42 | #include <dt-bindings/gpio/gpio.h> | ||
43 | #include <dt-bindings/sound/fsl-imx-audmux.h> | ||
44 | |||
45 | / { | ||
46 | chosen { | ||
47 | stdout-path = &uart1; | ||
48 | }; | ||
49 | |||
50 | aliases { | ||
51 | mdio-gpio0 = &mdio1; | ||
52 | }; | ||
53 | |||
54 | mdio1: mdio { | ||
55 | compatible = "virtual,mdio-gpio"; | ||
56 | #address-cells = <1>; | ||
57 | #size-cells = <0>; | ||
58 | pinctrl-names = "default"; | ||
59 | pinctrl-0 = <&pinctrl_mdio1>; | ||
60 | gpios = <&gpio6 5 GPIO_ACTIVE_HIGH | ||
61 | &gpio6 4 GPIO_ACTIVE_HIGH>; | ||
62 | }; | ||
63 | |||
64 | reg_28p0v: regulator-28p0v { | ||
65 | compatible = "regulator-fixed"; | ||
66 | regulator-name = "28V_IN"; | ||
67 | regulator-min-microvolt = <28000000>; | ||
68 | regulator-max-microvolt = <28000000>; | ||
69 | regulator-always-on; | ||
70 | }; | ||
71 | |||
72 | reg_12p0v: regulator-12p0v { | ||
73 | compatible = "regulator-fixed"; | ||
74 | vin-supply = <®_28p0v>; | ||
75 | regulator-name = "12V_MAIN"; | ||
76 | regulator-min-microvolt = <12000000>; | ||
77 | regulator-max-microvolt = <12000000>; | ||
78 | regulator-always-on; | ||
79 | }; | ||
80 | |||
81 | reg_5p0v_main: regulator-5p0v-main { | ||
82 | compatible = "regulator-fixed"; | ||
83 | vin-supply = <®_12p0v>; | ||
84 | regulator-name = "5V_MAIN"; | ||
85 | regulator-min-microvolt = <5000000>; | ||
86 | regulator-max-microvolt = <5000000>; | ||
87 | regulator-always-on; | ||
88 | }; | ||
89 | |||
90 | reg_5p0v_user_usb: regulator-5p0v-user-usb { | ||
91 | compatible = "regulator-fixed"; | ||
92 | pinctrl-names = "default"; | ||
93 | pinctrl-0 = <&pinctrl_reg_user_usb>; | ||
94 | vin-supply = <®_5p0v_main>; | ||
95 | regulator-name = "5V_USER_USB"; | ||
96 | regulator-min-microvolt = <5000000>; | ||
97 | regulator-max-microvolt = <5000000>; | ||
98 | gpio = <&gpio3 22 GPIO_ACTIVE_LOW>; | ||
99 | startup-delay-us = <1000>; | ||
100 | }; | ||
101 | |||
102 | reg_3p3v_pmic: regulator-3p3v-pmic { | ||
103 | compatible = "regulator-fixed"; | ||
104 | vin-supply = <®_12p0v>; | ||
105 | regulator-name = "PMIC_3V3"; | ||
106 | regulator-min-microvolt = <3300000>; | ||
107 | regulator-max-microvolt = <3300000>; | ||
108 | regulator-always-on; | ||
109 | }; | ||
110 | |||
111 | reg_3p3v: regulator-3p3v { | ||
112 | compatible = "regulator-fixed"; | ||
113 | vin-supply = <®_3p3v_pmic>; | ||
114 | regulator-name = "GEN_3V3"; | ||
115 | regulator-min-microvolt = <3300000>; | ||
116 | regulator-max-microvolt = <3300000>; | ||
117 | regulator-always-on; | ||
118 | }; | ||
119 | |||
120 | reg_3p3v_sd: regulator-3p3v-sd { | ||
121 | compatible = "regulator-fixed"; | ||
122 | pinctrl-names = "default"; | ||
123 | pinctrl-0 = <&pinctrl_reg_3p3v_sd>; | ||
124 | vin-supply = <®_3p3v>; | ||
125 | regulator-name = "3V3_SD"; | ||
126 | regulator-min-microvolt = <3300000>; | ||
127 | regulator-max-microvolt = <3300000>; | ||
128 | gpio = <&gpio7 8 GPIO_ACTIVE_HIGH>; | ||
129 | startup-delay-us = <1000>; | ||
130 | enable-active-high; | ||
131 | regulator-always-on; | ||
132 | }; | ||
133 | |||
134 | reg_3p3v_display: regulator-3p3v-display { | ||
135 | compatible = "regulator-fixed"; | ||
136 | vin-supply = <®_12p0v>; | ||
137 | regulator-name = "3V3_DISPLAY"; | ||
138 | regulator-min-microvolt = <3300000>; | ||
139 | regulator-max-microvolt = <3300000>; | ||
140 | regulator-always-on; | ||
141 | }; | ||
142 | |||
143 | reg_3p3v_ssd: regulator-3p3v-ssd { | ||
144 | compatible = "regulator-fixed"; | ||
145 | vin-supply = <®_12p0v>; | ||
146 | regulator-name = "3V3_SSD"; | ||
147 | regulator-min-microvolt = <3300000>; | ||
148 | regulator-max-microvolt = <3300000>; | ||
149 | regulator-always-on; | ||
150 | }; | ||
151 | |||
152 | sound1 { | ||
153 | compatible = "simple-audio-card"; | ||
154 | simple-audio-card,name = "Front"; | ||
155 | simple-audio-card,format = "i2s"; | ||
156 | simple-audio-card,bitclock-master = <&sound1_codec>; | ||
157 | simple-audio-card,frame-master = <&sound1_codec>; | ||
158 | simple-audio-card,widgets = | ||
159 | "Headphone", "Headphone Jack"; | ||
160 | simple-audio-card,routing = | ||
161 | "Headphone Jack", "HPLEFT", | ||
162 | "Headphone Jack", "HPRIGHT", | ||
163 | "LEFTIN", "HPL", | ||
164 | "RIGHTIN", "HPR"; | ||
165 | simple-audio-card,aux-devs = <&hpa1>; | ||
166 | |||
167 | sound1_cpu: simple-audio-card,cpu { | ||
168 | sound-dai = <&ssi2>; | ||
169 | }; | ||
170 | |||
171 | sound1_codec: simple-audio-card,codec { | ||
172 | sound-dai = <&codec1>; | ||
173 | clocks = <&cs2000>; | ||
174 | }; | ||
175 | }; | ||
176 | |||
177 | sound2 { | ||
178 | compatible = "simple-audio-card"; | ||
179 | simple-audio-card,name = "Back"; | ||
180 | simple-audio-card,format = "i2s"; | ||
181 | simple-audio-card,bitclock-master = <&sound2_codec>; | ||
182 | simple-audio-card,frame-master = <&sound2_codec>; | ||
183 | simple-audio-card,widgets = | ||
184 | "Headphone", "Headphone Jack"; | ||
185 | simple-audio-card,routing = | ||
186 | "Headphone Jack", "HPLEFT", | ||
187 | "Headphone Jack", "HPRIGHT", | ||
188 | "LEFTIN", "HPL", | ||
189 | "RIGHTIN", "HPR"; | ||
190 | simple-audio-card,aux-devs = <&hpa2>; | ||
191 | |||
192 | sound2_cpu: simple-audio-card,cpu { | ||
193 | sound-dai = <&ssi1>; | ||
194 | }; | ||
195 | |||
196 | sound2_codec: simple-audio-card,codec { | ||
197 | sound-dai = <&codec2>; | ||
198 | clocks = <&cs2000>; | ||
199 | }; | ||
200 | }; | ||
201 | |||
202 | panel { | ||
203 | power-supply = <®_3p3v_display>; | ||
204 | status = "disabled"; | ||
205 | |||
206 | port { | ||
207 | panel_in: endpoint { | ||
208 | remote-endpoint = <&lvds0_out>; | ||
209 | }; | ||
210 | }; | ||
211 | }; | ||
212 | |||
213 | disp0: disp0 { | ||
214 | #address-cells = <1>; | ||
215 | #size-cells = <0>; | ||
216 | compatible = "fsl,imx-parallel-display"; | ||
217 | pinctrl-names = "default"; | ||
218 | pinctrl-0 = <&pinctrl_disp0>; | ||
219 | status = "disabled"; | ||
220 | |||
221 | port@0 { | ||
222 | reg = <0>; | ||
223 | |||
224 | disp0_in_0: endpoint { | ||
225 | remote-endpoint = <&ipu1_di0_disp0>; | ||
226 | }; | ||
227 | }; | ||
228 | |||
229 | port@1 { | ||
230 | reg = <1>; | ||
231 | |||
232 | disp0_out: endpoint { | ||
233 | remote-endpoint = <&tc358767_in>; | ||
234 | }; | ||
235 | }; | ||
236 | }; | ||
237 | |||
238 | cs2000_ref: cs2000-ref { | ||
239 | compatible = "fixed-clock"; | ||
240 | #clock-cells = <0>; | ||
241 | clock-frequency = <24576000>; | ||
242 | }; | ||
243 | |||
244 | cs2000_in_dummy: cs2000-in-dummy { | ||
245 | compatible = "fixed-clock"; | ||
246 | #clock-cells = <0>; | ||
247 | clock-frequency = <0>; | ||
248 | }; | ||
249 | |||
250 | edp_refclk: edp-refclk { | ||
251 | compatible = "fixed-clock"; | ||
252 | #clock-cells = <0>; | ||
253 | clock-frequency = <19200000>; | ||
254 | }; | ||
255 | }; | ||
256 | |||
257 | ®_arm { | ||
258 | vin-supply = <&sw1a_reg>; | ||
259 | }; | ||
260 | |||
261 | ®_pu { | ||
262 | vin-supply = <&sw1c_reg>; | ||
263 | }; | ||
264 | |||
265 | ®_soc { | ||
266 | vin-supply = <&sw1c_reg>; | ||
267 | }; | ||
268 | |||
269 | &ldb { | ||
270 | lvds-channel@0 { | ||
271 | port@4 { | ||
272 | reg = <4>; | ||
273 | |||
274 | lvds0_out: endpoint { | ||
275 | remote-endpoint = <&panel_in>; | ||
276 | }; | ||
277 | }; | ||
278 | }; | ||
279 | }; | ||
280 | |||
281 | &uart1 { | ||
282 | pinctrl-names = "default"; | ||
283 | pinctrl-0 = <&pinctrl_uart1>; | ||
284 | status = "okay"; | ||
285 | }; | ||
286 | |||
287 | &uart3 { | ||
288 | pinctrl-names = "default"; | ||
289 | pinctrl-0 = <&pinctrl_uart3>; | ||
290 | uart-has-rtscts; | ||
291 | linux,rs485-enabled-at-boot-time; | ||
292 | status = "okay"; | ||
293 | }; | ||
294 | |||
295 | &uart4 { | ||
296 | pinctrl-names = "default"; | ||
297 | pinctrl-0 = <&pinctrl_uart4>; | ||
298 | status = "okay"; | ||
299 | }; | ||
300 | |||
301 | &ecspi1 { | ||
302 | pinctrl-names = "default"; | ||
303 | pinctrl-0 = <&pinctrl_ecspi1>; | ||
304 | cs-gpios = <&gpio2 30 GPIO_ACTIVE_HIGH>; | ||
305 | status = "okay"; | ||
306 | |||
307 | flash@0 { | ||
308 | compatible = "st,m25p128", "jedec,spi-nor"; | ||
309 | spi-max-frequency = <20000000>; | ||
310 | reg = <0>; | ||
311 | }; | ||
312 | }; | ||
313 | |||
314 | &i2c1 { | ||
315 | pinctrl-names = "default"; | ||
316 | pinctrl-0 = <&pinctrl_i2c1>; | ||
317 | clock-frequency = <100000>; | ||
318 | status = "okay"; | ||
319 | |||
320 | codec2: codec@18 { | ||
321 | compatible = "ti,tlv320dac3100"; | ||
322 | pinctrl-names = "default"; | ||
323 | pinctrl-0 = <&pinctrl_codec2>; | ||
324 | reg = <0x18>; | ||
325 | #sound-dai-cells = <0>; | ||
326 | HPVDD-supply = <®_3p3v>; | ||
327 | SPRVDD-supply = <®_3p3v>; | ||
328 | SPLVDD-supply = <®_3p3v>; | ||
329 | AVDD-supply = <®_3p3v>; | ||
330 | IOVDD-supply = <®_3p3v>; | ||
331 | DVDD-supply = <&vgen4_reg>; | ||
332 | gpio-reset = <&gpio1 2 GPIO_ACTIVE_HIGH>; | ||
333 | }; | ||
334 | |||
335 | accel@1c { | ||
336 | pinctrl-names = "default"; | ||
337 | pinctrl-0 = <&pinctrl_accel>; | ||
338 | compatible = "fsl,mma8451"; | ||
339 | reg = <0x1c>; | ||
340 | interrupt-parent = <&gpio1>; | ||
341 | interrupt-names = "int1", "int2"; | ||
342 | interrupts = <18 IRQ_TYPE_LEVEL_LOW>, <20 IRQ_TYPE_LEVEL_LOW>; | ||
343 | }; | ||
344 | |||
345 | hpa2: amp@60 { | ||
346 | compatible = "ti,tpa6130a2"; | ||
347 | pinctrl-names = "default"; | ||
348 | pinctrl-0 = <&pinctrl_tpa2>; | ||
349 | reg = <0x60>; | ||
350 | power-gpio = <&gpio1 5 GPIO_ACTIVE_HIGH>; | ||
351 | Vdd-supply = <®_5p0v_main>; | ||
352 | }; | ||
353 | |||
354 | edp-bridge@68 { | ||
355 | compatible = "toshiba,tc358767"; | ||
356 | pinctrl-names = "default"; | ||
357 | pinctrl-0 = <&pinctrl_tc358767>; | ||
358 | reg = <0x68>; | ||
359 | shutdown-gpios = <&gpio1 9 GPIO_ACTIVE_HIGH>; | ||
360 | clock-names = "ref"; | ||
361 | clocks = <&edp_refclk>; | ||
362 | status = "disabled"; | ||
363 | |||
364 | ports { | ||
365 | #address-cells = <1>; | ||
366 | #size-cells = <0>; | ||
367 | |||
368 | port@1 { | ||
369 | reg = <1>; | ||
370 | |||
371 | tc358767_in: endpoint { | ||
372 | remote-endpoint = <&disp0_out>; | ||
373 | }; | ||
374 | }; | ||
375 | }; | ||
376 | }; | ||
377 | }; | ||
378 | |||
379 | &i2c2 { | ||
380 | pinctrl-names = "default"; | ||
381 | pinctrl-0 = <&pinctrl_i2c2>; | ||
382 | clock-frequency = <100000>; | ||
383 | status = "okay"; | ||
384 | |||
385 | pmic@08 { | ||
386 | compatible = "fsl,pfuze100"; | ||
387 | pinctrl-names = "default"; | ||
388 | pinctrl-0 = <&pinctrl_pfuze100_irq>; | ||
389 | reg = <0x08>; | ||
390 | interrupt-parent = <&gpio7>; | ||
391 | interrupts = <13 IRQ_TYPE_LEVEL_LOW>; | ||
392 | |||
393 | regulators { | ||
394 | sw1a_reg: sw1ab { | ||
395 | regulator-min-microvolt = <300000>; | ||
396 | regulator-max-microvolt = <1875000>; | ||
397 | regulator-boot-on; | ||
398 | regulator-always-on; | ||
399 | regulator-ramp-delay = <6250>; | ||
400 | }; | ||
401 | |||
402 | sw1c_reg: sw1c { | ||
403 | regulator-min-microvolt = <300000>; | ||
404 | regulator-max-microvolt = <1875000>; | ||
405 | regulator-boot-on; | ||
406 | regulator-always-on; | ||
407 | regulator-ramp-delay = <6250>; | ||
408 | }; | ||
409 | |||
410 | sw2_reg: sw2 { | ||
411 | regulator-min-microvolt = <800000>; | ||
412 | regulator-max-microvolt = <3000000>; | ||
413 | regulator-boot-on; | ||
414 | regulator-always-on; | ||
415 | }; | ||
416 | |||
417 | sw3a_reg: sw3a { | ||
418 | regulator-min-microvolt = <400000>; | ||
419 | regulator-max-microvolt = <1500000>; | ||
420 | regulator-boot-on; | ||
421 | regulator-always-on; | ||
422 | }; | ||
423 | |||
424 | sw3b_reg: sw3b { | ||
425 | regulator-min-microvolt = <400000>; | ||
426 | regulator-max-microvolt = <1500000>; | ||
427 | regulator-boot-on; | ||
428 | regulator-always-on; | ||
429 | }; | ||
430 | |||
431 | sw4_reg: sw4 { | ||
432 | regulator-min-microvolt = <800000>; | ||
433 | regulator-max-microvolt = <1800000>; | ||
434 | regulator-boot-on; | ||
435 | regulator-always-on; | ||
436 | }; | ||
437 | |||
438 | snvs_reg: vsnvs { | ||
439 | regulator-min-microvolt = <1000000>; | ||
440 | regulator-max-microvolt = <3000000>; | ||
441 | regulator-boot-on; | ||
442 | regulator-always-on; | ||
443 | }; | ||
444 | |||
445 | vref_reg: vrefddr { | ||
446 | regulator-boot-on; | ||
447 | regulator-always-on; | ||
448 | }; | ||
449 | |||
450 | vgen2_reg: vgen2 { | ||
451 | regulator-min-microvolt = <1000000>; | ||
452 | regulator-max-microvolt = <1500000>; | ||
453 | regulator-always-on; | ||
454 | }; | ||
455 | |||
456 | vgen4_reg: vgen4 { | ||
457 | regulator-min-microvolt = <1200000>; | ||
458 | regulator-max-microvolt = <1800000>; | ||
459 | regulator-always-on; | ||
460 | }; | ||
461 | |||
462 | vgen5_reg: vgen5 { | ||
463 | regulator-min-microvolt = <1800000>; | ||
464 | regulator-max-microvolt = <2500000>; | ||
465 | regulator-always-on; | ||
466 | }; | ||
467 | |||
468 | vgen6_reg: vgen6 { | ||
469 | regulator-min-microvolt = <1800000>; | ||
470 | regulator-max-microvolt = <2800000>; | ||
471 | regulator-always-on; | ||
472 | }; | ||
473 | }; | ||
474 | }; | ||
475 | |||
476 | temp-sense@48 { | ||
477 | compatible = "national,lm75"; | ||
478 | reg = <0x48>; | ||
479 | }; | ||
480 | |||
481 | cs2000: clkgen@4e { | ||
482 | compatible = "cirrus,cs2000-cp"; | ||
483 | reg = <0x4e>; | ||
484 | #clock-cells = <0>; | ||
485 | clock-names = "clk_in", "ref_clk"; | ||
486 | clocks = <&cs2000_in_dummy>, <&cs2000_ref>; | ||
487 | assigned-clocks = <&cs2000>; | ||
488 | assigned-clock-rates = <24000000>; | ||
489 | }; | ||
490 | |||
491 | eeprom@54 { | ||
492 | compatible = "at,24c128"; | ||
493 | reg = <0x54>; | ||
494 | }; | ||
495 | |||
496 | rtc@68 { | ||
497 | compatible = "dallas,ds1341"; | ||
498 | reg = <0x68>; | ||
499 | }; | ||
500 | }; | ||
501 | |||
502 | &i2c3 { | ||
503 | pinctrl-names = "default"; | ||
504 | pinctrl-0 = <&pinctrl_i2c3>; | ||
505 | clock-frequency = <400000>; | ||
506 | status = "okay"; | ||
507 | |||
508 | codec1: codec@18 { | ||
509 | compatible = "ti,tlv320dac3100"; | ||
510 | pinctrl-names = "default"; | ||
511 | pinctrl-0 = <&pinctrl_codec1>; | ||
512 | reg = <0x18>; | ||
513 | #sound-dai-cells = <0>; | ||
514 | HPVDD-supply = <®_3p3v>; | ||
515 | SPRVDD-supply = <®_3p3v>; | ||
516 | SPLVDD-supply = <®_3p3v>; | ||
517 | AVDD-supply = <®_3p3v>; | ||
518 | IOVDD-supply = <®_3p3v>; | ||
519 | DVDD-supply = <&vgen4_reg>; | ||
520 | gpio-reset = <&gpio1 0 GPIO_ACTIVE_HIGH>; | ||
521 | }; | ||
522 | |||
523 | touchscreen@20 { | ||
524 | compatible = "syna,rmi4-i2c"; | ||
525 | pinctrl-names = "default"; | ||
526 | pinctrl-0 = <&pinctrl_ts>; | ||
527 | reg = <0x20>; | ||
528 | interrupt-parent = <&gpio1>; | ||
529 | interrupts = <8 IRQ_TYPE_LEVEL_LOW>; | ||
530 | vdd-supply = <®_5p0v_main>; | ||
531 | vio-supply = <®_3p3v>; | ||
532 | |||
533 | #address-cells = <1>; | ||
534 | #size-cells = <0>; | ||
535 | |||
536 | rmi4-f01@1 { | ||
537 | reg = <0x1>; | ||
538 | syna,nosleep-mode = <1>; | ||
539 | }; | ||
540 | |||
541 | rmi4-f11@11 { | ||
542 | reg = <0x11>; | ||
543 | touchscreen-inverted-y; | ||
544 | touchscreen-swapped-x-y; | ||
545 | syna,sensor-type = <1>; | ||
546 | }; | ||
547 | |||
548 | rmi4-f12@12 { | ||
549 | reg = <0x12>; | ||
550 | touchscreen-inverted-y; | ||
551 | touchscreen-swapped-x-y; | ||
552 | syna,sensor-type = <1>; | ||
553 | }; | ||
554 | }; | ||
555 | |||
556 | hpa1: amp@60 { | ||
557 | compatible = "ti,tpa6130a2"; | ||
558 | pinctrl-names = "default"; | ||
559 | pinctrl-0 = <&pinctrl_tpa1>; | ||
560 | reg = <0x60>; | ||
561 | power-gpio = <&gpio1 4 GPIO_ACTIVE_HIGH>; | ||
562 | Vdd-supply = <®_5p0v_main>; | ||
563 | }; | ||
564 | }; | ||
565 | |||
566 | &ipu1_di0_disp0 { | ||
567 | remote-endpoint = <&disp0_in_0>; | ||
568 | }; | ||
569 | |||
570 | &pcie { | ||
571 | pinctrl-names = "default"; | ||
572 | pinctrl-0 = <&pinctrl_pcie>; | ||
573 | reset-gpio = <&gpio7 12 GPIO_ACTIVE_LOW>; | ||
574 | status = "okay"; | ||
575 | }; | ||
576 | |||
577 | &usdhc2 { | ||
578 | pinctrl-names = "default"; | ||
579 | pinctrl-0 = <&pinctrl_usdhc2>; | ||
580 | bus-width = <4>; | ||
581 | cd-gpios = <&gpio2 2 GPIO_ACTIVE_LOW>; | ||
582 | wp-gpios = <&gpio2 3 GPIO_ACTIVE_HIGH>; | ||
583 | vmmc-supply = <®_3p3v_sd>; | ||
584 | vqmmc-supply = <®_3p3v>; | ||
585 | status = "okay"; | ||
586 | }; | ||
587 | |||
588 | &usdhc3 { | ||
589 | pinctrl-names = "default"; | ||
590 | pinctrl-0 = <&pinctrl_usdhc3>; | ||
591 | bus-width = <4>; | ||
592 | cd-gpios = <&gpio2 0 GPIO_ACTIVE_LOW>; | ||
593 | wp-gpios = <&gpio2 1 GPIO_ACTIVE_HIGH>; | ||
594 | vmmc-supply = <®_3p3v_sd>; | ||
595 | vqmmc-supply = <®_3p3v>; | ||
596 | status = "okay"; | ||
597 | }; | ||
598 | |||
599 | &usdhc4 { | ||
600 | pinctrl-names = "default"; | ||
601 | pinctrl-0 = <&pinctrl_usdhc4>; | ||
602 | bus-width = <8>; | ||
603 | vmmc-supply = <®_3p3v>; | ||
604 | vqmmc-supply = <®_3p3v>; | ||
605 | non-removable; | ||
606 | status = "okay"; | ||
607 | }; | ||
608 | |||
609 | &sata { | ||
610 | target-supply = <®_3p3v_ssd>; | ||
611 | status = "okay"; | ||
612 | }; | ||
613 | |||
614 | &fec { | ||
615 | pinctrl-names = "default"; | ||
616 | pinctrl-0 = <&pinctrl_enet>; | ||
617 | phy-mode = "rmii"; | ||
618 | phy-reset-gpios = <&gpio1 23 GPIO_ACTIVE_LOW>; | ||
619 | phy-reset-duration = <100>; | ||
620 | phy-supply = <®_3p3v>; | ||
621 | status = "okay"; | ||
622 | |||
623 | fixed-link { | ||
624 | speed = <100>; | ||
625 | full-duplex; | ||
626 | }; | ||
627 | }; | ||
628 | |||
629 | &usbh1 { | ||
630 | vbus-supply = <®_5p0v_main>; | ||
631 | status = "okay"; | ||
632 | }; | ||
633 | |||
634 | &usbotg { | ||
635 | vbus-supply = <®_5p0v_user_usb>; | ||
636 | disable-over-current; | ||
637 | dr_mode = "host"; | ||
638 | status = "okay"; | ||
639 | }; | ||
640 | |||
641 | &ssi1 { | ||
642 | status = "okay"; | ||
643 | }; | ||
644 | |||
645 | &ssi2 { | ||
646 | status = "okay"; | ||
647 | }; | ||
648 | |||
649 | &audmux { | ||
650 | pinctrl-names = "default"; | ||
651 | pinctrl-0 = <&pinctrl_audmux>; | ||
652 | status = "okay"; | ||
653 | |||
654 | ssi1 { | ||
655 | fsl,audmux-port = <0>; | ||
656 | fsl,port-config = < | ||
657 | (IMX_AUDMUX_V2_PTCR_SYN | | ||
658 | IMX_AUDMUX_V2_PTCR_TFSEL(2) | | ||
659 | IMX_AUDMUX_V2_PTCR_TCSEL(2) | | ||
660 | IMX_AUDMUX_V2_PTCR_TFSDIR | | ||
661 | IMX_AUDMUX_V2_PTCR_TCLKDIR) | ||
662 | IMX_AUDMUX_V2_PDCR_RXDSEL(2) | ||
663 | >; | ||
664 | }; | ||
665 | |||
666 | aud3 { | ||
667 | fsl,audmux-port = <2>; | ||
668 | fsl,port-config = < | ||
669 | IMX_AUDMUX_V2_PTCR_SYN | ||
670 | IMX_AUDMUX_V2_PDCR_RXDSEL(0) | ||
671 | >; | ||
672 | }; | ||
673 | |||
674 | ssi2 { | ||
675 | fsl,audmux-port = <1>; | ||
676 | fsl,port-config = < | ||
677 | (IMX_AUDMUX_V2_PTCR_SYN | | ||
678 | IMX_AUDMUX_V2_PTCR_TFSEL(4) | | ||
679 | IMX_AUDMUX_V2_PTCR_TCSEL(4) | | ||
680 | IMX_AUDMUX_V2_PTCR_TFSDIR | | ||
681 | IMX_AUDMUX_V2_PTCR_TCLKDIR) | ||
682 | IMX_AUDMUX_V2_PDCR_RXDSEL(4) | ||
683 | >; | ||
684 | }; | ||
685 | |||
686 | aud5 { | ||
687 | fsl,audmux-port = <4>; | ||
688 | fsl,port-config = < | ||
689 | IMX_AUDMUX_V2_PTCR_SYN | ||
690 | IMX_AUDMUX_V2_PDCR_RXDSEL(1) | ||
691 | >; | ||
692 | }; | ||
693 | }; | ||
694 | |||
695 | &iomuxc { | ||
696 | pinctrl_accel: accelgrp { | ||
697 | fsl,pins = < | ||
698 | MX6QDL_PAD_SD1_CMD__GPIO1_IO18 0x4001b000 | ||
699 | MX6QDL_PAD_SD1_CLK__GPIO1_IO20 0x4001b000 | ||
700 | >; | ||
701 | }; | ||
702 | |||
703 | pinctrl_audmux: audmuxgrp { | ||
704 | fsl,pins = < | ||
705 | MX6QDL_PAD_KEY_COL0__AUD5_TXC 0x130b0 | ||
706 | MX6QDL_PAD_KEY_ROW0__AUD5_TXD 0x130b0 | ||
707 | MX6QDL_PAD_KEY_COL1__AUD5_TXFS 0x130b0 | ||
708 | MX6QDL_PAD_CSI0_DAT4__AUD3_TXC 0x130b0 | ||
709 | MX6QDL_PAD_CSI0_DAT5__AUD3_TXD 0x130b0 | ||
710 | MX6QDL_PAD_CSI0_DAT6__AUD3_TXFS 0x130b0 | ||
711 | >; | ||
712 | }; | ||
713 | |||
714 | pinctrl_codec1: dac1grp { | ||
715 | fsl,pins = < | ||
716 | MX6QDL_PAD_GPIO_0__GPIO1_IO00 0x40000038 | ||
717 | >; | ||
718 | }; | ||
719 | |||
720 | pinctrl_codec2: dac2grp { | ||
721 | fsl,pins = < | ||
722 | MX6QDL_PAD_GPIO_2__GPIO1_IO02 0x40000038 | ||
723 | >; | ||
724 | }; | ||
725 | |||
726 | pinctrl_disp0: disp0grp { | ||
727 | fsl,pins = < | ||
728 | MX6QDL_PAD_DI0_DISP_CLK__IPU1_DI0_DISP_CLK 0x100f9 | ||
729 | MX6QDL_PAD_DI0_PIN15__IPU1_DI0_PIN15 0x100f9 | ||
730 | MX6QDL_PAD_DI0_PIN2__IPU1_DI0_PIN02 0x100f9 | ||
731 | MX6QDL_PAD_DI0_PIN3__IPU1_DI0_PIN03 0x100f9 | ||
732 | MX6QDL_PAD_DISP0_DAT0__IPU1_DISP0_DATA00 0x100f9 | ||
733 | MX6QDL_PAD_DISP0_DAT1__IPU1_DISP0_DATA01 0x100f9 | ||
734 | MX6QDL_PAD_DISP0_DAT2__IPU1_DISP0_DATA02 0x100f9 | ||
735 | MX6QDL_PAD_DISP0_DAT3__IPU1_DISP0_DATA03 0x100f9 | ||
736 | MX6QDL_PAD_DISP0_DAT4__IPU1_DISP0_DATA04 0x100f9 | ||
737 | MX6QDL_PAD_DISP0_DAT5__IPU1_DISP0_DATA05 0x100f9 | ||
738 | MX6QDL_PAD_DISP0_DAT6__IPU1_DISP0_DATA06 0x100f9 | ||
739 | MX6QDL_PAD_DISP0_DAT7__IPU1_DISP0_DATA07 0x100f9 | ||
740 | MX6QDL_PAD_DISP0_DAT8__IPU1_DISP0_DATA08 0x100f9 | ||
741 | MX6QDL_PAD_DISP0_DAT9__IPU1_DISP0_DATA09 0x100f9 | ||
742 | MX6QDL_PAD_DISP0_DAT10__IPU1_DISP0_DATA10 0x100f9 | ||
743 | MX6QDL_PAD_DISP0_DAT11__IPU1_DISP0_DATA11 0x100f9 | ||
744 | MX6QDL_PAD_DISP0_DAT12__IPU1_DISP0_DATA12 0x100f9 | ||
745 | MX6QDL_PAD_DISP0_DAT13__IPU1_DISP0_DATA13 0x100f9 | ||
746 | MX6QDL_PAD_DISP0_DAT14__IPU1_DISP0_DATA14 0x100f9 | ||
747 | MX6QDL_PAD_DISP0_DAT15__IPU1_DISP0_DATA15 0x100f9 | ||
748 | MX6QDL_PAD_DISP0_DAT16__IPU1_DISP0_DATA16 0x100f9 | ||
749 | MX6QDL_PAD_DISP0_DAT17__IPU1_DISP0_DATA17 0x100f9 | ||
750 | MX6QDL_PAD_DISP0_DAT18__IPU1_DISP0_DATA18 0x100f9 | ||
751 | MX6QDL_PAD_DISP0_DAT19__IPU1_DISP0_DATA19 0x100f9 | ||
752 | MX6QDL_PAD_DISP0_DAT20__IPU1_DISP0_DATA20 0x100f9 | ||
753 | MX6QDL_PAD_DISP0_DAT21__IPU1_DISP0_DATA21 0x100f9 | ||
754 | MX6QDL_PAD_DISP0_DAT22__IPU1_DISP0_DATA22 0x100f9 | ||
755 | MX6QDL_PAD_DISP0_DAT23__IPU1_DISP0_DATA23 0x100f9 | ||
756 | >; | ||
757 | }; | ||
758 | |||
759 | pinctrl_ecspi1: ecspi1grp { | ||
760 | fsl,pins = < | ||
761 | MX6QDL_PAD_EIM_D17__ECSPI1_MISO 0x100b1 | ||
762 | MX6QDL_PAD_EIM_D18__ECSPI1_MOSI 0x100b1 | ||
763 | MX6QDL_PAD_EIM_D16__ECSPI1_SCLK 0x100b1 | ||
764 | MX6QDL_PAD_EIM_EB2__GPIO2_IO30 0x1b0b1 | ||
765 | >; | ||
766 | }; | ||
767 | |||
768 | pinctrl_enet: enetgrp { | ||
769 | fsl,pins = < | ||
770 | MX6QDL_PAD_ENET_MDC__ENET_MDC 0x000b1 | ||
771 | MX6QDL_PAD_ENET_MDIO__ENET_MDIO 0x100b1 | ||
772 | MX6QDL_PAD_ENET_CRS_DV__ENET_RX_EN 0x100f5 | ||
773 | MX6QDL_PAD_ENET_TX_EN__ENET_TX_EN 0x100f5 | ||
774 | MX6QDL_PAD_ENET_RXD0__ENET_RX_DATA0 0x100c0 | ||
775 | MX6QDL_PAD_ENET_RXD1__ENET_RX_DATA1 0x100c0 | ||
776 | MX6QDL_PAD_ENET_TXD0__ENET_TX_DATA0 0x100f5 | ||
777 | MX6QDL_PAD_ENET_TXD1__ENET_TX_DATA1 0x100f5 | ||
778 | MX6QDL_PAD_GPIO_16__ENET_REF_CLK 0x40010040 | ||
779 | MX6QDL_PAD_ENET_RX_ER__ENET_RX_ER 0x100b0 | ||
780 | MX6QDL_PAD_ENET_REF_CLK__GPIO1_IO23 0x1b0b0 | ||
781 | >; | ||
782 | }; | ||
783 | |||
784 | pinctrl_i2c1: i2c1grp { | ||
785 | fsl,pins = < | ||
786 | MX6QDL_PAD_CSI0_DAT8__I2C1_SDA 0x4001b8b1 | ||
787 | MX6QDL_PAD_CSI0_DAT9__I2C1_SCL 0x4001b8b1 | ||
788 | >; | ||
789 | }; | ||
790 | |||
791 | pinctrl_i2c2: i2c2grp { | ||
792 | fsl,pins = < | ||
793 | MX6QDL_PAD_KEY_COL3__I2C2_SCL 0x4001b8b1 | ||
794 | MX6QDL_PAD_KEY_ROW3__I2C2_SDA 0x4001b8b1 | ||
795 | >; | ||
796 | }; | ||
797 | |||
798 | pinctrl_i2c3: i2c3grp { | ||
799 | fsl,pins = < | ||
800 | MX6QDL_PAD_GPIO_3__I2C3_SCL 0x4001b8b1 | ||
801 | MX6QDL_PAD_GPIO_6__I2C3_SDA 0x4001b8b1 | ||
802 | >; | ||
803 | }; | ||
804 | |||
805 | pinctrl_mdio1: bitbangmdiogrp { | ||
806 | fsl,pins = < | ||
807 | /* Bitbang MDIO for DEB Switch */ | ||
808 | MX6QDL_PAD_CSI0_DAT19__GPIO6_IO05 0x4001b030 | ||
809 | MX6QDL_PAD_CSI0_DAT18__GPIO6_IO04 0x40018830 | ||
810 | >; | ||
811 | }; | ||
812 | |||
813 | pinctrl_pcie: pciegrp { | ||
814 | fsl,pins = < | ||
815 | MX6QDL_PAD_GPIO_17__GPIO7_IO12 0x10038 | ||
816 | >; | ||
817 | }; | ||
818 | |||
819 | pinctrl_pfuze100_irq: pfuze100grp { | ||
820 | fsl,pins = < | ||
821 | MX6QDL_PAD_GPIO_18__GPIO7_IO13 0x40010000 | ||
822 | >; | ||
823 | }; | ||
824 | |||
825 | pinctrl_reg_3p3v_sd: mmcsupply1grp { | ||
826 | fsl,pins = < | ||
827 | MX6QDL_PAD_SD3_RST__GPIO7_IO08 0x858 | ||
828 | >; | ||
829 | }; | ||
830 | |||
831 | pinctrl_reg_user_usb: usbotggrp { | ||
832 | fsl,pins = < | ||
833 | MX6QDL_PAD_EIM_D22__GPIO3_IO22 0x40000038 | ||
834 | >; | ||
835 | }; | ||
836 | |||
837 | pinctrl_rmii_phy_irq: phygrp { | ||
838 | fsl,pins = < | ||
839 | MX6QDL_PAD_EIM_D30__GPIO3_IO30 0x40010000 | ||
840 | >; | ||
841 | }; | ||
842 | |||
843 | pinctrl_tc358767: tc358767grp { | ||
844 | fsl,pins = < | ||
845 | MX6QDL_PAD_GPIO_9__GPIO1_IO09 0x10 | ||
846 | >; | ||
847 | }; | ||
848 | |||
849 | pinctrl_tpa1: tpa6130-1grp { | ||
850 | fsl,pins = < | ||
851 | MX6QDL_PAD_GPIO_4__GPIO1_IO04 0x40000038 | ||
852 | >; | ||
853 | }; | ||
854 | |||
855 | pinctrl_tpa2: tpa6130-2grp { | ||
856 | fsl,pins = < | ||
857 | MX6QDL_PAD_GPIO_5__GPIO1_IO05 0x40000038 | ||
858 | >; | ||
859 | }; | ||
860 | |||
861 | pinctrl_ts: tsgrp { | ||
862 | fsl,pins = < | ||
863 | MX6QDL_PAD_GPIO_8__GPIO1_IO08 0x1b0b0 | ||
864 | MX6QDL_PAD_GPIO_7__GPIO1_IO07 0x1b0b0 | ||
865 | >; | ||
866 | }; | ||
867 | |||
868 | pinctrl_uart1: uart1grp { | ||
869 | fsl,pins = < | ||
870 | MX6QDL_PAD_CSI0_DAT10__UART1_TX_DATA 0x1b0b1 | ||
871 | MX6QDL_PAD_CSI0_DAT11__UART1_RX_DATA 0x1b0b1 | ||
872 | >; | ||
873 | }; | ||
874 | |||
875 | pinctrl_uart3: uart3grp { | ||
876 | fsl,pins = < | ||
877 | MX6QDL_PAD_EIM_D24__UART3_TX_DATA 0x1b0b1 | ||
878 | MX6QDL_PAD_EIM_D25__UART3_RX_DATA 0x1b0b1 | ||
879 | MX6QDL_PAD_EIM_D31__UART3_RTS_B 0x1b0b1 | ||
880 | >; | ||
881 | }; | ||
882 | |||
883 | pinctrl_uart4: uart4grp { | ||
884 | fsl,pins = < | ||
885 | MX6QDL_PAD_CSI0_DAT12__UART4_TX_DATA 0x1b0b1 | ||
886 | MX6QDL_PAD_CSI0_DAT13__UART4_RX_DATA 0x1b0b1 | ||
887 | >; | ||
888 | }; | ||
889 | |||
890 | pinctrl_usdhc2: usdhc2grp { | ||
891 | fsl,pins = < | ||
892 | MX6QDL_PAD_SD2_CMD__SD2_CMD 0x10059 | ||
893 | MX6QDL_PAD_SD2_CLK__SD2_CLK 0x10069 | ||
894 | MX6QDL_PAD_SD2_DAT0__SD2_DATA0 0x17059 | ||
895 | MX6QDL_PAD_SD2_DAT1__SD2_DATA1 0x17059 | ||
896 | MX6QDL_PAD_SD2_DAT2__SD2_DATA2 0x17059 | ||
897 | MX6QDL_PAD_SD2_DAT3__SD2_DATA3 0x17059 | ||
898 | MX6QDL_PAD_NANDF_D3__GPIO2_IO03 0x40010040 | ||
899 | MX6QDL_PAD_NANDF_D2__GPIO2_IO02 0x40010040 | ||
900 | >; | ||
901 | }; | ||
902 | |||
903 | pinctrl_usdhc3: usdhc3grp { | ||
904 | fsl,pins = < | ||
905 | MX6QDL_PAD_SD3_CMD__SD3_CMD 0x10059 | ||
906 | MX6QDL_PAD_SD3_CLK__SD3_CLK 0x10069 | ||
907 | MX6QDL_PAD_SD3_DAT0__SD3_DATA0 0x17059 | ||
908 | MX6QDL_PAD_SD3_DAT1__SD3_DATA1 0x17059 | ||
909 | MX6QDL_PAD_SD3_DAT2__SD3_DATA2 0x17059 | ||
910 | MX6QDL_PAD_SD3_DAT3__SD3_DATA3 0x17059 | ||
911 | MX6QDL_PAD_NANDF_D1__GPIO2_IO01 0x40010040 | ||
912 | MX6QDL_PAD_NANDF_D0__GPIO2_IO00 0x40010040 | ||
913 | |||
914 | >; | ||
915 | }; | ||
916 | |||
917 | pinctrl_usdhc4: usdhc4grp { | ||
918 | fsl,pins = < | ||
919 | MX6QDL_PAD_SD4_CMD__SD4_CMD 0x17059 | ||
920 | MX6QDL_PAD_SD4_CLK__SD4_CLK 0x10059 | ||
921 | MX6QDL_PAD_SD4_DAT0__SD4_DATA0 0x17059 | ||
922 | MX6QDL_PAD_SD4_DAT1__SD4_DATA1 0x17059 | ||
923 | MX6QDL_PAD_SD4_DAT2__SD4_DATA2 0x17059 | ||
924 | MX6QDL_PAD_SD4_DAT3__SD4_DATA3 0x17059 | ||
925 | MX6QDL_PAD_SD4_DAT4__SD4_DATA4 0x17059 | ||
926 | MX6QDL_PAD_SD4_DAT5__SD4_DATA5 0x17059 | ||
927 | MX6QDL_PAD_SD4_DAT6__SD4_DATA6 0x17059 | ||
928 | MX6QDL_PAD_SD4_DAT7__SD4_DATA7 0x17059 | ||
929 | MX6QDL_PAD_NANDF_ALE__SD4_RESET 0x1b0b1 | ||
930 | >; | ||
931 | }; | ||
932 | }; | ||
diff --git a/arch/arm/boot/dts/imx6qdl.dtsi b/arch/arm/boot/dts/imx6qdl.dtsi index 6d7bf6496117..e426faa9c243 100644 --- a/arch/arm/boot/dts/imx6qdl.dtsi +++ b/arch/arm/boot/dts/imx6qdl.dtsi | |||
@@ -197,7 +197,7 @@ | |||
197 | arm,shared-override; | 197 | arm,shared-override; |
198 | }; | 198 | }; |
199 | 199 | ||
200 | pcie: pcie@0x01000000 { | 200 | pcie: pcie@1ffc000 { |
201 | compatible = "fsl,imx6q-pcie", "snps,dw-pcie"; | 201 | compatible = "fsl,imx6q-pcie", "snps,dw-pcie"; |
202 | reg = <0x01ffc000 0x04000>, | 202 | reg = <0x01ffc000 0x04000>, |
203 | <0x01f00000 0x80000>; | 203 | <0x01f00000 0x80000>; |
@@ -205,6 +205,7 @@ | |||
205 | #address-cells = <3>; | 205 | #address-cells = <3>; |
206 | #size-cells = <2>; | 206 | #size-cells = <2>; |
207 | device_type = "pci"; | 207 | device_type = "pci"; |
208 | bus-range = <0x00 0xff>; | ||
208 | ranges = <0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */ | 209 | ranges = <0x81000000 0 0 0x01f80000 0 0x00010000 /* downstream I/O */ |
209 | 0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */ | 210 | 0x82000000 0 0x01000000 0x01000000 0 0x00f00000>; /* non-prefetchable memory */ |
210 | num-lanes = <1>; | 211 | num-lanes = <1>; |
diff --git a/arch/arm/boot/dts/imx6qp-nitrogen6_som2.dts b/arch/arm/boot/dts/imx6qp-nitrogen6_som2.dts new file mode 100644 index 000000000000..011726c836cd --- /dev/null +++ b/arch/arm/boot/dts/imx6qp-nitrogen6_som2.dts | |||
@@ -0,0 +1,55 @@ | |||
1 | /* | ||
2 | * Copyright 2017 Boundary Devices, Inc. | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | /dts-v1/; | ||
44 | |||
45 | #include "imx6qp.dtsi" | ||
46 | #include "imx6qdl-nitrogen6_som2.dtsi" | ||
47 | |||
48 | / { | ||
49 | model = "Boundary Devices i.MX6 Quad Plus Nitrogen6_SOM2 Board"; | ||
50 | compatible = "boundary,imx6qp-nitrogen6_som2", "fsl,imx6qp"; | ||
51 | }; | ||
52 | |||
53 | &sata { | ||
54 | status = "okay"; | ||
55 | }; | ||
diff --git a/arch/arm/boot/dts/imx6qp-sabresd.dts b/arch/arm/boot/dts/imx6qp-sabresd.dts index b23458062f5e..a8a5004dd9c8 100644 --- a/arch/arm/boot/dts/imx6qp-sabresd.dts +++ b/arch/arm/boot/dts/imx6qp-sabresd.dts | |||
@@ -50,8 +50,8 @@ | |||
50 | compatible = "fsl,imx6qp-sabresd", "fsl,imx6qp"; | 50 | compatible = "fsl,imx6qp-sabresd", "fsl,imx6qp"; |
51 | }; | 51 | }; |
52 | 52 | ||
53 | &cpu0 { | 53 | ®_arm { |
54 | arm-supply = <&sw2_reg>; | 54 | vin-supply = <&sw2_reg>; |
55 | }; | 55 | }; |
56 | 56 | ||
57 | &iomuxc { | 57 | &iomuxc { |
diff --git a/arch/arm/boot/dts/imx6qp-zii-rdu2.dts b/arch/arm/boot/dts/imx6qp-zii-rdu2.dts new file mode 100644 index 000000000000..882b3bd97e07 --- /dev/null +++ b/arch/arm/boot/dts/imx6qp-zii-rdu2.dts | |||
@@ -0,0 +1,50 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016-2017 Zodiac Inflight Innovations | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License | ||
11 | * version 2 as published by the Free Software Foundation. | ||
12 | * | ||
13 | * This file is distributed in the hope that it will be useful, | ||
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
16 | * GNU General Public License for more details. | ||
17 | * | ||
18 | * Or, alternatively, | ||
19 | * | ||
20 | * b) Permission is hereby granted, free of charge, to any person | ||
21 | * obtaining a copy of this software and associated documentation | ||
22 | * files (the "Software"), to deal in the Software without | ||
23 | * restriction, including without limitation the rights to use, | ||
24 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
25 | * sell copies of the Software, and to permit persons to whom the | ||
26 | * Software is furnished to do so, subject to the following | ||
27 | * conditions: | ||
28 | * | ||
29 | * The above copyright notice and this permission notice shall be | ||
30 | * included in all copies or substantial portions of the Software. | ||
31 | * | ||
32 | * THE SOFTWARE IS PROVIDED , WITHOUT WARRANTY OF ANY KIND, | ||
33 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
34 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
35 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
36 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
37 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
38 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
39 | * OTHER DEALINGS IN THE SOFTWARE. | ||
40 | */ | ||
41 | |||
42 | /dts-v1/; | ||
43 | |||
44 | #include <imx6qp.dtsi> | ||
45 | #include <imx6qdl-zii-rdu2.dtsi> | ||
46 | |||
47 | / { | ||
48 | model = "ZII RDU2+ Board"; | ||
49 | compatible = "zii,imx6qp-zii-rdu2", "fsl,imx6qp"; | ||
50 | }; | ||
diff --git a/arch/arm/boot/dts/imx6qp.dtsi b/arch/arm/boot/dts/imx6qp.dtsi index 24d071f5d9cd..59453f2ac4ba 100644 --- a/arch/arm/boot/dts/imx6qp.dtsi +++ b/arch/arm/boot/dts/imx6qp.dtsi | |||
@@ -56,40 +56,59 @@ | |||
56 | clocks = <&clks IMX6QDL_CLK_OCRAM>; | 56 | clocks = <&clks IMX6QDL_CLK_OCRAM>; |
57 | }; | 57 | }; |
58 | 58 | ||
59 | ipu1: ipu@02400000 { | 59 | aips-bus@02100000 { |
60 | compatible = "fsl,imx6qp-ipu", "fsl,imx6q-ipu"; | 60 | pre1: pre@21c8000 { |
61 | clocks = <&clks IMX6QDL_CLK_IPU1>, | 61 | compatible = "fsl,imx6qp-pre"; |
62 | <&clks IMX6QDL_CLK_IPU1_DI0>, <&clks IMX6QDL_CLK_IPU1_DI1>, | 62 | reg = <0x021c8000 0x1000>; |
63 | <&clks IMX6QDL_CLK_IPU1_DI0_SEL>, <&clks IMX6QDL_CLK_IPU1_DI1_SEL>, | 63 | interrupts = <GIC_SPI 90 IRQ_TYPE_EDGE_RISING>; |
64 | <&clks IMX6QDL_CLK_LDB_DI0_PODF>, <&clks IMX6QDL_CLK_LDB_DI1_PODF>, | 64 | clocks = <&clks IMX6QDL_CLK_PRE0>; |
65 | <&clks IMX6QDL_CLK_PRG0_APB>; | 65 | clock-names = "axi"; |
66 | clock-names = "bus", | 66 | fsl,iram = <&ocram2>; |
67 | "di0", "di1", | 67 | }; |
68 | "di0_sel", "di1_sel", | ||
69 | "ldb_di0", "ldb_di1", "prg"; | ||
70 | }; | ||
71 | 68 | ||
72 | ipu2: ipu@02800000 { | 69 | pre2: pre@21c9000 { |
73 | compatible = "fsl,imx6qp-ipu", "fsl,imx6q-ipu"; | 70 | compatible = "fsl,imx6qp-pre"; |
74 | clocks = <&clks IMX6QDL_CLK_IPU2>, | 71 | reg = <0x021c9000 0x1000>; |
75 | <&clks IMX6QDL_CLK_IPU2_DI0>, <&clks IMX6QDL_CLK_IPU2_DI1>, | 72 | interrupts = <GIC_SPI 97 IRQ_TYPE_EDGE_RISING>; |
76 | <&clks IMX6QDL_CLK_IPU2_DI0_SEL>, <&clks IMX6QDL_CLK_IPU2_DI1_SEL>, | 73 | clocks = <&clks IMX6QDL_CLK_PRE1>; |
77 | <&clks IMX6QDL_CLK_LDB_DI0_PODF>, <&clks IMX6QDL_CLK_LDB_DI1_PODF>, | 74 | clock-names = "axi"; |
78 | <&clks IMX6QDL_CLK_PRG1_APB>; | 75 | fsl,iram = <&ocram2>; |
79 | clock-names = "bus", | 76 | }; |
80 | "di0", "di1", | ||
81 | "di0_sel", "di1_sel", | ||
82 | "ldb_di0", "ldb_di1", "prg"; | ||
83 | }; | ||
84 | 77 | ||
85 | pcie: pcie@0x01000000 { | 78 | pre3: pre@21ca000 { |
86 | compatible = "fsl,imx6qp-pcie", "snps,dw-pcie"; | 79 | compatible = "fsl,imx6qp-pre"; |
87 | }; | 80 | reg = <0x021ca000 0x1000>; |
81 | interrupts = <GIC_SPI 98 IRQ_TYPE_EDGE_RISING>; | ||
82 | clocks = <&clks IMX6QDL_CLK_PRE2>; | ||
83 | clock-names = "axi"; | ||
84 | fsl,iram = <&ocram3>; | ||
85 | }; | ||
88 | 86 | ||
89 | aips-bus@02100000 { | 87 | pre4: pre@21cb000 { |
90 | mmdc0: mmdc@021b0000 { /* MMDC0 */ | 88 | compatible = "fsl,imx6qp-pre"; |
91 | compatible = "fsl,imx6qp-mmdc", "fsl,imx6q-mmdc"; | 89 | reg = <0x021cb000 0x1000>; |
92 | reg = <0x021b0000 0x4000>; | 90 | interrupts = <GIC_SPI 99 IRQ_TYPE_EDGE_RISING>; |
91 | clocks = <&clks IMX6QDL_CLK_PRE3>; | ||
92 | clock-names = "axi"; | ||
93 | fsl,iram = <&ocram3>; | ||
94 | }; | ||
95 | |||
96 | prg1: prg@21cc000 { | ||
97 | compatible = "fsl,imx6qp-prg"; | ||
98 | reg = <0x021cc000 0x1000>; | ||
99 | clocks = <&clks IMX6QDL_CLK_PRG0_APB>, | ||
100 | <&clks IMX6QDL_CLK_PRG0_AXI>; | ||
101 | clock-names = "ipg", "axi"; | ||
102 | fsl,pres = <&pre1>, <&pre2>, <&pre3>; | ||
103 | }; | ||
104 | |||
105 | prg2: prg@21cd000 { | ||
106 | compatible = "fsl,imx6qp-prg"; | ||
107 | reg = <0x021cd000 0x1000>; | ||
108 | clocks = <&clks IMX6QDL_CLK_PRG1_APB>, | ||
109 | <&clks IMX6QDL_CLK_PRG1_AXI>; | ||
110 | clock-names = "ipg", "axi"; | ||
111 | fsl,pres = <&pre4>, <&pre2>, <&pre3>; | ||
93 | }; | 112 | }; |
94 | }; | 113 | }; |
95 | }; | 114 | }; |
@@ -101,6 +120,16 @@ | |||
101 | <0 119 IRQ_TYPE_LEVEL_HIGH>; | 120 | <0 119 IRQ_TYPE_LEVEL_HIGH>; |
102 | }; | 121 | }; |
103 | 122 | ||
123 | &ipu1 { | ||
124 | compatible = "fsl,imx6qp-ipu", "fsl,imx6q-ipu"; | ||
125 | fsl,prg = <&prg1>; | ||
126 | }; | ||
127 | |||
128 | &ipu2 { | ||
129 | compatible = "fsl,imx6qp-ipu", "fsl,imx6q-ipu"; | ||
130 | fsl,prg = <&prg2>; | ||
131 | }; | ||
132 | |||
104 | &ldb { | 133 | &ldb { |
105 | clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, <&clks IMX6QDL_CLK_LDB_DI1_SEL>, | 134 | clocks = <&clks IMX6QDL_CLK_LDB_DI0_SEL>, <&clks IMX6QDL_CLK_LDB_DI1_SEL>, |
106 | <&clks IMX6QDL_CLK_IPU1_DI0_SEL>, <&clks IMX6QDL_CLK_IPU1_DI1_SEL>, | 135 | <&clks IMX6QDL_CLK_IPU1_DI0_SEL>, <&clks IMX6QDL_CLK_IPU1_DI1_SEL>, |
@@ -110,3 +139,11 @@ | |||
110 | "di0_sel", "di1_sel", "di2_sel", "di3_sel", | 139 | "di0_sel", "di1_sel", "di2_sel", "di3_sel", |
111 | "di0", "di1"; | 140 | "di0", "di1"; |
112 | }; | 141 | }; |
142 | |||
143 | &mmdc0 { | ||
144 | compatible = "fsl,imx6qp-mmdc", "fsl,imx6q-mmdc"; | ||
145 | }; | ||
146 | |||
147 | &pcie { | ||
148 | compatible = "fsl,imx6qp-pcie", "snps,dw-pcie"; | ||
149 | }; | ||
diff --git a/arch/arm/boot/dts/imx6sx.dtsi b/arch/arm/boot/dts/imx6sx.dtsi index dd4ec85ecbaa..3f1416be4c36 100644 --- a/arch/arm/boot/dts/imx6sx.dtsi +++ b/arch/arm/boot/dts/imx6sx.dtsi | |||
@@ -297,7 +297,8 @@ | |||
297 | }; | 297 | }; |
298 | 298 | ||
299 | uart1: serial@02020000 { | 299 | uart1: serial@02020000 { |
300 | compatible = "fsl,imx6sx-uart", "fsl,imx21-uart"; | 300 | compatible = "fsl,imx6sx-uart", |
301 | "fsl,imx6q-uart", "fsl,imx21-uart"; | ||
301 | reg = <0x02020000 0x4000>; | 302 | reg = <0x02020000 0x4000>; |
302 | interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; | 303 | interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; |
303 | clocks = <&clks IMX6SX_CLK_UART_IPG>, | 304 | clocks = <&clks IMX6SX_CLK_UART_IPG>, |
@@ -1053,7 +1054,8 @@ | |||
1053 | }; | 1054 | }; |
1054 | 1055 | ||
1055 | uart2: serial@021e8000 { | 1056 | uart2: serial@021e8000 { |
1056 | compatible = "fsl,imx6sx-uart", "fsl,imx21-uart"; | 1057 | compatible = "fsl,imx6sx-uart", |
1058 | "fsl,imx6q-uart", "fsl,imx21-uart"; | ||
1057 | reg = <0x021e8000 0x4000>; | 1059 | reg = <0x021e8000 0x4000>; |
1058 | interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; | 1060 | interrupts = <GIC_SPI 27 IRQ_TYPE_LEVEL_HIGH>; |
1059 | clocks = <&clks IMX6SX_CLK_UART_IPG>, | 1061 | clocks = <&clks IMX6SX_CLK_UART_IPG>, |
@@ -1065,7 +1067,8 @@ | |||
1065 | }; | 1067 | }; |
1066 | 1068 | ||
1067 | uart3: serial@021ec000 { | 1069 | uart3: serial@021ec000 { |
1068 | compatible = "fsl,imx6sx-uart", "fsl,imx21-uart"; | 1070 | compatible = "fsl,imx6sx-uart", |
1071 | "fsl,imx6q-uart", "fsl,imx21-uart"; | ||
1069 | reg = <0x021ec000 0x4000>; | 1072 | reg = <0x021ec000 0x4000>; |
1070 | interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; | 1073 | interrupts = <GIC_SPI 28 IRQ_TYPE_LEVEL_HIGH>; |
1071 | clocks = <&clks IMX6SX_CLK_UART_IPG>, | 1074 | clocks = <&clks IMX6SX_CLK_UART_IPG>, |
@@ -1077,7 +1080,8 @@ | |||
1077 | }; | 1080 | }; |
1078 | 1081 | ||
1079 | uart4: serial@021f0000 { | 1082 | uart4: serial@021f0000 { |
1080 | compatible = "fsl,imx6sx-uart", "fsl,imx21-uart"; | 1083 | compatible = "fsl,imx6sx-uart", |
1084 | "fsl,imx6q-uart", "fsl,imx21-uart"; | ||
1081 | reg = <0x021f0000 0x4000>; | 1085 | reg = <0x021f0000 0x4000>; |
1082 | interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; | 1086 | interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; |
1083 | clocks = <&clks IMX6SX_CLK_UART_IPG>, | 1087 | clocks = <&clks IMX6SX_CLK_UART_IPG>, |
@@ -1089,7 +1093,8 @@ | |||
1089 | }; | 1093 | }; |
1090 | 1094 | ||
1091 | uart5: serial@021f4000 { | 1095 | uart5: serial@021f4000 { |
1092 | compatible = "fsl,imx6sx-uart", "fsl,imx21-uart"; | 1096 | compatible = "fsl,imx6sx-uart", |
1097 | "fsl,imx6q-uart", "fsl,imx21-uart"; | ||
1093 | reg = <0x021f4000 0x4000>; | 1098 | reg = <0x021f4000 0x4000>; |
1094 | interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; | 1099 | interrupts = <GIC_SPI 30 IRQ_TYPE_LEVEL_HIGH>; |
1095 | clocks = <&clks IMX6SX_CLK_UART_IPG>, | 1100 | clocks = <&clks IMX6SX_CLK_UART_IPG>, |
@@ -1229,7 +1234,8 @@ | |||
1229 | }; | 1234 | }; |
1230 | 1235 | ||
1231 | uart6: serial@022a0000 { | 1236 | uart6: serial@022a0000 { |
1232 | compatible = "fsl,imx6sx-uart", "fsl,imx21-uart"; | 1237 | compatible = "fsl,imx6sx-uart", |
1238 | "fsl,imx6q-uart", "fsl,imx21-uart"; | ||
1233 | reg = <0x022a0000 0x4000>; | 1239 | reg = <0x022a0000 0x4000>; |
1234 | interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; | 1240 | interrupts = <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; |
1235 | clocks = <&clks IMX6SX_CLK_UART_IPG>, | 1241 | clocks = <&clks IMX6SX_CLK_UART_IPG>, |
@@ -1281,7 +1287,7 @@ | |||
1281 | }; | 1287 | }; |
1282 | }; | 1288 | }; |
1283 | 1289 | ||
1284 | pcie: pcie@0x08000000 { | 1290 | pcie: pcie@8ffc000 { |
1285 | compatible = "fsl,imx6sx-pcie", "snps,dw-pcie"; | 1291 | compatible = "fsl,imx6sx-pcie", "snps,dw-pcie"; |
1286 | reg = <0x08ffc000 0x4000>; /* DBI */ | 1292 | reg = <0x08ffc000 0x4000>; /* DBI */ |
1287 | #address-cells = <3>; | 1293 | #address-cells = <3>; |
@@ -1293,6 +1299,7 @@ | |||
1293 | 0x81000000 0 0 0x08f80000 0 0x00010000 | 1299 | 0x81000000 0 0 0x08f80000 0 0x00010000 |
1294 | /* non-prefetchable memory */ | 1300 | /* non-prefetchable memory */ |
1295 | 0x82000000 0 0x08000000 0x08000000 0 0x00f00000>; | 1301 | 0x82000000 0 0x08000000 0x08000000 0 0x00f00000>; |
1302 | bus-range = <0x00 0xff>; | ||
1296 | num-lanes = <1>; | 1303 | num-lanes = <1>; |
1297 | interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; | 1304 | interrupts = <GIC_SPI 123 IRQ_TYPE_LEVEL_HIGH>; |
1298 | clocks = <&clks IMX6SX_CLK_PCIE_REF_125M>, | 1305 | clocks = <&clks IMX6SX_CLK_PCIE_REF_125M>, |
diff --git a/arch/arm/boot/dts/imx6ul-14x14-evk.dts b/arch/arm/boot/dts/imx6ul-14x14-evk.dts index 00f98e5bfcaf..f18e1f1d0ce2 100644 --- a/arch/arm/boot/dts/imx6ul-14x14-evk.dts +++ b/arch/arm/boot/dts/imx6ul-14x14-evk.dts | |||
@@ -85,11 +85,6 @@ | |||
85 | assigned-clock-rates = <786432000>; | 85 | assigned-clock-rates = <786432000>; |
86 | }; | 86 | }; |
87 | 87 | ||
88 | &cpu0 { | ||
89 | arm-supply = <®_arm>; | ||
90 | soc-supply = <®_soc>; | ||
91 | }; | ||
92 | |||
93 | &i2c2 { | 88 | &i2c2 { |
94 | clock_frequency = <100000>; | 89 | clock_frequency = <100000>; |
95 | pinctrl-names = "default"; | 90 | pinctrl-names = "default"; |
diff --git a/arch/arm/boot/dts/imx6ul-geam.dtsi b/arch/arm/boot/dts/imx6ul-geam.dtsi index 940aef67313b..eb94d956808b 100644 --- a/arch/arm/boot/dts/imx6ul-geam.dtsi +++ b/arch/arm/boot/dts/imx6ul-geam.dtsi | |||
@@ -49,6 +49,23 @@ | |||
49 | reg = <0x80000000 0x08000000>; | 49 | reg = <0x80000000 0x08000000>; |
50 | }; | 50 | }; |
51 | 51 | ||
52 | backlight { | ||
53 | compatible = "pwm-backlight"; | ||
54 | pwms = <&pwm8 0 100000>; | ||
55 | brightness-levels = < 0 1 2 3 4 5 6 7 8 9 | ||
56 | 10 11 12 13 14 15 16 17 18 19 | ||
57 | 20 21 22 23 24 25 26 27 28 29 | ||
58 | 30 31 32 33 34 35 36 37 38 39 | ||
59 | 40 41 42 43 44 45 46 47 48 49 | ||
60 | 50 51 52 53 54 55 56 57 58 59 | ||
61 | 60 61 62 63 64 65 66 67 68 69 | ||
62 | 70 71 72 73 74 75 76 77 78 79 | ||
63 | 80 81 82 83 84 85 86 87 88 89 | ||
64 | 90 91 92 93 94 95 96 97 98 99 | ||
65 | 100>; | ||
66 | default-brightness-level = <100>; | ||
67 | }; | ||
68 | |||
52 | chosen { | 69 | chosen { |
53 | stdout-path = &uart1; | 70 | stdout-path = &uart1; |
54 | }; | 71 | }; |
@@ -143,12 +160,24 @@ | |||
143 | display = <&display0>; | 160 | display = <&display0>; |
144 | }; | 161 | }; |
145 | 162 | ||
163 | &pwm8 { | ||
164 | pinctrl-names = "default"; | ||
165 | pinctrl-0 = <&pinctrl_pwm8>; | ||
166 | status = "okay"; | ||
167 | }; | ||
168 | |||
146 | &tsc { | 169 | &tsc { |
147 | pinctrl-names = "default"; | 170 | pinctrl-names = "default"; |
148 | pinctrl-0 = <&pinctrl_tsc>; | 171 | pinctrl-0 = <&pinctrl_tsc>; |
149 | xnur-gpio = <&gpio1 3 GPIO_ACTIVE_LOW>; | 172 | xnur-gpio = <&gpio1 3 GPIO_ACTIVE_LOW>; |
150 | }; | 173 | }; |
151 | 174 | ||
175 | &sai2 { | ||
176 | pinctrl-names = "default"; | ||
177 | pinctrl-0 = <&pinctrl_sai2>; | ||
178 | status = "okay"; | ||
179 | }; | ||
180 | |||
152 | &uart1 { | 181 | &uart1 { |
153 | pinctrl-names = "default"; | 182 | pinctrl-names = "default"; |
154 | pinctrl-0 = <&pinctrl_uart1>; | 183 | pinctrl-0 = <&pinctrl_uart1>; |
@@ -290,6 +319,12 @@ | |||
290 | >; | 319 | >; |
291 | }; | 320 | }; |
292 | 321 | ||
322 | pinctrl_pwm8: pwm8grp { | ||
323 | fsl,pins = < | ||
324 | MX6UL_PAD_ENET1_RX_ER__PWM8_OUT 0x110b0 | ||
325 | >; | ||
326 | }; | ||
327 | |||
293 | pinctrl_tsc: tscgrp { | 328 | pinctrl_tsc: tscgrp { |
294 | fsl,pin = < | 329 | fsl,pin = < |
295 | MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0xb0 | 330 | MX6UL_PAD_GPIO1_IO01__GPIO1_IO01 0xb0 |
@@ -299,6 +334,16 @@ | |||
299 | >; | 334 | >; |
300 | }; | 335 | }; |
301 | 336 | ||
337 | pinctrl_sai2: sai2grp { | ||
338 | fsl,pins = < | ||
339 | MX6UL_PAD_JTAG_TCK__SAI2_RX_DATA 0x130b0 | ||
340 | MX6UL_PAD_JTAG_TMS__CCM_CLKO1 0x4001b031 | ||
341 | MX6UL_PAD_JTAG_TDI__SAI2_TX_BCLK 0x17088 | ||
342 | MX6UL_PAD_JTAG_TDO__SAI2_TX_SYNC 0x17088 | ||
343 | MX6UL_PAD_JTAG_TRST_B__SAI2_TX_DATA 0x120b0 | ||
344 | >; | ||
345 | }; | ||
346 | |||
302 | pinctrl_uart1: uart1grp { | 347 | pinctrl_uart1: uart1grp { |
303 | fsl,pins = < | 348 | fsl,pins = < |
304 | MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 | 349 | MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 |
diff --git a/arch/arm/boot/dts/imx6ul-isiot-common.dtsi b/arch/arm/boot/dts/imx6ul-isiot-common.dtsi new file mode 100644 index 000000000000..2beaab6e272e --- /dev/null +++ b/arch/arm/boot/dts/imx6ul-isiot-common.dtsi | |||
@@ -0,0 +1,141 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2016 Amarula Solutions B.V. | ||
3 | * Copyright (C) 2016 Engicam S.r.l. | ||
4 | * | ||
5 | * This file is dual-licensed: you can use it either under the terms | ||
6 | * of the GPL or the X11 license, at your option. Note that this dual | ||
7 | * licensing only applies to this file, and not this project as a | ||
8 | * whole. | ||
9 | * | ||
10 | * a) This file is free software; you can redistribute it and/or | ||
11 | * modify it under the terms of the GNU General Public License | ||
12 | * version 2 as published by the Free Software Foundation. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | &i2c1 { | ||
44 | stmpe811: gpio-expander@44 { | ||
45 | compatible = "st,stmpe811"; | ||
46 | reg = <0x44>; | ||
47 | #address-cells = <1>; | ||
48 | #size-cells = <0>; | ||
49 | pinctrl-names = "default"; | ||
50 | pinctrl-0 = <&pinctrl_stmpe>; | ||
51 | interrupt-parent = <&gpio1>; | ||
52 | interrupts = <18 IRQ_TYPE_EDGE_FALLING>; | ||
53 | interrupt-controller; | ||
54 | #interrupt-cells = <2>; | ||
55 | |||
56 | stmpe: touchscreen { | ||
57 | compatible = "st,stmpe-ts"; | ||
58 | st,sample-time = <4>; | ||
59 | st,mod-12b = <1>; | ||
60 | st,ref-sel = <0>; | ||
61 | st,adc-freq = <1>; | ||
62 | st,ave-ctrl = <1>; | ||
63 | st,touch-det-delay = <2>; | ||
64 | st,settling = <2>; | ||
65 | st,fraction-z = <7>; | ||
66 | st,i-drive = <1>; | ||
67 | }; | ||
68 | }; | ||
69 | }; | ||
70 | |||
71 | &lcdif { | ||
72 | pinctrl-names = "default"; | ||
73 | pinctrl-0 = <&pinctrl_lcdif_dat | ||
74 | &pinctrl_lcdif_ctrl>; | ||
75 | display = <&display0>; | ||
76 | status = "okay"; | ||
77 | |||
78 | display0: display { | ||
79 | bits-per-pixel = <16>; | ||
80 | bus-width = <18>; | ||
81 | |||
82 | display-timings { | ||
83 | native-mode = <&timing0>; | ||
84 | timing0: timing0 { | ||
85 | clock-frequency = <28000000>; | ||
86 | hactive = <800>; | ||
87 | vactive = <480>; | ||
88 | hfront-porch = <30>; | ||
89 | hback-porch = <30>; | ||
90 | hsync-len = <64>; | ||
91 | vback-porch = <5>; | ||
92 | vfront-porch = <5>; | ||
93 | vsync-len = <20>; | ||
94 | hsync-active = <0>; | ||
95 | vsync-active = <0>; | ||
96 | de-active = <1>; | ||
97 | pixelclk-active = <0>; | ||
98 | }; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
102 | |||
103 | &iomuxc { | ||
104 | pinctrl_lcdif_ctrl: lcdifctrlgrp { | ||
105 | fsl,pins = < | ||
106 | MX6UL_PAD_LCD_CLK__LCDIF_CLK 0x79 | ||
107 | MX6UL_PAD_LCD_ENABLE__LCDIF_ENABLE 0x79 | ||
108 | MX6UL_PAD_LCD_HSYNC__LCDIF_HSYNC 0x79 | ||
109 | MX6UL_PAD_LCD_VSYNC__LCDIF_VSYNC 0x79 | ||
110 | >; | ||
111 | }; | ||
112 | |||
113 | pinctrl_lcdif_dat: lcdifdatgrp { | ||
114 | fsl,pins = < | ||
115 | MX6UL_PAD_LCD_DATA00__LCDIF_DATA00 0x79 | ||
116 | MX6UL_PAD_LCD_DATA01__LCDIF_DATA01 0x79 | ||
117 | MX6UL_PAD_LCD_DATA02__LCDIF_DATA02 0x79 | ||
118 | MX6UL_PAD_LCD_DATA03__LCDIF_DATA03 0x79 | ||
119 | MX6UL_PAD_LCD_DATA04__LCDIF_DATA04 0x79 | ||
120 | MX6UL_PAD_LCD_DATA05__LCDIF_DATA05 0x79 | ||
121 | MX6UL_PAD_LCD_DATA06__LCDIF_DATA06 0x79 | ||
122 | MX6UL_PAD_LCD_DATA07__LCDIF_DATA07 0x79 | ||
123 | MX6UL_PAD_LCD_DATA08__LCDIF_DATA08 0x79 | ||
124 | MX6UL_PAD_LCD_DATA09__LCDIF_DATA09 0x79 | ||
125 | MX6UL_PAD_LCD_DATA10__LCDIF_DATA10 0x79 | ||
126 | MX6UL_PAD_LCD_DATA11__LCDIF_DATA11 0x79 | ||
127 | MX6UL_PAD_LCD_DATA12__LCDIF_DATA12 0x79 | ||
128 | MX6UL_PAD_LCD_DATA13__LCDIF_DATA13 0x79 | ||
129 | MX6UL_PAD_LCD_DATA14__LCDIF_DATA14 0x79 | ||
130 | MX6UL_PAD_LCD_DATA15__LCDIF_DATA15 0x79 | ||
131 | MX6UL_PAD_LCD_DATA16__LCDIF_DATA16 0x79 | ||
132 | MX6UL_PAD_LCD_DATA17__LCDIF_DATA17 0x79 | ||
133 | >; | ||
134 | }; | ||
135 | |||
136 | pinctrl_stmpe: stmpegrp { | ||
137 | fsl,pins = < | ||
138 | MX6UL_PAD_UART1_CTS_B__GPIO1_IO18 0x1b0b0 | ||
139 | >; | ||
140 | }; | ||
141 | }; | ||
diff --git a/arch/arm/boot/dts/imx6ul-isiot-emmc.dts b/arch/arm/boot/dts/imx6ul-isiot-emmc.dts index f5b422898e61..73a1d0f0b9d5 100644 --- a/arch/arm/boot/dts/imx6ul-isiot-emmc.dts +++ b/arch/arm/boot/dts/imx6ul-isiot-emmc.dts | |||
@@ -43,6 +43,7 @@ | |||
43 | /dts-v1/; | 43 | /dts-v1/; |
44 | 44 | ||
45 | #include "imx6ul-isiot.dtsi" | 45 | #include "imx6ul-isiot.dtsi" |
46 | #include "imx6ul-isiot-common.dtsi" | ||
46 | 47 | ||
47 | / { | 48 | / { |
48 | model = "Engicam Is.IoT MX6UL eMMC Starter kit"; | 49 | model = "Engicam Is.IoT MX6UL eMMC Starter kit"; |
diff --git a/arch/arm/boot/dts/imx6ul-isiot-nand.dts b/arch/arm/boot/dts/imx6ul-isiot-nand.dts index de15e1c75dd1..da29a86eb6a8 100644 --- a/arch/arm/boot/dts/imx6ul-isiot-nand.dts +++ b/arch/arm/boot/dts/imx6ul-isiot-nand.dts | |||
@@ -43,6 +43,7 @@ | |||
43 | /dts-v1/; | 43 | /dts-v1/; |
44 | 44 | ||
45 | #include "imx6ul-isiot.dtsi" | 45 | #include "imx6ul-isiot.dtsi" |
46 | #include "imx6ul-isiot-common.dtsi" | ||
46 | 47 | ||
47 | / { | 48 | / { |
48 | model = "Engicam Is.IoT MX6UL NAND Starter kit"; | 49 | model = "Engicam Is.IoT MX6UL NAND Starter kit"; |
diff --git a/arch/arm/boot/dts/imx6ul-isiot.dtsi b/arch/arm/boot/dts/imx6ul-isiot.dtsi index 0b43699af3e3..ea30380ad7a4 100644 --- a/arch/arm/boot/dts/imx6ul-isiot.dtsi +++ b/arch/arm/boot/dts/imx6ul-isiot.dtsi | |||
@@ -52,6 +52,49 @@ | |||
52 | chosen { | 52 | chosen { |
53 | stdout-path = &uart1; | 53 | stdout-path = &uart1; |
54 | }; | 54 | }; |
55 | |||
56 | backlight { | ||
57 | compatible = "pwm-backlight"; | ||
58 | pwms = <&pwm8 0 100000>; | ||
59 | brightness-levels = < 0 1 2 3 4 5 6 7 8 9 | ||
60 | 10 11 12 13 14 15 16 17 18 19 | ||
61 | 20 21 22 23 24 25 26 27 28 29 | ||
62 | 30 31 32 33 34 35 36 37 38 39 | ||
63 | 40 41 42 43 44 45 46 47 48 49 | ||
64 | 50 51 52 53 54 55 56 57 58 59 | ||
65 | 60 61 62 63 64 65 66 67 68 69 | ||
66 | 70 71 72 73 74 75 76 77 78 79 | ||
67 | 80 81 82 83 84 85 86 87 88 89 | ||
68 | 90 91 92 93 94 95 96 97 98 99 | ||
69 | 100>; | ||
70 | default-brightness-level = <100>; | ||
71 | }; | ||
72 | }; | ||
73 | |||
74 | &i2c1 { | ||
75 | clock-frequency = <100000>; | ||
76 | pinctrl-names = "default"; | ||
77 | pinctrl-0 = <&pinctrl_i2c1>; | ||
78 | status = "okay"; | ||
79 | }; | ||
80 | |||
81 | &i2c2 { | ||
82 | clock_frequency = <100000>; | ||
83 | pinctrl-names = "default"; | ||
84 | pinctrl-0 = <&pinctrl_i2c2>; | ||
85 | status = "okay"; | ||
86 | }; | ||
87 | |||
88 | &pwm8 { | ||
89 | pinctrl-names = "default"; | ||
90 | pinctrl-0 = <&pinctrl_pwm8>; | ||
91 | status = "okay"; | ||
92 | }; | ||
93 | |||
94 | &sai2 { | ||
95 | pinctrl-names = "default"; | ||
96 | pinctrl-0 = <&pinctrl_sai2>; | ||
97 | status = "okay"; | ||
55 | }; | 98 | }; |
56 | 99 | ||
57 | &uart1 { | 100 | &uart1 { |
@@ -72,6 +115,36 @@ | |||
72 | }; | 115 | }; |
73 | 116 | ||
74 | &iomuxc { | 117 | &iomuxc { |
118 | pinctrl_i2c1: i2c1grp { | ||
119 | fsl,pins = < | ||
120 | MX6UL_PAD_UART4_TX_DATA__I2C1_SCL 0x4001b8b0 | ||
121 | MX6UL_PAD_UART4_RX_DATA__I2C1_SDA 0x4001b8b0 | ||
122 | >; | ||
123 | }; | ||
124 | |||
125 | pinctrl_i2c2: i2c2grp { | ||
126 | fsl,pins = < | ||
127 | MX6UL_PAD_GPIO1_IO00__I2C2_SCL 0x4001b8b0 | ||
128 | MX6UL_PAD_GPIO1_IO01__I2C2_SDA 0x4001b8b0 | ||
129 | >; | ||
130 | }; | ||
131 | |||
132 | pinctrl_pwm8: pwm8grp { | ||
133 | fsl,pins = < | ||
134 | MX6UL_PAD_ENET1_RX_ER__PWM8_OUT 0x110b0 | ||
135 | >; | ||
136 | }; | ||
137 | |||
138 | pinctrl_sai2: sai2grp { | ||
139 | fsl,pins = < | ||
140 | MX6UL_PAD_JTAG_TCK__SAI2_RX_DATA 0x130b0 | ||
141 | MX6UL_PAD_JTAG_TMS__CCM_CLKO1 0x4001b031 | ||
142 | MX6UL_PAD_JTAG_TDI__SAI2_TX_BCLK 0x17088 | ||
143 | MX6UL_PAD_JTAG_TDO__SAI2_TX_SYNC 0x17088 | ||
144 | MX6UL_PAD_JTAG_TRST_B__SAI2_TX_DATA 0x120b0 | ||
145 | >; | ||
146 | }; | ||
147 | |||
75 | pinctrl_uart1: uart1grp { | 148 | pinctrl_uart1: uart1grp { |
76 | fsl,pins = < | 149 | fsl,pins = < |
77 | MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 | 150 | MX6UL_PAD_UART1_TX_DATA__UART1_DCE_TX 0x1b0b1 |
diff --git a/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi b/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi index 373ee19196a6..18bebd6d8d47 100644 --- a/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi +++ b/arch/arm/boot/dts/imx7-colibri-eval-v3.dtsi | |||
@@ -44,11 +44,39 @@ | |||
44 | chosen { | 44 | chosen { |
45 | stdout-path = "serial0:115200n8"; | 45 | stdout-path = "serial0:115200n8"; |
46 | }; | 46 | }; |
47 | |||
48 | panel: panel { | ||
49 | compatible = "edt,et057090dhu"; | ||
50 | backlight = <&bl>; | ||
51 | power-supply = <®_3v3>; | ||
52 | |||
53 | port { | ||
54 | panel_in: endpoint { | ||
55 | remote-endpoint = <&lcdif_out>; | ||
56 | }; | ||
57 | }; | ||
58 | }; | ||
59 | |||
60 | reg_3v3: regulator-3v3 { | ||
61 | compatible = "regulator-fixed"; | ||
62 | regulator-name = "3.3V"; | ||
63 | regulator-min-microvolt = <3300000>; | ||
64 | regulator-max-microvolt = <3300000>; | ||
65 | }; | ||
66 | |||
67 | reg_5v0: regulator-5v0 { | ||
68 | compatible = "regulator-fixed"; | ||
69 | regulator-name = "5V"; | ||
70 | regulator-min-microvolt = <5000000>; | ||
71 | regulator-max-microvolt = <5000000>; | ||
72 | }; | ||
47 | }; | 73 | }; |
48 | 74 | ||
49 | &bl { | 75 | &bl { |
50 | brightness-levels = <0 4 8 16 32 64 128 255>; | 76 | brightness-levels = <0 4 8 16 32 64 128 255>; |
51 | default-brightness-level = <6>; | 77 | default-brightness-level = <6>; |
78 | power-supply = <®_3v3>; | ||
79 | |||
52 | status = "okay"; | 80 | status = "okay"; |
53 | }; | 81 | }; |
54 | 82 | ||
@@ -75,32 +103,11 @@ | |||
75 | }; | 103 | }; |
76 | 104 | ||
77 | &lcdif { | 105 | &lcdif { |
78 | display = <&display0>; | ||
79 | status = "okay"; | 106 | status = "okay"; |
80 | 107 | ||
81 | display0: lcd-display { | 108 | port { |
82 | bits-per-pixel = <16>; | 109 | lcdif_out: endpoint { |
83 | bus-width = <18>; | 110 | remote-endpoint = <&panel_in>; |
84 | |||
85 | display-timings { | ||
86 | native-mode = <&timing_vga>; | ||
87 | |||
88 | /* Standard VGA timing */ | ||
89 | timing_vga: 640x480 { | ||
90 | clock-frequency = <25175000>; | ||
91 | hactive = <640>; | ||
92 | vactive = <480>; | ||
93 | hback-porch = <40>; | ||
94 | hfront-porch = <24>; | ||
95 | vback-porch = <32>; | ||
96 | vfront-porch = <11>; | ||
97 | hsync-len = <96>; | ||
98 | vsync-len = <2>; | ||
99 | de-active = <1>; | ||
100 | hsync-active = <0>; | ||
101 | vsync-active = <0>; | ||
102 | pixelclk-active = <0>; | ||
103 | }; | ||
104 | }; | 111 | }; |
105 | }; | 112 | }; |
106 | }; | 113 | }; |
diff --git a/arch/arm/boot/dts/imx7-colibri.dtsi b/arch/arm/boot/dts/imx7-colibri.dtsi index a171545478be..2d87489f9105 100644 --- a/arch/arm/boot/dts/imx7-colibri.dtsi +++ b/arch/arm/boot/dts/imx7-colibri.dtsi | |||
@@ -60,13 +60,6 @@ | |||
60 | regulator-max-microvolt = <3300000>; | 60 | regulator-max-microvolt = <3300000>; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | reg_vref_1v8: regulator-vref-1v8 { | ||
64 | compatible = "regulator-fixed"; | ||
65 | regulator-name = "vref-1v8"; | ||
66 | regulator-min-microvolt = <1800000>; | ||
67 | regulator-max-microvolt = <1800000>; | ||
68 | }; | ||
69 | |||
70 | sound { | 63 | sound { |
71 | compatible = "simple-audio-card"; | 64 | compatible = "simple-audio-card"; |
72 | simple-audio-card,name = "imx7-sgtl5000"; | 65 | simple-audio-card,name = "imx7-sgtl5000"; |
@@ -85,11 +78,11 @@ | |||
85 | }; | 78 | }; |
86 | 79 | ||
87 | &adc1 { | 80 | &adc1 { |
88 | vref-supply = <®_vref_1v8>; | 81 | vref-supply = <®_DCDC3>; |
89 | }; | 82 | }; |
90 | 83 | ||
91 | &adc2 { | 84 | &adc2 { |
92 | vref-supply = <®_vref_1v8>; | 85 | vref-supply = <®_DCDC3>; |
93 | }; | 86 | }; |
94 | 87 | ||
95 | &cpu0 { | 88 | &cpu0 { |
@@ -151,29 +144,29 @@ | |||
151 | 144 | ||
152 | regulators { | 145 | regulators { |
153 | reg_DCDC1: DCDC1 { /* V1.0_SOC */ | 146 | reg_DCDC1: DCDC1 { /* V1.0_SOC */ |
154 | regulator-min-microvolt = <975000>; | 147 | regulator-min-microvolt = <1000000>; |
155 | regulator-max-microvolt = <1125000>; | 148 | regulator-max-microvolt = <1100000>; |
156 | regulator-boot-on; | 149 | regulator-boot-on; |
157 | regulator-always-on; | 150 | regulator-always-on; |
158 | }; | 151 | }; |
159 | 152 | ||
160 | reg_DCDC2: DCDC2 { /* V1.1_ARM */ | 153 | reg_DCDC2: DCDC2 { /* V1.1_ARM */ |
161 | regulator-min-microvolt = <975000>; | 154 | regulator-min-microvolt = <975000>; |
162 | regulator-max-microvolt = <1125000>; | 155 | regulator-max-microvolt = <1100000>; |
163 | regulator-boot-on; | 156 | regulator-boot-on; |
164 | regulator-always-on; | 157 | regulator-always-on; |
165 | }; | 158 | }; |
166 | 159 | ||
167 | reg_DCDC3: DCDC3 { /* V1.8 */ | 160 | reg_DCDC3: DCDC3 { /* V1.8 */ |
168 | regulator-min-microvolt = <1775000>; | 161 | regulator-min-microvolt = <1800000>; |
169 | regulator-max-microvolt = <1825000>; | 162 | regulator-max-microvolt = <1800000>; |
170 | regulator-boot-on; | 163 | regulator-boot-on; |
171 | regulator-always-on; | 164 | regulator-always-on; |
172 | }; | 165 | }; |
173 | 166 | ||
174 | reg_DCDC4: DCDC4 { /* V1.35_DRAM */ | 167 | reg_DCDC4: DCDC4 { /* V1.35_DRAM */ |
175 | regulator-min-microvolt = <1325000>; | 168 | regulator-min-microvolt = <1350000>; |
176 | regulator-max-microvolt = <1375000>; | 169 | regulator-max-microvolt = <1350000>; |
177 | regulator-boot-on; | 170 | regulator-boot-on; |
178 | regulator-always-on; | 171 | regulator-always-on; |
179 | }; | 172 | }; |
@@ -181,33 +174,33 @@ | |||
181 | reg_LDO1: LDO1 { /* PWR_EN_+V3.3_ETH */ | 174 | reg_LDO1: LDO1 { /* PWR_EN_+V3.3_ETH */ |
182 | regulator-min-microvolt = <1800000>; | 175 | regulator-min-microvolt = <1800000>; |
183 | regulator-max-microvolt = <3300000>; | 176 | regulator-max-microvolt = <3300000>; |
184 | regulator-always-on; | 177 | regulator-boot-on; |
185 | }; | 178 | }; |
186 | 179 | ||
187 | reg_LDO2: LDO2 { /* +V1.8_SD */ | 180 | reg_LDO2: LDO2 { /* +V1.8_SD */ |
188 | regulator-min-microvolt = <1775000>; | 181 | regulator-min-microvolt = <1800000>; |
189 | regulator-max-microvolt = <3325000>; | 182 | regulator-max-microvolt = <3300000>; |
190 | regulator-boot-on; | 183 | regulator-boot-on; |
191 | regulator-always-on; | 184 | regulator-always-on; |
192 | }; | 185 | }; |
193 | 186 | ||
194 | reg_LDO3: LDO3 { /* PWR_EN_+V3.3_LPSR */ | 187 | reg_LDO3: LDO3 { /* PWR_EN_+V3.3_LPSR */ |
195 | regulator-min-microvolt = <3275000>; | 188 | regulator-min-microvolt = <3300000>; |
196 | regulator-max-microvolt = <3325000>; | 189 | regulator-max-microvolt = <3300000>; |
197 | regulator-boot-on; | 190 | regulator-boot-on; |
198 | regulator-always-on; | 191 | regulator-always-on; |
199 | }; | 192 | }; |
200 | 193 | ||
201 | reg_LDO4: LDO4 { /* V1.8_LPSR */ | 194 | reg_LDO4: LDO4 { /* V1.8_LPSR */ |
202 | regulator-min-microvolt = <1775000>; | 195 | regulator-min-microvolt = <1800000>; |
203 | regulator-max-microvolt = <1825000>; | 196 | regulator-max-microvolt = <1800000>; |
204 | regulator-boot-on; | 197 | regulator-boot-on; |
205 | regulator-always-on; | 198 | regulator-always-on; |
206 | }; | 199 | }; |
207 | 200 | ||
208 | reg_LDO5: LDO5 { /* PWR_EN_+V3.3 */ | 201 | reg_LDO5: LDO5 { /* PWR_EN_+V3.3 */ |
209 | regulator-min-microvolt = <1775000>; | 202 | regulator-min-microvolt = <3300000>; |
210 | regulator-max-microvolt = <1825000>; | 203 | regulator-max-microvolt = <3300000>; |
211 | regulator-boot-on; | 204 | regulator-boot-on; |
212 | regulator-always-on; | 205 | regulator-always-on; |
213 | }; | 206 | }; |
diff --git a/arch/arm/boot/dts/imx7d-colibri-eval-v3.dts b/arch/arm/boot/dts/imx7d-colibri-eval-v3.dts index bd01d2cc642d..a608a14d8c85 100644 --- a/arch/arm/boot/dts/imx7d-colibri-eval-v3.dts +++ b/arch/arm/boot/dts/imx7d-colibri-eval-v3.dts | |||
@@ -57,6 +57,7 @@ | |||
57 | regulator-min-microvolt = <5000000>; | 57 | regulator-min-microvolt = <5000000>; |
58 | regulator-max-microvolt = <5000000>; | 58 | regulator-max-microvolt = <5000000>; |
59 | gpio = <&gpio4 7 GPIO_ACTIVE_LOW>; | 59 | gpio = <&gpio4 7 GPIO_ACTIVE_LOW>; |
60 | vin-supply = <®_5v0>; | ||
60 | }; | 61 | }; |
61 | }; | 62 | }; |
62 | 63 | ||
diff --git a/arch/arm/boot/dts/imx7d-sdb-sht11.dts b/arch/arm/boot/dts/imx7d-sdb-sht11.dts new file mode 100644 index 000000000000..64a20ed1713a --- /dev/null +++ b/arch/arm/boot/dts/imx7d-sdb-sht11.dts | |||
@@ -0,0 +1,74 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2015 Freescale Semiconductor, Inc. | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | #include "imx7d-sdb.dts" | ||
44 | |||
45 | / { | ||
46 | sensor { | ||
47 | pinctrl-names = "default"; | ||
48 | pinctrl-0 = <&pinctrl_sensor>; | ||
49 | compatible = "sensirion,sht15"; | ||
50 | clk-gpios = <&gpio4 12 0>; | ||
51 | data-gpios = <&gpio4 13 0>; | ||
52 | vcc-supply = <®_sht15>; | ||
53 | }; | ||
54 | |||
55 | reg_sht15: regulator-sht15 { | ||
56 | compatible = "regulator-fixed"; | ||
57 | regulator-name = "reg_sht15"; | ||
58 | regulator-min-microvolt = <3300000>; | ||
59 | regulator-max-microvolt = <3300000>; | ||
60 | }; | ||
61 | }; | ||
62 | |||
63 | &i2c3 { | ||
64 | status = "disabled"; | ||
65 | }; | ||
66 | |||
67 | &iomuxc { | ||
68 | pinctrl_sensor: sensorgrp { | ||
69 | fsl,pins = < | ||
70 | MX7D_PAD_I2C3_SDA__GPIO4_IO13 0x4000007f | ||
71 | MX7D_PAD_I2C3_SCL__GPIO4_IO12 0x4000007f | ||
72 | >; | ||
73 | }; | ||
74 | }; | ||
diff --git a/arch/arm/boot/dts/imx7s.dtsi b/arch/arm/boot/dts/imx7s.dtsi index 5d3a43b8de20..c4f12fd2e044 100644 --- a/arch/arm/boot/dts/imx7s.dtsi +++ b/arch/arm/boot/dts/imx7s.dtsi | |||
@@ -493,10 +493,9 @@ | |||
493 | }; | 493 | }; |
494 | 494 | ||
495 | ocotp: ocotp-ctrl@30350000 { | 495 | ocotp: ocotp-ctrl@30350000 { |
496 | compatible = "syscon"; | 496 | compatible = "fsl,imx7d-ocotp", "syscon"; |
497 | reg = <0x30350000 0x10000>; | 497 | reg = <0x30350000 0x10000>; |
498 | clocks = <&clks IMX7D_CLK_DUMMY>; | 498 | clocks = <&clks IMX7D_OCOTP_CLK>; |
499 | status = "disabled"; | ||
500 | }; | 499 | }; |
501 | 500 | ||
502 | anatop: anatop@30360000 { | 501 | anatop: anatop@30360000 { |
@@ -559,7 +558,7 @@ | |||
559 | }; | 558 | }; |
560 | 559 | ||
561 | src: src@30390000 { | 560 | src: src@30390000 { |
562 | compatible = "fsl,imx7d-src", "fsl,imx51-src", "syscon"; | 561 | compatible = "fsl,imx7d-src", "syscon"; |
563 | reg = <0x30390000 0x10000>; | 562 | reg = <0x30390000 0x10000>; |
564 | interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; | 563 | interrupts = <GIC_SPI 89 IRQ_TYPE_LEVEL_HIGH>; |
565 | #reset-cells = <1>; | 564 | #reset-cells = <1>; |
diff --git a/arch/arm/boot/dts/include/arm b/arch/arm/boot/dts/include/arm new file mode 120000 index 000000000000..a96aa0ea9d8c --- /dev/null +++ b/arch/arm/boot/dts/include/arm | |||
@@ -0,0 +1 @@ | |||
.. \ No newline at end of file | |||
diff --git a/arch/arm/boot/dts/include/arm64 b/arch/arm/boot/dts/include/arm64 new file mode 120000 index 000000000000..074a835fca3e --- /dev/null +++ b/arch/arm/boot/dts/include/arm64 | |||
@@ -0,0 +1 @@ | |||
../../../../arm64/boot/dts \ No newline at end of file | |||
diff --git a/arch/arm/boot/dts/motorola-cpcap-mapphone.dtsi b/arch/arm/boot/dts/motorola-cpcap-mapphone.dtsi new file mode 100644 index 000000000000..f5aeb3959afd --- /dev/null +++ b/arch/arm/boot/dts/motorola-cpcap-mapphone.dtsi | |||
@@ -0,0 +1,243 @@ | |||
1 | /* | ||
2 | * Common CPCAP configuration used on Motorola phones | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or modify | ||
5 | * it under the terms of the GNU General Public License version 2 as | ||
6 | * published by the Free Software Foundation. | ||
7 | */ | ||
8 | |||
9 | &mcspi1 { | ||
10 | cpcap: pmic@0 { | ||
11 | compatible = "motorola,cpcap", "st,6556002"; | ||
12 | reg = <0>; /* cs0 */ | ||
13 | interrupt-parent = <&gpio1>; | ||
14 | interrupts = <7 IRQ_TYPE_LEVEL_HIGH>; | ||
15 | interrupt-controller; | ||
16 | #interrupt-cells = <2>; | ||
17 | #address-cells = <1>; | ||
18 | #size-cells = <0>; | ||
19 | spi-max-frequency = <3000000>; | ||
20 | spi-cs-high; | ||
21 | |||
22 | cpcap_adc: adc { | ||
23 | compatible = "motorola,mapphone-cpcap-adc"; | ||
24 | interrupts-extended = <&cpcap 8 0>; | ||
25 | interrupt-names = "adcdone"; | ||
26 | #io-channel-cells = <1>; | ||
27 | }; | ||
28 | |||
29 | cpcap_charger: charger { | ||
30 | compatible = "motorola,mapphone-cpcap-charger"; | ||
31 | interrupts-extended = < | ||
32 | &cpcap 13 0 &cpcap 12 0 &cpcap 29 0 &cpcap 28 0 | ||
33 | &cpcap 22 0 &cpcap 20 0 &cpcap 19 0 &cpcap 54 0 | ||
34 | >; | ||
35 | interrupt-names = | ||
36 | "chrg_det", "rvrs_chrg", "chrg_se1b", "se0conn", | ||
37 | "rvrs_mode", "chrgcurr1", "vbusvld", "battdetb"; | ||
38 | mode-gpios = <&gpio3 29 GPIO_ACTIVE_LOW | ||
39 | &gpio3 23 GPIO_ACTIVE_LOW>; | ||
40 | io-channels = <&cpcap_adc 0 &cpcap_adc 1 | ||
41 | &cpcap_adc 2 &cpcap_adc 5 | ||
42 | &cpcap_adc 6>; | ||
43 | io-channel-names = "battdetb", "battp", | ||
44 | "vbus", "chg_isense", | ||
45 | "batti"; | ||
46 | }; | ||
47 | |||
48 | cpcap_regulator: regulator { | ||
49 | compatible = "motorola,mapphone-cpcap-regulator"; | ||
50 | |||
51 | cpcap_regulators: regulators { | ||
52 | }; | ||
53 | }; | ||
54 | |||
55 | cpcap_rtc: rtc { | ||
56 | compatible = "motorola,cpcap-rtc"; | ||
57 | |||
58 | interrupt-parent = <&cpcap>; | ||
59 | interrupts = <39 IRQ_TYPE_NONE>, <26 IRQ_TYPE_NONE>; | ||
60 | }; | ||
61 | |||
62 | power_button: button { | ||
63 | compatible = "motorola,cpcap-pwrbutton"; | ||
64 | |||
65 | interrupts = <23 IRQ_TYPE_NONE>; | ||
66 | }; | ||
67 | |||
68 | cpcap_usb2_phy: phy { | ||
69 | compatible = "motorola,mapphone-cpcap-usb-phy"; | ||
70 | pinctrl-0 = <&usb_gpio_mux_sel1 &usb_gpio_mux_sel2>; | ||
71 | pinctrl-1 = <&usb_ulpi_pins>; | ||
72 | pinctrl-2 = <&usb_utmi_pins>; | ||
73 | pinctrl-3 = <&uart3_pins>; | ||
74 | pinctrl-names = "default", "ulpi", "utmi", "uart"; | ||
75 | #phy-cells = <0>; | ||
76 | interrupts-extended = < | ||
77 | &cpcap 15 0 &cpcap 14 0 &cpcap 28 0 &cpcap 19 0 | ||
78 | &cpcap 18 0 &cpcap 17 0 &cpcap 16 0 &cpcap 49 0 | ||
79 | &cpcap 48 1 | ||
80 | >; | ||
81 | interrupt-names = | ||
82 | "id_ground", "id_float", "se0conn", "vbusvld", | ||
83 | "sessvld", "sessend", "se1", "dm", "dp"; | ||
84 | mode-gpios = <&gpio2 28 GPIO_ACTIVE_HIGH | ||
85 | &gpio1 0 GPIO_ACTIVE_HIGH>; | ||
86 | io-channels = <&cpcap_adc 2>, <&cpcap_adc 7>; | ||
87 | io-channel-names = "vbus", "id"; | ||
88 | vusb-supply = <&vusb>; | ||
89 | }; | ||
90 | |||
91 | led_red: led-red { | ||
92 | compatible = "motorola,cpcap-led-red"; | ||
93 | vdd-supply = <&sw5>; | ||
94 | label = "status-led:red"; | ||
95 | }; | ||
96 | |||
97 | led_green: led-green { | ||
98 | compatible = "motorola,cpcap-led-green"; | ||
99 | vdd-supply = <&sw5>; | ||
100 | label = "status-led:green"; | ||
101 | }; | ||
102 | |||
103 | led_blue: led-blue { | ||
104 | compatible = "motorola,cpcap-led-blue"; | ||
105 | vdd-supply = <&sw5>; | ||
106 | label = "status-led:blue"; | ||
107 | }; | ||
108 | |||
109 | led_adl: led-adl { | ||
110 | compatible = "motorola,cpcap-led-adl"; | ||
111 | vdd-supply = <&sw5>; | ||
112 | label = "button-backlight"; | ||
113 | }; | ||
114 | |||
115 | led_cp: led-cp { | ||
116 | compatible = "motorola,cpcap-led-cp"; | ||
117 | vdd-supply = <&sw5>; | ||
118 | label = "shift-key-light"; | ||
119 | }; | ||
120 | }; | ||
121 | }; | ||
122 | |||
123 | &cpcap_regulators { | ||
124 | sw5: SW5 { | ||
125 | regulator-min-microvolt = <5050000>; | ||
126 | regulator-max-microvolt = <5050000>; | ||
127 | regulator-enable-ramp-delay = <50000>; | ||
128 | regulator-boot-on; | ||
129 | }; | ||
130 | |||
131 | vcam: VCAM { | ||
132 | regulator-min-microvolt = <2900000>; | ||
133 | regulator-max-microvolt = <2900000>; | ||
134 | regulator-enable-ramp-delay = <1000>; | ||
135 | }; | ||
136 | |||
137 | /* Used by DSS */ | ||
138 | vcsi: VCSI { | ||
139 | regulator-min-microvolt = <1800000>; | ||
140 | regulator-max-microvolt = <1800000>; | ||
141 | regulator-enable-ramp-delay = <1000>; | ||
142 | regulator-boot-on; | ||
143 | }; | ||
144 | |||
145 | vdac: VDAC { | ||
146 | regulator-min-microvolt = <1800000>; | ||
147 | regulator-max-microvolt = <1800000>; | ||
148 | regulator-enable-ramp-delay = <1000>; | ||
149 | }; | ||
150 | |||
151 | vdig: VDIG { | ||
152 | regulator-min-microvolt = <1875000>; | ||
153 | regulator-max-microvolt = <1875000>; | ||
154 | regulator-enable-ramp-delay = <1000>; | ||
155 | }; | ||
156 | |||
157 | vfuse: VFUSE { | ||
158 | regulator-min-microvolt = <1500000>; | ||
159 | regulator-max-microvolt = <3150000>; | ||
160 | regulator-enable-ramp-delay = <1000>; | ||
161 | }; | ||
162 | |||
163 | vhvio: VHVIO { | ||
164 | regulator-min-microvolt = <2775000>; | ||
165 | regulator-max-microvolt = <2775000>; | ||
166 | regulator-enable-ramp-delay = <1000>; | ||
167 | regulator-always-on; | ||
168 | }; | ||
169 | |||
170 | /* Used by eMMC at mmc2 */ | ||
171 | vsdio: VSDIO { | ||
172 | regulator-min-microvolt = <2900000>; | ||
173 | regulator-max-microvolt = <2900000>; | ||
174 | regulator-enable-ramp-delay = <1000>; | ||
175 | }; | ||
176 | |||
177 | vpll: VPLL { | ||
178 | regulator-min-microvolt = <1200000>; | ||
179 | regulator-max-microvolt = <1800000>; | ||
180 | regulator-enable-ramp-delay = <100>; | ||
181 | }; | ||
182 | |||
183 | vrf1: VRF1 { | ||
184 | regulator-min-microvolt = <2775000>; | ||
185 | regulator-max-microvolt = <2775000>; | ||
186 | regulator-enable-ramp-delay = <1000>; | ||
187 | }; | ||
188 | |||
189 | vrf2: VRF2 { | ||
190 | regulator-min-microvolt = <2775000>; | ||
191 | regulator-max-microvolt = <2775000>; | ||
192 | regulator-enable-ramp-delay = <1000>; | ||
193 | }; | ||
194 | |||
195 | vrfref: VRFREF { | ||
196 | regulator-min-microvolt = <2500000>; | ||
197 | regulator-max-microvolt = <2775000>; | ||
198 | regulator-enable-ramp-delay = <100>; | ||
199 | }; | ||
200 | |||
201 | vwlan1: VWLAN1 { | ||
202 | regulator-min-microvolt = <1800000>; | ||
203 | regulator-max-microvolt = <1900000>; | ||
204 | regulator-enable-ramp-delay = <1000>; | ||
205 | }; | ||
206 | |||
207 | /* Used by micro-SDIO at mmc1 */ | ||
208 | vwlan2: VWLAN2 { | ||
209 | regulator-min-microvolt = <3000000>; | ||
210 | regulator-max-microvolt = <3000000>; | ||
211 | regulator-enable-ramp-delay = <1000>; | ||
212 | }; | ||
213 | |||
214 | vsim: VSIM { | ||
215 | regulator-min-microvolt = <1800000>; | ||
216 | regulator-max-microvolt = <2900000>; | ||
217 | regulator-enable-ramp-delay = <1000>; | ||
218 | }; | ||
219 | |||
220 | vsimcard: VSIMCARD { | ||
221 | regulator-min-microvolt = <1800000>; | ||
222 | regulator-max-microvolt = <2900000>; | ||
223 | regulator-enable-ramp-delay = <1000>; | ||
224 | }; | ||
225 | |||
226 | vvib: VVIB { | ||
227 | regulator-min-microvolt = <1300000>; | ||
228 | regulator-max-microvolt = <3000000>; | ||
229 | regulator-enable-ramp-delay = <500>; | ||
230 | }; | ||
231 | |||
232 | vusb: VUSB { | ||
233 | regulator-min-microvolt = <3300000>; | ||
234 | regulator-max-microvolt = <3300000>; | ||
235 | regulator-enable-ramp-delay = <1000>; | ||
236 | }; | ||
237 | |||
238 | vaudio: VAUDIO { | ||
239 | regulator-min-microvolt = <2775000>; | ||
240 | regulator-max-microvolt = <2775000>; | ||
241 | regulator-enable-ramp-delay = <1000>; | ||
242 | }; | ||
243 | }; | ||
diff --git a/arch/arm/boot/dts/moxart-uc7112lx.dts b/arch/arm/boot/dts/moxart-uc7112lx.dts index 10d088df0c35..4a962a26482d 100644 --- a/arch/arm/boot/dts/moxart-uc7112lx.dts +++ b/arch/arm/boot/dts/moxart-uc7112lx.dts | |||
@@ -6,7 +6,7 @@ | |||
6 | */ | 6 | */ |
7 | 7 | ||
8 | /dts-v1/; | 8 | /dts-v1/; |
9 | /include/ "moxart.dtsi" | 9 | #include "moxart.dtsi" |
10 | 10 | ||
11 | / { | 11 | / { |
12 | model = "MOXA UC-7112-LX"; | 12 | model = "MOXA UC-7112-LX"; |
diff --git a/arch/arm/boot/dts/moxart.dtsi b/arch/arm/boot/dts/moxart.dtsi index 1fd27ed65a01..e86f8c905ac5 100644 --- a/arch/arm/boot/dts/moxart.dtsi +++ b/arch/arm/boot/dts/moxart.dtsi | |||
@@ -6,6 +6,7 @@ | |||
6 | */ | 6 | */ |
7 | 7 | ||
8 | /include/ "skeleton.dtsi" | 8 | /include/ "skeleton.dtsi" |
9 | #include <dt-bindings/interrupt-controller/irq.h> | ||
9 | 10 | ||
10 | / { | 11 | / { |
11 | compatible = "moxa,moxart"; | 12 | compatible = "moxa,moxart"; |
@@ -36,8 +37,8 @@ | |||
36 | ranges; | 37 | ranges; |
37 | 38 | ||
38 | intc: interrupt-controller@98800000 { | 39 | intc: interrupt-controller@98800000 { |
39 | compatible = "moxa,moxart-ic"; | 40 | compatible = "moxa,moxart-ic", "faraday,ftintc010"; |
40 | reg = <0x98800000 0x38>; | 41 | reg = <0x98800000 0x100>; |
41 | interrupt-controller; | 42 | interrupt-controller; |
42 | #interrupt-cells = <2>; | 43 | #interrupt-cells = <2>; |
43 | interrupt-mask = <0x00080000>; | 44 | interrupt-mask = <0x00080000>; |
@@ -59,15 +60,15 @@ | |||
59 | timer: timer@98400000 { | 60 | timer: timer@98400000 { |
60 | compatible = "moxa,moxart-timer"; | 61 | compatible = "moxa,moxart-timer"; |
61 | reg = <0x98400000 0x42>; | 62 | reg = <0x98400000 0x42>; |
62 | interrupts = <19 1>; | 63 | interrupts = <19 IRQ_TYPE_EDGE_FALLING>; |
63 | clocks = <&clk_apb>; | 64 | clocks = <&clk_apb>; |
64 | }; | 65 | }; |
65 | 66 | ||
66 | gpio: gpio@98700000 { | 67 | gpio: gpio@98700000 { |
67 | gpio-controller; | 68 | gpio-controller; |
68 | #gpio-cells = <2>; | 69 | #gpio-cells = <2>; |
69 | compatible = "moxa,moxart-gpio"; | 70 | compatible = "moxa,moxart-gpio", "faraday,ftgpio010"; |
70 | reg = <0x98700000 0xC>; | 71 | reg = <0x98700000 0x100>; |
71 | }; | 72 | }; |
72 | 73 | ||
73 | rtc: rtc { | 74 | rtc: rtc { |
@@ -80,7 +81,7 @@ | |||
80 | dma: dma@90500000 { | 81 | dma: dma@90500000 { |
81 | compatible = "moxa,moxart-dma"; | 82 | compatible = "moxa,moxart-dma"; |
82 | reg = <0x90500080 0x40>; | 83 | reg = <0x90500080 0x40>; |
83 | interrupts = <24 0>; | 84 | interrupts = <24 IRQ_TYPE_LEVEL_HIGH>; |
84 | #dma-cells = <1>; | 85 | #dma-cells = <1>; |
85 | }; | 86 | }; |
86 | 87 | ||
@@ -93,7 +94,7 @@ | |||
93 | sdhci: sdhci@98e00000 { | 94 | sdhci: sdhci@98e00000 { |
94 | compatible = "moxa,moxart-sdhci"; | 95 | compatible = "moxa,moxart-sdhci"; |
95 | reg = <0x98e00000 0x5C>; | 96 | reg = <0x98e00000 0x5C>; |
96 | interrupts = <5 0>; | 97 | interrupts = <5 IRQ_TYPE_LEVEL_HIGH>; |
97 | clocks = <&clk_apb>; | 98 | clocks = <&clk_apb>; |
98 | dmas = <&dma 5>, | 99 | dmas = <&dma 5>, |
99 | <&dma 5>; | 100 | <&dma 5>; |
@@ -120,7 +121,7 @@ | |||
120 | mac0: mac@90900000 { | 121 | mac0: mac@90900000 { |
121 | compatible = "moxa,moxart-mac"; | 122 | compatible = "moxa,moxart-mac"; |
122 | reg = <0x90900000 0x90>; | 123 | reg = <0x90900000 0x90>; |
123 | interrupts = <25 0>; | 124 | interrupts = <25 IRQ_TYPE_LEVEL_HIGH>; |
124 | phy-handle = <ðphy0>; | 125 | phy-handle = <ðphy0>; |
125 | phy-mode = "mii"; | 126 | phy-mode = "mii"; |
126 | status = "disabled"; | 127 | status = "disabled"; |
@@ -129,7 +130,7 @@ | |||
129 | mac1: mac@92000000 { | 130 | mac1: mac@92000000 { |
130 | compatible = "moxa,moxart-mac"; | 131 | compatible = "moxa,moxart-mac"; |
131 | reg = <0x92000000 0x90>; | 132 | reg = <0x92000000 0x90>; |
132 | interrupts = <27 0>; | 133 | interrupts = <27 IRQ_TYPE_LEVEL_HIGH>; |
133 | phy-handle = <ðphy1>; | 134 | phy-handle = <ðphy1>; |
134 | phy-mode = "mii"; | 135 | phy-mode = "mii"; |
135 | status = "disabled"; | 136 | status = "disabled"; |
@@ -138,7 +139,7 @@ | |||
138 | uart0: uart@98200000 { | 139 | uart0: uart@98200000 { |
139 | compatible = "ns16550a"; | 140 | compatible = "ns16550a"; |
140 | reg = <0x98200000 0x20>; | 141 | reg = <0x98200000 0x20>; |
141 | interrupts = <31 8>; | 142 | interrupts = <31 IRQ_TYPE_LEVEL_HIGH>; |
142 | reg-shift = <2>; | 143 | reg-shift = <2>; |
143 | reg-io-width = <4>; | 144 | reg-io-width = <4>; |
144 | clock-frequency = <14745600>; | 145 | clock-frequency = <14745600>; |
diff --git a/arch/arm/boot/dts/omap3-cpu-thermal.dtsi b/arch/arm/boot/dts/omap3-cpu-thermal.dtsi new file mode 100644 index 000000000000..235ecfd61e2d --- /dev/null +++ b/arch/arm/boot/dts/omap3-cpu-thermal.dtsi | |||
@@ -0,0 +1,20 @@ | |||
1 | /* | ||
2 | * Device Tree Source for OMAP3 SoC CPU thermal | ||
3 | * | ||
4 | * Copyright (C) 2017 Texas Instruments Incorporated - http://www.ti.com/ | ||
5 | * | ||
6 | * This file is licensed under the terms of the GNU General Public License | ||
7 | * version 2. This program is licensed "as is" without any warranty of any | ||
8 | * kind, whether express or implied. | ||
9 | */ | ||
10 | |||
11 | #include <dt-bindings/thermal/thermal.h> | ||
12 | |||
13 | cpu_thermal: cpu_thermal { | ||
14 | polling-delay-passive = <250>; /* milliseconds */ | ||
15 | polling-delay = <1000>; /* milliseconds */ | ||
16 | coefficients = <0 20000>; | ||
17 | |||
18 | /* sensor ID */ | ||
19 | thermal-sensors = <&bandgap 0>; | ||
20 | }; | ||
diff --git a/arch/arm/boot/dts/omap3-igep.dtsi b/arch/arm/boot/dts/omap3-igep.dtsi index e268efde6c6d..4ad7d5565906 100644 --- a/arch/arm/boot/dts/omap3-igep.dtsi +++ b/arch/arm/boot/dts/omap3-igep.dtsi | |||
@@ -37,6 +37,13 @@ | |||
37 | }; | 37 | }; |
38 | 38 | ||
39 | &omap3_pmx_core { | 39 | &omap3_pmx_core { |
40 | gpmc_pins: pinmux_gpmc_pins { | ||
41 | pinctrl-single,pins = < | ||
42 | /* OneNAND seems to require PIN_INPUT on clock. */ | ||
43 | OMAP3_CORE1_IOPAD(0x20be, PIN_INPUT | MUX_MODE0) /* gpmc_clk.gpmc_clk */ | ||
44 | >; | ||
45 | }; | ||
46 | |||
40 | uart1_pins: pinmux_uart1_pins { | 47 | uart1_pins: pinmux_uart1_pins { |
41 | pinctrl-single,pins = < | 48 | pinctrl-single,pins = < |
42 | OMAP3_CORE1_IOPAD(0x2182, PIN_INPUT | MUX_MODE0) /* uart1_rx.uart1_rx */ | 49 | OMAP3_CORE1_IOPAD(0x2182, PIN_INPUT | MUX_MODE0) /* uart1_rx.uart1_rx */ |
@@ -98,6 +105,9 @@ | |||
98 | }; | 105 | }; |
99 | 106 | ||
100 | &gpmc { | 107 | &gpmc { |
108 | pinctrl-names = "default"; | ||
109 | pinctrl-0 = <&gpmc_pins>; | ||
110 | |||
101 | nand@0,0 { | 111 | nand@0,0 { |
102 | compatible = "ti,omap2-nand"; | 112 | compatible = "ti,omap2-nand"; |
103 | reg = <0 0 4>; /* CS0, offset 0, IO size 4 */ | 113 | reg = <0 0 4>; /* CS0, offset 0, IO size 4 */ |
@@ -126,6 +136,48 @@ | |||
126 | 136 | ||
127 | #address-cells = <1>; | 137 | #address-cells = <1>; |
128 | #size-cells = <1>; | 138 | #size-cells = <1>; |
139 | |||
140 | status = "okay"; | ||
141 | }; | ||
142 | |||
143 | onenand@0,0 { | ||
144 | compatible = "ti,omap2-onenand"; | ||
145 | reg = <0 0 0x20000>; /* CS0, offset 0, IO size 128K */ | ||
146 | |||
147 | gpmc,sync-read; | ||
148 | gpmc,sync-write; | ||
149 | gpmc,burst-length = <16>; | ||
150 | gpmc,burst-read; | ||
151 | gpmc,burst-wrap; | ||
152 | gpmc,burst-write; | ||
153 | gpmc,device-width = <2>; /* GPMC_DEVWIDTH_16BIT */ | ||
154 | gpmc,mux-add-data = <2>; /* GPMC_MUX_AD */ | ||
155 | gpmc,cs-on-ns = <0>; | ||
156 | gpmc,cs-rd-off-ns = <87>; | ||
157 | gpmc,cs-wr-off-ns = <87>; | ||
158 | gpmc,adv-on-ns = <0>; | ||
159 | gpmc,adv-rd-off-ns = <10>; | ||
160 | gpmc,adv-wr-off-ns = <10>; | ||
161 | gpmc,oe-on-ns = <15>; | ||
162 | gpmc,oe-off-ns = <87>; | ||
163 | gpmc,we-on-ns = <0>; | ||
164 | gpmc,we-off-ns = <87>; | ||
165 | gpmc,rd-cycle-ns = <112>; | ||
166 | gpmc,wr-cycle-ns = <112>; | ||
167 | gpmc,access-ns = <81>; | ||
168 | gpmc,page-burst-access-ns = <15>; | ||
169 | gpmc,bus-turnaround-ns = <0>; | ||
170 | gpmc,cycle2cycle-delay-ns = <0>; | ||
171 | gpmc,wait-monitoring-ns = <0>; | ||
172 | gpmc,clk-activation-ns = <5>; | ||
173 | gpmc,wr-data-mux-bus-ns = <30>; | ||
174 | gpmc,wr-access-ns = <81>; | ||
175 | gpmc,sync-clk-ps = <15000>; | ||
176 | |||
177 | #address-cells = <1>; | ||
178 | #size-cells = <1>; | ||
179 | |||
180 | status = "disabled"; | ||
129 | }; | 181 | }; |
130 | }; | 182 | }; |
131 | 183 | ||
diff --git a/arch/arm/boot/dts/omap3-n900.dts b/arch/arm/boot/dts/omap3-n900.dts index b64cfda8dbb7..49f37084e435 100644 --- a/arch/arm/boot/dts/omap3-n900.dts +++ b/arch/arm/boot/dts/omap3-n900.dts | |||
@@ -155,6 +155,13 @@ | |||
155 | compatible = "nokia,n900-ir"; | 155 | compatible = "nokia,n900-ir"; |
156 | pwms = <&pwm9 0 26316 0>; /* 38000 Hz */ | 156 | pwms = <&pwm9 0 26316 0>; /* 38000 Hz */ |
157 | }; | 157 | }; |
158 | |||
159 | /* controlled (enabled/disabled) directly by bcm2048 and wl1251 */ | ||
160 | vctcxo: vctcxo { | ||
161 | compatible = "fixed-clock"; | ||
162 | #clock-cells = <0>; | ||
163 | clock-frequency = <38400000>; | ||
164 | }; | ||
158 | }; | 165 | }; |
159 | 166 | ||
160 | &omap3_pmx_core { | 167 | &omap3_pmx_core { |
@@ -162,8 +169,10 @@ | |||
162 | 169 | ||
163 | uart2_pins: pinmux_uart2_pins { | 170 | uart2_pins: pinmux_uart2_pins { |
164 | pinctrl-single,pins = < | 171 | pinctrl-single,pins = < |
165 | OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0) /* uart2_rx */ | 172 | OMAP3_CORE1_IOPAD(0x2174, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts */ |
173 | OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE0) /* uart2_rts */ | ||
166 | OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0) /* uart2_tx */ | 174 | OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0) /* uart2_tx */ |
175 | OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0) /* uart2_rx */ | ||
167 | >; | 176 | >; |
168 | }; | 177 | }; |
169 | 178 | ||
@@ -920,6 +929,8 @@ | |||
920 | 929 | ||
921 | interrupt-parent = <&gpio2>; | 930 | interrupt-parent = <&gpio2>; |
922 | interrupts = <10 IRQ_TYPE_NONE>; /* gpio line 42 */ | 931 | interrupts = <10 IRQ_TYPE_NONE>; /* gpio line 42 */ |
932 | |||
933 | clocks = <&vctcxo>; | ||
923 | }; | 934 | }; |
924 | }; | 935 | }; |
925 | 936 | ||
@@ -937,9 +948,17 @@ | |||
937 | }; | 948 | }; |
938 | 949 | ||
939 | &uart2 { | 950 | &uart2 { |
940 | interrupts-extended = <&intc 73 &omap3_pmx_core OMAP3_UART2_RX>; | ||
941 | pinctrl-names = "default"; | 951 | pinctrl-names = "default"; |
942 | pinctrl-0 = <&uart2_pins>; | 952 | pinctrl-0 = <&uart2_pins>; |
953 | |||
954 | bcm2048: bluetooth { | ||
955 | compatible = "brcm,bcm2048-nokia", "nokia,h4p-bluetooth"; | ||
956 | reset-gpios = <&gpio3 27 GPIO_ACTIVE_LOW>; /* 91 */ | ||
957 | host-wakeup-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* 101 */ | ||
958 | bluetooth-wakeup-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* 37 */ | ||
959 | clocks = <&vctcxo>; | ||
960 | clock-names = "sysclk"; | ||
961 | }; | ||
943 | }; | 962 | }; |
944 | 963 | ||
945 | &uart3 { | 964 | &uart3 { |
diff --git a/arch/arm/boot/dts/omap3-n950-n9.dtsi b/arch/arm/boot/dts/omap3-n950-n9.dtsi index 5d8c4b4a4205..df3366fa5409 100644 --- a/arch/arm/boot/dts/omap3-n950-n9.dtsi +++ b/arch/arm/boot/dts/omap3-n950-n9.dtsi | |||
@@ -58,6 +58,13 @@ | |||
58 | pinctrl-0 = <&debug_leds>; | 58 | pinctrl-0 = <&debug_leds>; |
59 | }; | 59 | }; |
60 | }; | 60 | }; |
61 | |||
62 | /* controlled (enabled/disabled) directly by wl1271 */ | ||
63 | vctcxo: vctcxo { | ||
64 | compatible = "fixed-clock"; | ||
65 | #clock-cells = <0>; | ||
66 | clock-frequency = <38400000>; | ||
67 | }; | ||
61 | }; | 68 | }; |
62 | 69 | ||
63 | &omap3_pmx_core { | 70 | &omap3_pmx_core { |
@@ -125,6 +132,15 @@ | |||
125 | OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE4) /* gpio_93 (cmt_apeslpx) */ | 132 | OMAP3_CORE1_IOPAD(0x210a, PIN_OUTPUT | MUX_MODE4) /* gpio_93 (cmt_apeslpx) */ |
126 | >; | 133 | >; |
127 | }; | 134 | }; |
135 | |||
136 | uart2_pins: pinmux_uart2_pins { | ||
137 | pinctrl-single,pins = < | ||
138 | OMAP3_CORE1_IOPAD(0x2174, PIN_INPUT_PULLUP | MUX_MODE0) /* uart2_cts */ | ||
139 | OMAP3_CORE1_IOPAD(0x2176, PIN_OUTPUT | MUX_MODE0) /* uart2_rts */ | ||
140 | OMAP3_CORE1_IOPAD(0x2178, PIN_OUTPUT | MUX_MODE0) /* uart2_tx */ | ||
141 | OMAP3_CORE1_IOPAD(0x217a, PIN_INPUT | MUX_MODE0) /* uart2_rx */ | ||
142 | >; | ||
143 | }; | ||
128 | }; | 144 | }; |
129 | 145 | ||
130 | &omap3_pmx_core2 { | 146 | &omap3_pmx_core2 { |
@@ -435,3 +451,19 @@ | |||
435 | &ssi_port2 { | 451 | &ssi_port2 { |
436 | status = "disabled"; | 452 | status = "disabled"; |
437 | }; | 453 | }; |
454 | |||
455 | &uart2 { | ||
456 | pinctrl-names = "default"; | ||
457 | pinctrl-0 = <&uart2_pins>; | ||
458 | |||
459 | bluetooth { | ||
460 | compatible = "ti,wl1271-bluetooth-nokia", "nokia,h4p-bluetooth"; | ||
461 | |||
462 | reset-gpios = <&gpio1 26 GPIO_ACTIVE_LOW>; /* 26 */ | ||
463 | host-wakeup-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* 101 */ | ||
464 | bluetooth-wakeup-gpios = <&gpio2 5 GPIO_ACTIVE_HIGH>; /* 37 */ | ||
465 | |||
466 | clocks = <&vctcxo>; | ||
467 | clock-names = "sysclk"; | ||
468 | }; | ||
469 | }; | ||
diff --git a/arch/arm/boot/dts/omap34xx.dtsi b/arch/arm/boot/dts/omap34xx.dtsi index 834fdf13601f..ac4f8795b756 100644 --- a/arch/arm/boot/dts/omap34xx.dtsi +++ b/arch/arm/boot/dts/omap34xx.dtsi | |||
@@ -14,7 +14,7 @@ | |||
14 | 14 | ||
15 | / { | 15 | / { |
16 | cpus { | 16 | cpus { |
17 | cpu@0 { | 17 | cpu: cpu@0 { |
18 | /* OMAP343x/OMAP35xx variants OPP1-5 */ | 18 | /* OMAP343x/OMAP35xx variants OPP1-5 */ |
19 | operating-points = < | 19 | operating-points = < |
20 | /* kHz uV */ | 20 | /* kHz uV */ |
@@ -56,12 +56,16 @@ | |||
56 | }; | 56 | }; |
57 | }; | 57 | }; |
58 | 58 | ||
59 | bandgap@48002524 { | 59 | bandgap: bandgap@48002524 { |
60 | reg = <0x48002524 0x4>; | 60 | reg = <0x48002524 0x4>; |
61 | compatible = "ti,omap34xx-bandgap"; | 61 | compatible = "ti,omap34xx-bandgap"; |
62 | #thermal-sensor-cells = <0>; | 62 | #thermal-sensor-cells = <0>; |
63 | }; | 63 | }; |
64 | }; | 64 | }; |
65 | |||
66 | thermal_zones: thermal-zones { | ||
67 | #include "omap3-cpu-thermal.dtsi" | ||
68 | }; | ||
65 | }; | 69 | }; |
66 | 70 | ||
67 | &ssi { | 71 | &ssi { |
diff --git a/arch/arm/boot/dts/omap36xx.dtsi b/arch/arm/boot/dts/omap36xx.dtsi index d1a3e56b50ce..ade31d74c70c 100644 --- a/arch/arm/boot/dts/omap36xx.dtsi +++ b/arch/arm/boot/dts/omap36xx.dtsi | |||
@@ -19,7 +19,7 @@ | |||
19 | 19 | ||
20 | cpus { | 20 | cpus { |
21 | /* OMAP3630/OMAP37xx 'standard device' variants OPP50 to OPP130 */ | 21 | /* OMAP3630/OMAP37xx 'standard device' variants OPP50 to OPP130 */ |
22 | cpu@0 { | 22 | cpu: cpu@0 { |
23 | operating-points = < | 23 | operating-points = < |
24 | /* kHz uV */ | 24 | /* kHz uV */ |
25 | 300000 1012500 | 25 | 300000 1012500 |
@@ -88,12 +88,16 @@ | |||
88 | }; | 88 | }; |
89 | }; | 89 | }; |
90 | 90 | ||
91 | bandgap@48002524 { | 91 | bandgap: bandgap@48002524 { |
92 | reg = <0x48002524 0x4>; | 92 | reg = <0x48002524 0x4>; |
93 | compatible = "ti,omap36xx-bandgap"; | 93 | compatible = "ti,omap36xx-bandgap"; |
94 | #thermal-sensor-cells = <0>; | 94 | #thermal-sensor-cells = <0>; |
95 | }; | 95 | }; |
96 | }; | 96 | }; |
97 | |||
98 | thermal_zones: thermal-zones { | ||
99 | #include "omap3-cpu-thermal.dtsi" | ||
100 | }; | ||
97 | }; | 101 | }; |
98 | 102 | ||
99 | /* OMAP3630 needs dss_96m_fck for VENC */ | 103 | /* OMAP3630 needs dss_96m_fck for VENC */ |
diff --git a/arch/arm/boot/dts/omap4-droid4-xt894.dts b/arch/arm/boot/dts/omap4-droid4-xt894.dts index f3ccb4ceed9e..89eb607f4a9e 100644 --- a/arch/arm/boot/dts/omap4-droid4-xt894.dts +++ b/arch/arm/boot/dts/omap4-droid4-xt894.dts | |||
@@ -5,7 +5,9 @@ | |||
5 | */ | 5 | */ |
6 | /dts-v1/; | 6 | /dts-v1/; |
7 | 7 | ||
8 | #include <dt-bindings/input/input.h> | ||
8 | #include "omap443x.dtsi" | 9 | #include "omap443x.dtsi" |
10 | #include "motorola-cpcap-mapphone.dtsi" | ||
9 | 11 | ||
10 | / { | 12 | / { |
11 | model = "Motorola Droid 4 XT894"; | 13 | model = "Motorola Droid 4 XT894"; |
@@ -15,35 +17,76 @@ | |||
15 | stdout-path = &uart3; | 17 | stdout-path = &uart3; |
16 | }; | 18 | }; |
17 | 19 | ||
20 | aliases { | ||
21 | display0 = &lcd0; | ||
22 | display1 = &hdmi0; | ||
23 | }; | ||
24 | |||
18 | /* | 25 | /* |
19 | * We seem to have only 1021 MB accessible, 1021 - 1022 is locked, | 26 | * We seem to have only 1021 MB accessible, 1021 - 1022 is locked, |
20 | * then 1023 - 1024 seems to contain mbm. For SRAM, see the notes | 27 | * then 1023 - 1024 seems to contain mbm. |
21 | * below about SRAM and L3_ICLK2 being unused by default, | ||
22 | */ | 28 | */ |
23 | memory { | 29 | memory { |
24 | device_type = "memory"; | 30 | device_type = "memory"; |
25 | reg = <0x80000000 0x3fd00000>; /* 1021 MB */ | 31 | reg = <0x80000000 0x3fd00000>; /* 1021 MB */ |
26 | }; | 32 | }; |
27 | 33 | ||
28 | /* CPCAP really supports 1650000 to 3400000 range */ | 34 | /* Poweroff GPIO probably connected to CPCAP */ |
29 | vmmc: regulator-mmc { | 35 | gpio-poweroff { |
36 | compatible = "gpio-poweroff"; | ||
37 | pinctrl-0 = <&poweroff_gpio>; | ||
38 | pinctrl-names = "default"; | ||
39 | gpios = <&gpio2 18 GPIO_ACTIVE_LOW>; /* gpio50 */ | ||
40 | }; | ||
41 | |||
42 | hdmi0: connector { | ||
43 | compatible = "hdmi-connector"; | ||
44 | pinctrl-0 = <&hdmi_hpd_gpio>; | ||
45 | pinctrl-names = "default"; | ||
46 | label = "hdmi"; | ||
47 | type = "d"; | ||
48 | |||
49 | hpd-gpios = <&gpio2 31 GPIO_ACTIVE_HIGH>; /* gpio63 */ | ||
50 | |||
51 | port { | ||
52 | hdmi_connector_in: endpoint { | ||
53 | remote-endpoint = <&hdmi_out>; | ||
54 | }; | ||
55 | }; | ||
56 | }; | ||
57 | |||
58 | /* | ||
59 | * HDMI 5V regulator probably sourced from battery. Let's keep | ||
60 | * keep this as always enabled for HDMI to work until we've | ||
61 | * figured what the encoder chip is. | ||
62 | */ | ||
63 | hdmi_regulator: regulator-hdmi { | ||
30 | compatible = "regulator-fixed"; | 64 | compatible = "regulator-fixed"; |
31 | regulator-name = "vmmc"; | 65 | regulator-name = "hdmi"; |
32 | regulator-min-microvolt = <3000000>; | 66 | regulator-min-microvolt = <5000000>; |
33 | regulator-max-microvolt = <3000000>; | 67 | regulator-max-microvolt = <5000000>; |
68 | gpio = <&gpio2 27 GPIO_ACTIVE_HIGH>; /* gpio59 */ | ||
69 | enable-active-high; | ||
34 | regulator-always-on; | 70 | regulator-always-on; |
35 | }; | 71 | }; |
36 | 72 | ||
37 | /* CPCAP really supports 3000000 to 3100000 range */ | 73 | /* HS USB Host PHY on PORT 1 */ |
38 | vemmc: regulator-emmc { | 74 | hsusb1_phy: hsusb1_phy { |
75 | compatible = "usb-nop-xceiv"; | ||
76 | }; | ||
77 | |||
78 | /* LCD regulator from sw5 source */ | ||
79 | lcd_regulator: regulator-lcd { | ||
39 | compatible = "regulator-fixed"; | 80 | compatible = "regulator-fixed"; |
40 | regulator-name = "vemmc"; | 81 | regulator-name = "lcd"; |
41 | regulator-min-microvolt = <3000000>; | 82 | regulator-min-microvolt = <5050000>; |
42 | regulator-max-microvolt = <3000000>; | 83 | regulator-max-microvolt = <5050000>; |
43 | regulator-always-on; | 84 | gpio = <&gpio4 0 GPIO_ACTIVE_HIGH>; /* gpio96 */ |
85 | enable-active-high; | ||
86 | vin-supply = <&sw5>; | ||
44 | }; | 87 | }; |
45 | 88 | ||
46 | /* CPCAP really supports 1650000 to 1950000 range */ | 89 | /* This is probably coming straight from the battery.. */ |
47 | wl12xx_vmmc: regulator-wl12xx { | 90 | wl12xx_vmmc: regulator-wl12xx { |
48 | compatible = "regulator-fixed"; | 91 | compatible = "regulator-fixed"; |
49 | regulator-name = "vwl1271"; | 92 | regulator-name = "vwl1271"; |
@@ -53,21 +96,195 @@ | |||
53 | startup-delay-us = <70000>; | 96 | startup-delay-us = <70000>; |
54 | enable-active-high; | 97 | enable-active-high; |
55 | }; | 98 | }; |
99 | |||
100 | gpio_keys { | ||
101 | compatible = "gpio-keys"; | ||
102 | |||
103 | volume_down { | ||
104 | label = "Volume Down"; | ||
105 | gpios = <&gpio5 26 GPIO_ACTIVE_LOW>; /* gpio154 */ | ||
106 | linux,code = <KEY_VOLUMEDOWN>; | ||
107 | linux,can-disable; | ||
108 | }; | ||
109 | |||
110 | slider { | ||
111 | label = "Keypad Slide"; | ||
112 | gpios = <&gpio4 26 GPIO_ACTIVE_HIGH>; /* gpio122 */ | ||
113 | linux,input-type = <EV_SW>; | ||
114 | linux,code = <SW_KEYPAD_SLIDE>; | ||
115 | linux,can-disable; | ||
116 | |||
117 | }; | ||
118 | }; | ||
119 | }; | ||
120 | |||
121 | &dss { | ||
122 | status = "okay"; | ||
123 | }; | ||
124 | |||
125 | &gpio6 { | ||
126 | touchscreen_reset { | ||
127 | gpio-hog; | ||
128 | gpios = <13 0>; | ||
129 | output-high; | ||
130 | line-name = "touchscreen-reset"; | ||
131 | }; | ||
132 | }; | ||
133 | |||
134 | &dsi1 { | ||
135 | status = "okay"; | ||
136 | vdd-supply = <&vcsi>; | ||
137 | |||
138 | port { | ||
139 | dsi1_out_ep: endpoint { | ||
140 | remote-endpoint = <&lcd0_in>; | ||
141 | lanes = <0 1 2 3 4 5>; | ||
142 | }; | ||
143 | }; | ||
144 | |||
145 | lcd0: display { | ||
146 | compatible = "panel-dsi-cm"; | ||
147 | label = "lcd0"; | ||
148 | vddi-supply = <&lcd_regulator>; | ||
149 | reset-gpios = <&gpio4 5 GPIO_ACTIVE_HIGH>; /* gpio101 */ | ||
150 | |||
151 | panel-timing { | ||
152 | clock-frequency = <0>; /* Calculated by dsi */ | ||
153 | |||
154 | hback-porch = <2>; | ||
155 | hactive = <540>; | ||
156 | hfront-porch = <0>; | ||
157 | hsync-len = <2>; | ||
158 | |||
159 | vback-porch = <1>; | ||
160 | vactive = <960>; | ||
161 | vfront-porch = <0>; | ||
162 | vsync-len = <1>; | ||
163 | |||
164 | hsync-active = <0>; | ||
165 | vsync-active = <0>; | ||
166 | de-active = <1>; | ||
167 | pixelclk-active = <1>; | ||
168 | }; | ||
169 | |||
170 | port { | ||
171 | lcd0_in: endpoint { | ||
172 | remote-endpoint = <&dsi1_out_ep>; | ||
173 | }; | ||
174 | }; | ||
175 | }; | ||
56 | }; | 176 | }; |
57 | 177 | ||
58 | /* L3_2 interconnect is unused, SRAM, GPMC and L3_ICLK2 disabled */ | 178 | &hdmi { |
59 | &gpmc { | 179 | status = "okay"; |
60 | status = "disabled"; | 180 | pinctrl-0 = <&dss_hdmi_pins>; |
181 | pinctrl-names = "default"; | ||
182 | vdda-supply = <&vdac>; | ||
183 | |||
184 | port { | ||
185 | hdmi_out: endpoint { | ||
186 | remote-endpoint = <&hdmi_connector_in>; | ||
187 | lanes = <1 0 3 2 5 4 7 6>; | ||
188 | }; | ||
189 | }; | ||
190 | }; | ||
191 | |||
192 | &i2c1 { | ||
193 | tmp105@48 { | ||
194 | compatible = "ti,tmp105"; | ||
195 | reg = <0x48>; | ||
196 | pinctrl-0 = <&tmp105_irq>; | ||
197 | pinctrl-names = "default"; | ||
198 | /* kpd_row0.gpio_178 */ | ||
199 | interrupts-extended = <&gpio6 18 IRQ_TYPE_EDGE_FALLING | ||
200 | &omap4_pmx_core 0x14e>; | ||
201 | interrupt-names = "irq", "wakeup"; | ||
202 | wakeup-source; | ||
203 | }; | ||
204 | }; | ||
205 | |||
206 | &keypad { | ||
207 | keypad,num-rows = <8>; | ||
208 | keypad,num-columns = <8>; | ||
209 | linux,keymap = < | ||
210 | |||
211 | /* Row 1 */ | ||
212 | MATRIX_KEY(0, 2, KEY_1) | ||
213 | MATRIX_KEY(0, 6, KEY_2) | ||
214 | MATRIX_KEY(2, 3, KEY_3) | ||
215 | MATRIX_KEY(0, 7, KEY_4) | ||
216 | MATRIX_KEY(0, 4, KEY_5) | ||
217 | MATRIX_KEY(5, 5, KEY_6) | ||
218 | MATRIX_KEY(0, 1, KEY_7) | ||
219 | MATRIX_KEY(0, 5, KEY_8) | ||
220 | MATRIX_KEY(0, 0, KEY_9) | ||
221 | MATRIX_KEY(1, 6, KEY_0) | ||
222 | |||
223 | /* Row 2 */ | ||
224 | MATRIX_KEY(3, 4, KEY_APOSTROPHE) | ||
225 | MATRIX_KEY(7, 6, KEY_Q) | ||
226 | MATRIX_KEY(7, 7, KEY_W) | ||
227 | MATRIX_KEY(7, 2, KEY_E) | ||
228 | MATRIX_KEY(1, 0, KEY_R) | ||
229 | MATRIX_KEY(4, 4, KEY_T) | ||
230 | MATRIX_KEY(1, 2, KEY_Y) | ||
231 | MATRIX_KEY(6, 7, KEY_U) | ||
232 | MATRIX_KEY(2, 2, KEY_I) | ||
233 | MATRIX_KEY(5, 6, KEY_O) | ||
234 | MATRIX_KEY(3, 7, KEY_P) | ||
235 | MATRIX_KEY(6, 5, KEY_BACKSPACE) | ||
236 | |||
237 | /* Row 3 */ | ||
238 | MATRIX_KEY(5, 4, KEY_TAB) | ||
239 | MATRIX_KEY(5, 7, KEY_A) | ||
240 | MATRIX_KEY(2, 7, KEY_S) | ||
241 | MATRIX_KEY(7, 0, KEY_D) | ||
242 | MATRIX_KEY(2, 6, KEY_F) | ||
243 | MATRIX_KEY(6, 2, KEY_G) | ||
244 | MATRIX_KEY(6, 6, KEY_H) | ||
245 | MATRIX_KEY(1, 4, KEY_J) | ||
246 | MATRIX_KEY(3, 1, KEY_K) | ||
247 | MATRIX_KEY(2, 1, KEY_L) | ||
248 | MATRIX_KEY(4, 6, KEY_ENTER) | ||
249 | |||
250 | /* Row 4 */ | ||
251 | MATRIX_KEY(3, 6, KEY_LEFTSHIFT) /* KEY_CAPSLOCK */ | ||
252 | MATRIX_KEY(6, 1, KEY_Z) | ||
253 | MATRIX_KEY(7, 4, KEY_X) | ||
254 | MATRIX_KEY(5, 1, KEY_C) | ||
255 | MATRIX_KEY(1, 7, KEY_V) | ||
256 | MATRIX_KEY(2, 4, KEY_B) | ||
257 | MATRIX_KEY(4, 1, KEY_N) | ||
258 | MATRIX_KEY(1, 1, KEY_M) | ||
259 | MATRIX_KEY(3, 5, KEY_COMMA) | ||
260 | MATRIX_KEY(5, 2, KEY_DOT) | ||
261 | MATRIX_KEY(6, 3, KEY_UP) | ||
262 | MATRIX_KEY(7, 3, KEY_OK) | ||
263 | |||
264 | /* Row 5 */ | ||
265 | MATRIX_KEY(2, 5, KEY_LEFTCTRL) /* KEY_LEFTSHIFT */ | ||
266 | MATRIX_KEY(4, 5, KEY_LEFTALT) /* SYM */ | ||
267 | MATRIX_KEY(6, 0, KEY_MINUS) | ||
268 | MATRIX_KEY(4, 7, KEY_EQUAL) | ||
269 | MATRIX_KEY(1, 5, KEY_SPACE) | ||
270 | MATRIX_KEY(3, 2, KEY_SLASH) | ||
271 | MATRIX_KEY(4, 3, KEY_LEFT) | ||
272 | MATRIX_KEY(5, 3, KEY_DOWN) | ||
273 | MATRIX_KEY(3, 3, KEY_RIGHT) | ||
274 | |||
275 | /* Side buttons, KEY_VOLUMEDOWN and KEY_PWER are on CPCAP? */ | ||
276 | MATRIX_KEY(5, 0, KEY_VOLUMEUP) | ||
277 | >; | ||
61 | }; | 278 | }; |
62 | 279 | ||
63 | &mmc1 { | 280 | &mmc1 { |
64 | vmmc-supply = <&vmmc>; | 281 | vmmc-supply = <&vwlan2>; |
65 | bus-width = <4>; | 282 | bus-width = <4>; |
66 | cd-gpios = <&gpio4 10 GPIO_ACTIVE_LOW>; /* gpio106 */ | 283 | cd-gpios = <&gpio6 16 GPIO_ACTIVE_LOW>; /* gpio176 */ |
67 | }; | 284 | }; |
68 | 285 | ||
69 | &mmc2 { | 286 | &mmc2 { |
70 | vmmc-supply = <&vemmc>; | 287 | vmmc-supply = <&vsdio>; |
71 | bus-width = <8>; | 288 | bus-width = <8>; |
72 | non-removable; | 289 | non-removable; |
73 | }; | 290 | }; |
@@ -93,12 +310,78 @@ | |||
93 | }; | 310 | }; |
94 | }; | 311 | }; |
95 | 312 | ||
96 | /* L3_2 interconnect is unused, SRAM, GPMC and L3_ICLK2 disabled */ | 313 | &i2c1 { |
97 | &ocmcram { | 314 | lm3532@38 { |
98 | status = "disabled"; | 315 | compatible = "ti,lm3532"; |
316 | reg = <0x38>; | ||
317 | |||
318 | enable-gpios = <&gpio6 12 GPIO_ACTIVE_HIGH>; | ||
319 | |||
320 | backlight { | ||
321 | compatible = "ti,lm3532-backlight"; | ||
322 | |||
323 | lcd { | ||
324 | led-sources = <0 1 2>; | ||
325 | ramp-up-msec = <1>; | ||
326 | ramp-down-msec = <0>; | ||
327 | }; | ||
328 | }; | ||
329 | }; | ||
330 | }; | ||
331 | |||
332 | /* | ||
333 | * REVISIT: Add gpio173 reset pin handling to the driver, see gpio-hog above. | ||
334 | * If the GPIO reset is used, we probably need to have /lib/firmware/maxtouch.fw | ||
335 | * available. See "mxt-app" and "droid4-touchscreen-firmware" tools for more | ||
336 | * information. | ||
337 | */ | ||
338 | &i2c2 { | ||
339 | tsp@4a { | ||
340 | compatible = "atmel,maxtouch"; | ||
341 | reg = <0x4a>; | ||
342 | pinctrl-names = "default"; | ||
343 | pinctrl-0 = <&touchscreen_pins>; | ||
344 | |||
345 | /* gpio_183 with sys_nirq2 pad as wakeup */ | ||
346 | interrupts-extended = <&gpio6 23 IRQ_TYPE_EDGE_FALLING | ||
347 | &omap4_pmx_core 0x160>; | ||
348 | interrupt-names = "irq", "wakeup"; | ||
349 | wakeup-source; | ||
350 | }; | ||
99 | }; | 351 | }; |
100 | 352 | ||
101 | &omap4_pmx_core { | 353 | &omap4_pmx_core { |
354 | |||
355 | /* hdmi_hpd.gpio_63 */ | ||
356 | hdmi_hpd_gpio: pinmux_hdmi_hpd_pins { | ||
357 | pinctrl-single,pins = < | ||
358 | OMAP4_IOPAD(0x098, PIN_INPUT | MUX_MODE3) | ||
359 | >; | ||
360 | }; | ||
361 | |||
362 | /* hdmi_cec.hdmi_cec, hdmi_scl.hdmi_scl, hdmi_sda.hdmi_sda */ | ||
363 | dss_hdmi_pins: pinmux_dss_hdmi_pins { | ||
364 | pinctrl-single,pins = < | ||
365 | OMAP4_IOPAD(0x09a, PIN_INPUT_PULLUP | MUX_MODE0) | ||
366 | OMAP4_IOPAD(0x09c, PIN_INPUT | MUX_MODE0) | ||
367 | OMAP4_IOPAD(0x09e, PIN_INPUT | MUX_MODE0) | ||
368 | >; | ||
369 | }; | ||
370 | |||
371 | /* gpmc_ncs0.gpio_50 */ | ||
372 | poweroff_gpio: pinmux_poweroff_pins { | ||
373 | pinctrl-single,pins = < | ||
374 | OMAP4_IOPAD(0x074, PIN_OUTPUT_PULLUP | MUX_MODE3) | ||
375 | >; | ||
376 | }; | ||
377 | |||
378 | /* kpd_row0.gpio_178 */ | ||
379 | tmp105_irq: pinmux_tmp105_irq { | ||
380 | pinctrl-single,pins = < | ||
381 | OMAP4_IOPAD(0x18e, PIN_INPUT_PULLUP | MUX_MODE3) | ||
382 | >; | ||
383 | }; | ||
384 | |||
102 | usb_gpio_mux_sel1: pinmux_usb_gpio_mux_sel1_pins { | 385 | usb_gpio_mux_sel1: pinmux_usb_gpio_mux_sel1_pins { |
103 | /* gpio_60 */ | 386 | /* gpio_60 */ |
104 | pinctrl-single,pins = < | 387 | pinctrl-single,pins = < |
@@ -106,6 +389,12 @@ | |||
106 | >; | 389 | >; |
107 | }; | 390 | }; |
108 | 391 | ||
392 | touchscreen_pins: pinmux_touchscreen_pins { | ||
393 | pinctrl-single,pins = < | ||
394 | OMAP4_IOPAD(0x1a0, PIN_INPUT_PULLUP | MUX_MODE3) | ||
395 | >; | ||
396 | }; | ||
397 | |||
109 | usb_ulpi_pins: pinmux_usb_ulpi_pins { | 398 | usb_ulpi_pins: pinmux_usb_ulpi_pins { |
110 | pinctrl-single,pins = < | 399 | pinctrl-single,pins = < |
111 | OMAP4_IOPAD(0x196, MUX_MODE7) | 400 | OMAP4_IOPAD(0x196, MUX_MODE7) |
@@ -180,9 +469,49 @@ | |||
180 | &omap4_pmx_core 0x17c>; | 469 | &omap4_pmx_core 0x17c>; |
181 | }; | 470 | }; |
182 | 471 | ||
472 | &usbhsehci { | ||
473 | phys = <&hsusb1_phy>; | ||
474 | }; | ||
475 | |||
476 | &usbhshost { | ||
477 | port1-mode = "ohci-phy-4pin-dpdm"; | ||
478 | port2-mode = "ehci-tll"; | ||
479 | }; | ||
480 | |||
183 | /* Internal UTMI+ PHY used for OTG, CPCAP ULPI PHY for detection and charger */ | 481 | /* Internal UTMI+ PHY used for OTG, CPCAP ULPI PHY for detection and charger */ |
184 | &usb_otg_hs { | 482 | &usb_otg_hs { |
185 | interface-type = <1>; | 483 | interface-type = <1>; |
186 | mode = <3>; | 484 | mode = <3>; |
187 | power = <50>; | 485 | power = <50>; |
188 | }; | 486 | }; |
487 | |||
488 | &i2c4 { | ||
489 | ak8975: magnetometer@c { | ||
490 | compatible = "asahi-kasei,ak8975"; | ||
491 | reg = <0x0c>; | ||
492 | |||
493 | vdd-supply = <&vhvio>; | ||
494 | |||
495 | interrupt-parent = <&gpio6>; | ||
496 | interrupts = <15 IRQ_TYPE_EDGE_RISING>; /* gpio175 */ | ||
497 | |||
498 | rotation-matrix = "-1", "0", "0", | ||
499 | "0", "1", "0", | ||
500 | "0", "0", "-1"; | ||
501 | |||
502 | }; | ||
503 | |||
504 | lis3dh: accelerometer@18 { | ||
505 | compatible = "st,lis3dh-accel"; | ||
506 | reg = <0x18>; | ||
507 | |||
508 | vdd-supply = <&vhvio>; | ||
509 | |||
510 | interrupt-parent = <&gpio2>; | ||
511 | interrupts = <2 IRQ_TYPE_EDGE_BOTH>; /* gpio34 */ | ||
512 | |||
513 | rotation-matrix = "0", "-1", "0", | ||
514 | "1", "0", "0", | ||
515 | "0", "0", "1"; | ||
516 | }; | ||
517 | }; | ||
diff --git a/arch/arm/boot/dts/omap443x.dtsi b/arch/arm/boot/dts/omap443x.dtsi index fc6a8610c24c..03c8ad91ddac 100644 --- a/arch/arm/boot/dts/omap443x.dtsi +++ b/arch/arm/boot/dts/omap443x.dtsi | |||
@@ -71,4 +71,8 @@ | |||
71 | 71 | ||
72 | }; | 72 | }; |
73 | 73 | ||
74 | &cpu_thermal { | ||
75 | coefficients = <0 20000>; | ||
76 | }; | ||
77 | |||
74 | /include/ "omap443x-clocks.dtsi" | 78 | /include/ "omap443x-clocks.dtsi" |
diff --git a/arch/arm/boot/dts/omap4460.dtsi b/arch/arm/boot/dts/omap4460.dtsi index ef66e12e0a67..c43f2a2d0a1e 100644 --- a/arch/arm/boot/dts/omap4460.dtsi +++ b/arch/arm/boot/dts/omap4460.dtsi | |||
@@ -90,4 +90,8 @@ | |||
90 | 90 | ||
91 | }; | 91 | }; |
92 | 92 | ||
93 | &cpu_thermal { | ||
94 | coefficients = <348 (-9301)>; | ||
95 | }; | ||
96 | |||
93 | /include/ "omap446x-clocks.dtsi" | 97 | /include/ "omap446x-clocks.dtsi" |
diff --git a/arch/arm/boot/dts/omap5.dtsi b/arch/arm/boot/dts/omap5.dtsi index 222155ca8ad7..eaff2a5751dd 100644 --- a/arch/arm/boot/dts/omap5.dtsi +++ b/arch/arm/boot/dts/omap5.dtsi | |||
@@ -1127,6 +1127,15 @@ | |||
1127 | 1127 | ||
1128 | &cpu_thermal { | 1128 | &cpu_thermal { |
1129 | polling-delay = <500>; /* milliseconds */ | 1129 | polling-delay = <500>; /* milliseconds */ |
1130 | coefficients = <65 (-1791)>; | ||
1130 | }; | 1131 | }; |
1131 | 1132 | ||
1132 | /include/ "omap54xx-clocks.dtsi" | 1133 | /include/ "omap54xx-clocks.dtsi" |
1134 | |||
1135 | &gpu_thermal { | ||
1136 | coefficients = <117 (-2992)>; | ||
1137 | }; | ||
1138 | |||
1139 | &core_thermal { | ||
1140 | coefficients = <0 2000>; | ||
1141 | }; | ||
diff --git a/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts b/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts index 39d9e6ddefed..2da1413f5720 100644 --- a/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts +++ b/arch/arm/boot/dts/qcom-apq8060-dragonboard.dts | |||
@@ -95,17 +95,17 @@ | |||
95 | function = "sdc1"; | 95 | function = "sdc1"; |
96 | }; | 96 | }; |
97 | clk { | 97 | clk { |
98 | pins = "gpio167"; /* SDC5 CLK */ | 98 | pins = "gpio167"; /* SDC1 CLK */ |
99 | drive-strength = <16>; | 99 | drive-strength = <16>; |
100 | bias-disable; | 100 | bias-disable; |
101 | }; | 101 | }; |
102 | cmd { | 102 | cmd { |
103 | pins = "gpio168"; /* SDC5 CMD */ | 103 | pins = "gpio168"; /* SDC1 CMD */ |
104 | drive-strength = <10>; | 104 | drive-strength = <10>; |
105 | bias-pull-up; | 105 | bias-pull-up; |
106 | }; | 106 | }; |
107 | data { | 107 | data { |
108 | /* SDC5 D0 to D7 */ | 108 | /* SDC1 D0 to D7 */ |
109 | pins = "gpio159", "gpio160", "gpio161", "gpio162", | 109 | pins = "gpio159", "gpio160", "gpio161", "gpio162", |
110 | "gpio163", "gpio164", "gpio165", "gpio166"; | 110 | "gpio163", "gpio164", "gpio165", "gpio166"; |
111 | drive-strength = <10>; | 111 | drive-strength = <10>; |
diff --git a/arch/arm/boot/dts/qcom-msm8660.dtsi b/arch/arm/boot/dts/qcom-msm8660.dtsi index 91c9a62ae725..747669a62aa8 100644 --- a/arch/arm/boot/dts/qcom-msm8660.dtsi +++ b/arch/arm/boot/dts/qcom-msm8660.dtsi | |||
@@ -392,6 +392,21 @@ | |||
392 | cap-mmc-highspeed; | 392 | cap-mmc-highspeed; |
393 | }; | 393 | }; |
394 | 394 | ||
395 | sdcc2: sdcc@12140000 { | ||
396 | status = "disabled"; | ||
397 | compatible = "arm,pl18x", "arm,primecell"; | ||
398 | arm,primecell-periphid = <0x00051180>; | ||
399 | reg = <0x12140000 0x8000>; | ||
400 | interrupts = <GIC_SPI 103 IRQ_TYPE_LEVEL_HIGH>; | ||
401 | interrupt-names = "cmd_irq"; | ||
402 | clocks = <&gcc SDC2_CLK>, <&gcc SDC2_H_CLK>; | ||
403 | clock-names = "mclk", "apb_pclk"; | ||
404 | bus-width = <8>; | ||
405 | max-frequency = <48000000>; | ||
406 | cap-sd-highspeed; | ||
407 | cap-mmc-highspeed; | ||
408 | }; | ||
409 | |||
395 | sdcc3: sdcc@12180000 { | 410 | sdcc3: sdcc@12180000 { |
396 | compatible = "arm,pl18x", "arm,primecell"; | 411 | compatible = "arm,pl18x", "arm,primecell"; |
397 | arm,primecell-periphid = <0x00051180>; | 412 | arm,primecell-periphid = <0x00051180>; |
@@ -408,6 +423,21 @@ | |||
408 | no-1-8-v; | 423 | no-1-8-v; |
409 | }; | 424 | }; |
410 | 425 | ||
426 | sdcc4: sdcc@121c0000 { | ||
427 | compatible = "arm,pl18x", "arm,primecell"; | ||
428 | arm,primecell-periphid = <0x00051180>; | ||
429 | status = "disabled"; | ||
430 | reg = <0x121c0000 0x8000>; | ||
431 | interrupts = <GIC_SPI 101 IRQ_TYPE_LEVEL_HIGH>; | ||
432 | interrupt-names = "cmd_irq"; | ||
433 | clocks = <&gcc SDC4_CLK>, <&gcc SDC4_H_CLK>; | ||
434 | clock-names = "mclk", "apb_pclk"; | ||
435 | bus-width = <4>; | ||
436 | max-frequency = <48000000>; | ||
437 | cap-sd-highspeed; | ||
438 | cap-mmc-highspeed; | ||
439 | }; | ||
440 | |||
411 | sdcc5: sdcc@12200000 { | 441 | sdcc5: sdcc@12200000 { |
412 | compatible = "arm,pl18x", "arm,primecell"; | 442 | compatible = "arm,pl18x", "arm,primecell"; |
413 | arm,primecell-periphid = <0x00051180>; | 443 | arm,primecell-periphid = <0x00051180>; |
diff --git a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts index 96c853bab8ba..e7c1577d56f4 100644 --- a/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts +++ b/arch/arm/boot/dts/qcom-msm8974-sony-xperia-honami.dts | |||
@@ -413,14 +413,6 @@ | |||
413 | dma-controller@f9944000 { | 413 | dma-controller@f9944000 { |
414 | qcom,controlled-remotely; | 414 | qcom,controlled-remotely; |
415 | }; | 415 | }; |
416 | |||
417 | usb-phy@f9a55000 { | ||
418 | status = "ok"; | ||
419 | }; | ||
420 | |||
421 | usb@f9a55000 { | ||
422 | status = "ok"; | ||
423 | }; | ||
424 | }; | 416 | }; |
425 | 417 | ||
426 | &spmi_bus { | 418 | &spmi_bus { |
diff --git a/arch/arm/boot/dts/qcom-msm8974.dtsi b/arch/arm/boot/dts/qcom-msm8974.dtsi index d3e1a61b8671..307bf6a647b3 100644 --- a/arch/arm/boot/dts/qcom-msm8974.dtsi +++ b/arch/arm/boot/dts/qcom-msm8974.dtsi | |||
@@ -2,8 +2,8 @@ | |||
2 | 2 | ||
3 | #include <dt-bindings/interrupt-controller/arm-gic.h> | 3 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
4 | #include <dt-bindings/clock/qcom,gcc-msm8974.h> | 4 | #include <dt-bindings/clock/qcom,gcc-msm8974.h> |
5 | #include <dt-bindings/clock/qcom,rpmcc.h> | ||
5 | #include <dt-bindings/gpio/gpio.h> | 6 | #include <dt-bindings/gpio/gpio.h> |
6 | #include <dt-bindings/reset/qcom,gcc-msm8974.h> | ||
7 | #include "skeleton.dtsi" | 7 | #include "skeleton.dtsi" |
8 | 8 | ||
9 | / { | 9 | / { |
@@ -67,7 +67,7 @@ | |||
67 | #size-cells = <0>; | 67 | #size-cells = <0>; |
68 | interrupts = <1 9 0xf04>; | 68 | interrupts = <1 9 0xf04>; |
69 | 69 | ||
70 | cpu@0 { | 70 | CPU0: cpu@0 { |
71 | compatible = "qcom,krait"; | 71 | compatible = "qcom,krait"; |
72 | enable-method = "qcom,kpss-acc-v2"; | 72 | enable-method = "qcom,kpss-acc-v2"; |
73 | device_type = "cpu"; | 73 | device_type = "cpu"; |
@@ -78,7 +78,7 @@ | |||
78 | cpu-idle-states = <&CPU_SPC>; | 78 | cpu-idle-states = <&CPU_SPC>; |
79 | }; | 79 | }; |
80 | 80 | ||
81 | cpu@1 { | 81 | CPU1: cpu@1 { |
82 | compatible = "qcom,krait"; | 82 | compatible = "qcom,krait"; |
83 | enable-method = "qcom,kpss-acc-v2"; | 83 | enable-method = "qcom,kpss-acc-v2"; |
84 | device_type = "cpu"; | 84 | device_type = "cpu"; |
@@ -89,7 +89,7 @@ | |||
89 | cpu-idle-states = <&CPU_SPC>; | 89 | cpu-idle-states = <&CPU_SPC>; |
90 | }; | 90 | }; |
91 | 91 | ||
92 | cpu@2 { | 92 | CPU2: cpu@2 { |
93 | compatible = "qcom,krait"; | 93 | compatible = "qcom,krait"; |
94 | enable-method = "qcom,kpss-acc-v2"; | 94 | enable-method = "qcom,kpss-acc-v2"; |
95 | device_type = "cpu"; | 95 | device_type = "cpu"; |
@@ -100,7 +100,7 @@ | |||
100 | cpu-idle-states = <&CPU_SPC>; | 100 | cpu-idle-states = <&CPU_SPC>; |
101 | }; | 101 | }; |
102 | 102 | ||
103 | cpu@3 { | 103 | CPU3: cpu@3 { |
104 | compatible = "qcom,krait"; | 104 | compatible = "qcom,krait"; |
105 | enable-method = "qcom,kpss-acc-v2"; | 105 | enable-method = "qcom,kpss-acc-v2"; |
106 | device_type = "cpu"; | 106 | device_type = "cpu"; |
@@ -250,6 +250,9 @@ | |||
250 | 250 | ||
251 | cx-supply = <&pm8841_s2>; | 251 | cx-supply = <&pm8841_s2>; |
252 | 252 | ||
253 | clocks = <&xo_board>; | ||
254 | clock-names = "xo"; | ||
255 | |||
253 | memory-region = <&adsp_region>; | 256 | memory-region = <&adsp_region>; |
254 | 257 | ||
255 | qcom,smem-states = <&adsp_smp2p_out 0>; | 258 | qcom,smem-states = <&adsp_smp2p_out 0>; |
@@ -695,42 +698,276 @@ | |||
695 | qcom,ee = <0>; | 698 | qcom,ee = <0>; |
696 | }; | 699 | }; |
697 | 700 | ||
698 | usb1_phy: usb-phy@f9a55000 { | 701 | etr@fc322000 { |
699 | compatible = "qcom,usb-otg-snps"; | 702 | compatible = "arm,coresight-tmc", "arm,primecell"; |
703 | reg = <0xfc322000 0x1000>; | ||
700 | 704 | ||
701 | reg = <0xf9a55000 0x400>; | 705 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; |
702 | interrupts-extended = <&intc 0 134 0>, <&intc 0 140 0>, | 706 | clock-names = "apb_pclk", "atclk"; |
703 | <&spmi_bus 0 0x9 0 0>; | ||
704 | interrupt-names = "core_irq", "async_irq", "pmic_id_irq"; | ||
705 | 707 | ||
706 | vddcx-supply = <&pm8841_s2>; | 708 | port { |
707 | v3p3-supply = <&pm8941_l24>; | 709 | etr_in: endpoint { |
708 | v1p8-supply = <&pm8941_l6>; | 710 | slave-mode; |
711 | remote-endpoint = <&replicator_out0>; | ||
712 | }; | ||
713 | }; | ||
714 | }; | ||
709 | 715 | ||
710 | dr_mode = "otg"; | 716 | tpiu@fc318000 { |
711 | qcom,phy-init-sequence = <0x63 0x81 0xfffffff>; | 717 | compatible = "arm,coresight-tpiu", "arm,primecell"; |
712 | qcom,otg-control = <1>; | 718 | reg = <0xfc318000 0x1000>; |
713 | qcom,phy-num = <0>; | ||
714 | 719 | ||
715 | resets = <&gcc GCC_USB2A_PHY_BCR>, <&gcc GCC_USB_HS_BCR>; | 720 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; |
716 | reset-names = "phy", "link"; | 721 | clock-names = "apb_pclk", "atclk"; |
717 | 722 | ||
718 | clocks = <&gcc GCC_XO_CLK>, <&gcc GCC_USB_HS_SYSTEM_CLK>, | 723 | port { |
719 | <&gcc GCC_USB_HS_AHB_CLK>; | 724 | tpiu_in: endpoint { |
720 | clock-names = "phy", "core", "iface"; | 725 | slave-mode; |
726 | remote-endpoint = <&replicator_out1>; | ||
727 | }; | ||
728 | }; | ||
729 | }; | ||
721 | 730 | ||
722 | status = "disabled"; | 731 | replicator@fc31c000 { |
732 | compatible = "qcom,coresight-replicator1x", "arm,primecell"; | ||
733 | reg = <0xfc31c000 0x1000>; | ||
734 | |||
735 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
736 | clock-names = "apb_pclk", "atclk"; | ||
737 | |||
738 | ports { | ||
739 | #address-cells = <1>; | ||
740 | #size-cells = <0>; | ||
741 | |||
742 | port@0 { | ||
743 | reg = <0>; | ||
744 | replicator_out0: endpoint { | ||
745 | remote-endpoint = <&etr_in>; | ||
746 | }; | ||
747 | }; | ||
748 | port@1 { | ||
749 | reg = <1>; | ||
750 | replicator_out1: endpoint { | ||
751 | remote-endpoint = <&tpiu_in>; | ||
752 | }; | ||
753 | }; | ||
754 | port@2 { | ||
755 | reg = <0>; | ||
756 | replicator_in: endpoint { | ||
757 | slave-mode; | ||
758 | remote-endpoint = <&etf_out>; | ||
759 | }; | ||
760 | }; | ||
761 | }; | ||
723 | }; | 762 | }; |
724 | 763 | ||
725 | usb@f9a55000 { | 764 | etf@fc307000 { |
726 | compatible = "qcom,ci-hdrc"; | 765 | compatible = "arm,coresight-tmc", "arm,primecell"; |
727 | reg = <0xf9a55000 0x400>; | 766 | reg = <0xfc307000 0x1000>; |
728 | dr_mode = "otg"; | ||
729 | interrupts = <0 134 0>, <0 140 0>; | ||
730 | interrupt-names = "core_irq", "async_irq"; | ||
731 | usb-phy = <&usb1_phy>; | ||
732 | 767 | ||
733 | status = "disabled"; | 768 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; |
769 | clock-names = "apb_pclk", "atclk"; | ||
770 | |||
771 | ports { | ||
772 | #address-cells = <1>; | ||
773 | #size-cells = <0>; | ||
774 | |||
775 | port@0 { | ||
776 | reg = <0>; | ||
777 | etf_out: endpoint { | ||
778 | remote-endpoint = <&replicator_in>; | ||
779 | }; | ||
780 | }; | ||
781 | port@1 { | ||
782 | reg = <0>; | ||
783 | etf_in: endpoint { | ||
784 | slave-mode; | ||
785 | remote-endpoint = <&merger_out>; | ||
786 | }; | ||
787 | }; | ||
788 | }; | ||
789 | }; | ||
790 | |||
791 | funnel@fc31b000 { | ||
792 | compatible = "arm,coresight-funnel", "arm,primecell"; | ||
793 | reg = <0xfc31b000 0x1000>; | ||
794 | |||
795 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
796 | clock-names = "apb_pclk", "atclk"; | ||
797 | |||
798 | ports { | ||
799 | #address-cells = <1>; | ||
800 | #size-cells = <0>; | ||
801 | |||
802 | /* | ||
803 | * Not described input ports: | ||
804 | * 0 - connected trought funnel to Audio, Modem and | ||
805 | * Resource and Power Manager CPU's | ||
806 | * 2...7 - not-connected | ||
807 | */ | ||
808 | port@1 { | ||
809 | reg = <1>; | ||
810 | merger_in1: endpoint { | ||
811 | slave-mode; | ||
812 | remote-endpoint = <&funnel1_out>; | ||
813 | }; | ||
814 | }; | ||
815 | port@8 { | ||
816 | reg = <0>; | ||
817 | merger_out: endpoint { | ||
818 | remote-endpoint = <&etf_in>; | ||
819 | }; | ||
820 | }; | ||
821 | }; | ||
822 | }; | ||
823 | |||
824 | funnel@fc31a000 { | ||
825 | compatible = "arm,coresight-funnel", "arm,primecell"; | ||
826 | reg = <0xfc31a000 0x1000>; | ||
827 | |||
828 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
829 | clock-names = "apb_pclk", "atclk"; | ||
830 | |||
831 | ports { | ||
832 | #address-cells = <1>; | ||
833 | #size-cells = <0>; | ||
834 | |||
835 | /* | ||
836 | * Not described input ports: | ||
837 | * 0 - not-connected | ||
838 | * 1 - connected trought funnel to Multimedia CPU | ||
839 | * 2 - connected to Wireless CPU | ||
840 | * 3 - not-connected | ||
841 | * 4 - not-connected | ||
842 | * 6 - not-connected | ||
843 | * 7 - connected to STM | ||
844 | */ | ||
845 | port@5 { | ||
846 | reg = <5>; | ||
847 | funnel1_in5: endpoint { | ||
848 | slave-mode; | ||
849 | remote-endpoint = <&kpss_out>; | ||
850 | }; | ||
851 | }; | ||
852 | port@8 { | ||
853 | reg = <0>; | ||
854 | funnel1_out: endpoint { | ||
855 | remote-endpoint = <&merger_in1>; | ||
856 | }; | ||
857 | }; | ||
858 | }; | ||
859 | }; | ||
860 | |||
861 | funnel@fc345000 { /* KPSS funnel only 4 inputs are used */ | ||
862 | compatible = "arm,coresight-funnel", "arm,primecell"; | ||
863 | reg = <0xfc345000 0x1000>; | ||
864 | |||
865 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
866 | clock-names = "apb_pclk", "atclk"; | ||
867 | |||
868 | ports { | ||
869 | #address-cells = <1>; | ||
870 | #size-cells = <0>; | ||
871 | |||
872 | port@0 { | ||
873 | reg = <0>; | ||
874 | kpss_in0: endpoint { | ||
875 | slave-mode; | ||
876 | remote-endpoint = <&etm0_out>; | ||
877 | }; | ||
878 | }; | ||
879 | port@1 { | ||
880 | reg = <1>; | ||
881 | kpss_in1: endpoint { | ||
882 | slave-mode; | ||
883 | remote-endpoint = <&etm1_out>; | ||
884 | }; | ||
885 | }; | ||
886 | port@2 { | ||
887 | reg = <2>; | ||
888 | kpss_in2: endpoint { | ||
889 | slave-mode; | ||
890 | remote-endpoint = <&etm2_out>; | ||
891 | }; | ||
892 | }; | ||
893 | port@3 { | ||
894 | reg = <3>; | ||
895 | kpss_in3: endpoint { | ||
896 | slave-mode; | ||
897 | remote-endpoint = <&etm3_out>; | ||
898 | }; | ||
899 | }; | ||
900 | port@8 { | ||
901 | reg = <0>; | ||
902 | kpss_out: endpoint { | ||
903 | remote-endpoint = <&funnel1_in5>; | ||
904 | }; | ||
905 | }; | ||
906 | }; | ||
907 | }; | ||
908 | |||
909 | etm@fc33c000 { | ||
910 | compatible = "arm,coresight-etm4x", "arm,primecell"; | ||
911 | reg = <0xfc33c000 0x1000>; | ||
912 | |||
913 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
914 | clock-names = "apb_pclk", "atclk"; | ||
915 | |||
916 | cpu = <&CPU0>; | ||
917 | |||
918 | port { | ||
919 | etm0_out: endpoint { | ||
920 | remote-endpoint = <&kpss_in0>; | ||
921 | }; | ||
922 | }; | ||
923 | }; | ||
924 | |||
925 | etm@fc33d000 { | ||
926 | compatible = "arm,coresight-etm4x", "arm,primecell"; | ||
927 | reg = <0xfc33d000 0x1000>; | ||
928 | |||
929 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
930 | clock-names = "apb_pclk", "atclk"; | ||
931 | |||
932 | cpu = <&CPU1>; | ||
933 | |||
934 | port { | ||
935 | etm1_out: endpoint { | ||
936 | remote-endpoint = <&kpss_in1>; | ||
937 | }; | ||
938 | }; | ||
939 | }; | ||
940 | |||
941 | etm@fc33e000 { | ||
942 | compatible = "arm,coresight-etm4x", "arm,primecell"; | ||
943 | reg = <0xfc33e000 0x1000>; | ||
944 | |||
945 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
946 | clock-names = "apb_pclk", "atclk"; | ||
947 | |||
948 | cpu = <&CPU2>; | ||
949 | |||
950 | port { | ||
951 | etm2_out: endpoint { | ||
952 | remote-endpoint = <&kpss_in2>; | ||
953 | }; | ||
954 | }; | ||
955 | }; | ||
956 | |||
957 | etm@fc33f000 { | ||
958 | compatible = "arm,coresight-etm4x", "arm,primecell"; | ||
959 | reg = <0xfc33f000 0x1000>; | ||
960 | |||
961 | clocks = <&rpmcc RPM_SMD_QDSS_CLK>, <&rpmcc RPM_SMD_QDSS_A_CLK>; | ||
962 | clock-names = "apb_pclk", "atclk"; | ||
963 | |||
964 | cpu = <&CPU3>; | ||
965 | |||
966 | port { | ||
967 | etm3_out: endpoint { | ||
968 | remote-endpoint = <&kpss_in3>; | ||
969 | }; | ||
970 | }; | ||
734 | }; | 971 | }; |
735 | }; | 972 | }; |
736 | 973 | ||
@@ -760,6 +997,11 @@ | |||
760 | compatible = "qcom,rpm-msm8974"; | 997 | compatible = "qcom,rpm-msm8974"; |
761 | qcom,smd-channels = "rpm_requests"; | 998 | qcom,smd-channels = "rpm_requests"; |
762 | 999 | ||
1000 | rpmcc: clock-controller { | ||
1001 | compatible = "qcom,rpmcc-msm8974", "qcom,rpmcc"; | ||
1002 | #clock-cells = <1>; | ||
1003 | }; | ||
1004 | |||
763 | pm8841-regulators { | 1005 | pm8841-regulators { |
764 | compatible = "qcom,rpm-pm8841-regulators"; | 1006 | compatible = "qcom,rpm-pm8841-regulators"; |
765 | 1007 | ||
diff --git a/arch/arm/boot/dts/r7s72100-genmai.dts b/arch/arm/boot/dts/r7s72100-genmai.dts index 118a8e2b86bd..52a7b586bac7 100644 --- a/arch/arm/boot/dts/r7s72100-genmai.dts +++ b/arch/arm/boot/dts/r7s72100-genmai.dts | |||
@@ -44,6 +44,10 @@ | |||
44 | clock-frequency = <48000000>; | 44 | clock-frequency = <48000000>; |
45 | }; | 45 | }; |
46 | 46 | ||
47 | &rtc_x1_clk { | ||
48 | clock-frequency = <32768>; | ||
49 | }; | ||
50 | |||
47 | &mtu2 { | 51 | &mtu2 { |
48 | status = "okay"; | 52 | status = "okay"; |
49 | }; | 53 | }; |
@@ -59,6 +63,10 @@ | |||
59 | }; | 63 | }; |
60 | }; | 64 | }; |
61 | 65 | ||
66 | &rtc { | ||
67 | status = "okay"; | ||
68 | }; | ||
69 | |||
62 | &scif2 { | 70 | &scif2 { |
63 | status = "okay"; | 71 | status = "okay"; |
64 | }; | 72 | }; |
diff --git a/arch/arm/boot/dts/r7s72100-rskrza1.dts b/arch/arm/boot/dts/r7s72100-rskrza1.dts index 02b59c5b3c53..72df20a04320 100644 --- a/arch/arm/boot/dts/r7s72100-rskrza1.dts +++ b/arch/arm/boot/dts/r7s72100-rskrza1.dts | |||
@@ -43,6 +43,10 @@ | |||
43 | clock-frequency = <48000000>; | 43 | clock-frequency = <48000000>; |
44 | }; | 44 | }; |
45 | 45 | ||
46 | &rtc_x1_clk { | ||
47 | clock-frequency = <32768>; | ||
48 | }; | ||
49 | |||
46 | &mtu2 { | 50 | &mtu2 { |
47 | status = "okay"; | 51 | status = "okay"; |
48 | }; | 52 | }; |
@@ -69,6 +73,10 @@ | |||
69 | status = "okay"; | 73 | status = "okay"; |
70 | }; | 74 | }; |
71 | 75 | ||
76 | &rtc { | ||
77 | status = "okay"; | ||
78 | }; | ||
79 | |||
72 | &scif2 { | 80 | &scif2 { |
73 | status = "okay"; | 81 | status = "okay"; |
74 | }; | 82 | }; |
diff --git a/arch/arm/boot/dts/r7s72100.dtsi b/arch/arm/boot/dts/r7s72100.dtsi index 1cf2bd038090..0423996e4dcc 100644 --- a/arch/arm/boot/dts/r7s72100.dtsi +++ b/arch/arm/boot/dts/r7s72100.dtsi | |||
@@ -51,6 +51,20 @@ | |||
51 | clock-frequency = <0>; | 51 | clock-frequency = <0>; |
52 | }; | 52 | }; |
53 | 53 | ||
54 | rtc_x1_clk: rtc_x1 { | ||
55 | #clock-cells = <0>; | ||
56 | compatible = "fixed-clock"; | ||
57 | /* If clk present, value must be set by board to 32678 */ | ||
58 | clock-frequency = <0>; | ||
59 | }; | ||
60 | |||
61 | rtc_x3_clk: rtc_x3 { | ||
62 | #clock-cells = <0>; | ||
63 | compatible = "fixed-clock"; | ||
64 | /* If clk present, value must be set by board to 4000000 */ | ||
65 | clock-frequency = <0>; | ||
66 | }; | ||
67 | |||
54 | /* Fixed factor clocks */ | 68 | /* Fixed factor clocks */ |
55 | b_clk: b { | 69 | b_clk: b { |
56 | #clock-cells = <0>; | 70 | #clock-cells = <0>; |
@@ -117,11 +131,20 @@ | |||
117 | clock-output-names = "ostm0", "ostm1"; | 131 | clock-output-names = "ostm0", "ostm1"; |
118 | }; | 132 | }; |
119 | 133 | ||
134 | mstp6_clks: mstp6_clks@fcfe042c { | ||
135 | #clock-cells = <1>; | ||
136 | compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks"; | ||
137 | reg = <0xfcfe042c 4>; | ||
138 | clocks = <&p0_clk>; | ||
139 | clock-indices = <R7S72100_CLK_RTC>; | ||
140 | clock-output-names = "rtc"; | ||
141 | }; | ||
142 | |||
120 | mstp7_clks: mstp7_clks@fcfe0430 { | 143 | mstp7_clks: mstp7_clks@fcfe0430 { |
121 | #clock-cells = <1>; | 144 | #clock-cells = <1>; |
122 | compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks"; | 145 | compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks"; |
123 | reg = <0xfcfe0430 4>; | 146 | reg = <0xfcfe0430 4>; |
124 | clocks = <&p0_clk>; | 147 | clocks = <&b_clk>; |
125 | clock-indices = <R7S72100_CLK_ETHER>; | 148 | clock-indices = <R7S72100_CLK_ETHER>; |
126 | clock-output-names = "ether"; | 149 | clock-output-names = "ether"; |
127 | }; | 150 | }; |
@@ -162,9 +185,12 @@ | |||
162 | #clock-cells = <1>; | 185 | #clock-cells = <1>; |
163 | compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks"; | 186 | compatible = "renesas,r7s72100-mstp-clocks", "renesas,cpg-mstp-clocks"; |
164 | reg = <0xfcfe0444 4>; | 187 | reg = <0xfcfe0444 4>; |
165 | clocks = <&p1_clk>, <&p1_clk>; | 188 | clocks = <&p1_clk>, <&p1_clk>, <&p1_clk>, <&p1_clk>; |
166 | clock-indices = <R7S72100_CLK_SDHI1 R7S72100_CLK_SDHI0>; | 189 | clock-indices = < |
167 | clock-output-names = "sdhi1", "sdhi0"; | 190 | R7S72100_CLK_SDHI00 R7S72100_CLK_SDHI01 |
191 | R7S72100_CLK_SDHI10 R7S72100_CLK_SDHI11 | ||
192 | >; | ||
193 | clock-output-names = "sdhi00", "sdhi01", "sdhi10", "sdhi11"; | ||
168 | }; | 194 | }; |
169 | }; | 195 | }; |
170 | 196 | ||
@@ -379,6 +405,13 @@ | |||
379 | cache-level = <2>; | 405 | cache-level = <2>; |
380 | }; | 406 | }; |
381 | 407 | ||
408 | wdt: watchdog@fcfe0000 { | ||
409 | compatible = "renesas,r7s72100-wdt", "renesas,rza-wdt"; | ||
410 | reg = <0xfcfe0000 0x6>; | ||
411 | interrupts = <GIC_SPI 106 IRQ_TYPE_EDGE_RISING>; | ||
412 | clocks = <&p0_clk>; | ||
413 | }; | ||
414 | |||
382 | i2c0: i2c@fcfee000 { | 415 | i2c0: i2c@fcfee000 { |
383 | #address-cells = <1>; | 416 | #address-cells = <1>; |
384 | #size-cells = <0>; | 417 | #size-cells = <0>; |
@@ -499,7 +532,10 @@ | |||
499 | GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH | 532 | GIC_SPI 271 IRQ_TYPE_LEVEL_HIGH |
500 | GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>; | 533 | GIC_SPI 272 IRQ_TYPE_LEVEL_HIGH>; |
501 | 534 | ||
502 | clocks = <&mstp12_clks R7S72100_CLK_SDHI0>; | 535 | clocks = <&mstp12_clks R7S72100_CLK_SDHI00>, |
536 | <&mstp12_clks R7S72100_CLK_SDHI01>; | ||
537 | clock-names = "core", "cd"; | ||
538 | power-domains = <&cpg_clocks>; | ||
503 | cap-sd-highspeed; | 539 | cap-sd-highspeed; |
504 | cap-sdio-irq; | 540 | cap-sdio-irq; |
505 | status = "disabled"; | 541 | status = "disabled"; |
@@ -512,7 +548,10 @@ | |||
512 | GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH | 548 | GIC_SPI 274 IRQ_TYPE_LEVEL_HIGH |
513 | GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>; | 549 | GIC_SPI 275 IRQ_TYPE_LEVEL_HIGH>; |
514 | 550 | ||
515 | clocks = <&mstp12_clks R7S72100_CLK_SDHI1>; | 551 | clocks = <&mstp12_clks R7S72100_CLK_SDHI10>, |
552 | <&mstp12_clks R7S72100_CLK_SDHI11>; | ||
553 | clock-names = "core", "cd"; | ||
554 | power-domains = <&cpg_clocks>; | ||
516 | cap-sd-highspeed; | 555 | cap-sd-highspeed; |
517 | cap-sdio-irq; | 556 | cap-sdio-irq; |
518 | status = "disabled"; | 557 | status = "disabled"; |
@@ -535,4 +574,18 @@ | |||
535 | power-domains = <&cpg_clocks>; | 574 | power-domains = <&cpg_clocks>; |
536 | status = "disabled"; | 575 | status = "disabled"; |
537 | }; | 576 | }; |
577 | |||
578 | rtc: rtc@fcff1000 { | ||
579 | compatible = "renesas,r7s72100-rtc", "renesas,sh-rtc"; | ||
580 | reg = <0xfcff1000 0x2e>; | ||
581 | interrupts = <GIC_SPI 276 IRQ_TYPE_EDGE_RISING | ||
582 | GIC_SPI 277 IRQ_TYPE_EDGE_RISING | ||
583 | GIC_SPI 278 IRQ_TYPE_EDGE_RISING>; | ||
584 | interrupt-names = "alarm", "period", "carry"; | ||
585 | clocks = <&mstp6_clks R7S72100_CLK_RTC>, <&rtc_x1_clk>, | ||
586 | <&rtc_x3_clk>, <&extal_clk>; | ||
587 | clock-names = "fck", "rtc_x1", "rtc_x3", "extal"; | ||
588 | power-domains = <&cpg_clocks>; | ||
589 | status = "disabled"; | ||
590 | }; | ||
538 | }; | 591 | }; |
diff --git a/arch/arm/boot/dts/r8a73a4.dtsi b/arch/arm/boot/dts/r8a73a4.dtsi index 00eb9a7114dc..1f5c9f6dddba 100644 --- a/arch/arm/boot/dts/r8a73a4.dtsi +++ b/arch/arm/boot/dts/r8a73a4.dtsi | |||
@@ -32,18 +32,16 @@ | |||
32 | next-level-cache = <&L2_CA15>; | 32 | next-level-cache = <&L2_CA15>; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | L2_CA15: cache-controller@0 { | 35 | L2_CA15: cache-controller-0 { |
36 | compatible = "cache"; | 36 | compatible = "cache"; |
37 | reg = <0>; | ||
38 | clocks = <&cpg_clocks R8A73A4_CLK_Z>; | 37 | clocks = <&cpg_clocks R8A73A4_CLK_Z>; |
39 | power-domains = <&pd_a3sm>; | 38 | power-domains = <&pd_a3sm>; |
40 | cache-unified; | 39 | cache-unified; |
41 | cache-level = <2>; | 40 | cache-level = <2>; |
42 | }; | 41 | }; |
43 | 42 | ||
44 | L2_CA7: cache-controller@100 { | 43 | L2_CA7: cache-controller-1 { |
45 | compatible = "cache"; | 44 | compatible = "cache"; |
46 | reg = <0x100>; | ||
47 | clocks = <&cpg_clocks R8A73A4_CLK_Z2>; | 45 | clocks = <&cpg_clocks R8A73A4_CLK_Z2>; |
48 | power-domains = <&pd_a3km>; | 46 | power-domains = <&pd_a3km>; |
49 | cache-unified; | 47 | cache-unified; |
@@ -469,6 +467,9 @@ | |||
469 | <0 0xf1004000 0 0x2000>, | 467 | <0 0xf1004000 0 0x2000>, |
470 | <0 0xf1006000 0 0x2000>; | 468 | <0 0xf1006000 0 0x2000>; |
471 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | 469 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; |
470 | clocks = <&mstp4_clks R8A73A4_CLK_INTC_SYS>; | ||
471 | clock-names = "clk"; | ||
472 | power-domains = <&pd_c4>; | ||
472 | }; | 473 | }; |
473 | 474 | ||
474 | bsc: bus@fec10000 { | 475 | bsc: bus@fec10000 { |
@@ -727,16 +728,18 @@ | |||
727 | mstp4_clks: mstp4_clks@e6150140 { | 728 | mstp4_clks: mstp4_clks@e6150140 { |
728 | compatible = "renesas,r8a73a4-mstp-clocks", "renesas,cpg-mstp-clocks"; | 729 | compatible = "renesas,r8a73a4-mstp-clocks", "renesas,cpg-mstp-clocks"; |
729 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; | 730 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; |
730 | clocks = <&main_div2_clk>, <&main_div2_clk>, | 731 | clocks = <&main_div2_clk>, <&cpg_clocks R8A73A4_CLK_ZS>, |
732 | <&main_div2_clk>, | ||
731 | <&cpg_clocks R8A73A4_CLK_HP>, | 733 | <&cpg_clocks R8A73A4_CLK_HP>, |
732 | <&cpg_clocks R8A73A4_CLK_HP>; | 734 | <&cpg_clocks R8A73A4_CLK_HP>; |
733 | #clock-cells = <1>; | 735 | #clock-cells = <1>; |
734 | clock-indices = < | 736 | clock-indices = < |
735 | R8A73A4_CLK_IRQC R8A73A4_CLK_IIC5 | 737 | R8A73A4_CLK_IRQC R8A73A4_CLK_INTC_SYS |
736 | R8A73A4_CLK_IIC4 R8A73A4_CLK_IIC3 | 738 | R8A73A4_CLK_IIC5 R8A73A4_CLK_IIC4 |
739 | R8A73A4_CLK_IIC3 | ||
737 | >; | 740 | >; |
738 | clock-output-names = | 741 | clock-output-names = |
739 | "irqc", "iic5", "iic4", "iic3"; | 742 | "irqc", "intc-sys", "iic5", "iic4", "iic3"; |
740 | }; | 743 | }; |
741 | mstp5_clks: mstp5_clks@e6150144 { | 744 | mstp5_clks: mstp5_clks@e6150144 { |
742 | compatible = "renesas,r8a73a4-mstp-clocks", "renesas,cpg-mstp-clocks"; | 745 | compatible = "renesas,r8a73a4-mstp-clocks", "renesas,cpg-mstp-clocks"; |
diff --git a/arch/arm/boot/dts/r8a7743.dtsi b/arch/arm/boot/dts/r8a7743.dtsi index d8393b97768b..0ddac81742e4 100644 --- a/arch/arm/boot/dts/r8a7743.dtsi +++ b/arch/arm/boot/dts/r8a7743.dtsi | |||
@@ -32,9 +32,8 @@ | |||
32 | next-level-cache = <&L2_CA15>; | 32 | next-level-cache = <&L2_CA15>; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | L2_CA15: cache-controller@0 { | 35 | L2_CA15: cache-controller-0 { |
36 | compatible = "cache"; | 36 | compatible = "cache"; |
37 | reg = <0>; | ||
38 | cache-unified; | 37 | cache-unified; |
39 | cache-level = <2>; | 38 | cache-level = <2>; |
40 | power-domains = <&sysc R8A7743_PD_CA15_SCU>; | 39 | power-domains = <&sysc R8A7743_PD_CA15_SCU>; |
@@ -63,6 +62,7 @@ | |||
63 | clocks = <&cpg CPG_MOD 408>; | 62 | clocks = <&cpg CPG_MOD 408>; |
64 | clock-names = "clk"; | 63 | clock-names = "clk"; |
65 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 64 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
65 | resets = <&cpg 408>; | ||
66 | }; | 66 | }; |
67 | 67 | ||
68 | irqc: interrupt-controller@e61c0000 { | 68 | irqc: interrupt-controller@e61c0000 { |
@@ -82,6 +82,7 @@ | |||
82 | <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; | 82 | <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; |
83 | clocks = <&cpg CPG_MOD 407>; | 83 | clocks = <&cpg CPG_MOD 407>; |
84 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 84 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
85 | resets = <&cpg 407>; | ||
85 | }; | 86 | }; |
86 | 87 | ||
87 | timer { | 88 | timer { |
@@ -103,6 +104,7 @@ | |||
103 | clock-names = "extal", "usb_extal"; | 104 | clock-names = "extal", "usb_extal"; |
104 | #clock-cells = <2>; | 105 | #clock-cells = <2>; |
105 | #power-domain-cells = <0>; | 106 | #power-domain-cells = <0>; |
107 | #reset-cells = <1>; | ||
106 | }; | 108 | }; |
107 | 109 | ||
108 | prr: chipid@ff000044 { | 110 | prr: chipid@ff000044 { |
@@ -149,6 +151,7 @@ | |||
149 | clocks = <&cpg CPG_MOD 219>; | 151 | clocks = <&cpg CPG_MOD 219>; |
150 | clock-names = "fck"; | 152 | clock-names = "fck"; |
151 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 153 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
154 | resets = <&cpg 219>; | ||
152 | #dma-cells = <1>; | 155 | #dma-cells = <1>; |
153 | dma-channels = <15>; | 156 | dma-channels = <15>; |
154 | }; | 157 | }; |
@@ -181,6 +184,7 @@ | |||
181 | clocks = <&cpg CPG_MOD 218>; | 184 | clocks = <&cpg CPG_MOD 218>; |
182 | clock-names = "fck"; | 185 | clock-names = "fck"; |
183 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 186 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
187 | resets = <&cpg 218>; | ||
184 | #dma-cells = <1>; | 188 | #dma-cells = <1>; |
185 | dma-channels = <15>; | 189 | dma-channels = <15>; |
186 | }; | 190 | }; |
@@ -196,6 +200,7 @@ | |||
196 | <&dmac1 0x21>, <&dmac1 0x22>; | 200 | <&dmac1 0x21>, <&dmac1 0x22>; |
197 | dma-names = "tx", "rx", "tx", "rx"; | 201 | dma-names = "tx", "rx", "tx", "rx"; |
198 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 202 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
203 | resets = <&cpg 204>; | ||
199 | status = "disabled"; | 204 | status = "disabled"; |
200 | }; | 205 | }; |
201 | 206 | ||
@@ -210,6 +215,7 @@ | |||
210 | <&dmac1 0x25>, <&dmac1 0x26>; | 215 | <&dmac1 0x25>, <&dmac1 0x26>; |
211 | dma-names = "tx", "rx", "tx", "rx"; | 216 | dma-names = "tx", "rx", "tx", "rx"; |
212 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 217 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
218 | resets = <&cpg 203>; | ||
213 | status = "disabled"; | 219 | status = "disabled"; |
214 | }; | 220 | }; |
215 | 221 | ||
@@ -224,6 +230,7 @@ | |||
224 | <&dmac1 0x27>, <&dmac1 0x28>; | 230 | <&dmac1 0x27>, <&dmac1 0x28>; |
225 | dma-names = "tx", "rx", "tx", "rx"; | 231 | dma-names = "tx", "rx", "tx", "rx"; |
226 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 232 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
233 | resets = <&cpg 202>; | ||
227 | status = "disabled"; | 234 | status = "disabled"; |
228 | }; | 235 | }; |
229 | 236 | ||
@@ -238,6 +245,7 @@ | |||
238 | <&dmac1 0x1b>, <&dmac1 0x1c>; | 245 | <&dmac1 0x1b>, <&dmac1 0x1c>; |
239 | dma-names = "tx", "rx", "tx", "rx"; | 246 | dma-names = "tx", "rx", "tx", "rx"; |
240 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 247 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
248 | resets = <&cpg 1106>; | ||
241 | status = "disabled"; | 249 | status = "disabled"; |
242 | }; | 250 | }; |
243 | 251 | ||
@@ -252,6 +260,7 @@ | |||
252 | <&dmac1 0x1f>, <&dmac1 0x20>; | 260 | <&dmac1 0x1f>, <&dmac1 0x20>; |
253 | dma-names = "tx", "rx", "tx", "rx"; | 261 | dma-names = "tx", "rx", "tx", "rx"; |
254 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 262 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
263 | resets = <&cpg 1107>; | ||
255 | status = "disabled"; | 264 | status = "disabled"; |
256 | }; | 265 | }; |
257 | 266 | ||
@@ -266,6 +275,7 @@ | |||
266 | <&dmac1 0x23>, <&dmac1 0x24>; | 275 | <&dmac1 0x23>, <&dmac1 0x24>; |
267 | dma-names = "tx", "rx", "tx", "rx"; | 276 | dma-names = "tx", "rx", "tx", "rx"; |
268 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 277 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
278 | resets = <&cpg 1108>; | ||
269 | status = "disabled"; | 279 | status = "disabled"; |
270 | }; | 280 | }; |
271 | 281 | ||
@@ -277,9 +287,10 @@ | |||
277 | clocks = <&cpg CPG_MOD 206>; | 287 | clocks = <&cpg CPG_MOD 206>; |
278 | clock-names = "fck"; | 288 | clock-names = "fck"; |
279 | dmas = <&dmac0 0x3d>, <&dmac0 0x3e>, | 289 | dmas = <&dmac0 0x3d>, <&dmac0 0x3e>, |
280 | <&dmac1 0x3d>, <&dmac1 0x3e>; | 290 | <&dmac1 0x3d>, <&dmac1 0x3e>; |
281 | dma-names = "tx", "rx", "tx", "rx"; | 291 | dma-names = "tx", "rx", "tx", "rx"; |
282 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 292 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
293 | resets = <&cpg 206>; | ||
283 | status = "disabled"; | 294 | status = "disabled"; |
284 | }; | 295 | }; |
285 | 296 | ||
@@ -294,6 +305,7 @@ | |||
294 | <&dmac1 0x19>, <&dmac1 0x1a>; | 305 | <&dmac1 0x19>, <&dmac1 0x1a>; |
295 | dma-names = "tx", "rx", "tx", "rx"; | 306 | dma-names = "tx", "rx", "tx", "rx"; |
296 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 307 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
308 | resets = <&cpg 207>; | ||
297 | status = "disabled"; | 309 | status = "disabled"; |
298 | }; | 310 | }; |
299 | 311 | ||
@@ -308,6 +320,7 @@ | |||
308 | <&dmac1 0x1d>, <&dmac1 0x1e>; | 320 | <&dmac1 0x1d>, <&dmac1 0x1e>; |
309 | dma-names = "tx", "rx", "tx", "rx"; | 321 | dma-names = "tx", "rx", "tx", "rx"; |
310 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 322 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
323 | resets = <&cpg 216>; | ||
311 | status = "disabled"; | 324 | status = "disabled"; |
312 | }; | 325 | }; |
313 | 326 | ||
@@ -323,6 +336,7 @@ | |||
323 | <&dmac1 0x29>, <&dmac1 0x2a>; | 336 | <&dmac1 0x29>, <&dmac1 0x2a>; |
324 | dma-names = "tx", "rx", "tx", "rx"; | 337 | dma-names = "tx", "rx", "tx", "rx"; |
325 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 338 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
339 | resets = <&cpg 721>; | ||
326 | status = "disabled"; | 340 | status = "disabled"; |
327 | }; | 341 | }; |
328 | 342 | ||
@@ -338,6 +352,7 @@ | |||
338 | <&dmac1 0x2d>, <&dmac1 0x2e>; | 352 | <&dmac1 0x2d>, <&dmac1 0x2e>; |
339 | dma-names = "tx", "rx", "tx", "rx"; | 353 | dma-names = "tx", "rx", "tx", "rx"; |
340 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 354 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
355 | resets = <&cpg 720>; | ||
341 | status = "disabled"; | 356 | status = "disabled"; |
342 | }; | 357 | }; |
343 | 358 | ||
@@ -353,6 +368,7 @@ | |||
353 | <&dmac1 0x2b>, <&dmac1 0x2c>; | 368 | <&dmac1 0x2b>, <&dmac1 0x2c>; |
354 | dma-names = "tx", "rx", "tx", "rx"; | 369 | dma-names = "tx", "rx", "tx", "rx"; |
355 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 370 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
371 | resets = <&cpg 719>; | ||
356 | status = "disabled"; | 372 | status = "disabled"; |
357 | }; | 373 | }; |
358 | 374 | ||
@@ -368,6 +384,7 @@ | |||
368 | <&dmac1 0x2f>, <&dmac1 0x30>; | 384 | <&dmac1 0x2f>, <&dmac1 0x30>; |
369 | dma-names = "tx", "rx", "tx", "rx"; | 385 | dma-names = "tx", "rx", "tx", "rx"; |
370 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 386 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
387 | resets = <&cpg 718>; | ||
371 | status = "disabled"; | 388 | status = "disabled"; |
372 | }; | 389 | }; |
373 | 390 | ||
@@ -383,6 +400,7 @@ | |||
383 | <&dmac1 0xfb>, <&dmac1 0xfc>; | 400 | <&dmac1 0xfb>, <&dmac1 0xfc>; |
384 | dma-names = "tx", "rx", "tx", "rx"; | 401 | dma-names = "tx", "rx", "tx", "rx"; |
385 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 402 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
403 | resets = <&cpg 715>; | ||
386 | status = "disabled"; | 404 | status = "disabled"; |
387 | }; | 405 | }; |
388 | 406 | ||
@@ -398,6 +416,7 @@ | |||
398 | <&dmac1 0xfd>, <&dmac1 0xfe>; | 416 | <&dmac1 0xfd>, <&dmac1 0xfe>; |
399 | dma-names = "tx", "rx", "tx", "rx"; | 417 | dma-names = "tx", "rx", "tx", "rx"; |
400 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 418 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
419 | resets = <&cpg 714>; | ||
401 | status = "disabled"; | 420 | status = "disabled"; |
402 | }; | 421 | }; |
403 | 422 | ||
@@ -413,6 +432,7 @@ | |||
413 | <&dmac1 0x39>, <&dmac1 0x3a>; | 432 | <&dmac1 0x39>, <&dmac1 0x3a>; |
414 | dma-names = "tx", "rx", "tx", "rx"; | 433 | dma-names = "tx", "rx", "tx", "rx"; |
415 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 434 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
435 | resets = <&cpg 717>; | ||
416 | status = "disabled"; | 436 | status = "disabled"; |
417 | }; | 437 | }; |
418 | 438 | ||
@@ -428,6 +448,7 @@ | |||
428 | <&dmac1 0x4d>, <&dmac1 0x4e>; | 448 | <&dmac1 0x4d>, <&dmac1 0x4e>; |
429 | dma-names = "tx", "rx", "tx", "rx"; | 449 | dma-names = "tx", "rx", "tx", "rx"; |
430 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 450 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
451 | resets = <&cpg 716>; | ||
431 | status = "disabled"; | 452 | status = "disabled"; |
432 | }; | 453 | }; |
433 | 454 | ||
@@ -443,6 +464,7 @@ | |||
443 | <&dmac1 0x3b>, <&dmac1 0x3c>; | 464 | <&dmac1 0x3b>, <&dmac1 0x3c>; |
444 | dma-names = "tx", "rx", "tx", "rx"; | 465 | dma-names = "tx", "rx", "tx", "rx"; |
445 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 466 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
467 | resets = <&cpg 713>; | ||
446 | status = "disabled"; | 468 | status = "disabled"; |
447 | }; | 469 | }; |
448 | 470 | ||
@@ -452,6 +474,7 @@ | |||
452 | interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>; | 474 | interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>; |
453 | clocks = <&cpg CPG_MOD 813>; | 475 | clocks = <&cpg CPG_MOD 813>; |
454 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; | 476 | power-domains = <&sysc R8A7743_PD_ALWAYS_ON>; |
477 | resets = <&cpg 813>; | ||
455 | phy-mode = "rmii"; | 478 | phy-mode = "rmii"; |
456 | #address-cells = <1>; | 479 | #address-cells = <1>; |
457 | #size-cells = <0>; | 480 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/r8a7745.dtsi b/arch/arm/boot/dts/r8a7745.dtsi index 1f65ff68a469..2feb0084bb3b 100644 --- a/arch/arm/boot/dts/r8a7745.dtsi +++ b/arch/arm/boot/dts/r8a7745.dtsi | |||
@@ -32,9 +32,8 @@ | |||
32 | next-level-cache = <&L2_CA7>; | 32 | next-level-cache = <&L2_CA7>; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | L2_CA7: cache-controller@0 { | 35 | L2_CA7: cache-controller-0 { |
36 | compatible = "cache"; | 36 | compatible = "cache"; |
37 | reg = <0>; | ||
38 | cache-unified; | 37 | cache-unified; |
39 | cache-level = <2>; | 38 | cache-level = <2>; |
40 | power-domains = <&sysc R8A7745_PD_CA7_SCU>; | 39 | power-domains = <&sysc R8A7745_PD_CA7_SCU>; |
@@ -63,6 +62,7 @@ | |||
63 | clocks = <&cpg CPG_MOD 408>; | 62 | clocks = <&cpg CPG_MOD 408>; |
64 | clock-names = "clk"; | 63 | clock-names = "clk"; |
65 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 64 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
65 | resets = <&cpg 408>; | ||
66 | }; | 66 | }; |
67 | 67 | ||
68 | irqc: interrupt-controller@e61c0000 { | 68 | irqc: interrupt-controller@e61c0000 { |
@@ -82,6 +82,7 @@ | |||
82 | <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; | 82 | <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; |
83 | clocks = <&cpg CPG_MOD 407>; | 83 | clocks = <&cpg CPG_MOD 407>; |
84 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 84 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
85 | resets = <&cpg 407>; | ||
85 | }; | 86 | }; |
86 | 87 | ||
87 | timer { | 88 | timer { |
@@ -103,6 +104,7 @@ | |||
103 | clock-names = "extal", "usb_extal"; | 104 | clock-names = "extal", "usb_extal"; |
104 | #clock-cells = <2>; | 105 | #clock-cells = <2>; |
105 | #power-domain-cells = <0>; | 106 | #power-domain-cells = <0>; |
107 | #reset-cells = <1>; | ||
106 | }; | 108 | }; |
107 | 109 | ||
108 | prr: chipid@ff000044 { | 110 | prr: chipid@ff000044 { |
@@ -149,6 +151,7 @@ | |||
149 | clocks = <&cpg CPG_MOD 219>; | 151 | clocks = <&cpg CPG_MOD 219>; |
150 | clock-names = "fck"; | 152 | clock-names = "fck"; |
151 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 153 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
154 | resets = <&cpg 219>; | ||
152 | #dma-cells = <1>; | 155 | #dma-cells = <1>; |
153 | dma-channels = <15>; | 156 | dma-channels = <15>; |
154 | }; | 157 | }; |
@@ -181,6 +184,7 @@ | |||
181 | clocks = <&cpg CPG_MOD 218>; | 184 | clocks = <&cpg CPG_MOD 218>; |
182 | clock-names = "fck"; | 185 | clock-names = "fck"; |
183 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 186 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
187 | resets = <&cpg 218>; | ||
184 | #dma-cells = <1>; | 188 | #dma-cells = <1>; |
185 | dma-channels = <15>; | 189 | dma-channels = <15>; |
186 | }; | 190 | }; |
@@ -196,6 +200,7 @@ | |||
196 | <&dmac1 0x21>, <&dmac1 0x22>; | 200 | <&dmac1 0x21>, <&dmac1 0x22>; |
197 | dma-names = "tx", "rx", "tx", "rx"; | 201 | dma-names = "tx", "rx", "tx", "rx"; |
198 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 202 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
203 | resets = <&cpg 204>; | ||
199 | status = "disabled"; | 204 | status = "disabled"; |
200 | }; | 205 | }; |
201 | 206 | ||
@@ -210,6 +215,7 @@ | |||
210 | <&dmac1 0x25>, <&dmac1 0x26>; | 215 | <&dmac1 0x25>, <&dmac1 0x26>; |
211 | dma-names = "tx", "rx", "tx", "rx"; | 216 | dma-names = "tx", "rx", "tx", "rx"; |
212 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 217 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
218 | resets = <&cpg 203>; | ||
213 | status = "disabled"; | 219 | status = "disabled"; |
214 | }; | 220 | }; |
215 | 221 | ||
@@ -224,6 +230,7 @@ | |||
224 | <&dmac1 0x27>, <&dmac1 0x28>; | 230 | <&dmac1 0x27>, <&dmac1 0x28>; |
225 | dma-names = "tx", "rx", "tx", "rx"; | 231 | dma-names = "tx", "rx", "tx", "rx"; |
226 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 232 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
233 | resets = <&cpg 202>; | ||
227 | status = "disabled"; | 234 | status = "disabled"; |
228 | }; | 235 | }; |
229 | 236 | ||
@@ -238,6 +245,7 @@ | |||
238 | <&dmac1 0x1b>, <&dmac1 0x1c>; | 245 | <&dmac1 0x1b>, <&dmac1 0x1c>; |
239 | dma-names = "tx", "rx", "tx", "rx"; | 246 | dma-names = "tx", "rx", "tx", "rx"; |
240 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 247 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
248 | resets = <&cpg 1106>; | ||
241 | status = "disabled"; | 249 | status = "disabled"; |
242 | }; | 250 | }; |
243 | 251 | ||
@@ -252,6 +260,7 @@ | |||
252 | <&dmac1 0x1f>, <&dmac1 0x20>; | 260 | <&dmac1 0x1f>, <&dmac1 0x20>; |
253 | dma-names = "tx", "rx", "tx", "rx"; | 261 | dma-names = "tx", "rx", "tx", "rx"; |
254 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 262 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
263 | resets = <&cpg 1107>; | ||
255 | status = "disabled"; | 264 | status = "disabled"; |
256 | }; | 265 | }; |
257 | 266 | ||
@@ -266,6 +275,7 @@ | |||
266 | <&dmac1 0x23>, <&dmac1 0x24>; | 275 | <&dmac1 0x23>, <&dmac1 0x24>; |
267 | dma-names = "tx", "rx", "tx", "rx"; | 276 | dma-names = "tx", "rx", "tx", "rx"; |
268 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 277 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
278 | resets = <&cpg 1108>; | ||
269 | status = "disabled"; | 279 | status = "disabled"; |
270 | }; | 280 | }; |
271 | 281 | ||
@@ -277,9 +287,10 @@ | |||
277 | clocks = <&cpg CPG_MOD 206>; | 287 | clocks = <&cpg CPG_MOD 206>; |
278 | clock-names = "fck"; | 288 | clock-names = "fck"; |
279 | dmas = <&dmac0 0x3d>, <&dmac0 0x3e>, | 289 | dmas = <&dmac0 0x3d>, <&dmac0 0x3e>, |
280 | <&dmac1 0x3d>, <&dmac1 0x3e>; | 290 | <&dmac1 0x3d>, <&dmac1 0x3e>; |
281 | dma-names = "tx", "rx", "tx", "rx"; | 291 | dma-names = "tx", "rx", "tx", "rx"; |
282 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 292 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
293 | resets = <&cpg 206>; | ||
283 | status = "disabled"; | 294 | status = "disabled"; |
284 | }; | 295 | }; |
285 | 296 | ||
@@ -294,6 +305,7 @@ | |||
294 | <&dmac1 0x19>, <&dmac1 0x1a>; | 305 | <&dmac1 0x19>, <&dmac1 0x1a>; |
295 | dma-names = "tx", "rx", "tx", "rx"; | 306 | dma-names = "tx", "rx", "tx", "rx"; |
296 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 307 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
308 | resets = <&cpg 207>; | ||
297 | status = "disabled"; | 309 | status = "disabled"; |
298 | }; | 310 | }; |
299 | 311 | ||
@@ -308,6 +320,7 @@ | |||
308 | <&dmac1 0x1d>, <&dmac1 0x1e>; | 320 | <&dmac1 0x1d>, <&dmac1 0x1e>; |
309 | dma-names = "tx", "rx", "tx", "rx"; | 321 | dma-names = "tx", "rx", "tx", "rx"; |
310 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 322 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
323 | resets = <&cpg 216>; | ||
311 | status = "disabled"; | 324 | status = "disabled"; |
312 | }; | 325 | }; |
313 | 326 | ||
@@ -323,6 +336,7 @@ | |||
323 | <&dmac1 0x29>, <&dmac1 0x2a>; | 336 | <&dmac1 0x29>, <&dmac1 0x2a>; |
324 | dma-names = "tx", "rx", "tx", "rx"; | 337 | dma-names = "tx", "rx", "tx", "rx"; |
325 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 338 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
339 | resets = <&cpg 721>; | ||
326 | status = "disabled"; | 340 | status = "disabled"; |
327 | }; | 341 | }; |
328 | 342 | ||
@@ -338,6 +352,7 @@ | |||
338 | <&dmac1 0x2d>, <&dmac1 0x2e>; | 352 | <&dmac1 0x2d>, <&dmac1 0x2e>; |
339 | dma-names = "tx", "rx", "tx", "rx"; | 353 | dma-names = "tx", "rx", "tx", "rx"; |
340 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 354 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
355 | resets = <&cpg 720>; | ||
341 | status = "disabled"; | 356 | status = "disabled"; |
342 | }; | 357 | }; |
343 | 358 | ||
@@ -353,6 +368,7 @@ | |||
353 | <&dmac1 0x2b>, <&dmac1 0x2c>; | 368 | <&dmac1 0x2b>, <&dmac1 0x2c>; |
354 | dma-names = "tx", "rx", "tx", "rx"; | 369 | dma-names = "tx", "rx", "tx", "rx"; |
355 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 370 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
371 | resets = <&cpg 719>; | ||
356 | status = "disabled"; | 372 | status = "disabled"; |
357 | }; | 373 | }; |
358 | 374 | ||
@@ -368,6 +384,7 @@ | |||
368 | <&dmac1 0x2f>, <&dmac1 0x30>; | 384 | <&dmac1 0x2f>, <&dmac1 0x30>; |
369 | dma-names = "tx", "rx", "tx", "rx"; | 385 | dma-names = "tx", "rx", "tx", "rx"; |
370 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 386 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
387 | resets = <&cpg 718>; | ||
371 | status = "disabled"; | 388 | status = "disabled"; |
372 | }; | 389 | }; |
373 | 390 | ||
@@ -383,6 +400,7 @@ | |||
383 | <&dmac1 0xfb>, <&dmac1 0xfc>; | 400 | <&dmac1 0xfb>, <&dmac1 0xfc>; |
384 | dma-names = "tx", "rx", "tx", "rx"; | 401 | dma-names = "tx", "rx", "tx", "rx"; |
385 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 402 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
403 | resets = <&cpg 715>; | ||
386 | status = "disabled"; | 404 | status = "disabled"; |
387 | }; | 405 | }; |
388 | 406 | ||
@@ -398,6 +416,7 @@ | |||
398 | <&dmac1 0xfd>, <&dmac1 0xfe>; | 416 | <&dmac1 0xfd>, <&dmac1 0xfe>; |
399 | dma-names = "tx", "rx", "tx", "rx"; | 417 | dma-names = "tx", "rx", "tx", "rx"; |
400 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 418 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
419 | resets = <&cpg 714>; | ||
401 | status = "disabled"; | 420 | status = "disabled"; |
402 | }; | 421 | }; |
403 | 422 | ||
@@ -413,6 +432,7 @@ | |||
413 | <&dmac1 0x39>, <&dmac1 0x3a>; | 432 | <&dmac1 0x39>, <&dmac1 0x3a>; |
414 | dma-names = "tx", "rx", "tx", "rx"; | 433 | dma-names = "tx", "rx", "tx", "rx"; |
415 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 434 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
435 | resets = <&cpg 717>; | ||
416 | status = "disabled"; | 436 | status = "disabled"; |
417 | }; | 437 | }; |
418 | 438 | ||
@@ -428,6 +448,7 @@ | |||
428 | <&dmac1 0x4d>, <&dmac1 0x4e>; | 448 | <&dmac1 0x4d>, <&dmac1 0x4e>; |
429 | dma-names = "tx", "rx", "tx", "rx"; | 449 | dma-names = "tx", "rx", "tx", "rx"; |
430 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 450 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
451 | resets = <&cpg 716>; | ||
431 | status = "disabled"; | 452 | status = "disabled"; |
432 | }; | 453 | }; |
433 | 454 | ||
@@ -443,6 +464,7 @@ | |||
443 | <&dmac1 0x3b>, <&dmac1 0x3c>; | 464 | <&dmac1 0x3b>, <&dmac1 0x3c>; |
444 | dma-names = "tx", "rx", "tx", "rx"; | 465 | dma-names = "tx", "rx", "tx", "rx"; |
445 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 466 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
467 | resets = <&cpg 713>; | ||
446 | status = "disabled"; | 468 | status = "disabled"; |
447 | }; | 469 | }; |
448 | 470 | ||
@@ -452,6 +474,7 @@ | |||
452 | interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>; | 474 | interrupts = <GIC_SPI 162 IRQ_TYPE_LEVEL_HIGH>; |
453 | clocks = <&cpg CPG_MOD 813>; | 475 | clocks = <&cpg CPG_MOD 813>; |
454 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; | 476 | power-domains = <&sysc R8A7745_PD_ALWAYS_ON>; |
477 | resets = <&cpg 813>; | ||
455 | phy-mode = "rmii"; | 478 | phy-mode = "rmii"; |
456 | #address-cells = <1>; | 479 | #address-cells = <1>; |
457 | #size-cells = <0>; | 480 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/r8a7778-bockw.dts b/arch/arm/boot/dts/r8a7778-bockw.dts index 211d239d9041..c79d55eb43c5 100644 --- a/arch/arm/boot/dts/r8a7778-bockw.dts +++ b/arch/arm/boot/dts/r8a7778-bockw.dts | |||
@@ -229,5 +229,4 @@ | |||
229 | 229 | ||
230 | &scif_clk { | 230 | &scif_clk { |
231 | clock-frequency = <14745600>; | 231 | clock-frequency = <14745600>; |
232 | status = "okay"; | ||
233 | }; | 232 | }; |
diff --git a/arch/arm/boot/dts/r8a7779-marzen.dts b/arch/arm/boot/dts/r8a7779-marzen.dts index 89c5b24a3d03..9412a86f9b30 100644 --- a/arch/arm/boot/dts/r8a7779-marzen.dts +++ b/arch/arm/boot/dts/r8a7779-marzen.dts | |||
@@ -236,7 +236,6 @@ | |||
236 | 236 | ||
237 | &scif_clk { | 237 | &scif_clk { |
238 | clock-frequency = <14745600>; | 238 | clock-frequency = <14745600>; |
239 | status = "okay"; | ||
240 | }; | 239 | }; |
241 | 240 | ||
242 | &sdhi0 { | 241 | &sdhi0 { |
diff --git a/arch/arm/boot/dts/r8a7790-lager.dts b/arch/arm/boot/dts/r8a7790-lager.dts index bd512c86e852..ba100a6f67ca 100644 --- a/arch/arm/boot/dts/r8a7790-lager.dts +++ b/arch/arm/boot/dts/r8a7790-lager.dts | |||
@@ -581,7 +581,6 @@ | |||
581 | 581 | ||
582 | &scif_clk { | 582 | &scif_clk { |
583 | clock-frequency = <14745600>; | 583 | clock-frequency = <14745600>; |
584 | status = "okay"; | ||
585 | }; | 584 | }; |
586 | 585 | ||
587 | &msiof1 { | 586 | &msiof1 { |
diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi index 6d10450de6d7..99269aaca6fc 100644 --- a/arch/arm/boot/dts/r8a7790.dtsi +++ b/arch/arm/boot/dts/r8a7790.dtsi | |||
@@ -129,17 +129,15 @@ | |||
129 | next-level-cache = <&L2_CA7>; | 129 | next-level-cache = <&L2_CA7>; |
130 | }; | 130 | }; |
131 | 131 | ||
132 | L2_CA15: cache-controller@0 { | 132 | L2_CA15: cache-controller-0 { |
133 | compatible = "cache"; | 133 | compatible = "cache"; |
134 | reg = <0>; | ||
135 | power-domains = <&sysc R8A7790_PD_CA15_SCU>; | 134 | power-domains = <&sysc R8A7790_PD_CA15_SCU>; |
136 | cache-unified; | 135 | cache-unified; |
137 | cache-level = <2>; | 136 | cache-level = <2>; |
138 | }; | 137 | }; |
139 | 138 | ||
140 | L2_CA7: cache-controller@100 { | 139 | L2_CA7: cache-controller-1 { |
141 | compatible = "cache"; | 140 | compatible = "cache"; |
142 | reg = <0x100>; | ||
143 | power-domains = <&sysc R8A7790_PD_CA7_SCU>; | 141 | power-domains = <&sysc R8A7790_PD_CA7_SCU>; |
144 | cache-unified; | 142 | cache-unified; |
145 | cache-level = <2>; | 143 | cache-level = <2>; |
@@ -187,6 +185,9 @@ | |||
187 | <0 0xf1004000 0 0x2000>, | 185 | <0 0xf1004000 0 0x2000>, |
188 | <0 0xf1006000 0 0x2000>; | 186 | <0 0xf1006000 0 0x2000>; |
189 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | 187 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; |
188 | clocks = <&mstp4_clks R8A7790_CLK_INTC_SYS>; | ||
189 | clock-names = "clk"; | ||
190 | power-domains = <&sysc R8A7790_PD_ALWAYS_ON>; | ||
190 | }; | 191 | }; |
191 | 192 | ||
192 | gpio0: gpio@e6050000 { | 193 | gpio0: gpio@e6050000 { |
@@ -1100,7 +1101,7 @@ | |||
1100 | }; | 1101 | }; |
1101 | 1102 | ||
1102 | /* External CAN clock */ | 1103 | /* External CAN clock */ |
1103 | can_clk: can_clk { | 1104 | can_clk: can { |
1104 | compatible = "fixed-clock"; | 1105 | compatible = "fixed-clock"; |
1105 | #clock-cells = <0>; | 1106 | #clock-cells = <0>; |
1106 | /* This value must be overridden by the board. */ | 1107 | /* This value must be overridden by the board. */ |
@@ -1366,10 +1367,10 @@ | |||
1366 | mstp4_clks: mstp4_clks@e6150140 { | 1367 | mstp4_clks: mstp4_clks@e6150140 { |
1367 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1368 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1368 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; | 1369 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; |
1369 | clocks = <&cp_clk>; | 1370 | clocks = <&cp_clk>, <&zs_clk>; |
1370 | #clock-cells = <1>; | 1371 | #clock-cells = <1>; |
1371 | clock-indices = <R8A7790_CLK_IRQC>; | 1372 | clock-indices = <R8A7790_CLK_IRQC R8A7790_CLK_INTC_SYS>; |
1372 | clock-output-names = "irqc"; | 1373 | clock-output-names = "irqc", "intc-sys"; |
1373 | }; | 1374 | }; |
1374 | mstp5_clks: mstp5_clks@e6150144 { | 1375 | mstp5_clks: mstp5_clks@e6150144 { |
1375 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1376 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; |
@@ -1442,8 +1443,11 @@ | |||
1442 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1443 | compatible = "renesas,r8a7790-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1443 | reg = <0 0xe6150998 0 4>, <0 0xe61509a8 0 4>; | 1444 | reg = <0 0xe6150998 0 4>, <0 0xe61509a8 0 4>; |
1444 | clocks = <&p_clk>, | 1445 | clocks = <&p_clk>, |
1445 | <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, | 1446 | <&mstp10_clks R8A7790_CLK_SSI_ALL>, <&mstp10_clks R8A7790_CLK_SSI_ALL>, |
1446 | <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, | 1447 | <&mstp10_clks R8A7790_CLK_SSI_ALL>, <&mstp10_clks R8A7790_CLK_SSI_ALL>, |
1448 | <&mstp10_clks R8A7790_CLK_SSI_ALL>, <&mstp10_clks R8A7790_CLK_SSI_ALL>, | ||
1449 | <&mstp10_clks R8A7790_CLK_SSI_ALL>, <&mstp10_clks R8A7790_CLK_SSI_ALL>, | ||
1450 | <&mstp10_clks R8A7790_CLK_SSI_ALL>, <&mstp10_clks R8A7790_CLK_SSI_ALL>, | ||
1447 | <&p_clk>, | 1451 | <&p_clk>, |
1448 | <&mstp10_clks R8A7790_CLK_SCU_ALL>, <&mstp10_clks R8A7790_CLK_SCU_ALL>, | 1452 | <&mstp10_clks R8A7790_CLK_SCU_ALL>, <&mstp10_clks R8A7790_CLK_SCU_ALL>, |
1449 | <&mstp10_clks R8A7790_CLK_SCU_ALL>, <&mstp10_clks R8A7790_CLK_SCU_ALL>, | 1453 | <&mstp10_clks R8A7790_CLK_SCU_ALL>, <&mstp10_clks R8A7790_CLK_SCU_ALL>, |
@@ -1740,11 +1744,11 @@ | |||
1740 | 1744 | ||
1741 | rcar_sound,dvc { | 1745 | rcar_sound,dvc { |
1742 | dvc0: dvc-0 { | 1746 | dvc0: dvc-0 { |
1743 | dmas = <&audma0 0xbc>; | 1747 | dmas = <&audma1 0xbc>; |
1744 | dma-names = "tx"; | 1748 | dma-names = "tx"; |
1745 | }; | 1749 | }; |
1746 | dvc1: dvc-1 { | 1750 | dvc1: dvc-1 { |
1747 | dmas = <&audma0 0xbe>; | 1751 | dmas = <&audma1 0xbe>; |
1748 | dma-names = "tx"; | 1752 | dma-names = "tx"; |
1749 | }; | 1753 | }; |
1750 | }; | 1754 | }; |
diff --git a/arch/arm/boot/dts/r8a7791-koelsch.dts b/arch/arm/boot/dts/r8a7791-koelsch.dts index 5405d337d744..001e6116c47c 100644 --- a/arch/arm/boot/dts/r8a7791-koelsch.dts +++ b/arch/arm/boot/dts/r8a7791-koelsch.dts | |||
@@ -292,7 +292,7 @@ | |||
292 | x2_clk: x2-clock { | 292 | x2_clk: x2-clock { |
293 | compatible = "fixed-clock"; | 293 | compatible = "fixed-clock"; |
294 | #clock-cells = <0>; | 294 | #clock-cells = <0>; |
295 | clock-frequency = <148500000>; | 295 | clock-frequency = <74250000>; |
296 | }; | 296 | }; |
297 | 297 | ||
298 | x13_clk: x13-clock { | 298 | x13_clk: x13-clock { |
@@ -516,7 +516,6 @@ | |||
516 | 516 | ||
517 | &scif_clk { | 517 | &scif_clk { |
518 | clock-frequency = <14745600>; | 518 | clock-frequency = <14745600>; |
519 | status = "okay"; | ||
520 | }; | 519 | }; |
521 | 520 | ||
522 | &sdhi0 { | 521 | &sdhi0 { |
@@ -767,7 +766,6 @@ | |||
767 | 766 | ||
768 | &pcie_bus_clk { | 767 | &pcie_bus_clk { |
769 | clock-frequency = <100000000>; | 768 | clock-frequency = <100000000>; |
770 | status = "okay"; | ||
771 | }; | 769 | }; |
772 | 770 | ||
773 | &pciec { | 771 | &pciec { |
diff --git a/arch/arm/boot/dts/r8a7791-porter.dts b/arch/arm/boot/dts/r8a7791-porter.dts index 6761d11d3f9e..95da5cb9d37a 100644 --- a/arch/arm/boot/dts/r8a7791-porter.dts +++ b/arch/arm/boot/dts/r8a7791-porter.dts | |||
@@ -226,7 +226,7 @@ | |||
226 | 226 | ||
227 | phy-handle = <&phy1>; | 227 | phy-handle = <&phy1>; |
228 | renesas,ether-link-active-low; | 228 | renesas,ether-link-active-low; |
229 | status = "ok"; | 229 | status = "okay"; |
230 | 230 | ||
231 | phy1: ethernet-phy@1 { | 231 | phy1: ethernet-phy@1 { |
232 | reg = <1>; | 232 | reg = <1>; |
@@ -359,7 +359,7 @@ | |||
359 | 359 | ||
360 | /* composite video input */ | 360 | /* composite video input */ |
361 | &vin0 { | 361 | &vin0 { |
362 | status = "ok"; | 362 | status = "okay"; |
363 | pinctrl-0 = <&vin0_pins>; | 363 | pinctrl-0 = <&vin0_pins>; |
364 | pinctrl-names = "default"; | 364 | pinctrl-names = "default"; |
365 | 365 | ||
@@ -401,7 +401,6 @@ | |||
401 | 401 | ||
402 | &pcie_bus_clk { | 402 | &pcie_bus_clk { |
403 | clock-frequency = <100000000>; | 403 | clock-frequency = <100000000>; |
404 | status = "okay"; | ||
405 | }; | 404 | }; |
406 | 405 | ||
407 | &pciec { | 406 | &pciec { |
diff --git a/arch/arm/boot/dts/r8a7791.dtsi b/arch/arm/boot/dts/r8a7791.dtsi index 9f9e48511836..4d0c2ce59900 100644 --- a/arch/arm/boot/dts/r8a7791.dtsi +++ b/arch/arm/boot/dts/r8a7791.dtsi | |||
@@ -74,9 +74,8 @@ | |||
74 | next-level-cache = <&L2_CA15>; | 74 | next-level-cache = <&L2_CA15>; |
75 | }; | 75 | }; |
76 | 76 | ||
77 | L2_CA15: cache-controller@0 { | 77 | L2_CA15: cache-controller-0 { |
78 | compatible = "cache"; | 78 | compatible = "cache"; |
79 | reg = <0>; | ||
80 | power-domains = <&sysc R8A7791_PD_CA15_SCU>; | 79 | power-domains = <&sysc R8A7791_PD_CA15_SCU>; |
81 | cache-unified; | 80 | cache-unified; |
82 | cache-level = <2>; | 81 | cache-level = <2>; |
@@ -118,6 +117,9 @@ | |||
118 | <0 0xf1004000 0 0x2000>, | 117 | <0 0xf1004000 0 0x2000>, |
119 | <0 0xf1006000 0 0x2000>; | 118 | <0 0xf1006000 0 0x2000>; |
120 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; | 119 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; |
120 | clocks = <&mstp4_clks R8A7791_CLK_INTC_SYS>; | ||
121 | clock-names = "clk"; | ||
122 | power-domains = <&sysc R8A7791_PD_ALWAYS_ON>; | ||
121 | }; | 123 | }; |
122 | 124 | ||
123 | gpio0: gpio@e6050000 { | 125 | gpio0: gpio@e6050000 { |
@@ -1124,7 +1126,7 @@ | |||
1124 | }; | 1126 | }; |
1125 | 1127 | ||
1126 | /* External CAN clock */ | 1128 | /* External CAN clock */ |
1127 | can_clk: can_clk { | 1129 | can_clk: can { |
1128 | compatible = "fixed-clock"; | 1130 | compatible = "fixed-clock"; |
1129 | #clock-cells = <0>; | 1131 | #clock-cells = <0>; |
1130 | /* This value must be overridden by the board. */ | 1132 | /* This value must be overridden by the board. */ |
@@ -1366,10 +1368,10 @@ | |||
1366 | mstp4_clks: mstp4_clks@e6150140 { | 1368 | mstp4_clks: mstp4_clks@e6150140 { |
1367 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1369 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1368 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; | 1370 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; |
1369 | clocks = <&cp_clk>; | 1371 | clocks = <&cp_clk>, <&zs_clk>; |
1370 | #clock-cells = <1>; | 1372 | #clock-cells = <1>; |
1371 | clock-indices = <R8A7791_CLK_IRQC>; | 1373 | clock-indices = <R8A7791_CLK_IRQC R8A7791_CLK_INTC_SYS>; |
1372 | clock-output-names = "irqc"; | 1374 | clock-output-names = "irqc", "intc-sys"; |
1373 | }; | 1375 | }; |
1374 | mstp5_clks: mstp5_clks@e6150144 { | 1376 | mstp5_clks: mstp5_clks@e6150144 { |
1375 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1377 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; |
@@ -1445,8 +1447,11 @@ | |||
1445 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1447 | compatible = "renesas,r8a7791-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1446 | reg = <0 0xe6150998 0 4>, <0 0xe61509a8 0 4>; | 1448 | reg = <0 0xe6150998 0 4>, <0 0xe61509a8 0 4>; |
1447 | clocks = <&p_clk>, | 1449 | clocks = <&p_clk>, |
1448 | <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, | 1450 | <&mstp10_clks R8A7791_CLK_SSI_ALL>, <&mstp10_clks R8A7791_CLK_SSI_ALL>, |
1449 | <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, | 1451 | <&mstp10_clks R8A7791_CLK_SSI_ALL>, <&mstp10_clks R8A7791_CLK_SSI_ALL>, |
1452 | <&mstp10_clks R8A7791_CLK_SSI_ALL>, <&mstp10_clks R8A7791_CLK_SSI_ALL>, | ||
1453 | <&mstp10_clks R8A7791_CLK_SSI_ALL>, <&mstp10_clks R8A7791_CLK_SSI_ALL>, | ||
1454 | <&mstp10_clks R8A7791_CLK_SSI_ALL>, <&mstp10_clks R8A7791_CLK_SSI_ALL>, | ||
1450 | <&p_clk>, | 1455 | <&p_clk>, |
1451 | <&mstp10_clks R8A7791_CLK_SCU_ALL>, <&mstp10_clks R8A7791_CLK_SCU_ALL>, | 1456 | <&mstp10_clks R8A7791_CLK_SCU_ALL>, <&mstp10_clks R8A7791_CLK_SCU_ALL>, |
1452 | <&mstp10_clks R8A7791_CLK_SCU_ALL>, <&mstp10_clks R8A7791_CLK_SCU_ALL>, | 1457 | <&mstp10_clks R8A7791_CLK_SCU_ALL>, <&mstp10_clks R8A7791_CLK_SCU_ALL>, |
@@ -1777,11 +1782,11 @@ | |||
1777 | 1782 | ||
1778 | rcar_sound,dvc { | 1783 | rcar_sound,dvc { |
1779 | dvc0: dvc-0 { | 1784 | dvc0: dvc-0 { |
1780 | dmas = <&audma0 0xbc>; | 1785 | dmas = <&audma1 0xbc>; |
1781 | dma-names = "tx"; | 1786 | dma-names = "tx"; |
1782 | }; | 1787 | }; |
1783 | dvc1: dvc-1 { | 1788 | dvc1: dvc-1 { |
1784 | dmas = <&audma0 0xbe>; | 1789 | dmas = <&audma1 0xbe>; |
1785 | dma-names = "tx"; | 1790 | dma-names = "tx"; |
1786 | }; | 1791 | }; |
1787 | }; | 1792 | }; |
diff --git a/arch/arm/boot/dts/r8a7792.dtsi b/arch/arm/boot/dts/r8a7792.dtsi index 8ecfda7a004e..0efecb232ee5 100644 --- a/arch/arm/boot/dts/r8a7792.dtsi +++ b/arch/arm/boot/dts/r8a7792.dtsi | |||
@@ -46,7 +46,7 @@ | |||
46 | compatible = "arm,cortex-a15"; | 46 | compatible = "arm,cortex-a15"; |
47 | reg = <0>; | 47 | reg = <0>; |
48 | clock-frequency = <1000000000>; | 48 | clock-frequency = <1000000000>; |
49 | clocks = <&cpg_clocks R8A7792_CLK_Z>; | 49 | clocks = <&z_clk>; |
50 | power-domains = <&sysc R8A7792_PD_CA15_CPU0>; | 50 | power-domains = <&sysc R8A7792_PD_CA15_CPU0>; |
51 | next-level-cache = <&L2_CA15>; | 51 | next-level-cache = <&L2_CA15>; |
52 | }; | 52 | }; |
@@ -60,9 +60,8 @@ | |||
60 | next-level-cache = <&L2_CA15>; | 60 | next-level-cache = <&L2_CA15>; |
61 | }; | 61 | }; |
62 | 62 | ||
63 | L2_CA15: cache-controller@0 { | 63 | L2_CA15: cache-controller-0 { |
64 | compatible = "cache"; | 64 | compatible = "cache"; |
65 | reg = <0>; | ||
66 | cache-unified; | 65 | cache-unified; |
67 | cache-level = <2>; | 66 | cache-level = <2>; |
68 | power-domains = <&sysc R8A7792_PD_CA15_SCU>; | 67 | power-domains = <&sysc R8A7792_PD_CA15_SCU>; |
@@ -93,6 +92,9 @@ | |||
93 | <0 0xf1006000 0 0x2000>; | 92 | <0 0xf1006000 0 0x2000>; |
94 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | | 93 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | |
95 | IRQ_TYPE_LEVEL_HIGH)>; | 94 | IRQ_TYPE_LEVEL_HIGH)>; |
95 | clocks = <&mstp4_clks R8A7792_CLK_INTC_SYS>; | ||
96 | clock-names = "clk"; | ||
97 | power-domains = <&sysc R8A7792_PD_ALWAYS_ON>; | ||
96 | }; | 98 | }; |
97 | 99 | ||
98 | irqc: interrupt-controller@e61c0000 { | 100 | irqc: interrupt-controller@e61c0000 { |
@@ -764,7 +766,7 @@ | |||
764 | clocks = <&extal_clk>; | 766 | clocks = <&extal_clk>; |
765 | #clock-cells = <1>; | 767 | #clock-cells = <1>; |
766 | clock-output-names = "main", "pll0", "pll1", "pll3", | 768 | clock-output-names = "main", "pll0", "pll1", "pll3", |
767 | "lb", "qspi", "z"; | 769 | "lb", "qspi"; |
768 | #power-domain-cells = <0>; | 770 | #power-domain-cells = <0>; |
769 | }; | 771 | }; |
770 | 772 | ||
@@ -776,6 +778,13 @@ | |||
776 | clock-div = <2>; | 778 | clock-div = <2>; |
777 | clock-mult = <1>; | 779 | clock-mult = <1>; |
778 | }; | 780 | }; |
781 | z_clk: z { | ||
782 | compatible = "fixed-factor-clock"; | ||
783 | clocks = <&cpg_clocks R8A7792_CLK_PLL0>; | ||
784 | #clock-cells = <0>; | ||
785 | clock-div = <1>; | ||
786 | clock-mult = <1>; | ||
787 | }; | ||
779 | zx_clk: zx { | 788 | zx_clk: zx { |
780 | compatible = "fixed-factor-clock"; | 789 | compatible = "fixed-factor-clock"; |
781 | clocks = <&cpg_clocks R8A7792_CLK_PLL1>; | 790 | clocks = <&cpg_clocks R8A7792_CLK_PLL1>; |
@@ -896,10 +905,12 @@ | |||
896 | compatible = "renesas,r8a7792-mstp-clocks", | 905 | compatible = "renesas,r8a7792-mstp-clocks", |
897 | "renesas,cpg-mstp-clocks"; | 906 | "renesas,cpg-mstp-clocks"; |
898 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; | 907 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; |
899 | clocks = <&cp_clk>; | 908 | clocks = <&cp_clk>, <&zs_clk>; |
900 | #clock-cells = <1>; | 909 | #clock-cells = <1>; |
901 | clock-indices = <R8A7792_CLK_IRQC>; | 910 | clock-indices = < |
902 | clock-output-names = "irqc"; | 911 | R8A7792_CLK_IRQC R8A7792_CLK_INTC_SYS |
912 | >; | ||
913 | clock-output-names = "irqc", "intc-sys"; | ||
903 | }; | 914 | }; |
904 | mstp7_clks: mstp7_clks@e615014c { | 915 | mstp7_clks: mstp7_clks@e615014c { |
905 | compatible = "renesas,r8a7792-mstp-clocks", | 916 | compatible = "renesas,r8a7792-mstp-clocks", |
diff --git a/arch/arm/boot/dts/r8a7793-gose.dts b/arch/arm/boot/dts/r8a7793-gose.dts index 92fff07c5e2b..806c93f6ae8b 100644 --- a/arch/arm/boot/dts/r8a7793-gose.dts +++ b/arch/arm/boot/dts/r8a7793-gose.dts | |||
@@ -412,7 +412,6 @@ | |||
412 | 412 | ||
413 | &scif_clk { | 413 | &scif_clk { |
414 | clock-frequency = <14745600>; | 414 | clock-frequency = <14745600>; |
415 | status = "okay"; | ||
416 | }; | 415 | }; |
417 | 416 | ||
418 | &sdhi0 { | 417 | &sdhi0 { |
diff --git a/arch/arm/boot/dts/r8a7793.dtsi b/arch/arm/boot/dts/r8a7793.dtsi index 48ce21c5e8db..4de6041d61f9 100644 --- a/arch/arm/boot/dts/r8a7793.dtsi +++ b/arch/arm/boot/dts/r8a7793.dtsi | |||
@@ -65,9 +65,8 @@ | |||
65 | power-domains = <&sysc R8A7793_PD_CA15_CPU1>; | 65 | power-domains = <&sysc R8A7793_PD_CA15_CPU1>; |
66 | }; | 66 | }; |
67 | 67 | ||
68 | L2_CA15: cache-controller@0 { | 68 | L2_CA15: cache-controller-0 { |
69 | compatible = "cache"; | 69 | compatible = "cache"; |
70 | reg = <0>; | ||
71 | power-domains = <&sysc R8A7793_PD_CA15_SCU>; | 70 | power-domains = <&sysc R8A7793_PD_CA15_SCU>; |
72 | cache-unified; | 71 | cache-unified; |
73 | cache-level = <2>; | 72 | cache-level = <2>; |
@@ -109,6 +108,9 @@ | |||
109 | <0 0xf1004000 0 0x2000>, | 108 | <0 0xf1004000 0 0x2000>, |
110 | <0 0xf1006000 0 0x2000>; | 109 | <0 0xf1006000 0 0x2000>; |
111 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; | 110 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; |
111 | clocks = <&mstp4_clks R8A7793_CLK_INTC_SYS>; | ||
112 | clock-names = "clk"; | ||
113 | power-domains = <&sysc R8A7793_PD_ALWAYS_ON>; | ||
112 | }; | 114 | }; |
113 | 115 | ||
114 | gpio0: gpio@e6050000 { | 116 | gpio0: gpio@e6050000 { |
@@ -1179,10 +1181,12 @@ | |||
1179 | mstp4_clks: mstp4_clks@e6150140 { | 1181 | mstp4_clks: mstp4_clks@e6150140 { |
1180 | compatible = "renesas,r8a7793-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1182 | compatible = "renesas,r8a7793-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1181 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; | 1183 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; |
1182 | clocks = <&cp_clk>; | 1184 | clocks = <&cp_clk>, <&zs_clk>; |
1183 | #clock-cells = <1>; | 1185 | #clock-cells = <1>; |
1184 | clock-indices = <R8A7793_CLK_IRQC>; | 1186 | clock-indices = < |
1185 | clock-output-names = "irqc"; | 1187 | R8A7793_CLK_IRQC R8A7793_CLK_INTC_SYS |
1188 | >; | ||
1189 | clock-output-names = "irqc", "intc-sys"; | ||
1186 | }; | 1190 | }; |
1187 | mstp5_clks: mstp5_clks@e6150144 { | 1191 | mstp5_clks: mstp5_clks@e6150144 { |
1188 | compatible = "renesas,r8a7793-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1192 | compatible = "renesas,r8a7793-mstp-clocks", "renesas,cpg-mstp-clocks"; |
@@ -1265,8 +1269,11 @@ | |||
1265 | compatible = "renesas,r8a7793-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1269 | compatible = "renesas,r8a7793-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1266 | reg = <0 0xe6150998 0 4>, <0 0xe61509a8 0 4>; | 1270 | reg = <0 0xe6150998 0 4>, <0 0xe61509a8 0 4>; |
1267 | clocks = <&p_clk>, | 1271 | clocks = <&p_clk>, |
1268 | <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, | 1272 | <&mstp10_clks R8A7793_CLK_SSI_ALL>, <&mstp10_clks R8A7793_CLK_SSI_ALL>, |
1269 | <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, | 1273 | <&mstp10_clks R8A7793_CLK_SSI_ALL>, <&mstp10_clks R8A7793_CLK_SSI_ALL>, |
1274 | <&mstp10_clks R8A7793_CLK_SSI_ALL>, <&mstp10_clks R8A7793_CLK_SSI_ALL>, | ||
1275 | <&mstp10_clks R8A7793_CLK_SSI_ALL>, <&mstp10_clks R8A7793_CLK_SSI_ALL>, | ||
1276 | <&mstp10_clks R8A7793_CLK_SSI_ALL>, <&mstp10_clks R8A7793_CLK_SSI_ALL>, | ||
1270 | <&p_clk>, | 1277 | <&p_clk>, |
1271 | <&mstp10_clks R8A7793_CLK_SCU_ALL>, <&mstp10_clks R8A7793_CLK_SCU_ALL>, | 1278 | <&mstp10_clks R8A7793_CLK_SCU_ALL>, <&mstp10_clks R8A7793_CLK_SCU_ALL>, |
1272 | <&mstp10_clks R8A7793_CLK_SCU_ALL>, <&mstp10_clks R8A7793_CLK_SCU_ALL>, | 1279 | <&mstp10_clks R8A7793_CLK_SCU_ALL>, <&mstp10_clks R8A7793_CLK_SCU_ALL>, |
@@ -1426,11 +1433,11 @@ | |||
1426 | 1433 | ||
1427 | rcar_sound,dvc { | 1434 | rcar_sound,dvc { |
1428 | dvc0: dvc-0 { | 1435 | dvc0: dvc-0 { |
1429 | dmas = <&audma0 0xbc>; | 1436 | dmas = <&audma1 0xbc>; |
1430 | dma-names = "tx"; | 1437 | dma-names = "tx"; |
1431 | }; | 1438 | }; |
1432 | dvc1: dvc-1 { | 1439 | dvc1: dvc-1 { |
1433 | dmas = <&audma0 0xbe>; | 1440 | dmas = <&audma1 0xbe>; |
1434 | dma-names = "tx"; | 1441 | dma-names = "tx"; |
1435 | }; | 1442 | }; |
1436 | }; | 1443 | }; |
diff --git a/arch/arm/boot/dts/r8a7794-alt.dts b/arch/arm/boot/dts/r8a7794-alt.dts index 569e3f0e97a5..f1eea13cdf44 100644 --- a/arch/arm/boot/dts/r8a7794-alt.dts +++ b/arch/arm/boot/dts/r8a7794-alt.dts | |||
@@ -168,7 +168,7 @@ | |||
168 | status = "okay"; | 168 | status = "okay"; |
169 | 169 | ||
170 | clocks = <&mstp7_clks R8A7794_CLK_DU0>, | 170 | clocks = <&mstp7_clks R8A7794_CLK_DU0>, |
171 | <&mstp7_clks R8A7794_CLK_DU0>, | 171 | <&mstp7_clks R8A7794_CLK_DU1>, |
172 | <&x13_clk>, <&x2_clk>; | 172 | <&x13_clk>, <&x2_clk>; |
173 | clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1"; | 173 | clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1"; |
174 | 174 | ||
@@ -375,7 +375,6 @@ | |||
375 | 375 | ||
376 | &scif_clk { | 376 | &scif_clk { |
377 | clock-frequency = <14745600>; | 377 | clock-frequency = <14745600>; |
378 | status = "okay"; | ||
379 | }; | 378 | }; |
380 | 379 | ||
381 | &qspi { | 380 | &qspi { |
diff --git a/arch/arm/boot/dts/r8a7794-silk.dts b/arch/arm/boot/dts/r8a7794-silk.dts index cf880ac06f4b..4cb5278d104d 100644 --- a/arch/arm/boot/dts/r8a7794-silk.dts +++ b/arch/arm/boot/dts/r8a7794-silk.dts | |||
@@ -248,7 +248,6 @@ | |||
248 | 248 | ||
249 | &scif_clk { | 249 | &scif_clk { |
250 | clock-frequency = <14745600>; | 250 | clock-frequency = <14745600>; |
251 | status = "okay"; | ||
252 | }; | 251 | }; |
253 | 252 | ||
254 | ðer { | 253 | ðer { |
@@ -425,7 +424,7 @@ | |||
425 | status = "okay"; | 424 | status = "okay"; |
426 | 425 | ||
427 | clocks = <&mstp7_clks R8A7794_CLK_DU0>, | 426 | clocks = <&mstp7_clks R8A7794_CLK_DU0>, |
428 | <&mstp7_clks R8A7794_CLK_DU0>, | 427 | <&mstp7_clks R8A7794_CLK_DU1>, |
429 | <&x2_clk>, <&x3_clk>; | 428 | <&x2_clk>, <&x3_clk>; |
430 | clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1"; | 429 | clock-names = "du.0", "du.1", "dclkin.0", "dclkin.1"; |
431 | 430 | ||
diff --git a/arch/arm/boot/dts/r8a7794.dtsi b/arch/arm/boot/dts/r8a7794.dtsi index 319c1069b7ee..a19b884fb258 100644 --- a/arch/arm/boot/dts/r8a7794.dtsi +++ b/arch/arm/boot/dts/r8a7794.dtsi | |||
@@ -43,6 +43,7 @@ | |||
43 | compatible = "arm,cortex-a7"; | 43 | compatible = "arm,cortex-a7"; |
44 | reg = <0>; | 44 | reg = <0>; |
45 | clock-frequency = <1000000000>; | 45 | clock-frequency = <1000000000>; |
46 | clocks = <&z2_clk>; | ||
46 | power-domains = <&sysc R8A7794_PD_CA7_CPU0>; | 47 | power-domains = <&sysc R8A7794_PD_CA7_CPU0>; |
47 | next-level-cache = <&L2_CA7>; | 48 | next-level-cache = <&L2_CA7>; |
48 | }; | 49 | }; |
@@ -56,9 +57,8 @@ | |||
56 | next-level-cache = <&L2_CA7>; | 57 | next-level-cache = <&L2_CA7>; |
57 | }; | 58 | }; |
58 | 59 | ||
59 | L2_CA7: cache-controller@0 { | 60 | L2_CA7: cache-controller-0 { |
60 | compatible = "cache"; | 61 | compatible = "cache"; |
61 | reg = <0>; | ||
62 | power-domains = <&sysc R8A7794_PD_CA7_SCU>; | 62 | power-domains = <&sysc R8A7794_PD_CA7_SCU>; |
63 | cache-unified; | 63 | cache-unified; |
64 | cache-level = <2>; | 64 | cache-level = <2>; |
@@ -75,6 +75,9 @@ | |||
75 | <0 0xf1004000 0 0x2000>, | 75 | <0 0xf1004000 0 0x2000>, |
76 | <0 0xf1006000 0 0x2000>; | 76 | <0 0xf1006000 0 0x2000>; |
77 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; | 77 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_LEVEL_HIGH)>; |
78 | clocks = <&mstp4_clks R8A7794_CLK_INTC_SYS>; | ||
79 | clock-names = "clk"; | ||
80 | power-domains = <&sysc R8A7794_PD_ALWAYS_ON>; | ||
78 | }; | 81 | }; |
79 | 82 | ||
80 | gpio0: gpio@e6050000 { | 83 | gpio0: gpio@e6050000 { |
@@ -923,7 +926,7 @@ | |||
923 | interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>, | 926 | interrupts = <GIC_SPI 256 IRQ_TYPE_LEVEL_HIGH>, |
924 | <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>; | 927 | <GIC_SPI 268 IRQ_TYPE_LEVEL_HIGH>; |
925 | clocks = <&mstp7_clks R8A7794_CLK_DU0>, | 928 | clocks = <&mstp7_clks R8A7794_CLK_DU0>, |
926 | <&mstp7_clks R8A7794_CLK_DU0>; | 929 | <&mstp7_clks R8A7794_CLK_DU1>; |
927 | clock-names = "du.0", "du.1"; | 930 | clock-names = "du.0", "du.1"; |
928 | status = "disabled"; | 931 | status = "disabled"; |
929 | 932 | ||
@@ -1062,6 +1065,13 @@ | |||
1062 | clock-div = <2>; | 1065 | clock-div = <2>; |
1063 | clock-mult = <1>; | 1066 | clock-mult = <1>; |
1064 | }; | 1067 | }; |
1068 | z2_clk: z2 { | ||
1069 | compatible = "fixed-factor-clock"; | ||
1070 | clocks = <&cpg_clocks R8A7794_CLK_PLL0>; | ||
1071 | #clock-cells = <0>; | ||
1072 | clock-div = <1>; | ||
1073 | clock-mult = <1>; | ||
1074 | }; | ||
1065 | zg_clk: zg { | 1075 | zg_clk: zg { |
1066 | compatible = "fixed-factor-clock"; | 1076 | compatible = "fixed-factor-clock"; |
1067 | clocks = <&cpg_clocks R8A7794_CLK_PLL1>; | 1077 | clocks = <&cpg_clocks R8A7794_CLK_PLL1>; |
@@ -1248,10 +1258,10 @@ | |||
1248 | mstp4_clks: mstp4_clks@e6150140 { | 1258 | mstp4_clks: mstp4_clks@e6150140 { |
1249 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1259 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; |
1250 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; | 1260 | reg = <0 0xe6150140 0 4>, <0 0xe615004c 0 4>; |
1251 | clocks = <&cp_clk>; | 1261 | clocks = <&cp_clk>, <&zs_clk>; |
1252 | #clock-cells = <1>; | 1262 | #clock-cells = <1>; |
1253 | clock-indices = <R8A7794_CLK_IRQC>; | 1263 | clock-indices = <R8A7794_CLK_IRQC R8A7794_CLK_INTC_SYS>; |
1254 | clock-output-names = "irqc"; | 1264 | clock-output-names = "irqc", "intc-sys"; |
1255 | }; | 1265 | }; |
1256 | mstp5_clks: mstp5_clks@e6150144 { | 1266 | mstp5_clks: mstp5_clks@e6150144 { |
1257 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1267 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; |
@@ -1268,19 +1278,21 @@ | |||
1268 | clocks = <&mp_clk>, <&hp_clk>, | 1278 | clocks = <&mp_clk>, <&hp_clk>, |
1269 | <&zs_clk>, <&p_clk>, <&p_clk>, <&zs_clk>, | 1279 | <&zs_clk>, <&p_clk>, <&p_clk>, <&zs_clk>, |
1270 | <&zs_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, | 1280 | <&zs_clk>, <&p_clk>, <&p_clk>, <&p_clk>, <&p_clk>, |
1271 | <&zx_clk>; | 1281 | <&zx_clk>, <&zx_clk>; |
1272 | #clock-cells = <1>; | 1282 | #clock-cells = <1>; |
1273 | clock-indices = < | 1283 | clock-indices = < |
1274 | R8A7794_CLK_EHCI R8A7794_CLK_HSUSB | 1284 | R8A7794_CLK_EHCI R8A7794_CLK_HSUSB |
1275 | R8A7794_CLK_HSCIF2 R8A7794_CLK_SCIF5 | 1285 | R8A7794_CLK_HSCIF2 R8A7794_CLK_SCIF5 |
1276 | R8A7794_CLK_SCIF4 R8A7794_CLK_HSCIF1 R8A7794_CLK_HSCIF0 | 1286 | R8A7794_CLK_SCIF4 R8A7794_CLK_HSCIF1 R8A7794_CLK_HSCIF0 |
1277 | R8A7794_CLK_SCIF3 R8A7794_CLK_SCIF2 R8A7794_CLK_SCIF1 | 1287 | R8A7794_CLK_SCIF3 R8A7794_CLK_SCIF2 R8A7794_CLK_SCIF1 |
1278 | R8A7794_CLK_SCIF0 R8A7794_CLK_DU0 | 1288 | R8A7794_CLK_SCIF0 |
1289 | R8A7794_CLK_DU1 R8A7794_CLK_DU0 | ||
1279 | >; | 1290 | >; |
1280 | clock-output-names = | 1291 | clock-output-names = |
1281 | "ehci", "hsusb", | 1292 | "ehci", "hsusb", |
1282 | "hscif2", "scif5", "scif4", "hscif1", "hscif0", | 1293 | "hscif2", "scif5", "scif4", "hscif1", "hscif0", |
1283 | "scif3", "scif2", "scif1", "scif0", "du0"; | 1294 | "scif3", "scif2", "scif1", "scif0", |
1295 | "du1", "du0"; | ||
1284 | }; | 1296 | }; |
1285 | mstp8_clks: mstp8_clks@e6150990 { | 1297 | mstp8_clks: mstp8_clks@e6150990 { |
1286 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; | 1298 | compatible = "renesas,r8a7794-mstp-clocks", "renesas,cpg-mstp-clocks"; |
diff --git a/arch/arm/boot/dts/rk3036.dtsi b/arch/arm/boot/dts/rk3036.dtsi index ff9b90bfaefd..ec91325d3b6e 100644 --- a/arch/arm/boot/dts/rk3036.dtsi +++ b/arch/arm/boot/dts/rk3036.dtsi | |||
@@ -250,6 +250,8 @@ | |||
250 | clock-names = "biu", "ciu"; | 250 | clock-names = "biu", "ciu"; |
251 | fifo-depth = <0x100>; | 251 | fifo-depth = <0x100>; |
252 | interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; | 252 | interrupts = <GIC_SPI 14 IRQ_TYPE_LEVEL_HIGH>; |
253 | resets = <&cru SRST_MMC0>; | ||
254 | reset-names = "reset"; | ||
253 | status = "disabled"; | 255 | status = "disabled"; |
254 | }; | 256 | }; |
255 | 257 | ||
@@ -262,6 +264,8 @@ | |||
262 | clock-names = "biu", "ciu", "ciu_drv", "ciu_sample"; | 264 | clock-names = "biu", "ciu", "ciu_drv", "ciu_sample"; |
263 | fifo-depth = <0x100>; | 265 | fifo-depth = <0x100>; |
264 | interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; | 266 | interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>; |
267 | resets = <&cru SRST_SDIO>; | ||
268 | reset-names = "reset"; | ||
265 | status = "disabled"; | 269 | status = "disabled"; |
266 | }; | 270 | }; |
267 | 271 | ||
@@ -286,6 +290,8 @@ | |||
286 | num-slots = <1>; | 290 | num-slots = <1>; |
287 | pinctrl-names = "default"; | 291 | pinctrl-names = "default"; |
288 | pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>; | 292 | pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>; |
293 | resets = <&cru SRST_EMMC>; | ||
294 | reset-names = "reset"; | ||
289 | status = "disabled"; | 295 | status = "disabled"; |
290 | }; | 296 | }; |
291 | 297 | ||
diff --git a/arch/arm/boot/dts/rk3188.dtsi b/arch/arm/boot/dts/rk3188.dtsi index 1aff4ad22fc4..1399bc04ea77 100644 --- a/arch/arm/boot/dts/rk3188.dtsi +++ b/arch/arm/boot/dts/rk3188.dtsi | |||
@@ -545,12 +545,12 @@ | |||
545 | }; | 545 | }; |
546 | 546 | ||
547 | &global_timer { | 547 | &global_timer { |
548 | interrupts = <GIC_PPI 11 0xf04>; | 548 | interrupts = <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_EDGE_RISING)>; |
549 | status = "disabled"; | 549 | status = "disabled"; |
550 | }; | 550 | }; |
551 | 551 | ||
552 | &local_timer { | 552 | &local_timer { |
553 | interrupts = <GIC_PPI 13 0xf04>; | 553 | interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_EDGE_RISING)>; |
554 | }; | 554 | }; |
555 | 555 | ||
556 | &i2c0 { | 556 | &i2c0 { |
diff --git a/arch/arm/boot/dts/rk322x.dtsi b/arch/arm/boot/dts/rk322x.dtsi index 641607d9ad29..48a0c1cf4301 100644 --- a/arch/arm/boot/dts/rk322x.dtsi +++ b/arch/arm/boot/dts/rk322x.dtsi | |||
@@ -414,6 +414,8 @@ | |||
414 | fifo-depth = <0x100>; | 414 | fifo-depth = <0x100>; |
415 | pinctrl-names = "default"; | 415 | pinctrl-names = "default"; |
416 | pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>; | 416 | pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_bus8>; |
417 | resets = <&cru SRST_EMMC>; | ||
418 | reset-names = "reset"; | ||
417 | status = "disabled"; | 419 | status = "disabled"; |
418 | }; | 420 | }; |
419 | 421 | ||
diff --git a/arch/arm/boot/dts/rk3288-miqi.dts b/arch/arm/boot/dts/rk3288-miqi.dts index 21326f3e8564..30e93f694ae8 100644 --- a/arch/arm/boot/dts/rk3288-miqi.dts +++ b/arch/arm/boot/dts/rk3288-miqi.dts | |||
@@ -68,11 +68,9 @@ | |||
68 | compatible = "gpio-leds"; | 68 | compatible = "gpio-leds"; |
69 | 69 | ||
70 | work { | 70 | work { |
71 | gpios = <&gpio7 RK_PA4 GPIO_ACTIVE_LOW>; | 71 | gpios = <&gpio7 RK_PA2 GPIO_ACTIVE_HIGH>; |
72 | label = "miqi:green:user"; | 72 | label = "miqi:green:user"; |
73 | linux,default-trigger = "default-on"; | 73 | linux,default-trigger = "timer"; |
74 | pinctrl-names = "default"; | ||
75 | pinctrl-0 = <&led_ctl>; | ||
76 | }; | 74 | }; |
77 | }; | 75 | }; |
78 | 76 | ||
@@ -363,12 +361,6 @@ | |||
363 | }; | 361 | }; |
364 | }; | 362 | }; |
365 | 363 | ||
366 | leds { | ||
367 | led_ctl: led-ctl { | ||
368 | rockchip,pins = <7 4 RK_FUNC_GPIO &pcfg_pull_none>; | ||
369 | }; | ||
370 | }; | ||
371 | |||
372 | sdmmc { | 364 | sdmmc { |
373 | /* | 365 | /* |
374 | * Default drive strength isn't enough to achieve even | 366 | * Default drive strength isn't enough to achieve even |
diff --git a/arch/arm/boot/dts/rk3288-phycore-rdk.dts b/arch/arm/boot/dts/rk3288-phycore-rdk.dts new file mode 100644 index 000000000000..3dda79579b51 --- /dev/null +++ b/arch/arm/boot/dts/rk3288-phycore-rdk.dts | |||
@@ -0,0 +1,298 @@ | |||
1 | /* | ||
2 | * Device tree file for Phytec PCM-947 carrier board | ||
3 | * Copyright (C) 2017 PHYTEC Messtechnik GmbH | ||
4 | * Author: Wadim Egorov <w.egorov@phytec.de> | ||
5 | * | ||
6 | * This file is dual-licensed: you can use it either under the terms | ||
7 | * of the GPL or the X11 license, at your option. Note that this dual | ||
8 | * licensing only applies to this file, and not this project as a | ||
9 | * whole. | ||
10 | * | ||
11 | * a) This file is free software; you can redistribute it and/or | ||
12 | * modify it under the terms of the GNU General Public License as | ||
13 | * published by the Free Software Foundation; either version 2 of the | ||
14 | * License, or (at your option) any later version. | ||
15 | * | ||
16 | * This file is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * Or, alternatively, | ||
22 | * | ||
23 | * b) Permission is hereby granted, free of charge, to any person | ||
24 | * obtaining a copy of this software and associated documentation | ||
25 | * files (the "Software"), to deal in the Software without | ||
26 | * restriction, including without limitation the rights to use, | ||
27 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
28 | * sell copies of the Software, and to permit persons to whom the | ||
29 | * Software is furnished to do so, subject to the following | ||
30 | * conditions: | ||
31 | * | ||
32 | * The above copyright notice and this permission notice shall be | ||
33 | * included in all copies or substantial portions of the Software. | ||
34 | * | ||
35 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
36 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
37 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
38 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
39 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
40 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
41 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
42 | * OTHER DEALINGS IN THE SOFTWARE. | ||
43 | */ | ||
44 | |||
45 | /dts-v1/; | ||
46 | |||
47 | #include <dt-bindings/input/input.h> | ||
48 | #include <dt-bindings/leds/leds-pca9532.h> | ||
49 | #include "rk3288-phycore-som.dtsi" | ||
50 | |||
51 | / { | ||
52 | model = "Phytec RK3288 PCM-947"; | ||
53 | compatible = "phytec,rk3288-pcm-947", "phytec,rk3288-phycore-som", "rockchip,rk3288"; | ||
54 | |||
55 | user_buttons: user-buttons { | ||
56 | compatible = "gpio-keys"; | ||
57 | pinctrl-names = "default"; | ||
58 | pinctrl-0 = <&user_button_pins>; | ||
59 | |||
60 | button@0 { | ||
61 | label = "home"; | ||
62 | linux,code = <KEY_HOME>; | ||
63 | gpios = <&gpio8 0 GPIO_ACTIVE_HIGH>; | ||
64 | wakeup-source; | ||
65 | }; | ||
66 | |||
67 | button@1 { | ||
68 | label = "menu"; | ||
69 | linux,code = <KEY_MENU>; | ||
70 | gpios = <&gpio8 3 GPIO_ACTIVE_HIGH>; | ||
71 | wakeup-source; | ||
72 | }; | ||
73 | }; | ||
74 | |||
75 | vcc_host0_5v: usb-host0-regulator { | ||
76 | compatible = "regulator-fixed"; | ||
77 | gpio = <&gpio2 13 GPIO_ACTIVE_HIGH>; | ||
78 | pinctrl-names = "default"; | ||
79 | pinctrl-0 = <&host0_vbus_drv>; | ||
80 | regulator-name = "vcc_host0_5v"; | ||
81 | regulator-min-microvolt = <5000000>; | ||
82 | regulator-max-microvolt = <5000000>; | ||
83 | regulator-always-on; | ||
84 | vin-supply = <&vdd_in_otg_out>; | ||
85 | }; | ||
86 | |||
87 | vcc_host1_5v: usb-host1-regulator { | ||
88 | compatible = "regulator-fixed"; | ||
89 | gpio = <&gpio2 0 GPIO_ACTIVE_HIGH>; | ||
90 | pinctrl-names = "default"; | ||
91 | pinctrl-0 = <&host1_vbus_drv>; | ||
92 | regulator-name = "vcc_host1_5v"; | ||
93 | regulator-min-microvolt = <5000000>; | ||
94 | regulator-max-microvolt = <5000000>; | ||
95 | regulator-always-on; | ||
96 | vin-supply = <&vdd_in_otg_out>; | ||
97 | }; | ||
98 | |||
99 | vcc_otg_5v: usb-otg-regulator { | ||
100 | compatible = "regulator-fixed"; | ||
101 | gpio = <&gpio2 12 GPIO_ACTIVE_HIGH>; | ||
102 | pinctrl-names = "default"; | ||
103 | pinctrl-0 = <&otg_vbus_drv>; | ||
104 | regulator-name = "vcc_otg_5v"; | ||
105 | regulator-min-microvolt = <5000000>; | ||
106 | regulator-max-microvolt = <5000000>; | ||
107 | regulator-always-on; | ||
108 | vin-supply = <&vdd_in_otg_out>; | ||
109 | }; | ||
110 | }; | ||
111 | |||
112 | &gmac { | ||
113 | status = "okay"; | ||
114 | }; | ||
115 | |||
116 | &hdmi { | ||
117 | status = "okay"; | ||
118 | }; | ||
119 | |||
120 | &i2c1 { | ||
121 | status = "okay"; | ||
122 | |||
123 | touchscreen@44 { | ||
124 | compatible = "st,stmpe811"; | ||
125 | reg = <0x44>; | ||
126 | }; | ||
127 | |||
128 | adc@64 { | ||
129 | compatible = "maxim,max1037"; | ||
130 | reg = <0x64>; | ||
131 | }; | ||
132 | |||
133 | i2c_rtc: rtc@68 { | ||
134 | compatible = "rv4162"; | ||
135 | reg = <0x68>; | ||
136 | pinctrl-names = "default"; | ||
137 | pinctrl-0 = <&i2c_rtc_int>; | ||
138 | interrupt-parent = <&gpio5>; | ||
139 | interrupts = <10 0>; | ||
140 | }; | ||
141 | }; | ||
142 | |||
143 | &i2c3 { | ||
144 | status = "okay"; | ||
145 | |||
146 | i2c_eeprom_cb: eeprom@51 { | ||
147 | compatible = "atmel,24c32"; | ||
148 | reg = <0x51>; | ||
149 | pagesize = <32>; | ||
150 | }; | ||
151 | }; | ||
152 | |||
153 | &i2c4 { | ||
154 | status = "okay"; | ||
155 | |||
156 | /* PCA9533 - 4-bit LED dimmer */ | ||
157 | leddim: leddimmer@62 { | ||
158 | compatible = "nxp,pca9533"; | ||
159 | reg = <0x62>; | ||
160 | |||
161 | led1 { | ||
162 | label = "red:user1"; | ||
163 | linux,default-trigger = "none"; | ||
164 | type = <PCA9532_TYPE_LED>; | ||
165 | }; | ||
166 | |||
167 | led2 { | ||
168 | label = "green:user2"; | ||
169 | linux,default-trigger = "none"; | ||
170 | type = <PCA9532_TYPE_LED>; | ||
171 | }; | ||
172 | |||
173 | led3 { | ||
174 | label = "blue:user3"; | ||
175 | linux,default-trigger = "none"; | ||
176 | type = <PCA9532_TYPE_LED>; | ||
177 | }; | ||
178 | |||
179 | led4 { | ||
180 | label = "red:user4"; | ||
181 | linux,default-trigger = "none"; | ||
182 | type = <PCA9532_TYPE_LED>; | ||
183 | }; | ||
184 | }; | ||
185 | }; | ||
186 | |||
187 | &i2c5 { | ||
188 | status = "okay"; | ||
189 | }; | ||
190 | |||
191 | &pinctrl { | ||
192 | pcfg_pull_up_drv_12ma: pcfg-pull-up-drv-12ma { | ||
193 | bias-pull-up; | ||
194 | drive-strength = <12>; | ||
195 | }; | ||
196 | |||
197 | buttons { | ||
198 | user_button_pins: user-button-pins { | ||
199 | /* button 1 */ | ||
200 | rockchip,pins = <8 3 RK_FUNC_GPIO &pcfg_pull_up>, | ||
201 | /* button 2 */ | ||
202 | <8 0 RK_FUNC_GPIO &pcfg_pull_up>; | ||
203 | }; | ||
204 | }; | ||
205 | |||
206 | rv4162 { | ||
207 | i2c_rtc_int: i2c-rtc-int { | ||
208 | rockchip,pins = <5 10 RK_FUNC_GPIO &pcfg_pull_up>; | ||
209 | }; | ||
210 | }; | ||
211 | |||
212 | sdmmc { | ||
213 | /* | ||
214 | * Default drive strength isn't enough to achieve even | ||
215 | * high-speed mode on pcm-947 board so bump up to 12 mA. | ||
216 | */ | ||
217 | sdmmc_bus4: sdmmc-bus4 { | ||
218 | rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up_drv_12ma>, | ||
219 | <6 17 RK_FUNC_1 &pcfg_pull_up_drv_12ma>, | ||
220 | <6 18 RK_FUNC_1 &pcfg_pull_up_drv_12ma>, | ||
221 | <6 19 RK_FUNC_1 &pcfg_pull_up_drv_12ma>; | ||
222 | }; | ||
223 | |||
224 | sdmmc_clk: sdmmc-clk { | ||
225 | rockchip,pins = <6 20 RK_FUNC_1 &pcfg_pull_none_12ma>; | ||
226 | }; | ||
227 | |||
228 | sdmmc_cmd: sdmmc-cmd { | ||
229 | rockchip,pins = <6 21 RK_FUNC_1 &pcfg_pull_up_drv_12ma>; | ||
230 | }; | ||
231 | |||
232 | sdmmc_pwr: sdmmc-pwr { | ||
233 | rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>; | ||
234 | }; | ||
235 | }; | ||
236 | |||
237 | touchscreen { | ||
238 | ts_irq_pin: ts-irq-pin { | ||
239 | rockchip,pins = <5 15 RK_FUNC_GPIO &pcfg_pull_none>; | ||
240 | }; | ||
241 | }; | ||
242 | |||
243 | usb_host { | ||
244 | host0_vbus_drv: host0-vbus-drv { | ||
245 | rockchip,pins = <2 13 RK_FUNC_GPIO &pcfg_pull_none>; | ||
246 | }; | ||
247 | |||
248 | host1_vbus_drv: host1-vbus-drv { | ||
249 | rockchip,pins = <2 0 RK_FUNC_GPIO &pcfg_pull_none>; | ||
250 | }; | ||
251 | }; | ||
252 | |||
253 | usb_otg { | ||
254 | otg_vbus_drv: otg-vbus-drv { | ||
255 | rockchip,pins = <2 12 RK_FUNC_GPIO &pcfg_pull_none>; | ||
256 | }; | ||
257 | }; | ||
258 | }; | ||
259 | |||
260 | &sdmmc { | ||
261 | bus-width = <4>; | ||
262 | cap-mmc-highspeed; | ||
263 | cap-sd-highspeed; | ||
264 | card-detect-delay = <200>; | ||
265 | disable-wp; | ||
266 | num-slots = <1>; | ||
267 | pinctrl-names = "default"; | ||
268 | pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>; | ||
269 | vmmc-supply = <&vdd_io_sd>; | ||
270 | vqmmc-supply = <&vdd_io_sd>; | ||
271 | status = "okay"; | ||
272 | }; | ||
273 | |||
274 | &uart0 { | ||
275 | pinctrl-names = "default"; | ||
276 | pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>; | ||
277 | status = "okay"; | ||
278 | }; | ||
279 | |||
280 | &uart2 { | ||
281 | status = "okay"; | ||
282 | }; | ||
283 | |||
284 | &usbphy { | ||
285 | status = "okay"; | ||
286 | }; | ||
287 | |||
288 | &usb_host0_ehci { | ||
289 | status = "okay"; | ||
290 | }; | ||
291 | |||
292 | &usb_host1 { | ||
293 | status = "okay"; | ||
294 | }; | ||
295 | |||
296 | &usb_otg { | ||
297 | status = "okay"; | ||
298 | }; | ||
diff --git a/arch/arm/boot/dts/rk3288-phycore-som.dtsi b/arch/arm/boot/dts/rk3288-phycore-som.dtsi new file mode 100644 index 000000000000..26cd3ad45160 --- /dev/null +++ b/arch/arm/boot/dts/rk3288-phycore-som.dtsi | |||
@@ -0,0 +1,497 @@ | |||
1 | /* | ||
2 | * Device tree file for Phytec phyCORE-RK3288 SoM | ||
3 | * Copyright (C) 2017 PHYTEC Messtechnik GmbH | ||
4 | * Author: Wadim Egorov <w.egorov@phytec.de> | ||
5 | * | ||
6 | * This file is dual-licensed: you can use it either under the terms | ||
7 | * of the GPL or the X11 license, at your option. Note that this dual | ||
8 | * licensing only applies to this file, and not this project as a | ||
9 | * whole. | ||
10 | * | ||
11 | * a) This file is free software; you can redistribute it and/or | ||
12 | * modify it under the terms of the GNU General Public License as | ||
13 | * published by the Free Software Foundation; either version 2 of the | ||
14 | * License, or (at your option) any later version. | ||
15 | * | ||
16 | * This file is distributed in the hope that it will be useful, | ||
17 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
18 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
19 | * GNU General Public License for more details. | ||
20 | * | ||
21 | * Or, alternatively, | ||
22 | * | ||
23 | * b) Permission is hereby granted, free of charge, to any person | ||
24 | * obtaining a copy of this software and associated documentation | ||
25 | * files (the "Software"), to deal in the Software without | ||
26 | * restriction, including without limitation the rights to use, | ||
27 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
28 | * sell copies of the Software, and to permit persons to whom the | ||
29 | * Software is furnished to do so, subject to the following | ||
30 | * conditions: | ||
31 | * | ||
32 | * The above copyright notice and this permission notice shall be | ||
33 | * included in all copies or substantial portions of the Software. | ||
34 | * | ||
35 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
36 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
37 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
38 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
39 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
40 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
41 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
42 | * OTHER DEALINGS IN THE SOFTWARE. | ||
43 | */ | ||
44 | |||
45 | #include <dt-bindings/net/ti-dp83867.h> | ||
46 | #include "rk3288.dtsi" | ||
47 | |||
48 | / { | ||
49 | model = "Phytec RK3288 phyCORE"; | ||
50 | compatible = "phytec,rk3288-phycore-som", "rockchip,rk3288"; | ||
51 | |||
52 | /* | ||
53 | * Set the minimum memory size here and | ||
54 | * let the bootloader set the real size. | ||
55 | */ | ||
56 | memory { | ||
57 | device_type = "memory"; | ||
58 | reg = <0 0x8000000>; | ||
59 | }; | ||
60 | |||
61 | aliases { | ||
62 | rtc0 = &i2c_rtc; | ||
63 | rtc1 = &rk818; | ||
64 | }; | ||
65 | |||
66 | ext_gmac: external-gmac-clock { | ||
67 | compatible = "fixed-clock"; | ||
68 | #clock-cells = <0>; | ||
69 | clock-frequency = <125000000>; | ||
70 | clock-output-names = "ext_gmac"; | ||
71 | }; | ||
72 | |||
73 | leds: user-leds { | ||
74 | compatible = "gpio-leds"; | ||
75 | pinctrl-names = "default"; | ||
76 | pinctrl-0 = <&user_led>; | ||
77 | |||
78 | user { | ||
79 | label = "green_led"; | ||
80 | gpios = <&gpio7 2 GPIO_ACTIVE_HIGH>; | ||
81 | linux,default-trigger = "heartbeat"; | ||
82 | default-state = "keep"; | ||
83 | }; | ||
84 | }; | ||
85 | |||
86 | vdd_emmc_io: vdd-emmc-io { | ||
87 | compatible = "regulator-fixed"; | ||
88 | regulator-name = "vdd_emmc_io"; | ||
89 | regulator-min-microvolt = <1800000>; | ||
90 | regulator-max-microvolt = <1800000>; | ||
91 | vin-supply = <&vdd_3v3_io>; | ||
92 | }; | ||
93 | |||
94 | vdd_in_otg_out: vdd-in-otg-out { | ||
95 | compatible = "regulator-fixed"; | ||
96 | regulator-name = "vdd_in_otg_out"; | ||
97 | regulator-always-on; | ||
98 | regulator-boot-on; | ||
99 | regulator-min-microvolt = <5000000>; | ||
100 | regulator-max-microvolt = <5000000>; | ||
101 | }; | ||
102 | |||
103 | vdd_misc_1v8: vdd-misc-1v8 { | ||
104 | compatible = "regulator-fixed"; | ||
105 | regulator-name = "vdd_misc_1v8"; | ||
106 | regulator-always-on; | ||
107 | regulator-boot-on; | ||
108 | regulator-min-microvolt = <1800000>; | ||
109 | regulator-max-microvolt = <1800000>; | ||
110 | }; | ||
111 | }; | ||
112 | |||
113 | &cpu0 { | ||
114 | cpu0-supply = <&vdd_cpu>; | ||
115 | operating-points = < | ||
116 | /* KHz uV */ | ||
117 | 1800000 1400000 | ||
118 | 1608000 1350000 | ||
119 | 1512000 1300000 | ||
120 | 1416000 1200000 | ||
121 | 1200000 1100000 | ||
122 | 1008000 1050000 | ||
123 | 816000 1000000 | ||
124 | 696000 950000 | ||
125 | 600000 900000 | ||
126 | 408000 900000 | ||
127 | 312000 900000 | ||
128 | 216000 900000 | ||
129 | 126000 900000 | ||
130 | >; | ||
131 | }; | ||
132 | |||
133 | &emmc { | ||
134 | status = "okay"; | ||
135 | bus-width = <8>; | ||
136 | cap-mmc-highspeed; | ||
137 | disable-wp; | ||
138 | non-removable; | ||
139 | num-slots = <1>; | ||
140 | pinctrl-names = "default"; | ||
141 | pinctrl-0 = <&emmc_clk &emmc_cmd &emmc_pwr &emmc_bus8>; | ||
142 | vmmc-supply = <&vdd_3v3_io>; | ||
143 | vqmmc-supply = <&vdd_emmc_io>; | ||
144 | }; | ||
145 | |||
146 | &gmac { | ||
147 | assigned-clocks = <&cru SCLK_MAC>; | ||
148 | assigned-clock-parents = <&ext_gmac>; | ||
149 | clock_in_out = "input"; | ||
150 | pinctrl-names = "default"; | ||
151 | pinctrl-0 = <&rgmii_pins &phy_rst &phy_int>; | ||
152 | phy-handle = <&phy0>; | ||
153 | phy-supply = <&vdd_eth_2v5>; | ||
154 | phy-mode = "rgmii-id"; | ||
155 | snps,reset-active-low; | ||
156 | snps,reset-delays-us = <0 10000 1000000>; | ||
157 | snps,reset-gpio = <&gpio4 8 GPIO_ACTIVE_HIGH>; | ||
158 | tx_delay = <0x0>; | ||
159 | rx_delay = <0x0>; | ||
160 | |||
161 | mdio0 { | ||
162 | compatible = "snps,dwmac-mdio"; | ||
163 | #address-cells = <1>; | ||
164 | #size-cells = <0>; | ||
165 | |||
166 | phy0: ethernet-phy@0 { | ||
167 | compatible = "ethernet-phy-ieee802.3-c22"; | ||
168 | reg = <0>; | ||
169 | interrupt-parent = <&gpio4>; | ||
170 | interrupts = <2 IRQ_TYPE_EDGE_FALLING>; | ||
171 | ti,rx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; | ||
172 | ti,tx-internal-delay = <DP83867_RGMIIDCTL_2_00_NS>; | ||
173 | ti,fifo-depth = <DP83867_PHYCR_FIFO_DEPTH_4_B_NIB>; | ||
174 | enet-phy-lane-no-swap; | ||
175 | }; | ||
176 | }; | ||
177 | }; | ||
178 | |||
179 | &hdmi { | ||
180 | ddc-i2c-bus = <&i2c5>; | ||
181 | }; | ||
182 | |||
183 | &io_domains { | ||
184 | status = "okay"; | ||
185 | sdcard-supply = <&vdd_io_sd>; | ||
186 | flash0-supply = <&vdd_emmc_io>; | ||
187 | flash1-supply = <&vdd_misc_1v8>; | ||
188 | gpio1830-supply = <&vdd_3v3_io>; | ||
189 | gpio30-supply = <&vdd_3v3_io>; | ||
190 | bb-supply = <&vdd_3v3_io>; | ||
191 | dvp-supply = <&vdd_3v3_io>; | ||
192 | lcdc-supply = <&vdd_3v3_io>; | ||
193 | wifi-supply = <&vdd_3v3_io>; | ||
194 | audio-supply = <&vdd_3v3_io>; | ||
195 | }; | ||
196 | |||
197 | &i2c0 { | ||
198 | status = "okay"; | ||
199 | clock-frequency = <400000>; | ||
200 | |||
201 | rk818: pmic@1c { | ||
202 | compatible = "rockchip,rk818"; | ||
203 | reg = <0x1c>; | ||
204 | interrupt-parent = <&gpio0>; | ||
205 | interrupts = <4 IRQ_TYPE_LEVEL_LOW>; | ||
206 | pinctrl-names = "default"; | ||
207 | pinctrl-0 = <&pmic_int>; | ||
208 | rockchip,system-power-controller; | ||
209 | wakeup-source; | ||
210 | #clock-cells = <1>; | ||
211 | |||
212 | vcc1-supply = <&vdd_sys>; | ||
213 | vcc2-supply = <&vdd_sys>; | ||
214 | vcc3-supply = <&vdd_sys>; | ||
215 | vcc4-supply = <&vdd_sys>; | ||
216 | boost-supply = <&vdd_in_otg_out>; | ||
217 | vcc6-supply = <&vdd_sys>; | ||
218 | vcc7-supply = <&vdd_misc_1v8>; | ||
219 | vcc8-supply = <&vdd_misc_1v8>; | ||
220 | vcc9-supply = <&vdd_3v3_io>; | ||
221 | vddio-supply = <&vdd_3v3_io>; | ||
222 | |||
223 | regulators { | ||
224 | vdd_log: DCDC_REG1 { | ||
225 | regulator-name = "vdd_log"; | ||
226 | regulator-always-on; | ||
227 | regulator-boot-on; | ||
228 | regulator-min-microvolt = <1100000>; | ||
229 | regulator-max-microvolt = <1100000>; | ||
230 | regulator-state-mem { | ||
231 | regulator-off-in-suspend; | ||
232 | }; | ||
233 | }; | ||
234 | |||
235 | vdd_gpu: DCDC_REG2 { | ||
236 | regulator-name = "vdd_gpu"; | ||
237 | regulator-always-on; | ||
238 | regulator-boot-on; | ||
239 | regulator-min-microvolt = <800000>; | ||
240 | regulator-max-microvolt = <1250000>; | ||
241 | regulator-state-mem { | ||
242 | regulator-on-in-suspend; | ||
243 | regulator-suspend-microvolt = <1000000>; | ||
244 | }; | ||
245 | }; | ||
246 | |||
247 | vcc_ddr: DCDC_REG3 { | ||
248 | regulator-name = "vcc_ddr"; | ||
249 | regulator-always-on; | ||
250 | regulator-boot-on; | ||
251 | regulator-state-mem { | ||
252 | regulator-on-in-suspend; | ||
253 | }; | ||
254 | }; | ||
255 | |||
256 | vdd_3v3_io: DCDC_REG4 { | ||
257 | regulator-name = "vdd_3v3_io"; | ||
258 | regulator-always-on; | ||
259 | regulator-boot-on; | ||
260 | regulator-min-microvolt = <3300000>; | ||
261 | regulator-max-microvolt = <3300000>; | ||
262 | regulator-state-mem { | ||
263 | regulator-on-in-suspend; | ||
264 | regulator-suspend-microvolt = <3300000>; | ||
265 | }; | ||
266 | }; | ||
267 | |||
268 | vdd_sys: DCDC_BOOST { | ||
269 | regulator-name = "vdd_sys"; | ||
270 | regulator-always-on; | ||
271 | regulator-boot-on; | ||
272 | regulator-min-microvolt = <5000000>; | ||
273 | regulator-max-microvolt = <5000000>; | ||
274 | regulator-state-mem { | ||
275 | regulator-on-in-suspend; | ||
276 | regulator-suspend-microvolt = <5000000>; | ||
277 | }; | ||
278 | }; | ||
279 | |||
280 | /* vcc9 */ | ||
281 | vdd_sd: SWITCH_REG { | ||
282 | regulator-name = "vdd_sd"; | ||
283 | regulator-always-on; | ||
284 | regulator-boot-on; | ||
285 | regulator-state-mem { | ||
286 | regulator-off-in-suspend; | ||
287 | }; | ||
288 | }; | ||
289 | |||
290 | /* vcc6 */ | ||
291 | vdd_eth_2v5: LDO_REG2 { | ||
292 | regulator-name = "vdd_eth_2v5"; | ||
293 | regulator-always-on; | ||
294 | regulator-boot-on; | ||
295 | regulator-min-microvolt = <2500000>; | ||
296 | regulator-max-microvolt = <2500000>; | ||
297 | regulator-state-mem { | ||
298 | regulator-on-in-suspend; | ||
299 | regulator-suspend-microvolt = <2500000>; | ||
300 | }; | ||
301 | }; | ||
302 | |||
303 | /* vcc7 */ | ||
304 | vdd_1v0: LDO_REG3 { | ||
305 | regulator-name = "vdd_1v0"; | ||
306 | regulator-always-on; | ||
307 | regulator-boot-on; | ||
308 | regulator-min-microvolt = <1000000>; | ||
309 | regulator-max-microvolt = <1000000>; | ||
310 | regulator-state-mem { | ||
311 | regulator-on-in-suspend; | ||
312 | regulator-suspend-microvolt = <1000000>; | ||
313 | }; | ||
314 | }; | ||
315 | |||
316 | /* vcc8 */ | ||
317 | vdd_1v8_lcd_ldo: LDO_REG4 { | ||
318 | regulator-name = "vdd_1v8_lcd_ldo"; | ||
319 | regulator-always-on; | ||
320 | regulator-boot-on; | ||
321 | regulator-min-microvolt = <1800000>; | ||
322 | regulator-max-microvolt = <1800000>; | ||
323 | regulator-state-mem { | ||
324 | regulator-on-in-suspend; | ||
325 | regulator-suspend-microvolt = <1800000>; | ||
326 | }; | ||
327 | }; | ||
328 | |||
329 | /* vcc8 */ | ||
330 | vdd_1v0_lcd: LDO_REG6 { | ||
331 | regulator-name = "vdd_1v0_lcd"; | ||
332 | regulator-always-on; | ||
333 | regulator-boot-on; | ||
334 | regulator-min-microvolt = <1000000>; | ||
335 | regulator-max-microvolt = <1000000>; | ||
336 | regulator-state-mem { | ||
337 | regulator-on-in-suspend; | ||
338 | regulator-suspend-microvolt = <1000000>; | ||
339 | }; | ||
340 | }; | ||
341 | |||
342 | /* vcc7 */ | ||
343 | vdd_1v8_ldo: LDO_REG7 { | ||
344 | regulator-name = "vdd_1v8_ldo"; | ||
345 | regulator-always-on; | ||
346 | regulator-boot-on; | ||
347 | regulator-min-microvolt = <1800000>; | ||
348 | regulator-max-microvolt = <1800000>; | ||
349 | regulator-state-mem { | ||
350 | regulator-off-in-suspend; | ||
351 | regulator-suspend-microvolt = <1800000>; | ||
352 | }; | ||
353 | }; | ||
354 | |||
355 | /* vcc9 */ | ||
356 | vdd_io_sd: LDO_REG9 { | ||
357 | regulator-name = "vdd_io_sd"; | ||
358 | regulator-always-on; | ||
359 | regulator-boot-on; | ||
360 | regulator-min-microvolt = <3300000>; | ||
361 | regulator-max-microvolt = <3300000>; | ||
362 | regulator-state-mem { | ||
363 | regulator-on-in-suspend; | ||
364 | regulator-suspend-microvolt = <3300000>; | ||
365 | }; | ||
366 | }; | ||
367 | }; | ||
368 | }; | ||
369 | |||
370 | /* M24C32-D */ | ||
371 | i2c_eeprom: eeprom@50 { | ||
372 | compatible = "atmel,24c32"; | ||
373 | reg = <0x50>; | ||
374 | pagesize = <32>; | ||
375 | }; | ||
376 | |||
377 | vdd_cpu: regulator@60 { | ||
378 | compatible = "fcs,fan53555"; | ||
379 | reg = <0x60>; | ||
380 | fcs,suspend-voltage-selector = <1>; | ||
381 | regulator-always-on; | ||
382 | regulator-boot-on; | ||
383 | regulator-enable-ramp-delay = <300>; | ||
384 | regulator-name = "vdd_cpu"; | ||
385 | regulator-min-microvolt = <800000>; | ||
386 | regulator-max-microvolt = <1430000>; | ||
387 | regulator-ramp-delay = <8000>; | ||
388 | vin-supply = <&vdd_sys>; | ||
389 | }; | ||
390 | }; | ||
391 | |||
392 | &pinctrl { | ||
393 | pcfg_output_high: pcfg-output-high { | ||
394 | output-high; | ||
395 | }; | ||
396 | |||
397 | emmc { | ||
398 | /* | ||
399 | * We run eMMC at max speed; bump up drive strength. | ||
400 | * We also have external pulls, so disable the internal ones. | ||
401 | */ | ||
402 | emmc_clk: emmc-clk { | ||
403 | rockchip,pins = <3 18 RK_FUNC_2 &pcfg_pull_none_12ma>; | ||
404 | }; | ||
405 | |||
406 | emmc_cmd: emmc-cmd { | ||
407 | rockchip,pins = <3 16 RK_FUNC_2 &pcfg_pull_none_12ma>; | ||
408 | }; | ||
409 | |||
410 | emmc_bus8: emmc-bus8 { | ||
411 | rockchip,pins = <3 0 RK_FUNC_2 &pcfg_pull_none_12ma>, | ||
412 | <3 1 RK_FUNC_2 &pcfg_pull_none_12ma>, | ||
413 | <3 2 RK_FUNC_2 &pcfg_pull_none_12ma>, | ||
414 | <3 3 RK_FUNC_2 &pcfg_pull_none_12ma>, | ||
415 | <3 4 RK_FUNC_2 &pcfg_pull_none_12ma>, | ||
416 | <3 5 RK_FUNC_2 &pcfg_pull_none_12ma>, | ||
417 | <3 6 RK_FUNC_2 &pcfg_pull_none_12ma>, | ||
418 | <3 7 RK_FUNC_2 &pcfg_pull_none_12ma>; | ||
419 | }; | ||
420 | }; | ||
421 | |||
422 | gmac { | ||
423 | phy_int: phy-int { | ||
424 | rockchip,pins = <4 2 RK_FUNC_GPIO &pcfg_pull_up>; | ||
425 | }; | ||
426 | |||
427 | phy_rst: phy-rst { | ||
428 | rockchip,pins = <4 8 RK_FUNC_GPIO &pcfg_output_high>; | ||
429 | }; | ||
430 | }; | ||
431 | |||
432 | leds { | ||
433 | user_led: user-led { | ||
434 | rockchip,pins = <7 2 RK_FUNC_GPIO &pcfg_output_high>; | ||
435 | }; | ||
436 | }; | ||
437 | |||
438 | pmic { | ||
439 | pmic_int: pmic-int { | ||
440 | rockchip,pins = <RK_GPIO0 4 RK_FUNC_GPIO &pcfg_pull_up>; | ||
441 | }; | ||
442 | |||
443 | /* Pin for switching state between sleep and non-sleep state */ | ||
444 | pmic_sleep: pmic-sleep { | ||
445 | rockchip,pins = <RK_GPIO0 0 RK_FUNC_GPIO &pcfg_pull_up>; | ||
446 | }; | ||
447 | }; | ||
448 | }; | ||
449 | |||
450 | &pwm1 { | ||
451 | status = "okay"; | ||
452 | }; | ||
453 | |||
454 | &saradc { | ||
455 | status = "okay"; | ||
456 | vref-supply = <&vdd_1v8_ldo>; | ||
457 | }; | ||
458 | |||
459 | &spi2 { | ||
460 | status = "okay"; | ||
461 | |||
462 | serial_flash: flash@0 { | ||
463 | compatible = "micron,n25q128a13", "jedec,spi-nor"; | ||
464 | reg = <0x0>; | ||
465 | spi-max-frequency = <50000000>; | ||
466 | m25p,fast-read; | ||
467 | #address-cells = <1>; | ||
468 | #size-cells = <1>; | ||
469 | status = "okay"; | ||
470 | }; | ||
471 | }; | ||
472 | |||
473 | &tsadc { | ||
474 | status = "okay"; | ||
475 | rockchip,hw-tshut-mode = <0>; | ||
476 | rockchip,hw-tshut-polarity = <0>; | ||
477 | }; | ||
478 | |||
479 | &vopb { | ||
480 | status = "okay"; | ||
481 | }; | ||
482 | |||
483 | &vopb_mmu { | ||
484 | status = "okay"; | ||
485 | }; | ||
486 | |||
487 | &vopl { | ||
488 | status = "okay"; | ||
489 | }; | ||
490 | |||
491 | &vopl_mmu { | ||
492 | status = "okay"; | ||
493 | }; | ||
494 | |||
495 | &wdt { | ||
496 | status = "okay"; | ||
497 | }; | ||
diff --git a/arch/arm/boot/dts/rk3288-rock2-som.dtsi b/arch/arm/boot/dts/rk3288-rock2-som.dtsi index 1c0bbc9b928b..f0778a46bca9 100644 --- a/arch/arm/boot/dts/rk3288-rock2-som.dtsi +++ b/arch/arm/boot/dts/rk3288-rock2-som.dtsi | |||
@@ -136,7 +136,7 @@ | |||
136 | regulator-always-on; | 136 | regulator-always-on; |
137 | }; | 137 | }; |
138 | 138 | ||
139 | vcc_io: REG2 { | 139 | vcc_io: vccio_codec: REG2 { |
140 | regulator-name = "VCC_IO"; | 140 | regulator-name = "VCC_IO"; |
141 | regulator-min-microvolt = <3300000>; | 141 | regulator-min-microvolt = <3300000>; |
142 | regulator-max-microvolt = <3300000>; | 142 | regulator-max-microvolt = <3300000>; |
diff --git a/arch/arm/boot/dts/rk3288-rock2-square.dts b/arch/arm/boot/dts/rk3288-rock2-square.dts index 96a2e745bb93..a23a94811be8 100644 --- a/arch/arm/boot/dts/rk3288-rock2-square.dts +++ b/arch/arm/boot/dts/rk3288-rock2-square.dts | |||
@@ -81,11 +81,35 @@ | |||
81 | }; | 81 | }; |
82 | }; | 82 | }; |
83 | 83 | ||
84 | sata_pwr: sata-prw-regulator { | ||
85 | compatible = "regulator-fixed"; | ||
86 | enable-active-high; | ||
87 | gpio = <&gpio0 13 GPIO_ACTIVE_HIGH>; | ||
88 | pinctrl-names = "default"; | ||
89 | pinctrl-0 = <&sata_pwr_en>; | ||
90 | /* Always turn on the 5V sata power connector */ | ||
91 | regulator-always-on; | ||
92 | regulator-name = "sata_pwr"; | ||
93 | }; | ||
94 | |||
84 | spdif_out: spdif-out { | 95 | spdif_out: spdif-out { |
85 | compatible = "linux,spdif-dit"; | 96 | compatible = "linux,spdif-dit"; |
86 | #sound-dai-cells = <0>; | 97 | #sound-dai-cells = <0>; |
87 | }; | 98 | }; |
88 | 99 | ||
100 | sound-i2s { | ||
101 | compatible = "rockchip,rk3288-hdmi-analog"; | ||
102 | pinctrl-names = "default"; | ||
103 | pinctrl-0 = <&phone_ctl>, <&hp_det>; | ||
104 | rockchip,audio-codec = <&es8388>; | ||
105 | rockchip,hp-det-gpios = <&gpio7 7 GPIO_ACTIVE_HIGH>; | ||
106 | rockchip,hp-en-gpios = <&gpio8 0 GPIO_ACTIVE_HIGH>; | ||
107 | rockchip,i2s-controller = <&i2s>; | ||
108 | rockchip,model = "I2S"; | ||
109 | rockchip,routing = "Analog", "LOUT2", | ||
110 | "Analog", "ROUT2"; | ||
111 | }; | ||
112 | |||
89 | sdio_pwrseq: sdio-pwrseq { | 113 | sdio_pwrseq: sdio-pwrseq { |
90 | compatible = "mmc-pwrseq-simple"; | 114 | compatible = "mmc-pwrseq-simple"; |
91 | clocks = <&hym8563>; | 115 | clocks = <&hym8563>; |
@@ -173,10 +197,28 @@ | |||
173 | }; | 197 | }; |
174 | }; | 198 | }; |
175 | 199 | ||
200 | &i2c2 { | ||
201 | status = "okay"; | ||
202 | |||
203 | es8388: es8388@10 { | ||
204 | compatible = "everest,es8388", "everest,es8328"; | ||
205 | reg = <0x10>; | ||
206 | AVDD-supply = <&vccio_codec>; | ||
207 | DVDD-supply = <&vccio_codec>; | ||
208 | HPVDD-supply = <&vccio_codec>; | ||
209 | PVDD-supply = <&vccio_codec>; | ||
210 | clocks = <&cru SCLK_I2S0_OUT>; | ||
211 | }; | ||
212 | }; | ||
213 | |||
176 | &i2c5 { | 214 | &i2c5 { |
177 | status = "okay"; | 215 | status = "okay"; |
178 | }; | 216 | }; |
179 | 217 | ||
218 | &i2s { | ||
219 | status = "okay"; | ||
220 | }; | ||
221 | |||
180 | &pinctrl { | 222 | &pinctrl { |
181 | ir { | 223 | ir { |
182 | ir_int: ir-int { | 224 | ir_int: ir-int { |
@@ -190,12 +232,28 @@ | |||
190 | }; | 232 | }; |
191 | }; | 233 | }; |
192 | 234 | ||
235 | headphone { | ||
236 | hp_det: hp-det { | ||
237 | rockchip,pins = <7 7 RK_FUNC_GPIO &pcfg_pull_none>; | ||
238 | }; | ||
239 | |||
240 | phone_ctl: phone-ctl { | ||
241 | rockchip,pins = <8 0 RK_FUNC_GPIO &pcfg_pull_up>; | ||
242 | }; | ||
243 | }; | ||
244 | |||
193 | usb { | 245 | usb { |
194 | host_vbus_drv: host-vbus-drv { | 246 | host_vbus_drv: host-vbus-drv { |
195 | rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>; | 247 | rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>; |
196 | }; | 248 | }; |
197 | }; | 249 | }; |
198 | 250 | ||
251 | sata { | ||
252 | sata_pwr_en: sata-pwr-en { | ||
253 | rockchip,pins = <0 13 RK_FUNC_GPIO &pcfg_pull_none>; | ||
254 | }; | ||
255 | }; | ||
256 | |||
199 | sdmmc { | 257 | sdmmc { |
200 | sdmmc_pwr: sdmmc-pwr { | 258 | sdmmc_pwr: sdmmc-pwr { |
201 | rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>; | 259 | rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>; |
@@ -224,3 +282,7 @@ | |||
224 | &usb_host0_ehci { | 282 | &usb_host0_ehci { |
225 | status = "okay"; | 283 | status = "okay"; |
226 | }; | 284 | }; |
285 | |||
286 | &usb_host1 { | ||
287 | status = "okay"; | ||
288 | }; | ||
diff --git a/arch/arm/boot/dts/rk3288-tinker.dts b/arch/arm/boot/dts/rk3288-tinker.dts new file mode 100644 index 000000000000..f601c78386a9 --- /dev/null +++ b/arch/arm/boot/dts/rk3288-tinker.dts | |||
@@ -0,0 +1,536 @@ | |||
1 | /* | ||
2 | * Copyright (c) 2017 Fuzhou Rockchip Electronics Co., Ltd. | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | /dts-v1/; | ||
44 | |||
45 | #include "rk3288.dtsi" | ||
46 | #include <dt-bindings/input/input.h> | ||
47 | |||
48 | / { | ||
49 | model = "Rockchip RK3288 Tinker Board"; | ||
50 | compatible = "asus,rk3288-tinker", "rockchip,rk3288"; | ||
51 | |||
52 | memory { | ||
53 | reg = <0x0 0x80000000>; | ||
54 | device_type = "memory"; | ||
55 | }; | ||
56 | |||
57 | ext_gmac: external-gmac-clock { | ||
58 | compatible = "fixed-clock"; | ||
59 | #clock-cells = <0>; | ||
60 | clock-frequency = <125000000>; | ||
61 | clock-output-names = "ext_gmac"; | ||
62 | }; | ||
63 | |||
64 | gpio-keys { | ||
65 | compatible = "gpio-keys"; | ||
66 | #address-cells = <1>; | ||
67 | #size-cells = <0>; | ||
68 | autorepeat; | ||
69 | |||
70 | pinctrl-names = "default"; | ||
71 | pinctrl-0 = <&pwrbtn>; | ||
72 | |||
73 | button@0 { | ||
74 | gpios = <&gpio0 RK_PA5 GPIO_ACTIVE_LOW>; | ||
75 | linux,code = <KEY_POWER>; | ||
76 | label = "GPIO Key Power"; | ||
77 | linux,input-type = <1>; | ||
78 | wakeup-source; | ||
79 | debounce-interval = <100>; | ||
80 | }; | ||
81 | }; | ||
82 | |||
83 | gpio-leds { | ||
84 | compatible = "gpio-leds"; | ||
85 | |||
86 | act-led { | ||
87 | gpios=<&gpio1 RK_PD0 GPIO_ACTIVE_HIGH>; | ||
88 | linux,default-trigger="mmc0"; | ||
89 | }; | ||
90 | |||
91 | heartbeat-led { | ||
92 | gpios=<&gpio1 RK_PD1 GPIO_ACTIVE_HIGH>; | ||
93 | linux,default-trigger="heartbeat"; | ||
94 | }; | ||
95 | |||
96 | pwr-led { | ||
97 | gpios = <&gpio0 RK_PA3 GPIO_ACTIVE_HIGH>; | ||
98 | linux,default-trigger = "default-on"; | ||
99 | }; | ||
100 | }; | ||
101 | |||
102 | sound { | ||
103 | compatible = "simple-audio-card"; | ||
104 | simple-audio-card,format = "i2s"; | ||
105 | simple-audio-card,name = "rockchip,tinker-codec"; | ||
106 | simple-audio-card,mclk-fs = <512>; | ||
107 | |||
108 | simple-audio-card,codec { | ||
109 | sound-dai = <&hdmi>; | ||
110 | }; | ||
111 | |||
112 | simple-audio-card,cpu { | ||
113 | sound-dai = <&i2s>; | ||
114 | }; | ||
115 | }; | ||
116 | |||
117 | vcc_sys: vsys-regulator { | ||
118 | compatible = "regulator-fixed"; | ||
119 | regulator-name = "vcc_sys"; | ||
120 | regulator-min-microvolt = <5000000>; | ||
121 | regulator-max-microvolt = <5000000>; | ||
122 | regulator-always-on; | ||
123 | regulator-boot-on; | ||
124 | }; | ||
125 | |||
126 | vcc_sd: sdmmc-regulator { | ||
127 | compatible = "regulator-fixed"; | ||
128 | gpio = <&gpio7 11 GPIO_ACTIVE_LOW>; | ||
129 | pinctrl-names = "default"; | ||
130 | pinctrl-0 = <&sdmmc_pwr>; | ||
131 | regulator-name = "vcc_sd"; | ||
132 | regulator-min-microvolt = <3300000>; | ||
133 | regulator-max-microvolt = <3300000>; | ||
134 | startup-delay-us = <100000>; | ||
135 | vin-supply = <&vcc_io>; | ||
136 | }; | ||
137 | }; | ||
138 | |||
139 | &cpu0 { | ||
140 | cpu0-supply = <&vdd_cpu>; | ||
141 | }; | ||
142 | |||
143 | &gmac { | ||
144 | assigned-clocks = <&cru SCLK_MAC>; | ||
145 | assigned-clock-parents = <&ext_gmac>; | ||
146 | clock_in_out = "input"; | ||
147 | phy-mode = "rgmii"; | ||
148 | phy-supply = <&vcc33_lan>; | ||
149 | pinctrl-names = "default"; | ||
150 | pinctrl-0 = <&rgmii_pins>; | ||
151 | snps,reset-gpio = <&gpio4 7 0>; | ||
152 | snps,reset-active-low; | ||
153 | snps,reset-delays-us = <0 10000 1000000>; | ||
154 | tx_delay = <0x30>; | ||
155 | rx_delay = <0x10>; | ||
156 | status = "ok"; | ||
157 | }; | ||
158 | |||
159 | &hdmi { | ||
160 | ddc-i2c-bus = <&i2c5>; | ||
161 | status = "okay"; | ||
162 | }; | ||
163 | |||
164 | &i2c0 { | ||
165 | clock-frequency = <400000>; | ||
166 | status = "okay"; | ||
167 | |||
168 | rk808: pmic@1b { | ||
169 | compatible = "rockchip,rk808"; | ||
170 | reg = <0x1b>; | ||
171 | interrupt-parent = <&gpio0>; | ||
172 | interrupts = <4 IRQ_TYPE_LEVEL_LOW>; | ||
173 | #clock-cells = <1>; | ||
174 | clock-output-names = "xin32k", "rk808-clkout2"; | ||
175 | dvs-gpios = <&gpio0 11 GPIO_ACTIVE_HIGH>, | ||
176 | <&gpio0 12 GPIO_ACTIVE_HIGH>; | ||
177 | pinctrl-names = "default"; | ||
178 | pinctrl-0 = <&pmic_int &global_pwroff &dvs_1 &dvs_2>; | ||
179 | rockchip,system-power-controller; | ||
180 | wakeup-source; | ||
181 | |||
182 | vcc1-supply = <&vcc_sys>; | ||
183 | vcc2-supply = <&vcc_sys>; | ||
184 | vcc3-supply = <&vcc_sys>; | ||
185 | vcc4-supply = <&vcc_sys>; | ||
186 | vcc6-supply = <&vcc_sys>; | ||
187 | vcc7-supply = <&vcc_sys>; | ||
188 | vcc8-supply = <&vcc_io>; | ||
189 | vcc9-supply = <&vcc_io>; | ||
190 | vcc10-supply = <&vcc_io>; | ||
191 | vcc11-supply = <&vcc_sys>; | ||
192 | vcc12-supply = <&vcc_io>; | ||
193 | vddio-supply = <&vcc_io>; | ||
194 | |||
195 | regulators { | ||
196 | vdd_cpu: DCDC_REG1 { | ||
197 | regulator-always-on; | ||
198 | regulator-boot-on; | ||
199 | regulator-min-microvolt = <750000>; | ||
200 | regulator-max-microvolt = <1350000>; | ||
201 | regulator-name = "vdd_arm"; | ||
202 | regulator-ramp-delay = <6000>; | ||
203 | regulator-state-mem { | ||
204 | regulator-off-in-suspend; | ||
205 | }; | ||
206 | }; | ||
207 | |||
208 | vdd_gpu: DCDC_REG2 { | ||
209 | regulator-always-on; | ||
210 | regulator-boot-on; | ||
211 | regulator-min-microvolt = <850000>; | ||
212 | regulator-max-microvolt = <1250000>; | ||
213 | regulator-name = "vdd_gpu"; | ||
214 | regulator-ramp-delay = <6000>; | ||
215 | regulator-state-mem { | ||
216 | regulator-on-in-suspend; | ||
217 | regulator-suspend-microvolt = <1000000>; | ||
218 | }; | ||
219 | }; | ||
220 | |||
221 | vcc_ddr: DCDC_REG3 { | ||
222 | regulator-always-on; | ||
223 | regulator-boot-on; | ||
224 | regulator-name = "vcc_ddr"; | ||
225 | regulator-state-mem { | ||
226 | regulator-on-in-suspend; | ||
227 | }; | ||
228 | }; | ||
229 | |||
230 | vcc_io: DCDC_REG4 { | ||
231 | regulator-always-on; | ||
232 | regulator-boot-on; | ||
233 | regulator-min-microvolt = <3300000>; | ||
234 | regulator-max-microvolt = <3300000>; | ||
235 | regulator-name = "vcc_io"; | ||
236 | regulator-state-mem { | ||
237 | regulator-on-in-suspend; | ||
238 | regulator-suspend-microvolt = <3300000>; | ||
239 | }; | ||
240 | }; | ||
241 | |||
242 | vcc18_ldo1: LDO_REG1 { | ||
243 | regulator-always-on; | ||
244 | regulator-boot-on; | ||
245 | regulator-min-microvolt = <1800000>; | ||
246 | regulator-max-microvolt = <1800000>; | ||
247 | regulator-name = "vcc18_ldo1"; | ||
248 | regulator-state-mem { | ||
249 | regulator-on-in-suspend; | ||
250 | regulator-suspend-microvolt = <1800000>; | ||
251 | }; | ||
252 | }; | ||
253 | |||
254 | vcc33_mipi: LDO_REG2 { | ||
255 | regulator-always-on; | ||
256 | regulator-boot-on; | ||
257 | regulator-min-microvolt = <3300000>; | ||
258 | regulator-max-microvolt = <3300000>; | ||
259 | regulator-name = "vcc33_mipi"; | ||
260 | regulator-state-mem { | ||
261 | regulator-off-in-suspend; | ||
262 | }; | ||
263 | }; | ||
264 | |||
265 | vdd_10: LDO_REG3 { | ||
266 | regulator-always-on; | ||
267 | regulator-boot-on; | ||
268 | regulator-min-microvolt = <1000000>; | ||
269 | regulator-max-microvolt = <1000000>; | ||
270 | regulator-name = "vdd_10"; | ||
271 | regulator-state-mem { | ||
272 | regulator-on-in-suspend; | ||
273 | regulator-suspend-microvolt = <1000000>; | ||
274 | }; | ||
275 | }; | ||
276 | |||
277 | vcc18_codec: LDO_REG4 { | ||
278 | regulator-always-on; | ||
279 | regulator-boot-on; | ||
280 | regulator-min-microvolt = <1800000>; | ||
281 | regulator-max-microvolt = <1800000>; | ||
282 | regulator-name = "vcc18_codec"; | ||
283 | regulator-state-mem { | ||
284 | regulator-on-in-suspend; | ||
285 | regulator-suspend-microvolt = <1800000>; | ||
286 | }; | ||
287 | }; | ||
288 | |||
289 | vccio_sd: LDO_REG5 { | ||
290 | regulator-min-microvolt = <1800000>; | ||
291 | regulator-max-microvolt = <3300000>; | ||
292 | regulator-name = "vccio_sd"; | ||
293 | regulator-state-mem { | ||
294 | regulator-on-in-suspend; | ||
295 | regulator-suspend-microvolt = <3300000>; | ||
296 | }; | ||
297 | }; | ||
298 | |||
299 | vdd10_lcd: LDO_REG6 { | ||
300 | regulator-always-on; | ||
301 | regulator-boot-on; | ||
302 | regulator-min-microvolt = <1000000>; | ||
303 | regulator-max-microvolt = <1000000>; | ||
304 | regulator-name = "vdd10_lcd"; | ||
305 | regulator-state-mem { | ||
306 | regulator-on-in-suspend; | ||
307 | regulator-suspend-microvolt = <1000000>; | ||
308 | }; | ||
309 | }; | ||
310 | |||
311 | vcc_18: LDO_REG7 { | ||
312 | regulator-always-on; | ||
313 | regulator-boot-on; | ||
314 | regulator-min-microvolt = <1800000>; | ||
315 | regulator-max-microvolt = <1800000>; | ||
316 | regulator-name = "vcc_18"; | ||
317 | regulator-state-mem { | ||
318 | regulator-on-in-suspend; | ||
319 | regulator-suspend-microvolt = <1800000>; | ||
320 | }; | ||
321 | }; | ||
322 | |||
323 | vcc18_lcd: LDO_REG8 { | ||
324 | regulator-always-on; | ||
325 | regulator-boot-on; | ||
326 | regulator-min-microvolt = <1800000>; | ||
327 | regulator-max-microvolt = <1800000>; | ||
328 | regulator-name = "vcc18_lcd"; | ||
329 | regulator-state-mem { | ||
330 | regulator-on-in-suspend; | ||
331 | regulator-suspend-microvolt = <1800000>; | ||
332 | }; | ||
333 | }; | ||
334 | |||
335 | vcc33_sd: SWITCH_REG1 { | ||
336 | regulator-always-on; | ||
337 | regulator-boot-on; | ||
338 | regulator-name = "vcc33_sd"; | ||
339 | regulator-state-mem { | ||
340 | regulator-on-in-suspend; | ||
341 | }; | ||
342 | }; | ||
343 | |||
344 | vcc33_lan: SWITCH_REG2 { | ||
345 | regulator-always-on; | ||
346 | regulator-boot-on; | ||
347 | regulator-name = "vcc33_lan"; | ||
348 | regulator-state-mem { | ||
349 | regulator-on-in-suspend; | ||
350 | }; | ||
351 | }; | ||
352 | }; | ||
353 | }; | ||
354 | }; | ||
355 | |||
356 | &i2c2 { | ||
357 | status = "okay"; | ||
358 | }; | ||
359 | |||
360 | &i2c5 { | ||
361 | status = "okay"; | ||
362 | }; | ||
363 | |||
364 | &i2s { | ||
365 | #sound-dai-cells = <0>; | ||
366 | status = "okay"; | ||
367 | }; | ||
368 | |||
369 | &io_domains { | ||
370 | status = "okay"; | ||
371 | |||
372 | sdcard-supply = <&vccio_sd>; | ||
373 | }; | ||
374 | |||
375 | &pinctrl { | ||
376 | pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma { | ||
377 | drive-strength = <8>; | ||
378 | }; | ||
379 | |||
380 | pcfg_pull_up_drv_8ma: pcfg-pull-up-drv-8ma { | ||
381 | bias-pull-up; | ||
382 | drive-strength = <8>; | ||
383 | }; | ||
384 | |||
385 | backlight { | ||
386 | bl_en: bl-en { | ||
387 | rockchip,pins = <7 2 RK_FUNC_GPIO &pcfg_pull_none>; | ||
388 | }; | ||
389 | }; | ||
390 | |||
391 | buttons { | ||
392 | pwrbtn: pwrbtn { | ||
393 | rockchip,pins = <0 5 RK_FUNC_GPIO &pcfg_pull_up>; | ||
394 | }; | ||
395 | }; | ||
396 | |||
397 | eth_phy { | ||
398 | eth_phy_pwr: eth-phy-pwr { | ||
399 | rockchip,pins = <0 6 RK_FUNC_GPIO &pcfg_pull_none>; | ||
400 | }; | ||
401 | }; | ||
402 | |||
403 | pmic { | ||
404 | pmic_int: pmic-int { | ||
405 | rockchip,pins = <RK_GPIO0 4 RK_FUNC_GPIO \ | ||
406 | &pcfg_pull_up>; | ||
407 | }; | ||
408 | |||
409 | dvs_1: dvs-1 { | ||
410 | rockchip,pins = <RK_GPIO0 11 RK_FUNC_GPIO \ | ||
411 | &pcfg_pull_down>; | ||
412 | }; | ||
413 | |||
414 | dvs_2: dvs-2 { | ||
415 | rockchip,pins = <RK_GPIO0 12 RK_FUNC_GPIO \ | ||
416 | &pcfg_pull_down>; | ||
417 | }; | ||
418 | }; | ||
419 | |||
420 | sdmmc { | ||
421 | sdmmc_bus4: sdmmc-bus4 { | ||
422 | rockchip,pins = <6 16 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
423 | <6 17 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
424 | <6 18 RK_FUNC_1 &pcfg_pull_up_drv_8ma>, | ||
425 | <6 19 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; | ||
426 | }; | ||
427 | |||
428 | sdmmc_clk: sdmmc-clk { | ||
429 | rockchip,pins = <6 20 RK_FUNC_1 \ | ||
430 | &pcfg_pull_none_drv_8ma>; | ||
431 | }; | ||
432 | |||
433 | sdmmc_cmd: sdmmc-cmd { | ||
434 | rockchip,pins = <6 21 RK_FUNC_1 &pcfg_pull_up_drv_8ma>; | ||
435 | }; | ||
436 | |||
437 | sdmmc_pwr: sdmmc-pwr { | ||
438 | rockchip,pins = <7 11 RK_FUNC_GPIO &pcfg_pull_none>; | ||
439 | }; | ||
440 | }; | ||
441 | |||
442 | usb { | ||
443 | host_vbus_drv: host-vbus-drv { | ||
444 | rockchip,pins = <0 14 RK_FUNC_GPIO &pcfg_pull_none>; | ||
445 | }; | ||
446 | |||
447 | pwr_3g: pwr-3g { | ||
448 | rockchip,pins = <7 8 RK_FUNC_GPIO &pcfg_pull_none>; | ||
449 | }; | ||
450 | }; | ||
451 | }; | ||
452 | |||
453 | &pwm0 { | ||
454 | status = "okay"; | ||
455 | }; | ||
456 | |||
457 | &saradc { | ||
458 | vref-supply = <&vcc18_ldo1>; | ||
459 | status ="okay"; | ||
460 | }; | ||
461 | |||
462 | &sdmmc { | ||
463 | bus-width = <4>; | ||
464 | cap-mmc-highspeed; | ||
465 | cap-sd-highspeed; | ||
466 | card-detect-delay = <200>; | ||
467 | disable-wp; /* wp not hooked up */ | ||
468 | num-slots = <1>; | ||
469 | pinctrl-names = "default"; | ||
470 | pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>; | ||
471 | status = "okay"; | ||
472 | vmmc-supply = <&vcc33_sd>; | ||
473 | vqmmc-supply = <&vccio_sd>; | ||
474 | }; | ||
475 | |||
476 | &tsadc { | ||
477 | rockchip,hw-tshut-mode = <1>; /* tshut mode 0:CRU 1:GPIO */ | ||
478 | rockchip,hw-tshut-polarity = <1>; /* tshut polarity 0:LOW 1:HIGH */ | ||
479 | status = "okay"; | ||
480 | }; | ||
481 | |||
482 | &uart0 { | ||
483 | status = "okay"; | ||
484 | }; | ||
485 | |||
486 | &uart1 { | ||
487 | status = "okay"; | ||
488 | }; | ||
489 | |||
490 | &uart2 { | ||
491 | status = "okay"; | ||
492 | }; | ||
493 | |||
494 | &uart3 { | ||
495 | status = "okay"; | ||
496 | }; | ||
497 | |||
498 | &uart4 { | ||
499 | status = "okay"; | ||
500 | }; | ||
501 | |||
502 | &usbphy { | ||
503 | status = "okay"; | ||
504 | }; | ||
505 | |||
506 | &usb_host0_ehci { | ||
507 | status = "okay"; | ||
508 | }; | ||
509 | |||
510 | &usb_host1 { | ||
511 | status = "okay"; | ||
512 | }; | ||
513 | |||
514 | &usb_otg { | ||
515 | status= "okay"; | ||
516 | }; | ||
517 | |||
518 | &vopb { | ||
519 | status = "okay"; | ||
520 | }; | ||
521 | |||
522 | &vopb_mmu { | ||
523 | status = "okay"; | ||
524 | }; | ||
525 | |||
526 | &vopl { | ||
527 | status = "okay"; | ||
528 | }; | ||
529 | |||
530 | &vopl_mmu { | ||
531 | status = "okay"; | ||
532 | }; | ||
533 | |||
534 | &wdt { | ||
535 | status = "okay"; | ||
536 | }; | ||
diff --git a/arch/arm/boot/dts/rk3288.dtsi b/arch/arm/boot/dts/rk3288.dtsi index df8a0dbe9d91..ad5d6022e95f 100644 --- a/arch/arm/boot/dts/rk3288.dtsi +++ b/arch/arm/boot/dts/rk3288.dtsi | |||
@@ -236,6 +236,8 @@ | |||
236 | fifo-depth = <0x100>; | 236 | fifo-depth = <0x100>; |
237 | interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; | 237 | interrupts = <GIC_SPI 32 IRQ_TYPE_LEVEL_HIGH>; |
238 | reg = <0xff0c0000 0x4000>; | 238 | reg = <0xff0c0000 0x4000>; |
239 | resets = <&cru SRST_MMC0>; | ||
240 | reset-names = "reset"; | ||
239 | status = "disabled"; | 241 | status = "disabled"; |
240 | }; | 242 | }; |
241 | 243 | ||
@@ -248,6 +250,8 @@ | |||
248 | fifo-depth = <0x100>; | 250 | fifo-depth = <0x100>; |
249 | interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; | 251 | interrupts = <GIC_SPI 33 IRQ_TYPE_LEVEL_HIGH>; |
250 | reg = <0xff0d0000 0x4000>; | 252 | reg = <0xff0d0000 0x4000>; |
253 | resets = <&cru SRST_SDIO0>; | ||
254 | reset-names = "reset"; | ||
251 | status = "disabled"; | 255 | status = "disabled"; |
252 | }; | 256 | }; |
253 | 257 | ||
@@ -260,6 +264,8 @@ | |||
260 | fifo-depth = <0x100>; | 264 | fifo-depth = <0x100>; |
261 | interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; | 265 | interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>; |
262 | reg = <0xff0e0000 0x4000>; | 266 | reg = <0xff0e0000 0x4000>; |
267 | resets = <&cru SRST_SDIO1>; | ||
268 | reset-names = "reset"; | ||
263 | status = "disabled"; | 269 | status = "disabled"; |
264 | }; | 270 | }; |
265 | 271 | ||
@@ -272,6 +278,8 @@ | |||
272 | fifo-depth = <0x100>; | 278 | fifo-depth = <0x100>; |
273 | interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; | 279 | interrupts = <GIC_SPI 35 IRQ_TYPE_LEVEL_HIGH>; |
274 | reg = <0xff0f0000 0x4000>; | 280 | reg = <0xff0f0000 0x4000>; |
281 | resets = <&cru SRST_EMMC>; | ||
282 | reset-names = "reset"; | ||
275 | status = "disabled"; | 283 | status = "disabled"; |
276 | }; | 284 | }; |
277 | 285 | ||
diff --git a/arch/arm/boot/dts/rk3xxx.dtsi b/arch/arm/boot/dts/rk3xxx.dtsi index 0b45811cf28b..4aa6f60d6a22 100644 --- a/arch/arm/boot/dts/rk3xxx.dtsi +++ b/arch/arm/boot/dts/rk3xxx.dtsi | |||
@@ -132,14 +132,14 @@ | |||
132 | global_timer: global-timer@1013c200 { | 132 | global_timer: global-timer@1013c200 { |
133 | compatible = "arm,cortex-a9-global-timer"; | 133 | compatible = "arm,cortex-a9-global-timer"; |
134 | reg = <0x1013c200 0x20>; | 134 | reg = <0x1013c200 0x20>; |
135 | interrupts = <GIC_PPI 11 0x304>; | 135 | interrupts = <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>; |
136 | clocks = <&cru CORE_PERI>; | 136 | clocks = <&cru CORE_PERI>; |
137 | }; | 137 | }; |
138 | 138 | ||
139 | local_timer: local-timer@1013c600 { | 139 | local_timer: local-timer@1013c600 { |
140 | compatible = "arm,cortex-a9-twd-timer"; | 140 | compatible = "arm,cortex-a9-twd-timer"; |
141 | reg = <0x1013c600 0x20>; | 141 | reg = <0x1013c600 0x20>; |
142 | interrupts = <GIC_PPI 13 0x304>; | 142 | interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(2) | IRQ_TYPE_EDGE_RISING)>; |
143 | clocks = <&cru CORE_PERI>; | 143 | clocks = <&cru CORE_PERI>; |
144 | }; | 144 | }; |
145 | 145 | ||
@@ -223,7 +223,11 @@ | |||
223 | interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; | 223 | interrupts = <GIC_SPI 23 IRQ_TYPE_LEVEL_HIGH>; |
224 | clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>; | 224 | clocks = <&cru HCLK_SDMMC>, <&cru SCLK_SDMMC>; |
225 | clock-names = "biu", "ciu"; | 225 | clock-names = "biu", "ciu"; |
226 | dmas = <&dmac2 1>; | ||
227 | dma-names = "rx-tx"; | ||
226 | fifo-depth = <256>; | 228 | fifo-depth = <256>; |
229 | resets = <&cru SRST_SDMMC>; | ||
230 | reset-names = "reset"; | ||
227 | status = "disabled"; | 231 | status = "disabled"; |
228 | }; | 232 | }; |
229 | 233 | ||
@@ -233,7 +237,11 @@ | |||
233 | interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; | 237 | interrupts = <GIC_SPI 24 IRQ_TYPE_LEVEL_HIGH>; |
234 | clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>; | 238 | clocks = <&cru HCLK_SDIO>, <&cru SCLK_SDIO>; |
235 | clock-names = "biu", "ciu"; | 239 | clock-names = "biu", "ciu"; |
240 | dmas = <&dmac2 3>; | ||
241 | dma-names = "rx-tx"; | ||
236 | fifo-depth = <256>; | 242 | fifo-depth = <256>; |
243 | resets = <&cru SRST_SDIO>; | ||
244 | reset-names = "reset"; | ||
237 | status = "disabled"; | 245 | status = "disabled"; |
238 | }; | 246 | }; |
239 | 247 | ||
@@ -243,7 +251,11 @@ | |||
243 | interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; | 251 | interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; |
244 | clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>; | 252 | clocks = <&cru HCLK_EMMC>, <&cru SCLK_EMMC>; |
245 | clock-names = "biu", "ciu"; | 253 | clock-names = "biu", "ciu"; |
254 | dmas = <&dmac2 4>; | ||
255 | dma-names = "rx-tx"; | ||
246 | fifo-depth = <256>; | 256 | fifo-depth = <256>; |
257 | resets = <&cru SRST_EMMC>; | ||
258 | reset-names = "reset"; | ||
247 | status = "disabled"; | 259 | status = "disabled"; |
248 | }; | 260 | }; |
249 | 261 | ||
diff --git a/arch/arm/boot/dts/s3c64xx.dtsi b/arch/arm/boot/dts/s3c64xx.dtsi index 0ccb414cd268..c55cbb3af2c0 100644 --- a/arch/arm/boot/dts/s3c64xx.dtsi +++ b/arch/arm/boot/dts/s3c64xx.dtsi | |||
@@ -94,13 +94,12 @@ | |||
94 | }; | 94 | }; |
95 | 95 | ||
96 | watchdog: watchdog@7e004000 { | 96 | watchdog: watchdog@7e004000 { |
97 | compatible = "samsung,s3c2410-wdt"; | 97 | compatible = "samsung,s3c6410-wdt"; |
98 | reg = <0x7e004000 0x1000>; | 98 | reg = <0x7e004000 0x1000>; |
99 | interrupt-parent = <&vic0>; | 99 | interrupt-parent = <&vic0>; |
100 | interrupts = <26>; | 100 | interrupts = <26>; |
101 | clock-names = "watchdog"; | 101 | clock-names = "watchdog"; |
102 | clocks = <&clocks PCLK_WDT>; | 102 | clocks = <&clocks PCLK_WDT>; |
103 | status = "disabled"; | ||
104 | }; | 103 | }; |
105 | 104 | ||
106 | i2c0: i2c@7f004000 { | 105 | i2c0: i2c@7f004000 { |
diff --git a/arch/arm/boot/dts/s5pv210.dtsi b/arch/arm/boot/dts/s5pv210.dtsi index a853918be43f..726c5d0dbd5b 100644 --- a/arch/arm/boot/dts/s5pv210.dtsi +++ b/arch/arm/boot/dts/s5pv210.dtsi | |||
@@ -310,7 +310,7 @@ | |||
310 | }; | 310 | }; |
311 | 311 | ||
312 | watchdog: watchdog@e2700000 { | 312 | watchdog: watchdog@e2700000 { |
313 | compatible = "samsung,s3c2410-wdt"; | 313 | compatible = "samsung,s3c6410-wdt"; |
314 | reg = <0xe2700000 0x1000>; | 314 | reg = <0xe2700000 0x1000>; |
315 | interrupt-parent = <&vic0>; | 315 | interrupt-parent = <&vic0>; |
316 | interrupts = <26>; | 316 | interrupts = <26>; |
diff --git a/arch/arm/boot/dts/sama5d2.dtsi b/arch/arm/boot/dts/sama5d2.dtsi index 528b4e9c6d3d..8067c71c3a38 100644 --- a/arch/arm/boot/dts/sama5d2.dtsi +++ b/arch/arm/boot/dts/sama5d2.dtsi | |||
@@ -1305,6 +1305,11 @@ | |||
1305 | status = "okay"; | 1305 | status = "okay"; |
1306 | }; | 1306 | }; |
1307 | 1307 | ||
1308 | sfrbu: sfr@fc05c000 { | ||
1309 | compatible = "atmel,sama5d2-sfrbu", "syscon"; | ||
1310 | reg = <0xfc05c000 0x20>; | ||
1311 | }; | ||
1312 | |||
1308 | chipid@fc069000 { | 1313 | chipid@fc069000 { |
1309 | compatible = "atmel,sama5d2-chipid"; | 1314 | compatible = "atmel,sama5d2-chipid"; |
1310 | reg = <0xfc069000 0x8>; | 1315 | reg = <0xfc069000 0x8>; |
diff --git a/arch/arm/boot/dts/socfpga.dtsi b/arch/arm/boot/dts/socfpga.dtsi index 2c43c4d85dee..b2674bdb8e6a 100644 --- a/arch/arm/boot/dts/socfpga.dtsi +++ b/arch/arm/boot/dts/socfpga.dtsi | |||
@@ -15,7 +15,6 @@ | |||
15 | * along with this program. If not, see <http://www.gnu.org/licenses/>. | 15 | * along with this program. If not, see <http://www.gnu.org/licenses/>. |
16 | */ | 16 | */ |
17 | 17 | ||
18 | #include "skeleton.dtsi" | ||
19 | #include <dt-bindings/reset/altr,rst-mgr.h> | 18 | #include <dt-bindings/reset/altr,rst-mgr.h> |
20 | 19 | ||
21 | / { | 20 | / { |
@@ -38,13 +37,13 @@ | |||
38 | #size-cells = <0>; | 37 | #size-cells = <0>; |
39 | enable-method = "altr,socfpga-smp"; | 38 | enable-method = "altr,socfpga-smp"; |
40 | 39 | ||
41 | cpu@0 { | 40 | cpu0: cpu@0 { |
42 | compatible = "arm,cortex-a9"; | 41 | compatible = "arm,cortex-a9"; |
43 | device_type = "cpu"; | 42 | device_type = "cpu"; |
44 | reg = <0>; | 43 | reg = <0>; |
45 | next-level-cache = <&L2>; | 44 | next-level-cache = <&L2>; |
46 | }; | 45 | }; |
47 | cpu@1 { | 46 | cpu1: cpu@1 { |
48 | compatible = "arm,cortex-a9"; | 47 | compatible = "arm,cortex-a9"; |
49 | device_type = "cpu"; | 48 | device_type = "cpu"; |
50 | reg = <1>; | 49 | reg = <1>; |
@@ -52,6 +51,15 @@ | |||
52 | }; | 51 | }; |
53 | }; | 52 | }; |
54 | 53 | ||
54 | pmu: pmu@ff111000 { | ||
55 | compatible = "arm,cortex-a9-pmu"; | ||
56 | interrupt-parent = <&intc>; | ||
57 | interrupts = <0 176 4>, <0 177 4>; | ||
58 | interrupt-affinity = <&cpu0>, <&cpu1>; | ||
59 | reg = <0xff111000 0x1000>, | ||
60 | <0xff113000 0x1000>; | ||
61 | }; | ||
62 | |||
55 | intc: intc@fffed000 { | 63 | intc: intc@fffed000 { |
56 | compatible = "arm,cortex-a9-gic"; | 64 | compatible = "arm,cortex-a9-gic"; |
57 | #interrupt-cells = <3>; | 65 | #interrupt-cells = <3>; |
@@ -145,7 +153,7 @@ | |||
145 | compatible = "fixed-clock"; | 153 | compatible = "fixed-clock"; |
146 | }; | 154 | }; |
147 | 155 | ||
148 | main_pll: main_pll { | 156 | main_pll: main_pll@40 { |
149 | #address-cells = <1>; | 157 | #address-cells = <1>; |
150 | #size-cells = <0>; | 158 | #size-cells = <0>; |
151 | #clock-cells = <0>; | 159 | #clock-cells = <0>; |
@@ -153,7 +161,7 @@ | |||
153 | clocks = <&osc1>; | 161 | clocks = <&osc1>; |
154 | reg = <0x40>; | 162 | reg = <0x40>; |
155 | 163 | ||
156 | mpuclk: mpuclk { | 164 | mpuclk: mpuclk@48 { |
157 | #clock-cells = <0>; | 165 | #clock-cells = <0>; |
158 | compatible = "altr,socfpga-perip-clk"; | 166 | compatible = "altr,socfpga-perip-clk"; |
159 | clocks = <&main_pll>; | 167 | clocks = <&main_pll>; |
@@ -161,7 +169,7 @@ | |||
161 | reg = <0x48>; | 169 | reg = <0x48>; |
162 | }; | 170 | }; |
163 | 171 | ||
164 | mainclk: mainclk { | 172 | mainclk: mainclk@4c { |
165 | #clock-cells = <0>; | 173 | #clock-cells = <0>; |
166 | compatible = "altr,socfpga-perip-clk"; | 174 | compatible = "altr,socfpga-perip-clk"; |
167 | clocks = <&main_pll>; | 175 | clocks = <&main_pll>; |
@@ -169,7 +177,7 @@ | |||
169 | reg = <0x4C>; | 177 | reg = <0x4C>; |
170 | }; | 178 | }; |
171 | 179 | ||
172 | dbg_base_clk: dbg_base_clk { | 180 | dbg_base_clk: dbg_base_clk@50 { |
173 | #clock-cells = <0>; | 181 | #clock-cells = <0>; |
174 | compatible = "altr,socfpga-perip-clk"; | 182 | compatible = "altr,socfpga-perip-clk"; |
175 | clocks = <&main_pll>, <&osc1>; | 183 | clocks = <&main_pll>, <&osc1>; |
@@ -177,21 +185,21 @@ | |||
177 | reg = <0x50>; | 185 | reg = <0x50>; |
178 | }; | 186 | }; |
179 | 187 | ||
180 | main_qspi_clk: main_qspi_clk { | 188 | main_qspi_clk: main_qspi_clk@54 { |
181 | #clock-cells = <0>; | 189 | #clock-cells = <0>; |
182 | compatible = "altr,socfpga-perip-clk"; | 190 | compatible = "altr,socfpga-perip-clk"; |
183 | clocks = <&main_pll>; | 191 | clocks = <&main_pll>; |
184 | reg = <0x54>; | 192 | reg = <0x54>; |
185 | }; | 193 | }; |
186 | 194 | ||
187 | main_nand_sdmmc_clk: main_nand_sdmmc_clk { | 195 | main_nand_sdmmc_clk: main_nand_sdmmc_clk@58 { |
188 | #clock-cells = <0>; | 196 | #clock-cells = <0>; |
189 | compatible = "altr,socfpga-perip-clk"; | 197 | compatible = "altr,socfpga-perip-clk"; |
190 | clocks = <&main_pll>; | 198 | clocks = <&main_pll>; |
191 | reg = <0x58>; | 199 | reg = <0x58>; |
192 | }; | 200 | }; |
193 | 201 | ||
194 | cfg_h2f_usr0_clk: cfg_h2f_usr0_clk { | 202 | cfg_h2f_usr0_clk: cfg_h2f_usr0_clk@5c { |
195 | #clock-cells = <0>; | 203 | #clock-cells = <0>; |
196 | compatible = "altr,socfpga-perip-clk"; | 204 | compatible = "altr,socfpga-perip-clk"; |
197 | clocks = <&main_pll>; | 205 | clocks = <&main_pll>; |
@@ -199,7 +207,7 @@ | |||
199 | }; | 207 | }; |
200 | }; | 208 | }; |
201 | 209 | ||
202 | periph_pll: periph_pll { | 210 | periph_pll: periph_pll@80 { |
203 | #address-cells = <1>; | 211 | #address-cells = <1>; |
204 | #size-cells = <0>; | 212 | #size-cells = <0>; |
205 | #clock-cells = <0>; | 213 | #clock-cells = <0>; |
@@ -207,42 +215,42 @@ | |||
207 | clocks = <&osc1>, <&osc2>, <&f2s_periph_ref_clk>; | 215 | clocks = <&osc1>, <&osc2>, <&f2s_periph_ref_clk>; |
208 | reg = <0x80>; | 216 | reg = <0x80>; |
209 | 217 | ||
210 | emac0_clk: emac0_clk { | 218 | emac0_clk: emac0_clk@88 { |
211 | #clock-cells = <0>; | 219 | #clock-cells = <0>; |
212 | compatible = "altr,socfpga-perip-clk"; | 220 | compatible = "altr,socfpga-perip-clk"; |
213 | clocks = <&periph_pll>; | 221 | clocks = <&periph_pll>; |
214 | reg = <0x88>; | 222 | reg = <0x88>; |
215 | }; | 223 | }; |
216 | 224 | ||
217 | emac1_clk: emac1_clk { | 225 | emac1_clk: emac1_clk@8c { |
218 | #clock-cells = <0>; | 226 | #clock-cells = <0>; |
219 | compatible = "altr,socfpga-perip-clk"; | 227 | compatible = "altr,socfpga-perip-clk"; |
220 | clocks = <&periph_pll>; | 228 | clocks = <&periph_pll>; |
221 | reg = <0x8C>; | 229 | reg = <0x8C>; |
222 | }; | 230 | }; |
223 | 231 | ||
224 | per_qspi_clk: per_qsi_clk { | 232 | per_qspi_clk: per_qsi_clk@90 { |
225 | #clock-cells = <0>; | 233 | #clock-cells = <0>; |
226 | compatible = "altr,socfpga-perip-clk"; | 234 | compatible = "altr,socfpga-perip-clk"; |
227 | clocks = <&periph_pll>; | 235 | clocks = <&periph_pll>; |
228 | reg = <0x90>; | 236 | reg = <0x90>; |
229 | }; | 237 | }; |
230 | 238 | ||
231 | per_nand_mmc_clk: per_nand_mmc_clk { | 239 | per_nand_mmc_clk: per_nand_mmc_clk@94 { |
232 | #clock-cells = <0>; | 240 | #clock-cells = <0>; |
233 | compatible = "altr,socfpga-perip-clk"; | 241 | compatible = "altr,socfpga-perip-clk"; |
234 | clocks = <&periph_pll>; | 242 | clocks = <&periph_pll>; |
235 | reg = <0x94>; | 243 | reg = <0x94>; |
236 | }; | 244 | }; |
237 | 245 | ||
238 | per_base_clk: per_base_clk { | 246 | per_base_clk: per_base_clk@98 { |
239 | #clock-cells = <0>; | 247 | #clock-cells = <0>; |
240 | compatible = "altr,socfpga-perip-clk"; | 248 | compatible = "altr,socfpga-perip-clk"; |
241 | clocks = <&periph_pll>; | 249 | clocks = <&periph_pll>; |
242 | reg = <0x98>; | 250 | reg = <0x98>; |
243 | }; | 251 | }; |
244 | 252 | ||
245 | h2f_usr1_clk: h2f_usr1_clk { | 253 | h2f_usr1_clk: h2f_usr1_clk@9c { |
246 | #clock-cells = <0>; | 254 | #clock-cells = <0>; |
247 | compatible = "altr,socfpga-perip-clk"; | 255 | compatible = "altr,socfpga-perip-clk"; |
248 | clocks = <&periph_pll>; | 256 | clocks = <&periph_pll>; |
@@ -250,7 +258,7 @@ | |||
250 | }; | 258 | }; |
251 | }; | 259 | }; |
252 | 260 | ||
253 | sdram_pll: sdram_pll { | 261 | sdram_pll: sdram_pll@c0 { |
254 | #address-cells = <1>; | 262 | #address-cells = <1>; |
255 | #size-cells = <0>; | 263 | #size-cells = <0>; |
256 | #clock-cells = <0>; | 264 | #clock-cells = <0>; |
@@ -258,28 +266,28 @@ | |||
258 | clocks = <&osc1>, <&osc2>, <&f2s_sdram_ref_clk>; | 266 | clocks = <&osc1>, <&osc2>, <&f2s_sdram_ref_clk>; |
259 | reg = <0xC0>; | 267 | reg = <0xC0>; |
260 | 268 | ||
261 | ddr_dqs_clk: ddr_dqs_clk { | 269 | ddr_dqs_clk: ddr_dqs_clk@c8 { |
262 | #clock-cells = <0>; | 270 | #clock-cells = <0>; |
263 | compatible = "altr,socfpga-perip-clk"; | 271 | compatible = "altr,socfpga-perip-clk"; |
264 | clocks = <&sdram_pll>; | 272 | clocks = <&sdram_pll>; |
265 | reg = <0xC8>; | 273 | reg = <0xC8>; |
266 | }; | 274 | }; |
267 | 275 | ||
268 | ddr_2x_dqs_clk: ddr_2x_dqs_clk { | 276 | ddr_2x_dqs_clk: ddr_2x_dqs_clk@cc { |
269 | #clock-cells = <0>; | 277 | #clock-cells = <0>; |
270 | compatible = "altr,socfpga-perip-clk"; | 278 | compatible = "altr,socfpga-perip-clk"; |
271 | clocks = <&sdram_pll>; | 279 | clocks = <&sdram_pll>; |
272 | reg = <0xCC>; | 280 | reg = <0xCC>; |
273 | }; | 281 | }; |
274 | 282 | ||
275 | ddr_dq_clk: ddr_dq_clk { | 283 | ddr_dq_clk: ddr_dq_clk@d0 { |
276 | #clock-cells = <0>; | 284 | #clock-cells = <0>; |
277 | compatible = "altr,socfpga-perip-clk"; | 285 | compatible = "altr,socfpga-perip-clk"; |
278 | clocks = <&sdram_pll>; | 286 | clocks = <&sdram_pll>; |
279 | reg = <0xD0>; | 287 | reg = <0xD0>; |
280 | }; | 288 | }; |
281 | 289 | ||
282 | h2f_usr2_clk: h2f_usr2_clk { | 290 | h2f_usr2_clk: h2f_usr2_clk@d4 { |
283 | #clock-cells = <0>; | 291 | #clock-cells = <0>; |
284 | compatible = "altr,socfpga-perip-clk"; | 292 | compatible = "altr,socfpga-perip-clk"; |
285 | clocks = <&sdram_pll>; | 293 | clocks = <&sdram_pll>; |
@@ -678,7 +686,7 @@ | |||
678 | status = "disabled"; | 686 | status = "disabled"; |
679 | }; | 687 | }; |
680 | 688 | ||
681 | eccmgr: eccmgr@ffd08140 { | 689 | eccmgr: eccmgr { |
682 | compatible = "altr,socfpga-ecc-manager"; | 690 | compatible = "altr,socfpga-ecc-manager"; |
683 | #address-cells = <1>; | 691 | #address-cells = <1>; |
684 | #size-cells = <1>; | 692 | #size-cells = <1>; |
@@ -879,7 +887,7 @@ | |||
879 | dma-names = "tx", "rx"; | 887 | dma-names = "tx", "rx"; |
880 | }; | 888 | }; |
881 | 889 | ||
882 | usbphy0: usbphy@0 { | 890 | usbphy0: usbphy { |
883 | #phy-cells = <0>; | 891 | #phy-cells = <0>; |
884 | compatible = "usb-nop-xceiv"; | 892 | compatible = "usb-nop-xceiv"; |
885 | status = "okay"; | 893 | status = "okay"; |
diff --git a/arch/arm/boot/dts/socfpga_arria10.dtsi b/arch/arm/boot/dts/socfpga_arria10.dtsi index 6b0b7463f36f..bead79e4b2aa 100644 --- a/arch/arm/boot/dts/socfpga_arria10.dtsi +++ b/arch/arm/boot/dts/socfpga_arria10.dtsi | |||
@@ -14,7 +14,6 @@ | |||
14 | * this program. If not, see <http://www.gnu.org/licenses/>. | 14 | * this program. If not, see <http://www.gnu.org/licenses/>. |
15 | */ | 15 | */ |
16 | 16 | ||
17 | #include "skeleton.dtsi" | ||
18 | #include <dt-bindings/interrupt-controller/arm-gic.h> | 17 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
19 | #include <dt-bindings/reset/altr,rst-mgr-a10.h> | 18 | #include <dt-bindings/reset/altr,rst-mgr-a10.h> |
20 | 19 | ||
@@ -119,7 +118,7 @@ | |||
119 | compatible = "fixed-clock"; | 118 | compatible = "fixed-clock"; |
120 | }; | 119 | }; |
121 | 120 | ||
122 | main_pll: main_pll { | 121 | main_pll: main_pll@40 { |
123 | #address-cells = <1>; | 122 | #address-cells = <1>; |
124 | #size-cells = <0>; | 123 | #size-cells = <0>; |
125 | #clock-cells = <0>; | 124 | #clock-cells = <0>; |
@@ -142,35 +141,35 @@ | |||
142 | div-reg = <0x144 0 11>; | 141 | div-reg = <0x144 0 11>; |
143 | }; | 142 | }; |
144 | 143 | ||
145 | main_emaca_clk: main_emaca_clk { | 144 | main_emaca_clk: main_emaca_clk@68 { |
146 | #clock-cells = <0>; | 145 | #clock-cells = <0>; |
147 | compatible = "altr,socfpga-a10-perip-clk"; | 146 | compatible = "altr,socfpga-a10-perip-clk"; |
148 | clocks = <&main_pll>; | 147 | clocks = <&main_pll>; |
149 | reg = <0x68>; | 148 | reg = <0x68>; |
150 | }; | 149 | }; |
151 | 150 | ||
152 | main_emacb_clk: main_emacb_clk { | 151 | main_emacb_clk: main_emacb_clk@6c { |
153 | #clock-cells = <0>; | 152 | #clock-cells = <0>; |
154 | compatible = "altr,socfpga-a10-perip-clk"; | 153 | compatible = "altr,socfpga-a10-perip-clk"; |
155 | clocks = <&main_pll>; | 154 | clocks = <&main_pll>; |
156 | reg = <0x6C>; | 155 | reg = <0x6C>; |
157 | }; | 156 | }; |
158 | 157 | ||
159 | main_emac_ptp_clk: main_emac_ptp_clk { | 158 | main_emac_ptp_clk: main_emac_ptp_clk@70 { |
160 | #clock-cells = <0>; | 159 | #clock-cells = <0>; |
161 | compatible = "altr,socfpga-a10-perip-clk"; | 160 | compatible = "altr,socfpga-a10-perip-clk"; |
162 | clocks = <&main_pll>; | 161 | clocks = <&main_pll>; |
163 | reg = <0x70>; | 162 | reg = <0x70>; |
164 | }; | 163 | }; |
165 | 164 | ||
166 | main_gpio_db_clk: main_gpio_db_clk { | 165 | main_gpio_db_clk: main_gpio_db_clk@74 { |
167 | #clock-cells = <0>; | 166 | #clock-cells = <0>; |
168 | compatible = "altr,socfpga-a10-perip-clk"; | 167 | compatible = "altr,socfpga-a10-perip-clk"; |
169 | clocks = <&main_pll>; | 168 | clocks = <&main_pll>; |
170 | reg = <0x74>; | 169 | reg = <0x74>; |
171 | }; | 170 | }; |
172 | 171 | ||
173 | main_sdmmc_clk: main_sdmmc_clk { | 172 | main_sdmmc_clk: main_sdmmc_clk@78 { |
174 | #clock-cells = <0>; | 173 | #clock-cells = <0>; |
175 | compatible = "altr,socfpga-a10-perip-clk" | 174 | compatible = "altr,socfpga-a10-perip-clk" |
176 | ; | 175 | ; |
@@ -178,28 +177,28 @@ | |||
178 | reg = <0x78>; | 177 | reg = <0x78>; |
179 | }; | 178 | }; |
180 | 179 | ||
181 | main_s2f_usr0_clk: main_s2f_usr0_clk { | 180 | main_s2f_usr0_clk: main_s2f_usr0_clk@7c { |
182 | #clock-cells = <0>; | 181 | #clock-cells = <0>; |
183 | compatible = "altr,socfpga-a10-perip-clk"; | 182 | compatible = "altr,socfpga-a10-perip-clk"; |
184 | clocks = <&main_pll>; | 183 | clocks = <&main_pll>; |
185 | reg = <0x7C>; | 184 | reg = <0x7C>; |
186 | }; | 185 | }; |
187 | 186 | ||
188 | main_s2f_usr1_clk: main_s2f_usr1_clk { | 187 | main_s2f_usr1_clk: main_s2f_usr1_clk@80 { |
189 | #clock-cells = <0>; | 188 | #clock-cells = <0>; |
190 | compatible = "altr,socfpga-a10-perip-clk"; | 189 | compatible = "altr,socfpga-a10-perip-clk"; |
191 | clocks = <&main_pll>; | 190 | clocks = <&main_pll>; |
192 | reg = <0x80>; | 191 | reg = <0x80>; |
193 | }; | 192 | }; |
194 | 193 | ||
195 | main_hmc_pll_ref_clk: main_hmc_pll_ref_clk { | 194 | main_hmc_pll_ref_clk: main_hmc_pll_ref_clk@84 { |
196 | #clock-cells = <0>; | 195 | #clock-cells = <0>; |
197 | compatible = "altr,socfpga-a10-perip-clk"; | 196 | compatible = "altr,socfpga-a10-perip-clk"; |
198 | clocks = <&main_pll>; | 197 | clocks = <&main_pll>; |
199 | reg = <0x84>; | 198 | reg = <0x84>; |
200 | }; | 199 | }; |
201 | 200 | ||
202 | main_periph_ref_clk: main_periph_ref_clk { | 201 | main_periph_ref_clk: main_periph_ref_clk@9c { |
203 | #clock-cells = <0>; | 202 | #clock-cells = <0>; |
204 | compatible = "altr,socfpga-a10-perip-clk"; | 203 | compatible = "altr,socfpga-a10-perip-clk"; |
205 | clocks = <&main_pll>; | 204 | clocks = <&main_pll>; |
@@ -207,7 +206,7 @@ | |||
207 | }; | 206 | }; |
208 | }; | 207 | }; |
209 | 208 | ||
210 | periph_pll: periph_pll { | 209 | periph_pll: periph_pll@c0 { |
211 | #address-cells = <1>; | 210 | #address-cells = <1>; |
212 | #size-cells = <0>; | 211 | #size-cells = <0>; |
213 | #clock-cells = <0>; | 212 | #clock-cells = <0>; |
@@ -230,56 +229,56 @@ | |||
230 | div-reg = <0x144 16 11>; | 229 | div-reg = <0x144 16 11>; |
231 | }; | 230 | }; |
232 | 231 | ||
233 | peri_emaca_clk: peri_emaca_clk { | 232 | peri_emaca_clk: peri_emaca_clk@e8 { |
234 | #clock-cells = <0>; | 233 | #clock-cells = <0>; |
235 | compatible = "altr,socfpga-a10-perip-clk"; | 234 | compatible = "altr,socfpga-a10-perip-clk"; |
236 | clocks = <&periph_pll>; | 235 | clocks = <&periph_pll>; |
237 | reg = <0xE8>; | 236 | reg = <0xE8>; |
238 | }; | 237 | }; |
239 | 238 | ||
240 | peri_emacb_clk: peri_emacb_clk { | 239 | peri_emacb_clk: peri_emacb_clk@ec { |
241 | #clock-cells = <0>; | 240 | #clock-cells = <0>; |
242 | compatible = "altr,socfpga-a10-perip-clk"; | 241 | compatible = "altr,socfpga-a10-perip-clk"; |
243 | clocks = <&periph_pll>; | 242 | clocks = <&periph_pll>; |
244 | reg = <0xEC>; | 243 | reg = <0xEC>; |
245 | }; | 244 | }; |
246 | 245 | ||
247 | peri_emac_ptp_clk: peri_emac_ptp_clk { | 246 | peri_emac_ptp_clk: peri_emac_ptp_clk@f0 { |
248 | #clock-cells = <0>; | 247 | #clock-cells = <0>; |
249 | compatible = "altr,socfpga-a10-perip-clk"; | 248 | compatible = "altr,socfpga-a10-perip-clk"; |
250 | clocks = <&periph_pll>; | 249 | clocks = <&periph_pll>; |
251 | reg = <0xF0>; | 250 | reg = <0xF0>; |
252 | }; | 251 | }; |
253 | 252 | ||
254 | peri_gpio_db_clk: peri_gpio_db_clk { | 253 | peri_gpio_db_clk: peri_gpio_db_clk@f4 { |
255 | #clock-cells = <0>; | 254 | #clock-cells = <0>; |
256 | compatible = "altr,socfpga-a10-perip-clk"; | 255 | compatible = "altr,socfpga-a10-perip-clk"; |
257 | clocks = <&periph_pll>; | 256 | clocks = <&periph_pll>; |
258 | reg = <0xF4>; | 257 | reg = <0xF4>; |
259 | }; | 258 | }; |
260 | 259 | ||
261 | peri_sdmmc_clk: peri_sdmmc_clk { | 260 | peri_sdmmc_clk: peri_sdmmc_clk@f8 { |
262 | #clock-cells = <0>; | 261 | #clock-cells = <0>; |
263 | compatible = "altr,socfpga-a10-perip-clk"; | 262 | compatible = "altr,socfpga-a10-perip-clk"; |
264 | clocks = <&periph_pll>; | 263 | clocks = <&periph_pll>; |
265 | reg = <0xF8>; | 264 | reg = <0xF8>; |
266 | }; | 265 | }; |
267 | 266 | ||
268 | peri_s2f_usr0_clk: peri_s2f_usr0_clk { | 267 | peri_s2f_usr0_clk: peri_s2f_usr0_clk@fc { |
269 | #clock-cells = <0>; | 268 | #clock-cells = <0>; |
270 | compatible = "altr,socfpga-a10-perip-clk"; | 269 | compatible = "altr,socfpga-a10-perip-clk"; |
271 | clocks = <&periph_pll>; | 270 | clocks = <&periph_pll>; |
272 | reg = <0xFC>; | 271 | reg = <0xFC>; |
273 | }; | 272 | }; |
274 | 273 | ||
275 | peri_s2f_usr1_clk: peri_s2f_usr1_clk { | 274 | peri_s2f_usr1_clk: peri_s2f_usr1_clk@100 { |
276 | #clock-cells = <0>; | 275 | #clock-cells = <0>; |
277 | compatible = "altr,socfpga-a10-perip-clk"; | 276 | compatible = "altr,socfpga-a10-perip-clk"; |
278 | clocks = <&periph_pll>; | 277 | clocks = <&periph_pll>; |
279 | reg = <0x100>; | 278 | reg = <0x100>; |
280 | }; | 279 | }; |
281 | 280 | ||
282 | peri_hmc_pll_ref_clk: peri_hmc_pll_ref_clk { | 281 | peri_hmc_pll_ref_clk: peri_hmc_pll_ref_clk@104 { |
283 | #clock-cells = <0>; | 282 | #clock-cells = <0>; |
284 | compatible = "altr,socfpga-a10-perip-clk"; | 283 | compatible = "altr,socfpga-a10-perip-clk"; |
285 | clocks = <&periph_pll>; | 284 | clocks = <&periph_pll>; |
@@ -287,7 +286,7 @@ | |||
287 | }; | 286 | }; |
288 | }; | 287 | }; |
289 | 288 | ||
290 | mpu_free_clk: mpu_free_clk { | 289 | mpu_free_clk: mpu_free_clk@60 { |
291 | #clock-cells = <0>; | 290 | #clock-cells = <0>; |
292 | compatible = "altr,socfpga-a10-perip-clk"; | 291 | compatible = "altr,socfpga-a10-perip-clk"; |
293 | clocks = <&main_mpu_base_clk>, <&peri_mpu_base_clk>, | 292 | clocks = <&main_mpu_base_clk>, <&peri_mpu_base_clk>, |
@@ -296,7 +295,7 @@ | |||
296 | reg = <0x60>; | 295 | reg = <0x60>; |
297 | }; | 296 | }; |
298 | 297 | ||
299 | noc_free_clk: noc_free_clk { | 298 | noc_free_clk: noc_free_clk@64 { |
300 | #clock-cells = <0>; | 299 | #clock-cells = <0>; |
301 | compatible = "altr,socfpga-a10-perip-clk"; | 300 | compatible = "altr,socfpga-a10-perip-clk"; |
302 | clocks = <&main_noc_base_clk>, <&peri_noc_base_clk>, | 301 | clocks = <&main_noc_base_clk>, <&peri_noc_base_clk>, |
@@ -305,7 +304,7 @@ | |||
305 | reg = <0x64>; | 304 | reg = <0x64>; |
306 | }; | 305 | }; |
307 | 306 | ||
308 | s2f_user1_free_clk: s2f_user1_free_clk { | 307 | s2f_user1_free_clk: s2f_user1_free_clk@104 { |
309 | #clock-cells = <0>; | 308 | #clock-cells = <0>; |
310 | compatible = "altr,socfpga-a10-perip-clk"; | 309 | compatible = "altr,socfpga-a10-perip-clk"; |
311 | clocks = <&main_s2f_usr1_clk>, <&peri_s2f_usr1_clk>, | 310 | clocks = <&main_s2f_usr1_clk>, <&peri_s2f_usr1_clk>, |
@@ -314,7 +313,7 @@ | |||
314 | reg = <0x104>; | 313 | reg = <0x104>; |
315 | }; | 314 | }; |
316 | 315 | ||
317 | sdmmc_free_clk: sdmmc_free_clk { | 316 | sdmmc_free_clk: sdmmc_free_clk@f8 { |
318 | #clock-cells = <0>; | 317 | #clock-cells = <0>; |
319 | compatible = "altr,socfpga-a10-perip-clk"; | 318 | compatible = "altr,socfpga-a10-perip-clk"; |
320 | clocks = <&main_sdmmc_clk>, <&peri_sdmmc_clk>, | 319 | clocks = <&main_sdmmc_clk>, <&peri_sdmmc_clk>, |
@@ -649,7 +648,7 @@ | |||
649 | reg = <0xffe00000 0x40000>; | 648 | reg = <0xffe00000 0x40000>; |
650 | }; | 649 | }; |
651 | 650 | ||
652 | eccmgr: eccmgr@ffd06000 { | 651 | eccmgr: eccmgr { |
653 | compatible = "altr,socfpga-a10-ecc-manager"; | 652 | compatible = "altr,socfpga-a10-ecc-manager"; |
654 | altr,sysmgr-syscon = <&sysmgr>; | 653 | altr,sysmgr-syscon = <&sysmgr>; |
655 | #address-cells = <1>; | 654 | #address-cells = <1>; |
@@ -806,7 +805,7 @@ | |||
806 | status = "disabled"; | 805 | status = "disabled"; |
807 | }; | 806 | }; |
808 | 807 | ||
809 | usbphy0: usbphy@0 { | 808 | usbphy0: usbphy { |
810 | #phy-cells = <0>; | 809 | #phy-cells = <0>; |
811 | compatible = "usb-nop-xceiv"; | 810 | compatible = "usb-nop-xceiv"; |
812 | status = "okay"; | 811 | status = "okay"; |
diff --git a/arch/arm/boot/dts/socfpga_arria10_socdk.dtsi b/arch/arm/boot/dts/socfpga_arria10_socdk.dtsi index c57e6cea0d83..94e088473823 100644 --- a/arch/arm/boot/dts/socfpga_arria10_socdk.dtsi +++ b/arch/arm/boot/dts/socfpga_arria10_socdk.dtsi | |||
@@ -30,7 +30,7 @@ | |||
30 | stdout-path = "serial0:115200n8"; | 30 | stdout-path = "serial0:115200n8"; |
31 | }; | 31 | }; |
32 | 32 | ||
33 | memory { | 33 | memory@0 { |
34 | name = "memory"; | 34 | name = "memory"; |
35 | device_type = "memory"; | 35 | device_type = "memory"; |
36 | reg = <0x0 0x40000000>; /* 1GB */ | 36 | reg = <0x0 0x40000000>; /* 1GB */ |
@@ -121,6 +121,11 @@ | |||
121 | gpio-controller; | 121 | gpio-controller; |
122 | #gpio-cells = <2>; | 122 | #gpio-cells = <2>; |
123 | }; | 123 | }; |
124 | |||
125 | a10sr_rst: reset-controller { | ||
126 | compatible = "altr,a10sr-reset"; | ||
127 | #reset-cells = <1>; | ||
128 | }; | ||
124 | }; | 129 | }; |
125 | }; | 130 | }; |
126 | 131 | ||
diff --git a/arch/arm/boot/dts/socfpga_arria5_socdk.dts b/arch/arm/boot/dts/socfpga_arria5_socdk.dts index 8672edf9ba4e..aac4feea86f3 100644 --- a/arch/arm/boot/dts/socfpga_arria5_socdk.dts +++ b/arch/arm/boot/dts/socfpga_arria5_socdk.dts | |||
@@ -26,7 +26,7 @@ | |||
26 | stdout-path = "serial0:115200n8"; | 26 | stdout-path = "serial0:115200n8"; |
27 | }; | 27 | }; |
28 | 28 | ||
29 | memory { | 29 | memory@0 { |
30 | name = "memory"; | 30 | name = "memory"; |
31 | device_type = "memory"; | 31 | device_type = "memory"; |
32 | reg = <0x0 0x40000000>; /* 1GB */ | 32 | reg = <0x0 0x40000000>; /* 1GB */ |
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_de0_sockit.dts b/arch/arm/boot/dts/socfpga_cyclone5_de0_sockit.dts index 5ecd2ef405e3..7b49395452b6 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_de0_sockit.dts +++ b/arch/arm/boot/dts/socfpga_cyclone5_de0_sockit.dts | |||
@@ -25,7 +25,7 @@ | |||
25 | stdout-path = "serial0:115200n8"; | 25 | stdout-path = "serial0:115200n8"; |
26 | }; | 26 | }; |
27 | 27 | ||
28 | memory { | 28 | memory@0 { |
29 | name = "memory"; | 29 | name = "memory"; |
30 | device_type = "memory"; | 30 | device_type = "memory"; |
31 | reg = <0x0 0x40000000>; /* 1GB */ | 31 | reg = <0x0 0x40000000>; /* 1GB */ |
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_mcv.dtsi b/arch/arm/boot/dts/socfpga_cyclone5_mcv.dtsi index 6ad3b1eb9b86..3c03da6b8b1d 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_mcv.dtsi +++ b/arch/arm/boot/dts/socfpga_cyclone5_mcv.dtsi | |||
@@ -21,7 +21,7 @@ | |||
21 | model = "Aries/DENX MCV"; | 21 | model = "Aries/DENX MCV"; |
22 | compatible = "altr,socfpga-cyclone5", "altr,socfpga"; | 22 | compatible = "altr,socfpga-cyclone5", "altr,socfpga"; |
23 | 23 | ||
24 | memory { | 24 | memory@0 { |
25 | name = "memory"; | 25 | name = "memory"; |
26 | device_type = "memory"; | 26 | device_type = "memory"; |
27 | reg = <0x0 0x40000000>; /* 1 GiB */ | 27 | reg = <0x0 0x40000000>; /* 1 GiB */ |
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_mcvevk.dts b/arch/arm/boot/dts/socfpga_cyclone5_mcvevk.dts index e5a98e5696ca..21e397287e29 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_mcvevk.dts +++ b/arch/arm/boot/dts/socfpga_cyclone5_mcvevk.dts | |||
@@ -71,7 +71,6 @@ | |||
71 | 71 | ||
72 | stmpe_touchscreen { | 72 | stmpe_touchscreen { |
73 | compatible = "st,stmpe-ts"; | 73 | compatible = "st,stmpe-ts"; |
74 | reg = <0>; | ||
75 | ts,sample-time = <4>; | 74 | ts,sample-time = <4>; |
76 | ts,mod-12b = <1>; | 75 | ts,mod-12b = <1>; |
77 | ts,ref-sel = <0>; | 76 | ts,ref-sel = <0>; |
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts b/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts index 7ea32c81e720..155829f9eba1 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts +++ b/arch/arm/boot/dts/socfpga_cyclone5_socdk.dts | |||
@@ -26,7 +26,7 @@ | |||
26 | stdout-path = "serial0:115200n8"; | 26 | stdout-path = "serial0:115200n8"; |
27 | }; | 27 | }; |
28 | 28 | ||
29 | memory { | 29 | memory@0 { |
30 | name = "memory"; | 30 | name = "memory"; |
31 | device_type = "memory"; | 31 | device_type = "memory"; |
32 | reg = <0x0 0x40000000>; /* 1GB */ | 32 | reg = <0x0 0x40000000>; /* 1GB */ |
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_sockit.dts b/arch/arm/boot/dts/socfpga_cyclone5_sockit.dts index a0c90b3bdfd1..a4a555c19d94 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_sockit.dts +++ b/arch/arm/boot/dts/socfpga_cyclone5_sockit.dts | |||
@@ -26,7 +26,7 @@ | |||
26 | stdout-path = "serial0:115200n8"; | 26 | stdout-path = "serial0:115200n8"; |
27 | }; | 27 | }; |
28 | 28 | ||
29 | memory { | 29 | memory@0 { |
30 | name = "memory"; | 30 | name = "memory"; |
31 | device_type = "memory"; | 31 | device_type = "memory"; |
32 | reg = <0x0 0x40000000>; /* 1GB */ | 32 | reg = <0x0 0x40000000>; /* 1GB */ |
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_socrates.dts b/arch/arm/boot/dts/socfpga_cyclone5_socrates.dts index c3d52f27b21e..53bf99eef66d 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_socrates.dts +++ b/arch/arm/boot/dts/socfpga_cyclone5_socrates.dts | |||
@@ -25,7 +25,7 @@ | |||
25 | bootargs = "console=ttyS0,115200"; | 25 | bootargs = "console=ttyS0,115200"; |
26 | }; | 26 | }; |
27 | 27 | ||
28 | memory { | 28 | memory@0 { |
29 | name = "memory"; | 29 | name = "memory"; |
30 | device_type = "memory"; | 30 | device_type = "memory"; |
31 | reg = <0x0 0x40000000>; /* 1GB */ | 31 | reg = <0x0 0x40000000>; /* 1GB */ |
@@ -60,18 +60,18 @@ | |||
60 | &leds { | 60 | &leds { |
61 | compatible = "gpio-leds"; | 61 | compatible = "gpio-leds"; |
62 | 62 | ||
63 | led@0 { | 63 | led0 { |
64 | label = "led:green:heartbeat"; | 64 | label = "led:green:heartbeat"; |
65 | gpios = <&porta 28 1>; | 65 | gpios = <&porta 28 1>; |
66 | linux,default-trigger = "heartbeat"; | 66 | linux,default-trigger = "heartbeat"; |
67 | }; | 67 | }; |
68 | 68 | ||
69 | led@1 { | 69 | led1 { |
70 | label = "led:green:D7"; | 70 | label = "led:green:D7"; |
71 | gpios = <&portb 19 1>; | 71 | gpios = <&portb 19 1>; |
72 | }; | 72 | }; |
73 | 73 | ||
74 | led@2 { | 74 | led2 { |
75 | label = "led:green:D8"; | 75 | label = "led:green:D8"; |
76 | gpios = <&portb 25 1>; | 76 | gpios = <&portb 25 1>; |
77 | }; | 77 | }; |
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_sodia.dts b/arch/arm/boot/dts/socfpga_cyclone5_sodia.dts index 5b7e3c27e6e9..8860dd2e242c 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_sodia.dts +++ b/arch/arm/boot/dts/socfpga_cyclone5_sodia.dts | |||
@@ -28,7 +28,7 @@ | |||
28 | stdout-path = "serial0:115200n8"; | 28 | stdout-path = "serial0:115200n8"; |
29 | }; | 29 | }; |
30 | 30 | ||
31 | memory { | 31 | memory@0 { |
32 | name = "memory"; | 32 | name = "memory"; |
33 | device_type = "memory"; | 33 | device_type = "memory"; |
34 | reg = <0x0 0x40000000>; | 34 | reg = <0x0 0x40000000>; |
@@ -121,3 +121,24 @@ | |||
121 | &usb1 { | 121 | &usb1 { |
122 | status = "okay"; | 122 | status = "okay"; |
123 | }; | 123 | }; |
124 | |||
125 | &qspi { | ||
126 | status = "okay"; | ||
127 | |||
128 | flash0: n25q512a@0 { | ||
129 | #address-cells = <1>; | ||
130 | #size-cells = <1>; | ||
131 | compatible = "n25q512a"; | ||
132 | reg = <0>; | ||
133 | spi-max-frequency = <100000000>; | ||
134 | |||
135 | m25p,fast-read; | ||
136 | cdns,page-size = <256>; | ||
137 | cdns,block-size = <16>; | ||
138 | cdns,read-delay = <4>; | ||
139 | cdns,tshsl-ns = <50>; | ||
140 | cdns,tsd2d-ns = <50>; | ||
141 | cdns,tchsh-ns = <4>; | ||
142 | cdns,tslch-ns = <4>; | ||
143 | }; | ||
144 | }; | ||
diff --git a/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts b/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts index 363ee62457fe..893198049397 100644 --- a/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts +++ b/arch/arm/boot/dts/socfpga_cyclone5_vining_fpga.dts | |||
@@ -57,7 +57,7 @@ | |||
57 | bootargs = "console=ttyS0,115200"; | 57 | bootargs = "console=ttyS0,115200"; |
58 | }; | 58 | }; |
59 | 59 | ||
60 | memory { | 60 | memory@0 { |
61 | name = "memory"; | 61 | name = "memory"; |
62 | device_type = "memory"; | 62 | device_type = "memory"; |
63 | reg = <0x0 0x40000000>; /* 1GB */ | 63 | reg = <0x0 0x40000000>; /* 1GB */ |
diff --git a/arch/arm/boot/dts/socfpga_vt.dts b/arch/arm/boot/dts/socfpga_vt.dts index f9345e02ca49..dfe2193cd4d5 100644 --- a/arch/arm/boot/dts/socfpga_vt.dts +++ b/arch/arm/boot/dts/socfpga_vt.dts | |||
@@ -26,7 +26,7 @@ | |||
26 | bootargs = "console=ttyS0,57600"; | 26 | bootargs = "console=ttyS0,57600"; |
27 | }; | 27 | }; |
28 | 28 | ||
29 | memory { | 29 | memory@0 { |
30 | name = "memory"; | 30 | name = "memory"; |
31 | device_type = "memory"; | 31 | device_type = "memory"; |
32 | reg = <0x0 0x40000000>; /* 1 GB */ | 32 | reg = <0x0 0x40000000>; /* 1 GB */ |
diff --git a/arch/arm/boot/dts/spear600-evb.dts b/arch/arm/boot/dts/spear600-evb.dts index d865a891776d..c67e76c8ba5d 100644 --- a/arch/arm/boot/dts/spear600-evb.dts +++ b/arch/arm/boot/dts/spear600-evb.dts | |||
@@ -22,95 +22,91 @@ | |||
22 | device_type = "memory"; | 22 | device_type = "memory"; |
23 | reg = <0 0x10000000>; | 23 | reg = <0 0x10000000>; |
24 | }; | 24 | }; |
25 | }; | ||
25 | 26 | ||
26 | ahb { | 27 | &clcd { |
27 | clcd@fc200000 { | 28 | status = "okay"; |
28 | status = "okay"; | 29 | }; |
29 | }; | ||
30 | 30 | ||
31 | dma@fc400000 { | 31 | &dmac { |
32 | status = "okay"; | 32 | status = "okay"; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | ehci@e1800000 { | 35 | &ehci_usb0 { |
36 | status = "okay"; | 36 | status = "okay"; |
37 | }; | 37 | }; |
38 | 38 | ||
39 | ehci@e2000000 { | 39 | &ehci_usb1 { |
40 | status = "okay"; | 40 | status = "okay"; |
41 | }; | 41 | }; |
42 | 42 | ||
43 | gmac: ethernet@e0800000 { | 43 | &gmac { |
44 | phy-mode = "gmii"; | 44 | phy-mode = "gmii"; |
45 | status = "okay"; | 45 | status = "okay"; |
46 | }; | 46 | }; |
47 | 47 | ||
48 | ohci@e1900000 { | 48 | &ohci_usb0 { |
49 | status = "okay"; | 49 | status = "okay"; |
50 | }; | 50 | }; |
51 | 51 | ||
52 | ohci@e2100000 { | 52 | &ohci_usb1 { |
53 | status = "okay"; | 53 | status = "okay"; |
54 | }; | 54 | }; |
55 | 55 | ||
56 | smi: flash@fc000000 { | 56 | &smi { |
57 | status = "okay"; | 57 | status = "okay"; |
58 | clock-rate=<50000000>; | 58 | clock-rate = <50000000>; |
59 | |||
60 | flash@f8000000 { | ||
61 | #address-cells = <1>; | ||
62 | #size-cells = <1>; | ||
63 | reg = <0xf8000000 0x800000>; | ||
64 | st,smi-fast-mode; | ||
65 | |||
66 | partition@0 { | ||
67 | label = "xloader"; | ||
68 | reg = <0x0 0x10000>; | ||
69 | }; | ||
70 | partition@10000 { | ||
71 | label = "u-boot"; | ||
72 | reg = <0x10000 0x50000>; | ||
73 | }; | ||
74 | partition@60000 { | ||
75 | label = "environment"; | ||
76 | reg = <0x60000 0x10000>; | ||
77 | }; | ||
78 | partition@70000 { | ||
79 | label = "dtb"; | ||
80 | reg = <0x70000 0x10000>; | ||
81 | }; | ||
82 | partition@80000 { | ||
83 | label = "linux"; | ||
84 | reg = <0x80000 0x310000>; | ||
85 | }; | ||
86 | partition@390000 { | ||
87 | label = "rootfs"; | ||
88 | reg = <0x390000 0x0>; | ||
89 | }; | ||
90 | }; | ||
91 | }; | ||
92 | 59 | ||
93 | apb { | 60 | flash@f8000000 { |
94 | serial@d0000000 { | 61 | reg = <0xf8000000 0x800000>; |
95 | status = "okay"; | 62 | st,smi-fast-mode; |
96 | pinctrl-names = "default"; | ||
97 | pinctrl-0 = <>; | ||
98 | }; | ||
99 | 63 | ||
100 | serial@d0080000 { | 64 | partitions { |
101 | status = "okay"; | 65 | compatible = "fixed-partitions"; |
102 | pinctrl-names = "default"; | 66 | #address-cells = <1>; |
103 | pinctrl-0 = <>; | 67 | #size-cells = <1>; |
104 | }; | ||
105 | 68 | ||
106 | rtc@fc900000 { | 69 | partition@0 { |
107 | status = "okay"; | 70 | label = "xloader"; |
71 | reg = <0x0 0x10000>; | ||
108 | }; | 72 | }; |
109 | 73 | partition@10000 { | |
110 | i2c@d0200000 { | 74 | label = "u-boot"; |
111 | clock-frequency = <400000>; | 75 | reg = <0x10000 0x50000>; |
112 | status = "okay"; | 76 | }; |
77 | partition@60000 { | ||
78 | label = "environment"; | ||
79 | reg = <0x60000 0x10000>; | ||
80 | }; | ||
81 | partition@70000 { | ||
82 | label = "dtb"; | ||
83 | reg = <0x70000 0x10000>; | ||
84 | }; | ||
85 | partition@80000 { | ||
86 | label = "linux"; | ||
87 | reg = <0x80000 0x310000>; | ||
88 | }; | ||
89 | partition@390000 { | ||
90 | label = "rootfs"; | ||
91 | reg = <0x390000 0x0>; | ||
113 | }; | 92 | }; |
114 | }; | 93 | }; |
115 | }; | 94 | }; |
116 | }; | 95 | }; |
96 | |||
97 | &uart0 { | ||
98 | status = "okay"; | ||
99 | }; | ||
100 | |||
101 | &uart1 { | ||
102 | status = "okay"; | ||
103 | }; | ||
104 | |||
105 | &rtc { | ||
106 | status = "okay"; | ||
107 | }; | ||
108 | |||
109 | &i2c { | ||
110 | clock-frequency = <400000>; | ||
111 | status = "okay"; | ||
112 | }; | ||
diff --git a/arch/arm/boot/dts/spear600.dtsi b/arch/arm/boot/dts/spear600.dtsi index 9f60a7b6a42b..6b32d20acc9f 100644 --- a/arch/arm/boot/dts/spear600.dtsi +++ b/arch/arm/boot/dts/spear600.dtsi | |||
@@ -49,7 +49,7 @@ | |||
49 | #interrupt-cells = <1>; | 49 | #interrupt-cells = <1>; |
50 | }; | 50 | }; |
51 | 51 | ||
52 | clcd@fc200000 { | 52 | clcd: clcd@fc200000 { |
53 | compatible = "arm,pl110", "arm,primecell"; | 53 | compatible = "arm,pl110", "arm,primecell"; |
54 | reg = <0xfc200000 0x1000>; | 54 | reg = <0xfc200000 0x1000>; |
55 | interrupt-parent = <&vic1>; | 55 | interrupt-parent = <&vic1>; |
@@ -57,7 +57,7 @@ | |||
57 | status = "disabled"; | 57 | status = "disabled"; |
58 | }; | 58 | }; |
59 | 59 | ||
60 | dma@fc400000 { | 60 | dmac: dma@fc400000 { |
61 | compatible = "arm,pl080", "arm,primecell"; | 61 | compatible = "arm,pl080", "arm,primecell"; |
62 | reg = <0xfc400000 0x1000>; | 62 | reg = <0xfc400000 0x1000>; |
63 | interrupt-parent = <&vic1>; | 63 | interrupt-parent = <&vic1>; |
@@ -97,7 +97,7 @@ | |||
97 | status = "disabled"; | 97 | status = "disabled"; |
98 | }; | 98 | }; |
99 | 99 | ||
100 | ehci@e1800000 { | 100 | ehci_usb0: ehci@e1800000 { |
101 | compatible = "st,spear600-ehci", "usb-ehci"; | 101 | compatible = "st,spear600-ehci", "usb-ehci"; |
102 | reg = <0xe1800000 0x1000>; | 102 | reg = <0xe1800000 0x1000>; |
103 | interrupt-parent = <&vic1>; | 103 | interrupt-parent = <&vic1>; |
@@ -105,7 +105,7 @@ | |||
105 | status = "disabled"; | 105 | status = "disabled"; |
106 | }; | 106 | }; |
107 | 107 | ||
108 | ehci@e2000000 { | 108 | ehci_usb1: ehci@e2000000 { |
109 | compatible = "st,spear600-ehci", "usb-ehci"; | 109 | compatible = "st,spear600-ehci", "usb-ehci"; |
110 | reg = <0xe2000000 0x1000>; | 110 | reg = <0xe2000000 0x1000>; |
111 | interrupt-parent = <&vic1>; | 111 | interrupt-parent = <&vic1>; |
@@ -113,7 +113,7 @@ | |||
113 | status = "disabled"; | 113 | status = "disabled"; |
114 | }; | 114 | }; |
115 | 115 | ||
116 | ohci@e1900000 { | 116 | ohci_usb0: ohci@e1900000 { |
117 | compatible = "st,spear600-ohci", "usb-ohci"; | 117 | compatible = "st,spear600-ohci", "usb-ohci"; |
118 | reg = <0xe1900000 0x1000>; | 118 | reg = <0xe1900000 0x1000>; |
119 | interrupt-parent = <&vic1>; | 119 | interrupt-parent = <&vic1>; |
@@ -121,7 +121,7 @@ | |||
121 | status = "disabled"; | 121 | status = "disabled"; |
122 | }; | 122 | }; |
123 | 123 | ||
124 | ohci@e2100000 { | 124 | ohci_usb1: ohci@e2100000 { |
125 | compatible = "st,spear600-ohci", "usb-ohci"; | 125 | compatible = "st,spear600-ohci", "usb-ohci"; |
126 | reg = <0xe2100000 0x1000>; | 126 | reg = <0xe2100000 0x1000>; |
127 | interrupt-parent = <&vic1>; | 127 | interrupt-parent = <&vic1>; |
@@ -135,7 +135,7 @@ | |||
135 | compatible = "simple-bus"; | 135 | compatible = "simple-bus"; |
136 | ranges = <0xd0000000 0xd0000000 0x30000000>; | 136 | ranges = <0xd0000000 0xd0000000 0x30000000>; |
137 | 137 | ||
138 | serial@d0000000 { | 138 | uart0: serial@d0000000 { |
139 | compatible = "arm,pl011", "arm,primecell"; | 139 | compatible = "arm,pl011", "arm,primecell"; |
140 | reg = <0xd0000000 0x1000>; | 140 | reg = <0xd0000000 0x1000>; |
141 | interrupt-parent = <&vic0>; | 141 | interrupt-parent = <&vic0>; |
@@ -143,7 +143,7 @@ | |||
143 | status = "disabled"; | 143 | status = "disabled"; |
144 | }; | 144 | }; |
145 | 145 | ||
146 | serial@d0080000 { | 146 | uart1: serial@d0080000 { |
147 | compatible = "arm,pl011", "arm,primecell"; | 147 | compatible = "arm,pl011", "arm,primecell"; |
148 | reg = <0xd0080000 0x1000>; | 148 | reg = <0xd0080000 0x1000>; |
149 | interrupt-parent = <&vic0>; | 149 | interrupt-parent = <&vic0>; |
@@ -181,7 +181,7 @@ | |||
181 | interrupts = <4>; | 181 | interrupts = <4>; |
182 | }; | 182 | }; |
183 | 183 | ||
184 | i2c@d0200000 { | 184 | i2c: i2c@d0200000 { |
185 | #address-cells = <1>; | 185 | #address-cells = <1>; |
186 | #size-cells = <0>; | 186 | #size-cells = <0>; |
187 | compatible = "snps,designware-i2c"; | 187 | compatible = "snps,designware-i2c"; |
@@ -191,7 +191,7 @@ | |||
191 | status = "disabled"; | 191 | status = "disabled"; |
192 | }; | 192 | }; |
193 | 193 | ||
194 | rtc@fc900000 { | 194 | rtc: rtc@fc900000 { |
195 | compatible = "st,spear600-rtc"; | 195 | compatible = "st,spear600-rtc"; |
196 | reg = <0xfc900000 0x1000>; | 196 | reg = <0xfc900000 0x1000>; |
197 | interrupts = <10>; | 197 | interrupts = <10>; |
@@ -204,6 +204,14 @@ | |||
204 | interrupt-parent = <&vic0>; | 204 | interrupt-parent = <&vic0>; |
205 | interrupts = <16>; | 205 | interrupts = <16>; |
206 | }; | 206 | }; |
207 | |||
208 | adc: adc@d820b000 { | ||
209 | compatible = "st,spear600-adc"; | ||
210 | reg = <0xd820b000 0x1000>; | ||
211 | interrupt-parent = <&vic1>; | ||
212 | interrupts = <6>; | ||
213 | status = "disabled"; | ||
214 | }; | ||
207 | }; | 215 | }; |
208 | }; | 216 | }; |
209 | }; | 217 | }; |
diff --git a/arch/arm/boot/dts/stih407-family.dtsi b/arch/arm/boot/dts/stih407-family.dtsi index 044184580326..12c0757594d7 100644 --- a/arch/arm/boot/dts/stih407-family.dtsi +++ b/arch/arm/boot/dts/stih407-family.dtsi | |||
@@ -464,6 +464,8 @@ | |||
464 | clock-names = "ssc"; | 464 | clock-names = "ssc"; |
465 | pinctrl-names = "default"; | 465 | pinctrl-names = "default"; |
466 | pinctrl-0 = <&pinctrl_spi1_default>; | 466 | pinctrl-0 = <&pinctrl_spi1_default>; |
467 | #address-cells = <1>; | ||
468 | #size-cells = <0>; | ||
467 | 469 | ||
468 | status = "disabled"; | 470 | status = "disabled"; |
469 | }; | 471 | }; |
@@ -476,6 +478,8 @@ | |||
476 | clock-names = "ssc"; | 478 | clock-names = "ssc"; |
477 | pinctrl-names = "default"; | 479 | pinctrl-names = "default"; |
478 | pinctrl-0 = <&pinctrl_spi2_default>; | 480 | pinctrl-0 = <&pinctrl_spi2_default>; |
481 | #address-cells = <1>; | ||
482 | #size-cells = <0>; | ||
479 | 483 | ||
480 | status = "disabled"; | 484 | status = "disabled"; |
481 | }; | 485 | }; |
@@ -488,6 +492,8 @@ | |||
488 | clock-names = "ssc"; | 492 | clock-names = "ssc"; |
489 | pinctrl-names = "default"; | 493 | pinctrl-names = "default"; |
490 | pinctrl-0 = <&pinctrl_spi3_default>; | 494 | pinctrl-0 = <&pinctrl_spi3_default>; |
495 | #address-cells = <1>; | ||
496 | #size-cells = <0>; | ||
491 | 497 | ||
492 | status = "disabled"; | 498 | status = "disabled"; |
493 | }; | 499 | }; |
@@ -500,6 +506,8 @@ | |||
500 | clock-names = "ssc"; | 506 | clock-names = "ssc"; |
501 | pinctrl-names = "default"; | 507 | pinctrl-names = "default"; |
502 | pinctrl-0 = <&pinctrl_spi4_default>; | 508 | pinctrl-0 = <&pinctrl_spi4_default>; |
509 | #address-cells = <1>; | ||
510 | #size-cells = <0>; | ||
503 | 511 | ||
504 | status = "disabled"; | 512 | status = "disabled"; |
505 | }; | 513 | }; |
@@ -513,6 +521,8 @@ | |||
513 | clock-names = "ssc"; | 521 | clock-names = "ssc"; |
514 | pinctrl-names = "default"; | 522 | pinctrl-names = "default"; |
515 | pinctrl-0 = <&pinctrl_spi10_default>; | 523 | pinctrl-0 = <&pinctrl_spi10_default>; |
524 | #address-cells = <1>; | ||
525 | #size-cells = <0>; | ||
516 | 526 | ||
517 | status = "disabled"; | 527 | status = "disabled"; |
518 | }; | 528 | }; |
@@ -525,6 +535,8 @@ | |||
525 | clock-names = "ssc"; | 535 | clock-names = "ssc"; |
526 | pinctrl-names = "default"; | 536 | pinctrl-names = "default"; |
527 | pinctrl-0 = <&pinctrl_spi11_default>; | 537 | pinctrl-0 = <&pinctrl_spi11_default>; |
538 | #address-cells = <1>; | ||
539 | #size-cells = <0>; | ||
528 | 540 | ||
529 | status = "disabled"; | 541 | status = "disabled"; |
530 | }; | 542 | }; |
@@ -537,6 +549,8 @@ | |||
537 | clock-names = "ssc"; | 549 | clock-names = "ssc"; |
538 | pinctrl-names = "default"; | 550 | pinctrl-names = "default"; |
539 | pinctrl-0 = <&pinctrl_spi12_default>; | 551 | pinctrl-0 = <&pinctrl_spi12_default>; |
552 | #address-cells = <1>; | ||
553 | #size-cells = <0>; | ||
540 | 554 | ||
541 | status = "disabled"; | 555 | status = "disabled"; |
542 | }; | 556 | }; |
@@ -789,7 +803,7 @@ | |||
789 | status = "okay"; | 803 | status = "okay"; |
790 | }; | 804 | }; |
791 | 805 | ||
792 | st231_gp0: remote-processor { | 806 | st231_gp0: st231-gp0@0 { |
793 | compatible = "st,st231-rproc"; | 807 | compatible = "st,st231-rproc"; |
794 | memory-region = <&gp0_reserved>; | 808 | memory-region = <&gp0_reserved>; |
795 | resets = <&softreset STIH407_ST231_GP0_SOFTRESET>; | 809 | resets = <&softreset STIH407_ST231_GP0_SOFTRESET>; |
@@ -802,7 +816,7 @@ | |||
802 | mboxes = <&mailbox0 0 2>, <&mailbox2 0 1>, <&mailbox0 0 3>, <&mailbox2 0 0>; | 816 | mboxes = <&mailbox0 0 2>, <&mailbox2 0 1>, <&mailbox0 0 3>, <&mailbox2 0 0>; |
803 | }; | 817 | }; |
804 | 818 | ||
805 | st231_delta: remote-processor { | 819 | st231_delta: st231-delta@0 { |
806 | compatible = "st,st231-rproc"; | 820 | compatible = "st,st231-rproc"; |
807 | memory-region = <&delta_reserved>; | 821 | memory-region = <&delta_reserved>; |
808 | resets = <&softreset STIH407_ST231_DMU_SOFTRESET>; | 822 | resets = <&softreset STIH407_ST231_DMU_SOFTRESET>; |
diff --git a/arch/arm/boot/dts/stm32429i-eval.dts b/arch/arm/boot/dts/stm32429i-eval.dts index 3c99466989b1..b6331146aa02 100644 --- a/arch/arm/boot/dts/stm32429i-eval.dts +++ b/arch/arm/boot/dts/stm32429i-eval.dts | |||
@@ -167,6 +167,34 @@ | |||
167 | status = "okay"; | 167 | status = "okay"; |
168 | }; | 168 | }; |
169 | 169 | ||
170 | &timers1 { | ||
171 | status = "okay"; | ||
172 | |||
173 | pwm { | ||
174 | pinctrl-0 = <&pwm1_pins>; | ||
175 | pinctrl-names = "default"; | ||
176 | status = "okay"; | ||
177 | }; | ||
178 | |||
179 | timer@0 { | ||
180 | status = "okay"; | ||
181 | }; | ||
182 | }; | ||
183 | |||
184 | &timers3 { | ||
185 | status = "okay"; | ||
186 | |||
187 | pwm { | ||
188 | pinctrl-0 = <&pwm3_pins>; | ||
189 | pinctrl-names = "default"; | ||
190 | status = "okay"; | ||
191 | }; | ||
192 | |||
193 | timer@2 { | ||
194 | status = "okay"; | ||
195 | }; | ||
196 | }; | ||
197 | |||
170 | &usart1 { | 198 | &usart1 { |
171 | pinctrl-0 = <&usart1_pins_a>; | 199 | pinctrl-0 = <&usart1_pins_a>; |
172 | pinctrl-names = "default"; | 200 | pinctrl-names = "default"; |
diff --git a/arch/arm/boot/dts/stm32746g-eval.dts b/arch/arm/boot/dts/stm32746g-eval.dts index 0dc18a0f0940..69a957963fa8 100644 --- a/arch/arm/boot/dts/stm32746g-eval.dts +++ b/arch/arm/boot/dts/stm32746g-eval.dts | |||
@@ -93,6 +93,10 @@ | |||
93 | status = "okay"; | 93 | status = "okay"; |
94 | }; | 94 | }; |
95 | 95 | ||
96 | &rtc { | ||
97 | status = "okay"; | ||
98 | }; | ||
99 | |||
96 | &usart1 { | 100 | &usart1 { |
97 | pinctrl-0 = <&usart1_pins_a>; | 101 | pinctrl-0 = <&usart1_pins_a>; |
98 | pinctrl-names = "default"; | 102 | pinctrl-names = "default"; |
diff --git a/arch/arm/boot/dts/stm32f429-disco.dts b/arch/arm/boot/dts/stm32f429-disco.dts index 9222b9f37bc0..191fa50e34eb 100644 --- a/arch/arm/boot/dts/stm32f429-disco.dts +++ b/arch/arm/boot/dts/stm32f429-disco.dts | |||
@@ -88,6 +88,14 @@ | |||
88 | gpios = <&gpioa 0 0>; | 88 | gpios = <&gpioa 0 0>; |
89 | }; | 89 | }; |
90 | }; | 90 | }; |
91 | |||
92 | /* This turns on vbus for otg for host mode (dwc2) */ | ||
93 | vcc5v_otg: vcc5v-otg-regulator { | ||
94 | compatible = "regulator-fixed"; | ||
95 | gpio = <&gpioc 4 0>; | ||
96 | regulator-name = "vcc5_host1"; | ||
97 | regulator-always-on; | ||
98 | }; | ||
91 | }; | 99 | }; |
92 | 100 | ||
93 | &clk_hse { | 101 | &clk_hse { |
@@ -105,3 +113,11 @@ | |||
105 | pinctrl-names = "default"; | 113 | pinctrl-names = "default"; |
106 | status = "okay"; | 114 | status = "okay"; |
107 | }; | 115 | }; |
116 | |||
117 | &usbotg_hs { | ||
118 | compatible = "st,stm32f4x9-fsotg"; | ||
119 | dr_mode = "host"; | ||
120 | pinctrl-0 = <&usbotg_fs_pins_b>; | ||
121 | pinctrl-names = "default"; | ||
122 | status = "okay"; | ||
123 | }; | ||
diff --git a/arch/arm/boot/dts/stm32f429.dtsi b/arch/arm/boot/dts/stm32f429.dtsi index ee0da970e8ad..b2a2b5c38caa 100644 --- a/arch/arm/boot/dts/stm32f429.dtsi +++ b/arch/arm/boot/dts/stm32f429.dtsi | |||
@@ -450,6 +450,8 @@ | |||
450 | clocks = <&rcc 0 STM32F4_APB2_CLOCK(ADC1)>; | 450 | clocks = <&rcc 0 STM32F4_APB2_CLOCK(ADC1)>; |
451 | interrupt-parent = <&adc>; | 451 | interrupt-parent = <&adc>; |
452 | interrupts = <0>; | 452 | interrupts = <0>; |
453 | dmas = <&dma2 0 0 0x400 0x0>; | ||
454 | dma-names = "rx"; | ||
453 | status = "disabled"; | 455 | status = "disabled"; |
454 | }; | 456 | }; |
455 | 457 | ||
@@ -460,6 +462,8 @@ | |||
460 | clocks = <&rcc 0 STM32F4_APB2_CLOCK(ADC2)>; | 462 | clocks = <&rcc 0 STM32F4_APB2_CLOCK(ADC2)>; |
461 | interrupt-parent = <&adc>; | 463 | interrupt-parent = <&adc>; |
462 | interrupts = <1>; | 464 | interrupts = <1>; |
465 | dmas = <&dma2 3 1 0x400 0x0>; | ||
466 | dma-names = "rx"; | ||
463 | status = "disabled"; | 467 | status = "disabled"; |
464 | }; | 468 | }; |
465 | 469 | ||
@@ -470,6 +474,8 @@ | |||
470 | clocks = <&rcc 0 STM32F4_APB2_CLOCK(ADC3)>; | 474 | clocks = <&rcc 0 STM32F4_APB2_CLOCK(ADC3)>; |
471 | interrupt-parent = <&adc>; | 475 | interrupt-parent = <&adc>; |
472 | interrupts = <2>; | 476 | interrupts = <2>; |
477 | dmas = <&dma2 1 2 0x400 0x0>; | ||
478 | dma-names = "rx"; | ||
473 | status = "disabled"; | 479 | status = "disabled"; |
474 | }; | 480 | }; |
475 | }; | 481 | }; |
@@ -666,6 +672,28 @@ | |||
666 | }; | 672 | }; |
667 | }; | 673 | }; |
668 | 674 | ||
675 | usbotg_fs_pins_a: usbotg_fs@0 { | ||
676 | pins { | ||
677 | pinmux = <STM32F429_PA10_FUNC_OTG_FS_ID>, | ||
678 | <STM32F429_PA11_FUNC_OTG_FS_DM>, | ||
679 | <STM32F429_PA12_FUNC_OTG_FS_DP>; | ||
680 | bias-disable; | ||
681 | drive-push-pull; | ||
682 | slew-rate = <2>; | ||
683 | }; | ||
684 | }; | ||
685 | |||
686 | usbotg_fs_pins_b: usbotg_fs@1 { | ||
687 | pins { | ||
688 | pinmux = <STM32F429_PB12_FUNC_OTG_HS_ID>, | ||
689 | <STM32F429_PB14_FUNC_OTG_HS_DM>, | ||
690 | <STM32F429_PB15_FUNC_OTG_HS_DP>; | ||
691 | bias-disable; | ||
692 | drive-push-pull; | ||
693 | slew-rate = <2>; | ||
694 | }; | ||
695 | }; | ||
696 | |||
669 | usbotg_hs_pins_a: usbotg_hs@0 { | 697 | usbotg_hs_pins_a: usbotg_hs@0 { |
670 | pins { | 698 | pins { |
671 | pinmux = <STM32F429_PH4_FUNC_OTG_HS_ULPI_NXT>, | 699 | pinmux = <STM32F429_PH4_FUNC_OTG_HS_ULPI_NXT>, |
@@ -805,6 +833,15 @@ | |||
805 | status = "disabled"; | 833 | status = "disabled"; |
806 | }; | 834 | }; |
807 | 835 | ||
836 | usbotg_fs: usb@50000000 { | ||
837 | compatible = "st,stm32f4x9-fsotg"; | ||
838 | reg = <0x50000000 0x40000>; | ||
839 | interrupts = <67>; | ||
840 | clocks = <&rcc 0 39>; | ||
841 | clock-names = "otg"; | ||
842 | status = "disabled"; | ||
843 | }; | ||
844 | |||
808 | rng: rng@50060800 { | 845 | rng: rng@50060800 { |
809 | compatible = "st,stm32-rng"; | 846 | compatible = "st,stm32-rng"; |
810 | reg = <0x50060800 0x400>; | 847 | reg = <0x50060800 0x400>; |
diff --git a/arch/arm/boot/dts/stm32f469-disco.dts b/arch/arm/boot/dts/stm32f469-disco.dts index 0dd56ef574fa..75470c34b92c 100644 --- a/arch/arm/boot/dts/stm32f469-disco.dts +++ b/arch/arm/boot/dts/stm32f469-disco.dts | |||
@@ -68,6 +68,15 @@ | |||
68 | soc { | 68 | soc { |
69 | dma-ranges = <0xc0000000 0x0 0x10000000>; | 69 | dma-ranges = <0xc0000000 0x0 0x10000000>; |
70 | }; | 70 | }; |
71 | |||
72 | /* This turns on vbus for otg for host mode (dwc2) */ | ||
73 | vcc5v_otg: vcc5v-otg-regulator { | ||
74 | compatible = "regulator-fixed"; | ||
75 | enable-active-high; | ||
76 | gpio = <&gpiob 2 0>; | ||
77 | regulator-name = "vcc5_host1"; | ||
78 | regulator-always-on; | ||
79 | }; | ||
71 | }; | 80 | }; |
72 | 81 | ||
73 | &rcc { | 82 | &rcc { |
@@ -115,3 +124,10 @@ | |||
115 | pinctrl-names = "default"; | 124 | pinctrl-names = "default"; |
116 | status = "okay"; | 125 | status = "okay"; |
117 | }; | 126 | }; |
127 | |||
128 | &usbotg_fs { | ||
129 | dr_mode = "host"; | ||
130 | pinctrl-0 = <&usbotg_fs_pins_a>; | ||
131 | pinctrl-names = "default"; | ||
132 | status = "okay"; | ||
133 | }; | ||
diff --git a/arch/arm/boot/dts/stm32f746.dtsi b/arch/arm/boot/dts/stm32f746.dtsi index 755fb923c07b..c2765ce12e2e 100644 --- a/arch/arm/boot/dts/stm32f746.dtsi +++ b/arch/arm/boot/dts/stm32f746.dtsi | |||
@@ -43,6 +43,8 @@ | |||
43 | #include "skeleton.dtsi" | 43 | #include "skeleton.dtsi" |
44 | #include "armv7-m.dtsi" | 44 | #include "armv7-m.dtsi" |
45 | #include <dt-bindings/pinctrl/stm32f746-pinfunc.h> | 45 | #include <dt-bindings/pinctrl/stm32f746-pinfunc.h> |
46 | #include <dt-bindings/clock/stm32fx-clock.h> | ||
47 | #include <dt-bindings/mfd/stm32f7-rcc.h> | ||
46 | 48 | ||
47 | / { | 49 | / { |
48 | clocks { | 50 | clocks { |
@@ -51,6 +53,24 @@ | |||
51 | compatible = "fixed-clock"; | 53 | compatible = "fixed-clock"; |
52 | clock-frequency = <0>; | 54 | clock-frequency = <0>; |
53 | }; | 55 | }; |
56 | |||
57 | clk-lse { | ||
58 | #clock-cells = <0>; | ||
59 | compatible = "fixed-clock"; | ||
60 | clock-frequency = <32768>; | ||
61 | }; | ||
62 | |||
63 | clk-lsi { | ||
64 | #clock-cells = <0>; | ||
65 | compatible = "fixed-clock"; | ||
66 | clock-frequency = <32000>; | ||
67 | }; | ||
68 | |||
69 | clk_i2s_ckin: clk-i2s-ckin { | ||
70 | #clock-cells = <0>; | ||
71 | compatible = "fixed-clock"; | ||
72 | clock-frequency = <48000000>; | ||
73 | }; | ||
54 | }; | 74 | }; |
55 | 75 | ||
56 | soc { | 76 | soc { |
@@ -58,7 +78,7 @@ | |||
58 | compatible = "st,stm32-timer"; | 78 | compatible = "st,stm32-timer"; |
59 | reg = <0x40000000 0x400>; | 79 | reg = <0x40000000 0x400>; |
60 | interrupts = <28>; | 80 | interrupts = <28>; |
61 | clocks = <&rcc 0 128>; | 81 | clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM2)>; |
62 | status = "disabled"; | 82 | status = "disabled"; |
63 | }; | 83 | }; |
64 | 84 | ||
@@ -66,7 +86,7 @@ | |||
66 | compatible = "st,stm32-timer"; | 86 | compatible = "st,stm32-timer"; |
67 | reg = <0x40000400 0x400>; | 87 | reg = <0x40000400 0x400>; |
68 | interrupts = <29>; | 88 | interrupts = <29>; |
69 | clocks = <&rcc 0 129>; | 89 | clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM3)>; |
70 | status = "disabled"; | 90 | status = "disabled"; |
71 | }; | 91 | }; |
72 | 92 | ||
@@ -74,7 +94,7 @@ | |||
74 | compatible = "st,stm32-timer"; | 94 | compatible = "st,stm32-timer"; |
75 | reg = <0x40000800 0x400>; | 95 | reg = <0x40000800 0x400>; |
76 | interrupts = <30>; | 96 | interrupts = <30>; |
77 | clocks = <&rcc 0 130>; | 97 | clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM4)>; |
78 | status = "disabled"; | 98 | status = "disabled"; |
79 | }; | 99 | }; |
80 | 100 | ||
@@ -82,14 +102,14 @@ | |||
82 | compatible = "st,stm32-timer"; | 102 | compatible = "st,stm32-timer"; |
83 | reg = <0x40000c00 0x400>; | 103 | reg = <0x40000c00 0x400>; |
84 | interrupts = <50>; | 104 | interrupts = <50>; |
85 | clocks = <&rcc 0 131>; | 105 | clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM5)>; |
86 | }; | 106 | }; |
87 | 107 | ||
88 | timer6: timer@40001000 { | 108 | timer6: timer@40001000 { |
89 | compatible = "st,stm32-timer"; | 109 | compatible = "st,stm32-timer"; |
90 | reg = <0x40001000 0x400>; | 110 | reg = <0x40001000 0x400>; |
91 | interrupts = <54>; | 111 | interrupts = <54>; |
92 | clocks = <&rcc 0 132>; | 112 | clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM6)>; |
93 | status = "disabled"; | 113 | status = "disabled"; |
94 | }; | 114 | }; |
95 | 115 | ||
@@ -97,7 +117,21 @@ | |||
97 | compatible = "st,stm32-timer"; | 117 | compatible = "st,stm32-timer"; |
98 | reg = <0x40001400 0x400>; | 118 | reg = <0x40001400 0x400>; |
99 | interrupts = <55>; | 119 | interrupts = <55>; |
100 | clocks = <&rcc 0 133>; | 120 | clocks = <&rcc 0 STM32F7_APB1_CLOCK(TIM7)>; |
121 | status = "disabled"; | ||
122 | }; | ||
123 | |||
124 | rtc: rtc@40002800 { | ||
125 | compatible = "st,stm32-rtc"; | ||
126 | reg = <0x40002800 0x400>; | ||
127 | clocks = <&rcc 1 CLK_RTC>; | ||
128 | clock-names = "ck_rtc"; | ||
129 | assigned-clocks = <&rcc 1 CLK_RTC>; | ||
130 | assigned-clock-parents = <&rcc 1 CLK_LSE>; | ||
131 | interrupt-parent = <&exti>; | ||
132 | interrupts = <17 1>; | ||
133 | interrupt-names = "alarm"; | ||
134 | st,syscfg = <&pwrcfg>; | ||
101 | status = "disabled"; | 135 | status = "disabled"; |
102 | }; | 136 | }; |
103 | 137 | ||
@@ -105,7 +139,7 @@ | |||
105 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; | 139 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; |
106 | reg = <0x40004400 0x400>; | 140 | reg = <0x40004400 0x400>; |
107 | interrupts = <38>; | 141 | interrupts = <38>; |
108 | clocks = <&rcc 0 145>; | 142 | clocks = <&rcc 1 CLK_USART2>; |
109 | status = "disabled"; | 143 | status = "disabled"; |
110 | }; | 144 | }; |
111 | 145 | ||
@@ -113,7 +147,7 @@ | |||
113 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; | 147 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; |
114 | reg = <0x40004800 0x400>; | 148 | reg = <0x40004800 0x400>; |
115 | interrupts = <39>; | 149 | interrupts = <39>; |
116 | clocks = <&rcc 0 146>; | 150 | clocks = <&rcc 1 CLK_USART3>; |
117 | status = "disabled"; | 151 | status = "disabled"; |
118 | }; | 152 | }; |
119 | 153 | ||
@@ -121,7 +155,7 @@ | |||
121 | compatible = "st,stm32f7-uart"; | 155 | compatible = "st,stm32f7-uart"; |
122 | reg = <0x40004c00 0x400>; | 156 | reg = <0x40004c00 0x400>; |
123 | interrupts = <52>; | 157 | interrupts = <52>; |
124 | clocks = <&rcc 0 147>; | 158 | clocks = <&rcc 1 CLK_UART4>; |
125 | status = "disabled"; | 159 | status = "disabled"; |
126 | }; | 160 | }; |
127 | 161 | ||
@@ -129,7 +163,7 @@ | |||
129 | compatible = "st,stm32f7-uart"; | 163 | compatible = "st,stm32f7-uart"; |
130 | reg = <0x40005000 0x400>; | 164 | reg = <0x40005000 0x400>; |
131 | interrupts = <53>; | 165 | interrupts = <53>; |
132 | clocks = <&rcc 0 148>; | 166 | clocks = <&rcc 1 CLK_UART5>; |
133 | status = "disabled"; | 167 | status = "disabled"; |
134 | }; | 168 | }; |
135 | 169 | ||
@@ -137,7 +171,7 @@ | |||
137 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; | 171 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; |
138 | reg = <0x40007800 0x400>; | 172 | reg = <0x40007800 0x400>; |
139 | interrupts = <82>; | 173 | interrupts = <82>; |
140 | clocks = <&rcc 0 158>; | 174 | clocks = <&rcc 1 CLK_UART7>; |
141 | status = "disabled"; | 175 | status = "disabled"; |
142 | }; | 176 | }; |
143 | 177 | ||
@@ -145,7 +179,7 @@ | |||
145 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; | 179 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; |
146 | reg = <0x40007c00 0x400>; | 180 | reg = <0x40007c00 0x400>; |
147 | interrupts = <83>; | 181 | interrupts = <83>; |
148 | clocks = <&rcc 0 159>; | 182 | clocks = <&rcc 1 CLK_UART8>; |
149 | status = "disabled"; | 183 | status = "disabled"; |
150 | }; | 184 | }; |
151 | 185 | ||
@@ -153,7 +187,7 @@ | |||
153 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; | 187 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; |
154 | reg = <0x40011000 0x400>; | 188 | reg = <0x40011000 0x400>; |
155 | interrupts = <37>; | 189 | interrupts = <37>; |
156 | clocks = <&rcc 0 164>; | 190 | clocks = <&rcc 1 CLK_USART1>; |
157 | status = "disabled"; | 191 | status = "disabled"; |
158 | }; | 192 | }; |
159 | 193 | ||
@@ -161,7 +195,7 @@ | |||
161 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; | 195 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; |
162 | reg = <0x40011400 0x400>; | 196 | reg = <0x40011400 0x400>; |
163 | interrupts = <71>; | 197 | interrupts = <71>; |
164 | clocks = <&rcc 0 165>; | 198 | clocks = <&rcc 1 CLK_USART6>; |
165 | status = "disabled"; | 199 | status = "disabled"; |
166 | }; | 200 | }; |
167 | 201 | ||
@@ -178,6 +212,11 @@ | |||
178 | interrupts = <1>, <2>, <3>, <6>, <7>, <8>, <9>, <10>, <23>, <40>, <41>, <42>, <62>, <76>; | 212 | interrupts = <1>, <2>, <3>, <6>, <7>, <8>, <9>, <10>, <23>, <40>, <41>, <42>, <62>, <76>; |
179 | }; | 213 | }; |
180 | 214 | ||
215 | pwrcfg: power-config@40007000 { | ||
216 | compatible = "syscon"; | ||
217 | reg = <0x40007000 0x400>; | ||
218 | }; | ||
219 | |||
181 | pin-controller { | 220 | pin-controller { |
182 | #address-cells = <1>; | 221 | #address-cells = <1>; |
183 | #size-cells = <1>; | 222 | #size-cells = <1>; |
@@ -191,7 +230,7 @@ | |||
191 | gpio-controller; | 230 | gpio-controller; |
192 | #gpio-cells = <2>; | 231 | #gpio-cells = <2>; |
193 | reg = <0x0 0x400>; | 232 | reg = <0x0 0x400>; |
194 | clocks = <&rcc 0 256>; | 233 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOA)>; |
195 | st,bank-name = "GPIOA"; | 234 | st,bank-name = "GPIOA"; |
196 | }; | 235 | }; |
197 | 236 | ||
@@ -199,7 +238,7 @@ | |||
199 | gpio-controller; | 238 | gpio-controller; |
200 | #gpio-cells = <2>; | 239 | #gpio-cells = <2>; |
201 | reg = <0x400 0x400>; | 240 | reg = <0x400 0x400>; |
202 | clocks = <&rcc 0 257>; | 241 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOB)>; |
203 | st,bank-name = "GPIOB"; | 242 | st,bank-name = "GPIOB"; |
204 | }; | 243 | }; |
205 | 244 | ||
@@ -207,7 +246,7 @@ | |||
207 | gpio-controller; | 246 | gpio-controller; |
208 | #gpio-cells = <2>; | 247 | #gpio-cells = <2>; |
209 | reg = <0x800 0x400>; | 248 | reg = <0x800 0x400>; |
210 | clocks = <&rcc 0 258>; | 249 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOC)>; |
211 | st,bank-name = "GPIOC"; | 250 | st,bank-name = "GPIOC"; |
212 | }; | 251 | }; |
213 | 252 | ||
@@ -215,7 +254,7 @@ | |||
215 | gpio-controller; | 254 | gpio-controller; |
216 | #gpio-cells = <2>; | 255 | #gpio-cells = <2>; |
217 | reg = <0xc00 0x400>; | 256 | reg = <0xc00 0x400>; |
218 | clocks = <&rcc 0 259>; | 257 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOD)>; |
219 | st,bank-name = "GPIOD"; | 258 | st,bank-name = "GPIOD"; |
220 | }; | 259 | }; |
221 | 260 | ||
@@ -223,7 +262,7 @@ | |||
223 | gpio-controller; | 262 | gpio-controller; |
224 | #gpio-cells = <2>; | 263 | #gpio-cells = <2>; |
225 | reg = <0x1000 0x400>; | 264 | reg = <0x1000 0x400>; |
226 | clocks = <&rcc 0 260>; | 265 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOE)>; |
227 | st,bank-name = "GPIOE"; | 266 | st,bank-name = "GPIOE"; |
228 | }; | 267 | }; |
229 | 268 | ||
@@ -231,7 +270,7 @@ | |||
231 | gpio-controller; | 270 | gpio-controller; |
232 | #gpio-cells = <2>; | 271 | #gpio-cells = <2>; |
233 | reg = <0x1400 0x400>; | 272 | reg = <0x1400 0x400>; |
234 | clocks = <&rcc 0 261>; | 273 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOF)>; |
235 | st,bank-name = "GPIOF"; | 274 | st,bank-name = "GPIOF"; |
236 | }; | 275 | }; |
237 | 276 | ||
@@ -239,7 +278,7 @@ | |||
239 | gpio-controller; | 278 | gpio-controller; |
240 | #gpio-cells = <2>; | 279 | #gpio-cells = <2>; |
241 | reg = <0x1800 0x400>; | 280 | reg = <0x1800 0x400>; |
242 | clocks = <&rcc 0 262>; | 281 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOG)>; |
243 | st,bank-name = "GPIOG"; | 282 | st,bank-name = "GPIOG"; |
244 | }; | 283 | }; |
245 | 284 | ||
@@ -247,7 +286,7 @@ | |||
247 | gpio-controller; | 286 | gpio-controller; |
248 | #gpio-cells = <2>; | 287 | #gpio-cells = <2>; |
249 | reg = <0x1c00 0x400>; | 288 | reg = <0x1c00 0x400>; |
250 | clocks = <&rcc 0 263>; | 289 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOH)>; |
251 | st,bank-name = "GPIOH"; | 290 | st,bank-name = "GPIOH"; |
252 | }; | 291 | }; |
253 | 292 | ||
@@ -255,7 +294,7 @@ | |||
255 | gpio-controller; | 294 | gpio-controller; |
256 | #gpio-cells = <2>; | 295 | #gpio-cells = <2>; |
257 | reg = <0x2000 0x400>; | 296 | reg = <0x2000 0x400>; |
258 | clocks = <&rcc 0 264>; | 297 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOI)>; |
259 | st,bank-name = "GPIOI"; | 298 | st,bank-name = "GPIOI"; |
260 | }; | 299 | }; |
261 | 300 | ||
@@ -263,7 +302,7 @@ | |||
263 | gpio-controller; | 302 | gpio-controller; |
264 | #gpio-cells = <2>; | 303 | #gpio-cells = <2>; |
265 | reg = <0x2400 0x400>; | 304 | reg = <0x2400 0x400>; |
266 | clocks = <&rcc 0 265>; | 305 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOJ)>; |
267 | st,bank-name = "GPIOJ"; | 306 | st,bank-name = "GPIOJ"; |
268 | }; | 307 | }; |
269 | 308 | ||
@@ -271,7 +310,7 @@ | |||
271 | gpio-controller; | 310 | gpio-controller; |
272 | #gpio-cells = <2>; | 311 | #gpio-cells = <2>; |
273 | reg = <0x2800 0x400>; | 312 | reg = <0x2800 0x400>; |
274 | clocks = <&rcc 0 266>; | 313 | clocks = <&rcc 0 STM32F7_AHB1_CLOCK(GPIOK)>; |
275 | st,bank-name = "GPIOK"; | 314 | st,bank-name = "GPIOK"; |
276 | }; | 315 | }; |
277 | 316 | ||
@@ -298,9 +337,12 @@ | |||
298 | 337 | ||
299 | rcc: rcc@40023800 { | 338 | rcc: rcc@40023800 { |
300 | #clock-cells = <2>; | 339 | #clock-cells = <2>; |
301 | compatible = "st,stm32f42xx-rcc", "st,stm32-rcc"; | 340 | compatible = "st,stm32f746-rcc", "st,stm32-rcc"; |
302 | reg = <0x40023800 0x400>; | 341 | reg = <0x40023800 0x400>; |
303 | clocks = <&clk_hse>; | 342 | clocks = <&clk_hse>, <&clk_i2s_ckin>; |
343 | st,syscfg = <&pwrcfg>; | ||
344 | assigned-clocks = <&rcc 1 CLK_HSE_RTC>; | ||
345 | assigned-clock-rates = <1000000>; | ||
304 | }; | 346 | }; |
305 | }; | 347 | }; |
306 | }; | 348 | }; |
diff --git a/arch/arm/boot/dts/stm32h743-pinctrl.dtsi b/arch/arm/boot/dts/stm32h743-pinctrl.dtsi new file mode 100644 index 000000000000..fcc1e0640233 --- /dev/null +++ b/arch/arm/boot/dts/stm32h743-pinctrl.dtsi | |||
@@ -0,0 +1,156 @@ | |||
1 | /* | ||
2 | * Copyright 2017 - Alexandre Torgue <alexandre.torgue@st.com> | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | #include <dt-bindings/pinctrl/stm32h7-pinfunc.h> | ||
44 | |||
45 | / { | ||
46 | soc { | ||
47 | pin-controller { | ||
48 | #address-cells = <1>; | ||
49 | #size-cells = <1>; | ||
50 | compatible = "st,stm32h743-pinctrl"; | ||
51 | ranges = <0 0x58020000 0x3000>; | ||
52 | pins-are-numbered; | ||
53 | |||
54 | gpioa: gpio@58020000 { | ||
55 | gpio-controller; | ||
56 | #gpio-cells = <2>; | ||
57 | reg = <0x0 0x400>; | ||
58 | clocks = <&timer_clk>; | ||
59 | st,bank-name = "GPIOA"; | ||
60 | }; | ||
61 | |||
62 | gpiob: gpio@58020400 { | ||
63 | gpio-controller; | ||
64 | #gpio-cells = <2>; | ||
65 | reg = <0x400 0x400>; | ||
66 | clocks = <&timer_clk>; | ||
67 | st,bank-name = "GPIOB"; | ||
68 | }; | ||
69 | |||
70 | gpioc: gpio@58020800 { | ||
71 | gpio-controller; | ||
72 | #gpio-cells = <2>; | ||
73 | reg = <0x800 0x400>; | ||
74 | clocks = <&timer_clk>; | ||
75 | st,bank-name = "GPIOC"; | ||
76 | }; | ||
77 | |||
78 | gpiod: gpio@58020c00 { | ||
79 | gpio-controller; | ||
80 | #gpio-cells = <2>; | ||
81 | reg = <0xc00 0x400>; | ||
82 | clocks = <&timer_clk>; | ||
83 | st,bank-name = "GPIOD"; | ||
84 | }; | ||
85 | |||
86 | gpioe: gpio@58021000 { | ||
87 | gpio-controller; | ||
88 | #gpio-cells = <2>; | ||
89 | reg = <0x1000 0x400>; | ||
90 | clocks = <&timer_clk>; | ||
91 | st,bank-name = "GPIOE"; | ||
92 | }; | ||
93 | |||
94 | gpiof: gpio@58021400 { | ||
95 | gpio-controller; | ||
96 | #gpio-cells = <2>; | ||
97 | reg = <0x1400 0x400>; | ||
98 | clocks = <&timer_clk>; | ||
99 | st,bank-name = "GPIOF"; | ||
100 | }; | ||
101 | |||
102 | gpiog: gpio@58021800 { | ||
103 | gpio-controller; | ||
104 | #gpio-cells = <2>; | ||
105 | reg = <0x1800 0x400>; | ||
106 | clocks = <&timer_clk>; | ||
107 | st,bank-name = "GPIOG"; | ||
108 | }; | ||
109 | |||
110 | gpioh: gpio@58021c00 { | ||
111 | gpio-controller; | ||
112 | #gpio-cells = <2>; | ||
113 | reg = <0x1c00 0x400>; | ||
114 | clocks = <&timer_clk>; | ||
115 | st,bank-name = "GPIOH"; | ||
116 | }; | ||
117 | |||
118 | gpioi: gpio@58022000 { | ||
119 | gpio-controller; | ||
120 | #gpio-cells = <2>; | ||
121 | reg = <0x2000 0x400>; | ||
122 | clocks = <&timer_clk>; | ||
123 | st,bank-name = "GPIOI"; | ||
124 | }; | ||
125 | |||
126 | gpioj: gpio@58022400 { | ||
127 | gpio-controller; | ||
128 | #gpio-cells = <2>; | ||
129 | reg = <0x2400 0x400>; | ||
130 | clocks = <&timer_clk>; | ||
131 | st,bank-name = "GPIOJ"; | ||
132 | }; | ||
133 | |||
134 | gpiok: gpio@58022800 { | ||
135 | gpio-controller; | ||
136 | #gpio-cells = <2>; | ||
137 | reg = <0x2800 0x400>; | ||
138 | clocks = <&timer_clk>; | ||
139 | st,bank-name = "GPIOK"; | ||
140 | }; | ||
141 | |||
142 | usart1_pins: usart1@0 { | ||
143 | pins1 { | ||
144 | pinmux = <STM32H7_PB14_FUNC_USART1_TX>; | ||
145 | bias-disable; | ||
146 | drive-push-pull; | ||
147 | slew-rate = <0>; | ||
148 | }; | ||
149 | pins2 { | ||
150 | pinmux = <STM32H7_PB15_FUNC_USART1_RX>; | ||
151 | bias-disable; | ||
152 | }; | ||
153 | }; | ||
154 | }; | ||
155 | }; | ||
156 | }; | ||
diff --git a/arch/arm/boot/dts/stm32h743.dtsi b/arch/arm/boot/dts/stm32h743.dtsi new file mode 100644 index 000000000000..46856298ee16 --- /dev/null +++ b/arch/arm/boot/dts/stm32h743.dtsi | |||
@@ -0,0 +1,83 @@ | |||
1 | /* | ||
2 | * Copyright 2017 - Alexandre Torgue <alexandre.torgue@st.com> | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | #include "skeleton.dtsi" | ||
44 | #include "armv7-m.dtsi" | ||
45 | |||
46 | / { | ||
47 | clocks { | ||
48 | clk_hse: clk-hse { | ||
49 | #clock-cells = <0>; | ||
50 | compatible = "fixed-clock"; | ||
51 | clock-frequency = <0>; | ||
52 | }; | ||
53 | |||
54 | timer_clk: timer-clk { | ||
55 | #clock-cells = <0>; | ||
56 | compatible = "fixed-clock"; | ||
57 | clock-frequency = <125000000>; | ||
58 | }; | ||
59 | }; | ||
60 | |||
61 | soc { | ||
62 | usart1: serial@40011000 { | ||
63 | compatible = "st,stm32f7-usart", "st,stm32f7-uart"; | ||
64 | reg = <0x40011000 0x400>; | ||
65 | interrupts = <37>; | ||
66 | status = "disabled"; | ||
67 | clocks = <&timer_clk>; | ||
68 | |||
69 | }; | ||
70 | |||
71 | timer5: timer@40000c00 { | ||
72 | compatible = "st,stm32-timer"; | ||
73 | reg = <0x40000c00 0x400>; | ||
74 | interrupts = <50>; | ||
75 | clocks = <&timer_clk>; | ||
76 | }; | ||
77 | }; | ||
78 | }; | ||
79 | |||
80 | &systick { | ||
81 | clock-frequency = <250000000>; | ||
82 | status = "okay"; | ||
83 | }; | ||
diff --git a/arch/arm/boot/dts/stm32h743i-eval.dts b/arch/arm/boot/dts/stm32h743i-eval.dts new file mode 100644 index 000000000000..c6effbb36e4a --- /dev/null +++ b/arch/arm/boot/dts/stm32h743i-eval.dts | |||
@@ -0,0 +1,74 @@ | |||
1 | /* | ||
2 | * Copyright 2017 - Alexandre Torgue <alexandre.torgue@st.com> | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | /dts-v1/; | ||
44 | #include "stm32h743.dtsi" | ||
45 | #include "stm32h743-pinctrl.dtsi" | ||
46 | |||
47 | / { | ||
48 | model = "STMicroelectronics STM32H743i-EVAL board"; | ||
49 | compatible = "st,stm32h743i-eval", "st,stm32h743"; | ||
50 | |||
51 | chosen { | ||
52 | bootargs = "root=/dev/ram"; | ||
53 | stdout-path = "serial0:115200n8"; | ||
54 | }; | ||
55 | |||
56 | memory { | ||
57 | reg = <0xd0000000 0x2000000>; | ||
58 | }; | ||
59 | |||
60 | aliases { | ||
61 | serial0 = &usart1; | ||
62 | }; | ||
63 | }; | ||
64 | |||
65 | &clk_hse { | ||
66 | clock-frequency = <125000000>; | ||
67 | }; | ||
68 | |||
69 | &usart1 { | ||
70 | pinctrl-0 = <&usart1_pins>; | ||
71 | pinctrl-names = "default"; | ||
72 | status = "okay"; | ||
73 | }; | ||
74 | |||
diff --git a/arch/arm/boot/dts/sun4i-a10-a1000.dts b/arch/arm/boot/dts/sun4i-a10-a1000.dts index f3fc27412a67..f2a01fe2bebc 100644 --- a/arch/arm/boot/dts/sun4i-a10-a1000.dts +++ b/arch/arm/boot/dts/sun4i-a10-a1000.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sunxi-common-regulators.dtsi" | 47 | #include "sunxi-common-regulators.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "Mele A1000"; | 52 | model = "Mele A1000"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts index 04e040e6233d..d844938e2aa7 100644 --- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts +++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include "sunxi-common-regulators.dtsi" | 46 | #include "sunxi-common-regulators.dtsi" |
47 | 47 | ||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Cubietech Cubieboard"; | 51 | model = "Cubietech Cubieboard"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-dserve-dsrv9703c.dts b/arch/arm/boot/dts/sun4i-a10-dserve-dsrv9703c.dts index 8317fbfeec4a..aad3bec1cb39 100644 --- a/arch/arm/boot/dts/sun4i-a10-dserve-dsrv9703c.dts +++ b/arch/arm/boot/dts/sun4i-a10-dserve-dsrv9703c.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/input/input.h> | 47 | #include <dt-bindings/input/input.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | #include <dt-bindings/pwm/pwm.h> | 49 | #include <dt-bindings/pwm/pwm.h> |
51 | 50 | ||
52 | / { | 51 | / { |
diff --git a/arch/arm/boot/dts/sun4i-a10-hackberry.dts b/arch/arm/boot/dts/sun4i-a10-hackberry.dts index a48b46474417..a1a7282199d5 100644 --- a/arch/arm/boot/dts/sun4i-a10-hackberry.dts +++ b/arch/arm/boot/dts/sun4i-a10-hackberry.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sunxi-common-regulators.dtsi" | 47 | #include "sunxi-common-regulators.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "Miniand Hackberry"; | 52 | model = "Miniand Hackberry"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-inet1.dts b/arch/arm/boot/dts/sun4i-a10-inet1.dts index f3092703a1a6..b8923b92cb36 100644 --- a/arch/arm/boot/dts/sun4i-a10-inet1.dts +++ b/arch/arm/boot/dts/sun4i-a10-inet1.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/input/input.h> | 47 | #include <dt-bindings/input/input.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | #include <dt-bindings/pwm/pwm.h> | 49 | #include <dt-bindings/pwm/pwm.h> |
51 | 50 | ||
52 | / { | 51 | / { |
diff --git a/arch/arm/boot/dts/sun4i-a10-inet9f-rev03.dts b/arch/arm/boot/dts/sun4i-a10-inet9f-rev03.dts index 4ef2a60a8cd4..4a27eb9102cd 100644 --- a/arch/arm/boot/dts/sun4i-a10-inet9f-rev03.dts +++ b/arch/arm/boot/dts/sun4i-a10-inet9f-rev03.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/input/input.h> | 47 | #include <dt-bindings/input/input.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "iNet-9F Rev 03"; | 51 | model = "iNet-9F Rev 03"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-jesurun-q5.dts b/arch/arm/boot/dts/sun4i-a10-jesurun-q5.dts index fc4d4d49e2e2..308dc1513041 100644 --- a/arch/arm/boot/dts/sun4i-a10-jesurun-q5.dts +++ b/arch/arm/boot/dts/sun4i-a10-jesurun-q5.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sunxi-common-regulators.dtsi" | 47 | #include "sunxi-common-regulators.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "Jesurun Q5"; | 52 | model = "Jesurun Q5"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-marsboard.dts b/arch/arm/boot/dts/sun4i-a10-marsboard.dts index a2885039d5f1..98a5f7258dca 100644 --- a/arch/arm/boot/dts/sun4i-a10-marsboard.dts +++ b/arch/arm/boot/dts/sun4i-a10-marsboard.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include "sunxi-common-regulators.dtsi" | 46 | #include "sunxi-common-regulators.dtsi" |
47 | 47 | ||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "HAOYU Electronics Marsboard A10"; | 51 | model = "HAOYU Electronics Marsboard A10"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts index af42ebb3a97b..484c57493bd2 100644 --- a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts +++ b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sunxi-common-regulators.dtsi" | 47 | #include "sunxi-common-regulators.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "PineRiver Mini X-Plus"; | 52 | model = "PineRiver Mini X-Plus"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-mk802.dts b/arch/arm/boot/dts/sun4i-a10-mk802.dts index 9c1afd4277d7..2b75745cd246 100644 --- a/arch/arm/boot/dts/sun4i-a10-mk802.dts +++ b/arch/arm/boot/dts/sun4i-a10-mk802.dts | |||
@@ -44,7 +44,6 @@ | |||
44 | #include "sun4i-a10.dtsi" | 44 | #include "sun4i-a10.dtsi" |
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
48 | 47 | ||
49 | / { | 48 | / { |
50 | model = "MK802"; | 49 | model = "MK802"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts index 214a5accfe93..3a2522a9419d 100644 --- a/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts +++ b/arch/arm/boot/dts/sun4i-a10-olinuxino-lime.dts | |||
@@ -45,7 +45,6 @@ | |||
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
49 | 48 | ||
50 | / { | 49 | / { |
51 | model = "Olimex A10-OLinuXino-LIME"; | 50 | model = "Olimex A10-OLinuXino-LIME"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-pcduino.dts b/arch/arm/boot/dts/sun4i-a10-pcduino.dts index b0365d63ba70..83596fd2ccfc 100644 --- a/arch/arm/boot/dts/sun4i-a10-pcduino.dts +++ b/arch/arm/boot/dts/sun4i-a10-pcduino.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | 47 | ||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/input/input.h> | 49 | #include <dt-bindings/input/input.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "LinkSprite pcDuino"; | 52 | model = "LinkSprite pcDuino"; |
diff --git a/arch/arm/boot/dts/sun4i-a10-pov-protab2-ips9.dts b/arch/arm/boot/dts/sun4i-a10-pov-protab2-ips9.dts index bfa6bbdaab27..a68c7cc53b94 100644 --- a/arch/arm/boot/dts/sun4i-a10-pov-protab2-ips9.dts +++ b/arch/arm/boot/dts/sun4i-a10-pov-protab2-ips9.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/input/input.h> | 47 | #include <dt-bindings/input/input.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | #include <dt-bindings/pwm/pwm.h> | 49 | #include <dt-bindings/pwm/pwm.h> |
51 | 50 | ||
52 | / { | 51 | / { |
diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi index ba20b48c0702..b63668ece151 100644 --- a/arch/arm/boot/dts/sun4i-a10.dtsi +++ b/arch/arm/boot/dts/sun4i-a10.dtsi | |||
@@ -47,7 +47,6 @@ | |||
47 | 47 | ||
48 | #include <dt-bindings/clock/sun4i-a10-pll2.h> | 48 | #include <dt-bindings/clock/sun4i-a10-pll2.h> |
49 | #include <dt-bindings/dma/sun4i-a10.h> | 49 | #include <dt-bindings/dma/sun4i-a10.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | interrupt-parent = <&intc>; | 52 | interrupt-parent = <&intc>; |
@@ -974,6 +973,11 @@ | |||
974 | #interrupt-cells = <3>; | 973 | #interrupt-cells = <3>; |
975 | #gpio-cells = <3>; | 974 | #gpio-cells = <3>; |
976 | 975 | ||
976 | can0_pins_a: can0@0 { | ||
977 | pins = "PH20", "PH21"; | ||
978 | function = "can"; | ||
979 | }; | ||
980 | |||
977 | emac_pins_a: emac0@0 { | 981 | emac_pins_a: emac0@0 { |
978 | pins = "PA0", "PA1", "PA2", | 982 | pins = "PA0", "PA1", "PA2", |
979 | "PA3", "PA4", "PA5", "PA6", | 983 | "PA3", "PA4", "PA5", "PA6", |
@@ -1283,6 +1287,22 @@ | |||
1283 | status = "disabled"; | 1287 | status = "disabled"; |
1284 | }; | 1288 | }; |
1285 | 1289 | ||
1290 | ps20: ps2@01c2a000 { | ||
1291 | compatible = "allwinner,sun4i-a10-ps2"; | ||
1292 | reg = <0x01c2a000 0x400>; | ||
1293 | interrupts = <62>; | ||
1294 | clocks = <&apb1_gates 6>; | ||
1295 | status = "disabled"; | ||
1296 | }; | ||
1297 | |||
1298 | ps21: ps2@01c2a400 { | ||
1299 | compatible = "allwinner,sun4i-a10-ps2"; | ||
1300 | reg = <0x01c2a400 0x400>; | ||
1301 | interrupts = <63>; | ||
1302 | clocks = <&apb1_gates 7>; | ||
1303 | status = "disabled"; | ||
1304 | }; | ||
1305 | |||
1286 | i2c0: i2c@01c2ac00 { | 1306 | i2c0: i2c@01c2ac00 { |
1287 | compatible = "allwinner,sun4i-a10-i2c"; | 1307 | compatible = "allwinner,sun4i-a10-i2c"; |
1288 | reg = <0x01c2ac00 0x400>; | 1308 | reg = <0x01c2ac00 0x400>; |
@@ -1313,19 +1333,11 @@ | |||
1313 | #size-cells = <0>; | 1333 | #size-cells = <0>; |
1314 | }; | 1334 | }; |
1315 | 1335 | ||
1316 | ps20: ps2@01c2a000 { | 1336 | can0: can@01c2bc00 { |
1317 | compatible = "allwinner,sun4i-a10-ps2"; | 1337 | compatible = "allwinner,sun4i-a10-can"; |
1318 | reg = <0x01c2a000 0x400>; | 1338 | reg = <0x01c2bc00 0x400>; |
1319 | interrupts = <62>; | 1339 | interrupts = <26>; |
1320 | clocks = <&apb1_gates 6>; | 1340 | clocks = <&apb1_gates 4>; |
1321 | status = "disabled"; | ||
1322 | }; | ||
1323 | |||
1324 | ps21: ps2@01c2a400 { | ||
1325 | compatible = "allwinner,sun4i-a10-ps2"; | ||
1326 | reg = <0x01c2a400 0x400>; | ||
1327 | interrupts = <63>; | ||
1328 | clocks = <&apb1_gates 7>; | ||
1329 | status = "disabled"; | 1341 | status = "disabled"; |
1330 | }; | 1342 | }; |
1331 | }; | 1343 | }; |
diff --git a/arch/arm/boot/dts/sun5i-a10s-auxtek-t003.dts b/arch/arm/boot/dts/sun5i-a10s-auxtek-t003.dts index a539b72ce093..c6f742a7e69f 100644 --- a/arch/arm/boot/dts/sun5i-a10s-auxtek-t003.dts +++ b/arch/arm/boot/dts/sun5i-a10s-auxtek-t003.dts | |||
@@ -44,7 +44,6 @@ | |||
44 | #include "sun5i-a10s.dtsi" | 44 | #include "sun5i-a10s.dtsi" |
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
48 | 47 | ||
49 | / { | 48 | / { |
50 | model = "Auxtek t003 A10s hdmi tv-stick"; | 49 | model = "Auxtek t003 A10s hdmi tv-stick"; |
diff --git a/arch/arm/boot/dts/sun5i-a10s-auxtek-t004.dts b/arch/arm/boot/dts/sun5i-a10s-auxtek-t004.dts index e1b5e8a446fe..a27c3fa58736 100644 --- a/arch/arm/boot/dts/sun5i-a10s-auxtek-t004.dts +++ b/arch/arm/boot/dts/sun5i-a10s-auxtek-t004.dts | |||
@@ -44,7 +44,6 @@ | |||
44 | #include "sun5i-a10s.dtsi" | 44 | #include "sun5i-a10s.dtsi" |
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
48 | 47 | ||
49 | / { | 48 | / { |
50 | model = "Auxtek t004 A10s hdmi tv-stick"; | 49 | model = "Auxtek t004 A10s hdmi tv-stick"; |
diff --git a/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts b/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts index d8245c6314a7..894f874a5beb 100644 --- a/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts +++ b/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/input/input.h> | 50 | #include <dt-bindings/input/input.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Olimex A10s-Olinuxino Micro"; | 53 | model = "Olimex A10s-Olinuxino Micro"; |
@@ -83,7 +82,7 @@ | |||
83 | 82 | ||
84 | &emac { | 83 | &emac { |
85 | pinctrl-names = "default"; | 84 | pinctrl-names = "default"; |
86 | pinctrl-0 = <&emac_pins_a>; | 85 | pinctrl-0 = <&emac_pins_b>; |
87 | phy = <&phy1>; | 86 | phy = <&phy1>; |
88 | status = "okay"; | 87 | status = "okay"; |
89 | }; | 88 | }; |
@@ -257,7 +256,7 @@ | |||
257 | 256 | ||
258 | &uart2 { | 257 | &uart2 { |
259 | pinctrl-names = "default"; | 258 | pinctrl-names = "default"; |
260 | pinctrl-0 = <&uart2_pins_a>; | 259 | pinctrl-0 = <&uart2_pins_b>; |
261 | status = "okay"; | 260 | status = "okay"; |
262 | }; | 261 | }; |
263 | 262 | ||
diff --git a/arch/arm/boot/dts/sun5i-a10s-r7-tv-dongle.dts b/arch/arm/boot/dts/sun5i-a10s-r7-tv-dongle.dts index 51371f9b1cf0..262b3669f04d 100644 --- a/arch/arm/boot/dts/sun5i-a10s-r7-tv-dongle.dts +++ b/arch/arm/boot/dts/sun5i-a10s-r7-tv-dongle.dts | |||
@@ -45,7 +45,6 @@ | |||
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
49 | 48 | ||
50 | / { | 49 | / { |
51 | model = "R7 A10s hdmi tv-stick"; | 50 | model = "R7 A10s hdmi tv-stick"; |
diff --git a/arch/arm/boot/dts/sun5i-a10s-wobo-i5.dts b/arch/arm/boot/dts/sun5i-a10s-wobo-i5.dts index 2b8adda0deda..ea3e5655a61b 100644 --- a/arch/arm/boot/dts/sun5i-a10s-wobo-i5.dts +++ b/arch/arm/boot/dts/sun5i-a10s-wobo-i5.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "A10s-Wobo i5"; | 51 | model = "A10s-Wobo i5"; |
@@ -95,7 +94,7 @@ | |||
95 | 94 | ||
96 | &emac { | 95 | &emac { |
97 | pinctrl-names = "default"; | 96 | pinctrl-names = "default"; |
98 | pinctrl-0 = <&emac_pins_b>; | 97 | pinctrl-0 = <&emac_pins_a>; |
99 | phy = <&phy1>; | 98 | phy = <&phy1>; |
100 | status = "okay"; | 99 | status = "okay"; |
101 | }; | 100 | }; |
diff --git a/arch/arm/boot/dts/sun5i-a10s.dtsi b/arch/arm/boot/dts/sun5i-a10s.dtsi index 24b0f5f556f8..1e38ff80366c 100644 --- a/arch/arm/boot/dts/sun5i-a10s.dtsi +++ b/arch/arm/boot/dts/sun5i-a10s.dtsi | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sun5i.dtsi" | 47 | #include "sun5i.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/dma/sun4i-a10.h> | 49 | #include <dt-bindings/dma/sun4i-a10.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | interrupt-parent = <&intc>; | 52 | interrupt-parent = <&intc>; |
@@ -61,7 +60,7 @@ | |||
61 | #size-cells = <1>; | 60 | #size-cells = <1>; |
62 | ranges; | 61 | ranges; |
63 | 62 | ||
64 | framebuffer@0 { | 63 | framebuffer@2 { |
65 | compatible = "allwinner,simple-framebuffer", | 64 | compatible = "allwinner,simple-framebuffer", |
66 | "simple-framebuffer"; | 65 | "simple-framebuffer"; |
67 | allwinner,pipeline = "de_be0-lcd0-hdmi"; | 66 | allwinner,pipeline = "de_be0-lcd0-hdmi"; |
@@ -70,45 +69,9 @@ | |||
70 | <&ccu CLK_DE_BE>, <&ccu CLK_HDMI>; | 69 | <&ccu CLK_DE_BE>, <&ccu CLK_HDMI>; |
71 | status = "disabled"; | 70 | status = "disabled"; |
72 | }; | 71 | }; |
73 | |||
74 | framebuffer@1 { | ||
75 | compatible = "allwinner,simple-framebuffer", | ||
76 | "simple-framebuffer"; | ||
77 | allwinner,pipeline = "de_be0-lcd0"; | ||
78 | clocks = <&ccu CLK_AHB_LCD>, <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
79 | <&ccu CLK_TCON_CH0>, <&ccu CLK_DRAM_DE_BE>; | ||
80 | status = "disabled"; | ||
81 | }; | ||
82 | |||
83 | framebuffer@2 { | ||
84 | compatible = "allwinner,simple-framebuffer", | ||
85 | "simple-framebuffer"; | ||
86 | allwinner,pipeline = "de_be0-lcd0-tve0"; | ||
87 | clocks = <&ccu CLK_AHB_TVE>, <&ccu CLK_AHB_LCD>, | ||
88 | <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
89 | <&ccu CLK_TCON_CH1>, <&ccu CLK_DRAM_DE_BE>; | ||
90 | status = "disabled"; | ||
91 | }; | ||
92 | }; | 72 | }; |
93 | 73 | ||
94 | soc@01c00000 { | 74 | soc@01c00000 { |
95 | emac: ethernet@01c0b000 { | ||
96 | compatible = "allwinner,sun4i-a10-emac"; | ||
97 | reg = <0x01c0b000 0x1000>; | ||
98 | interrupts = <55>; | ||
99 | clocks = <&ccu CLK_AHB_EMAC>; | ||
100 | allwinner,sram = <&emac_sram 1>; | ||
101 | status = "disabled"; | ||
102 | }; | ||
103 | |||
104 | mdio: mdio@01c0b080 { | ||
105 | compatible = "allwinner,sun4i-a10-mdio"; | ||
106 | reg = <0x01c0b080 0x14>; | ||
107 | status = "disabled"; | ||
108 | #address-cells = <1>; | ||
109 | #size-cells = <0>; | ||
110 | }; | ||
111 | |||
112 | pwm: pwm@01c20e00 { | 75 | pwm: pwm@01c20e00 { |
113 | compatible = "allwinner,sun5i-a10s-pwm"; | 76 | compatible = "allwinner,sun5i-a10s-pwm"; |
114 | reg = <0x01c20e00 0xc>; | 77 | reg = <0x01c20e00 0xc>; |
@@ -116,26 +79,6 @@ | |||
116 | #pwm-cells = <3>; | 79 | #pwm-cells = <3>; |
117 | status = "disabled"; | 80 | status = "disabled"; |
118 | }; | 81 | }; |
119 | |||
120 | uart0: serial@01c28000 { | ||
121 | compatible = "snps,dw-apb-uart"; | ||
122 | reg = <0x01c28000 0x400>; | ||
123 | interrupts = <1>; | ||
124 | reg-shift = <2>; | ||
125 | reg-io-width = <4>; | ||
126 | clocks = <&ccu CLK_APB1_UART0>; | ||
127 | status = "disabled"; | ||
128 | }; | ||
129 | |||
130 | uart2: serial@01c28800 { | ||
131 | compatible = "snps,dw-apb-uart"; | ||
132 | reg = <0x01c28800 0x400>; | ||
133 | interrupts = <3>; | ||
134 | reg-shift = <2>; | ||
135 | reg-io-width = <4>; | ||
136 | clocks = <&ccu CLK_APB1_UART2>; | ||
137 | status = "disabled"; | ||
138 | }; | ||
139 | }; | 82 | }; |
140 | }; | 83 | }; |
141 | 84 | ||
@@ -151,12 +94,12 @@ | |||
151 | function = "uart0"; | 94 | function = "uart0"; |
152 | }; | 95 | }; |
153 | 96 | ||
154 | uart2_pins_a: uart2@0 { | 97 | uart2_pins_b: uart2@1 { |
155 | pins = "PC18", "PC19"; | 98 | pins = "PC18", "PC19"; |
156 | function = "uart2"; | 99 | function = "uart2"; |
157 | }; | 100 | }; |
158 | 101 | ||
159 | emac_pins_a: emac0@0 { | 102 | emac_pins_b: emac0@1 { |
160 | pins = "PA0", "PA1", "PA2", | 103 | pins = "PA0", "PA1", "PA2", |
161 | "PA3", "PA4", "PA5", "PA6", | 104 | "PA3", "PA4", "PA5", "PA6", |
162 | "PA7", "PA8", "PA9", "PA10", | 105 | "PA7", "PA8", "PA9", "PA10", |
@@ -165,15 +108,6 @@ | |||
165 | function = "emac"; | 108 | function = "emac"; |
166 | }; | 109 | }; |
167 | 110 | ||
168 | emac_pins_b: emac0@1 { | ||
169 | pins = "PD6", "PD7", "PD10", | ||
170 | "PD11", "PD12", "PD13", "PD14", | ||
171 | "PD15", "PD18", "PD19", "PD20", | ||
172 | "PD21", "PD22", "PD23", "PD24", | ||
173 | "PD25", "PD26", "PD27"; | ||
174 | function = "emac"; | ||
175 | }; | ||
176 | |||
177 | mmc1_pins_a: mmc1@0 { | 111 | mmc1_pins_a: mmc1@0 { |
178 | pins = "PG3", "PG4", "PG5", | 112 | pins = "PG3", "PG4", "PG5", |
179 | "PG6", "PG7", "PG8"; | 113 | "PG6", "PG7", "PG8"; |
@@ -193,9 +127,4 @@ | |||
193 | }; | 127 | }; |
194 | 128 | ||
195 | &sram_a { | 129 | &sram_a { |
196 | emac_sram: sram-section@8000 { | ||
197 | compatible = "allwinner,sun4i-a10-sram-a3-a4"; | ||
198 | reg = <0x8000 0x4000>; | ||
199 | status = "disabled"; | ||
200 | }; | ||
201 | }; | 130 | }; |
diff --git a/arch/arm/boot/dts/sun5i-a13-empire-electronix-d709.dts b/arch/arm/boot/dts/sun5i-a13-empire-electronix-d709.dts index 42435454acef..34411d27aadf 100644 --- a/arch/arm/boot/dts/sun5i-a13-empire-electronix-d709.dts +++ b/arch/arm/boot/dts/sun5i-a13-empire-electronix-d709.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include <dt-bindings/gpio/gpio.h> | 46 | #include <dt-bindings/gpio/gpio.h> |
47 | #include <dt-bindings/input/input.h> | 47 | #include <dt-bindings/input/input.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | #include <dt-bindings/pwm/pwm.h> | 49 | #include <dt-bindings/pwm/pwm.h> |
51 | 50 | ||
52 | / { | 51 | / { |
diff --git a/arch/arm/boot/dts/sun5i-a13-hsg-h702.dts b/arch/arm/boot/dts/sun5i-a13-hsg-h702.dts index 5879a75cf97a..2489c16f7efa 100644 --- a/arch/arm/boot/dts/sun5i-a13-hsg-h702.dts +++ b/arch/arm/boot/dts/sun5i-a13-hsg-h702.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/input/input.h> | 48 | #include <dt-bindings/input/input.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "HSG H702"; | 51 | model = "HSG H702"; |
diff --git a/arch/arm/boot/dts/sun5i-a13-licheepi-one.dts b/arch/arm/boot/dts/sun5i-a13-licheepi-one.dts index 566cda91a66b..bc883893f4a4 100644 --- a/arch/arm/boot/dts/sun5i-a13-licheepi-one.dts +++ b/arch/arm/boot/dts/sun5i-a13-licheepi-one.dts | |||
@@ -50,7 +50,6 @@ | |||
50 | 50 | ||
51 | #include <dt-bindings/gpio/gpio.h> | 51 | #include <dt-bindings/gpio/gpio.h> |
52 | #include <dt-bindings/input/input.h> | 52 | #include <dt-bindings/input/input.h> |
53 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
54 | 53 | ||
55 | / { | 54 | / { |
56 | model = "Lichee Pi One"; | 55 | model = "Lichee Pi One"; |
diff --git a/arch/arm/boot/dts/sun5i-a13-olinuxino-micro.dts b/arch/arm/boot/dts/sun5i-a13-olinuxino-micro.dts index 60e393e28783..3a831eaf1dfc 100644 --- a/arch/arm/boot/dts/sun5i-a13-olinuxino-micro.dts +++ b/arch/arm/boot/dts/sun5i-a13-olinuxino-micro.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include "sunxi-common-regulators.dtsi" | 46 | #include "sunxi-common-regulators.dtsi" |
47 | 47 | ||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Olimex A13-Olinuxino Micro"; | 51 | model = "Olimex A13-Olinuxino Micro"; |
diff --git a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts index 940d47e88056..95f591bb8ced 100644 --- a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts +++ b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/input/input.h> | 50 | #include <dt-bindings/input/input.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Olimex A13-Olinuxino"; | 53 | model = "Olimex A13-Olinuxino"; |
diff --git a/arch/arm/boot/dts/sun5i-a13.dtsi b/arch/arm/boot/dts/sun5i-a13.dtsi index fb2ddb9a04c9..6436bad94404 100644 --- a/arch/arm/boot/dts/sun5i-a13.dtsi +++ b/arch/arm/boot/dts/sun5i-a13.dtsi | |||
@@ -46,27 +46,11 @@ | |||
46 | 46 | ||
47 | #include "sun5i.dtsi" | 47 | #include "sun5i.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | #include <dt-bindings/thermal/thermal.h> | 49 | #include <dt-bindings/thermal/thermal.h> |
51 | 50 | ||
52 | / { | 51 | / { |
53 | interrupt-parent = <&intc>; | 52 | interrupt-parent = <&intc>; |
54 | 53 | ||
55 | chosen { | ||
56 | #address-cells = <1>; | ||
57 | #size-cells = <1>; | ||
58 | ranges; | ||
59 | |||
60 | framebuffer@0 { | ||
61 | compatible = "allwinner,simple-framebuffer", | ||
62 | "simple-framebuffer"; | ||
63 | allwinner,pipeline = "de_be0-lcd0"; | ||
64 | clocks = <&ccu CLK_AHB_LCD>, <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
65 | <&ccu CLK_TCON_CH0>, <&ccu CLK_DRAM_DE_BE>; | ||
66 | status = "disabled"; | ||
67 | }; | ||
68 | }; | ||
69 | |||
70 | thermal-zones { | 54 | thermal-zones { |
71 | cpu_thermal { | 55 | cpu_thermal { |
72 | /* milliseconds */ | 56 | /* milliseconds */ |
@@ -105,44 +89,6 @@ | |||
105 | }; | 89 | }; |
106 | 90 | ||
107 | soc@01c00000 { | 91 | soc@01c00000 { |
108 | tcon0: lcd-controller@01c0c000 { | ||
109 | compatible = "allwinner,sun5i-a13-tcon"; | ||
110 | reg = <0x01c0c000 0x1000>; | ||
111 | interrupts = <44>; | ||
112 | resets = <&ccu RST_LCD>; | ||
113 | reset-names = "lcd"; | ||
114 | clocks = <&ccu CLK_AHB_LCD>, | ||
115 | <&ccu CLK_TCON_CH0>, | ||
116 | <&ccu CLK_TCON_CH1>; | ||
117 | clock-names = "ahb", | ||
118 | "tcon-ch0", | ||
119 | "tcon-ch1"; | ||
120 | clock-output-names = "tcon-pixel-clock"; | ||
121 | status = "disabled"; | ||
122 | |||
123 | ports { | ||
124 | #address-cells = <1>; | ||
125 | #size-cells = <0>; | ||
126 | |||
127 | tcon0_in: port@0 { | ||
128 | #address-cells = <1>; | ||
129 | #size-cells = <0>; | ||
130 | reg = <0>; | ||
131 | |||
132 | tcon0_in_be0: endpoint@0 { | ||
133 | reg = <0>; | ||
134 | remote-endpoint = <&be0_out_tcon0>; | ||
135 | }; | ||
136 | }; | ||
137 | |||
138 | tcon0_out: port@1 { | ||
139 | #address-cells = <1>; | ||
140 | #size-cells = <0>; | ||
141 | reg = <1>; | ||
142 | }; | ||
143 | }; | ||
144 | }; | ||
145 | |||
146 | pwm: pwm@01c20e00 { | 92 | pwm: pwm@01c20e00 { |
147 | compatible = "allwinner,sun5i-a13-pwm"; | 93 | compatible = "allwinner,sun5i-a13-pwm"; |
148 | reg = <0x01c20e00 0xc>; | 94 | reg = <0x01c20e00 0xc>; |
@@ -151,74 +97,6 @@ | |||
151 | status = "disabled"; | 97 | status = "disabled"; |
152 | }; | 98 | }; |
153 | 99 | ||
154 | fe0: display-frontend@01e00000 { | ||
155 | compatible = "allwinner,sun5i-a13-display-frontend"; | ||
156 | reg = <0x01e00000 0x20000>; | ||
157 | interrupts = <47>; | ||
158 | clocks = <&ccu CLK_DE_FE>, <&ccu CLK_DE_FE>, | ||
159 | <&ccu CLK_DRAM_DE_FE>; | ||
160 | clock-names = "ahb", "mod", | ||
161 | "ram"; | ||
162 | resets = <&ccu RST_DE_FE>; | ||
163 | status = "disabled"; | ||
164 | |||
165 | ports { | ||
166 | #address-cells = <1>; | ||
167 | #size-cells = <0>; | ||
168 | |||
169 | fe0_out: port@1 { | ||
170 | #address-cells = <1>; | ||
171 | #size-cells = <0>; | ||
172 | reg = <1>; | ||
173 | |||
174 | fe0_out_be0: endpoint@0 { | ||
175 | reg = <0>; | ||
176 | remote-endpoint = <&be0_in_fe0>; | ||
177 | }; | ||
178 | }; | ||
179 | }; | ||
180 | }; | ||
181 | |||
182 | be0: display-backend@01e60000 { | ||
183 | compatible = "allwinner,sun5i-a13-display-backend"; | ||
184 | reg = <0x01e60000 0x10000>; | ||
185 | clocks = <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
186 | <&ccu CLK_DRAM_DE_BE>; | ||
187 | clock-names = "ahb", "mod", | ||
188 | "ram"; | ||
189 | resets = <&ccu RST_DE_BE>; | ||
190 | status = "disabled"; | ||
191 | |||
192 | assigned-clocks = <&ccu CLK_DE_BE>; | ||
193 | assigned-clock-rates = <300000000>; | ||
194 | |||
195 | ports { | ||
196 | #address-cells = <1>; | ||
197 | #size-cells = <0>; | ||
198 | |||
199 | be0_in: port@0 { | ||
200 | #address-cells = <1>; | ||
201 | #size-cells = <0>; | ||
202 | reg = <0>; | ||
203 | |||
204 | be0_in_fe0: endpoint@0 { | ||
205 | reg = <0>; | ||
206 | remote-endpoint = <&fe0_out_be0>; | ||
207 | }; | ||
208 | }; | ||
209 | |||
210 | be0_out: port@1 { | ||
211 | #address-cells = <1>; | ||
212 | #size-cells = <0>; | ||
213 | reg = <1>; | ||
214 | |||
215 | be0_out_tcon0: endpoint@0 { | ||
216 | reg = <0>; | ||
217 | remote-endpoint = <&tcon0_in_be0>; | ||
218 | }; | ||
219 | }; | ||
220 | }; | ||
221 | }; | ||
222 | }; | 100 | }; |
223 | }; | 101 | }; |
224 | 102 | ||
@@ -244,22 +122,4 @@ | |||
244 | 122 | ||
245 | &pio { | 123 | &pio { |
246 | compatible = "allwinner,sun5i-a13-pinctrl"; | 124 | compatible = "allwinner,sun5i-a13-pinctrl"; |
247 | |||
248 | lcd_rgb666_pins: lcd_rgb666@0 { | ||
249 | pins = "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", | ||
250 | "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", | ||
251 | "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", | ||
252 | "PD24", "PD25", "PD26", "PD27"; | ||
253 | function = "lcd0"; | ||
254 | }; | ||
255 | |||
256 | uart1_pins_a: uart1@0 { | ||
257 | pins = "PE10", "PE11"; | ||
258 | function = "uart1"; | ||
259 | }; | ||
260 | |||
261 | uart1_pins_b: uart1@1 { | ||
262 | pins = "PG3", "PG4"; | ||
263 | function = "uart1"; | ||
264 | }; | ||
265 | }; | 125 | }; |
diff --git a/arch/arm/boot/dts/sun5i-gr8-chip-pro.dts b/arch/arm/boot/dts/sun5i-gr8-chip-pro.dts index 0cf0813d363a..c55b11a4d3c7 100644 --- a/arch/arm/boot/dts/sun5i-gr8-chip-pro.dts +++ b/arch/arm/boot/dts/sun5i-gr8-chip-pro.dts | |||
@@ -171,7 +171,7 @@ | |||
171 | 171 | ||
172 | &pwm { | 172 | &pwm { |
173 | pinctrl-names = "default"; | 173 | pinctrl-names = "default"; |
174 | pinctrl-0 = <&pwm0_pins_a>, <&pwm1_pins>; | 174 | pinctrl-0 = <&pwm0_pins>, <&pwm1_pins>; |
175 | status = "disabled"; | 175 | status = "disabled"; |
176 | }; | 176 | }; |
177 | 177 | ||
@@ -220,7 +220,7 @@ | |||
220 | 220 | ||
221 | &uart1 { | 221 | &uart1 { |
222 | pinctrl-names = "default"; | 222 | pinctrl-names = "default"; |
223 | pinctrl-0 = <&uart1_pins_a>, <&uart1_cts_rts_pins_a>; | 223 | pinctrl-0 = <&uart1_pins_b>, <&uart1_cts_rts_pins_a>; |
224 | status = "okay"; | 224 | status = "okay"; |
225 | }; | 225 | }; |
226 | 226 | ||
diff --git a/arch/arm/boot/dts/sun5i-gr8-evb.dts b/arch/arm/boot/dts/sun5i-gr8-evb.dts index 1a845af4d4db..558c16a30543 100644 --- a/arch/arm/boot/dts/sun5i-gr8-evb.dts +++ b/arch/arm/boot/dts/sun5i-gr8-evb.dts | |||
@@ -281,7 +281,7 @@ | |||
281 | 281 | ||
282 | &pwm { | 282 | &pwm { |
283 | pinctrl-names = "default"; | 283 | pinctrl-names = "default"; |
284 | pinctrl-0 = <&pwm0_pins_a>; | 284 | pinctrl-0 = <&pwm0_pins>; |
285 | status = "okay"; | 285 | status = "okay"; |
286 | }; | 286 | }; |
287 | 287 | ||
@@ -332,7 +332,7 @@ | |||
332 | 332 | ||
333 | &uart1 { | 333 | &uart1 { |
334 | pinctrl-names = "default"; | 334 | pinctrl-names = "default"; |
335 | pinctrl-0 = <&uart1_pins_a>, <&uart1_cts_rts_pins_a>; | 335 | pinctrl-0 = <&uart1_pins_b>, <&uart1_cts_rts_pins_a>; |
336 | status = "okay"; | 336 | status = "okay"; |
337 | }; | 337 | }; |
338 | 338 | ||
diff --git a/arch/arm/boot/dts/sun5i-gr8.dtsi b/arch/arm/boot/dts/sun5i-gr8.dtsi index cb9b2aaf7297..3eb56cad0cea 100644 --- a/arch/arm/boot/dts/sun5i-gr8.dtsi +++ b/arch/arm/boot/dts/sun5i-gr8.dtsi | |||
@@ -42,429 +42,19 @@ | |||
42 | * OTHER DEALINGS IN THE SOFTWARE. | 42 | * OTHER DEALINGS IN THE SOFTWARE. |
43 | */ | 43 | */ |
44 | 44 | ||
45 | #include "sun5i.dtsi" | ||
46 | |||
45 | #include <dt-bindings/clock/sun5i-ccu.h> | 47 | #include <dt-bindings/clock/sun5i-ccu.h> |
46 | #include <dt-bindings/dma/sun4i-a10.h> | 48 | #include <dt-bindings/dma/sun4i-a10.h> |
47 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
48 | #include <dt-bindings/reset/sun5i-ccu.h> | 49 | #include <dt-bindings/reset/sun5i-ccu.h> |
49 | 50 | ||
50 | / { | 51 | / { |
51 | interrupt-parent = <&intc>; | ||
52 | #address-cells = <1>; | ||
53 | #size-cells = <1>; | ||
54 | |||
55 | cpus { | ||
56 | #address-cells = <1>; | ||
57 | #size-cells = <0>; | ||
58 | |||
59 | cpu0: cpu@0 { | ||
60 | device_type = "cpu"; | ||
61 | compatible = "arm,cortex-a8"; | ||
62 | reg = <0x0>; | ||
63 | clocks = <&ccu CLK_CPU>; | ||
64 | }; | ||
65 | }; | ||
66 | |||
67 | clocks { | ||
68 | #address-cells = <1>; | ||
69 | #size-cells = <1>; | ||
70 | ranges; | ||
71 | |||
72 | osc24M: clk@01c20050 { | ||
73 | #clock-cells = <0>; | ||
74 | compatible = "fixed-clock"; | ||
75 | clock-frequency = <24000000>; | ||
76 | clock-output-names = "osc24M"; | ||
77 | }; | ||
78 | |||
79 | osc32k: clk@0 { | ||
80 | #clock-cells = <0>; | ||
81 | compatible = "fixed-clock"; | ||
82 | clock-frequency = <32768>; | ||
83 | clock-output-names = "osc32k"; | ||
84 | }; | ||
85 | }; | ||
86 | |||
87 | display-engine { | 52 | display-engine { |
88 | compatible = "allwinner,sun5i-a13-display-engine"; | 53 | compatible = "allwinner,sun5i-a13-display-engine"; |
89 | allwinner,pipelines = <&fe0>; | 54 | allwinner,pipelines = <&fe0>; |
90 | }; | 55 | }; |
91 | 56 | ||
92 | soc@01c00000 { | 57 | soc@01c00000 { |
93 | compatible = "simple-bus"; | ||
94 | #address-cells = <1>; | ||
95 | #size-cells = <1>; | ||
96 | ranges; | ||
97 | |||
98 | sram-controller@01c00000 { | ||
99 | compatible = "allwinner,sun4i-a10-sram-controller"; | ||
100 | reg = <0x01c00000 0x30>; | ||
101 | #address-cells = <1>; | ||
102 | #size-cells = <1>; | ||
103 | ranges; | ||
104 | |||
105 | sram_a: sram@00000000 { | ||
106 | compatible = "mmio-sram"; | ||
107 | reg = <0x00000000 0xc000>; | ||
108 | #address-cells = <1>; | ||
109 | #size-cells = <1>; | ||
110 | ranges = <0 0x00000000 0xc000>; | ||
111 | }; | ||
112 | |||
113 | sram_d: sram@00010000 { | ||
114 | compatible = "mmio-sram"; | ||
115 | reg = <0x00010000 0x1000>; | ||
116 | #address-cells = <1>; | ||
117 | #size-cells = <1>; | ||
118 | ranges = <0 0x00010000 0x1000>; | ||
119 | |||
120 | otg_sram: sram-section@0000 { | ||
121 | compatible = "allwinner,sun4i-a10-sram-d"; | ||
122 | reg = <0x0000 0x1000>; | ||
123 | status = "disabled"; | ||
124 | }; | ||
125 | }; | ||
126 | }; | ||
127 | |||
128 | dma: dma-controller@01c02000 { | ||
129 | compatible = "allwinner,sun4i-a10-dma"; | ||
130 | reg = <0x01c02000 0x1000>; | ||
131 | interrupts = <27>; | ||
132 | clocks = <&ccu CLK_AHB_DMA>; | ||
133 | #dma-cells = <2>; | ||
134 | }; | ||
135 | |||
136 | nfc: nand@01c03000 { | ||
137 | compatible = "allwinner,sun4i-a10-nand"; | ||
138 | reg = <0x01c03000 0x1000>; | ||
139 | interrupts = <37>; | ||
140 | clocks = <&ccu CLK_AHB_NAND>, <&ccu CLK_NAND>; | ||
141 | clock-names = "ahb", "mod"; | ||
142 | dmas = <&dma SUN4I_DMA_DEDICATED 3>; | ||
143 | dma-names = "rxtx"; | ||
144 | status = "disabled"; | ||
145 | #address-cells = <1>; | ||
146 | #size-cells = <0>; | ||
147 | }; | ||
148 | |||
149 | spi0: spi@01c05000 { | ||
150 | compatible = "allwinner,sun4i-a10-spi"; | ||
151 | reg = <0x01c05000 0x1000>; | ||
152 | interrupts = <10>; | ||
153 | clocks = <&ccu CLK_AHB_SPI0>, <&ccu CLK_SPI0>; | ||
154 | clock-names = "ahb", "mod"; | ||
155 | dmas = <&dma SUN4I_DMA_DEDICATED 27>, | ||
156 | <&dma SUN4I_DMA_DEDICATED 26>; | ||
157 | dma-names = "rx", "tx"; | ||
158 | status = "disabled"; | ||
159 | #address-cells = <1>; | ||
160 | #size-cells = <0>; | ||
161 | }; | ||
162 | |||
163 | spi1: spi@01c06000 { | ||
164 | compatible = "allwinner,sun4i-a10-spi"; | ||
165 | reg = <0x01c06000 0x1000>; | ||
166 | interrupts = <11>; | ||
167 | clocks = <&ccu CLK_AHB_SPI1>, <&ccu CLK_SPI1>; | ||
168 | clock-names = "ahb", "mod"; | ||
169 | dmas = <&dma SUN4I_DMA_DEDICATED 9>, | ||
170 | <&dma SUN4I_DMA_DEDICATED 8>; | ||
171 | dma-names = "rx", "tx"; | ||
172 | status = "disabled"; | ||
173 | #address-cells = <1>; | ||
174 | #size-cells = <0>; | ||
175 | }; | ||
176 | |||
177 | tve0: tv-encoder@01c0a000 { | ||
178 | compatible = "allwinner,sun4i-a10-tv-encoder"; | ||
179 | reg = <0x01c0a000 0x1000>; | ||
180 | clocks = <&ccu CLK_AHB_TVE>; | ||
181 | resets = <&ccu RST_TVE>; | ||
182 | status = "disabled"; | ||
183 | |||
184 | port { | ||
185 | #address-cells = <1>; | ||
186 | #size-cells = <0>; | ||
187 | |||
188 | tve0_in_tcon0: endpoint@0 { | ||
189 | reg = <0>; | ||
190 | remote-endpoint = <&tcon0_out_tve0>; | ||
191 | }; | ||
192 | }; | ||
193 | }; | ||
194 | |||
195 | tcon0: lcd-controller@01c0c000 { | ||
196 | compatible = "allwinner,sun5i-a13-tcon"; | ||
197 | reg = <0x01c0c000 0x1000>; | ||
198 | interrupts = <44>; | ||
199 | resets = <&ccu RST_LCD>; | ||
200 | reset-names = "lcd"; | ||
201 | clocks = <&ccu CLK_AHB_LCD>, | ||
202 | <&ccu CLK_TCON_CH0>, | ||
203 | <&ccu CLK_TCON_CH1>; | ||
204 | clock-names = "ahb", | ||
205 | "tcon-ch0", | ||
206 | "tcon-ch1"; | ||
207 | clock-output-names = "tcon-pixel-clock"; | ||
208 | status = "disabled"; | ||
209 | |||
210 | ports { | ||
211 | #address-cells = <1>; | ||
212 | #size-cells = <0>; | ||
213 | |||
214 | tcon0_in: port@0 { | ||
215 | #address-cells = <1>; | ||
216 | #size-cells = <0>; | ||
217 | reg = <0>; | ||
218 | |||
219 | tcon0_in_be0: endpoint@0 { | ||
220 | reg = <0>; | ||
221 | remote-endpoint = <&be0_out_tcon0>; | ||
222 | }; | ||
223 | }; | ||
224 | |||
225 | tcon0_out: port@1 { | ||
226 | #address-cells = <1>; | ||
227 | #size-cells = <0>; | ||
228 | reg = <1>; | ||
229 | |||
230 | tcon0_out_tve0: endpoint@1 { | ||
231 | reg = <1>; | ||
232 | remote-endpoint = <&tve0_in_tcon0>; | ||
233 | }; | ||
234 | }; | ||
235 | }; | ||
236 | }; | ||
237 | |||
238 | mmc0: mmc@01c0f000 { | ||
239 | compatible = "allwinner,sun5i-a13-mmc"; | ||
240 | reg = <0x01c0f000 0x1000>; | ||
241 | clocks = <&ccu CLK_AHB_MMC0>, <&ccu CLK_MMC0>; | ||
242 | clock-names = "ahb", "mmc"; | ||
243 | interrupts = <32>; | ||
244 | status = "disabled"; | ||
245 | #address-cells = <1>; | ||
246 | #size-cells = <0>; | ||
247 | }; | ||
248 | |||
249 | mmc1: mmc@01c10000 { | ||
250 | compatible = "allwinner,sun5i-a13-mmc"; | ||
251 | reg = <0x01c10000 0x1000>; | ||
252 | clocks = <&ccu CLK_AHB_MMC1>, <&ccu CLK_MMC1>; | ||
253 | clock-names = "ahb", "mmc"; | ||
254 | interrupts = <33>; | ||
255 | status = "disabled"; | ||
256 | #address-cells = <1>; | ||
257 | #size-cells = <0>; | ||
258 | }; | ||
259 | |||
260 | mmc2: mmc@01c11000 { | ||
261 | compatible = "allwinner,sun5i-a13-mmc"; | ||
262 | reg = <0x01c11000 0x1000>; | ||
263 | clocks = <&ccu CLK_AHB_MMC2>, <&ccu CLK_MMC2>; | ||
264 | clock-names = "ahb", "mmc"; | ||
265 | interrupts = <34>; | ||
266 | status = "disabled"; | ||
267 | #address-cells = <1>; | ||
268 | #size-cells = <0>; | ||
269 | }; | ||
270 | |||
271 | usb_otg: usb@01c13000 { | ||
272 | compatible = "allwinner,sun4i-a10-musb"; | ||
273 | reg = <0x01c13000 0x0400>; | ||
274 | clocks = <&ccu CLK_AHB_OTG>; | ||
275 | interrupts = <38>; | ||
276 | interrupt-names = "mc"; | ||
277 | phys = <&usbphy 0>; | ||
278 | phy-names = "usb"; | ||
279 | extcon = <&usbphy 0>; | ||
280 | allwinner,sram = <&otg_sram 1>; | ||
281 | status = "disabled"; | ||
282 | |||
283 | dr_mode = "otg"; | ||
284 | }; | ||
285 | |||
286 | usbphy: phy@01c13400 { | ||
287 | #phy-cells = <1>; | ||
288 | compatible = "allwinner,sun5i-a13-usb-phy"; | ||
289 | reg = <0x01c13400 0x10 0x01c14800 0x4>; | ||
290 | reg-names = "phy_ctrl", "pmu1"; | ||
291 | clocks = <&ccu CLK_USB_PHY0>; | ||
292 | clock-names = "usb_phy"; | ||
293 | resets = <&ccu RST_USB_PHY0>, <&ccu RST_USB_PHY1>; | ||
294 | reset-names = "usb0_reset", "usb1_reset"; | ||
295 | status = "disabled"; | ||
296 | }; | ||
297 | |||
298 | ehci0: usb@01c14000 { | ||
299 | compatible = "allwinner,sun5i-a13-ehci", "generic-ehci"; | ||
300 | reg = <0x01c14000 0x100>; | ||
301 | interrupts = <39>; | ||
302 | clocks = <&ccu CLK_AHB_EHCI>; | ||
303 | phys = <&usbphy 1>; | ||
304 | phy-names = "usb"; | ||
305 | status = "disabled"; | ||
306 | }; | ||
307 | |||
308 | ohci0: usb@01c14400 { | ||
309 | compatible = "allwinner,sun5i-a13-ohci", "generic-ohci"; | ||
310 | reg = <0x01c14400 0x100>; | ||
311 | interrupts = <40>; | ||
312 | clocks = <&ccu CLK_USB_OHCI>, <&ccu CLK_AHB_OHCI>; | ||
313 | phys = <&usbphy 1>; | ||
314 | phy-names = "usb"; | ||
315 | status = "disabled"; | ||
316 | }; | ||
317 | |||
318 | spi2: spi@01c17000 { | ||
319 | compatible = "allwinner,sun4i-a10-spi"; | ||
320 | reg = <0x01c17000 0x1000>; | ||
321 | interrupts = <12>; | ||
322 | clocks = <&ccu CLK_AHB_SPI2>, <&ccu CLK_SPI2>; | ||
323 | clock-names = "ahb", "mod"; | ||
324 | dmas = <&dma SUN4I_DMA_DEDICATED 29>, | ||
325 | <&dma SUN4I_DMA_DEDICATED 28>; | ||
326 | dma-names = "rx", "tx"; | ||
327 | status = "disabled"; | ||
328 | #address-cells = <1>; | ||
329 | #size-cells = <0>; | ||
330 | }; | ||
331 | |||
332 | ccu: clock@01c20000 { | ||
333 | compatible = "nextthing,gr8-ccu"; | ||
334 | reg = <0x01c20000 0x400>; | ||
335 | clocks = <&osc24M>, <&osc32k>; | ||
336 | clock-names = "hosc", "losc"; | ||
337 | #clock-cells = <1>; | ||
338 | #reset-cells = <1>; | ||
339 | }; | ||
340 | |||
341 | intc: interrupt-controller@01c20400 { | ||
342 | compatible = "allwinner,sun4i-a10-ic"; | ||
343 | reg = <0x01c20400 0x400>; | ||
344 | interrupt-controller; | ||
345 | #interrupt-cells = <1>; | ||
346 | }; | ||
347 | |||
348 | pio: pinctrl@01c20800 { | ||
349 | compatible = "nextthing,gr8-pinctrl"; | ||
350 | reg = <0x01c20800 0x400>; | ||
351 | interrupts = <28>; | ||
352 | clocks = <&ccu CLK_APB0_PIO>; | ||
353 | gpio-controller; | ||
354 | interrupt-controller; | ||
355 | #interrupt-cells = <3>; | ||
356 | #gpio-cells = <3>; | ||
357 | |||
358 | i2c0_pins_a: i2c0@0 { | ||
359 | pins = "PB0", "PB1"; | ||
360 | function = "i2c0"; | ||
361 | }; | ||
362 | |||
363 | i2c1_pins_a: i2c1@0 { | ||
364 | pins = "PB15", "PB16"; | ||
365 | function = "i2c1"; | ||
366 | }; | ||
367 | |||
368 | i2c2_pins_a: i2c2@0 { | ||
369 | pins = "PB17", "PB18"; | ||
370 | function = "i2c2"; | ||
371 | }; | ||
372 | |||
373 | i2s0_data_pins_a: i2s0-data@0 { | ||
374 | pins = "PB6", "PB7", "PB8", "PB9"; | ||
375 | function = "i2s0"; | ||
376 | }; | ||
377 | |||
378 | i2s0_mclk_pins_a: i2s0-mclk@0 { | ||
379 | pins = "PB5"; | ||
380 | function = "i2s0"; | ||
381 | }; | ||
382 | |||
383 | ir0_rx_pins_a: ir0@0 { | ||
384 | pins = "PB4"; | ||
385 | function = "ir0"; | ||
386 | }; | ||
387 | |||
388 | lcd_rgb666_pins: lcd-rgb666@0 { | ||
389 | pins = "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", | ||
390 | "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", | ||
391 | "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", | ||
392 | "PD24", "PD25", "PD26", "PD27"; | ||
393 | function = "lcd0"; | ||
394 | }; | ||
395 | |||
396 | mmc0_pins_a: mmc0@0 { | ||
397 | pins = "PF0", "PF1", "PF2", "PF3", | ||
398 | "PF4", "PF5"; | ||
399 | function = "mmc0"; | ||
400 | drive-strength = <30>; | ||
401 | }; | ||
402 | |||
403 | nand_pins_a: nand-base0@0 { | ||
404 | pins = "PC0", "PC1", "PC2", | ||
405 | "PC5", "PC8", "PC9", "PC10", | ||
406 | "PC11", "PC12", "PC13", "PC14", | ||
407 | "PC15"; | ||
408 | function = "nand0"; | ||
409 | }; | ||
410 | |||
411 | nand_cs0_pins_a: nand-cs@0 { | ||
412 | pins = "PC4"; | ||
413 | function = "nand0"; | ||
414 | }; | ||
415 | |||
416 | nand_rb0_pins_a: nand-rb@0 { | ||
417 | pins = "PC6"; | ||
418 | function = "nand0"; | ||
419 | }; | ||
420 | |||
421 | pwm0_pins_a: pwm0@0 { | ||
422 | pins = "PB2"; | ||
423 | function = "pwm0"; | ||
424 | }; | ||
425 | |||
426 | pwm1_pins: pwm1 { | ||
427 | pins = "PG13"; | ||
428 | function = "pwm1"; | ||
429 | }; | ||
430 | |||
431 | spdif_tx_pins_a: spdif@0 { | ||
432 | pins = "PB10"; | ||
433 | function = "spdif"; | ||
434 | bias-pull-up; | ||
435 | }; | ||
436 | |||
437 | uart1_pins_a: uart1@1 { | ||
438 | pins = "PG3", "PG4"; | ||
439 | function = "uart1"; | ||
440 | }; | ||
441 | |||
442 | uart1_cts_rts_pins_a: uart1-cts-rts@0 { | ||
443 | pins = "PG5", "PG6"; | ||
444 | function = "uart1"; | ||
445 | }; | ||
446 | |||
447 | uart2_pins_a: uart2@1 { | ||
448 | pins = "PD2", "PD3"; | ||
449 | function = "uart2"; | ||
450 | }; | ||
451 | |||
452 | uart2_cts_rts_pins_a: uart2-cts-rts@0 { | ||
453 | pins = "PD4", "PD5"; | ||
454 | function = "uart2"; | ||
455 | }; | ||
456 | |||
457 | uart3_pins_a: uart3@1 { | ||
458 | pins = "PG9", "PG10"; | ||
459 | function = "uart3"; | ||
460 | }; | ||
461 | |||
462 | uart3_cts_rts_pins_a: uart3-cts-rts@0 { | ||
463 | pins = "PG11", "PG12"; | ||
464 | function = "uart3"; | ||
465 | }; | ||
466 | }; | ||
467 | |||
468 | pwm: pwm@01c20e00 { | 58 | pwm: pwm@01c20e00 { |
469 | compatible = "allwinner,sun5i-a10s-pwm"; | 59 | compatible = "allwinner,sun5i-a10s-pwm"; |
470 | reg = <0x01c20e00 0xc>; | 60 | reg = <0x01c20e00 0xc>; |
@@ -473,18 +63,6 @@ | |||
473 | status = "disabled"; | 63 | status = "disabled"; |
474 | }; | 64 | }; |
475 | 65 | ||
476 | timer@01c20c00 { | ||
477 | compatible = "allwinner,sun4i-a10-timer"; | ||
478 | reg = <0x01c20c00 0x90>; | ||
479 | interrupts = <22>; | ||
480 | clocks = <&ccu CLK_HOSC>; | ||
481 | }; | ||
482 | |||
483 | wdt: watchdog@01c20c90 { | ||
484 | compatible = "allwinner,sun4i-a10-wdt"; | ||
485 | reg = <0x01c20c90 0x10>; | ||
486 | }; | ||
487 | |||
488 | spdif: spdif@01c21000 { | 66 | spdif: spdif@01c21000 { |
489 | #sound-dai-cells = <0>; | 67 | #sound-dai-cells = <0>; |
490 | compatible = "allwinner,sun4i-a10-spdif"; | 68 | compatible = "allwinner,sun4i-a10-spdif"; |
@@ -498,15 +76,6 @@ | |||
498 | status = "disabled"; | 76 | status = "disabled"; |
499 | }; | 77 | }; |
500 | 78 | ||
501 | ir0: ir@01c21800 { | ||
502 | compatible = "allwinner,sun4i-a10-ir"; | ||
503 | clocks = <&ccu CLK_APB0_IR>, <&ccu CLK_IR>; | ||
504 | clock-names = "apb", "ir"; | ||
505 | interrupts = <5>; | ||
506 | reg = <0x01c21800 0x40>; | ||
507 | status = "disabled"; | ||
508 | }; | ||
509 | |||
510 | i2s0: i2s@01c22400 { | 79 | i2s0: i2s@01c22400 { |
511 | #sound-dai-cells = <0>; | 80 | #sound-dai-cells = <0>; |
512 | compatible = "allwinner,sun4i-a10-i2s"; | 81 | compatible = "allwinner,sun4i-a10-i2s"; |
@@ -519,168 +88,39 @@ | |||
519 | dma-names = "rx", "tx"; | 88 | dma-names = "rx", "tx"; |
520 | status = "disabled"; | 89 | status = "disabled"; |
521 | }; | 90 | }; |
91 | }; | ||
92 | }; | ||
522 | 93 | ||
523 | lradc: lradc@01c22800 { | 94 | &ccu { |
524 | compatible = "allwinner,sun4i-a10-lradc-keys"; | 95 | compatible = "nextthing,gr8-ccu"; |
525 | reg = <0x01c22800 0x100>; | 96 | }; |
526 | interrupts = <31>; | ||
527 | status = "disabled"; | ||
528 | }; | ||
529 | |||
530 | codec: codec@01c22c00 { | ||
531 | #sound-dai-cells = <0>; | ||
532 | compatible = "allwinner,sun4i-a10-codec"; | ||
533 | reg = <0x01c22c00 0x40>; | ||
534 | interrupts = <30>; | ||
535 | clocks = <&ccu CLK_APB0_CODEC>, <&ccu CLK_CODEC>; | ||
536 | clock-names = "apb", "codec"; | ||
537 | dmas = <&dma SUN4I_DMA_NORMAL 19>, | ||
538 | <&dma SUN4I_DMA_NORMAL 19>; | ||
539 | dma-names = "rx", "tx"; | ||
540 | status = "disabled"; | ||
541 | }; | ||
542 | |||
543 | rtp: rtp@01c25000 { | ||
544 | compatible = "allwinner,sun5i-a13-ts"; | ||
545 | reg = <0x01c25000 0x100>; | ||
546 | interrupts = <29>; | ||
547 | #thermal-sensor-cells = <0>; | ||
548 | }; | ||
549 | |||
550 | uart1: serial@01c28400 { | ||
551 | compatible = "snps,dw-apb-uart"; | ||
552 | reg = <0x01c28400 0x400>; | ||
553 | interrupts = <2>; | ||
554 | reg-shift = <2>; | ||
555 | reg-io-width = <4>; | ||
556 | clocks = <&ccu CLK_APB1_UART1>; | ||
557 | status = "disabled"; | ||
558 | }; | ||
559 | |||
560 | uart2: serial@01c28800 { | ||
561 | compatible = "snps,dw-apb-uart"; | ||
562 | reg = <0x01c28800 0x400>; | ||
563 | interrupts = <3>; | ||
564 | reg-shift = <2>; | ||
565 | reg-io-width = <4>; | ||
566 | clocks = <&ccu CLK_APB1_UART2>; | ||
567 | status = "disabled"; | ||
568 | }; | ||
569 | |||
570 | uart3: serial@01c28c00 { | ||
571 | compatible = "snps,dw-apb-uart"; | ||
572 | reg = <0x01c28c00 0x400>; | ||
573 | interrupts = <4>; | ||
574 | reg-shift = <2>; | ||
575 | reg-io-width = <4>; | ||
576 | clocks = <&ccu CLK_APB1_UART3>; | ||
577 | status = "disabled"; | ||
578 | }; | ||
579 | |||
580 | i2c0: i2c@01c2ac00 { | ||
581 | compatible = "allwinner,sun4i-a10-i2c"; | ||
582 | reg = <0x01c2ac00 0x400>; | ||
583 | interrupts = <7>; | ||
584 | clocks = <&ccu CLK_APB1_I2C0>; | ||
585 | status = "disabled"; | ||
586 | #address-cells = <1>; | ||
587 | #size-cells = <0>; | ||
588 | }; | ||
589 | |||
590 | i2c1: i2c@01c2b000 { | ||
591 | compatible = "allwinner,sun4i-a10-i2c"; | ||
592 | reg = <0x01c2b000 0x400>; | ||
593 | interrupts = <8>; | ||
594 | clocks = <&ccu CLK_APB1_I2C1>; | ||
595 | status = "disabled"; | ||
596 | #address-cells = <1>; | ||
597 | #size-cells = <0>; | ||
598 | }; | ||
599 | |||
600 | i2c2: i2c@01c2b400 { | ||
601 | compatible = "allwinner,sun4i-a10-i2c"; | ||
602 | reg = <0x01c2b400 0x400>; | ||
603 | interrupts = <9>; | ||
604 | clocks = <&ccu CLK_APB1_I2C2>; | ||
605 | status = "disabled"; | ||
606 | #address-cells = <1>; | ||
607 | #size-cells = <0>; | ||
608 | }; | ||
609 | |||
610 | timer@01c60000 { | ||
611 | compatible = "allwinner,sun5i-a13-hstimer"; | ||
612 | reg = <0x01c60000 0x1000>; | ||
613 | interrupts = <82>, <83>; | ||
614 | clocks = <&ccu CLK_AHB_HSTIMER>; | ||
615 | }; | ||
616 | |||
617 | fe0: display-frontend@01e00000 { | ||
618 | compatible = "allwinner,sun5i-a13-display-frontend"; | ||
619 | reg = <0x01e00000 0x20000>; | ||
620 | interrupts = <47>; | ||
621 | clocks = <&ccu CLK_AHB_DE_FE>, <&ccu CLK_DE_FE>, | ||
622 | <&ccu CLK_DRAM_DE_FE>; | ||
623 | clock-names = "ahb", "mod", | ||
624 | "ram"; | ||
625 | resets = <&ccu RST_DE_FE>; | ||
626 | status = "disabled"; | ||
627 | |||
628 | ports { | ||
629 | #address-cells = <1>; | ||
630 | #size-cells = <0>; | ||
631 | |||
632 | fe0_out: port@1 { | ||
633 | #address-cells = <1>; | ||
634 | #size-cells = <0>; | ||
635 | reg = <1>; | ||
636 | |||
637 | fe0_out_be0: endpoint@0 { | ||
638 | reg = <0>; | ||
639 | remote-endpoint = <&be0_in_fe0>; | ||
640 | }; | ||
641 | }; | ||
642 | }; | ||
643 | }; | ||
644 | |||
645 | be0: display-backend@01e60000 { | ||
646 | compatible = "allwinner,sun5i-a13-display-backend"; | ||
647 | reg = <0x01e60000 0x10000>; | ||
648 | clocks = <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
649 | <&ccu CLK_DRAM_DE_BE>; | ||
650 | clock-names = "ahb", "mod", | ||
651 | "ram"; | ||
652 | resets = <&ccu RST_DE_BE>; | ||
653 | status = "disabled"; | ||
654 | 97 | ||
655 | assigned-clocks = <&ccu CLK_DE_BE>; | 98 | &pio { |
656 | assigned-clock-rates = <300000000>; | 99 | compatible = "nextthing,gr8-pinctrl"; |
657 | 100 | ||
658 | ports { | 101 | i2s0_data_pins_a: i2s0-data@0 { |
659 | #address-cells = <1>; | 102 | pins = "PB6", "PB7", "PB8", "PB9"; |
660 | #size-cells = <0>; | 103 | function = "i2s0"; |
104 | }; | ||
661 | 105 | ||
662 | be0_in: port@0 { | 106 | i2s0_mclk_pins_a: i2s0-mclk@0 { |
663 | #address-cells = <1>; | 107 | pins = "PB5"; |
664 | #size-cells = <0>; | 108 | function = "i2s0"; |
665 | reg = <0>; | 109 | }; |
666 | 110 | ||
667 | be0_in_fe0: endpoint@0 { | 111 | pwm1_pins: pwm1 { |
668 | reg = <0>; | 112 | pins = "PG13"; |
669 | remote-endpoint = <&fe0_out_be0>; | 113 | function = "pwm1"; |
670 | }; | 114 | }; |
671 | }; | ||
672 | 115 | ||
673 | be0_out: port@1 { | 116 | spdif_tx_pins_a: spdif@0 { |
674 | #address-cells = <1>; | 117 | pins = "PB10"; |
675 | #size-cells = <0>; | 118 | function = "spdif"; |
676 | reg = <1>; | 119 | bias-pull-up; |
120 | }; | ||
677 | 121 | ||
678 | be0_out_tcon0: endpoint@0 { | 122 | uart1_cts_rts_pins_a: uart1-cts-rts@0 { |
679 | reg = <0>; | 123 | pins = "PG5", "PG6"; |
680 | remote-endpoint = <&tcon0_in_be0>; | 124 | function = "uart1"; |
681 | }; | ||
682 | }; | ||
683 | }; | ||
684 | }; | ||
685 | }; | 125 | }; |
686 | }; | 126 | }; |
diff --git a/arch/arm/boot/dts/sun5i-r8-chip.dts b/arch/arm/boot/dts/sun5i-r8-chip.dts index e86fa46fdd45..d0785602663b 100644 --- a/arch/arm/boot/dts/sun5i-r8-chip.dts +++ b/arch/arm/boot/dts/sun5i-r8-chip.dts | |||
@@ -128,6 +128,10 @@ | |||
128 | 128 | ||
129 | #include "axp209.dtsi" | 129 | #include "axp209.dtsi" |
130 | 130 | ||
131 | &ac_power_supply { | ||
132 | status = "okay"; | ||
133 | }; | ||
134 | |||
131 | &i2c1 { | 135 | &i2c1 { |
132 | pinctrl-names = "default"; | 136 | pinctrl-names = "default"; |
133 | pinctrl-0 = <&i2c1_pins_a>; | 137 | pinctrl-0 = <&i2c1_pins_a>; |
@@ -281,7 +285,7 @@ | |||
281 | &uart3 { | 285 | &uart3 { |
282 | pinctrl-names = "default"; | 286 | pinctrl-names = "default"; |
283 | pinctrl-0 = <&uart3_pins_a>, | 287 | pinctrl-0 = <&uart3_pins_a>, |
284 | <&uart3_pins_cts_rts_a>; | 288 | <&uart3_cts_rts_pins_a>; |
285 | status = "okay"; | 289 | status = "okay"; |
286 | }; | 290 | }; |
287 | 291 | ||
diff --git a/arch/arm/boot/dts/sun5i-r8.dtsi b/arch/arm/boot/dts/sun5i-r8.dtsi index 4c1141396c99..de35dbcd1191 100644 --- a/arch/arm/boot/dts/sun5i-r8.dtsi +++ b/arch/arm/boot/dts/sun5i-r8.dtsi | |||
@@ -45,43 +45,3 @@ | |||
45 | 45 | ||
46 | #include "sun5i-a13.dtsi" | 46 | #include "sun5i-a13.dtsi" |
47 | 47 | ||
48 | / { | ||
49 | chosen { | ||
50 | framebuffer@1 { | ||
51 | compatible = "allwinner,simple-framebuffer", | ||
52 | "simple-framebuffer"; | ||
53 | allwinner,pipeline = "de_be0-lcd0-tve0"; | ||
54 | clocks = <&ccu CLK_AHB_TVE>, <&ccu CLK_AHB_LCD>, | ||
55 | <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
56 | <&ccu CLK_TCON_CH1>, <&ccu CLK_DRAM_DE_BE>; | ||
57 | status = "disabled"; | ||
58 | }; | ||
59 | }; | ||
60 | |||
61 | soc@01c00000 { | ||
62 | tve0: tv-encoder@01c0a000 { | ||
63 | compatible = "allwinner,sun4i-a10-tv-encoder"; | ||
64 | reg = <0x01c0a000 0x1000>; | ||
65 | clocks = <&ccu CLK_AHB_TVE>; | ||
66 | resets = <&ccu RST_TVE>; | ||
67 | status = "disabled"; | ||
68 | |||
69 | port { | ||
70 | #address-cells = <1>; | ||
71 | #size-cells = <0>; | ||
72 | |||
73 | tve0_in_tcon0: endpoint@0 { | ||
74 | reg = <0>; | ||
75 | remote-endpoint = <&tcon0_out_tve0>; | ||
76 | }; | ||
77 | }; | ||
78 | }; | ||
79 | }; | ||
80 | }; | ||
81 | |||
82 | &tcon0_out { | ||
83 | tcon0_out_tve0: endpoint@1 { | ||
84 | reg = <1>; | ||
85 | remote-endpoint = <&tve0_in_tcon0>; | ||
86 | }; | ||
87 | }; | ||
diff --git a/arch/arm/boot/dts/sun5i.dtsi b/arch/arm/boot/dts/sun5i.dtsi index a9574a6cd95c..5175f9cc9bed 100644 --- a/arch/arm/boot/dts/sun5i.dtsi +++ b/arch/arm/boot/dts/sun5i.dtsi | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/clock/sun5i-ccu.h> | 47 | #include <dt-bindings/clock/sun5i-ccu.h> |
48 | #include <dt-bindings/dma/sun4i-a10.h> | 48 | #include <dt-bindings/dma/sun4i-a10.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | #include <dt-bindings/reset/sun5i-ccu.h> | 49 | #include <dt-bindings/reset/sun5i-ccu.h> |
51 | 50 | ||
52 | / { | 51 | / { |
@@ -64,6 +63,31 @@ | |||
64 | }; | 63 | }; |
65 | }; | 64 | }; |
66 | 65 | ||
66 | chosen { | ||
67 | #address-cells = <1>; | ||
68 | #size-cells = <1>; | ||
69 | ranges; | ||
70 | |||
71 | framebuffer@0 { | ||
72 | compatible = "allwinner,simple-framebuffer", | ||
73 | "simple-framebuffer"; | ||
74 | allwinner,pipeline = "de_be0-lcd0"; | ||
75 | clocks = <&ccu CLK_AHB_LCD>, <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
76 | <&ccu CLK_TCON_CH0>, <&ccu CLK_DRAM_DE_BE>; | ||
77 | status = "disabled"; | ||
78 | }; | ||
79 | |||
80 | framebuffer@1 { | ||
81 | compatible = "allwinner,simple-framebuffer", | ||
82 | "simple-framebuffer"; | ||
83 | allwinner,pipeline = "de_be0-lcd0-tve0"; | ||
84 | clocks = <&ccu CLK_AHB_TVE>, <&ccu CLK_AHB_LCD>, | ||
85 | <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
86 | <&ccu CLK_TCON_CH1>, <&ccu CLK_DRAM_DE_BE>; | ||
87 | status = "disabled"; | ||
88 | }; | ||
89 | }; | ||
90 | |||
67 | clocks { | 91 | clocks { |
68 | #address-cells = <1>; | 92 | #address-cells = <1>; |
69 | #size-cells = <1>; | 93 | #size-cells = <1>; |
@@ -105,6 +129,12 @@ | |||
105 | ranges = <0 0x00000000 0xc000>; | 129 | ranges = <0 0x00000000 0xc000>; |
106 | }; | 130 | }; |
107 | 131 | ||
132 | emac_sram: sram-section@8000 { | ||
133 | compatible = "allwinner,sun4i-a10-sram-a3-a4"; | ||
134 | reg = <0x8000 0x4000>; | ||
135 | status = "disabled"; | ||
136 | }; | ||
137 | |||
108 | sram_d: sram@00010000 { | 138 | sram_d: sram@00010000 { |
109 | compatible = "mmio-sram"; | 139 | compatible = "mmio-sram"; |
110 | reg = <0x00010000 0x1000>; | 140 | reg = <0x00010000 0x1000>; |
@@ -128,6 +158,19 @@ | |||
128 | #dma-cells = <2>; | 158 | #dma-cells = <2>; |
129 | }; | 159 | }; |
130 | 160 | ||
161 | nfc: nand@01c03000 { | ||
162 | compatible = "allwinner,sun4i-a10-nand"; | ||
163 | reg = <0x01c03000 0x1000>; | ||
164 | interrupts = <37>; | ||
165 | clocks = <&ccu CLK_AHB_NAND>, <&ccu CLK_NAND>; | ||
166 | clock-names = "ahb", "mod"; | ||
167 | dmas = <&dma SUN4I_DMA_DEDICATED 3>; | ||
168 | dma-names = "rxtx"; | ||
169 | status = "disabled"; | ||
170 | #address-cells = <1>; | ||
171 | #size-cells = <0>; | ||
172 | }; | ||
173 | |||
131 | spi0: spi@01c05000 { | 174 | spi0: spi@01c05000 { |
132 | compatible = "allwinner,sun4i-a10-spi"; | 175 | compatible = "allwinner,sun4i-a10-spi"; |
133 | reg = <0x01c05000 0x1000>; | 176 | reg = <0x01c05000 0x1000>; |
@@ -156,6 +199,84 @@ | |||
156 | #size-cells = <0>; | 199 | #size-cells = <0>; |
157 | }; | 200 | }; |
158 | 201 | ||
202 | tve0: tv-encoder@01c0a000 { | ||
203 | compatible = "allwinner,sun4i-a10-tv-encoder"; | ||
204 | reg = <0x01c0a000 0x1000>; | ||
205 | clocks = <&ccu CLK_AHB_TVE>; | ||
206 | resets = <&ccu RST_TVE>; | ||
207 | status = "disabled"; | ||
208 | |||
209 | port { | ||
210 | #address-cells = <1>; | ||
211 | #size-cells = <0>; | ||
212 | |||
213 | tve0_in_tcon0: endpoint@0 { | ||
214 | reg = <0>; | ||
215 | remote-endpoint = <&tcon0_out_tve0>; | ||
216 | }; | ||
217 | }; | ||
218 | }; | ||
219 | |||
220 | emac: ethernet@01c0b000 { | ||
221 | compatible = "allwinner,sun4i-a10-emac"; | ||
222 | reg = <0x01c0b000 0x1000>; | ||
223 | interrupts = <55>; | ||
224 | clocks = <&ccu CLK_AHB_EMAC>; | ||
225 | allwinner,sram = <&emac_sram 1>; | ||
226 | status = "disabled"; | ||
227 | }; | ||
228 | |||
229 | mdio: mdio@01c0b080 { | ||
230 | compatible = "allwinner,sun4i-a10-mdio"; | ||
231 | reg = <0x01c0b080 0x14>; | ||
232 | status = "disabled"; | ||
233 | #address-cells = <1>; | ||
234 | #size-cells = <0>; | ||
235 | }; | ||
236 | |||
237 | tcon0: lcd-controller@01c0c000 { | ||
238 | compatible = "allwinner,sun5i-a13-tcon"; | ||
239 | reg = <0x01c0c000 0x1000>; | ||
240 | interrupts = <44>; | ||
241 | resets = <&ccu RST_LCD>; | ||
242 | reset-names = "lcd"; | ||
243 | clocks = <&ccu CLK_AHB_LCD>, | ||
244 | <&ccu CLK_TCON_CH0>, | ||
245 | <&ccu CLK_TCON_CH1>; | ||
246 | clock-names = "ahb", | ||
247 | "tcon-ch0", | ||
248 | "tcon-ch1"; | ||
249 | clock-output-names = "tcon-pixel-clock"; | ||
250 | status = "disabled"; | ||
251 | |||
252 | ports { | ||
253 | #address-cells = <1>; | ||
254 | #size-cells = <0>; | ||
255 | |||
256 | tcon0_in: port@0 { | ||
257 | #address-cells = <1>; | ||
258 | #size-cells = <0>; | ||
259 | reg = <0>; | ||
260 | |||
261 | tcon0_in_be0: endpoint@0 { | ||
262 | reg = <0>; | ||
263 | remote-endpoint = <&be0_out_tcon0>; | ||
264 | }; | ||
265 | }; | ||
266 | |||
267 | tcon0_out: port@1 { | ||
268 | #address-cells = <1>; | ||
269 | #size-cells = <0>; | ||
270 | reg = <1>; | ||
271 | |||
272 | tcon0_out_tve0: endpoint@1 { | ||
273 | reg = <1>; | ||
274 | remote-endpoint = <&tve0_in_tcon0>; | ||
275 | }; | ||
276 | }; | ||
277 | }; | ||
278 | }; | ||
279 | |||
159 | mmc0: mmc@01c0f000 { | 280 | mmc0: mmc@01c0f000 { |
160 | compatible = "allwinner,sun5i-a13-mmc"; | 281 | compatible = "allwinner,sun5i-a13-mmc"; |
161 | reg = <0x01c0f000 0x1000>; | 282 | reg = <0x01c0f000 0x1000>; |
@@ -273,6 +394,15 @@ | |||
273 | #interrupt-cells = <3>; | 394 | #interrupt-cells = <3>; |
274 | #gpio-cells = <3>; | 395 | #gpio-cells = <3>; |
275 | 396 | ||
397 | emac_pins_a: emac0@0 { | ||
398 | pins = "PD6", "PD7", "PD10", | ||
399 | "PD11", "PD12", "PD13", "PD14", | ||
400 | "PD15", "PD18", "PD19", "PD20", | ||
401 | "PD21", "PD22", "PD23", "PD24", | ||
402 | "PD25", "PD26", "PD27"; | ||
403 | function = "emac"; | ||
404 | }; | ||
405 | |||
276 | i2c0_pins_a: i2c0@0 { | 406 | i2c0_pins_a: i2c0@0 { |
277 | pins = "PB0", "PB1"; | 407 | pins = "PB0", "PB1"; |
278 | function = "i2c0"; | 408 | function = "i2c0"; |
@@ -288,6 +418,11 @@ | |||
288 | function = "i2c2"; | 418 | function = "i2c2"; |
289 | }; | 419 | }; |
290 | 420 | ||
421 | ir0_rx_pins_a: ir0@0 { | ||
422 | pins = "PB4"; | ||
423 | function = "ir0"; | ||
424 | }; | ||
425 | |||
291 | lcd_rgb565_pins: lcd_rgb565@0 { | 426 | lcd_rgb565_pins: lcd_rgb565@0 { |
292 | pins = "PD3", "PD4", "PD5", "PD6", "PD7", | 427 | pins = "PD3", "PD4", "PD5", "PD6", "PD7", |
293 | "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", | 428 | "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", |
@@ -296,6 +431,14 @@ | |||
296 | function = "lcd0"; | 431 | function = "lcd0"; |
297 | }; | 432 | }; |
298 | 433 | ||
434 | lcd_rgb666_pins: lcd_rgb666@0 { | ||
435 | pins = "PD2", "PD3", "PD4", "PD5", "PD6", "PD7", | ||
436 | "PD10", "PD11", "PD12", "PD13", "PD14", "PD15", | ||
437 | "PD18", "PD19", "PD20", "PD21", "PD22", "PD23", | ||
438 | "PD24", "PD25", "PD26", "PD27"; | ||
439 | function = "lcd0"; | ||
440 | }; | ||
441 | |||
299 | mmc0_pins_a: mmc0@0 { | 442 | mmc0_pins_a: mmc0@0 { |
300 | pins = "PF0", "PF1", "PF2", "PF3", | 443 | pins = "PF0", "PF1", "PF2", "PF3", |
301 | "PF4", "PF5"; | 444 | "PF4", "PF5"; |
@@ -321,6 +464,24 @@ | |||
321 | bias-pull-up; | 464 | bias-pull-up; |
322 | }; | 465 | }; |
323 | 466 | ||
467 | nand_pins_a: nand-base0@0 { | ||
468 | pins = "PC0", "PC1", "PC2", | ||
469 | "PC5", "PC8", "PC9", "PC10", | ||
470 | "PC11", "PC12", "PC13", "PC14", | ||
471 | "PC15"; | ||
472 | function = "nand0"; | ||
473 | }; | ||
474 | |||
475 | nand_cs0_pins_a: nand-cs@0 { | ||
476 | pins = "PC4"; | ||
477 | function = "nand0"; | ||
478 | }; | ||
479 | |||
480 | nand_rb0_pins_a: nand-rb@0 { | ||
481 | pins = "PC6"; | ||
482 | function = "nand0"; | ||
483 | }; | ||
484 | |||
324 | spi2_pins_a: spi2@0 { | 485 | spi2_pins_a: spi2@0 { |
325 | pins = "PE1", "PE2", "PE3"; | 486 | pins = "PE1", "PE2", "PE3"; |
326 | function = "spi2"; | 487 | function = "spi2"; |
@@ -331,12 +492,32 @@ | |||
331 | function = "spi2"; | 492 | function = "spi2"; |
332 | }; | 493 | }; |
333 | 494 | ||
495 | uart1_pins_a: uart1@0 { | ||
496 | pins = "PE10", "PE11"; | ||
497 | function = "uart1"; | ||
498 | }; | ||
499 | |||
500 | uart1_pins_b: uart1@1 { | ||
501 | pins = "PG3", "PG4"; | ||
502 | function = "uart1"; | ||
503 | }; | ||
504 | |||
505 | uart2_pins_a: uart2@0 { | ||
506 | pins = "PD2", "PD3"; | ||
507 | function = "uart2"; | ||
508 | }; | ||
509 | |||
510 | uart2_cts_rts_pins_a: uart2-cts-rts@0 { | ||
511 | pins = "PD4", "PD5"; | ||
512 | function = "uart2"; | ||
513 | }; | ||
514 | |||
334 | uart3_pins_a: uart3@0 { | 515 | uart3_pins_a: uart3@0 { |
335 | pins = "PG9", "PG10"; | 516 | pins = "PG9", "PG10"; |
336 | function = "uart3"; | 517 | function = "uart3"; |
337 | }; | 518 | }; |
338 | 519 | ||
339 | uart3_pins_cts_rts_a: uart3-cts-rts@0 { | 520 | uart3_cts_rts_pins_a: uart3-cts-rts@0 { |
340 | pins = "PG11", "PG12"; | 521 | pins = "PG11", "PG12"; |
341 | function = "uart3"; | 522 | function = "uart3"; |
342 | }; | 523 | }; |
@@ -359,6 +540,15 @@ | |||
359 | reg = <0x01c20c90 0x10>; | 540 | reg = <0x01c20c90 0x10>; |
360 | }; | 541 | }; |
361 | 542 | ||
543 | ir0: ir@01c21800 { | ||
544 | compatible = "allwinner,sun4i-a10-ir"; | ||
545 | clocks = <&ccu CLK_APB0_IR>, <&ccu CLK_IR>; | ||
546 | clock-names = "apb", "ir"; | ||
547 | interrupts = <5>; | ||
548 | reg = <0x01c21800 0x40>; | ||
549 | status = "disabled"; | ||
550 | }; | ||
551 | |||
362 | lradc: lradc@01c22800 { | 552 | lradc: lradc@01c22800 { |
363 | compatible = "allwinner,sun4i-a10-lradc-keys"; | 553 | compatible = "allwinner,sun4i-a10-lradc-keys"; |
364 | reg = <0x01c22800 0x100>; | 554 | reg = <0x01c22800 0x100>; |
@@ -391,6 +581,16 @@ | |||
391 | #thermal-sensor-cells = <0>; | 581 | #thermal-sensor-cells = <0>; |
392 | }; | 582 | }; |
393 | 583 | ||
584 | uart0: serial@01c28000 { | ||
585 | compatible = "snps,dw-apb-uart"; | ||
586 | reg = <0x01c28000 0x400>; | ||
587 | interrupts = <1>; | ||
588 | reg-shift = <2>; | ||
589 | reg-io-width = <4>; | ||
590 | clocks = <&ccu CLK_APB1_UART0>; | ||
591 | status = "disabled"; | ||
592 | }; | ||
593 | |||
394 | uart1: serial@01c28400 { | 594 | uart1: serial@01c28400 { |
395 | compatible = "snps,dw-apb-uart"; | 595 | compatible = "snps,dw-apb-uart"; |
396 | reg = <0x01c28400 0x400>; | 596 | reg = <0x01c28400 0x400>; |
@@ -401,6 +601,16 @@ | |||
401 | status = "disabled"; | 601 | status = "disabled"; |
402 | }; | 602 | }; |
403 | 603 | ||
604 | uart2: serial@01c28800 { | ||
605 | compatible = "snps,dw-apb-uart"; | ||
606 | reg = <0x01c28800 0x400>; | ||
607 | interrupts = <3>; | ||
608 | reg-shift = <2>; | ||
609 | reg-io-width = <4>; | ||
610 | clocks = <&ccu CLK_APB1_UART2>; | ||
611 | status = "disabled"; | ||
612 | }; | ||
613 | |||
404 | uart3: serial@01c28c00 { | 614 | uart3: serial@01c28c00 { |
405 | compatible = "snps,dw-apb-uart"; | 615 | compatible = "snps,dw-apb-uart"; |
406 | reg = <0x01c28c00 0x400>; | 616 | reg = <0x01c28c00 0x400>; |
@@ -447,5 +657,75 @@ | |||
447 | interrupts = <82>, <83>; | 657 | interrupts = <82>, <83>; |
448 | clocks = <&ccu CLK_AHB_HSTIMER>; | 658 | clocks = <&ccu CLK_AHB_HSTIMER>; |
449 | }; | 659 | }; |
660 | |||
661 | fe0: display-frontend@01e00000 { | ||
662 | compatible = "allwinner,sun5i-a13-display-frontend"; | ||
663 | reg = <0x01e00000 0x20000>; | ||
664 | interrupts = <47>; | ||
665 | clocks = <&ccu CLK_DE_FE>, <&ccu CLK_DE_FE>, | ||
666 | <&ccu CLK_DRAM_DE_FE>; | ||
667 | clock-names = "ahb", "mod", | ||
668 | "ram"; | ||
669 | resets = <&ccu RST_DE_FE>; | ||
670 | status = "disabled"; | ||
671 | |||
672 | ports { | ||
673 | #address-cells = <1>; | ||
674 | #size-cells = <0>; | ||
675 | |||
676 | fe0_out: port@1 { | ||
677 | #address-cells = <1>; | ||
678 | #size-cells = <0>; | ||
679 | reg = <1>; | ||
680 | |||
681 | fe0_out_be0: endpoint@0 { | ||
682 | reg = <0>; | ||
683 | remote-endpoint = <&be0_in_fe0>; | ||
684 | }; | ||
685 | }; | ||
686 | }; | ||
687 | }; | ||
688 | |||
689 | be0: display-backend@01e60000 { | ||
690 | compatible = "allwinner,sun5i-a13-display-backend"; | ||
691 | reg = <0x01e60000 0x10000>; | ||
692 | interrupts = <47>; | ||
693 | clocks = <&ccu CLK_AHB_DE_BE>, <&ccu CLK_DE_BE>, | ||
694 | <&ccu CLK_DRAM_DE_BE>; | ||
695 | clock-names = "ahb", "mod", | ||
696 | "ram"; | ||
697 | resets = <&ccu RST_DE_BE>; | ||
698 | status = "disabled"; | ||
699 | |||
700 | assigned-clocks = <&ccu CLK_DE_BE>; | ||
701 | assigned-clock-rates = <300000000>; | ||
702 | |||
703 | ports { | ||
704 | #address-cells = <1>; | ||
705 | #size-cells = <0>; | ||
706 | |||
707 | be0_in: port@0 { | ||
708 | #address-cells = <1>; | ||
709 | #size-cells = <0>; | ||
710 | reg = <0>; | ||
711 | |||
712 | be0_in_fe0: endpoint@0 { | ||
713 | reg = <0>; | ||
714 | remote-endpoint = <&fe0_out_be0>; | ||
715 | }; | ||
716 | }; | ||
717 | |||
718 | be0_out: port@1 { | ||
719 | #address-cells = <1>; | ||
720 | #size-cells = <0>; | ||
721 | reg = <1>; | ||
722 | |||
723 | be0_out_tcon0: endpoint@0 { | ||
724 | reg = <0>; | ||
725 | remote-endpoint = <&tcon0_in_be0>; | ||
726 | }; | ||
727 | }; | ||
728 | }; | ||
729 | }; | ||
450 | }; | 730 | }; |
451 | }; | 731 | }; |
diff --git a/arch/arm/boot/dts/sun6i-a31-app4-evb1.dts b/arch/arm/boot/dts/sun6i-a31-app4-evb1.dts index effbdc766938..7f34323a668c 100644 --- a/arch/arm/boot/dts/sun6i-a31-app4-evb1.dts +++ b/arch/arm/boot/dts/sun6i-a31-app4-evb1.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sunxi-common-regulators.dtsi" | 47 | #include "sunxi-common-regulators.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "Allwinner A31 APP4 EVB1 Evaluation Board"; | 52 | model = "Allwinner A31 APP4 EVB1 Evaluation Board"; |
diff --git a/arch/arm/boot/dts/sun6i-a31-colombus.dts b/arch/arm/boot/dts/sun6i-a31-colombus.dts index f5ececd45bc0..85eff0307ca4 100644 --- a/arch/arm/boot/dts/sun6i-a31-colombus.dts +++ b/arch/arm/boot/dts/sun6i-a31-colombus.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sunxi-common-regulators.dtsi" | 47 | #include "sunxi-common-regulators.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "WITS A31 Colombus Evaluation Board"; | 52 | model = "WITS A31 Colombus Evaluation Board"; |
diff --git a/arch/arm/boot/dts/sun6i-a31-hummingbird.dts b/arch/arm/boot/dts/sun6i-a31-hummingbird.dts index f094eeb6c499..d4f74f476f25 100644 --- a/arch/arm/boot/dts/sun6i-a31-hummingbird.dts +++ b/arch/arm/boot/dts/sun6i-a31-hummingbird.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sunxi-common-regulators.dtsi" | 47 | #include "sunxi-common-regulators.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "Merrii A31 Hummingbird"; | 52 | model = "Merrii A31 Hummingbird"; |
diff --git a/arch/arm/boot/dts/sun6i-a31-i7.dts b/arch/arm/boot/dts/sun6i-a31-i7.dts index 2bc57d2dcd80..010a84c7c012 100644 --- a/arch/arm/boot/dts/sun6i-a31-i7.dts +++ b/arch/arm/boot/dts/sun6i-a31-i7.dts | |||
@@ -45,7 +45,6 @@ | |||
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
49 | 48 | ||
50 | / { | 49 | / { |
51 | model = "Mele I7 Quad top set box"; | 50 | model = "Mele I7 Quad top set box"; |
diff --git a/arch/arm/boot/dts/sun6i-a31-m9.dts b/arch/arm/boot/dts/sun6i-a31-m9.dts index 8af5b667a46d..50605fd4449e 100644 --- a/arch/arm/boot/dts/sun6i-a31-m9.dts +++ b/arch/arm/boot/dts/sun6i-a31-m9.dts | |||
@@ -45,7 +45,6 @@ | |||
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
49 | 48 | ||
50 | / { | 49 | / { |
51 | model = "Mele M9 top set box"; | 50 | model = "Mele M9 top set box"; |
diff --git a/arch/arm/boot/dts/sun6i-a31-mele-a1000g-quad.dts b/arch/arm/boot/dts/sun6i-a31-mele-a1000g-quad.dts index bf0f5831126f..5219556e9f73 100644 --- a/arch/arm/boot/dts/sun6i-a31-mele-a1000g-quad.dts +++ b/arch/arm/boot/dts/sun6i-a31-mele-a1000g-quad.dts | |||
@@ -45,7 +45,6 @@ | |||
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
49 | 48 | ||
50 | / { | 49 | / { |
51 | model = "Mele A1000G Quad top set box"; | 50 | model = "Mele A1000G Quad top set box"; |
diff --git a/arch/arm/boot/dts/sun6i-a31.dtsi b/arch/arm/boot/dts/sun6i-a31.dtsi index a4b96184cac1..9c999d3788f6 100644 --- a/arch/arm/boot/dts/sun6i-a31.dtsi +++ b/arch/arm/boot/dts/sun6i-a31.dtsi | |||
@@ -48,7 +48,6 @@ | |||
48 | #include <dt-bindings/thermal/thermal.h> | 48 | #include <dt-bindings/thermal/thermal.h> |
49 | 49 | ||
50 | #include <dt-bindings/clock/sun6i-a31-ccu.h> | 50 | #include <dt-bindings/clock/sun6i-a31-ccu.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | #include <dt-bindings/reset/sun6i-a31-ccu.h> | 51 | #include <dt-bindings/reset/sun6i-a31-ccu.h> |
53 | 52 | ||
54 | / { | 53 | / { |
diff --git a/arch/arm/boot/dts/sun6i-a31s-cs908.dts b/arch/arm/boot/dts/sun6i-a31s-cs908.dts index 5e8f8c4f2b30..75e578159c3a 100644 --- a/arch/arm/boot/dts/sun6i-a31s-cs908.dts +++ b/arch/arm/boot/dts/sun6i-a31s-cs908.dts | |||
@@ -43,8 +43,6 @@ | |||
43 | /dts-v1/; | 43 | /dts-v1/; |
44 | #include "sun6i-a31s.dtsi" | 44 | #include "sun6i-a31s.dtsi" |
45 | 45 | ||
46 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
47 | |||
48 | / { | 46 | / { |
49 | model = "CSQ CS908 top set box"; | 47 | model = "CSQ CS908 top set box"; |
50 | compatible = "csq,cs908", "allwinner,sun6i-a31s"; | 48 | compatible = "csq,cs908", "allwinner,sun6i-a31s"; |
diff --git a/arch/arm/boot/dts/sun6i-a31s-primo81.dts b/arch/arm/boot/dts/sun6i-a31s-primo81.dts index 2238eda318f6..f3712753fa42 100644 --- a/arch/arm/boot/dts/sun6i-a31s-primo81.dts +++ b/arch/arm/boot/dts/sun6i-a31s-primo81.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/input/input.h> | 50 | #include <dt-bindings/input/input.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "MSI Primo81 tablet"; | 53 | model = "MSI Primo81 tablet"; |
diff --git a/arch/arm/boot/dts/sun6i-a31s-sina31s-core.dtsi b/arch/arm/boot/dts/sun6i-a31s-sina31s-core.dtsi index 4ec0c8679b2e..d7325bc4eeb4 100644 --- a/arch/arm/boot/dts/sun6i-a31s-sina31s-core.dtsi +++ b/arch/arm/boot/dts/sun6i-a31s-sina31s-core.dtsi | |||
@@ -45,7 +45,6 @@ | |||
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
49 | 48 | ||
50 | / { | 49 | / { |
51 | model = "Sinlinx SinA31s Core Board"; | 50 | model = "Sinlinx SinA31s Core Board"; |
diff --git a/arch/arm/boot/dts/sun6i-a31s-sina31s.dts b/arch/arm/boot/dts/sun6i-a31s-sina31s.dts index 7ff68bdd7109..b3d98222bd81 100644 --- a/arch/arm/boot/dts/sun6i-a31s-sina31s.dts +++ b/arch/arm/boot/dts/sun6i-a31s-sina31s.dts | |||
@@ -63,6 +63,23 @@ | |||
63 | gpios = <&pio 7 13 GPIO_ACTIVE_HIGH>; /* PH13 */ | 63 | gpios = <&pio 7 13 GPIO_ACTIVE_HIGH>; /* PH13 */ |
64 | }; | 64 | }; |
65 | }; | 65 | }; |
66 | |||
67 | sound { | ||
68 | compatible = "simple-audio-card"; | ||
69 | simple-audio-card,name = "On-board SPDIF"; | ||
70 | simple-audio-card,cpu { | ||
71 | sound-dai = <&spdif>; | ||
72 | }; | ||
73 | |||
74 | simple-audio-card,codec { | ||
75 | sound-dai = <&spdif_out>; | ||
76 | }; | ||
77 | }; | ||
78 | |||
79 | spdif_out: spdif-out { | ||
80 | #sound-dai-cells = <0>; | ||
81 | compatible = "linux,spdif-dit"; | ||
82 | }; | ||
66 | }; | 83 | }; |
67 | 84 | ||
68 | &codec { | 85 | &codec { |
@@ -153,6 +170,12 @@ | |||
153 | regulator-name = "vcc-gmac-phy"; | 170 | regulator-name = "vcc-gmac-phy"; |
154 | }; | 171 | }; |
155 | 172 | ||
173 | &spdif { | ||
174 | pinctrl-names = "default"; | ||
175 | pinctrl-0 = <&spdif_pins_a>; | ||
176 | status = "okay"; | ||
177 | }; | ||
178 | |||
156 | &usb_otg { | 179 | &usb_otg { |
157 | dr_mode = "peripheral"; | 180 | dr_mode = "peripheral"; |
158 | status = "okay"; | 181 | status = "okay"; |
diff --git a/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts b/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts index 3bd862bf82a9..bdfdce8ca6ba 100644 --- a/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts +++ b/arch/arm/boot/dts/sun6i-a31s-sinovoip-bpi-m2.dts | |||
@@ -86,6 +86,10 @@ | |||
86 | }; | 86 | }; |
87 | }; | 87 | }; |
88 | 88 | ||
89 | &cpu0 { | ||
90 | cpu-supply = <®_dcdc3>; | ||
91 | }; | ||
92 | |||
89 | &ehci0 { | 93 | &ehci0 { |
90 | status = "okay"; | 94 | status = "okay"; |
91 | }; | 95 | }; |
@@ -151,6 +155,17 @@ | |||
151 | status = "okay"; | 155 | status = "okay"; |
152 | }; | 156 | }; |
153 | 157 | ||
158 | &p2wi { | ||
159 | status = "okay"; | ||
160 | |||
161 | axp22x: pmic@68 { | ||
162 | compatible = "x-powers,axp221"; | ||
163 | reg = <0x68>; | ||
164 | interrupt-parent = <&nmi_intc>; | ||
165 | interrupts = <0 IRQ_TYPE_LEVEL_LOW>; | ||
166 | }; | ||
167 | }; | ||
168 | |||
154 | &pio { | 169 | &pio { |
155 | gmac_phy_reset_pin_bpi_m2: gmac_phy_reset_pin@0 { | 170 | gmac_phy_reset_pin_bpi_m2: gmac_phy_reset_pin@0 { |
156 | pins = "PA21"; | 171 | pins = "PA21"; |
@@ -176,6 +191,48 @@ | |||
176 | }; | 191 | }; |
177 | }; | 192 | }; |
178 | 193 | ||
194 | #include "axp22x.dtsi" | ||
195 | |||
196 | ®_dc5ldo { | ||
197 | regulator-min-microvolt = <700000>; | ||
198 | regulator-max-microvolt = <1320000>; | ||
199 | regulator-name = "vdd-cpus"; | ||
200 | }; | ||
201 | |||
202 | ®_dcdc1 { | ||
203 | regulator-always-on; | ||
204 | regulator-min-microvolt = <3000000>; | ||
205 | regulator-max-microvolt = <3000000>; | ||
206 | regulator-name = "vdd-3v0"; | ||
207 | }; | ||
208 | |||
209 | ®_dcdc2 { | ||
210 | regulator-min-microvolt = <700000>; | ||
211 | regulator-max-microvolt = <1320000>; | ||
212 | regulator-name = "vdd-gpu"; | ||
213 | }; | ||
214 | |||
215 | ®_dcdc3 { | ||
216 | regulator-always-on; | ||
217 | regulator-min-microvolt = <700000>; | ||
218 | regulator-max-microvolt = <1320000>; | ||
219 | regulator-name = "vdd-cpu"; | ||
220 | }; | ||
221 | |||
222 | ®_dcdc4 { | ||
223 | regulator-always-on; | ||
224 | regulator-min-microvolt = <700000>; | ||
225 | regulator-max-microvolt = <1320000>; | ||
226 | regulator-name = "vdd-sys-dll"; | ||
227 | }; | ||
228 | |||
229 | ®_dcdc5 { | ||
230 | regulator-always-on; | ||
231 | regulator-min-microvolt = <1500000>; | ||
232 | regulator-max-microvolt = <1500000>; | ||
233 | regulator-name = "vcc-dram"; | ||
234 | }; | ||
235 | |||
179 | &uart0 { | 236 | &uart0 { |
180 | pinctrl-names = "default"; | 237 | pinctrl-names = "default"; |
181 | pinctrl-0 = <&uart0_pins_a>; | 238 | pinctrl-0 = <&uart0_pins_a>; |
diff --git a/arch/arm/boot/dts/sun6i-a31s-yones-toptech-bs1078-v2.dts b/arch/arm/boot/dts/sun6i-a31s-yones-toptech-bs1078-v2.dts index 154ebf5082ed..f3edf9ca435c 100644 --- a/arch/arm/boot/dts/sun6i-a31s-yones-toptech-bs1078-v2.dts +++ b/arch/arm/boot/dts/sun6i-a31s-yones-toptech-bs1078-v2.dts | |||
@@ -45,7 +45,6 @@ | |||
45 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
49 | 48 | ||
50 | / { | 49 | / { |
51 | model = "Yones TopTech BS1078 v2 Tablet"; | 50 | model = "Yones TopTech BS1078 v2 Tablet"; |
diff --git a/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi b/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi index edaba5f904fd..3cc4046b904a 100644 --- a/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi +++ b/arch/arm/boot/dts/sun6i-reference-design-tablet.dtsi | |||
@@ -44,7 +44,6 @@ | |||
44 | 44 | ||
45 | #include <dt-bindings/gpio/gpio.h> | 45 | #include <dt-bindings/gpio/gpio.h> |
46 | #include <dt-bindings/input/input.h> | 46 | #include <dt-bindings/input/input.h> |
47 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
48 | 47 | ||
49 | / { | 48 | / { |
50 | aliases { | 49 | aliases { |
diff --git a/arch/arm/boot/dts/sun7i-a20-bananapi.dts b/arch/arm/boot/dts/sun7i-a20-bananapi.dts index 91f2e5f9efcb..ed2f35adf542 100644 --- a/arch/arm/boot/dts/sun7i-a20-bananapi.dts +++ b/arch/arm/boot/dts/sun7i-a20-bananapi.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "LeMaker Banana Pi"; | 53 | model = "LeMaker Banana Pi"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts index 4dc1e10f88c4..a2eab7aa80e0 100644 --- a/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts +++ b/arch/arm/boot/dts/sun7i-a20-cubieboard2.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Cubietech Cubieboard2"; | 53 | model = "Cubietech Cubieboard2"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts index f019aa3fe96d..102903e83bd2 100644 --- a/arch/arm/boot/dts/sun7i-a20-cubietruck.dts +++ b/arch/arm/boot/dts/sun7i-a20-cubietruck.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Cubietech Cubietruck"; | 53 | model = "Cubietech Cubietruck"; |
@@ -268,6 +267,10 @@ | |||
268 | 267 | ||
269 | #include "axp209.dtsi" | 268 | #include "axp209.dtsi" |
270 | 269 | ||
270 | &ac_power_supply { | ||
271 | status = "okay"; | ||
272 | }; | ||
273 | |||
271 | ®_dcdc2 { | 274 | ®_dcdc2 { |
272 | regulator-always-on; | 275 | regulator-always-on; |
273 | regulator-min-microvolt = <1000000>; | 276 | regulator-min-microvolt = <1000000>; |
@@ -324,6 +327,10 @@ | |||
324 | status = "okay"; | 327 | status = "okay"; |
325 | }; | 328 | }; |
326 | 329 | ||
330 | &usb_power_supply { | ||
331 | status = "okay"; | ||
332 | }; | ||
333 | |||
327 | &usbphy { | 334 | &usbphy { |
328 | pinctrl-names = "default"; | 335 | pinctrl-names = "default"; |
329 | pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>; | 336 | pinctrl-0 = <&usb0_id_detect_pin>, <&usb0_vbus_detect_pin>; |
diff --git a/arch/arm/boot/dts/sun7i-a20-hummingbird.dts b/arch/arm/boot/dts/sun7i-a20-hummingbird.dts index e921ba42f170..99c00b9a1546 100644 --- a/arch/arm/boot/dts/sun7i-a20-hummingbird.dts +++ b/arch/arm/boot/dts/sun7i-a20-hummingbird.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Merrii A20 Hummingbird"; | 53 | model = "Merrii A20 Hummingbird"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts index 385fd8232ae0..4da49717da21 100644 --- a/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts +++ b/arch/arm/boot/dts/sun7i-a20-i12-tvbox.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "I12 / Q5 / QT840A A20 tvbox"; | 51 | model = "I12 / Q5 / QT840A A20 tvbox"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-icnova-swac.dts b/arch/arm/boot/dts/sun7i-a20-icnova-swac.dts index f5b5325a70e2..28d3abbdc2d4 100644 --- a/arch/arm/boot/dts/sun7i-a20-icnova-swac.dts +++ b/arch/arm/boot/dts/sun7i-a20-icnova-swac.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "ICnova-A20 SWAC"; | 51 | model = "ICnova-A20 SWAC"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-lamobo-r1.dts b/arch/arm/boot/dts/sun7i-a20-lamobo-r1.dts index bbf1c8cbaac6..96bb0bc198ba 100644 --- a/arch/arm/boot/dts/sun7i-a20-lamobo-r1.dts +++ b/arch/arm/boot/dts/sun7i-a20-lamobo-r1.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Lamobo R1"; | 51 | model = "Lamobo R1"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-m3.dts b/arch/arm/boot/dts/sun7i-a20-m3.dts index 0e074bd0e8c9..86f69813683e 100644 --- a/arch/arm/boot/dts/sun7i-a20-m3.dts +++ b/arch/arm/boot/dts/sun7i-a20-m3.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Mele M3"; | 53 | model = "Mele M3"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-mk808c.dts b/arch/arm/boot/dts/sun7i-a20-mk808c.dts index 97d7a8b65a03..c4ee30709f3a 100644 --- a/arch/arm/boot/dts/sun7i-a20-mk808c.dts +++ b/arch/arm/boot/dts/sun7i-a20-mk808c.dts | |||
@@ -53,7 +53,6 @@ | |||
53 | 53 | ||
54 | #include <dt-bindings/gpio/gpio.h> | 54 | #include <dt-bindings/gpio/gpio.h> |
55 | #include <dt-bindings/interrupt-controller/irq.h> | 55 | #include <dt-bindings/interrupt-controller/irq.h> |
56 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
57 | 56 | ||
58 | / { | 57 | / { |
59 | model = "mk808c"; | 58 | model = "mk808c"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-olimex-som-evb.dts b/arch/arm/boot/dts/sun7i-a20-olimex-som-evb.dts index a1450c10b08e..1af5b46862cb 100644 --- a/arch/arm/boot/dts/sun7i-a20-olimex-som-evb.dts +++ b/arch/arm/boot/dts/sun7i-a20-olimex-som-evb.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/input/input.h> | 49 | #include <dt-bindings/input/input.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Olimex A20-Olimex-SOM-EVB"; | 53 | model = "Olimex A20-Olimex-SOM-EVB"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime.dts index 1297432c2802..dcd0f7a0dffa 100644 --- a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime.dts +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime.dts | |||
@@ -49,7 +49,6 @@ | |||
49 | 49 | ||
50 | #include <dt-bindings/gpio/gpio.h> | 50 | #include <dt-bindings/gpio/gpio.h> |
51 | #include <dt-bindings/interrupt-controller/irq.h> | 51 | #include <dt-bindings/interrupt-controller/irq.h> |
52 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
53 | 52 | ||
54 | / { | 53 | / { |
55 | model = "Olimex A20-OLinuXino-LIME"; | 54 | model = "Olimex A20-OLinuXino-LIME"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts index 71cca5360728..e7d45425758c 100644 --- a/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-lime2.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/interrupt-controller/irq.h> | 48 | #include <dt-bindings/interrupt-controller/irq.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Olimex A20-OLinuXino-LIME2"; | 51 | model = "Olimex A20-OLinuXino-LIME2"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts index 223fbd9f7c62..def0ad8395bb 100644 --- a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | |||
@@ -49,7 +49,6 @@ | |||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/input/input.h> | 50 | #include <dt-bindings/input/input.h> |
51 | #include <dt-bindings/interrupt-controller/irq.h> | 51 | #include <dt-bindings/interrupt-controller/irq.h> |
52 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
53 | 52 | ||
54 | / { | 53 | / { |
55 | model = "Olimex A20-Olinuxino Micro"; | 54 | model = "Olimex A20-Olinuxino Micro"; |
@@ -85,6 +84,14 @@ | |||
85 | status = "okay"; | 84 | status = "okay"; |
86 | }; | 85 | }; |
87 | 86 | ||
87 | &codec { | ||
88 | status = "okay"; | ||
89 | }; | ||
90 | |||
91 | &cpu0 { | ||
92 | cpu-supply = <®_dcdc2>; | ||
93 | }; | ||
94 | |||
88 | &ehci0 { | 95 | &ehci0 { |
89 | status = "okay"; | 96 | status = "okay"; |
90 | }; | 97 | }; |
@@ -111,13 +118,9 @@ | |||
111 | status = "okay"; | 118 | status = "okay"; |
112 | 119 | ||
113 | axp209: pmic@34 { | 120 | axp209: pmic@34 { |
114 | compatible = "x-powers,axp209"; | ||
115 | reg = <0x34>; | 121 | reg = <0x34>; |
116 | interrupt-parent = <&nmi_intc>; | 122 | interrupt-parent = <&nmi_intc>; |
117 | interrupts = <0 IRQ_TYPE_LEVEL_LOW>; | 123 | interrupts = <0 IRQ_TYPE_LEVEL_LOW>; |
118 | |||
119 | interrupt-controller; | ||
120 | #interrupt-cells = <1>; | ||
121 | }; | 124 | }; |
122 | }; | 125 | }; |
123 | 126 | ||
@@ -251,6 +254,29 @@ | |||
251 | }; | 254 | }; |
252 | }; | 255 | }; |
253 | 256 | ||
257 | #include "axp209.dtsi" | ||
258 | |||
259 | ®_dcdc2 { | ||
260 | regulator-always-on; | ||
261 | regulator-min-microvolt = <1000000>; | ||
262 | regulator-max-microvolt = <1400000>; | ||
263 | regulator-name = "vdd-cpu"; | ||
264 | }; | ||
265 | |||
266 | ®_dcdc3 { | ||
267 | regulator-always-on; | ||
268 | regulator-min-microvolt = <1000000>; | ||
269 | regulator-max-microvolt = <1400000>; | ||
270 | regulator-name = "vdd-int-dll"; | ||
271 | }; | ||
272 | |||
273 | ®_ldo2 { | ||
274 | regulator-always-on; | ||
275 | regulator-min-microvolt = <3000000>; | ||
276 | regulator-max-microvolt = <3000000>; | ||
277 | regulator-name = "avcc"; | ||
278 | }; | ||
279 | |||
254 | ®_ahci_5v { | 280 | ®_ahci_5v { |
255 | status = "okay"; | 281 | status = "okay"; |
256 | }; | 282 | }; |
diff --git a/arch/arm/boot/dts/sun7i-a20-orangepi-mini.dts b/arch/arm/boot/dts/sun7i-a20-orangepi-mini.dts index a74265749227..7af4c8fc1865 100644 --- a/arch/arm/boot/dts/sun7i-a20-orangepi-mini.dts +++ b/arch/arm/boot/dts/sun7i-a20-orangepi-mini.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Orange Pi Mini"; | 53 | model = "Orange Pi Mini"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-orangepi.dts b/arch/arm/boot/dts/sun7i-a20-orangepi.dts index 3de980c8f8ff..0a8d4a05e8a0 100644 --- a/arch/arm/boot/dts/sun7i-a20-orangepi.dts +++ b/arch/arm/boot/dts/sun7i-a20-orangepi.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Orange Pi"; | 53 | model = "Orange Pi"; |
diff --git a/arch/arm/boot/dts/sun7i-a20-pcduino3.dts b/arch/arm/boot/dts/sun7i-a20-pcduino3.dts index 4599f98a3aee..7c96b53b76bf 100644 --- a/arch/arm/boot/dts/sun7i-a20-pcduino3.dts +++ b/arch/arm/boot/dts/sun7i-a20-pcduino3.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/input/input.h> | 49 | #include <dt-bindings/input/input.h> |
50 | #include <dt-bindings/interrupt-controller/irq.h> | 50 | #include <dt-bindings/interrupt-controller/irq.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "LinkSprite pcDuino3"; | 53 | model = "LinkSprite pcDuino3"; |
diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi b/arch/arm/boot/dts/sun7i-a20.dtsi index 2db97fc820dd..93aa55970bd7 100644 --- a/arch/arm/boot/dts/sun7i-a20.dtsi +++ b/arch/arm/boot/dts/sun7i-a20.dtsi | |||
@@ -49,7 +49,6 @@ | |||
49 | 49 | ||
50 | #include <dt-bindings/clock/sun4i-a10-pll2.h> | 50 | #include <dt-bindings/clock/sun4i-a10-pll2.h> |
51 | #include <dt-bindings/dma/sun4i-a10.h> | 51 | #include <dt-bindings/dma/sun4i-a10.h> |
52 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
53 | 52 | ||
54 | / { | 53 | / { |
55 | interrupt-parent = <&gic>; | 54 | interrupt-parent = <&gic>; |
@@ -1096,6 +1095,11 @@ | |||
1096 | #interrupt-cells = <3>; | 1095 | #interrupt-cells = <3>; |
1097 | #gpio-cells = <3>; | 1096 | #gpio-cells = <3>; |
1098 | 1097 | ||
1098 | can0_pins_a: can0@0 { | ||
1099 | pins = "PH20", "PH21"; | ||
1100 | function = "can"; | ||
1101 | }; | ||
1102 | |||
1099 | clk_out_a_pins_a: clk_out_a@0 { | 1103 | clk_out_a_pins_a: clk_out_a@0 { |
1100 | pins = "PI12"; | 1104 | pins = "PI12"; |
1101 | function = "clk_out_a"; | 1105 | function = "clk_out_a"; |
@@ -1538,6 +1542,22 @@ | |||
1538 | status = "disabled"; | 1542 | status = "disabled"; |
1539 | }; | 1543 | }; |
1540 | 1544 | ||
1545 | ps20: ps2@01c2a000 { | ||
1546 | compatible = "allwinner,sun4i-a10-ps2"; | ||
1547 | reg = <0x01c2a000 0x400>; | ||
1548 | interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; | ||
1549 | clocks = <&apb1_gates 6>; | ||
1550 | status = "disabled"; | ||
1551 | }; | ||
1552 | |||
1553 | ps21: ps2@01c2a400 { | ||
1554 | compatible = "allwinner,sun4i-a10-ps2"; | ||
1555 | reg = <0x01c2a400 0x400>; | ||
1556 | interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; | ||
1557 | clocks = <&apb1_gates 7>; | ||
1558 | status = "disabled"; | ||
1559 | }; | ||
1560 | |||
1541 | i2c0: i2c@01c2ac00 { | 1561 | i2c0: i2c@01c2ac00 { |
1542 | compatible = "allwinner,sun7i-a20-i2c", | 1562 | compatible = "allwinner,sun7i-a20-i2c", |
1543 | "allwinner,sun4i-a10-i2c"; | 1563 | "allwinner,sun4i-a10-i2c"; |
@@ -1582,6 +1602,15 @@ | |||
1582 | #size-cells = <0>; | 1602 | #size-cells = <0>; |
1583 | }; | 1603 | }; |
1584 | 1604 | ||
1605 | can0: can@01c2bc00 { | ||
1606 | compatible = "allwinner,sun7i-a20-can", | ||
1607 | "allwinner,sun4i-a10-can"; | ||
1608 | reg = <0x01c2bc00 0x400>; | ||
1609 | interrupts = <GIC_SPI 26 IRQ_TYPE_LEVEL_HIGH>; | ||
1610 | clocks = <&apb1_gates 4>; | ||
1611 | status = "disabled"; | ||
1612 | }; | ||
1613 | |||
1585 | i2c4: i2c@01c2c000 { | 1614 | i2c4: i2c@01c2c000 { |
1586 | compatible = "allwinner,sun7i-a20-i2c", | 1615 | compatible = "allwinner,sun7i-a20-i2c", |
1587 | "allwinner,sun4i-a10-i2c"; | 1616 | "allwinner,sun4i-a10-i2c"; |
@@ -1629,20 +1658,5 @@ | |||
1629 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | 1658 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; |
1630 | }; | 1659 | }; |
1631 | 1660 | ||
1632 | ps20: ps2@01c2a000 { | ||
1633 | compatible = "allwinner,sun4i-a10-ps2"; | ||
1634 | reg = <0x01c2a000 0x400>; | ||
1635 | interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; | ||
1636 | clocks = <&apb1_gates 6>; | ||
1637 | status = "disabled"; | ||
1638 | }; | ||
1639 | |||
1640 | ps21: ps2@01c2a400 { | ||
1641 | compatible = "allwinner,sun4i-a10-ps2"; | ||
1642 | reg = <0x01c2a400 0x400>; | ||
1643 | interrupts = <GIC_SPI 63 IRQ_TYPE_LEVEL_HIGH>; | ||
1644 | clocks = <&apb1_gates 7>; | ||
1645 | status = "disabled"; | ||
1646 | }; | ||
1647 | }; | 1661 | }; |
1648 | }; | 1662 | }; |
diff --git a/arch/arm/boot/dts/sun8i-a23-a33.dtsi b/arch/arm/boot/dts/sun8i-a23-a33.dtsi index 8a3ed21cb7bc..a8b978d0f35b 100644 --- a/arch/arm/boot/dts/sun8i-a23-a33.dtsi +++ b/arch/arm/boot/dts/sun8i-a23-a33.dtsi | |||
@@ -47,7 +47,6 @@ | |||
47 | #include <dt-bindings/interrupt-controller/arm-gic.h> | 47 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
48 | 48 | ||
49 | #include <dt-bindings/clock/sun8i-a23-a33-ccu.h> | 49 | #include <dt-bindings/clock/sun8i-a23-a33-ccu.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | #include <dt-bindings/reset/sun8i-a23-a33-ccu.h> | 50 | #include <dt-bindings/reset/sun8i-a23-a33-ccu.h> |
52 | 51 | ||
53 | / { | 52 | / { |
@@ -493,6 +492,7 @@ | |||
493 | clocks = <&ccu CLK_BUS_GPU>, <&ccu CLK_GPU>; | 492 | clocks = <&ccu CLK_BUS_GPU>, <&ccu CLK_GPU>; |
494 | clock-names = "bus", "core"; | 493 | clock-names = "bus", "core"; |
495 | resets = <&ccu RST_BUS_GPU>; | 494 | resets = <&ccu RST_BUS_GPU>; |
495 | #cooling-cells = <2>; | ||
496 | 496 | ||
497 | assigned-clocks = <&ccu CLK_GPU>; | 497 | assigned-clocks = <&ccu CLK_GPU>; |
498 | assigned-clock-rates = <384000000>; | 498 | assigned-clock-rates = <384000000>; |
diff --git a/arch/arm/boot/dts/sun8i-a23-evb.dts b/arch/arm/boot/dts/sun8i-a23-evb.dts index c21f5b1b255e..87289a60c520 100644 --- a/arch/arm/boot/dts/sun8i-a23-evb.dts +++ b/arch/arm/boot/dts/sun8i-a23-evb.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/input/input.h> | 50 | #include <dt-bindings/input/input.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Allwinner A23 Evaluation Board"; | 53 | model = "Allwinner A23 Evaluation Board"; |
diff --git a/arch/arm/boot/dts/sun8i-a23-q8-tablet.dts b/arch/arm/boot/dts/sun8i-a23-q8-tablet.dts index 3ab5c0c09d93..b6958e8f2f01 100644 --- a/arch/arm/boot/dts/sun8i-a23-q8-tablet.dts +++ b/arch/arm/boot/dts/sun8i-a23-q8-tablet.dts | |||
@@ -50,7 +50,6 @@ | |||
50 | }; | 50 | }; |
51 | 51 | ||
52 | &codec { | 52 | &codec { |
53 | pinctrl-0 = <&codec_pa_pin>; | ||
54 | allwinner,pa-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ | 53 | allwinner,pa-gpios = <&pio 7 9 GPIO_ACTIVE_HIGH>; /* PH9 */ |
55 | allwinner,audio-routing = | 54 | allwinner,audio-routing = |
56 | "Headphone", "HP", | 55 | "Headphone", "HP", |
@@ -62,12 +61,3 @@ | |||
62 | "Headset Mic", "HBIAS"; | 61 | "Headset Mic", "HBIAS"; |
63 | status = "okay"; | 62 | status = "okay"; |
64 | }; | 63 | }; |
65 | |||
66 | &pio { | ||
67 | codec_pa_pin: codec_pa_pin@0 { | ||
68 | allwinner,pins = "PH9"; | ||
69 | allwinner,function = "gpio_out"; | ||
70 | allwinner,drive = <SUN4I_PINCTRL_10_MA>; | ||
71 | allwinner,pull = <SUN4I_PINCTRL_NO_PULL>; | ||
72 | }; | ||
73 | }; | ||
diff --git a/arch/arm/boot/dts/sun8i-a33-sinlinx-sina33.dts b/arch/arm/boot/dts/sun8i-a33-sinlinx-sina33.dts index 03b89bdd55ba..9b620cc1d5f1 100644 --- a/arch/arm/boot/dts/sun8i-a33-sinlinx-sina33.dts +++ b/arch/arm/boot/dts/sun8i-a33-sinlinx-sina33.dts | |||
@@ -48,7 +48,6 @@ | |||
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/input/input.h> | 50 | #include <dt-bindings/input/input.h> |
51 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
52 | 51 | ||
53 | / { | 52 | / { |
54 | model = "Sinlinx SinA33"; | 53 | model = "Sinlinx SinA33"; |
@@ -84,6 +83,24 @@ | |||
84 | status = "okay"; | 83 | status = "okay"; |
85 | }; | 84 | }; |
86 | 85 | ||
86 | &cpu0 { | ||
87 | cpu-supply = <®_dcdc3>; | ||
88 | }; | ||
89 | |||
90 | &cpu0_opp_table { | ||
91 | opp@1104000000 { | ||
92 | opp-hz = /bits/ 64 <1104000000>; | ||
93 | opp-microvolt = <1320000>; | ||
94 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
95 | }; | ||
96 | |||
97 | opp@1200000000 { | ||
98 | opp-hz = /bits/ 64 <1200000000>; | ||
99 | opp-microvolt = <1320000>; | ||
100 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
101 | }; | ||
102 | }; | ||
103 | |||
87 | &de { | 104 | &de { |
88 | status = "okay"; | 105 | status = "okay"; |
89 | }; | 106 | }; |
@@ -175,6 +192,10 @@ | |||
175 | 192 | ||
176 | #include "axp223.dtsi" | 193 | #include "axp223.dtsi" |
177 | 194 | ||
195 | &ac_power_supply { | ||
196 | status = "okay"; | ||
197 | }; | ||
198 | |||
178 | ®_aldo1 { | 199 | ®_aldo1 { |
179 | regulator-always-on; | 200 | regulator-always-on; |
180 | regulator-min-microvolt = <3000000>; | 201 | regulator-min-microvolt = <3000000>; |
diff --git a/arch/arm/boot/dts/sun8i-a33.dtsi b/arch/arm/boot/dts/sun8i-a33.dtsi index 306af6cadf26..013978259372 100644 --- a/arch/arm/boot/dts/sun8i-a33.dtsi +++ b/arch/arm/boot/dts/sun8i-a33.dtsi | |||
@@ -43,24 +43,79 @@ | |||
43 | */ | 43 | */ |
44 | 44 | ||
45 | #include "sun8i-a23-a33.dtsi" | 45 | #include "sun8i-a23-a33.dtsi" |
46 | #include <dt-bindings/thermal/thermal.h> | ||
46 | 47 | ||
47 | / { | 48 | / { |
48 | cpu0_opp_table: opp_table0 { | 49 | cpu0_opp_table: opp_table0 { |
49 | compatible = "operating-points-v2"; | 50 | compatible = "operating-points-v2"; |
50 | opp-shared; | 51 | opp-shared; |
51 | 52 | ||
53 | opp@120000000 { | ||
54 | opp-hz = /bits/ 64 <120000000>; | ||
55 | opp-microvolt = <1040000>; | ||
56 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
57 | }; | ||
58 | |||
59 | opp@240000000 { | ||
60 | opp-hz = /bits/ 64 <240000000>; | ||
61 | opp-microvolt = <1040000>; | ||
62 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
63 | }; | ||
64 | |||
65 | opp@312000000 { | ||
66 | opp-hz = /bits/ 64 <312000000>; | ||
67 | opp-microvolt = <1040000>; | ||
68 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
69 | }; | ||
70 | |||
71 | opp@408000000 { | ||
72 | opp-hz = /bits/ 64 <408000000>; | ||
73 | opp-microvolt = <1040000>; | ||
74 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
75 | }; | ||
76 | |||
77 | opp@480000000 { | ||
78 | opp-hz = /bits/ 64 <480000000>; | ||
79 | opp-microvolt = <1040000>; | ||
80 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
81 | }; | ||
82 | |||
83 | opp@504000000 { | ||
84 | opp-hz = /bits/ 64 <504000000>; | ||
85 | opp-microvolt = <1040000>; | ||
86 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
87 | }; | ||
88 | |||
89 | opp@600000000 { | ||
90 | opp-hz = /bits/ 64 <600000000>; | ||
91 | opp-microvolt = <1040000>; | ||
92 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
93 | }; | ||
94 | |||
52 | opp@648000000 { | 95 | opp@648000000 { |
53 | opp-hz = /bits/ 64 <648000000>; | 96 | opp-hz = /bits/ 64 <648000000>; |
54 | opp-microvolt = <1040000>; | 97 | opp-microvolt = <1040000>; |
55 | clock-latency-ns = <244144>; /* 8 32k periods */ | 98 | clock-latency-ns = <244144>; /* 8 32k periods */ |
56 | }; | 99 | }; |
57 | 100 | ||
101 | opp@720000000 { | ||
102 | opp-hz = /bits/ 64 <720000000>; | ||
103 | opp-microvolt = <1100000>; | ||
104 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
105 | }; | ||
106 | |||
58 | opp@816000000 { | 107 | opp@816000000 { |
59 | opp-hz = /bits/ 64 <816000000>; | 108 | opp-hz = /bits/ 64 <816000000>; |
60 | opp-microvolt = <1100000>; | 109 | opp-microvolt = <1100000>; |
61 | clock-latency-ns = <244144>; /* 8 32k periods */ | 110 | clock-latency-ns = <244144>; /* 8 32k periods */ |
62 | }; | 111 | }; |
63 | 112 | ||
113 | opp@912000000 { | ||
114 | opp-hz = /bits/ 64 <912000000>; | ||
115 | opp-microvolt = <1200000>; | ||
116 | clock-latency-ns = <244144>; /* 8 32k periods */ | ||
117 | }; | ||
118 | |||
64 | opp@1008000000 { | 119 | opp@1008000000 { |
65 | opp-hz = /bits/ 64 <1008000000>; | 120 | opp-hz = /bits/ 64 <1008000000>; |
66 | opp-microvolt = <1200000>; | 121 | opp-microvolt = <1200000>; |
@@ -73,6 +128,7 @@ | |||
73 | clocks = <&ccu CLK_CPUX>; | 128 | clocks = <&ccu CLK_CPUX>; |
74 | clock-names = "cpu"; | 129 | clock-names = "cpu"; |
75 | operating-points-v2 = <&cpu0_opp_table>; | 130 | operating-points-v2 = <&cpu0_opp_table>; |
131 | #cooling-cells = <2>; | ||
76 | }; | 132 | }; |
77 | 133 | ||
78 | cpu@1 { | 134 | cpu@1 { |
@@ -100,6 +156,27 @@ | |||
100 | status = "disabled"; | 156 | status = "disabled"; |
101 | }; | 157 | }; |
102 | 158 | ||
159 | iio-hwmon { | ||
160 | compatible = "iio-hwmon"; | ||
161 | io-channels = <&ths>; | ||
162 | }; | ||
163 | |||
164 | mali_opp_table: gpu-opp-table { | ||
165 | compatible = "operating-points-v2"; | ||
166 | |||
167 | opp@144000000 { | ||
168 | opp-hz = /bits/ 64 <144000000>; | ||
169 | }; | ||
170 | |||
171 | opp@240000000 { | ||
172 | opp-hz = /bits/ 64 <240000000>; | ||
173 | }; | ||
174 | |||
175 | opp@384000000 { | ||
176 | opp-hz = /bits/ 64 <384000000>; | ||
177 | }; | ||
178 | }; | ||
179 | |||
103 | memory { | 180 | memory { |
104 | reg = <0x40000000 0x80000000>; | 181 | reg = <0x40000000 0x80000000>; |
105 | }; | 182 | }; |
@@ -196,6 +273,13 @@ | |||
196 | status = "disabled"; | 273 | status = "disabled"; |
197 | }; | 274 | }; |
198 | 275 | ||
276 | ths: ths@01c25000 { | ||
277 | compatible = "allwinner,sun8i-a33-ths"; | ||
278 | reg = <0x01c25000 0x100>; | ||
279 | #thermal-sensor-cells = <0>; | ||
280 | #io-channel-cells = <0>; | ||
281 | }; | ||
282 | |||
199 | fe0: display-frontend@01e00000 { | 283 | fe0: display-frontend@01e00000 { |
200 | compatible = "allwinner,sun8i-a33-display-frontend"; | 284 | compatible = "allwinner,sun8i-a33-display-frontend"; |
201 | reg = <0x01e00000 0x20000>; | 285 | reg = <0x01e00000 0x20000>; |
@@ -306,12 +390,83 @@ | |||
306 | }; | 390 | }; |
307 | }; | 391 | }; |
308 | }; | 392 | }; |
393 | |||
394 | thermal-zones { | ||
395 | cpu_thermal { | ||
396 | /* milliseconds */ | ||
397 | polling-delay-passive = <250>; | ||
398 | polling-delay = <1000>; | ||
399 | thermal-sensors = <&ths>; | ||
400 | |||
401 | cooling-maps { | ||
402 | map0 { | ||
403 | trip = <&cpu_alert0>; | ||
404 | cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; | ||
405 | }; | ||
406 | map1 { | ||
407 | trip = <&cpu_alert1>; | ||
408 | cooling-device = <&cpu0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>; | ||
409 | }; | ||
410 | |||
411 | map2 { | ||
412 | trip = <&gpu_alert0>; | ||
413 | cooling-device = <&mali 1 THERMAL_NO_LIMIT>; | ||
414 | }; | ||
415 | |||
416 | map3 { | ||
417 | trip = <&gpu_alert1>; | ||
418 | cooling-device = <&mali 2 THERMAL_NO_LIMIT>; | ||
419 | }; | ||
420 | }; | ||
421 | |||
422 | trips { | ||
423 | cpu_alert0: cpu_alert0 { | ||
424 | /* milliCelsius */ | ||
425 | temperature = <75000>; | ||
426 | hysteresis = <2000>; | ||
427 | type = "passive"; | ||
428 | }; | ||
429 | |||
430 | gpu_alert0: gpu_alert0 { | ||
431 | /* milliCelsius */ | ||
432 | temperature = <85000>; | ||
433 | hysteresis = <2000>; | ||
434 | type = "passive"; | ||
435 | }; | ||
436 | |||
437 | cpu_alert1: cpu_alert1 { | ||
438 | /* milliCelsius */ | ||
439 | temperature = <90000>; | ||
440 | hysteresis = <2000>; | ||
441 | type = "hot"; | ||
442 | }; | ||
443 | |||
444 | gpu_alert1: gpu_alert1 { | ||
445 | /* milliCelsius */ | ||
446 | temperature = <95000>; | ||
447 | hysteresis = <2000>; | ||
448 | type = "hot"; | ||
449 | }; | ||
450 | |||
451 | cpu_crit: cpu_crit { | ||
452 | /* milliCelsius */ | ||
453 | temperature = <110000>; | ||
454 | hysteresis = <2000>; | ||
455 | type = "critical"; | ||
456 | }; | ||
457 | }; | ||
458 | }; | ||
459 | }; | ||
309 | }; | 460 | }; |
310 | 461 | ||
311 | &ccu { | 462 | &ccu { |
312 | compatible = "allwinner,sun8i-a33-ccu"; | 463 | compatible = "allwinner,sun8i-a33-ccu"; |
313 | }; | 464 | }; |
314 | 465 | ||
466 | &mali { | ||
467 | operating-points-v2 = <&mali_opp_table>; | ||
468 | }; | ||
469 | |||
315 | &pio { | 470 | &pio { |
316 | compatible = "allwinner,sun8i-a33-pinctrl"; | 471 | compatible = "allwinner,sun8i-a33-pinctrl"; |
317 | interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>, | 472 | interrupts = <GIC_SPI 15 IRQ_TYPE_LEVEL_HIGH>, |
diff --git a/arch/arm/boot/dts/sun8i-a83t.dtsi b/arch/arm/boot/dts/sun8i-a83t.dtsi index a789a7caf217..0ec143773ee9 100644 --- a/arch/arm/boot/dts/sun8i-a83t.dtsi +++ b/arch/arm/boot/dts/sun8i-a83t.dtsi | |||
@@ -47,8 +47,6 @@ | |||
47 | 47 | ||
48 | #include <dt-bindings/interrupt-controller/arm-gic.h> | 48 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
49 | 49 | ||
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | |||
52 | / { | 50 | / { |
53 | interrupt-parent = <&gic>; | 51 | interrupt-parent = <&gic>; |
54 | 52 | ||
diff --git a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts index b7ca916d871d..9e8b082c134f 100644 --- a/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts +++ b/arch/arm/boot/dts/sun8i-h2-plus-orangepi-zero.dts | |||
@@ -49,7 +49,6 @@ | |||
49 | 49 | ||
50 | #include <dt-bindings/gpio/gpio.h> | 50 | #include <dt-bindings/gpio/gpio.h> |
51 | #include <dt-bindings/input/input.h> | 51 | #include <dt-bindings/input/input.h> |
52 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
53 | 52 | ||
54 | / { | 53 | / { |
55 | model = "Xunlong Orange Pi Zero"; | 54 | model = "Xunlong Orange Pi Zero"; |
@@ -96,6 +95,10 @@ | |||
96 | }; | 95 | }; |
97 | }; | 96 | }; |
98 | 97 | ||
98 | &ehci0 { | ||
99 | status = "okay"; | ||
100 | }; | ||
101 | |||
99 | &ehci1 { | 102 | &ehci1 { |
100 | status = "okay"; | 103 | status = "okay"; |
101 | }; | 104 | }; |
@@ -132,6 +135,10 @@ | |||
132 | bias-pull-up; | 135 | bias-pull-up; |
133 | }; | 136 | }; |
134 | 137 | ||
138 | &ohci0 { | ||
139 | status = "okay"; | ||
140 | }; | ||
141 | |||
135 | &ohci1 { | 142 | &ohci1 { |
136 | status = "okay"; | 143 | status = "okay"; |
137 | }; | 144 | }; |
@@ -154,7 +161,17 @@ | |||
154 | status = "disabled"; | 161 | status = "disabled"; |
155 | }; | 162 | }; |
156 | 163 | ||
164 | &usb_otg { | ||
165 | dr_mode = "peripheral"; | ||
166 | status = "okay"; | ||
167 | }; | ||
168 | |||
157 | &usbphy { | 169 | &usbphy { |
158 | /* USB VBUS is always on */ | 170 | /* |
171 | * USB Type-A port VBUS is always on. However, MicroUSB VBUS can only | ||
172 | * power up the board; when it's used as OTG port, this VBUS is | ||
173 | * always off even if the board is powered via GPIO pins. | ||
174 | */ | ||
159 | status = "okay"; | 175 | status = "okay"; |
176 | usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */ | ||
160 | }; | 177 | }; |
diff --git a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts index c0c49dd4d3b2..52acbe111cad 100644 --- a/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts +++ b/arch/arm/boot/dts/sun8i-h3-bananapi-m2-plus.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/input/input.h> | 48 | #include <dt-bindings/input/input.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Banana Pi BPI-M2-Plus"; | 51 | model = "Banana Pi BPI-M2-Plus"; |
diff --git a/arch/arm/boot/dts/sun8i-h3-beelink-x2.dts b/arch/arm/boot/dts/sun8i-h3-beelink-x2.dts index 25b225b7dfd6..e7fae65eb5d3 100644 --- a/arch/arm/boot/dts/sun8i-h3-beelink-x2.dts +++ b/arch/arm/boot/dts/sun8i-h3-beelink-x2.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/input/input.h> | 48 | #include <dt-bindings/input/input.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Beelink X2"; | 51 | model = "Beelink X2"; |
@@ -138,6 +137,16 @@ | |||
138 | }; | 137 | }; |
139 | }; | 138 | }; |
140 | 139 | ||
140 | &mmc2 { | ||
141 | pinctrl-names = "default"; | ||
142 | pinctrl-0 = <&mmc2_8bit_pins>; | ||
143 | vmmc-supply = <®_vcc3v3>; | ||
144 | bus-width = <8>; | ||
145 | non-removable; | ||
146 | cap-mmc-hw-reset; | ||
147 | status = "okay"; | ||
148 | }; | ||
149 | |||
141 | &ohci1 { | 150 | &ohci1 { |
142 | status = "okay"; | 151 | status = "okay"; |
143 | }; | 152 | }; |
diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts b/arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts new file mode 100644 index 000000000000..03ff6f8b93ff --- /dev/null +++ b/arch/arm/boot/dts/sun8i-h3-nanopi-neo-air.dts | |||
@@ -0,0 +1,96 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2017 Jelle van der Waa <jelle@vdwaa.nl> | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | /dts-v1/; | ||
44 | #include "sun8i-h3.dtsi" | ||
45 | #include "sunxi-common-regulators.dtsi" | ||
46 | |||
47 | #include <dt-bindings/gpio/gpio.h> | ||
48 | |||
49 | / { | ||
50 | model = "FriendlyARM NanoPi NEO Air"; | ||
51 | compatible = "friendlyarm,nanopi-neo-air", "allwinner,sun8i-h3"; | ||
52 | |||
53 | aliases { | ||
54 | serial0 = &uart0; | ||
55 | }; | ||
56 | |||
57 | chosen { | ||
58 | stdout-path = "serial0:115200n8"; | ||
59 | }; | ||
60 | |||
61 | leds { | ||
62 | compatible = "gpio-leds"; | ||
63 | |||
64 | pwr { | ||
65 | label = "nanopi:green:pwr"; | ||
66 | gpios = <&r_pio 0 10 GPIO_ACTIVE_HIGH>; /* PL10 */ | ||
67 | default-state = "on"; | ||
68 | }; | ||
69 | |||
70 | status { | ||
71 | label = "nanopi:blue:status"; | ||
72 | gpios = <&pio 0 10 GPIO_ACTIVE_HIGH>; /* PA10 */ | ||
73 | }; | ||
74 | }; | ||
75 | }; | ||
76 | |||
77 | &mmc0 { | ||
78 | pinctrl-names = "default"; | ||
79 | pinctrl-0 = <&mmc0_pins_a>, <&mmc0_cd_pin>; | ||
80 | vmmc-supply = <®_vcc3v3>; | ||
81 | bus-width = <4>; | ||
82 | cd-gpios = <&pio 5 6 GPIO_ACTIVE_HIGH>; /* PF6 */ | ||
83 | cd-inverted; | ||
84 | status = "okay"; | ||
85 | }; | ||
86 | |||
87 | &uart0 { | ||
88 | pinctrl-names = "default"; | ||
89 | pinctrl-0 = <&uart0_pins_a>; | ||
90 | status = "okay"; | ||
91 | }; | ||
92 | |||
93 | &usbphy { | ||
94 | /* USB VBUS is always on */ | ||
95 | status = "okay"; | ||
96 | }; | ||
diff --git a/arch/arm/boot/dts/sun8i-h3-nanopi.dtsi b/arch/arm/boot/dts/sun8i-h3-nanopi.dtsi index 2216e68d1838..c6decee41a27 100644 --- a/arch/arm/boot/dts/sun8i-h3-nanopi.dtsi +++ b/arch/arm/boot/dts/sun8i-h3-nanopi.dtsi | |||
@@ -47,7 +47,6 @@ | |||
47 | 47 | ||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/input/input.h> | 49 | #include <dt-bindings/input/input.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | aliases { | 52 | aliases { |
diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts index 047e9e1c6093..5b6d14555b7c 100644 --- a/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts +++ b/arch/arm/boot/dts/sun8i-h3-orangepi-2.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/input/input.h> | 48 | #include <dt-bindings/input/input.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Xunlong Orange Pi 2"; | 51 | model = "Xunlong Orange Pi 2"; |
diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-lite.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-lite.dts index 22b99b407019..9b47a0def740 100644 --- a/arch/arm/boot/dts/sun8i-h3-orangepi-lite.dts +++ b/arch/arm/boot/dts/sun8i-h3-orangepi-lite.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/input/input.h> | 48 | #include <dt-bindings/input/input.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Xunlong Orange Pi Lite"; | 51 | model = "Xunlong Orange Pi Lite"; |
diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts index 34da853ee037..5fea430e0eb1 100644 --- a/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts +++ b/arch/arm/boot/dts/sun8i-h3-orangepi-one.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/input/input.h> | 48 | #include <dt-bindings/input/input.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Xunlong Orange Pi One"; | 51 | model = "Xunlong Orange Pi One"; |
@@ -90,6 +89,10 @@ | |||
90 | }; | 89 | }; |
91 | }; | 90 | }; |
92 | 91 | ||
92 | &ehci0 { | ||
93 | status = "okay"; | ||
94 | }; | ||
95 | |||
93 | &ehci1 { | 96 | &ehci1 { |
94 | status = "okay"; | 97 | status = "okay"; |
95 | }; | 98 | }; |
@@ -104,6 +107,10 @@ | |||
104 | status = "okay"; | 107 | status = "okay"; |
105 | }; | 108 | }; |
106 | 109 | ||
110 | &ohci0 { | ||
111 | status = "okay"; | ||
112 | }; | ||
113 | |||
107 | &ohci1 { | 114 | &ohci1 { |
108 | status = "okay"; | 115 | status = "okay"; |
109 | }; | 116 | }; |
@@ -127,6 +134,11 @@ | |||
127 | }; | 134 | }; |
128 | }; | 135 | }; |
129 | 136 | ||
137 | ®_usb0_vbus { | ||
138 | gpio = <&r_pio 0 2 GPIO_ACTIVE_HIGH>; /* PL2 */ | ||
139 | status = "okay"; | ||
140 | }; | ||
141 | |||
130 | &uart0 { | 142 | &uart0 { |
131 | pinctrl-names = "default"; | 143 | pinctrl-names = "default"; |
132 | pinctrl-0 = <&uart0_pins_a>; | 144 | pinctrl-0 = <&uart0_pins_a>; |
@@ -151,7 +163,14 @@ | |||
151 | status = "disabled"; | 163 | status = "disabled"; |
152 | }; | 164 | }; |
153 | 165 | ||
166 | &usb_otg { | ||
167 | dr_mode = "otg"; | ||
168 | status = "okay"; | ||
169 | }; | ||
170 | |||
154 | &usbphy { | 171 | &usbphy { |
155 | /* USB VBUS is always on */ | 172 | /* USB Type-A port's VBUS is always on */ |
173 | usb0_id_det-gpios = <&pio 6 12 GPIO_ACTIVE_HIGH>; /* PG12 */ | ||
174 | usb0_vbus-supply = <®_usb0_vbus>; | ||
156 | status = "okay"; | 175 | status = "okay"; |
157 | }; | 176 | }; |
diff --git a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts index d43978d3294e..f148111c326d 100644 --- a/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts +++ b/arch/arm/boot/dts/sun8i-h3-orangepi-pc.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/gpio/gpio.h> | 47 | #include <dt-bindings/gpio/gpio.h> |
48 | #include <dt-bindings/input/input.h> | 48 | #include <dt-bindings/input/input.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Xunlong Orange Pi PC"; | 51 | model = "Xunlong Orange Pi PC"; |
diff --git a/arch/arm/boot/dts/sun8i-h3.dtsi b/arch/arm/boot/dts/sun8i-h3.dtsi index 27780b97c863..b36f9f423c39 100644 --- a/arch/arm/boot/dts/sun8i-h3.dtsi +++ b/arch/arm/boot/dts/sun8i-h3.dtsi | |||
@@ -40,16 +40,9 @@ | |||
40 | * OTHER DEALINGS IN THE SOFTWARE. | 40 | * OTHER DEALINGS IN THE SOFTWARE. |
41 | */ | 41 | */ |
42 | 42 | ||
43 | #include "skeleton.dtsi" | 43 | #include "sunxi-h3-h5.dtsi" |
44 | |||
45 | #include <dt-bindings/clock/sun8i-h3-ccu.h> | ||
46 | #include <dt-bindings/interrupt-controller/arm-gic.h> | ||
47 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
48 | #include <dt-bindings/reset/sun8i-h3-ccu.h> | ||
49 | 44 | ||
50 | / { | 45 | / { |
51 | interrupt-parent = <&gic>; | ||
52 | |||
53 | cpus { | 46 | cpus { |
54 | #address-cells = <1>; | 47 | #address-cells = <1>; |
55 | #size-cells = <0>; | 48 | #size-cells = <0>; |
@@ -86,563 +79,48 @@ | |||
86 | <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, | 79 | <GIC_PPI 11 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>, |
87 | <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; | 80 | <GIC_PPI 10 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>; |
88 | }; | 81 | }; |
82 | }; | ||
89 | 83 | ||
90 | clocks { | 84 | &ccu { |
91 | #address-cells = <1>; | 85 | compatible = "allwinner,sun8i-h3-ccu"; |
92 | #size-cells = <1>; | 86 | }; |
93 | ranges; | ||
94 | |||
95 | osc24M: osc24M_clk { | ||
96 | #clock-cells = <0>; | ||
97 | compatible = "fixed-clock"; | ||
98 | clock-frequency = <24000000>; | ||
99 | clock-output-names = "osc24M"; | ||
100 | }; | ||
101 | |||
102 | osc32k: osc32k_clk { | ||
103 | #clock-cells = <0>; | ||
104 | compatible = "fixed-clock"; | ||
105 | clock-frequency = <32768>; | ||
106 | clock-output-names = "osc32k"; | ||
107 | }; | ||
108 | |||
109 | apb0: apb0_clk { | ||
110 | compatible = "fixed-factor-clock"; | ||
111 | #clock-cells = <0>; | ||
112 | clock-div = <1>; | ||
113 | clock-mult = <1>; | ||
114 | clocks = <&osc24M>; | ||
115 | clock-output-names = "apb0"; | ||
116 | }; | ||
117 | |||
118 | apb0_gates: clk@01f01428 { | ||
119 | compatible = "allwinner,sun8i-h3-apb0-gates-clk", | ||
120 | "allwinner,sun4i-a10-gates-clk"; | ||
121 | reg = <0x01f01428 0x4>; | ||
122 | #clock-cells = <1>; | ||
123 | clocks = <&apb0>; | ||
124 | clock-indices = <0>, <1>; | ||
125 | clock-output-names = "apb0_pio", "apb0_ir"; | ||
126 | }; | ||
127 | |||
128 | ir_clk: ir_clk@01f01454 { | ||
129 | compatible = "allwinner,sun4i-a10-mod0-clk"; | ||
130 | reg = <0x01f01454 0x4>; | ||
131 | #clock-cells = <0>; | ||
132 | clocks = <&osc32k>, <&osc24M>; | ||
133 | clock-output-names = "ir"; | ||
134 | }; | ||
135 | }; | ||
136 | |||
137 | soc { | ||
138 | compatible = "simple-bus"; | ||
139 | #address-cells = <1>; | ||
140 | #size-cells = <1>; | ||
141 | ranges; | ||
142 | |||
143 | dma: dma-controller@01c02000 { | ||
144 | compatible = "allwinner,sun8i-h3-dma"; | ||
145 | reg = <0x01c02000 0x1000>; | ||
146 | interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; | ||
147 | clocks = <&ccu CLK_BUS_DMA>; | ||
148 | resets = <&ccu RST_BUS_DMA>; | ||
149 | #dma-cells = <1>; | ||
150 | }; | ||
151 | |||
152 | mmc0: mmc@01c0f000 { | ||
153 | compatible = "allwinner,sun7i-a20-mmc"; | ||
154 | reg = <0x01c0f000 0x1000>; | ||
155 | clocks = <&ccu CLK_BUS_MMC0>, | ||
156 | <&ccu CLK_MMC0>, | ||
157 | <&ccu CLK_MMC0_OUTPUT>, | ||
158 | <&ccu CLK_MMC0_SAMPLE>; | ||
159 | clock-names = "ahb", | ||
160 | "mmc", | ||
161 | "output", | ||
162 | "sample"; | ||
163 | resets = <&ccu RST_BUS_MMC0>; | ||
164 | reset-names = "ahb"; | ||
165 | interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; | ||
166 | status = "disabled"; | ||
167 | #address-cells = <1>; | ||
168 | #size-cells = <0>; | ||
169 | }; | ||
170 | |||
171 | mmc1: mmc@01c10000 { | ||
172 | compatible = "allwinner,sun7i-a20-mmc"; | ||
173 | reg = <0x01c10000 0x1000>; | ||
174 | clocks = <&ccu CLK_BUS_MMC1>, | ||
175 | <&ccu CLK_MMC1>, | ||
176 | <&ccu CLK_MMC1_OUTPUT>, | ||
177 | <&ccu CLK_MMC1_SAMPLE>; | ||
178 | clock-names = "ahb", | ||
179 | "mmc", | ||
180 | "output", | ||
181 | "sample"; | ||
182 | resets = <&ccu RST_BUS_MMC1>; | ||
183 | reset-names = "ahb"; | ||
184 | interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; | ||
185 | status = "disabled"; | ||
186 | #address-cells = <1>; | ||
187 | #size-cells = <0>; | ||
188 | }; | ||
189 | |||
190 | mmc2: mmc@01c11000 { | ||
191 | compatible = "allwinner,sun7i-a20-mmc"; | ||
192 | reg = <0x01c11000 0x1000>; | ||
193 | clocks = <&ccu CLK_BUS_MMC2>, | ||
194 | <&ccu CLK_MMC2>, | ||
195 | <&ccu CLK_MMC2_OUTPUT>, | ||
196 | <&ccu CLK_MMC2_SAMPLE>; | ||
197 | clock-names = "ahb", | ||
198 | "mmc", | ||
199 | "output", | ||
200 | "sample"; | ||
201 | resets = <&ccu RST_BUS_MMC2>; | ||
202 | reset-names = "ahb"; | ||
203 | interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; | ||
204 | status = "disabled"; | ||
205 | #address-cells = <1>; | ||
206 | #size-cells = <0>; | ||
207 | }; | ||
208 | |||
209 | usbphy: phy@01c19400 { | ||
210 | compatible = "allwinner,sun8i-h3-usb-phy"; | ||
211 | reg = <0x01c19400 0x2c>, | ||
212 | <0x01c1a800 0x4>, | ||
213 | <0x01c1b800 0x4>, | ||
214 | <0x01c1c800 0x4>, | ||
215 | <0x01c1d800 0x4>; | ||
216 | reg-names = "phy_ctrl", | ||
217 | "pmu0", | ||
218 | "pmu1", | ||
219 | "pmu2", | ||
220 | "pmu3"; | ||
221 | clocks = <&ccu CLK_USB_PHY0>, | ||
222 | <&ccu CLK_USB_PHY1>, | ||
223 | <&ccu CLK_USB_PHY2>, | ||
224 | <&ccu CLK_USB_PHY3>; | ||
225 | clock-names = "usb0_phy", | ||
226 | "usb1_phy", | ||
227 | "usb2_phy", | ||
228 | "usb3_phy"; | ||
229 | resets = <&ccu RST_USB_PHY0>, | ||
230 | <&ccu RST_USB_PHY1>, | ||
231 | <&ccu RST_USB_PHY2>, | ||
232 | <&ccu RST_USB_PHY3>; | ||
233 | reset-names = "usb0_reset", | ||
234 | "usb1_reset", | ||
235 | "usb2_reset", | ||
236 | "usb3_reset"; | ||
237 | status = "disabled"; | ||
238 | #phy-cells = <1>; | ||
239 | }; | ||
240 | |||
241 | ehci1: usb@01c1b000 { | ||
242 | compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; | ||
243 | reg = <0x01c1b000 0x100>; | ||
244 | interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; | ||
245 | clocks = <&ccu CLK_BUS_EHCI1>, <&ccu CLK_BUS_OHCI1>; | ||
246 | resets = <&ccu RST_BUS_EHCI1>, <&ccu RST_BUS_OHCI1>; | ||
247 | phys = <&usbphy 1>; | ||
248 | phy-names = "usb"; | ||
249 | status = "disabled"; | ||
250 | }; | ||
251 | |||
252 | ohci1: usb@01c1b400 { | ||
253 | compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; | ||
254 | reg = <0x01c1b400 0x100>; | ||
255 | interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; | ||
256 | clocks = <&ccu CLK_BUS_EHCI1>, <&ccu CLK_BUS_OHCI1>, | ||
257 | <&ccu CLK_USB_OHCI1>; | ||
258 | resets = <&ccu RST_BUS_EHCI1>, <&ccu RST_BUS_OHCI1>; | ||
259 | phys = <&usbphy 1>; | ||
260 | phy-names = "usb"; | ||
261 | status = "disabled"; | ||
262 | }; | ||
263 | |||
264 | ehci2: usb@01c1c000 { | ||
265 | compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; | ||
266 | reg = <0x01c1c000 0x100>; | ||
267 | interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; | ||
268 | clocks = <&ccu CLK_BUS_EHCI2>, <&ccu CLK_BUS_OHCI2>; | ||
269 | resets = <&ccu RST_BUS_EHCI2>, <&ccu RST_BUS_OHCI2>; | ||
270 | phys = <&usbphy 2>; | ||
271 | phy-names = "usb"; | ||
272 | status = "disabled"; | ||
273 | }; | ||
274 | |||
275 | ohci2: usb@01c1c400 { | ||
276 | compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; | ||
277 | reg = <0x01c1c400 0x100>; | ||
278 | interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; | ||
279 | clocks = <&ccu CLK_BUS_EHCI2>, <&ccu CLK_BUS_OHCI2>, | ||
280 | <&ccu CLK_USB_OHCI2>; | ||
281 | resets = <&ccu RST_BUS_EHCI2>, <&ccu RST_BUS_OHCI2>; | ||
282 | phys = <&usbphy 2>; | ||
283 | phy-names = "usb"; | ||
284 | status = "disabled"; | ||
285 | }; | ||
286 | |||
287 | ehci3: usb@01c1d000 { | ||
288 | compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; | ||
289 | reg = <0x01c1d000 0x100>; | ||
290 | interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; | ||
291 | clocks = <&ccu CLK_BUS_EHCI3>, <&ccu CLK_BUS_OHCI3>; | ||
292 | resets = <&ccu RST_BUS_EHCI3>, <&ccu RST_BUS_OHCI3>; | ||
293 | phys = <&usbphy 3>; | ||
294 | phy-names = "usb"; | ||
295 | status = "disabled"; | ||
296 | }; | ||
297 | |||
298 | ohci3: usb@01c1d400 { | ||
299 | compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; | ||
300 | reg = <0x01c1d400 0x100>; | ||
301 | interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; | ||
302 | clocks = <&ccu CLK_BUS_EHCI3>, <&ccu CLK_BUS_OHCI3>, | ||
303 | <&ccu CLK_USB_OHCI3>; | ||
304 | resets = <&ccu RST_BUS_EHCI3>, <&ccu RST_BUS_OHCI3>; | ||
305 | phys = <&usbphy 3>; | ||
306 | phy-names = "usb"; | ||
307 | status = "disabled"; | ||
308 | }; | ||
309 | |||
310 | ccu: clock@01c20000 { | ||
311 | compatible = "allwinner,sun8i-h3-ccu"; | ||
312 | reg = <0x01c20000 0x400>; | ||
313 | clocks = <&osc24M>, <&osc32k>; | ||
314 | clock-names = "hosc", "losc"; | ||
315 | #clock-cells = <1>; | ||
316 | #reset-cells = <1>; | ||
317 | }; | ||
318 | |||
319 | pio: pinctrl@01c20800 { | ||
320 | compatible = "allwinner,sun8i-h3-pinctrl"; | ||
321 | reg = <0x01c20800 0x400>; | ||
322 | interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, | ||
323 | <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; | ||
324 | clocks = <&ccu CLK_BUS_PIO>, <&osc24M>, <&osc32k>; | ||
325 | clock-names = "apb", "hosc", "losc"; | ||
326 | gpio-controller; | ||
327 | #gpio-cells = <3>; | ||
328 | interrupt-controller; | ||
329 | #interrupt-cells = <3>; | ||
330 | |||
331 | i2c0_pins: i2c0 { | ||
332 | pins = "PA11", "PA12"; | ||
333 | function = "i2c0"; | ||
334 | }; | ||
335 | |||
336 | i2c1_pins: i2c1 { | ||
337 | pins = "PA18", "PA19"; | ||
338 | function = "i2c1"; | ||
339 | }; | ||
340 | |||
341 | i2c2_pins: i2c2 { | ||
342 | pins = "PE12", "PE13"; | ||
343 | function = "i2c2"; | ||
344 | }; | ||
345 | |||
346 | mmc0_pins_a: mmc0@0 { | ||
347 | pins = "PF0", "PF1", "PF2", "PF3", | ||
348 | "PF4", "PF5"; | ||
349 | function = "mmc0"; | ||
350 | drive-strength = <30>; | ||
351 | bias-pull-up; | ||
352 | }; | ||
353 | |||
354 | mmc0_cd_pin: mmc0_cd_pin@0 { | ||
355 | pins = "PF6"; | ||
356 | function = "gpio_in"; | ||
357 | bias-pull-up; | ||
358 | }; | ||
359 | |||
360 | mmc1_pins_a: mmc1@0 { | ||
361 | pins = "PG0", "PG1", "PG2", "PG3", | ||
362 | "PG4", "PG5"; | ||
363 | function = "mmc1"; | ||
364 | drive-strength = <30>; | ||
365 | bias-pull-up; | ||
366 | }; | ||
367 | |||
368 | mmc2_8bit_pins: mmc2_8bit { | ||
369 | pins = "PC5", "PC6", "PC8", | ||
370 | "PC9", "PC10", "PC11", | ||
371 | "PC12", "PC13", "PC14", | ||
372 | "PC15", "PC16"; | ||
373 | function = "mmc2"; | ||
374 | drive-strength = <30>; | ||
375 | bias-pull-up; | ||
376 | }; | ||
377 | |||
378 | spdif_tx_pins_a: spdif@0 { | ||
379 | pins = "PA17"; | ||
380 | function = "spdif"; | ||
381 | }; | ||
382 | |||
383 | spi0_pins: spi0 { | ||
384 | pins = "PC0", "PC1", "PC2", "PC3"; | ||
385 | function = "spi0"; | ||
386 | }; | ||
387 | |||
388 | spi1_pins: spi1 { | ||
389 | pins = "PA15", "PA16", "PA14", "PA13"; | ||
390 | function = "spi1"; | ||
391 | }; | ||
392 | |||
393 | uart0_pins_a: uart0@0 { | ||
394 | pins = "PA4", "PA5"; | ||
395 | function = "uart0"; | ||
396 | }; | ||
397 | |||
398 | uart1_pins: uart1 { | ||
399 | pins = "PG6", "PG7"; | ||
400 | function = "uart1"; | ||
401 | }; | ||
402 | |||
403 | uart1_rts_cts_pins: uart1_rts_cts { | ||
404 | pins = "PG8", "PG9"; | ||
405 | function = "uart1"; | ||
406 | }; | ||
407 | |||
408 | uart2_pins: uart2 { | ||
409 | pins = "PA0", "PA1"; | ||
410 | function = "uart2"; | ||
411 | }; | ||
412 | |||
413 | uart3_pins: uart3 { | ||
414 | pins = "PA13", "PA14"; | ||
415 | function = "uart3"; | ||
416 | }; | ||
417 | }; | ||
418 | |||
419 | timer@01c20c00 { | ||
420 | compatible = "allwinner,sun4i-a10-timer"; | ||
421 | reg = <0x01c20c00 0xa0>; | ||
422 | interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>, | ||
423 | <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; | ||
424 | clocks = <&osc24M>; | ||
425 | }; | ||
426 | |||
427 | spi0: spi@01c68000 { | ||
428 | compatible = "allwinner,sun8i-h3-spi"; | ||
429 | reg = <0x01c68000 0x1000>; | ||
430 | interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; | ||
431 | clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_SPI0>; | ||
432 | clock-names = "ahb", "mod"; | ||
433 | dmas = <&dma 23>, <&dma 23>; | ||
434 | dma-names = "rx", "tx"; | ||
435 | pinctrl-names = "default"; | ||
436 | pinctrl-0 = <&spi0_pins>; | ||
437 | resets = <&ccu RST_BUS_SPI0>; | ||
438 | status = "disabled"; | ||
439 | #address-cells = <1>; | ||
440 | #size-cells = <0>; | ||
441 | }; | ||
442 | |||
443 | spi1: spi@01c69000 { | ||
444 | compatible = "allwinner,sun8i-h3-spi"; | ||
445 | reg = <0x01c69000 0x1000>; | ||
446 | interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; | ||
447 | clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_SPI1>; | ||
448 | clock-names = "ahb", "mod"; | ||
449 | dmas = <&dma 24>, <&dma 24>; | ||
450 | dma-names = "rx", "tx"; | ||
451 | pinctrl-names = "default"; | ||
452 | pinctrl-0 = <&spi1_pins>; | ||
453 | resets = <&ccu RST_BUS_SPI1>; | ||
454 | status = "disabled"; | ||
455 | #address-cells = <1>; | ||
456 | #size-cells = <0>; | ||
457 | }; | ||
458 | |||
459 | wdt0: watchdog@01c20ca0 { | ||
460 | compatible = "allwinner,sun6i-a31-wdt"; | ||
461 | reg = <0x01c20ca0 0x20>; | ||
462 | interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; | ||
463 | }; | ||
464 | |||
465 | spdif: spdif@01c21000 { | ||
466 | #sound-dai-cells = <0>; | ||
467 | compatible = "allwinner,sun8i-h3-spdif"; | ||
468 | reg = <0x01c21000 0x400>; | ||
469 | interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; | ||
470 | clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>; | ||
471 | resets = <&ccu RST_BUS_SPDIF>; | ||
472 | clock-names = "apb", "spdif"; | ||
473 | dmas = <&dma 2>; | ||
474 | dma-names = "tx"; | ||
475 | status = "disabled"; | ||
476 | }; | ||
477 | |||
478 | pwm: pwm@01c21400 { | ||
479 | compatible = "allwinner,sun8i-h3-pwm"; | ||
480 | reg = <0x01c21400 0x8>; | ||
481 | clocks = <&osc24M>; | ||
482 | #pwm-cells = <3>; | ||
483 | status = "disabled"; | ||
484 | }; | ||
485 | |||
486 | codec: codec@01c22c00 { | ||
487 | #sound-dai-cells = <0>; | ||
488 | compatible = "allwinner,sun8i-h3-codec"; | ||
489 | reg = <0x01c22c00 0x400>; | ||
490 | interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; | ||
491 | clocks = <&ccu CLK_BUS_CODEC>, <&ccu CLK_AC_DIG>; | ||
492 | clock-names = "apb", "codec"; | ||
493 | resets = <&ccu RST_BUS_CODEC>; | ||
494 | dmas = <&dma 15>, <&dma 15>; | ||
495 | dma-names = "rx", "tx"; | ||
496 | allwinner,codec-analog-controls = <&codec_analog>; | ||
497 | status = "disabled"; | ||
498 | }; | ||
499 | |||
500 | uart0: serial@01c28000 { | ||
501 | compatible = "snps,dw-apb-uart"; | ||
502 | reg = <0x01c28000 0x400>; | ||
503 | interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; | ||
504 | reg-shift = <2>; | ||
505 | reg-io-width = <4>; | ||
506 | clocks = <&ccu CLK_BUS_UART0>; | ||
507 | resets = <&ccu RST_BUS_UART0>; | ||
508 | dmas = <&dma 6>, <&dma 6>; | ||
509 | dma-names = "rx", "tx"; | ||
510 | status = "disabled"; | ||
511 | }; | ||
512 | |||
513 | uart1: serial@01c28400 { | ||
514 | compatible = "snps,dw-apb-uart"; | ||
515 | reg = <0x01c28400 0x400>; | ||
516 | interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; | ||
517 | reg-shift = <2>; | ||
518 | reg-io-width = <4>; | ||
519 | clocks = <&ccu CLK_BUS_UART1>; | ||
520 | resets = <&ccu RST_BUS_UART1>; | ||
521 | dmas = <&dma 7>, <&dma 7>; | ||
522 | dma-names = "rx", "tx"; | ||
523 | status = "disabled"; | ||
524 | }; | ||
525 | |||
526 | uart2: serial@01c28800 { | ||
527 | compatible = "snps,dw-apb-uart"; | ||
528 | reg = <0x01c28800 0x400>; | ||
529 | interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; | ||
530 | reg-shift = <2>; | ||
531 | reg-io-width = <4>; | ||
532 | clocks = <&ccu CLK_BUS_UART2>; | ||
533 | resets = <&ccu RST_BUS_UART2>; | ||
534 | dmas = <&dma 8>, <&dma 8>; | ||
535 | dma-names = "rx", "tx"; | ||
536 | status = "disabled"; | ||
537 | }; | ||
538 | |||
539 | uart3: serial@01c28c00 { | ||
540 | compatible = "snps,dw-apb-uart"; | ||
541 | reg = <0x01c28c00 0x400>; | ||
542 | interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; | ||
543 | reg-shift = <2>; | ||
544 | reg-io-width = <4>; | ||
545 | clocks = <&ccu CLK_BUS_UART3>; | ||
546 | resets = <&ccu RST_BUS_UART3>; | ||
547 | dmas = <&dma 9>, <&dma 9>; | ||
548 | dma-names = "rx", "tx"; | ||
549 | status = "disabled"; | ||
550 | }; | ||
551 | |||
552 | i2c0: i2c@01c2ac00 { | ||
553 | compatible = "allwinner,sun6i-a31-i2c"; | ||
554 | reg = <0x01c2ac00 0x400>; | ||
555 | interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; | ||
556 | clocks = <&ccu CLK_BUS_I2C0>; | ||
557 | resets = <&ccu RST_BUS_I2C0>; | ||
558 | pinctrl-names = "default"; | ||
559 | pinctrl-0 = <&i2c0_pins>; | ||
560 | status = "disabled"; | ||
561 | #address-cells = <1>; | ||
562 | #size-cells = <0>; | ||
563 | }; | ||
564 | |||
565 | i2c1: i2c@01c2b000 { | ||
566 | compatible = "allwinner,sun6i-a31-i2c"; | ||
567 | reg = <0x01c2b000 0x400>; | ||
568 | interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; | ||
569 | clocks = <&ccu CLK_BUS_I2C1>; | ||
570 | resets = <&ccu RST_BUS_I2C1>; | ||
571 | pinctrl-names = "default"; | ||
572 | pinctrl-0 = <&i2c1_pins>; | ||
573 | status = "disabled"; | ||
574 | #address-cells = <1>; | ||
575 | #size-cells = <0>; | ||
576 | }; | ||
577 | |||
578 | i2c2: i2c@01c2b400 { | ||
579 | compatible = "allwinner,sun6i-a31-i2c"; | ||
580 | reg = <0x01c2b000 0x400>; | ||
581 | interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; | ||
582 | clocks = <&ccu CLK_BUS_I2C2>; | ||
583 | resets = <&ccu RST_BUS_I2C2>; | ||
584 | pinctrl-names = "default"; | ||
585 | pinctrl-0 = <&i2c2_pins>; | ||
586 | status = "disabled"; | ||
587 | #address-cells = <1>; | ||
588 | #size-cells = <0>; | ||
589 | }; | ||
590 | |||
591 | gic: interrupt-controller@01c81000 { | ||
592 | compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic"; | ||
593 | reg = <0x01c81000 0x1000>, | ||
594 | <0x01c82000 0x2000>, | ||
595 | <0x01c84000 0x2000>, | ||
596 | <0x01c86000 0x2000>; | ||
597 | interrupt-controller; | ||
598 | #interrupt-cells = <3>; | ||
599 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | ||
600 | }; | ||
601 | |||
602 | rtc: rtc@01f00000 { | ||
603 | compatible = "allwinner,sun6i-a31-rtc"; | ||
604 | reg = <0x01f00000 0x54>; | ||
605 | interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, | ||
606 | <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; | ||
607 | }; | ||
608 | |||
609 | apb0_reset: reset@01f014b0 { | ||
610 | reg = <0x01f014b0 0x4>; | ||
611 | compatible = "allwinner,sun6i-a31-clock-reset"; | ||
612 | #reset-cells = <1>; | ||
613 | }; | ||
614 | 87 | ||
615 | codec_analog: codec-analog@01f015c0 { | 88 | &mmc0 { |
616 | compatible = "allwinner,sun8i-h3-codec-analog"; | 89 | compatible = "allwinner,sun7i-a20-mmc"; |
617 | reg = <0x01f015c0 0x4>; | 90 | clocks = <&ccu CLK_BUS_MMC0>, |
618 | }; | 91 | <&ccu CLK_MMC0>, |
92 | <&ccu CLK_MMC0_OUTPUT>, | ||
93 | <&ccu CLK_MMC0_SAMPLE>; | ||
94 | clock-names = "ahb", | ||
95 | "mmc", | ||
96 | "output", | ||
97 | "sample"; | ||
98 | }; | ||
619 | 99 | ||
620 | ir: ir@01f02000 { | 100 | &mmc1 { |
621 | compatible = "allwinner,sun5i-a13-ir"; | 101 | compatible = "allwinner,sun7i-a20-mmc"; |
622 | clocks = <&apb0_gates 1>, <&ir_clk>; | 102 | clocks = <&ccu CLK_BUS_MMC1>, |
623 | clock-names = "apb", "ir"; | 103 | <&ccu CLK_MMC1>, |
624 | resets = <&apb0_reset 1>; | 104 | <&ccu CLK_MMC1_OUTPUT>, |
625 | interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; | 105 | <&ccu CLK_MMC1_SAMPLE>; |
626 | reg = <0x01f02000 0x40>; | 106 | clock-names = "ahb", |
627 | status = "disabled"; | 107 | "mmc", |
628 | }; | 108 | "output", |
109 | "sample"; | ||
110 | }; | ||
629 | 111 | ||
630 | r_pio: pinctrl@01f02c00 { | 112 | &mmc2 { |
631 | compatible = "allwinner,sun8i-h3-r-pinctrl"; | 113 | compatible = "allwinner,sun7i-a20-mmc"; |
632 | reg = <0x01f02c00 0x400>; | 114 | clocks = <&ccu CLK_BUS_MMC2>, |
633 | interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; | 115 | <&ccu CLK_MMC2>, |
634 | clocks = <&apb0_gates 0>, <&osc24M>, <&osc32k>; | 116 | <&ccu CLK_MMC2_OUTPUT>, |
635 | clock-names = "apb", "hosc", "losc"; | 117 | <&ccu CLK_MMC2_SAMPLE>; |
636 | resets = <&apb0_reset 0>; | 118 | clock-names = "ahb", |
637 | gpio-controller; | 119 | "mmc", |
638 | #gpio-cells = <3>; | 120 | "output", |
639 | interrupt-controller; | 121 | "sample"; |
640 | #interrupt-cells = <3>; | 122 | }; |
641 | 123 | ||
642 | ir_pins_a: ir@0 { | 124 | &pio { |
643 | pins = "PL11"; | 125 | compatible = "allwinner,sun8i-h3-pinctrl"; |
644 | function = "s_cir_rx"; | ||
645 | }; | ||
646 | }; | ||
647 | }; | ||
648 | }; | 126 | }; |
diff --git a/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts b/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts index 9112a200fd5e..3741ac71c3d6 100644 --- a/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts +++ b/arch/arm/boot/dts/sun9i-a80-cubieboard4.dts | |||
@@ -47,7 +47,6 @@ | |||
47 | #include "sun9i-a80.dtsi" | 47 | #include "sun9i-a80.dtsi" |
48 | 48 | ||
49 | #include <dt-bindings/gpio/gpio.h> | 49 | #include <dt-bindings/gpio/gpio.h> |
50 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
51 | 50 | ||
52 | / { | 51 | / { |
53 | model = "Cubietech Cubieboard4"; | 52 | model = "Cubietech Cubieboard4"; |
diff --git a/arch/arm/boot/dts/sun9i-a80-optimus.dts b/arch/arm/boot/dts/sun9i-a80-optimus.dts index 0fc3a87f5576..85f1ad670310 100644 --- a/arch/arm/boot/dts/sun9i-a80-optimus.dts +++ b/arch/arm/boot/dts/sun9i-a80-optimus.dts | |||
@@ -46,7 +46,6 @@ | |||
46 | #include "sun9i-a80.dtsi" | 46 | #include "sun9i-a80.dtsi" |
47 | 47 | ||
48 | #include <dt-bindings/gpio/gpio.h> | 48 | #include <dt-bindings/gpio/gpio.h> |
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | 49 | ||
51 | / { | 50 | / { |
52 | model = "Merrii A80 Optimus Board"; | 51 | model = "Merrii A80 Optimus Board"; |
diff --git a/arch/arm/boot/dts/sun9i-a80.dtsi b/arch/arm/boot/dts/sun9i-a80.dtsi index 15b6d122f878..759a72317eb8 100644 --- a/arch/arm/boot/dts/sun9i-a80.dtsi +++ b/arch/arm/boot/dts/sun9i-a80.dtsi | |||
@@ -46,8 +46,6 @@ | |||
46 | 46 | ||
47 | #include <dt-bindings/interrupt-controller/arm-gic.h> | 47 | #include <dt-bindings/interrupt-controller/arm-gic.h> |
48 | 48 | ||
49 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
50 | |||
51 | #include <dt-bindings/clock/sun9i-a80-ccu.h> | 49 | #include <dt-bindings/clock/sun9i-a80-ccu.h> |
52 | #include <dt-bindings/clock/sun9i-a80-de.h> | 50 | #include <dt-bindings/clock/sun9i-a80-de.h> |
53 | #include <dt-bindings/clock/sun9i-a80-usb.h> | 51 | #include <dt-bindings/clock/sun9i-a80-usb.h> |
diff --git a/arch/arm/boot/dts/sunxi-common-regulators.dtsi b/arch/arm/boot/dts/sunxi-common-regulators.dtsi index 17c09fed9e84..ce5c53e4452f 100644 --- a/arch/arm/boot/dts/sunxi-common-regulators.dtsi +++ b/arch/arm/boot/dts/sunxi-common-regulators.dtsi | |||
@@ -43,7 +43,6 @@ | |||
43 | */ | 43 | */ |
44 | 44 | ||
45 | #include <dt-bindings/gpio/gpio.h> | 45 | #include <dt-bindings/gpio/gpio.h> |
46 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
47 | 46 | ||
48 | &pio { | 47 | &pio { |
49 | ahci_pwr_pin_a: ahci_pwr_pin@0 { | 48 | ahci_pwr_pin_a: ahci_pwr_pin@0 { |
diff --git a/arch/arm/boot/dts/sunxi-h3-h5.dtsi b/arch/arm/boot/dts/sunxi-h3-h5.dtsi new file mode 100644 index 000000000000..6640ebfa6419 --- /dev/null +++ b/arch/arm/boot/dts/sunxi-h3-h5.dtsi | |||
@@ -0,0 +1,618 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2015 Jens Kuske <jenskuske@gmail.com> | ||
3 | * | ||
4 | * This file is dual-licensed: you can use it either under the terms | ||
5 | * of the GPL or the X11 license, at your option. Note that this dual | ||
6 | * licensing only applies to this file, and not this project as a | ||
7 | * whole. | ||
8 | * | ||
9 | * a) This file is free software; you can redistribute it and/or | ||
10 | * modify it under the terms of the GNU General Public License as | ||
11 | * published by the Free Software Foundation; either version 2 of the | ||
12 | * License, or (at your option) any later version. | ||
13 | * | ||
14 | * This file is distributed in the hope that it will be useful, | ||
15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
17 | * GNU General Public License for more details. | ||
18 | * | ||
19 | * Or, alternatively, | ||
20 | * | ||
21 | * b) Permission is hereby granted, free of charge, to any person | ||
22 | * obtaining a copy of this software and associated documentation | ||
23 | * files (the "Software"), to deal in the Software without | ||
24 | * restriction, including without limitation the rights to use, | ||
25 | * copy, modify, merge, publish, distribute, sublicense, and/or | ||
26 | * sell copies of the Software, and to permit persons to whom the | ||
27 | * Software is furnished to do so, subject to the following | ||
28 | * conditions: | ||
29 | * | ||
30 | * The above copyright notice and this permission notice shall be | ||
31 | * included in all copies or substantial portions of the Software. | ||
32 | * | ||
33 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, | ||
34 | * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES | ||
35 | * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND | ||
36 | * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT | ||
37 | * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, | ||
38 | * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING | ||
39 | * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR | ||
40 | * OTHER DEALINGS IN THE SOFTWARE. | ||
41 | */ | ||
42 | |||
43 | #include <dt-bindings/clock/sun8i-h3-ccu.h> | ||
44 | #include <dt-bindings/interrupt-controller/arm-gic.h> | ||
45 | #include <dt-bindings/reset/sun8i-h3-ccu.h> | ||
46 | |||
47 | / { | ||
48 | interrupt-parent = <&gic>; | ||
49 | #address-cells = <1>; | ||
50 | #size-cells = <1>; | ||
51 | |||
52 | clocks { | ||
53 | #address-cells = <1>; | ||
54 | #size-cells = <1>; | ||
55 | ranges; | ||
56 | |||
57 | osc24M: osc24M_clk { | ||
58 | #clock-cells = <0>; | ||
59 | compatible = "fixed-clock"; | ||
60 | clock-frequency = <24000000>; | ||
61 | clock-output-names = "osc24M"; | ||
62 | }; | ||
63 | |||
64 | osc32k: osc32k_clk { | ||
65 | #clock-cells = <0>; | ||
66 | compatible = "fixed-clock"; | ||
67 | clock-frequency = <32768>; | ||
68 | clock-output-names = "osc32k"; | ||
69 | }; | ||
70 | |||
71 | apb0: apb0_clk { | ||
72 | compatible = "fixed-factor-clock"; | ||
73 | #clock-cells = <0>; | ||
74 | clock-div = <1>; | ||
75 | clock-mult = <1>; | ||
76 | clocks = <&osc24M>; | ||
77 | clock-output-names = "apb0"; | ||
78 | }; | ||
79 | |||
80 | apb0_gates: clk@01f01428 { | ||
81 | compatible = "allwinner,sun8i-h3-apb0-gates-clk", | ||
82 | "allwinner,sun4i-a10-gates-clk"; | ||
83 | reg = <0x01f01428 0x4>; | ||
84 | #clock-cells = <1>; | ||
85 | clocks = <&apb0>; | ||
86 | clock-indices = <0>, <1>; | ||
87 | clock-output-names = "apb0_pio", "apb0_ir"; | ||
88 | }; | ||
89 | |||
90 | ir_clk: ir_clk@01f01454 { | ||
91 | compatible = "allwinner,sun4i-a10-mod0-clk"; | ||
92 | reg = <0x01f01454 0x4>; | ||
93 | #clock-cells = <0>; | ||
94 | clocks = <&osc32k>, <&osc24M>; | ||
95 | clock-output-names = "ir"; | ||
96 | }; | ||
97 | }; | ||
98 | |||
99 | soc { | ||
100 | compatible = "simple-bus"; | ||
101 | #address-cells = <1>; | ||
102 | #size-cells = <1>; | ||
103 | ranges; | ||
104 | |||
105 | dma: dma-controller@01c02000 { | ||
106 | compatible = "allwinner,sun8i-h3-dma"; | ||
107 | reg = <0x01c02000 0x1000>; | ||
108 | interrupts = <GIC_SPI 50 IRQ_TYPE_LEVEL_HIGH>; | ||
109 | clocks = <&ccu CLK_BUS_DMA>; | ||
110 | resets = <&ccu RST_BUS_DMA>; | ||
111 | #dma-cells = <1>; | ||
112 | }; | ||
113 | |||
114 | mmc0: mmc@01c0f000 { | ||
115 | /* compatible and clocks are in per SoC .dtsi file */ | ||
116 | reg = <0x01c0f000 0x1000>; | ||
117 | resets = <&ccu RST_BUS_MMC0>; | ||
118 | reset-names = "ahb"; | ||
119 | interrupts = <GIC_SPI 60 IRQ_TYPE_LEVEL_HIGH>; | ||
120 | status = "disabled"; | ||
121 | #address-cells = <1>; | ||
122 | #size-cells = <0>; | ||
123 | }; | ||
124 | |||
125 | mmc1: mmc@01c10000 { | ||
126 | /* compatible and clocks are in per SoC .dtsi file */ | ||
127 | reg = <0x01c10000 0x1000>; | ||
128 | resets = <&ccu RST_BUS_MMC1>; | ||
129 | reset-names = "ahb"; | ||
130 | interrupts = <GIC_SPI 61 IRQ_TYPE_LEVEL_HIGH>; | ||
131 | status = "disabled"; | ||
132 | #address-cells = <1>; | ||
133 | #size-cells = <0>; | ||
134 | }; | ||
135 | |||
136 | mmc2: mmc@01c11000 { | ||
137 | /* compatible and clocks are in per SoC .dtsi file */ | ||
138 | reg = <0x01c11000 0x1000>; | ||
139 | resets = <&ccu RST_BUS_MMC2>; | ||
140 | reset-names = "ahb"; | ||
141 | interrupts = <GIC_SPI 62 IRQ_TYPE_LEVEL_HIGH>; | ||
142 | status = "disabled"; | ||
143 | #address-cells = <1>; | ||
144 | #size-cells = <0>; | ||
145 | }; | ||
146 | |||
147 | usb_otg: usb@01c19000 { | ||
148 | compatible = "allwinner,sun8i-h3-musb"; | ||
149 | reg = <0x01c19000 0x400>; | ||
150 | clocks = <&ccu CLK_BUS_OTG>; | ||
151 | resets = <&ccu RST_BUS_OTG>; | ||
152 | interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>; | ||
153 | interrupt-names = "mc"; | ||
154 | phys = <&usbphy 0>; | ||
155 | phy-names = "usb"; | ||
156 | extcon = <&usbphy 0>; | ||
157 | status = "disabled"; | ||
158 | }; | ||
159 | |||
160 | usbphy: phy@01c19400 { | ||
161 | compatible = "allwinner,sun8i-h3-usb-phy"; | ||
162 | reg = <0x01c19400 0x2c>, | ||
163 | <0x01c1a800 0x4>, | ||
164 | <0x01c1b800 0x4>, | ||
165 | <0x01c1c800 0x4>, | ||
166 | <0x01c1d800 0x4>; | ||
167 | reg-names = "phy_ctrl", | ||
168 | "pmu0", | ||
169 | "pmu1", | ||
170 | "pmu2", | ||
171 | "pmu3"; | ||
172 | clocks = <&ccu CLK_USB_PHY0>, | ||
173 | <&ccu CLK_USB_PHY1>, | ||
174 | <&ccu CLK_USB_PHY2>, | ||
175 | <&ccu CLK_USB_PHY3>; | ||
176 | clock-names = "usb0_phy", | ||
177 | "usb1_phy", | ||
178 | "usb2_phy", | ||
179 | "usb3_phy"; | ||
180 | resets = <&ccu RST_USB_PHY0>, | ||
181 | <&ccu RST_USB_PHY1>, | ||
182 | <&ccu RST_USB_PHY2>, | ||
183 | <&ccu RST_USB_PHY3>; | ||
184 | reset-names = "usb0_reset", | ||
185 | "usb1_reset", | ||
186 | "usb2_reset", | ||
187 | "usb3_reset"; | ||
188 | status = "disabled"; | ||
189 | #phy-cells = <1>; | ||
190 | }; | ||
191 | |||
192 | ehci0: usb@01c1a000 { | ||
193 | compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; | ||
194 | reg = <0x01c1a000 0x100>; | ||
195 | interrupts = <GIC_SPI 72 IRQ_TYPE_LEVEL_HIGH>; | ||
196 | clocks = <&ccu CLK_BUS_EHCI0>, <&ccu CLK_BUS_OHCI0>; | ||
197 | resets = <&ccu RST_BUS_EHCI0>, <&ccu RST_BUS_OHCI0>; | ||
198 | status = "disabled"; | ||
199 | }; | ||
200 | |||
201 | ohci0: usb@01c1a400 { | ||
202 | compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; | ||
203 | reg = <0x01c1a400 0x100>; | ||
204 | interrupts = <GIC_SPI 73 IRQ_TYPE_LEVEL_HIGH>; | ||
205 | clocks = <&ccu CLK_BUS_EHCI0>, <&ccu CLK_BUS_OHCI0>, | ||
206 | <&ccu CLK_USB_OHCI0>; | ||
207 | resets = <&ccu RST_BUS_EHCI0>, <&ccu RST_BUS_OHCI0>; | ||
208 | status = "disabled"; | ||
209 | }; | ||
210 | |||
211 | ehci1: usb@01c1b000 { | ||
212 | compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; | ||
213 | reg = <0x01c1b000 0x100>; | ||
214 | interrupts = <GIC_SPI 74 IRQ_TYPE_LEVEL_HIGH>; | ||
215 | clocks = <&ccu CLK_BUS_EHCI1>, <&ccu CLK_BUS_OHCI1>; | ||
216 | resets = <&ccu RST_BUS_EHCI1>, <&ccu RST_BUS_OHCI1>; | ||
217 | phys = <&usbphy 1>; | ||
218 | phy-names = "usb"; | ||
219 | status = "disabled"; | ||
220 | }; | ||
221 | |||
222 | ohci1: usb@01c1b400 { | ||
223 | compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; | ||
224 | reg = <0x01c1b400 0x100>; | ||
225 | interrupts = <GIC_SPI 75 IRQ_TYPE_LEVEL_HIGH>; | ||
226 | clocks = <&ccu CLK_BUS_EHCI1>, <&ccu CLK_BUS_OHCI1>, | ||
227 | <&ccu CLK_USB_OHCI1>; | ||
228 | resets = <&ccu RST_BUS_EHCI1>, <&ccu RST_BUS_OHCI1>; | ||
229 | phys = <&usbphy 1>; | ||
230 | phy-names = "usb"; | ||
231 | status = "disabled"; | ||
232 | }; | ||
233 | |||
234 | ehci2: usb@01c1c000 { | ||
235 | compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; | ||
236 | reg = <0x01c1c000 0x100>; | ||
237 | interrupts = <GIC_SPI 76 IRQ_TYPE_LEVEL_HIGH>; | ||
238 | clocks = <&ccu CLK_BUS_EHCI2>, <&ccu CLK_BUS_OHCI2>; | ||
239 | resets = <&ccu RST_BUS_EHCI2>, <&ccu RST_BUS_OHCI2>; | ||
240 | phys = <&usbphy 2>; | ||
241 | phy-names = "usb"; | ||
242 | status = "disabled"; | ||
243 | }; | ||
244 | |||
245 | ohci2: usb@01c1c400 { | ||
246 | compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; | ||
247 | reg = <0x01c1c400 0x100>; | ||
248 | interrupts = <GIC_SPI 77 IRQ_TYPE_LEVEL_HIGH>; | ||
249 | clocks = <&ccu CLK_BUS_EHCI2>, <&ccu CLK_BUS_OHCI2>, | ||
250 | <&ccu CLK_USB_OHCI2>; | ||
251 | resets = <&ccu RST_BUS_EHCI2>, <&ccu RST_BUS_OHCI2>; | ||
252 | phys = <&usbphy 2>; | ||
253 | phy-names = "usb"; | ||
254 | status = "disabled"; | ||
255 | }; | ||
256 | |||
257 | ehci3: usb@01c1d000 { | ||
258 | compatible = "allwinner,sun8i-h3-ehci", "generic-ehci"; | ||
259 | reg = <0x01c1d000 0x100>; | ||
260 | interrupts = <GIC_SPI 78 IRQ_TYPE_LEVEL_HIGH>; | ||
261 | clocks = <&ccu CLK_BUS_EHCI3>, <&ccu CLK_BUS_OHCI3>; | ||
262 | resets = <&ccu RST_BUS_EHCI3>, <&ccu RST_BUS_OHCI3>; | ||
263 | phys = <&usbphy 3>; | ||
264 | phy-names = "usb"; | ||
265 | status = "disabled"; | ||
266 | }; | ||
267 | |||
268 | ohci3: usb@01c1d400 { | ||
269 | compatible = "allwinner,sun8i-h3-ohci", "generic-ohci"; | ||
270 | reg = <0x01c1d400 0x100>; | ||
271 | interrupts = <GIC_SPI 79 IRQ_TYPE_LEVEL_HIGH>; | ||
272 | clocks = <&ccu CLK_BUS_EHCI3>, <&ccu CLK_BUS_OHCI3>, | ||
273 | <&ccu CLK_USB_OHCI3>; | ||
274 | resets = <&ccu RST_BUS_EHCI3>, <&ccu RST_BUS_OHCI3>; | ||
275 | phys = <&usbphy 3>; | ||
276 | phy-names = "usb"; | ||
277 | status = "disabled"; | ||
278 | }; | ||
279 | |||
280 | ccu: clock@01c20000 { | ||
281 | /* compatible is in per SoC .dtsi file */ | ||
282 | reg = <0x01c20000 0x400>; | ||
283 | clocks = <&osc24M>, <&osc32k>; | ||
284 | clock-names = "hosc", "losc"; | ||
285 | #clock-cells = <1>; | ||
286 | #reset-cells = <1>; | ||
287 | }; | ||
288 | |||
289 | pio: pinctrl@01c20800 { | ||
290 | /* compatible is in per SoC .dtsi file */ | ||
291 | reg = <0x01c20800 0x400>; | ||
292 | interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH>, | ||
293 | <GIC_SPI 17 IRQ_TYPE_LEVEL_HIGH>; | ||
294 | clocks = <&ccu CLK_BUS_PIO>, <&osc24M>, <&osc32k>; | ||
295 | clock-names = "apb", "hosc", "losc"; | ||
296 | gpio-controller; | ||
297 | #gpio-cells = <3>; | ||
298 | interrupt-controller; | ||
299 | #interrupt-cells = <3>; | ||
300 | |||
301 | i2c0_pins: i2c0 { | ||
302 | pins = "PA11", "PA12"; | ||
303 | function = "i2c0"; | ||
304 | }; | ||
305 | |||
306 | i2c1_pins: i2c1 { | ||
307 | pins = "PA18", "PA19"; | ||
308 | function = "i2c1"; | ||
309 | }; | ||
310 | |||
311 | i2c2_pins: i2c2 { | ||
312 | pins = "PE12", "PE13"; | ||
313 | function = "i2c2"; | ||
314 | }; | ||
315 | |||
316 | mmc0_pins_a: mmc0@0 { | ||
317 | pins = "PF0", "PF1", "PF2", "PF3", | ||
318 | "PF4", "PF5"; | ||
319 | function = "mmc0"; | ||
320 | drive-strength = <30>; | ||
321 | bias-pull-up; | ||
322 | }; | ||
323 | |||
324 | mmc0_cd_pin: mmc0_cd_pin@0 { | ||
325 | pins = "PF6"; | ||
326 | function = "gpio_in"; | ||
327 | bias-pull-up; | ||
328 | }; | ||
329 | |||
330 | mmc1_pins_a: mmc1@0 { | ||
331 | pins = "PG0", "PG1", "PG2", "PG3", | ||
332 | "PG4", "PG5"; | ||
333 | function = "mmc1"; | ||
334 | drive-strength = <30>; | ||
335 | bias-pull-up; | ||
336 | }; | ||
337 | |||
338 | mmc2_8bit_pins: mmc2_8bit { | ||
339 | pins = "PC5", "PC6", "PC8", | ||
340 | "PC9", "PC10", "PC11", | ||
341 | "PC12", "PC13", "PC14", | ||
342 | "PC15", "PC16"; | ||
343 | function = "mmc2"; | ||
344 | drive-strength = <30>; | ||
345 | bias-pull-up; | ||
346 | }; | ||
347 | |||
348 | spdif_tx_pins_a: spdif@0 { | ||
349 | pins = "PA17"; | ||
350 | function = "spdif"; | ||
351 | }; | ||
352 | |||
353 | spi0_pins: spi0 { | ||
354 | pins = "PC0", "PC1", "PC2", "PC3"; | ||
355 | function = "spi0"; | ||
356 | }; | ||
357 | |||
358 | spi1_pins: spi1 { | ||
359 | pins = "PA15", "PA16", "PA14", "PA13"; | ||
360 | function = "spi1"; | ||
361 | }; | ||
362 | |||
363 | uart0_pins_a: uart0@0 { | ||
364 | pins = "PA4", "PA5"; | ||
365 | function = "uart0"; | ||
366 | }; | ||
367 | |||
368 | uart1_pins: uart1 { | ||
369 | pins = "PG6", "PG7"; | ||
370 | function = "uart1"; | ||
371 | }; | ||
372 | |||
373 | uart1_rts_cts_pins: uart1_rts_cts { | ||
374 | pins = "PG8", "PG9"; | ||
375 | function = "uart1"; | ||
376 | }; | ||
377 | |||
378 | uart2_pins: uart2 { | ||
379 | pins = "PA0", "PA1"; | ||
380 | function = "uart2"; | ||
381 | }; | ||
382 | |||
383 | uart3_pins: uart3 { | ||
384 | pins = "PA13", "PA14"; | ||
385 | function = "uart3"; | ||
386 | }; | ||
387 | }; | ||
388 | |||
389 | timer@01c20c00 { | ||
390 | compatible = "allwinner,sun4i-a10-timer"; | ||
391 | reg = <0x01c20c00 0xa0>; | ||
392 | interrupts = <GIC_SPI 18 IRQ_TYPE_LEVEL_HIGH>, | ||
393 | <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; | ||
394 | clocks = <&osc24M>; | ||
395 | }; | ||
396 | |||
397 | spi0: spi@01c68000 { | ||
398 | compatible = "allwinner,sun8i-h3-spi"; | ||
399 | reg = <0x01c68000 0x1000>; | ||
400 | interrupts = <GIC_SPI 65 IRQ_TYPE_LEVEL_HIGH>; | ||
401 | clocks = <&ccu CLK_BUS_SPI0>, <&ccu CLK_SPI0>; | ||
402 | clock-names = "ahb", "mod"; | ||
403 | dmas = <&dma 23>, <&dma 23>; | ||
404 | dma-names = "rx", "tx"; | ||
405 | pinctrl-names = "default"; | ||
406 | pinctrl-0 = <&spi0_pins>; | ||
407 | resets = <&ccu RST_BUS_SPI0>; | ||
408 | status = "disabled"; | ||
409 | #address-cells = <1>; | ||
410 | #size-cells = <0>; | ||
411 | }; | ||
412 | |||
413 | spi1: spi@01c69000 { | ||
414 | compatible = "allwinner,sun8i-h3-spi"; | ||
415 | reg = <0x01c69000 0x1000>; | ||
416 | interrupts = <GIC_SPI 66 IRQ_TYPE_LEVEL_HIGH>; | ||
417 | clocks = <&ccu CLK_BUS_SPI1>, <&ccu CLK_SPI1>; | ||
418 | clock-names = "ahb", "mod"; | ||
419 | dmas = <&dma 24>, <&dma 24>; | ||
420 | dma-names = "rx", "tx"; | ||
421 | pinctrl-names = "default"; | ||
422 | pinctrl-0 = <&spi1_pins>; | ||
423 | resets = <&ccu RST_BUS_SPI1>; | ||
424 | status = "disabled"; | ||
425 | #address-cells = <1>; | ||
426 | #size-cells = <0>; | ||
427 | }; | ||
428 | |||
429 | wdt0: watchdog@01c20ca0 { | ||
430 | compatible = "allwinner,sun6i-a31-wdt"; | ||
431 | reg = <0x01c20ca0 0x20>; | ||
432 | interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>; | ||
433 | }; | ||
434 | |||
435 | spdif: spdif@01c21000 { | ||
436 | #sound-dai-cells = <0>; | ||
437 | compatible = "allwinner,sun8i-h3-spdif"; | ||
438 | reg = <0x01c21000 0x400>; | ||
439 | interrupts = <GIC_SPI 12 IRQ_TYPE_LEVEL_HIGH>; | ||
440 | clocks = <&ccu CLK_BUS_SPDIF>, <&ccu CLK_SPDIF>; | ||
441 | resets = <&ccu RST_BUS_SPDIF>; | ||
442 | clock-names = "apb", "spdif"; | ||
443 | dmas = <&dma 2>; | ||
444 | dma-names = "tx"; | ||
445 | status = "disabled"; | ||
446 | }; | ||
447 | |||
448 | pwm: pwm@01c21400 { | ||
449 | compatible = "allwinner,sun8i-h3-pwm"; | ||
450 | reg = <0x01c21400 0x8>; | ||
451 | clocks = <&osc24M>; | ||
452 | #pwm-cells = <3>; | ||
453 | status = "disabled"; | ||
454 | }; | ||
455 | |||
456 | codec: codec@01c22c00 { | ||
457 | #sound-dai-cells = <0>; | ||
458 | compatible = "allwinner,sun8i-h3-codec"; | ||
459 | reg = <0x01c22c00 0x400>; | ||
460 | interrupts = <GIC_SPI 29 IRQ_TYPE_LEVEL_HIGH>; | ||
461 | clocks = <&ccu CLK_BUS_CODEC>, <&ccu CLK_AC_DIG>; | ||
462 | clock-names = "apb", "codec"; | ||
463 | resets = <&ccu RST_BUS_CODEC>; | ||
464 | dmas = <&dma 15>, <&dma 15>; | ||
465 | dma-names = "rx", "tx"; | ||
466 | allwinner,codec-analog-controls = <&codec_analog>; | ||
467 | status = "disabled"; | ||
468 | }; | ||
469 | |||
470 | uart0: serial@01c28000 { | ||
471 | compatible = "snps,dw-apb-uart"; | ||
472 | reg = <0x01c28000 0x400>; | ||
473 | interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; | ||
474 | reg-shift = <2>; | ||
475 | reg-io-width = <4>; | ||
476 | clocks = <&ccu CLK_BUS_UART0>; | ||
477 | resets = <&ccu RST_BUS_UART0>; | ||
478 | dmas = <&dma 6>, <&dma 6>; | ||
479 | dma-names = "rx", "tx"; | ||
480 | status = "disabled"; | ||
481 | }; | ||
482 | |||
483 | uart1: serial@01c28400 { | ||
484 | compatible = "snps,dw-apb-uart"; | ||
485 | reg = <0x01c28400 0x400>; | ||
486 | interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>; | ||
487 | reg-shift = <2>; | ||
488 | reg-io-width = <4>; | ||
489 | clocks = <&ccu CLK_BUS_UART1>; | ||
490 | resets = <&ccu RST_BUS_UART1>; | ||
491 | dmas = <&dma 7>, <&dma 7>; | ||
492 | dma-names = "rx", "tx"; | ||
493 | status = "disabled"; | ||
494 | }; | ||
495 | |||
496 | uart2: serial@01c28800 { | ||
497 | compatible = "snps,dw-apb-uart"; | ||
498 | reg = <0x01c28800 0x400>; | ||
499 | interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>; | ||
500 | reg-shift = <2>; | ||
501 | reg-io-width = <4>; | ||
502 | clocks = <&ccu CLK_BUS_UART2>; | ||
503 | resets = <&ccu RST_BUS_UART2>; | ||
504 | dmas = <&dma 8>, <&dma 8>; | ||
505 | dma-names = "rx", "tx"; | ||
506 | status = "disabled"; | ||
507 | }; | ||
508 | |||
509 | uart3: serial@01c28c00 { | ||
510 | compatible = "snps,dw-apb-uart"; | ||
511 | reg = <0x01c28c00 0x400>; | ||
512 | interrupts = <GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>; | ||
513 | reg-shift = <2>; | ||
514 | reg-io-width = <4>; | ||
515 | clocks = <&ccu CLK_BUS_UART3>; | ||
516 | resets = <&ccu RST_BUS_UART3>; | ||
517 | dmas = <&dma 9>, <&dma 9>; | ||
518 | dma-names = "rx", "tx"; | ||
519 | status = "disabled"; | ||
520 | }; | ||
521 | |||
522 | i2c0: i2c@01c2ac00 { | ||
523 | compatible = "allwinner,sun6i-a31-i2c"; | ||
524 | reg = <0x01c2ac00 0x400>; | ||
525 | interrupts = <GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH>; | ||
526 | clocks = <&ccu CLK_BUS_I2C0>; | ||
527 | resets = <&ccu RST_BUS_I2C0>; | ||
528 | pinctrl-names = "default"; | ||
529 | pinctrl-0 = <&i2c0_pins>; | ||
530 | status = "disabled"; | ||
531 | #address-cells = <1>; | ||
532 | #size-cells = <0>; | ||
533 | }; | ||
534 | |||
535 | i2c1: i2c@01c2b000 { | ||
536 | compatible = "allwinner,sun6i-a31-i2c"; | ||
537 | reg = <0x01c2b000 0x400>; | ||
538 | interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; | ||
539 | clocks = <&ccu CLK_BUS_I2C1>; | ||
540 | resets = <&ccu RST_BUS_I2C1>; | ||
541 | pinctrl-names = "default"; | ||
542 | pinctrl-0 = <&i2c1_pins>; | ||
543 | status = "disabled"; | ||
544 | #address-cells = <1>; | ||
545 | #size-cells = <0>; | ||
546 | }; | ||
547 | |||
548 | i2c2: i2c@01c2b400 { | ||
549 | compatible = "allwinner,sun6i-a31-i2c"; | ||
550 | reg = <0x01c2b000 0x400>; | ||
551 | interrupts = <GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH>; | ||
552 | clocks = <&ccu CLK_BUS_I2C2>; | ||
553 | resets = <&ccu RST_BUS_I2C2>; | ||
554 | pinctrl-names = "default"; | ||
555 | pinctrl-0 = <&i2c2_pins>; | ||
556 | status = "disabled"; | ||
557 | #address-cells = <1>; | ||
558 | #size-cells = <0>; | ||
559 | }; | ||
560 | |||
561 | gic: interrupt-controller@01c81000 { | ||
562 | compatible = "arm,gic-400"; | ||
563 | reg = <0x01c81000 0x1000>, | ||
564 | <0x01c82000 0x2000>, | ||
565 | <0x01c84000 0x2000>, | ||
566 | <0x01c86000 0x2000>; | ||
567 | interrupt-controller; | ||
568 | #interrupt-cells = <3>; | ||
569 | interrupts = <GIC_PPI 9 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_HIGH)>; | ||
570 | }; | ||
571 | |||
572 | rtc: rtc@01f00000 { | ||
573 | compatible = "allwinner,sun6i-a31-rtc"; | ||
574 | reg = <0x01f00000 0x54>; | ||
575 | interrupts = <GIC_SPI 40 IRQ_TYPE_LEVEL_HIGH>, | ||
576 | <GIC_SPI 41 IRQ_TYPE_LEVEL_HIGH>; | ||
577 | }; | ||
578 | |||
579 | apb0_reset: reset@01f014b0 { | ||
580 | reg = <0x01f014b0 0x4>; | ||
581 | compatible = "allwinner,sun6i-a31-clock-reset"; | ||
582 | #reset-cells = <1>; | ||
583 | }; | ||
584 | |||
585 | codec_analog: codec-analog@01f015c0 { | ||
586 | compatible = "allwinner,sun8i-h3-codec-analog"; | ||
587 | reg = <0x01f015c0 0x4>; | ||
588 | }; | ||
589 | |||
590 | ir: ir@01f02000 { | ||
591 | compatible = "allwinner,sun5i-a13-ir"; | ||
592 | clocks = <&apb0_gates 1>, <&ir_clk>; | ||
593 | clock-names = "apb", "ir"; | ||
594 | resets = <&apb0_reset 1>; | ||
595 | interrupts = <GIC_SPI 37 IRQ_TYPE_LEVEL_HIGH>; | ||
596 | reg = <0x01f02000 0x40>; | ||
597 | status = "disabled"; | ||
598 | }; | ||
599 | |||
600 | r_pio: pinctrl@01f02c00 { | ||
601 | compatible = "allwinner,sun8i-h3-r-pinctrl"; | ||
602 | reg = <0x01f02c00 0x400>; | ||
603 | interrupts = <GIC_SPI 45 IRQ_TYPE_LEVEL_HIGH>; | ||
604 | clocks = <&apb0_gates 0>, <&osc24M>, <&osc32k>; | ||
605 | clock-names = "apb", "hosc", "losc"; | ||
606 | resets = <&apb0_reset 0>; | ||
607 | gpio-controller; | ||
608 | #gpio-cells = <3>; | ||
609 | interrupt-controller; | ||
610 | #interrupt-cells = <3>; | ||
611 | |||
612 | ir_pins_a: ir@0 { | ||
613 | pins = "PL11"; | ||
614 | function = "s_cir_rx"; | ||
615 | }; | ||
616 | }; | ||
617 | }; | ||
618 | }; | ||
diff --git a/arch/arm/boot/dts/sunxi-reference-design-tablet.dtsi b/arch/arm/boot/dts/sunxi-reference-design-tablet.dtsi index b8241462fcea..245d0bcde441 100644 --- a/arch/arm/boot/dts/sunxi-reference-design-tablet.dtsi +++ b/arch/arm/boot/dts/sunxi-reference-design-tablet.dtsi | |||
@@ -42,7 +42,6 @@ | |||
42 | 42 | ||
43 | #include <dt-bindings/gpio/gpio.h> | 43 | #include <dt-bindings/gpio/gpio.h> |
44 | #include <dt-bindings/input/input.h> | 44 | #include <dt-bindings/input/input.h> |
45 | #include <dt-bindings/pinctrl/sun4i-a10.h> | ||
46 | #include "sunxi-common-regulators.dtsi" | 45 | #include "sunxi-common-regulators.dtsi" |
47 | 46 | ||
48 | &i2c0 { | 47 | &i2c0 { |
diff --git a/arch/arm/boot/dts/uniphier-ld4-ref.dts b/arch/arm/boot/dts/uniphier-ld4-ref.dts index 110031bc0e7e..e0da4ee21c21 100644 --- a/arch/arm/boot/dts/uniphier-ld4-ref.dts +++ b/arch/arm/boot/dts/uniphier-ld4-ref.dts | |||
@@ -52,11 +52,6 @@ | |||
52 | model = "UniPhier LD4 Reference Board"; | 52 | model = "UniPhier LD4 Reference Board"; |
53 | compatible = "socionext,uniphier-ld4-ref", "socionext,uniphier-ld4"; | 53 | compatible = "socionext,uniphier-ld4-ref", "socionext,uniphier-ld4"; |
54 | 54 | ||
55 | memory { | ||
56 | device_type = "memory"; | ||
57 | reg = <0x80000000 0x20000000>; | ||
58 | }; | ||
59 | |||
60 | chosen { | 55 | chosen { |
61 | stdout-path = "serial0:115200n8"; | 56 | stdout-path = "serial0:115200n8"; |
62 | }; | 57 | }; |
@@ -71,6 +66,11 @@ | |||
71 | i2c2 = &i2c2; | 66 | i2c2 = &i2c2; |
72 | i2c3 = &i2c3; | 67 | i2c3 = &i2c3; |
73 | }; | 68 | }; |
69 | |||
70 | memory@80000000 { | ||
71 | device_type = "memory"; | ||
72 | reg = <0x80000000 0x20000000>; | ||
73 | }; | ||
74 | }; | 74 | }; |
75 | 75 | ||
76 | ðsc { | 76 | ðsc { |
diff --git a/arch/arm/boot/dts/uniphier-ld4.dtsi b/arch/arm/boot/dts/uniphier-ld4.dtsi index a7c494d7c43a..4f5fe15eaee2 100644 --- a/arch/arm/boot/dts/uniphier-ld4.dtsi +++ b/arch/arm/boot/dts/uniphier-ld4.dtsi | |||
@@ -43,10 +43,10 @@ | |||
43 | * OTHER DEALINGS IN THE SOFTWARE. | 43 | * OTHER DEALINGS IN THE SOFTWARE. |
44 | */ | 44 | */ |
45 | 45 | ||
46 | /include/ "skeleton.dtsi" | ||
47 | |||
48 | / { | 46 | / { |
49 | compatible = "socionext,uniphier-ld4"; | 47 | compatible = "socionext,uniphier-ld4"; |
48 | #address-cells = <1>; | ||
49 | #size-cells = <1>; | ||
50 | 50 | ||
51 | cpus { | 51 | cpus { |
52 | #address-cells = <1>; | 52 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/uniphier-ld6b-ref.dts b/arch/arm/boot/dts/uniphier-ld6b-ref.dts index c05d631dcf02..a397a8811c78 100644 --- a/arch/arm/boot/dts/uniphier-ld6b-ref.dts +++ b/arch/arm/boot/dts/uniphier-ld6b-ref.dts | |||
@@ -52,11 +52,6 @@ | |||
52 | model = "UniPhier LD6b Reference Board"; | 52 | model = "UniPhier LD6b Reference Board"; |
53 | compatible = "socionext,uniphier-ld6b-ref", "socionext,uniphier-ld6b"; | 53 | compatible = "socionext,uniphier-ld6b-ref", "socionext,uniphier-ld6b"; |
54 | 54 | ||
55 | memory { | ||
56 | device_type = "memory"; | ||
57 | reg = <0x80000000 0x80000000>; | ||
58 | }; | ||
59 | |||
60 | chosen { | 55 | chosen { |
61 | stdout-path = "serial0:115200n8"; | 56 | stdout-path = "serial0:115200n8"; |
62 | }; | 57 | }; |
@@ -73,6 +68,11 @@ | |||
73 | i2c5 = &i2c5; | 68 | i2c5 = &i2c5; |
74 | i2c6 = &i2c6; | 69 | i2c6 = &i2c6; |
75 | }; | 70 | }; |
71 | |||
72 | memory@80000000 { | ||
73 | device_type = "memory"; | ||
74 | reg = <0x80000000 0x80000000>; | ||
75 | }; | ||
76 | }; | 76 | }; |
77 | 77 | ||
78 | ðsc { | 78 | ðsc { |
diff --git a/arch/arm/boot/dts/uniphier-pinctrl.dtsi b/arch/arm/boot/dts/uniphier-pinctrl.dtsi index 8ee79da9af7c..246f35ffb638 100644 --- a/arch/arm/boot/dts/uniphier-pinctrl.dtsi +++ b/arch/arm/boot/dts/uniphier-pinctrl.dtsi | |||
@@ -45,7 +45,7 @@ | |||
45 | 45 | ||
46 | &pinctrl { | 46 | &pinctrl { |
47 | pinctrl_emmc: emmc_grp { | 47 | pinctrl_emmc: emmc_grp { |
48 | groups = "emmc"; | 48 | groups = "emmc", "emmc_dat8"; |
49 | function = "emmc"; | 49 | function = "emmc"; |
50 | }; | 50 | }; |
51 | 51 | ||
diff --git a/arch/arm/boot/dts/uniphier-pro4-ace.dts b/arch/arm/boot/dts/uniphier-pro4-ace.dts index 0ab0a40c041e..fefc89149234 100644 --- a/arch/arm/boot/dts/uniphier-pro4-ace.dts +++ b/arch/arm/boot/dts/uniphier-pro4-ace.dts | |||
@@ -50,11 +50,6 @@ | |||
50 | model = "UniPhier Pro4 Ace Board"; | 50 | model = "UniPhier Pro4 Ace Board"; |
51 | compatible = "socionext,uniphier-pro4-ace", "socionext,uniphier-pro4"; | 51 | compatible = "socionext,uniphier-pro4-ace", "socionext,uniphier-pro4"; |
52 | 52 | ||
53 | memory { | ||
54 | device_type = "memory"; | ||
55 | reg = <0x80000000 0x40000000>; | ||
56 | }; | ||
57 | |||
58 | chosen { | 53 | chosen { |
59 | stdout-path = "serial0:115200n8"; | 54 | stdout-path = "serial0:115200n8"; |
60 | }; | 55 | }; |
@@ -70,6 +65,11 @@ | |||
70 | i2c5 = &i2c5; | 65 | i2c5 = &i2c5; |
71 | i2c6 = &i2c6; | 66 | i2c6 = &i2c6; |
72 | }; | 67 | }; |
68 | |||
69 | memory@80000000 { | ||
70 | device_type = "memory"; | ||
71 | reg = <0x80000000 0x40000000>; | ||
72 | }; | ||
73 | }; | 73 | }; |
74 | 74 | ||
75 | &serial0 { | 75 | &serial0 { |
@@ -90,6 +90,7 @@ | |||
90 | eeprom@54 { | 90 | eeprom@54 { |
91 | compatible = "st,24c64"; | 91 | compatible = "st,24c64"; |
92 | reg = <0x54>; | 92 | reg = <0x54>; |
93 | pagesize = <32>; | ||
93 | }; | 94 | }; |
94 | }; | 95 | }; |
95 | 96 | ||
diff --git a/arch/arm/boot/dts/uniphier-pro4-ref.dts b/arch/arm/boot/dts/uniphier-pro4-ref.dts index 9e92e60d25ce..6077e634d14a 100644 --- a/arch/arm/boot/dts/uniphier-pro4-ref.dts +++ b/arch/arm/boot/dts/uniphier-pro4-ref.dts | |||
@@ -52,11 +52,6 @@ | |||
52 | model = "UniPhier Pro4 Reference Board"; | 52 | model = "UniPhier Pro4 Reference Board"; |
53 | compatible = "socionext,uniphier-pro4-ref", "socionext,uniphier-pro4"; | 53 | compatible = "socionext,uniphier-pro4-ref", "socionext,uniphier-pro4"; |
54 | 54 | ||
55 | memory { | ||
56 | device_type = "memory"; | ||
57 | reg = <0x80000000 0x40000000>; | ||
58 | }; | ||
59 | |||
60 | chosen { | 55 | chosen { |
61 | stdout-path = "serial0:115200n8"; | 56 | stdout-path = "serial0:115200n8"; |
62 | }; | 57 | }; |
@@ -73,6 +68,11 @@ | |||
73 | i2c5 = &i2c5; | 68 | i2c5 = &i2c5; |
74 | i2c6 = &i2c6; | 69 | i2c6 = &i2c6; |
75 | }; | 70 | }; |
71 | |||
72 | memory@80000000 { | ||
73 | device_type = "memory"; | ||
74 | reg = <0x80000000 0x40000000>; | ||
75 | }; | ||
76 | }; | 76 | }; |
77 | 77 | ||
78 | ðsc { | 78 | ðsc { |
diff --git a/arch/arm/boot/dts/uniphier-pro4-sanji.dts b/arch/arm/boot/dts/uniphier-pro4-sanji.dts index dc4ea8832ce2..6c63c8bad825 100644 --- a/arch/arm/boot/dts/uniphier-pro4-sanji.dts +++ b/arch/arm/boot/dts/uniphier-pro4-sanji.dts | |||
@@ -50,11 +50,6 @@ | |||
50 | model = "UniPhier Pro4 Sanji Board"; | 50 | model = "UniPhier Pro4 Sanji Board"; |
51 | compatible = "socionext,uniphier-pro4-sanji", "socionext,uniphier-pro4"; | 51 | compatible = "socionext,uniphier-pro4-sanji", "socionext,uniphier-pro4"; |
52 | 52 | ||
53 | memory { | ||
54 | device_type = "memory"; | ||
55 | reg = <0x80000000 0x80000000>; | ||
56 | }; | ||
57 | |||
58 | chosen { | 53 | chosen { |
59 | stdout-path = "serial0:115200n8"; | 54 | stdout-path = "serial0:115200n8"; |
60 | }; | 55 | }; |
@@ -69,6 +64,11 @@ | |||
69 | i2c5 = &i2c5; | 64 | i2c5 = &i2c5; |
70 | i2c6 = &i2c6; | 65 | i2c6 = &i2c6; |
71 | }; | 66 | }; |
67 | |||
68 | memory@80000000 { | ||
69 | device_type = "memory"; | ||
70 | reg = <0x80000000 0x80000000>; | ||
71 | }; | ||
72 | }; | 72 | }; |
73 | 73 | ||
74 | &serial0 { | 74 | &serial0 { |
@@ -85,6 +85,7 @@ | |||
85 | eeprom@54 { | 85 | eeprom@54 { |
86 | compatible = "st,24c64"; | 86 | compatible = "st,24c64"; |
87 | reg = <0x54>; | 87 | reg = <0x54>; |
88 | pagesize = <32>; | ||
88 | }; | 89 | }; |
89 | }; | 90 | }; |
90 | 91 | ||
diff --git a/arch/arm/boot/dts/uniphier-pro4.dtsi b/arch/arm/boot/dts/uniphier-pro4.dtsi index e960b09ff01c..794a85a7068b 100644 --- a/arch/arm/boot/dts/uniphier-pro4.dtsi +++ b/arch/arm/boot/dts/uniphier-pro4.dtsi | |||
@@ -43,10 +43,10 @@ | |||
43 | * OTHER DEALINGS IN THE SOFTWARE. | 43 | * OTHER DEALINGS IN THE SOFTWARE. |
44 | */ | 44 | */ |
45 | 45 | ||
46 | /include/ "skeleton.dtsi" | ||
47 | |||
48 | / { | 46 | / { |
49 | compatible = "socionext,uniphier-pro4"; | 47 | compatible = "socionext,uniphier-pro4"; |
48 | #address-cells = <1>; | ||
49 | #size-cells = <1>; | ||
50 | 50 | ||
51 | cpus { | 51 | cpus { |
52 | #address-cells = <1>; | 52 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/uniphier-pro5.dtsi b/arch/arm/boot/dts/uniphier-pro5.dtsi index dbc5e5333163..df07b555cbed 100644 --- a/arch/arm/boot/dts/uniphier-pro5.dtsi +++ b/arch/arm/boot/dts/uniphier-pro5.dtsi | |||
@@ -43,10 +43,10 @@ | |||
43 | * OTHER DEALINGS IN THE SOFTWARE. | 43 | * OTHER DEALINGS IN THE SOFTWARE. |
44 | */ | 44 | */ |
45 | 45 | ||
46 | /include/ "skeleton.dtsi" | ||
47 | |||
48 | / { | 46 | / { |
49 | compatible = "socionext,uniphier-pro5"; | 47 | compatible = "socionext,uniphier-pro5"; |
48 | #address-cells = <1>; | ||
49 | #size-cells = <1>; | ||
50 | 50 | ||
51 | cpus { | 51 | cpus { |
52 | #address-cells = <1>; | 52 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/uniphier-pxs2-gentil.dts b/arch/arm/boot/dts/uniphier-pxs2-gentil.dts index 373818ace086..cccc86658d20 100644 --- a/arch/arm/boot/dts/uniphier-pxs2-gentil.dts +++ b/arch/arm/boot/dts/uniphier-pxs2-gentil.dts | |||
@@ -51,11 +51,6 @@ | |||
51 | compatible = "socionext,uniphier-pxs2-gentil", | 51 | compatible = "socionext,uniphier-pxs2-gentil", |
52 | "socionext,uniphier-pxs2"; | 52 | "socionext,uniphier-pxs2"; |
53 | 53 | ||
54 | memory { | ||
55 | device_type = "memory"; | ||
56 | reg = <0x80000000 0x80000000>; | ||
57 | }; | ||
58 | |||
59 | chosen { | 54 | chosen { |
60 | stdout-path = "serial0:115200n8"; | 55 | stdout-path = "serial0:115200n8"; |
61 | }; | 56 | }; |
@@ -70,6 +65,11 @@ | |||
70 | i2c5 = &i2c5; | 65 | i2c5 = &i2c5; |
71 | i2c6 = &i2c6; | 66 | i2c6 = &i2c6; |
72 | }; | 67 | }; |
68 | |||
69 | memory@80000000 { | ||
70 | device_type = "memory"; | ||
71 | reg = <0x80000000 0x80000000>; | ||
72 | }; | ||
73 | }; | 73 | }; |
74 | 74 | ||
75 | &serial2 { | 75 | &serial2 { |
@@ -82,6 +82,7 @@ | |||
82 | eeprom@54 { | 82 | eeprom@54 { |
83 | compatible = "st,24c64"; | 83 | compatible = "st,24c64"; |
84 | reg = <0x54>; | 84 | reg = <0x54>; |
85 | pagesize = <32>; | ||
85 | }; | 86 | }; |
86 | }; | 87 | }; |
87 | 88 | ||
diff --git a/arch/arm/boot/dts/uniphier-pxs2-vodka.dts b/arch/arm/boot/dts/uniphier-pxs2-vodka.dts index 51a3eacddfc6..803a39aa39d0 100644 --- a/arch/arm/boot/dts/uniphier-pxs2-vodka.dts +++ b/arch/arm/boot/dts/uniphier-pxs2-vodka.dts | |||
@@ -50,11 +50,6 @@ | |||
50 | model = "UniPhier PXs2 Vodka Board"; | 50 | model = "UniPhier PXs2 Vodka Board"; |
51 | compatible = "socionext,uniphier-pxs2-vodka", "socionext,uniphier-pxs2"; | 51 | compatible = "socionext,uniphier-pxs2-vodka", "socionext,uniphier-pxs2"; |
52 | 52 | ||
53 | memory { | ||
54 | device_type = "memory"; | ||
55 | reg = <0x80000000 0x80000000>; | ||
56 | }; | ||
57 | |||
58 | chosen { | 53 | chosen { |
59 | stdout-path = "serial0:115200n8"; | 54 | stdout-path = "serial0:115200n8"; |
60 | }; | 55 | }; |
@@ -68,6 +63,11 @@ | |||
68 | i2c5 = &i2c5; | 63 | i2c5 = &i2c5; |
69 | i2c6 = &i2c6; | 64 | i2c6 = &i2c6; |
70 | }; | 65 | }; |
66 | |||
67 | memory@80000000 { | ||
68 | device_type = "memory"; | ||
69 | reg = <0x80000000 0x80000000>; | ||
70 | }; | ||
71 | }; | 71 | }; |
72 | 72 | ||
73 | &serial2 { | 73 | &serial2 { |
diff --git a/arch/arm/boot/dts/uniphier-pxs2.dtsi b/arch/arm/boot/dts/uniphier-pxs2.dtsi index e9e031d63c1a..58c3e2f35706 100644 --- a/arch/arm/boot/dts/uniphier-pxs2.dtsi +++ b/arch/arm/boot/dts/uniphier-pxs2.dtsi | |||
@@ -43,10 +43,10 @@ | |||
43 | * OTHER DEALINGS IN THE SOFTWARE. | 43 | * OTHER DEALINGS IN THE SOFTWARE. |
44 | */ | 44 | */ |
45 | 45 | ||
46 | /include/ "skeleton.dtsi" | ||
47 | |||
48 | / { | 46 | / { |
49 | compatible = "socionext,uniphier-pxs2"; | 47 | compatible = "socionext,uniphier-pxs2"; |
48 | #address-cells = <1>; | ||
49 | #size-cells = <1>; | ||
50 | 50 | ||
51 | cpus { | 51 | cpus { |
52 | #address-cells = <1>; | 52 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/uniphier-ref-daughter.dtsi b/arch/arm/boot/dts/uniphier-ref-daughter.dtsi index f7df0881c5e0..c62ae1a81f47 100644 --- a/arch/arm/boot/dts/uniphier-ref-daughter.dtsi +++ b/arch/arm/boot/dts/uniphier-ref-daughter.dtsi | |||
@@ -1,7 +1,8 @@ | |||
1 | /* | 1 | /* |
2 | * Device Tree Source for UniPhier Reference Daughter Board | 2 | * Device Tree Source for UniPhier Reference Daughter Board |
3 | * | 3 | * |
4 | * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com> | 4 | * Copyright (C) 2015-2017 Socionext Inc. |
5 | * Author: Masahiro Yamada <yamada.masahiro@socionext.com> | ||
5 | * | 6 | * |
6 | * This file is dual-licensed: you can use it either under the terms | 7 | * This file is dual-licensed: you can use it either under the terms |
7 | * of the GPL or the X11 license, at your option. Note that this dual | 8 | * of the GPL or the X11 license, at your option. Note that this dual |
@@ -46,5 +47,6 @@ | |||
46 | eeprom@50 { | 47 | eeprom@50 { |
47 | compatible = "microchip,24lc128"; | 48 | compatible = "microchip,24lc128"; |
48 | reg = <0x50>; | 49 | reg = <0x50>; |
50 | pagesize = <64>; | ||
49 | }; | 51 | }; |
50 | }; | 52 | }; |
diff --git a/arch/arm/boot/dts/uniphier-sld3-ref.dts b/arch/arm/boot/dts/uniphier-sld3-ref.dts index ac792ae07ae0..eb63dcca92b5 100644 --- a/arch/arm/boot/dts/uniphier-sld3-ref.dts +++ b/arch/arm/boot/dts/uniphier-sld3-ref.dts | |||
@@ -52,12 +52,6 @@ | |||
52 | model = "UniPhier sLD3 Reference Board"; | 52 | model = "UniPhier sLD3 Reference Board"; |
53 | compatible = "socionext,uniphier-sld3-ref", "socionext,uniphier-sld3"; | 53 | compatible = "socionext,uniphier-sld3-ref", "socionext,uniphier-sld3"; |
54 | 54 | ||
55 | memory { | ||
56 | device_type = "memory"; | ||
57 | reg = <0x80000000 0x20000000 | ||
58 | 0xc0000000 0x20000000>; | ||
59 | }; | ||
60 | |||
61 | chosen { | 55 | chosen { |
62 | stdout-path = "serial0:115200n8"; | 56 | stdout-path = "serial0:115200n8"; |
63 | }; | 57 | }; |
@@ -72,6 +66,12 @@ | |||
72 | i2c3 = &i2c3; | 66 | i2c3 = &i2c3; |
73 | i2c4 = &i2c4; | 67 | i2c4 = &i2c4; |
74 | }; | 68 | }; |
69 | |||
70 | memory@8000000 { | ||
71 | device_type = "memory"; | ||
72 | reg = <0x80000000 0x20000000 | ||
73 | 0xc0000000 0x20000000>; | ||
74 | }; | ||
75 | }; | 75 | }; |
76 | 76 | ||
77 | ðsc { | 77 | ðsc { |
diff --git a/arch/arm/boot/dts/uniphier-sld3.dtsi b/arch/arm/boot/dts/uniphier-sld3.dtsi index 9fad6bd2db8a..01d77edac01f 100644 --- a/arch/arm/boot/dts/uniphier-sld3.dtsi +++ b/arch/arm/boot/dts/uniphier-sld3.dtsi | |||
@@ -43,10 +43,10 @@ | |||
43 | * OTHER DEALINGS IN THE SOFTWARE. | 43 | * OTHER DEALINGS IN THE SOFTWARE. |
44 | */ | 44 | */ |
45 | 45 | ||
46 | /include/ "skeleton.dtsi" | ||
47 | |||
48 | / { | 46 | / { |
49 | compatible = "socionext,uniphier-sld3"; | 47 | compatible = "socionext,uniphier-sld3"; |
48 | #address-cells = <1>; | ||
49 | #size-cells = <1>; | ||
50 | 50 | ||
51 | cpus { | 51 | cpus { |
52 | #address-cells = <1>; | 52 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/uniphier-sld8-ref.dts b/arch/arm/boot/dts/uniphier-sld8-ref.dts index a8291f988066..737d276349fd 100644 --- a/arch/arm/boot/dts/uniphier-sld8-ref.dts +++ b/arch/arm/boot/dts/uniphier-sld8-ref.dts | |||
@@ -52,11 +52,6 @@ | |||
52 | model = "UniPhier sLD8 Reference Board"; | 52 | model = "UniPhier sLD8 Reference Board"; |
53 | compatible = "socionext,uniphier-sld8-ref", "socionext,uniphier-sld8"; | 53 | compatible = "socionext,uniphier-sld8-ref", "socionext,uniphier-sld8"; |
54 | 54 | ||
55 | memory { | ||
56 | device_type = "memory"; | ||
57 | reg = <0x80000000 0x20000000>; | ||
58 | }; | ||
59 | |||
60 | chosen { | 55 | chosen { |
61 | stdout-path = "serial0:115200n8"; | 56 | stdout-path = "serial0:115200n8"; |
62 | }; | 57 | }; |
@@ -71,6 +66,11 @@ | |||
71 | i2c2 = &i2c2; | 66 | i2c2 = &i2c2; |
72 | i2c3 = &i2c3; | 67 | i2c3 = &i2c3; |
73 | }; | 68 | }; |
69 | |||
70 | memory@80000000 { | ||
71 | device_type = "memory"; | ||
72 | reg = <0x80000000 0x20000000>; | ||
73 | }; | ||
74 | }; | 74 | }; |
75 | 75 | ||
76 | ðsc { | 76 | ðsc { |
diff --git a/arch/arm/boot/dts/uniphier-sld8.dtsi b/arch/arm/boot/dts/uniphier-sld8.dtsi index b2c980ead7f0..eb06fdc04b02 100644 --- a/arch/arm/boot/dts/uniphier-sld8.dtsi +++ b/arch/arm/boot/dts/uniphier-sld8.dtsi | |||
@@ -43,10 +43,10 @@ | |||
43 | * OTHER DEALINGS IN THE SOFTWARE. | 43 | * OTHER DEALINGS IN THE SOFTWARE. |
44 | */ | 44 | */ |
45 | 45 | ||
46 | /include/ "skeleton.dtsi" | ||
47 | |||
48 | / { | 46 | / { |
49 | compatible = "socionext,uniphier-sld8"; | 47 | compatible = "socionext,uniphier-sld8"; |
48 | #address-cells = <1>; | ||
49 | #size-cells = <1>; | ||
50 | 50 | ||
51 | cpus { | 51 | cpus { |
52 | #address-cells = <1>; | 52 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/uniphier-support-card.dtsi b/arch/arm/boot/dts/uniphier-support-card.dtsi index 51ecc9b9c0ce..f61dfec2807f 100644 --- a/arch/arm/boot/dts/uniphier-support-card.dtsi +++ b/arch/arm/boot/dts/uniphier-support-card.dtsi | |||
@@ -1,7 +1,8 @@ | |||
1 | /* | 1 | /* |
2 | * Device Tree Source for UniPhier Support Card (Expansion Board) | 2 | * Device Tree Source for UniPhier Support Card (Expansion Board) |
3 | * | 3 | * |
4 | * Copyright (C) 2015 Masahiro Yamada <yamada.masahiro@socionext.com> | 4 | * Copyright (C) 2015-2017 Socionext Inc. |
5 | * Author: Masahiro Yamada <yamada.masahiro@socionext.com> | ||
5 | * | 6 | * |
6 | * This file is dual-licensed: you can use it either under the terms | 7 | * This file is dual-licensed: you can use it either under the terms |
7 | * of the GPL or the X11 license, at your option. Note that this dual | 8 | * of the GPL or the X11 license, at your option. Note that this dual |
@@ -46,7 +47,7 @@ | |||
46 | status = "okay"; | 47 | status = "okay"; |
47 | ranges = <1 0x00000000 0x42000000 0x02000000>; | 48 | ranges = <1 0x00000000 0x42000000 0x02000000>; |
48 | 49 | ||
49 | support_card: support_card { | 50 | support_card: support_card@1,1f00000 { |
50 | compatible = "simple-bus"; | 51 | compatible = "simple-bus"; |
51 | #address-cells = <1>; | 52 | #address-cells = <1>; |
52 | #size-cells = <1>; | 53 | #size-cells = <1>; |
diff --git a/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi b/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi index 3086efacd00e..35714ff6f467 100644 --- a/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi +++ b/arch/arm/boot/dts/vexpress-v2m-rs1.dtsi | |||
@@ -71,7 +71,7 @@ | |||
71 | #size-cells = <1>; | 71 | #size-cells = <1>; |
72 | ranges = <0 3 0 0x200000>; | 72 | ranges = <0 3 0 0x200000>; |
73 | 73 | ||
74 | v2m_sysreg: sysreg@010000 { | 74 | v2m_sysreg: sysreg@10000 { |
75 | compatible = "arm,vexpress-sysreg"; | 75 | compatible = "arm,vexpress-sysreg"; |
76 | reg = <0x010000 0x1000>; | 76 | reg = <0x010000 0x1000>; |
77 | 77 | ||
@@ -94,7 +94,7 @@ | |||
94 | }; | 94 | }; |
95 | }; | 95 | }; |
96 | 96 | ||
97 | v2m_sysctl: sysctl@020000 { | 97 | v2m_sysctl: sysctl@20000 { |
98 | compatible = "arm,sp810", "arm,primecell"; | 98 | compatible = "arm,sp810", "arm,primecell"; |
99 | reg = <0x020000 0x1000>; | 99 | reg = <0x020000 0x1000>; |
100 | clocks = <&v2m_refclk32khz>, <&v2m_refclk1mhz>, <&smbclk>; | 100 | clocks = <&v2m_refclk32khz>, <&v2m_refclk1mhz>, <&smbclk>; |
@@ -106,7 +106,7 @@ | |||
106 | }; | 106 | }; |
107 | 107 | ||
108 | /* PCI-E I2C bus */ | 108 | /* PCI-E I2C bus */ |
109 | v2m_i2c_pcie: i2c@030000 { | 109 | v2m_i2c_pcie: i2c@30000 { |
110 | compatible = "arm,versatile-i2c"; | 110 | compatible = "arm,versatile-i2c"; |
111 | reg = <0x030000 0x1000>; | 111 | reg = <0x030000 0x1000>; |
112 | 112 | ||
@@ -119,7 +119,7 @@ | |||
119 | }; | 119 | }; |
120 | }; | 120 | }; |
121 | 121 | ||
122 | aaci@040000 { | 122 | aaci@40000 { |
123 | compatible = "arm,pl041", "arm,primecell"; | 123 | compatible = "arm,pl041", "arm,primecell"; |
124 | reg = <0x040000 0x1000>; | 124 | reg = <0x040000 0x1000>; |
125 | interrupts = <11>; | 125 | interrupts = <11>; |
@@ -127,7 +127,7 @@ | |||
127 | clock-names = "apb_pclk"; | 127 | clock-names = "apb_pclk"; |
128 | }; | 128 | }; |
129 | 129 | ||
130 | mmci@050000 { | 130 | mmci@50000 { |
131 | compatible = "arm,pl180", "arm,primecell"; | 131 | compatible = "arm,pl180", "arm,primecell"; |
132 | reg = <0x050000 0x1000>; | 132 | reg = <0x050000 0x1000>; |
133 | interrupts = <9 10>; | 133 | interrupts = <9 10>; |
@@ -139,7 +139,7 @@ | |||
139 | clock-names = "mclk", "apb_pclk"; | 139 | clock-names = "mclk", "apb_pclk"; |
140 | }; | 140 | }; |
141 | 141 | ||
142 | kmi@060000 { | 142 | kmi@60000 { |
143 | compatible = "arm,pl050", "arm,primecell"; | 143 | compatible = "arm,pl050", "arm,primecell"; |
144 | reg = <0x060000 0x1000>; | 144 | reg = <0x060000 0x1000>; |
145 | interrupts = <12>; | 145 | interrupts = <12>; |
@@ -147,7 +147,7 @@ | |||
147 | clock-names = "KMIREFCLK", "apb_pclk"; | 147 | clock-names = "KMIREFCLK", "apb_pclk"; |
148 | }; | 148 | }; |
149 | 149 | ||
150 | kmi@070000 { | 150 | kmi@70000 { |
151 | compatible = "arm,pl050", "arm,primecell"; | 151 | compatible = "arm,pl050", "arm,primecell"; |
152 | reg = <0x070000 0x1000>; | 152 | reg = <0x070000 0x1000>; |
153 | interrupts = <13>; | 153 | interrupts = <13>; |
@@ -155,7 +155,7 @@ | |||
155 | clock-names = "KMIREFCLK", "apb_pclk"; | 155 | clock-names = "KMIREFCLK", "apb_pclk"; |
156 | }; | 156 | }; |
157 | 157 | ||
158 | v2m_serial0: uart@090000 { | 158 | v2m_serial0: uart@90000 { |
159 | compatible = "arm,pl011", "arm,primecell"; | 159 | compatible = "arm,pl011", "arm,primecell"; |
160 | reg = <0x090000 0x1000>; | 160 | reg = <0x090000 0x1000>; |
161 | interrupts = <5>; | 161 | interrupts = <5>; |
@@ -163,7 +163,7 @@ | |||
163 | clock-names = "uartclk", "apb_pclk"; | 163 | clock-names = "uartclk", "apb_pclk"; |
164 | }; | 164 | }; |
165 | 165 | ||
166 | v2m_serial1: uart@0a0000 { | 166 | v2m_serial1: uart@a0000 { |
167 | compatible = "arm,pl011", "arm,primecell"; | 167 | compatible = "arm,pl011", "arm,primecell"; |
168 | reg = <0x0a0000 0x1000>; | 168 | reg = <0x0a0000 0x1000>; |
169 | interrupts = <6>; | 169 | interrupts = <6>; |
@@ -171,7 +171,7 @@ | |||
171 | clock-names = "uartclk", "apb_pclk"; | 171 | clock-names = "uartclk", "apb_pclk"; |
172 | }; | 172 | }; |
173 | 173 | ||
174 | v2m_serial2: uart@0b0000 { | 174 | v2m_serial2: uart@b0000 { |
175 | compatible = "arm,pl011", "arm,primecell"; | 175 | compatible = "arm,pl011", "arm,primecell"; |
176 | reg = <0x0b0000 0x1000>; | 176 | reg = <0x0b0000 0x1000>; |
177 | interrupts = <7>; | 177 | interrupts = <7>; |
@@ -179,7 +179,7 @@ | |||
179 | clock-names = "uartclk", "apb_pclk"; | 179 | clock-names = "uartclk", "apb_pclk"; |
180 | }; | 180 | }; |
181 | 181 | ||
182 | v2m_serial3: uart@0c0000 { | 182 | v2m_serial3: uart@c0000 { |
183 | compatible = "arm,pl011", "arm,primecell"; | 183 | compatible = "arm,pl011", "arm,primecell"; |
184 | reg = <0x0c0000 0x1000>; | 184 | reg = <0x0c0000 0x1000>; |
185 | interrupts = <8>; | 185 | interrupts = <8>; |
@@ -187,7 +187,7 @@ | |||
187 | clock-names = "uartclk", "apb_pclk"; | 187 | clock-names = "uartclk", "apb_pclk"; |
188 | }; | 188 | }; |
189 | 189 | ||
190 | wdt@0f0000 { | 190 | wdt@f0000 { |
191 | compatible = "arm,sp805", "arm,primecell"; | 191 | compatible = "arm,sp805", "arm,primecell"; |
192 | reg = <0x0f0000 0x1000>; | 192 | reg = <0x0f0000 0x1000>; |
193 | interrupts = <0>; | 193 | interrupts = <0>; |
diff --git a/arch/arm/boot/dts/vexpress-v2m.dtsi b/arch/arm/boot/dts/vexpress-v2m.dtsi index c6393d3f1719..1b6f6393be93 100644 --- a/arch/arm/boot/dts/vexpress-v2m.dtsi +++ b/arch/arm/boot/dts/vexpress-v2m.dtsi | |||
@@ -70,7 +70,7 @@ | |||
70 | #size-cells = <1>; | 70 | #size-cells = <1>; |
71 | ranges = <0 7 0 0x20000>; | 71 | ranges = <0 7 0 0x20000>; |
72 | 72 | ||
73 | v2m_sysreg: sysreg@00000 { | 73 | v2m_sysreg: sysreg@0 { |
74 | compatible = "arm,vexpress-sysreg"; | 74 | compatible = "arm,vexpress-sysreg"; |
75 | reg = <0x00000 0x1000>; | 75 | reg = <0x00000 0x1000>; |
76 | 76 | ||
@@ -93,7 +93,7 @@ | |||
93 | }; | 93 | }; |
94 | }; | 94 | }; |
95 | 95 | ||
96 | v2m_sysctl: sysctl@01000 { | 96 | v2m_sysctl: sysctl@1000 { |
97 | compatible = "arm,sp810", "arm,primecell"; | 97 | compatible = "arm,sp810", "arm,primecell"; |
98 | reg = <0x01000 0x1000>; | 98 | reg = <0x01000 0x1000>; |
99 | clocks = <&v2m_refclk32khz>, <&v2m_refclk1mhz>, <&smbclk>; | 99 | clocks = <&v2m_refclk32khz>, <&v2m_refclk1mhz>, <&smbclk>; |
@@ -105,7 +105,7 @@ | |||
105 | }; | 105 | }; |
106 | 106 | ||
107 | /* PCI-E I2C bus */ | 107 | /* PCI-E I2C bus */ |
108 | v2m_i2c_pcie: i2c@02000 { | 108 | v2m_i2c_pcie: i2c@2000 { |
109 | compatible = "arm,versatile-i2c"; | 109 | compatible = "arm,versatile-i2c"; |
110 | reg = <0x02000 0x1000>; | 110 | reg = <0x02000 0x1000>; |
111 | 111 | ||
@@ -118,7 +118,7 @@ | |||
118 | }; | 118 | }; |
119 | }; | 119 | }; |
120 | 120 | ||
121 | aaci@04000 { | 121 | aaci@4000 { |
122 | compatible = "arm,pl041", "arm,primecell"; | 122 | compatible = "arm,pl041", "arm,primecell"; |
123 | reg = <0x04000 0x1000>; | 123 | reg = <0x04000 0x1000>; |
124 | interrupts = <11>; | 124 | interrupts = <11>; |
@@ -126,7 +126,7 @@ | |||
126 | clock-names = "apb_pclk"; | 126 | clock-names = "apb_pclk"; |
127 | }; | 127 | }; |
128 | 128 | ||
129 | mmci@05000 { | 129 | mmci@5000 { |
130 | compatible = "arm,pl180", "arm,primecell"; | 130 | compatible = "arm,pl180", "arm,primecell"; |
131 | reg = <0x05000 0x1000>; | 131 | reg = <0x05000 0x1000>; |
132 | interrupts = <9 10>; | 132 | interrupts = <9 10>; |
@@ -138,7 +138,7 @@ | |||
138 | clock-names = "mclk", "apb_pclk"; | 138 | clock-names = "mclk", "apb_pclk"; |
139 | }; | 139 | }; |
140 | 140 | ||
141 | kmi@06000 { | 141 | kmi@6000 { |
142 | compatible = "arm,pl050", "arm,primecell"; | 142 | compatible = "arm,pl050", "arm,primecell"; |
143 | reg = <0x06000 0x1000>; | 143 | reg = <0x06000 0x1000>; |
144 | interrupts = <12>; | 144 | interrupts = <12>; |
@@ -146,7 +146,7 @@ | |||
146 | clock-names = "KMIREFCLK", "apb_pclk"; | 146 | clock-names = "KMIREFCLK", "apb_pclk"; |
147 | }; | 147 | }; |
148 | 148 | ||
149 | kmi@07000 { | 149 | kmi@7000 { |
150 | compatible = "arm,pl050", "arm,primecell"; | 150 | compatible = "arm,pl050", "arm,primecell"; |
151 | reg = <0x07000 0x1000>; | 151 | reg = <0x07000 0x1000>; |
152 | interrupts = <13>; | 152 | interrupts = <13>; |
@@ -154,7 +154,7 @@ | |||
154 | clock-names = "KMIREFCLK", "apb_pclk"; | 154 | clock-names = "KMIREFCLK", "apb_pclk"; |
155 | }; | 155 | }; |
156 | 156 | ||
157 | v2m_serial0: uart@09000 { | 157 | v2m_serial0: uart@9000 { |
158 | compatible = "arm,pl011", "arm,primecell"; | 158 | compatible = "arm,pl011", "arm,primecell"; |
159 | reg = <0x09000 0x1000>; | 159 | reg = <0x09000 0x1000>; |
160 | interrupts = <5>; | 160 | interrupts = <5>; |
@@ -162,7 +162,7 @@ | |||
162 | clock-names = "uartclk", "apb_pclk"; | 162 | clock-names = "uartclk", "apb_pclk"; |
163 | }; | 163 | }; |
164 | 164 | ||
165 | v2m_serial1: uart@0a000 { | 165 | v2m_serial1: uart@a000 { |
166 | compatible = "arm,pl011", "arm,primecell"; | 166 | compatible = "arm,pl011", "arm,primecell"; |
167 | reg = <0x0a000 0x1000>; | 167 | reg = <0x0a000 0x1000>; |
168 | interrupts = <6>; | 168 | interrupts = <6>; |
@@ -170,7 +170,7 @@ | |||
170 | clock-names = "uartclk", "apb_pclk"; | 170 | clock-names = "uartclk", "apb_pclk"; |
171 | }; | 171 | }; |
172 | 172 | ||
173 | v2m_serial2: uart@0b000 { | 173 | v2m_serial2: uart@b000 { |
174 | compatible = "arm,pl011", "arm,primecell"; | 174 | compatible = "arm,pl011", "arm,primecell"; |
175 | reg = <0x0b000 0x1000>; | 175 | reg = <0x0b000 0x1000>; |
176 | interrupts = <7>; | 176 | interrupts = <7>; |
@@ -178,7 +178,7 @@ | |||
178 | clock-names = "uartclk", "apb_pclk"; | 178 | clock-names = "uartclk", "apb_pclk"; |
179 | }; | 179 | }; |
180 | 180 | ||
181 | v2m_serial3: uart@0c000 { | 181 | v2m_serial3: uart@c000 { |
182 | compatible = "arm,pl011", "arm,primecell"; | 182 | compatible = "arm,pl011", "arm,primecell"; |
183 | reg = <0x0c000 0x1000>; | 183 | reg = <0x0c000 0x1000>; |
184 | interrupts = <8>; | 184 | interrupts = <8>; |
@@ -186,7 +186,7 @@ | |||
186 | clock-names = "uartclk", "apb_pclk"; | 186 | clock-names = "uartclk", "apb_pclk"; |
187 | }; | 187 | }; |
188 | 188 | ||
189 | wdt@0f000 { | 189 | wdt@f000 { |
190 | compatible = "arm,sp805", "arm,primecell"; | 190 | compatible = "arm,sp805", "arm,primecell"; |
191 | reg = <0x0f000 0x1000>; | 191 | reg = <0x0f000 0x1000>; |
192 | interrupts = <0>; | 192 | interrupts = <0>; |
diff --git a/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts b/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts index 15f4fd3f4695..0c8de0ca73ee 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca15-tc1.dts | |||
@@ -220,7 +220,7 @@ | |||
220 | }; | 220 | }; |
221 | }; | 221 | }; |
222 | 222 | ||
223 | smb@08000000 { | 223 | smb@8000000 { |
224 | compatible = "simple-bus"; | 224 | compatible = "simple-bus"; |
225 | 225 | ||
226 | #address-cells = <2>; | 226 | #address-cells = <2>; |
diff --git a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts index bd107c5a0226..65ecf206388c 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca15_a7.dts | |||
@@ -385,7 +385,7 @@ | |||
385 | }; | 385 | }; |
386 | }; | 386 | }; |
387 | 387 | ||
388 | etb@0,20010000 { | 388 | etb@20010000 { |
389 | compatible = "arm,coresight-etb10", "arm,primecell"; | 389 | compatible = "arm,coresight-etb10", "arm,primecell"; |
390 | reg = <0 0x20010000 0 0x1000>; | 390 | reg = <0 0x20010000 0 0x1000>; |
391 | 391 | ||
@@ -399,7 +399,7 @@ | |||
399 | }; | 399 | }; |
400 | }; | 400 | }; |
401 | 401 | ||
402 | tpiu@0,20030000 { | 402 | tpiu@20030000 { |
403 | compatible = "arm,coresight-tpiu", "arm,primecell"; | 403 | compatible = "arm,coresight-tpiu", "arm,primecell"; |
404 | reg = <0 0x20030000 0 0x1000>; | 404 | reg = <0 0x20030000 0 0x1000>; |
405 | 405 | ||
@@ -449,7 +449,7 @@ | |||
449 | }; | 449 | }; |
450 | }; | 450 | }; |
451 | 451 | ||
452 | funnel@0,20040000 { | 452 | funnel@20040000 { |
453 | compatible = "arm,coresight-funnel", "arm,primecell"; | 453 | compatible = "arm,coresight-funnel", "arm,primecell"; |
454 | reg = <0 0x20040000 0 0x1000>; | 454 | reg = <0 0x20040000 0 0x1000>; |
455 | 455 | ||
@@ -513,7 +513,7 @@ | |||
513 | }; | 513 | }; |
514 | }; | 514 | }; |
515 | 515 | ||
516 | ptm@0,2201c000 { | 516 | ptm@2201c000 { |
517 | compatible = "arm,coresight-etm3x", "arm,primecell"; | 517 | compatible = "arm,coresight-etm3x", "arm,primecell"; |
518 | reg = <0 0x2201c000 0 0x1000>; | 518 | reg = <0 0x2201c000 0 0x1000>; |
519 | 519 | ||
@@ -527,7 +527,7 @@ | |||
527 | }; | 527 | }; |
528 | }; | 528 | }; |
529 | 529 | ||
530 | ptm@0,2201d000 { | 530 | ptm@2201d000 { |
531 | compatible = "arm,coresight-etm3x", "arm,primecell"; | 531 | compatible = "arm,coresight-etm3x", "arm,primecell"; |
532 | reg = <0 0x2201d000 0 0x1000>; | 532 | reg = <0 0x2201d000 0 0x1000>; |
533 | 533 | ||
@@ -541,7 +541,7 @@ | |||
541 | }; | 541 | }; |
542 | }; | 542 | }; |
543 | 543 | ||
544 | etm@0,2203c000 { | 544 | etm@2203c000 { |
545 | compatible = "arm,coresight-etm3x", "arm,primecell"; | 545 | compatible = "arm,coresight-etm3x", "arm,primecell"; |
546 | reg = <0 0x2203c000 0 0x1000>; | 546 | reg = <0 0x2203c000 0 0x1000>; |
547 | 547 | ||
@@ -555,7 +555,7 @@ | |||
555 | }; | 555 | }; |
556 | }; | 556 | }; |
557 | 557 | ||
558 | etm@0,2203d000 { | 558 | etm@2203d000 { |
559 | compatible = "arm,coresight-etm3x", "arm,primecell"; | 559 | compatible = "arm,coresight-etm3x", "arm,primecell"; |
560 | reg = <0 0x2203d000 0 0x1000>; | 560 | reg = <0 0x2203d000 0 0x1000>; |
561 | 561 | ||
@@ -569,7 +569,7 @@ | |||
569 | }; | 569 | }; |
570 | }; | 570 | }; |
571 | 571 | ||
572 | etm@0,2203e000 { | 572 | etm@2203e000 { |
573 | compatible = "arm,coresight-etm3x", "arm,primecell"; | 573 | compatible = "arm,coresight-etm3x", "arm,primecell"; |
574 | reg = <0 0x2203e000 0 0x1000>; | 574 | reg = <0 0x2203e000 0 0x1000>; |
575 | 575 | ||
@@ -583,7 +583,7 @@ | |||
583 | }; | 583 | }; |
584 | }; | 584 | }; |
585 | 585 | ||
586 | smb@08000000 { | 586 | smb@8000000 { |
587 | compatible = "simple-bus"; | 587 | compatible = "simple-bus"; |
588 | 588 | ||
589 | #address-cells = <2>; | 589 | #address-cells = <2>; |
diff --git a/arch/arm/boot/dts/vexpress-v2p-ca5s.dts b/arch/arm/boot/dts/vexpress-v2p-ca5s.dts index 1acecaf4b13d..6e69b8e6c1a7 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca5s.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca5s.dts | |||
@@ -190,7 +190,7 @@ | |||
190 | }; | 190 | }; |
191 | }; | 191 | }; |
192 | 192 | ||
193 | smb@08000000 { | 193 | smb@8000000 { |
194 | compatible = "simple-bus"; | 194 | compatible = "simple-bus"; |
195 | 195 | ||
196 | #address-cells = <2>; | 196 | #address-cells = <2>; |
diff --git a/arch/arm/boot/dts/vexpress-v2p-ca9.dts b/arch/arm/boot/dts/vexpress-v2p-ca9.dts index b608a03ee02f..c9305b58afc2 100644 --- a/arch/arm/boot/dts/vexpress-v2p-ca9.dts +++ b/arch/arm/boot/dts/vexpress-v2p-ca9.dts | |||
@@ -300,7 +300,7 @@ | |||
300 | }; | 300 | }; |
301 | }; | 301 | }; |
302 | 302 | ||
303 | smb@04000000 { | 303 | smb@4000000 { |
304 | compatible = "simple-bus"; | 304 | compatible = "simple-bus"; |
305 | 305 | ||
306 | #address-cells = <2>; | 306 | #address-cells = <2>; |
diff --git a/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts b/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts index 7940408838df..37f95427616f 100644 --- a/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts +++ b/arch/arm/boot/dts/vf610-zii-dev-rev-b.dts | |||
@@ -239,7 +239,7 @@ | |||
239 | #size-cells = <0>; | 239 | #size-cells = <0>; |
240 | reg = <4>; | 240 | reg = <4>; |
241 | 241 | ||
242 | switch2: switch2@0 { | 242 | switch2: switch@0 { |
243 | compatible = "marvell,mv88e6085"; | 243 | compatible = "marvell,mv88e6085"; |
244 | #address-cells = <1>; | 244 | #address-cells = <1>; |
245 | #size-cells = <0>; | 245 | #size-cells = <0>; |
@@ -459,18 +459,6 @@ | |||
459 | >; | 459 | >; |
460 | }; | 460 | }; |
461 | 461 | ||
462 | pinctrl_gpio_switch0: pinctrl-gpio-switch0 { | ||
463 | fsl,pins = < | ||
464 | VF610_PAD_PTB5__GPIO_27 0x219d | ||
465 | >; | ||
466 | }; | ||
467 | |||
468 | pinctrl_gpio_switch1: pinctrl-gpio-switch1 { | ||
469 | fsl,pins = < | ||
470 | VF610_PAD_PTB4__GPIO_26 0x219d | ||
471 | >; | ||
472 | }; | ||
473 | |||
474 | pinctrl_mdio_mux: pinctrl-mdio-mux { | 462 | pinctrl_mdio_mux: pinctrl-mdio-mux { |
475 | fsl,pins = < | 463 | fsl,pins = < |
476 | VF610_PAD_PTA18__GPIO_8 0x31c2 | 464 | VF610_PAD_PTA18__GPIO_8 0x31c2 |
diff --git a/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts b/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts index 6a45bd24ffe6..db3b408ea55a 100644 --- a/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts +++ b/arch/arm/boot/dts/vf610-zii-dev-rev-c.dts | |||
@@ -67,11 +67,17 @@ | |||
67 | 67 | ||
68 | switch0: switch@0 { | 68 | switch0: switch@0 { |
69 | compatible = "marvell,mv88e6190"; | 69 | compatible = "marvell,mv88e6190"; |
70 | pinctrl-0 = <&pinctrl_gpio_switch0>; | ||
71 | pinctrl-names = "default"; | ||
70 | #address-cells = <1>; | 72 | #address-cells = <1>; |
71 | #size-cells = <0>; | 73 | #size-cells = <0>; |
72 | reg = <0>; | 74 | reg = <0>; |
73 | dsa,member = <0 0>; | 75 | dsa,member = <0 0>; |
74 | eeprom-length = <512>; | 76 | eeprom-length = <512>; |
77 | interrupt-parent = <&gpio0>; | ||
78 | interrupts = <27 IRQ_TYPE_LEVEL_LOW>; | ||
79 | interrupt-controller; | ||
80 | #interrupt-cells = <2>; | ||
75 | 81 | ||
76 | ports { | 82 | ports { |
77 | #address-cells = <1>; | 83 | #address-cells = <1>; |
@@ -91,21 +97,25 @@ | |||
91 | port@1 { | 97 | port@1 { |
92 | reg = <1>; | 98 | reg = <1>; |
93 | label = "lan1"; | 99 | label = "lan1"; |
100 | phy-handle = <&switch0phy1>; | ||
94 | }; | 101 | }; |
95 | 102 | ||
96 | port@2 { | 103 | port@2 { |
97 | reg = <2>; | 104 | reg = <2>; |
98 | label = "lan2"; | 105 | label = "lan2"; |
106 | phy-handle = <&switch0phy2>; | ||
99 | }; | 107 | }; |
100 | 108 | ||
101 | port@3 { | 109 | port@3 { |
102 | reg = <3>; | 110 | reg = <3>; |
103 | label = "lan3"; | 111 | label = "lan3"; |
112 | phy-handle = <&switch0phy3>; | ||
104 | }; | 113 | }; |
105 | 114 | ||
106 | port@4 { | 115 | port@4 { |
107 | reg = <4>; | 116 | reg = <4>; |
108 | label = "lan4"; | 117 | label = "lan4"; |
118 | phy-handle = <&switch0phy4>; | ||
109 | }; | 119 | }; |
110 | 120 | ||
111 | switch0port10: port@10 { | 121 | switch0port10: port@10 { |
@@ -115,6 +125,35 @@ | |||
115 | link = <&switch1port10>; | 125 | link = <&switch1port10>; |
116 | }; | 126 | }; |
117 | }; | 127 | }; |
128 | |||
129 | mdio { | ||
130 | #address-cells = <1>; | ||
131 | #size-cells = <0>; | ||
132 | |||
133 | switch0phy1: switch0phy@1 { | ||
134 | reg = <1>; | ||
135 | interrupt-parent = <&switch0>; | ||
136 | interrupts = <1 IRQ_TYPE_LEVEL_HIGH>; | ||
137 | }; | ||
138 | |||
139 | switch0phy2: switch0phy@2 { | ||
140 | reg = <2>; | ||
141 | interrupt-parent = <&switch0>; | ||
142 | interrupts = <2 IRQ_TYPE_LEVEL_HIGH>; | ||
143 | }; | ||
144 | |||
145 | switch0phy3: switch0phy@3 { | ||
146 | reg = <3>; | ||
147 | interrupt-parent = <&switch0>; | ||
148 | interrupts = <3 IRQ_TYPE_LEVEL_HIGH>; | ||
149 | }; | ||
150 | |||
151 | switch0phy4: switch0phy@4 { | ||
152 | reg = <4>; | ||
153 | interrupt-parent = <&switch0>; | ||
154 | interrupts = <4 IRQ_TYPE_LEVEL_HIGH>; | ||
155 | }; | ||
156 | }; | ||
118 | }; | 157 | }; |
119 | }; | 158 | }; |
120 | 159 | ||
@@ -125,11 +164,17 @@ | |||
125 | 164 | ||
126 | switch1: switch@0 { | 165 | switch1: switch@0 { |
127 | compatible = "marvell,mv88e6190"; | 166 | compatible = "marvell,mv88e6190"; |
167 | pinctrl-0 = <&pinctrl_gpio_switch1>; | ||
168 | pinctrl-names = "default"; | ||
128 | #address-cells = <1>; | 169 | #address-cells = <1>; |
129 | #size-cells = <0>; | 170 | #size-cells = <0>; |
130 | reg = <0>; | 171 | reg = <0>; |
131 | dsa,member = <0 1>; | 172 | dsa,member = <0 1>; |
132 | eeprom-length = <512>; | 173 | eeprom-length = <512>; |
174 | interrupt-parent = <&gpio0>; | ||
175 | interrupts = <26 IRQ_TYPE_LEVEL_LOW>; | ||
176 | interrupt-controller; | ||
177 | #interrupt-cells = <2>; | ||
133 | 178 | ||
134 | ports { | 179 | ports { |
135 | #address-cells = <1>; | 180 | #address-cells = <1>; |
@@ -138,21 +183,25 @@ | |||
138 | port@1 { | 183 | port@1 { |
139 | reg = <1>; | 184 | reg = <1>; |
140 | label = "lan5"; | 185 | label = "lan5"; |
186 | phy-handle = <&switch1phy1>; | ||
141 | }; | 187 | }; |
142 | 188 | ||
143 | port@2 { | 189 | port@2 { |
144 | reg = <2>; | 190 | reg = <2>; |
145 | label = "lan6"; | 191 | label = "lan6"; |
192 | phy-handle = <&switch1phy2>; | ||
146 | }; | 193 | }; |
147 | 194 | ||
148 | port@3 { | 195 | port@3 { |
149 | reg = <3>; | 196 | reg = <3>; |
150 | label = "lan7"; | 197 | label = "lan7"; |
198 | phy-handle = <&switch1phy3>; | ||
151 | }; | 199 | }; |
152 | 200 | ||
153 | port@4 { | 201 | port@4 { |
154 | reg = <4>; | 202 | reg = <4>; |
155 | label = "lan8"; | 203 | label = "lan8"; |
204 | phy-handle = <&switch1phy4>; | ||
156 | }; | 205 | }; |
157 | 206 | ||
158 | 207 | ||
@@ -163,6 +212,34 @@ | |||
163 | link = <&switch0port10>; | 212 | link = <&switch0port10>; |
164 | }; | 213 | }; |
165 | }; | 214 | }; |
215 | mdio { | ||
216 | #address-cells = <1>; | ||
217 | #size-cells = <0>; | ||
218 | |||
219 | switch1phy1: switch1phy@1 { | ||
220 | reg = <1>; | ||
221 | interrupt-parent = <&switch1>; | ||
222 | interrupts = <1 IRQ_TYPE_LEVEL_HIGH>; | ||
223 | }; | ||
224 | |||
225 | switch1phy2: switch1phy@2 { | ||
226 | reg = <2>; | ||
227 | interrupt-parent = <&switch1>; | ||
228 | interrupts = <2 IRQ_TYPE_LEVEL_HIGH>; | ||
229 | }; | ||
230 | |||
231 | switch1phy3: switch1phy@3 { | ||
232 | reg = <3>; | ||
233 | interrupt-parent = <&switch1>; | ||
234 | interrupts = <3 IRQ_TYPE_LEVEL_HIGH>; | ||
235 | }; | ||
236 | |||
237 | switch1phy4: switch1phy@4 { | ||
238 | reg = <4>; | ||
239 | interrupt-parent = <&switch1>; | ||
240 | interrupts = <4 IRQ_TYPE_LEVEL_HIGH>; | ||
241 | }; | ||
242 | }; | ||
166 | }; | 243 | }; |
167 | }; | 244 | }; |
168 | 245 | ||
diff --git a/arch/arm/boot/dts/vf610-zii-dev.dtsi b/arch/arm/boot/dts/vf610-zii-dev.dtsi index ca9e1bc35e45..6b58d3a97992 100644 --- a/arch/arm/boot/dts/vf610-zii-dev.dtsi +++ b/arch/arm/boot/dts/vf610-zii-dev.dtsi | |||
@@ -296,6 +296,18 @@ | |||
296 | >; | 296 | >; |
297 | }; | 297 | }; |
298 | 298 | ||
299 | pinctrl_gpio_switch0: pinctrl-gpio-switch0 { | ||
300 | fsl,pins = < | ||
301 | VF610_PAD_PTB5__GPIO_27 0x219d | ||
302 | >; | ||
303 | }; | ||
304 | |||
305 | pinctrl_gpio_switch1: pinctrl-gpio-switch1 { | ||
306 | fsl,pins = < | ||
307 | VF610_PAD_PTB4__GPIO_26 0x219d | ||
308 | >; | ||
309 | }; | ||
310 | |||
299 | pinctrl_i2c_mux_reset: pinctrl-i2c-mux-reset { | 311 | pinctrl_i2c_mux_reset: pinctrl-i2c-mux-reset { |
300 | fsl,pins = < | 312 | fsl,pins = < |
301 | VF610_PAD_PTE14__GPIO_119 0x31c2 | 313 | VF610_PAD_PTE14__GPIO_119 0x31c2 |
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi index 098ad557fee3..e2b0da2c0bc7 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2-common.dtsi | |||
@@ -106,6 +106,13 @@ | |||
106 | }; | 106 | }; |
107 | }; | 107 | }; |
108 | 108 | ||
109 | irda_regulator: irda-regulator { | ||
110 | compatible = "regulator-fixed"; | ||
111 | enable-active-high; | ||
112 | gpio = <&gpr3 3 GPIO_ACTIVE_HIGH>; | ||
113 | regulator-name = "irda_regulator"; | ||
114 | }; | ||
115 | |||
109 | sound { | 116 | sound { |
110 | compatible = "samsung,tm2-audio"; | 117 | compatible = "samsung,tm2-audio"; |
111 | audio-codec = <&wm5110>; | 118 | audio-codec = <&wm5110>; |
@@ -298,6 +305,8 @@ | |||
298 | status = "okay"; | 305 | status = "okay"; |
299 | vddcore-supply = <&ldo6_reg>; | 306 | vddcore-supply = <&ldo6_reg>; |
300 | vddio-supply = <&ldo7_reg>; | 307 | vddio-supply = <&ldo7_reg>; |
308 | samsung,burst-clock-frequency = <512000000>; | ||
309 | samsung,esc-clock-frequency = <16000000>; | ||
301 | samsung,pll-clock-frequency = <24000000>; | 310 | samsung,pll-clock-frequency = <24000000>; |
302 | pinctrl-names = "default"; | 311 | pinctrl-names = "default"; |
303 | pinctrl-0 = <&te_irq>; | 312 | pinctrl-0 = <&te_irq>; |
@@ -749,6 +758,19 @@ | |||
749 | }; | 758 | }; |
750 | }; | 759 | }; |
751 | 760 | ||
761 | &hsi2c_5 { | ||
762 | status = "okay"; | ||
763 | |||
764 | stmfts: touchscreen@49 { | ||
765 | compatible = "st,stmfts"; | ||
766 | reg = <0x49>; | ||
767 | interrupt-parent = <&gpa1>; | ||
768 | interrupts = <1 IRQ_TYPE_LEVEL_LOW>; | ||
769 | avdd-supply = <&ldo30_reg>; | ||
770 | vdd-supply = <&ldo31_reg>; | ||
771 | }; | ||
772 | }; | ||
773 | |||
752 | &hsi2c_7 { | 774 | &hsi2c_7 { |
753 | status = "okay"; | 775 | status = "okay"; |
754 | 776 | ||
@@ -894,7 +916,7 @@ | |||
894 | PIN(INPUT, gpa0-7, NONE, FAST_SR1); | 916 | PIN(INPUT, gpa0-7, NONE, FAST_SR1); |
895 | 917 | ||
896 | PIN(INPUT, gpa1-0, UP, FAST_SR1); | 918 | PIN(INPUT, gpa1-0, UP, FAST_SR1); |
897 | PIN(INPUT, gpa1-1, NONE, FAST_SR1); | 919 | PIN(INPUT, gpa1-1, UP, FAST_SR1); |
898 | PIN(INPUT, gpa1-2, NONE, FAST_SR1); | 920 | PIN(INPUT, gpa1-2, NONE, FAST_SR1); |
899 | PIN(INPUT, gpa1-3, DOWN, FAST_SR1); | 921 | PIN(INPUT, gpa1-3, DOWN, FAST_SR1); |
900 | PIN(INPUT, gpa1-4, DOWN, FAST_SR1); | 922 | PIN(INPUT, gpa1-4, DOWN, FAST_SR1); |
@@ -1074,7 +1096,6 @@ | |||
1074 | PIN(INPUT, gpg3-0, DOWN, FAST_SR1); | 1096 | PIN(INPUT, gpg3-0, DOWN, FAST_SR1); |
1075 | PIN(INPUT, gpg3-1, DOWN, FAST_SR1); | 1097 | PIN(INPUT, gpg3-1, DOWN, FAST_SR1); |
1076 | PIN(INPUT, gpg3-5, DOWN, FAST_SR1); | 1098 | PIN(INPUT, gpg3-5, DOWN, FAST_SR1); |
1077 | PIN(INPUT, gpg3-7, DOWN, FAST_SR1); | ||
1078 | }; | 1099 | }; |
1079 | }; | 1100 | }; |
1080 | 1101 | ||
@@ -1152,6 +1173,24 @@ | |||
1152 | }; | 1173 | }; |
1153 | }; | 1174 | }; |
1154 | 1175 | ||
1176 | &spi_3 { | ||
1177 | status = "okay"; | ||
1178 | no-cs-readback; | ||
1179 | |||
1180 | irled@0 { | ||
1181 | compatible = "ir-spi-led"; | ||
1182 | reg = <0x0>; | ||
1183 | spi-max-frequency = <5000000>; | ||
1184 | power-supply = <&irda_regulator>; | ||
1185 | duty-cycle = <60>; | ||
1186 | led-active-low; | ||
1187 | |||
1188 | controller-data { | ||
1189 | samsung,spi-feedback-delay = <0>; | ||
1190 | }; | ||
1191 | }; | ||
1192 | }; | ||
1193 | |||
1155 | &timer { | 1194 | &timer { |
1156 | clock-frequency = <24000000>; | 1195 | clock-frequency = <24000000>; |
1157 | }; | 1196 | }; |
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts index dea0a6f5bc18..3ff95277a8ec 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2.dts | |||
@@ -52,6 +52,18 @@ | |||
52 | assigned-clock-rates = <250000000>, <400000000>; | 52 | assigned-clock-rates = <250000000>, <400000000>; |
53 | }; | 53 | }; |
54 | 54 | ||
55 | &dsi { | ||
56 | panel@0 { | ||
57 | compatible = "samsung,s6e3ha2"; | ||
58 | reg = <0>; | ||
59 | vdd3-supply = <&ldo27_reg>; | ||
60 | vci-supply = <&ldo28_reg>; | ||
61 | reset-gpios = <&gpg0 0 GPIO_ACTIVE_LOW>; | ||
62 | enable-gpios = <&gpf1 5 GPIO_ACTIVE_HIGH>; | ||
63 | te-gpios = <&gpf1 3 GPIO_ACTIVE_HIGH>; | ||
64 | }; | ||
65 | }; | ||
66 | |||
55 | &hsi2c_9 { | 67 | &hsi2c_9 { |
56 | status = "okay"; | 68 | status = "okay"; |
57 | 69 | ||
@@ -76,3 +88,8 @@ | |||
76 | regulator-min-microvolt = <3000000>; | 88 | regulator-min-microvolt = <3000000>; |
77 | regulator-max-microvolt = <3000000>; | 89 | regulator-max-microvolt = <3000000>; |
78 | }; | 90 | }; |
91 | |||
92 | &stmfts { | ||
93 | touchscreen-size-x = <1439>; | ||
94 | touchscreen-size-y = <2559>; | ||
95 | }; | ||
diff --git a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts index 7891a31adc17..b73e1231a86f 100644 --- a/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts +++ b/arch/arm64/boot/dts/exynos/exynos5433-tm2e.dts | |||
@@ -52,6 +52,17 @@ | |||
52 | assigned-clock-rates = <278000000>, <400000000>; | 52 | assigned-clock-rates = <278000000>, <400000000>; |
53 | }; | 53 | }; |
54 | 54 | ||
55 | &dsi { | ||
56 | panel@0 { | ||
57 | compatible = "samsung,s6e3hf2"; | ||
58 | reg = <0>; | ||
59 | vdd3-supply = <&ldo27_reg>; | ||
60 | vci-supply = <&ldo28_reg>; | ||
61 | reset-gpios = <&gpg0 0 GPIO_ACTIVE_LOW>; | ||
62 | enable-gpios = <&gpf1 5 GPIO_ACTIVE_HIGH>; | ||
63 | }; | ||
64 | }; | ||
65 | |||
55 | &ldo31_reg { | 66 | &ldo31_reg { |
56 | regulator-name = "TSP_VDD_1.8V_AP"; | 67 | regulator-name = "TSP_VDD_1.8V_AP"; |
57 | regulator-min-microvolt = <1800000>; | 68 | regulator-min-microvolt = <1800000>; |
@@ -63,3 +74,10 @@ | |||
63 | regulator-min-microvolt = <3300000>; | 74 | regulator-min-microvolt = <3300000>; |
64 | regulator-max-microvolt = <3300000>; | 75 | regulator-max-microvolt = <3300000>; |
65 | }; | 76 | }; |
77 | |||
78 | &stmfts { | ||
79 | touchscreen-size-x = <1599>; | ||
80 | touchscreen-size-y = <2559>; | ||
81 | touch-key-connected; | ||
82 | ledvdd-supply = <&ldo33_reg>; | ||
83 | }; | ||
diff --git a/arch/arm64/boot/dts/include/arm b/arch/arm64/boot/dts/include/arm new file mode 120000 index 000000000000..cf63d80e2b93 --- /dev/null +++ b/arch/arm64/boot/dts/include/arm | |||
@@ -0,0 +1 @@ | |||
../../../../arm/boot/dts \ No newline at end of file | |||
diff --git a/arch/arm64/boot/dts/include/arm64 b/arch/arm64/boot/dts/include/arm64 new file mode 120000 index 000000000000..a96aa0ea9d8c --- /dev/null +++ b/arch/arm64/boot/dts/include/arm64 | |||
@@ -0,0 +1 @@ | |||
.. \ No newline at end of file | |||
diff --git a/include/dt-bindings/clock/r7s72100-clock.h b/include/dt-bindings/clock/r7s72100-clock.h index ce09915c298f..bc256d31099a 100644 --- a/include/dt-bindings/clock/r7s72100-clock.h +++ b/include/dt-bindings/clock/r7s72100-clock.h | |||
@@ -29,6 +29,9 @@ | |||
29 | #define R7S72100_CLK_OSTM0 1 | 29 | #define R7S72100_CLK_OSTM0 1 |
30 | #define R7S72100_CLK_OSTM1 0 | 30 | #define R7S72100_CLK_OSTM1 0 |
31 | 31 | ||
32 | /* MSTP6 */ | ||
33 | #define R7S72100_CLK_RTC 0 | ||
34 | |||
32 | /* MSTP7 */ | 35 | /* MSTP7 */ |
33 | #define R7S72100_CLK_ETHER 4 | 36 | #define R7S72100_CLK_ETHER 4 |
34 | 37 | ||
@@ -49,7 +52,9 @@ | |||
49 | #define R7S72100_CLK_SPI4 3 | 52 | #define R7S72100_CLK_SPI4 3 |
50 | 53 | ||
51 | /* MSTP12 */ | 54 | /* MSTP12 */ |
52 | #define R7S72100_CLK_SDHI0 3 | 55 | #define R7S72100_CLK_SDHI00 3 |
53 | #define R7S72100_CLK_SDHI1 2 | 56 | #define R7S72100_CLK_SDHI01 2 |
57 | #define R7S72100_CLK_SDHI10 1 | ||
58 | #define R7S72100_CLK_SDHI11 0 | ||
54 | 59 | ||
55 | #endif /* __DT_BINDINGS_CLOCK_R7S72100_H__ */ | 60 | #endif /* __DT_BINDINGS_CLOCK_R7S72100_H__ */ |
diff --git a/include/dt-bindings/clock/r8a73a4-clock.h b/include/dt-bindings/clock/r8a73a4-clock.h index dd11ecdf837e..4b3668157257 100644 --- a/include/dt-bindings/clock/r8a73a4-clock.h +++ b/include/dt-bindings/clock/r8a73a4-clock.h | |||
@@ -54,6 +54,7 @@ | |||
54 | #define R8A73A4_CLK_IIC3 11 | 54 | #define R8A73A4_CLK_IIC3 11 |
55 | #define R8A73A4_CLK_IIC4 10 | 55 | #define R8A73A4_CLK_IIC4 10 |
56 | #define R8A73A4_CLK_IIC5 9 | 56 | #define R8A73A4_CLK_IIC5 9 |
57 | #define R8A73A4_CLK_INTC_SYS 8 | ||
57 | #define R8A73A4_CLK_IRQC 7 | 58 | #define R8A73A4_CLK_IRQC 7 |
58 | 59 | ||
59 | /* MSTP5 */ | 60 | /* MSTP5 */ |
diff --git a/include/dt-bindings/clock/r8a7790-clock.h b/include/dt-bindings/clock/r8a7790-clock.h index fa5e8da809f2..20641fa68e73 100644 --- a/include/dt-bindings/clock/r8a7790-clock.h +++ b/include/dt-bindings/clock/r8a7790-clock.h | |||
@@ -82,6 +82,7 @@ | |||
82 | 82 | ||
83 | /* MSTP4 */ | 83 | /* MSTP4 */ |
84 | #define R8A7790_CLK_IRQC 7 | 84 | #define R8A7790_CLK_IRQC 7 |
85 | #define R8A7790_CLK_INTC_SYS 8 | ||
85 | 86 | ||
86 | /* MSTP5 */ | 87 | /* MSTP5 */ |
87 | #define R8A7790_CLK_AUDIO_DMAC1 1 | 88 | #define R8A7790_CLK_AUDIO_DMAC1 1 |
diff --git a/include/dt-bindings/clock/r8a7791-clock.h b/include/dt-bindings/clock/r8a7791-clock.h index ffa11379b3f0..adc50dc31ab3 100644 --- a/include/dt-bindings/clock/r8a7791-clock.h +++ b/include/dt-bindings/clock/r8a7791-clock.h | |||
@@ -72,6 +72,7 @@ | |||
72 | 72 | ||
73 | /* MSTP4 */ | 73 | /* MSTP4 */ |
74 | #define R8A7791_CLK_IRQC 7 | 74 | #define R8A7791_CLK_IRQC 7 |
75 | #define R8A7791_CLK_INTC_SYS 8 | ||
75 | 76 | ||
76 | /* MSTP5 */ | 77 | /* MSTP5 */ |
77 | #define R8A7791_CLK_AUDIO_DMAC1 1 | 78 | #define R8A7791_CLK_AUDIO_DMAC1 1 |
diff --git a/include/dt-bindings/clock/r8a7792-clock.h b/include/dt-bindings/clock/r8a7792-clock.h index 9a8b392ceb00..5be90bc23bd7 100644 --- a/include/dt-bindings/clock/r8a7792-clock.h +++ b/include/dt-bindings/clock/r8a7792-clock.h | |||
@@ -17,7 +17,6 @@ | |||
17 | #define R8A7792_CLK_PLL3 3 | 17 | #define R8A7792_CLK_PLL3 3 |
18 | #define R8A7792_CLK_LB 4 | 18 | #define R8A7792_CLK_LB 4 |
19 | #define R8A7792_CLK_QSPI 5 | 19 | #define R8A7792_CLK_QSPI 5 |
20 | #define R8A7792_CLK_Z 6 | ||
21 | 20 | ||
22 | /* MSTP0 */ | 21 | /* MSTP0 */ |
23 | #define R8A7792_CLK_MSIOF0 0 | 22 | #define R8A7792_CLK_MSIOF0 0 |
@@ -45,6 +44,7 @@ | |||
45 | 44 | ||
46 | /* MSTP4 */ | 45 | /* MSTP4 */ |
47 | #define R8A7792_CLK_IRQC 7 | 46 | #define R8A7792_CLK_IRQC 7 |
47 | #define R8A7792_CLK_INTC_SYS 8 | ||
48 | 48 | ||
49 | /* MSTP5 */ | 49 | /* MSTP5 */ |
50 | #define R8A7792_CLK_AUDIO_DMAC0 2 | 50 | #define R8A7792_CLK_AUDIO_DMAC0 2 |
diff --git a/include/dt-bindings/clock/r8a7793-clock.h b/include/dt-bindings/clock/r8a7793-clock.h index efcbc594fe82..7318d45d4e7e 100644 --- a/include/dt-bindings/clock/r8a7793-clock.h +++ b/include/dt-bindings/clock/r8a7793-clock.h | |||
@@ -77,10 +77,11 @@ | |||
77 | 77 | ||
78 | /* MSTP4 */ | 78 | /* MSTP4 */ |
79 | #define R8A7793_CLK_IRQC 7 | 79 | #define R8A7793_CLK_IRQC 7 |
80 | #define R8A7793_CLK_INTC_SYS 8 | ||
80 | 81 | ||
81 | /* MSTP5 */ | 82 | /* MSTP5 */ |
82 | #define R8A7793_CLK_AUDIO_DMAC1 1 | 83 | #define R8A7793_CLK_AUDIO_DMAC1 1 |
83 | #define R8A7793_CLK_AUDIO_DMAC0 2 | 84 | #define R8A7793_CLK_AUDIO_DMAC0 2 |
84 | #define R8A7793_CLK_ADSP_MOD 6 | 85 | #define R8A7793_CLK_ADSP_MOD 6 |
85 | #define R8A7793_CLK_THERMAL 22 | 86 | #define R8A7793_CLK_THERMAL 22 |
86 | #define R8A7793_CLK_PWM 23 | 87 | #define R8A7793_CLK_PWM 23 |
diff --git a/include/dt-bindings/clock/r8a7794-clock.h b/include/dt-bindings/clock/r8a7794-clock.h index 88e64846cf37..93e99c3ffc8d 100644 --- a/include/dt-bindings/clock/r8a7794-clock.h +++ b/include/dt-bindings/clock/r8a7794-clock.h | |||
@@ -64,6 +64,7 @@ | |||
64 | 64 | ||
65 | /* MSTP4 */ | 65 | /* MSTP4 */ |
66 | #define R8A7794_CLK_IRQC 7 | 66 | #define R8A7794_CLK_IRQC 7 |
67 | #define R8A7794_CLK_INTC_SYS 8 | ||
67 | 68 | ||
68 | /* MSTP5 */ | 69 | /* MSTP5 */ |
69 | #define R8A7794_CLK_AUDIO_DMAC0 2 | 70 | #define R8A7794_CLK_AUDIO_DMAC0 2 |
@@ -81,6 +82,7 @@ | |||
81 | #define R8A7794_CLK_SCIF2 19 | 82 | #define R8A7794_CLK_SCIF2 19 |
82 | #define R8A7794_CLK_SCIF1 20 | 83 | #define R8A7794_CLK_SCIF1 20 |
83 | #define R8A7794_CLK_SCIF0 21 | 84 | #define R8A7794_CLK_SCIF0 21 |
85 | #define R8A7794_CLK_DU1 23 | ||
84 | #define R8A7794_CLK_DU0 24 | 86 | #define R8A7794_CLK_DU0 24 |
85 | 87 | ||
86 | /* MSTP8 */ | 88 | /* MSTP8 */ |
diff --git a/include/dt-bindings/mfd/stm32f7-rcc.h b/include/dt-bindings/mfd/stm32f7-rcc.h new file mode 100644 index 000000000000..e36cc69959c7 --- /dev/null +++ b/include/dt-bindings/mfd/stm32f7-rcc.h | |||
@@ -0,0 +1,112 @@ | |||
1 | /* | ||
2 | * This header provides constants for the STM32F7 RCC IP | ||
3 | */ | ||
4 | |||
5 | #ifndef _DT_BINDINGS_MFD_STM32F7_RCC_H | ||
6 | #define _DT_BINDINGS_MFD_STM32F7_RCC_H | ||
7 | |||
8 | /* AHB1 */ | ||
9 | #define STM32F7_RCC_AHB1_GPIOA 0 | ||
10 | #define STM32F7_RCC_AHB1_GPIOB 1 | ||
11 | #define STM32F7_RCC_AHB1_GPIOC 2 | ||
12 | #define STM32F7_RCC_AHB1_GPIOD 3 | ||
13 | #define STM32F7_RCC_AHB1_GPIOE 4 | ||
14 | #define STM32F7_RCC_AHB1_GPIOF 5 | ||
15 | #define STM32F7_RCC_AHB1_GPIOG 6 | ||
16 | #define STM32F7_RCC_AHB1_GPIOH 7 | ||
17 | #define STM32F7_RCC_AHB1_GPIOI 8 | ||
18 | #define STM32F7_RCC_AHB1_GPIOJ 9 | ||
19 | #define STM32F7_RCC_AHB1_GPIOK 10 | ||
20 | #define STM32F7_RCC_AHB1_CRC 12 | ||
21 | #define STM32F7_RCC_AHB1_BKPSRAM 18 | ||
22 | #define STM32F7_RCC_AHB1_DTCMRAM 20 | ||
23 | #define STM32F7_RCC_AHB1_DMA1 21 | ||
24 | #define STM32F7_RCC_AHB1_DMA2 22 | ||
25 | #define STM32F7_RCC_AHB1_DMA2D 23 | ||
26 | #define STM32F7_RCC_AHB1_ETHMAC 25 | ||
27 | #define STM32F7_RCC_AHB1_ETHMACTX 26 | ||
28 | #define STM32F7_RCC_AHB1_ETHMACRX 27 | ||
29 | #define STM32FF_RCC_AHB1_ETHMACPTP 28 | ||
30 | #define STM32F7_RCC_AHB1_OTGHS 29 | ||
31 | #define STM32F7_RCC_AHB1_OTGHSULPI 30 | ||
32 | |||
33 | #define STM32F7_AHB1_RESET(bit) (STM32F7_RCC_AHB1_##bit + (0x10 * 8)) | ||
34 | #define STM32F7_AHB1_CLOCK(bit) (STM32F7_RCC_AHB1_##bit) | ||
35 | |||
36 | |||
37 | /* AHB2 */ | ||
38 | #define STM32F7_RCC_AHB2_DCMI 0 | ||
39 | #define STM32F7_RCC_AHB2_CRYP 4 | ||
40 | #define STM32F7_RCC_AHB2_HASH 5 | ||
41 | #define STM32F7_RCC_AHB2_RNG 6 | ||
42 | #define STM32F7_RCC_AHB2_OTGFS 7 | ||
43 | |||
44 | #define STM32F7_AHB2_RESET(bit) (STM32F7_RCC_AHB2_##bit + (0x14 * 8)) | ||
45 | #define STM32F7_AHB2_CLOCK(bit) (STM32F7_RCC_AHB2_##bit + 0x20) | ||
46 | |||
47 | /* AHB3 */ | ||
48 | #define STM32F7_RCC_AHB3_FMC 0 | ||
49 | #define STM32F7_RCC_AHB3_QSPI 1 | ||
50 | |||
51 | #define STM32F7_AHB3_RESET(bit) (STM32F7_RCC_AHB3_##bit + (0x18 * 8)) | ||
52 | #define STM32F7_AHB3_CLOCK(bit) (STM32F7_RCC_AHB3_##bit + 0x40) | ||
53 | |||
54 | /* APB1 */ | ||
55 | #define STM32F7_RCC_APB1_TIM2 0 | ||
56 | #define STM32F7_RCC_APB1_TIM3 1 | ||
57 | #define STM32F7_RCC_APB1_TIM4 2 | ||
58 | #define STM32F7_RCC_APB1_TIM5 3 | ||
59 | #define STM32F7_RCC_APB1_TIM6 4 | ||
60 | #define STM32F7_RCC_APB1_TIM7 5 | ||
61 | #define STM32F7_RCC_APB1_TIM12 6 | ||
62 | #define STM32F7_RCC_APB1_TIM13 7 | ||
63 | #define STM32F7_RCC_APB1_TIM14 8 | ||
64 | #define STM32F7_RCC_APB1_LPTIM1 9 | ||
65 | #define STM32F7_RCC_APB1_WWDG 11 | ||
66 | #define STM32F7_RCC_APB1_SPI2 14 | ||
67 | #define STM32F7_RCC_APB1_SPI3 15 | ||
68 | #define STM32F7_RCC_APB1_SPDIFRX 16 | ||
69 | #define STM32F7_RCC_APB1_UART2 17 | ||
70 | #define STM32F7_RCC_APB1_UART3 18 | ||
71 | #define STM32F7_RCC_APB1_UART4 19 | ||
72 | #define STM32F7_RCC_APB1_UART5 20 | ||
73 | #define STM32F7_RCC_APB1_I2C1 21 | ||
74 | #define STM32F7_RCC_APB1_I2C2 22 | ||
75 | #define STM32F7_RCC_APB1_I2C3 23 | ||
76 | #define STM32F7_RCC_APB1_I2C4 24 | ||
77 | #define STM32F7_RCC_APB1_CAN1 25 | ||
78 | #define STM32F7_RCC_APB1_CAN2 26 | ||
79 | #define STM32F7_RCC_APB1_CEC 27 | ||
80 | #define STM32F7_RCC_APB1_PWR 28 | ||
81 | #define STM32F7_RCC_APB1_DAC 29 | ||
82 | #define STM32F7_RCC_APB1_UART7 30 | ||
83 | #define STM32F7_RCC_APB1_UART8 31 | ||
84 | |||
85 | #define STM32F7_APB1_RESET(bit) (STM32F7_RCC_APB1_##bit + (0x20 * 8)) | ||
86 | #define STM32F7_APB1_CLOCK(bit) (STM32F7_RCC_APB1_##bit + 0x80) | ||
87 | |||
88 | /* APB2 */ | ||
89 | #define STM32F7_RCC_APB2_TIM1 0 | ||
90 | #define STM32F7_RCC_APB2_TIM8 1 | ||
91 | #define STM32F7_RCC_APB2_USART1 4 | ||
92 | #define STM32F7_RCC_APB2_USART6 5 | ||
93 | #define STM32F7_RCC_APB2_ADC1 8 | ||
94 | #define STM32F7_RCC_APB2_ADC2 9 | ||
95 | #define STM32F7_RCC_APB2_ADC3 10 | ||
96 | #define STM32F7_RCC_APB2_SDMMC1 11 | ||
97 | #define STM32F7_RCC_APB2_SPI1 12 | ||
98 | #define STM32F7_RCC_APB2_SPI4 13 | ||
99 | #define STM32F7_RCC_APB2_SYSCFG 14 | ||
100 | #define STM32F7_RCC_APB2_TIM9 16 | ||
101 | #define STM32F7_RCC_APB2_TIM10 17 | ||
102 | #define STM32F7_RCC_APB2_TIM11 18 | ||
103 | #define STM32F7_RCC_APB2_SPI5 20 | ||
104 | #define STM32F7_RCC_APB2_SPI6 21 | ||
105 | #define STM32F7_RCC_APB2_SAI1 22 | ||
106 | #define STM32F7_RCC_APB2_SAI2 23 | ||
107 | #define STM32F7_RCC_APB2_LTDC 26 | ||
108 | |||
109 | #define STM32F7_APB2_RESET(bit) (STM32F7_RCC_APB2_##bit + (0x24 * 8)) | ||
110 | #define STM32F7_APB2_CLOCK(bit) (STM32F7_RCC_APB2_##bit + 0xA0) | ||
111 | |||
112 | #endif /* _DT_BINDINGS_MFD_STM32F7_RCC_H */ | ||