diff options
Diffstat (limited to 'arch/arm')
114 files changed, 4593 insertions, 640 deletions
diff --git a/arch/arm/Makefile b/arch/arm/Makefile index 6fd2ceae305a..a37a50f575a2 100644 --- a/arch/arm/Makefile +++ b/arch/arm/Makefile | |||
@@ -190,6 +190,7 @@ machine-$(CONFIG_ARCH_S5PV210) += s5pv210 | |||
190 | machine-$(CONFIG_ARCH_SA1100) += sa1100 | 190 | machine-$(CONFIG_ARCH_SA1100) += sa1100 |
191 | machine-$(CONFIG_ARCH_SHARK) += shark | 191 | machine-$(CONFIG_ARCH_SHARK) += shark |
192 | machine-$(CONFIG_ARCH_SHMOBILE) += shmobile | 192 | machine-$(CONFIG_ARCH_SHMOBILE) += shmobile |
193 | machine-$(CONFIG_ARCH_SHMOBILE_MULTI) += shmobile | ||
193 | machine-$(CONFIG_ARCH_SIRF) += prima2 | 194 | machine-$(CONFIG_ARCH_SIRF) += prima2 |
194 | machine-$(CONFIG_ARCH_SOCFPGA) += socfpga | 195 | machine-$(CONFIG_ARCH_SOCFPGA) += socfpga |
195 | machine-$(CONFIG_ARCH_STI) += sti | 196 | machine-$(CONFIG_ARCH_STI) += sti |
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile index 641b3c9a7028..454288db3180 100644 --- a/arch/arm/boot/dts/Makefile +++ b/arch/arm/boot/dts/Makefile | |||
@@ -42,7 +42,8 @@ dtb-$(CONFIG_ARCH_AT91) += sama5d34ek.dtb | |||
42 | dtb-$(CONFIG_ARCH_AT91) += sama5d35ek.dtb | 42 | dtb-$(CONFIG_ARCH_AT91) += sama5d35ek.dtb |
43 | 43 | ||
44 | dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb | 44 | dtb-$(CONFIG_ARCH_BCM2835) += bcm2835-rpi-b.dtb |
45 | dtb-$(CONFIG_ARCH_BCM) += bcm11351-brt.dtb | 45 | dtb-$(CONFIG_ARCH_BCM) += bcm11351-brt.dtb \ |
46 | bcm28155-ap.dtb | ||
46 | dtb-$(CONFIG_ARCH_DAVINCI) += da850-enbw-cmc.dtb \ | 47 | dtb-$(CONFIG_ARCH_DAVINCI) += da850-enbw-cmc.dtb \ |
47 | da850-evm.dtb | 48 | da850-evm.dtb |
48 | dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \ | 49 | dtb-$(CONFIG_ARCH_DOVE) += dove-cm-a510.dtb \ |
@@ -53,13 +54,14 @@ dtb-$(CONFIG_ARCH_EXYNOS) += exynos4210-origen.dtb \ | |||
53 | exynos4210-trats.dtb \ | 54 | exynos4210-trats.dtb \ |
54 | exynos4210-universal_c210.dtb \ | 55 | exynos4210-universal_c210.dtb \ |
55 | exynos4412-odroidx.dtb \ | 56 | exynos4412-odroidx.dtb \ |
56 | exynos4412-smdk4412.dtb \ | ||
57 | exynos4412-origen.dtb \ | 57 | exynos4412-origen.dtb \ |
58 | exynos4412-smdk4412.dtb \ | ||
59 | exynos4412-trats2.dtb \ | ||
58 | exynos5250-arndale.dtb \ | 60 | exynos5250-arndale.dtb \ |
59 | exynos5440-sd5v1.dtb \ | ||
60 | exynos5250-smdk5250.dtb \ | 61 | exynos5250-smdk5250.dtb \ |
61 | exynos5250-snow.dtb \ | 62 | exynos5250-snow.dtb \ |
62 | exynos5420-smdk5420.dtb \ | 63 | exynos5420-smdk5420.dtb \ |
64 | exynos5440-sd5v1.dtb \ | ||
63 | exynos5440-ssdk5440.dtb | 65 | exynos5440-ssdk5440.dtb |
64 | dtb-$(CONFIG_ARCH_HIGHBANK) += highbank.dtb \ | 66 | dtb-$(CONFIG_ARCH_HIGHBANK) += highbank.dtb \ |
65 | ecx-2000.dtb | 67 | ecx-2000.dtb |
@@ -143,7 +145,9 @@ dtb-$(CONFIG_ARCH_MXS) += imx23-evk.dtb \ | |||
143 | imx28-cfa10037.dtb \ | 145 | imx28-cfa10037.dtb \ |
144 | imx28-cfa10049.dtb \ | 146 | imx28-cfa10049.dtb \ |
145 | imx28-cfa10055.dtb \ | 147 | imx28-cfa10055.dtb \ |
148 | imx28-cfa10056.dtb \ | ||
146 | imx28-cfa10057.dtb \ | 149 | imx28-cfa10057.dtb \ |
150 | imx28-cfa10058.dtb \ | ||
147 | imx28-evk.dtb \ | 151 | imx28-evk.dtb \ |
148 | imx28-m28evk.dtb \ | 152 | imx28-m28evk.dtb \ |
149 | imx28-sps1.dtb \ | 153 | imx28-sps1.dtb \ |
@@ -176,13 +180,14 @@ dtb-$(CONFIG_ARCH_OMAP2PLUS) += omap2420-h4.dtb \ | |||
176 | am43x-epos-evm.dtb | 180 | am43x-epos-evm.dtb |
177 | dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb | 181 | dtb-$(CONFIG_ARCH_ORION5X) += orion5x-lacie-ethernet-disk-mini-v2.dtb |
178 | dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb | 182 | dtb-$(CONFIG_ARCH_PRIMA2) += prima2-evb.dtb |
179 | dtb-$(CONFIG_ARCH_U8500) += snowball.dtb \ | 183 | dtb-$(CONFIG_ARCH_U8500) += ste-snowball.dtb \ |
180 | hrefprev60.dtb \ | 184 | ste-hrefprev60.dtb \ |
181 | hrefv60plus.dtb \ | 185 | ste-hrefv60plus.dtb \ |
182 | ccu8540.dtb \ | 186 | ste-ccu8540.dtb \ |
183 | ccu9540.dtb | 187 | ste-ccu9540.dtb |
184 | dtb-$(CONFIG_ARCH_S3C24XX) += s3c2416-smdk2416.dtb | 188 | dtb-$(CONFIG_ARCH_S3C24XX) += s3c2416-smdk2416.dtb |
185 | dtb-$(CONFIG_ARCH_SHMOBILE) += emev2-kzm9d.dtb \ | 189 | dtb-$(CONFIG_ARCH_SHMOBILE) += emev2-kzm9d.dtb \ |
190 | emev2-kzm9d-reference.dtb \ | ||
186 | r8a7740-armadillo800eva.dtb \ | 191 | r8a7740-armadillo800eva.dtb \ |
187 | r8a7778-bockw.dtb \ | 192 | r8a7778-bockw.dtb \ |
188 | r8a7740-armadillo800eva-reference.dtb \ | 193 | r8a7740-armadillo800eva-reference.dtb \ |
@@ -192,6 +197,7 @@ dtb-$(CONFIG_ARCH_SHMOBILE) += emev2-kzm9d.dtb \ | |||
192 | sh73a0-kzm9g-reference.dtb \ | 197 | sh73a0-kzm9g-reference.dtb \ |
193 | r8a73a4-ape6evm.dtb \ | 198 | r8a73a4-ape6evm.dtb \ |
194 | sh7372-mackerel.dtb | 199 | sh7372-mackerel.dtb |
200 | dtb-$(CONFIG_ARCH_SHMOBILE_MULTI) += emev2-kzm9d-reference.dtb | ||
195 | dtb-$(CONFIG_ARCH_SOCFPGA) += socfpga_cyclone5.dtb \ | 201 | dtb-$(CONFIG_ARCH_SOCFPGA) += socfpga_cyclone5.dtb \ |
196 | socfpga_vt.dtb | 202 | socfpga_vt.dtb |
197 | dtb-$(CONFIG_ARCH_SPEAR13XX) += spear1310-evb.dtb \ | 203 | dtb-$(CONFIG_ARCH_SPEAR13XX) += spear1310-evb.dtb \ |
@@ -206,11 +212,14 @@ dtb-$(CONFIG_ARCH_STI)+= stih415-b2000.dtb \ | |||
206 | stih415-b2020.dtb \ | 212 | stih415-b2020.dtb \ |
207 | stih416-b2020.dtb | 213 | stih416-b2020.dtb |
208 | dtb-$(CONFIG_ARCH_SUNXI) += \ | 214 | dtb-$(CONFIG_ARCH_SUNXI) += \ |
215 | sun4i-a10-a1000.dtb \ | ||
209 | sun4i-a10-cubieboard.dtb \ | 216 | sun4i-a10-cubieboard.dtb \ |
210 | sun4i-a10-mini-xplus.dtb \ | 217 | sun4i-a10-mini-xplus.dtb \ |
211 | sun4i-a10-hackberry.dtb \ | 218 | sun4i-a10-hackberry.dtb \ |
212 | sun5i-a10s-olinuxino-micro.dtb \ | 219 | sun5i-a10s-olinuxino-micro.dtb \ |
213 | sun5i-a13-olinuxino.dtb | 220 | sun5i-a13-olinuxino.dtb \ |
221 | sun6i-a31-colombus.dtb \ | ||
222 | sun7i-a20-olinuxino-micro.dtb | ||
214 | dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ | 223 | dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ |
215 | tegra20-iris-512.dtb \ | 224 | tegra20-iris-512.dtb \ |
216 | tegra20-medcom-wide.dtb \ | 225 | tegra20-medcom-wide.dtb \ |
@@ -224,8 +233,7 @@ dtb-$(CONFIG_ARCH_TEGRA) += tegra20-harmony.dtb \ | |||
224 | tegra30-beaver.dtb \ | 233 | tegra30-beaver.dtb \ |
225 | tegra30-cardhu-a02.dtb \ | 234 | tegra30-cardhu-a02.dtb \ |
226 | tegra30-cardhu-a04.dtb \ | 235 | tegra30-cardhu-a04.dtb \ |
227 | tegra114-dalmore.dtb \ | 236 | tegra114-dalmore.dtb |
228 | tegra114-pluto.dtb | ||
229 | dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \ | 237 | dtb-$(CONFIG_ARCH_VERSATILE) += versatile-ab.dtb \ |
230 | versatile-pb.dtb | 238 | versatile-pb.dtb |
231 | dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb | 239 | dtb-$(CONFIG_ARCH_U300) += ste-u300.dtb |
diff --git a/arch/arm/boot/dts/at91rm9200.dtsi b/arch/arm/boot/dts/at91rm9200.dtsi index 92b9e21389db..f77065506f1e 100644 --- a/arch/arm/boot/dts/at91rm9200.dtsi +++ b/arch/arm/boot/dts/at91rm9200.dtsi | |||
@@ -120,6 +120,7 @@ | |||
120 | interrupts = <10 IRQ_TYPE_LEVEL_HIGH 0>; | 120 | interrupts = <10 IRQ_TYPE_LEVEL_HIGH 0>; |
121 | #address-cells = <1>; | 121 | #address-cells = <1>; |
122 | #size-cells = <0>; | 122 | #size-cells = <0>; |
123 | pinctrl-names = "default"; | ||
123 | status = "disabled"; | 124 | status = "disabled"; |
124 | }; | 125 | }; |
125 | 126 | ||
diff --git a/arch/arm/boot/dts/at91rm9200_pqfp.dtsi b/arch/arm/boot/dts/at91rm9200_pqfp.dtsi new file mode 100644 index 000000000000..93ca66f80360 --- /dev/null +++ b/arch/arm/boot/dts/at91rm9200_pqfp.dtsi | |||
@@ -0,0 +1,17 @@ | |||
1 | /* | ||
2 | * at91rm9200_pqfp.dtsi - Device Tree Include file for AT91RM9200 PQFP family SoC | ||
3 | * | ||
4 | * Copyright (C) 2013 Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> | ||
5 | * | ||
6 | * Licensed under GPLv2 or later. | ||
7 | */ | ||
8 | |||
9 | #include "at91rm9200.dtsi" | ||
10 | |||
11 | / { | ||
12 | compatible = "atmel,at91rm9200-pqfp", "atmel,at91rm9200"; | ||
13 | }; | ||
14 | |||
15 | &pioD { | ||
16 | status = "disabled"; | ||
17 | }; | ||
diff --git a/arch/arm/boot/dts/at91sam9260.dtsi b/arch/arm/boot/dts/at91sam9260.dtsi index c7ccbcbffb3e..56ee8282a7a8 100644 --- a/arch/arm/boot/dts/at91sam9260.dtsi +++ b/arch/arm/boot/dts/at91sam9260.dtsi | |||
@@ -572,6 +572,7 @@ | |||
572 | interrupts = <9 IRQ_TYPE_LEVEL_HIGH 0>; | 572 | interrupts = <9 IRQ_TYPE_LEVEL_HIGH 0>; |
573 | #address-cells = <1>; | 573 | #address-cells = <1>; |
574 | #size-cells = <0>; | 574 | #size-cells = <0>; |
575 | pinctrl-names = "default"; | ||
575 | status = "disabled"; | 576 | status = "disabled"; |
576 | }; | 577 | }; |
577 | 578 | ||
diff --git a/arch/arm/boot/dts/at91sam9n12.dtsi b/arch/arm/boot/dts/at91sam9n12.dtsi index bb7f564b3a55..9fb7ffd32af2 100644 --- a/arch/arm/boot/dts/at91sam9n12.dtsi +++ b/arch/arm/boot/dts/at91sam9n12.dtsi | |||
@@ -291,6 +291,22 @@ | |||
291 | }; | 291 | }; |
292 | }; | 292 | }; |
293 | 293 | ||
294 | i2c0 { | ||
295 | pinctrl_i2c0: i2c0-0 { | ||
296 | atmel,pins = | ||
297 | <AT91_PIOA 30 AT91_PERIPH_A AT91_PINCTRL_NONE | ||
298 | AT91_PIOA 31 AT91_PERIPH_A AT91_PINCTRL_NONE>; | ||
299 | }; | ||
300 | }; | ||
301 | |||
302 | i2c1 { | ||
303 | pinctrl_i2c1: i2c1-0 { | ||
304 | atmel,pins = | ||
305 | <AT91_PIOC 0 AT91_PERIPH_C AT91_PINCTRL_NONE | ||
306 | AT91_PIOC 1 AT91_PERIPH_C AT91_PINCTRL_NONE>; | ||
307 | }; | ||
308 | }; | ||
309 | |||
294 | tcb0 { | 310 | tcb0 { |
295 | pinctrl_tcb0_tclk0: tcb0_tclk0-0 { | 311 | pinctrl_tcb0_tclk0: tcb0_tclk0-0 { |
296 | atmel,pins = <AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_NONE>; | 312 | atmel,pins = <AT91_PIOA 24 AT91_PERIPH_A AT91_PINCTRL_NONE>; |
@@ -471,6 +487,8 @@ | |||
471 | dma-names = "tx", "rx"; | 487 | dma-names = "tx", "rx"; |
472 | #address-cells = <1>; | 488 | #address-cells = <1>; |
473 | #size-cells = <0>; | 489 | #size-cells = <0>; |
490 | pinctrl-names = "default"; | ||
491 | pinctrl-0 = <&pinctrl_i2c0>; | ||
474 | status = "disabled"; | 492 | status = "disabled"; |
475 | }; | 493 | }; |
476 | 494 | ||
@@ -483,6 +501,8 @@ | |||
483 | dma-names = "tx", "rx"; | 501 | dma-names = "tx", "rx"; |
484 | #address-cells = <1>; | 502 | #address-cells = <1>; |
485 | #size-cells = <0>; | 503 | #size-cells = <0>; |
504 | pinctrl-names = "default"; | ||
505 | pinctrl-0 = <&pinctrl_i2c1>; | ||
486 | status = "disabled"; | 506 | status = "disabled"; |
487 | }; | 507 | }; |
488 | 508 | ||
diff --git a/arch/arm/boot/dts/at91sam9n12ek.dts b/arch/arm/boot/dts/at91sam9n12ek.dts index 3d77dbe406f4..27a9352b9d7a 100644 --- a/arch/arm/boot/dts/at91sam9n12ek.dts +++ b/arch/arm/boot/dts/at91sam9n12ek.dts | |||
@@ -40,6 +40,15 @@ | |||
40 | 40 | ||
41 | i2c0: i2c@f8010000 { | 41 | i2c0: i2c@f8010000 { |
42 | status = "okay"; | 42 | status = "okay"; |
43 | |||
44 | qt1070: keyboard@1b { | ||
45 | compatible = "qt1070"; | ||
46 | reg = <0x1b>; | ||
47 | interrupt-parent = <&pioA>; | ||
48 | interrupts = <2 IRQ_TYPE_EDGE_FALLING>; | ||
49 | pinctrl-names = "default"; | ||
50 | pinctrl-0 = <&pinctrl_qt1070_irq>; | ||
51 | }; | ||
43 | }; | 52 | }; |
44 | 53 | ||
45 | i2c1: i2c@f8014000 { | 54 | i2c1: i2c@f8014000 { |
@@ -66,6 +75,13 @@ | |||
66 | <AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PA7 gpio CD pin pull up and deglitch */ | 75 | <AT91_PIOA 7 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; /* PA7 gpio CD pin pull up and deglitch */ |
67 | }; | 76 | }; |
68 | }; | 77 | }; |
78 | |||
79 | qt1070 { | ||
80 | pinctrl_qt1070_irq: qt1070_irq { | ||
81 | atmel,pins = | ||
82 | <AT91_PIOA 2 AT91_PERIPH_GPIO AT91_PINCTRL_PULL_UP_DEGLITCH>; | ||
83 | }; | ||
84 | }; | ||
69 | }; | 85 | }; |
70 | 86 | ||
71 | spi0: spi@f0000000 { | 87 | spi0: spi@f0000000 { |
@@ -121,7 +137,7 @@ | |||
121 | 137 | ||
122 | enter { | 138 | enter { |
123 | label = "Enter"; | 139 | label = "Enter"; |
124 | gpios = <&pioB 4 GPIO_ACTIVE_LOW>; | 140 | gpios = <&pioB 3 GPIO_ACTIVE_LOW>; |
125 | linux,code = <28>; | 141 | linux,code = <28>; |
126 | gpio-key,wakeup; | 142 | gpio-key,wakeup; |
127 | }; | 143 | }; |
diff --git a/arch/arm/boot/dts/at91sam9x5.dtsi b/arch/arm/boot/dts/at91sam9x5.dtsi index 57d45f5bea09..cf78ac0b04b1 100644 --- a/arch/arm/boot/dts/at91sam9x5.dtsi +++ b/arch/arm/boot/dts/at91sam9x5.dtsi | |||
@@ -542,6 +542,9 @@ | |||
542 | compatible = "atmel,at91sam9g45-ssc"; | 542 | compatible = "atmel,at91sam9g45-ssc"; |
543 | reg = <0xf0010000 0x4000>; | 543 | reg = <0xf0010000 0x4000>; |
544 | interrupts = <28 IRQ_TYPE_LEVEL_HIGH 5>; | 544 | interrupts = <28 IRQ_TYPE_LEVEL_HIGH 5>; |
545 | dmas = <&dma0 1 AT91_DMA_CFG_PER_ID(13)>, | ||
546 | <&dma0 1 AT91_DMA_CFG_PER_ID(14)>; | ||
547 | dma-names = "tx", "rx"; | ||
545 | pinctrl-names = "default"; | 548 | pinctrl-names = "default"; |
546 | pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; | 549 | pinctrl-0 = <&pinctrl_ssc0_tx &pinctrl_ssc0_rx>; |
547 | status = "disabled"; | 550 | status = "disabled"; |
diff --git a/arch/arm/boot/dts/at91sam9x5ek.dtsi b/arch/arm/boot/dts/at91sam9x5ek.dtsi index 49e3c45818c2..3a9f6fa4a36a 100644 --- a/arch/arm/boot/dts/at91sam9x5ek.dtsi +++ b/arch/arm/boot/dts/at91sam9x5ek.dtsi | |||
@@ -59,6 +59,11 @@ | |||
59 | 59 | ||
60 | i2c0: i2c@f8010000 { | 60 | i2c0: i2c@f8010000 { |
61 | status = "okay"; | 61 | status = "okay"; |
62 | |||
63 | wm8731: wm8731@1a { | ||
64 | compatible = "wm8731"; | ||
65 | reg = <0x1a>; | ||
66 | }; | ||
62 | }; | 67 | }; |
63 | 68 | ||
64 | pinctrl@fffff400 { | 69 | pinctrl@fffff400 { |
@@ -90,6 +95,10 @@ | |||
90 | watchdog@fffffe40 { | 95 | watchdog@fffffe40 { |
91 | status = "okay"; | 96 | status = "okay"; |
92 | }; | 97 | }; |
98 | |||
99 | ssc0: ssc@f0010000 { | ||
100 | status = "okay"; | ||
101 | }; | ||
93 | }; | 102 | }; |
94 | 103 | ||
95 | usb0: ohci@00600000 { | 104 | usb0: ohci@00600000 { |
@@ -105,4 +114,19 @@ | |||
105 | status = "okay"; | 114 | status = "okay"; |
106 | }; | 115 | }; |
107 | }; | 116 | }; |
117 | |||
118 | sound { | ||
119 | compatible = "atmel,sam9x5-wm8731-audio"; | ||
120 | |||
121 | atmel,model = "wm8731 @ AT91SAM9X5EK"; | ||
122 | |||
123 | atmel,audio-routing = | ||
124 | "Headphone Jack", "RHPOUT", | ||
125 | "Headphone Jack", "LHPOUT", | ||
126 | "LLINEIN", "Line In Jack", | ||
127 | "RLINEIN", "Line In Jack"; | ||
128 | |||
129 | atmel,ssc-controller = <&ssc0>; | ||
130 | atmel,audio-codec = <&wm8731>; | ||
131 | }; | ||
108 | }; | 132 | }; |
diff --git a/arch/arm/boot/dts/bcm11351-brt.dts b/arch/arm/boot/dts/bcm11351-brt.dts index 67ec524098b5..9d36eb4e3c41 100644 --- a/arch/arm/boot/dts/bcm11351-brt.dts +++ b/arch/arm/boot/dts/bcm11351-brt.dts | |||
@@ -17,7 +17,7 @@ | |||
17 | 17 | ||
18 | / { | 18 | / { |
19 | model = "BCM11351 BRT board"; | 19 | model = "BCM11351 BRT board"; |
20 | compatible = "bcm,bcm11351-brt", "bcm,bcm11351"; | 20 | compatible = "brcm,bcm11351-brt", "brcm,bcm11351"; |
21 | 21 | ||
22 | memory { | 22 | memory { |
23 | reg = <0x80000000 0x40000000>; /* 1 GB */ | 23 | reg = <0x80000000 0x40000000>; /* 1 GB */ |
@@ -27,18 +27,18 @@ | |||
27 | status = "okay"; | 27 | status = "okay"; |
28 | }; | 28 | }; |
29 | 29 | ||
30 | sdio0: sdio@0x3f180000 { | 30 | sdio1: sdio@3f180000 { |
31 | max-frequency = <48000000>; | 31 | max-frequency = <48000000>; |
32 | status = "okay"; | 32 | status = "okay"; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | sdio1: sdio@0x3f190000 { | 35 | sdio2: sdio@3f190000 { |
36 | non-removable; | 36 | non-removable; |
37 | max-frequency = <48000000>; | 37 | max-frequency = <48000000>; |
38 | status = "okay"; | 38 | status = "okay"; |
39 | }; | 39 | }; |
40 | 40 | ||
41 | sdio3: sdio@0x3f1b0000 { | 41 | sdio4: sdio@3f1b0000 { |
42 | max-frequency = <48000000>; | 42 | max-frequency = <48000000>; |
43 | status = "okay"; | 43 | status = "okay"; |
44 | }; | 44 | }; |
diff --git a/arch/arm/boot/dts/bcm11351.dtsi b/arch/arm/boot/dts/bcm11351.dtsi index c0cdf66f8964..05a5aabe3b2c 100644 --- a/arch/arm/boot/dts/bcm11351.dtsi +++ b/arch/arm/boot/dts/bcm11351.dtsi | |||
@@ -1,5 +1,5 @@ | |||
1 | /* | 1 | /* |
2 | * Copyright (C) 2012 Broadcom Corporation | 2 | * Copyright (C) 2012-2013 Broadcom Corporation |
3 | * | 3 | * |
4 | * This program is free software; you can redistribute it and/or | 4 | * This program is free software; you can redistribute it and/or |
5 | * modify it under the terms of the GNU General Public License as | 5 | * modify it under the terms of the GNU General Public License as |
@@ -18,7 +18,7 @@ | |||
18 | 18 | ||
19 | / { | 19 | / { |
20 | model = "BCM11351 SoC"; | 20 | model = "BCM11351 SoC"; |
21 | compatible = "bcm,bcm11351"; | 21 | compatible = "brcm,bcm11351"; |
22 | interrupt-parent = <&gic>; | 22 | interrupt-parent = <&gic>; |
23 | 23 | ||
24 | chosen { | 24 | chosen { |
@@ -35,12 +35,12 @@ | |||
35 | }; | 35 | }; |
36 | 36 | ||
37 | smc@0x3404c000 { | 37 | smc@0x3404c000 { |
38 | compatible = "bcm,bcm11351-smc", "bcm,kona-smc"; | 38 | compatible = "brcm,bcm11351-smc", "brcm,kona-smc"; |
39 | reg = <0x3404c000 0x400>; /* 1 KiB in SRAM */ | 39 | reg = <0x3404c000 0x400>; /* 1 KiB in SRAM */ |
40 | }; | 40 | }; |
41 | 41 | ||
42 | uart@3e000000 { | 42 | uart@3e000000 { |
43 | compatible = "bcm,bcm11351-dw-apb-uart", "snps,dw-apb-uart"; | 43 | compatible = "brcm,bcm11351-dw-apb-uart", "snps,dw-apb-uart"; |
44 | status = "disabled"; | 44 | status = "disabled"; |
45 | reg = <0x3e000000 0x1000>; | 45 | reg = <0x3e000000 0x1000>; |
46 | clock-frequency = <13000000>; | 46 | clock-frequency = <13000000>; |
@@ -50,42 +50,47 @@ | |||
50 | }; | 50 | }; |
51 | 51 | ||
52 | L2: l2-cache { | 52 | L2: l2-cache { |
53 | compatible = "bcm,bcm11351-a2-pl310-cache"; | 53 | compatible = "brcm,bcm11351-a2-pl310-cache"; |
54 | reg = <0x3ff20000 0x1000>; | 54 | reg = <0x3ff20000 0x1000>; |
55 | cache-unified; | 55 | cache-unified; |
56 | cache-level = <2>; | 56 | cache-level = <2>; |
57 | }; | 57 | }; |
58 | 58 | ||
59 | watchdog@35002f40 { | ||
60 | compatible = "brcm,bcm11351-wdt", "brcm,kona-wdt"; | ||
61 | reg = <0x35002f40 0x6c>; | ||
62 | }; | ||
63 | |||
59 | timer@35006000 { | 64 | timer@35006000 { |
60 | compatible = "bcm,kona-timer"; | 65 | compatible = "brcm,kona-timer"; |
61 | reg = <0x35006000 0x1000>; | 66 | reg = <0x35006000 0x1000>; |
62 | interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; | 67 | interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>; |
63 | clock-frequency = <32768>; | 68 | clock-frequency = <32768>; |
64 | }; | 69 | }; |
65 | 70 | ||
66 | sdio0: sdio@0x3f180000 { | 71 | sdio1: sdio@3f180000 { |
67 | compatible = "bcm,kona-sdhci"; | 72 | compatible = "brcm,kona-sdhci"; |
68 | reg = <0x3f180000 0x10000>; | 73 | reg = <0x3f180000 0x10000>; |
69 | interrupts = <0x0 77 0x4>; | 74 | interrupts = <0x0 77 0x4>; |
70 | status = "disabled"; | 75 | status = "disabled"; |
71 | }; | 76 | }; |
72 | 77 | ||
73 | sdio1: sdio@0x3f190000 { | 78 | sdio2: sdio@3f190000 { |
74 | compatible = "bcm,kona-sdhci"; | 79 | compatible = "brcm,kona-sdhci"; |
75 | reg = <0x3f190000 0x10000>; | 80 | reg = <0x3f190000 0x10000>; |
76 | interrupts = <0x0 76 0x4>; | 81 | interrupts = <0x0 76 0x4>; |
77 | status = "disabled"; | 82 | status = "disabled"; |
78 | }; | 83 | }; |
79 | 84 | ||
80 | sdio2: sdio@0x3f1a0000 { | 85 | sdio3: sdio@3f1a0000 { |
81 | compatible = "bcm,kona-sdhci"; | 86 | compatible = "brcm,kona-sdhci"; |
82 | reg = <0x3f1a0000 0x10000>; | 87 | reg = <0x3f1a0000 0x10000>; |
83 | interrupts = <0x0 74 0x4>; | 88 | interrupts = <0x0 74 0x4>; |
84 | status = "disabled"; | 89 | status = "disabled"; |
85 | }; | 90 | }; |
86 | 91 | ||
87 | sdio3: sdio@0x3f1b0000 { | 92 | sdio4: sdio@3f1b0000 { |
88 | compatible = "bcm,kona-sdhci"; | 93 | compatible = "brcm,kona-sdhci"; |
89 | reg = <0x3f1b0000 0x10000>; | 94 | reg = <0x3f1b0000 0x10000>; |
90 | interrupts = <0x0 73 0x4>; | 95 | interrupts = <0x0 73 0x4>; |
91 | status = "disabled"; | 96 | status = "disabled"; |
diff --git a/arch/arm/boot/dts/bcm28155-ap.dts b/arch/arm/boot/dts/bcm28155-ap.dts new file mode 100644 index 000000000000..96ae67a2f0d3 --- /dev/null +++ b/arch/arm/boot/dts/bcm28155-ap.dts | |||
@@ -0,0 +1,45 @@ | |||
1 | /* | ||
2 | * Copyright (C) 2013 Broadcom Corporation | ||
3 | * | ||
4 | * This program is free software; you can redistribute it and/or | ||
5 | * modify it under the terms of the GNU General Public License as | ||
6 | * published by the Free Software Foundation version 2. | ||
7 | * | ||
8 | * This program is distributed "as is" WITHOUT ANY WARRANTY of any | ||
9 | * kind, whether express or implied; without even the implied warranty | ||
10 | * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
11 | * GNU General Public License for more details. | ||
12 | */ | ||
13 | |||
14 | /dts-v1/; | ||
15 | |||
16 | #include "bcm11351.dtsi" | ||
17 | |||
18 | / { | ||
19 | model = "BCM28155 AP board"; | ||
20 | compatible = "brcm,bcm28155-ap", "brcm,bcm11351"; | ||
21 | |||
22 | memory { | ||
23 | reg = <0x80000000 0x40000000>; /* 1 GB */ | ||
24 | }; | ||
25 | |||
26 | uart@3e000000 { | ||
27 | status = "okay"; | ||
28 | }; | ||
29 | |||
30 | sdio1: sdio@3f180000 { | ||
31 | max-frequency = <48000000>; | ||
32 | status = "okay"; | ||
33 | }; | ||
34 | |||
35 | sdio2: sdio@3f190000 { | ||
36 | non-removable; | ||
37 | max-frequency = <48000000>; | ||
38 | status = "okay"; | ||
39 | }; | ||
40 | |||
41 | sdio4: sdio@3f1b0000 { | ||
42 | max-frequency = <48000000>; | ||
43 | status = "okay"; | ||
44 | }; | ||
45 | }; | ||
diff --git a/arch/arm/boot/dts/ccu8540.dts b/arch/arm/boot/dts/ccu8540.dts deleted file mode 100644 index 48ff03441f5a..000000000000 --- a/arch/arm/boot/dts/ccu8540.dts +++ /dev/null | |||
@@ -1,41 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright 2013 ST-Ericsson AB | ||
3 | * | ||
4 | * 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 | * Version 2 or later at the following locations: | ||
7 | * | ||
8 | * http://www.opensource.org/licenses/gpl-license.html | ||
9 | * http://www.gnu.org/copyleft/gpl.html | ||
10 | */ | ||
11 | |||
12 | /dts-v1/; | ||
13 | #include "dbx5x0.dtsi" | ||
14 | |||
15 | / { | ||
16 | model = "ST-Ericsson U8540 platform with Device Tree"; | ||
17 | compatible = "st-ericsson,ccu8540", "st-ericsson,u8540"; | ||
18 | |||
19 | memory@0 { | ||
20 | reg = <0x20000000 0x1f000000>, <0xc0000000 0x3f000000>; | ||
21 | }; | ||
22 | |||
23 | soc { | ||
24 | prcmu@80157000 { | ||
25 | reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x3000>; | ||
26 | reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm"; | ||
27 | }; | ||
28 | |||
29 | uart@80120000 { | ||
30 | status = "okay"; | ||
31 | }; | ||
32 | |||
33 | uart@80121000 { | ||
34 | status = "okay"; | ||
35 | }; | ||
36 | |||
37 | uart@80007000 { | ||
38 | status = "okay"; | ||
39 | }; | ||
40 | }; | ||
41 | }; | ||
diff --git a/arch/arm/boot/dts/emev2-kzm9d-reference.dts b/arch/arm/boot/dts/emev2-kzm9d-reference.dts new file mode 100644 index 000000000000..bed676b95c27 --- /dev/null +++ b/arch/arm/boot/dts/emev2-kzm9d-reference.dts | |||
@@ -0,0 +1,57 @@ | |||
1 | /* | ||
2 | * Device Tree Source for the KZM9D board | ||
3 | * | ||
4 | * Copyright (C) 2013 Renesas Solutions Corp. | ||
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 | /dts-v1/; | ||
11 | |||
12 | /include/ "emev2.dtsi" | ||
13 | |||
14 | / { | ||
15 | model = "EMEV2 KZM9D Board"; | ||
16 | compatible = "renesas,kzm9d-reference", "renesas,emev2"; | ||
17 | |||
18 | memory { | ||
19 | device_type = "memory"; | ||
20 | reg = <0x40000000 0x8000000>; | ||
21 | }; | ||
22 | |||
23 | chosen { | ||
24 | bootargs = "console=ttyS1,115200n81 ignore_loglevel root=/dev/nfs ip=dhcp nfsroot=,rsize=4096,wsize=4096"; | ||
25 | }; | ||
26 | |||
27 | reg_1p8v: regulator@0 { | ||
28 | compatible = "regulator-fixed"; | ||
29 | regulator-name = "fixed-1.8V"; | ||
30 | regulator-min-microvolt = <1800000>; | ||
31 | regulator-max-microvolt = <1800000>; | ||
32 | regulator-always-on; | ||
33 | regulator-boot-on; | ||
34 | }; | ||
35 | |||
36 | reg_3p3v: regulator@1 { | ||
37 | compatible = "regulator-fixed"; | ||
38 | regulator-name = "fixed-3.3V"; | ||
39 | regulator-min-microvolt = <3300000>; | ||
40 | regulator-max-microvolt = <3300000>; | ||
41 | regulator-always-on; | ||
42 | regulator-boot-on; | ||
43 | }; | ||
44 | |||
45 | lan9220@20000000 { | ||
46 | compatible = "smsc,lan9220", "smsc,lan9115"; | ||
47 | reg = <0x20000000 0x10000>; | ||
48 | phy-mode = "mii"; | ||
49 | interrupt-parent = <&gpio0>; | ||
50 | interrupts = <1 1>; /* active high */ | ||
51 | reg-io-width = <4>; | ||
52 | smsc,irq-active-high; | ||
53 | smsc,irq-push-pull; | ||
54 | vddvario-supply = <®_1p8v>; | ||
55 | vdd33a-supply = <®_3p3v>; | ||
56 | }; | ||
57 | }; | ||
diff --git a/arch/arm/boot/dts/emev2-kzm9d.dts b/arch/arm/boot/dts/emev2-kzm9d.dts index b9b3241f173b..dda13bc02f9f 100644 --- a/arch/arm/boot/dts/emev2-kzm9d.dts +++ b/arch/arm/boot/dts/emev2-kzm9d.dts | |||
@@ -21,6 +21,6 @@ | |||
21 | }; | 21 | }; |
22 | 22 | ||
23 | chosen { | 23 | chosen { |
24 | bootargs = "console=tty0 console=ttyS1,115200n81 earlyprintk=serial8250-em.1,115200n81 mem=128M@0x40000000 ignore_loglevel root=/dev/nfs ip=dhcp nfsroot=,rsize=4096,wsize=4096"; | 24 | bootargs = "console=ttyS1,115200n81 ignore_loglevel root=/dev/nfs ip=dhcp nfsroot=,rsize=4096,wsize=4096"; |
25 | }; | 25 | }; |
26 | }; | 26 | }; |
diff --git a/arch/arm/boot/dts/emev2.dtsi b/arch/arm/boot/dts/emev2.dtsi index c8a8c08b48dd..99ad2b2e8e14 100644 --- a/arch/arm/boot/dts/emev2.dtsi +++ b/arch/arm/boot/dts/emev2.dtsi | |||
@@ -14,6 +14,14 @@ | |||
14 | compatible = "renesas,emev2"; | 14 | compatible = "renesas,emev2"; |
15 | interrupt-parent = <&gic>; | 15 | interrupt-parent = <&gic>; |
16 | 16 | ||
17 | aliases { | ||
18 | gpio0 = &gpio0; | ||
19 | gpio1 = &gpio1; | ||
20 | gpio2 = &gpio2; | ||
21 | gpio3 = &gpio3; | ||
22 | gpio4 = &gpio4; | ||
23 | }; | ||
24 | |||
17 | cpus { | 25 | cpus { |
18 | #address-cells = <1>; | 26 | #address-cells = <1>; |
19 | #size-cells = <0>; | 27 | #size-cells = <0>; |
@@ -67,4 +75,55 @@ | |||
67 | reg = <0xe1050000 0x38>; | 75 | reg = <0xe1050000 0x38>; |
68 | interrupts = <0 11 0>; | 76 | interrupts = <0 11 0>; |
69 | }; | 77 | }; |
78 | |||
79 | gpio0: gpio@e0050000 { | ||
80 | compatible = "renesas,em-gio"; | ||
81 | reg = <0xe0050000 0x2c>, <0xe0050040 0x20>; | ||
82 | interrupts = <0 67 0>, <0 68 0>; | ||
83 | gpio-controller; | ||
84 | #gpio-cells = <2>; | ||
85 | ngpios = <32>; | ||
86 | interrupt-controller; | ||
87 | #interrupt-cells = <2>; | ||
88 | }; | ||
89 | gpio1: gpio@e0050080 { | ||
90 | compatible = "renesas,em-gio"; | ||
91 | reg = <0xe0050080 0x2c>, <0xe00500c0 0x20>; | ||
92 | interrupts = <0 69 0>, <0 70 0>; | ||
93 | gpio-controller; | ||
94 | #gpio-cells = <2>; | ||
95 | ngpios = <32>; | ||
96 | interrupt-controller; | ||
97 | #interrupt-cells = <2>; | ||
98 | }; | ||
99 | gpio2: gpio@e0050100 { | ||
100 | compatible = "renesas,em-gio"; | ||
101 | reg = <0xe0050100 0x2c>, <0xe0050140 0x20>; | ||
102 | interrupts = <0 71 0>, <0 72 0>; | ||
103 | gpio-controller; | ||
104 | #gpio-cells = <2>; | ||
105 | ngpios = <32>; | ||
106 | interrupt-controller; | ||
107 | #interrupt-cells = <2>; | ||
108 | }; | ||
109 | gpio3: gpio@e0050180 { | ||
110 | compatible = "renesas,em-gio"; | ||
111 | reg = <0xe0050180 0x2c>, <0xe00501c0 0x20>; | ||
112 | interrupts = <0 73 0>, <0 74 0>; | ||
113 | gpio-controller; | ||
114 | #gpio-cells = <2>; | ||
115 | ngpios = <32>; | ||
116 | interrupt-controller; | ||
117 | #interrupt-cells = <2>; | ||
118 | }; | ||
119 | gpio4: gpio@e0050200 { | ||
120 | compatible = "renesas,em-gio"; | ||
121 | reg = <0xe0050200 0x2c>, <0xe0050240 0x20>; | ||
122 | interrupts = <0 75 0>, <0 76 0>; | ||
123 | gpio-controller; | ||
124 | #gpio-cells = <2>; | ||
125 | ngpios = <31>; | ||
126 | interrupt-controller; | ||
127 | #interrupt-cells = <2>; | ||
128 | }; | ||
70 | }; | 129 | }; |
diff --git a/arch/arm/boot/dts/exynos4.dtsi b/arch/arm/boot/dts/exynos4.dtsi index 3f94fe8e3706..93c250139159 100644 --- a/arch/arm/boot/dts/exynos4.dtsi +++ b/arch/arm/boot/dts/exynos4.dtsi | |||
@@ -36,6 +36,12 @@ | |||
36 | i2c5 = &i2c_5; | 36 | i2c5 = &i2c_5; |
37 | i2c6 = &i2c_6; | 37 | i2c6 = &i2c_6; |
38 | i2c7 = &i2c_7; | 38 | i2c7 = &i2c_7; |
39 | csis0 = &csis_0; | ||
40 | csis1 = &csis_1; | ||
41 | fimc0 = &fimc_0; | ||
42 | fimc1 = &fimc_1; | ||
43 | fimc2 = &fimc_2; | ||
44 | fimc3 = &fimc_3; | ||
39 | }; | 45 | }; |
40 | 46 | ||
41 | chipid@10000000 { | 47 | chipid@10000000 { |
@@ -92,6 +98,88 @@ | |||
92 | reg = <0x10010000 0x400>; | 98 | reg = <0x10010000 0x400>; |
93 | }; | 99 | }; |
94 | 100 | ||
101 | camera { | ||
102 | compatible = "samsung,fimc", "simple-bus"; | ||
103 | status = "disabled"; | ||
104 | #address-cells = <1>; | ||
105 | #size-cells = <1>; | ||
106 | ranges; | ||
107 | |||
108 | clock_cam: clock-controller { | ||
109 | #clock-cells = <1>; | ||
110 | }; | ||
111 | |||
112 | fimc_0: fimc@11800000 { | ||
113 | compatible = "samsung,exynos4210-fimc"; | ||
114 | reg = <0x11800000 0x1000>; | ||
115 | interrupts = <0 84 0>; | ||
116 | clocks = <&clock 256>, <&clock 128>; | ||
117 | clock-names = "fimc", "sclk_fimc"; | ||
118 | samsung,power-domain = <&pd_cam>; | ||
119 | samsung,sysreg = <&sys_reg>; | ||
120 | status = "disabled"; | ||
121 | }; | ||
122 | |||
123 | fimc_1: fimc@11810000 { | ||
124 | compatible = "samsung,exynos4210-fimc"; | ||
125 | reg = <0x11810000 0x1000>; | ||
126 | interrupts = <0 85 0>; | ||
127 | clocks = <&clock 257>, <&clock 129>; | ||
128 | clock-names = "fimc", "sclk_fimc"; | ||
129 | samsung,power-domain = <&pd_cam>; | ||
130 | samsung,sysreg = <&sys_reg>; | ||
131 | status = "disabled"; | ||
132 | }; | ||
133 | |||
134 | fimc_2: fimc@11820000 { | ||
135 | compatible = "samsung,exynos4210-fimc"; | ||
136 | reg = <0x11820000 0x1000>; | ||
137 | interrupts = <0 86 0>; | ||
138 | clocks = <&clock 258>, <&clock 130>; | ||
139 | clock-names = "fimc", "sclk_fimc"; | ||
140 | samsung,power-domain = <&pd_cam>; | ||
141 | samsung,sysreg = <&sys_reg>; | ||
142 | status = "disabled"; | ||
143 | }; | ||
144 | |||
145 | fimc_3: fimc@11830000 { | ||
146 | compatible = "samsung,exynos4210-fimc"; | ||
147 | reg = <0x11830000 0x1000>; | ||
148 | interrupts = <0 87 0>; | ||
149 | clocks = <&clock 259>, <&clock 131>; | ||
150 | clock-names = "fimc", "sclk_fimc"; | ||
151 | samsung,power-domain = <&pd_cam>; | ||
152 | samsung,sysreg = <&sys_reg>; | ||
153 | status = "disabled"; | ||
154 | }; | ||
155 | |||
156 | csis_0: csis@11880000 { | ||
157 | compatible = "samsung,exynos4210-csis"; | ||
158 | reg = <0x11880000 0x4000>; | ||
159 | interrupts = <0 78 0>; | ||
160 | clocks = <&clock 260>, <&clock 134>; | ||
161 | clock-names = "csis", "sclk_csis"; | ||
162 | bus-width = <4>; | ||
163 | samsung,power-domain = <&pd_cam>; | ||
164 | status = "disabled"; | ||
165 | #address-cells = <1>; | ||
166 | #size-cells = <0>; | ||
167 | }; | ||
168 | |||
169 | csis_1: csis@11890000 { | ||
170 | compatible = "samsung,exynos4210-csis"; | ||
171 | reg = <0x11890000 0x4000>; | ||
172 | interrupts = <0 80 0>; | ||
173 | clocks = <&clock 261>, <&clock 135>; | ||
174 | clock-names = "csis", "sclk_csis"; | ||
175 | bus-width = <2>; | ||
176 | samsung,power-domain = <&pd_cam>; | ||
177 | status = "disabled"; | ||
178 | #address-cells = <1>; | ||
179 | #size-cells = <0>; | ||
180 | }; | ||
181 | }; | ||
182 | |||
95 | watchdog@10060000 { | 183 | watchdog@10060000 { |
96 | compatible = "samsung,s3c2410-wdt"; | 184 | compatible = "samsung,s3c2410-wdt"; |
97 | reg = <0x10060000 0x100>; | 185 | reg = <0x10060000 0x100>; |
@@ -155,13 +243,31 @@ | |||
155 | status = "disabled"; | 243 | status = "disabled"; |
156 | }; | 244 | }; |
157 | 245 | ||
246 | ehci@12580000 { | ||
247 | compatible = "samsung,exynos4210-ehci"; | ||
248 | reg = <0x12580000 0x100>; | ||
249 | interrupts = <0 70 0>; | ||
250 | clocks = <&clock 304>; | ||
251 | clock-names = "usbhost"; | ||
252 | status = "disabled"; | ||
253 | }; | ||
254 | |||
255 | ohci@12590000 { | ||
256 | compatible = "samsung,exynos4210-ohci"; | ||
257 | reg = <0x12590000 0x100>; | ||
258 | interrupts = <0 70 0>; | ||
259 | clocks = <&clock 304>; | ||
260 | clock-names = "usbhost"; | ||
261 | status = "disabled"; | ||
262 | }; | ||
263 | |||
158 | mfc: codec@13400000 { | 264 | mfc: codec@13400000 { |
159 | compatible = "samsung,mfc-v5"; | 265 | compatible = "samsung,mfc-v5"; |
160 | reg = <0x13400000 0x10000>; | 266 | reg = <0x13400000 0x10000>; |
161 | interrupts = <0 94 0>; | 267 | interrupts = <0 94 0>; |
162 | samsung,power-domain = <&pd_mfc>; | 268 | samsung,power-domain = <&pd_mfc>; |
163 | clocks = <&clock 170>, <&clock 273>; | 269 | clocks = <&clock 273>; |
164 | clock-names = "sclk_mfc", "mfc"; | 270 | clock-names = "mfc"; |
165 | status = "disabled"; | 271 | status = "disabled"; |
166 | }; | 272 | }; |
167 | 273 | ||
@@ -297,8 +403,8 @@ | |||
297 | compatible = "samsung,exynos4210-spi"; | 403 | compatible = "samsung,exynos4210-spi"; |
298 | reg = <0x13920000 0x100>; | 404 | reg = <0x13920000 0x100>; |
299 | interrupts = <0 66 0>; | 405 | interrupts = <0 66 0>; |
300 | tx-dma-channel = <&pdma0 7>; /* preliminary */ | 406 | dmas = <&pdma0 7>, <&pdma0 6>; |
301 | rx-dma-channel = <&pdma0 6>; /* preliminary */ | 407 | dma-names = "tx", "rx"; |
302 | #address-cells = <1>; | 408 | #address-cells = <1>; |
303 | #size-cells = <0>; | 409 | #size-cells = <0>; |
304 | clocks = <&clock 327>, <&clock 159>; | 410 | clocks = <&clock 327>, <&clock 159>; |
@@ -312,8 +418,8 @@ | |||
312 | compatible = "samsung,exynos4210-spi"; | 418 | compatible = "samsung,exynos4210-spi"; |
313 | reg = <0x13930000 0x100>; | 419 | reg = <0x13930000 0x100>; |
314 | interrupts = <0 67 0>; | 420 | interrupts = <0 67 0>; |
315 | tx-dma-channel = <&pdma1 7>; /* preliminary */ | 421 | dmas = <&pdma1 7>, <&pdma1 6>; |
316 | rx-dma-channel = <&pdma1 6>; /* preliminary */ | 422 | dma-names = "tx", "rx"; |
317 | #address-cells = <1>; | 423 | #address-cells = <1>; |
318 | #size-cells = <0>; | 424 | #size-cells = <0>; |
319 | clocks = <&clock 328>, <&clock 160>; | 425 | clocks = <&clock 328>, <&clock 160>; |
@@ -327,8 +433,8 @@ | |||
327 | compatible = "samsung,exynos4210-spi"; | 433 | compatible = "samsung,exynos4210-spi"; |
328 | reg = <0x13940000 0x100>; | 434 | reg = <0x13940000 0x100>; |
329 | interrupts = <0 68 0>; | 435 | interrupts = <0 68 0>; |
330 | tx-dma-channel = <&pdma0 9>; /* preliminary */ | 436 | dmas = <&pdma0 9>, <&pdma0 8>; |
331 | rx-dma-channel = <&pdma0 8>; /* preliminary */ | 437 | dma-names = "tx", "rx"; |
332 | #address-cells = <1>; | 438 | #address-cells = <1>; |
333 | #size-cells = <0>; | 439 | #size-cells = <0>; |
334 | clocks = <&clock 329>, <&clock 161>; | 440 | clocks = <&clock 329>, <&clock 161>; |
diff --git a/arch/arm/boot/dts/exynos4210-pinctrl.dtsi b/arch/arm/boot/dts/exynos4210-pinctrl.dtsi index 553bceae8967..a7c212891674 100644 --- a/arch/arm/boot/dts/exynos4210-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos4210-pinctrl.dtsi | |||
@@ -797,6 +797,29 @@ | |||
797 | samsung,pin-pud = <0>; | 797 | samsung,pin-pud = <0>; |
798 | samsung,pin-drv = <0>; | 798 | samsung,pin-drv = <0>; |
799 | }; | 799 | }; |
800 | |||
801 | cam_port_a_io: cam-port-a-io { | ||
802 | samsung,pins = "gpj0-0", "gpj0-1", "gpj0-2", "gpj0-3", | ||
803 | "gpj0-4", "gpj0-5", "gpj0-6", "gpj0-7", | ||
804 | "gpj1-0", "gpj1-1", "gpj1-2", "gpj1-4"; | ||
805 | samsung,pin-function = <2>; | ||
806 | samsung,pin-pud = <0>; | ||
807 | samsung,pin-drv = <0>; | ||
808 | }; | ||
809 | |||
810 | cam_port_a_clk_active: cam-port-a-clk-active { | ||
811 | samsung,pins = "gpj1-3"; | ||
812 | samsung,pin-function = <2>; | ||
813 | samsung,pin-pud = <0>; | ||
814 | samsung,pin-drv = <3>; | ||
815 | }; | ||
816 | |||
817 | cam_port_a_clk_idle: cam-port-a-clk-idle { | ||
818 | samsung,pins = "gpj1-3"; | ||
819 | samsung,pin-function = <0>; | ||
820 | samsung,pin-pud = <1>; | ||
821 | samsung,pin-drv = <0>; | ||
822 | }; | ||
800 | }; | 823 | }; |
801 | 824 | ||
802 | pinctrl@03860000 { | 825 | pinctrl@03860000 { |
diff --git a/arch/arm/boot/dts/exynos4210-trats.dts b/arch/arm/boot/dts/exynos4210-trats.dts index 94eebffe3044..1c164f234bcc 100644 --- a/arch/arm/boot/dts/exynos4210-trats.dts +++ b/arch/arm/boot/dts/exynos4210-trats.dts | |||
@@ -30,13 +30,62 @@ | |||
30 | bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5"; | 30 | bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5"; |
31 | }; | 31 | }; |
32 | 32 | ||
33 | vemmc_reg: voltage-regulator@0 { | 33 | regulators { |
34 | compatible = "regulator-fixed"; | 34 | compatible = "simple-bus"; |
35 | regulator-name = "VMEM_VDD_2.8V"; | 35 | |
36 | regulator-min-microvolt = <2800000>; | 36 | vemmc_reg: regulator-0 { |
37 | regulator-max-microvolt = <2800000>; | 37 | compatible = "regulator-fixed"; |
38 | gpio = <&gpk0 2 0>; | 38 | regulator-name = "VMEM_VDD_2.8V"; |
39 | enable-active-high; | 39 | regulator-min-microvolt = <2800000>; |
40 | regulator-max-microvolt = <2800000>; | ||
41 | gpio = <&gpk0 2 0>; | ||
42 | enable-active-high; | ||
43 | }; | ||
44 | |||
45 | tsp_reg: regulator-1 { | ||
46 | compatible = "regulator-fixed"; | ||
47 | regulator-name = "TSP_FIXED_VOLTAGES"; | ||
48 | regulator-min-microvolt = <2800000>; | ||
49 | regulator-max-microvolt = <2800000>; | ||
50 | gpio = <&gpl0 3 0>; | ||
51 | enable-active-high; | ||
52 | }; | ||
53 | |||
54 | cam_af_28v_reg: regulator-2 { | ||
55 | compatible = "regulator-fixed"; | ||
56 | regulator-name = "8M_AF_2.8V_EN"; | ||
57 | regulator-min-microvolt = <2800000>; | ||
58 | regulator-max-microvolt = <2800000>; | ||
59 | gpio = <&gpk1 1 0>; | ||
60 | enable-active-high; | ||
61 | }; | ||
62 | |||
63 | cam_io_en_reg: regulator-3 { | ||
64 | compatible = "regulator-fixed"; | ||
65 | regulator-name = "CAM_IO_EN"; | ||
66 | regulator-min-microvolt = <2800000>; | ||
67 | regulator-max-microvolt = <2800000>; | ||
68 | gpio = <&gpe2 1 0>; | ||
69 | enable-active-high; | ||
70 | }; | ||
71 | |||
72 | cam_io_12v_reg: regulator-4 { | ||
73 | compatible = "regulator-fixed"; | ||
74 | regulator-name = "8M_1.2V_EN"; | ||
75 | regulator-min-microvolt = <1200000>; | ||
76 | regulator-max-microvolt = <1200000>; | ||
77 | gpio = <&gpe2 5 0>; | ||
78 | enable-active-high; | ||
79 | }; | ||
80 | |||
81 | vt_core_15v_reg: regulator-5 { | ||
82 | compatible = "regulator-fixed"; | ||
83 | regulator-name = "VT_CORE_1.5V"; | ||
84 | regulator-min-microvolt = <1500000>; | ||
85 | regulator-max-microvolt = <1500000>; | ||
86 | gpio = <&gpe2 2 0>; | ||
87 | enable-active-high; | ||
88 | }; | ||
40 | }; | 89 | }; |
41 | 90 | ||
42 | sdhci_emmc: sdhci@12510000 { | 91 | sdhci_emmc: sdhci@12510000 { |
@@ -97,15 +146,6 @@ | |||
97 | }; | 146 | }; |
98 | }; | 147 | }; |
99 | 148 | ||
100 | tsp_reg: voltage-regulator { | ||
101 | compatible = "regulator-fixed"; | ||
102 | regulator-name = "TSP_FIXED_VOLTAGES"; | ||
103 | regulator-min-microvolt = <2800000>; | ||
104 | regulator-max-microvolt = <2800000>; | ||
105 | gpio = <&gpl0 3 0>; | ||
106 | enable-active-high; | ||
107 | }; | ||
108 | |||
109 | i2c@13890000 { | 149 | i2c@13890000 { |
110 | samsung,i2c-sda-delay = <100>; | 150 | samsung,i2c-sda-delay = <100>; |
111 | samsung,i2c-slave-addr = <0x10>; | 151 | samsung,i2c-slave-addr = <0x10>; |
@@ -218,6 +258,12 @@ | |||
218 | regulator-always-on; | 258 | regulator-always-on; |
219 | }; | 259 | }; |
220 | 260 | ||
261 | vtcam_reg: LDO12 { | ||
262 | regulator-name = "VT_CAM_1.8V"; | ||
263 | regulator-min-microvolt = <1800000>; | ||
264 | regulator-max-microvolt = <1800000>; | ||
265 | }; | ||
266 | |||
221 | vcclcd_reg: LDO13 { | 267 | vcclcd_reg: LDO13 { |
222 | regulator-name = "VCC_3.3V_LCD"; | 268 | regulator-name = "VCC_3.3V_LCD"; |
223 | regulator-min-microvolt = <3300000>; | 269 | regulator-min-microvolt = <3300000>; |
@@ -301,4 +347,26 @@ | |||
301 | clock-frequency = <24000000>; | 347 | clock-frequency = <24000000>; |
302 | }; | 348 | }; |
303 | }; | 349 | }; |
350 | |||
351 | camera { | ||
352 | pinctrl-names = "default"; | ||
353 | pinctrl-0 = <>; | ||
354 | status = "okay"; | ||
355 | |||
356 | fimc_0: fimc@11800000 { | ||
357 | status = "okay"; | ||
358 | }; | ||
359 | |||
360 | fimc_1: fimc@11810000 { | ||
361 | status = "okay"; | ||
362 | }; | ||
363 | |||
364 | fimc_2: fimc@11820000 { | ||
365 | status = "okay"; | ||
366 | }; | ||
367 | |||
368 | fimc_3: fimc@11830000 { | ||
369 | status = "okay"; | ||
370 | }; | ||
371 | }; | ||
304 | }; | 372 | }; |
diff --git a/arch/arm/boot/dts/exynos4210.dtsi b/arch/arm/boot/dts/exynos4210.dtsi index 53e25273ca74..057d6829d319 100644 --- a/arch/arm/boot/dts/exynos4210.dtsi +++ b/arch/arm/boot/dts/exynos4210.dtsi | |||
@@ -125,4 +125,34 @@ | |||
125 | clock-names = "sclk_fimg2d", "fimg2d"; | 125 | clock-names = "sclk_fimg2d", "fimg2d"; |
126 | status = "disabled"; | 126 | status = "disabled"; |
127 | }; | 127 | }; |
128 | |||
129 | camera { | ||
130 | clocks = <&clock 132>, <&clock 133>, <&clock 351>, <&clock 352>; | ||
131 | clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", "pxl_async1"; | ||
132 | |||
133 | fimc_0: fimc@11800000 { | ||
134 | samsung,pix-limits = <4224 8192 1920 4224>; | ||
135 | samsung,mainscaler-ext; | ||
136 | samsung,cam-if; | ||
137 | }; | ||
138 | |||
139 | fimc_1: fimc@11810000 { | ||
140 | samsung,pix-limits = <4224 8192 1920 4224>; | ||
141 | samsung,mainscaler-ext; | ||
142 | samsung,cam-if; | ||
143 | }; | ||
144 | |||
145 | fimc_2: fimc@11820000 { | ||
146 | samsung,pix-limits = <4224 8192 1920 4224>; | ||
147 | samsung,mainscaler-ext; | ||
148 | samsung,lcd-wb; | ||
149 | }; | ||
150 | |||
151 | fimc_3: fimc@11830000 { | ||
152 | samsung,pix-limits = <1920 8192 1366 1920>; | ||
153 | samsung,rotators = <0>; | ||
154 | samsung,mainscaler-ext; | ||
155 | samsung,lcd-wb; | ||
156 | }; | ||
157 | }; | ||
128 | }; | 158 | }; |
diff --git a/arch/arm/boot/dts/exynos4412-origen.dts b/arch/arm/boot/dts/exynos4412-origen.dts index 7993641cb32a..8768b03702e5 100644 --- a/arch/arm/boot/dts/exynos4412-origen.dts +++ b/arch/arm/boot/dts/exynos4412-origen.dts | |||
@@ -27,6 +27,11 @@ | |||
27 | bootargs ="console=ttySAC2,115200"; | 27 | bootargs ="console=ttySAC2,115200"; |
28 | }; | 28 | }; |
29 | 29 | ||
30 | firmware@0203F000 { | ||
31 | compatible = "samsung,secure-firmware"; | ||
32 | reg = <0x0203F000 0x1000>; | ||
33 | }; | ||
34 | |||
30 | mmc_reg: voltage-regulator { | 35 | mmc_reg: voltage-regulator { |
31 | compatible = "regulator-fixed"; | 36 | compatible = "regulator-fixed"; |
32 | regulator-name = "VMEM_VDD_2.8V"; | 37 | regulator-name = "VMEM_VDD_2.8V"; |
diff --git a/arch/arm/boot/dts/exynos4412-trats2.dts b/arch/arm/boot/dts/exynos4412-trats2.dts new file mode 100644 index 000000000000..fb7b9ae5f399 --- /dev/null +++ b/arch/arm/boot/dts/exynos4412-trats2.dts | |||
@@ -0,0 +1,579 @@ | |||
1 | /* | ||
2 | * Samsung's Exynos4412 based Trats 2 board device tree source | ||
3 | * | ||
4 | * Copyright (c) 2013 Samsung Electronics Co., Ltd. | ||
5 | * http://www.samsung.com | ||
6 | * | ||
7 | * Device tree source file for Samsung's Trats 2 board which is based on | ||
8 | * Samsung's Exynos4412 SoC. | ||
9 | * | ||
10 | * This program is free software; you can redistribute it and/or modify | ||
11 | * it under the terms of the GNU General Public License version 2 as | ||
12 | * published by the Free Software Foundation. | ||
13 | */ | ||
14 | |||
15 | /dts-v1/; | ||
16 | #include "exynos4412.dtsi" | ||
17 | |||
18 | / { | ||
19 | model = "Samsung Trats 2 based on Exynos4412"; | ||
20 | compatible = "samsung,trats2", "samsung,exynos4412"; | ||
21 | |||
22 | aliases { | ||
23 | i2c8 = &i2c_ak8975; | ||
24 | }; | ||
25 | |||
26 | memory { | ||
27 | reg = <0x40000000 0x40000000>; | ||
28 | }; | ||
29 | |||
30 | chosen { | ||
31 | bootargs = "console=ttySAC2,115200N8 root=/dev/mmcblk0p5 rootwait earlyprintk panic=5"; | ||
32 | }; | ||
33 | |||
34 | firmware@0204F000 { | ||
35 | compatible = "samsung,secure-firmware"; | ||
36 | reg = <0x0204F000 0x1000>; | ||
37 | }; | ||
38 | |||
39 | fixed-rate-clocks { | ||
40 | xxti { | ||
41 | compatible = "samsung,clock-xxti", "fixed-clock"; | ||
42 | clock-frequency = <0>; | ||
43 | }; | ||
44 | |||
45 | xusbxti { | ||
46 | compatible = "samsung,clock-xusbxti", "fixed-clock"; | ||
47 | clock-frequency = <24000000>; | ||
48 | }; | ||
49 | }; | ||
50 | |||
51 | regulators { | ||
52 | compatible = "simple-bus"; | ||
53 | #address-cells = <1>; | ||
54 | #size-cells = <0>; | ||
55 | |||
56 | vemmc_reg: regulator-0 { | ||
57 | compatible = "regulator-fixed"; | ||
58 | regulator-name = "VMEM_VDD_2.8V"; | ||
59 | regulator-min-microvolt = <2800000>; | ||
60 | regulator-max-microvolt = <2800000>; | ||
61 | gpio = <&gpk0 2 0>; | ||
62 | enable-active-high; | ||
63 | }; | ||
64 | |||
65 | cam_io_reg: voltage-regulator-1 { | ||
66 | compatible = "regulator-fixed"; | ||
67 | regulator-name = "CAM_SENSOR_A"; | ||
68 | regulator-min-microvolt = <2800000>; | ||
69 | regulator-max-microvolt = <2800000>; | ||
70 | gpio = <&gpm0 2 0>; | ||
71 | enable-active-high; | ||
72 | }; | ||
73 | |||
74 | /* More to come */ | ||
75 | }; | ||
76 | |||
77 | gpio-keys { | ||
78 | compatible = "gpio-keys"; | ||
79 | |||
80 | key-down { | ||
81 | interrupt-parent = <&gpj1>; | ||
82 | interrupts = <2 0>; | ||
83 | gpios = <&gpj1 2 1>; | ||
84 | linux,code = <114>; | ||
85 | label = "volume down"; | ||
86 | debounce-interval = <10>; | ||
87 | }; | ||
88 | |||
89 | key-up { | ||
90 | interrupt-parent = <&gpj1>; | ||
91 | interrupts = <1 0>; | ||
92 | gpios = <&gpj1 1 1>; | ||
93 | linux,code = <115>; | ||
94 | label = "volume up"; | ||
95 | debounce-interval = <10>; | ||
96 | }; | ||
97 | |||
98 | key-power { | ||
99 | interrupt-parent = <&gpx2>; | ||
100 | interrupts = <7 0>; | ||
101 | gpios = <&gpx2 7 1>; | ||
102 | linux,code = <116>; | ||
103 | label = "power"; | ||
104 | debounce-interval = <10>; | ||
105 | gpio-key,wakeup; | ||
106 | }; | ||
107 | }; | ||
108 | |||
109 | i2c@13890000 { | ||
110 | samsung,i2c-sda-delay = <100>; | ||
111 | samsung,i2c-slave-addr = <0x10>; | ||
112 | samsung,i2c-max-bus-freq = <400000>; | ||
113 | pinctrl-0 = <&i2c3_bus>; | ||
114 | pinctrl-names = "default"; | ||
115 | status = "okay"; | ||
116 | |||
117 | mms114-touchscreen@48 { | ||
118 | compatible = "melfas,mms114"; | ||
119 | reg = <0x48>; | ||
120 | interrupt-parent = <&gpm2>; | ||
121 | interrupts = <3 2>; | ||
122 | x-size = <720>; | ||
123 | y-size = <1280>; | ||
124 | avdd-supply = <&ldo23_reg>; | ||
125 | vdd-supply = <&ldo24_reg>; | ||
126 | }; | ||
127 | }; | ||
128 | |||
129 | i2c@138D0000 { | ||
130 | samsung,i2c-sda-delay = <100>; | ||
131 | samsung,i2c-slave-addr = <0x10>; | ||
132 | samsung,i2c-max-bus-freq = <100000>; | ||
133 | pinctrl-0 = <&i2c7_bus>; | ||
134 | pinctrl-names = "default"; | ||
135 | status = "okay"; | ||
136 | |||
137 | max77686_pmic@09 { | ||
138 | compatible = "maxim,max77686"; | ||
139 | interrupt-parent = <&gpx0>; | ||
140 | interrupts = <7 0>; | ||
141 | reg = <0x09>; | ||
142 | |||
143 | voltage-regulators { | ||
144 | ldo1_reg: ldo1 { | ||
145 | regulator-compatible = "LDO1"; | ||
146 | regulator-name = "VALIVE_1.0V_AP"; | ||
147 | regulator-min-microvolt = <1000000>; | ||
148 | regulator-max-microvolt = <1000000>; | ||
149 | regulator-always-on; | ||
150 | regulator-mem-on; | ||
151 | }; | ||
152 | |||
153 | ldo2_reg: ldo2 { | ||
154 | regulator-compatible = "LDO2"; | ||
155 | regulator-name = "VM1M2_1.2V_AP"; | ||
156 | regulator-min-microvolt = <1200000>; | ||
157 | regulator-max-microvolt = <1200000>; | ||
158 | regulator-always-on; | ||
159 | regulator-mem-on; | ||
160 | }; | ||
161 | |||
162 | ldo3_reg: ldo3 { | ||
163 | regulator-compatible = "LDO3"; | ||
164 | regulator-name = "VCC_1.8V_AP"; | ||
165 | regulator-min-microvolt = <1800000>; | ||
166 | regulator-max-microvolt = <1800000>; | ||
167 | regulator-always-on; | ||
168 | regulator-mem-on; | ||
169 | }; | ||
170 | |||
171 | ldo4_reg: ldo4 { | ||
172 | regulator-compatible = "LDO4"; | ||
173 | regulator-name = "VCC_2.8V_AP"; | ||
174 | regulator-min-microvolt = <2800000>; | ||
175 | regulator-max-microvolt = <2800000>; | ||
176 | regulator-always-on; | ||
177 | regulator-mem-on; | ||
178 | }; | ||
179 | |||
180 | ldo5_reg: ldo5 { | ||
181 | regulator-compatible = "LDO5"; | ||
182 | regulator-name = "VCC_1.8V_IO"; | ||
183 | regulator-min-microvolt = <1800000>; | ||
184 | regulator-max-microvolt = <1800000>; | ||
185 | regulator-always-on; | ||
186 | regulator-mem-on; | ||
187 | }; | ||
188 | |||
189 | ldo6_reg: ldo6 { | ||
190 | regulator-compatible = "LDO6"; | ||
191 | regulator-name = "VMPLL_1.0V_AP"; | ||
192 | regulator-min-microvolt = <1000000>; | ||
193 | regulator-max-microvolt = <1000000>; | ||
194 | regulator-always-on; | ||
195 | regulator-mem-on; | ||
196 | }; | ||
197 | |||
198 | ldo7_reg: ldo7 { | ||
199 | regulator-compatible = "LDO7"; | ||
200 | regulator-name = "VPLL_1.0V_AP"; | ||
201 | regulator-min-microvolt = <1000000>; | ||
202 | regulator-max-microvolt = <1000000>; | ||
203 | regulator-always-on; | ||
204 | regulator-mem-on; | ||
205 | }; | ||
206 | |||
207 | ldo8_reg: ldo8 { | ||
208 | regulator-compatible = "LDO8"; | ||
209 | regulator-name = "VMIPI_1.0V"; | ||
210 | regulator-min-microvolt = <1000000>; | ||
211 | regulator-max-microvolt = <1000000>; | ||
212 | regulator-mem-off; | ||
213 | }; | ||
214 | |||
215 | ldo9_reg: ldo9 { | ||
216 | regulator-compatible = "LDO9"; | ||
217 | regulator-name = "CAM_ISP_MIPI_1.2V"; | ||
218 | regulator-min-microvolt = <1200000>; | ||
219 | regulator-max-microvolt = <1200000>; | ||
220 | regulator-mem-idle; | ||
221 | }; | ||
222 | |||
223 | ldo10_reg: ldo10 { | ||
224 | regulator-compatible = "LDO10"; | ||
225 | regulator-name = "VMIPI_1.8V"; | ||
226 | regulator-min-microvolt = <1800000>; | ||
227 | regulator-max-microvolt = <1800000>; | ||
228 | regulator-mem-off; | ||
229 | }; | ||
230 | |||
231 | ldo11_reg: ldo11 { | ||
232 | regulator-compatible = "LDO11"; | ||
233 | regulator-name = "VABB1_1.95V"; | ||
234 | regulator-min-microvolt = <1950000>; | ||
235 | regulator-max-microvolt = <1950000>; | ||
236 | regulator-always-on; | ||
237 | regulator-mem-off; | ||
238 | }; | ||
239 | |||
240 | ldo12_reg: ldo12 { | ||
241 | regulator-compatible = "LDO12"; | ||
242 | regulator-name = "VUOTG_3.0V"; | ||
243 | regulator-min-microvolt = <3000000>; | ||
244 | regulator-max-microvolt = <3000000>; | ||
245 | regulator-mem-off; | ||
246 | }; | ||
247 | |||
248 | ldo13_reg: ldo13 { | ||
249 | regulator-compatible = "LDO13"; | ||
250 | regulator-name = "NFC_AVDD_1.8V"; | ||
251 | regulator-min-microvolt = <1800000>; | ||
252 | regulator-max-microvolt = <1800000>; | ||
253 | regulator-mem-idle; | ||
254 | }; | ||
255 | |||
256 | ldo14_reg: ldo14 { | ||
257 | regulator-compatible = "LDO14"; | ||
258 | regulator-name = "VABB2_1.95V"; | ||
259 | regulator-min-microvolt = <1950000>; | ||
260 | regulator-max-microvolt = <1950000>; | ||
261 | regulator-always-on; | ||
262 | regulator-mem-off; | ||
263 | }; | ||
264 | |||
265 | ldo15_reg: ldo15 { | ||
266 | regulator-compatible = "LDO15"; | ||
267 | regulator-name = "VHSIC_1.0V"; | ||
268 | regulator-min-microvolt = <1000000>; | ||
269 | regulator-max-microvolt = <1000000>; | ||
270 | regulator-mem-off; | ||
271 | }; | ||
272 | |||
273 | ldo16_reg: ldo16 { | ||
274 | regulator-compatible = "LDO16"; | ||
275 | regulator-name = "VHSIC_1.8V"; | ||
276 | regulator-min-microvolt = <1800000>; | ||
277 | regulator-max-microvolt = <1800000>; | ||
278 | regulator-mem-off; | ||
279 | }; | ||
280 | |||
281 | ldo17_reg: ldo17 { | ||
282 | regulator-compatible = "LDO17"; | ||
283 | regulator-name = "CAM_SENSOR_CORE_1.2V"; | ||
284 | regulator-min-microvolt = <1200000>; | ||
285 | regulator-max-microvolt = <1200000>; | ||
286 | regulator-mem-idle; | ||
287 | }; | ||
288 | |||
289 | ldo18_reg: ldo18 { | ||
290 | regulator-compatible = "LDO18"; | ||
291 | regulator-name = "CAM_ISP_SEN_IO_1.8V"; | ||
292 | regulator-min-microvolt = <1800000>; | ||
293 | regulator-max-microvolt = <1800000>; | ||
294 | regulator-mem-idle; | ||
295 | }; | ||
296 | |||
297 | ldo19_reg: ldo19 { | ||
298 | regulator-compatible = "LDO19"; | ||
299 | regulator-name = "VT_CAM_1.8V"; | ||
300 | regulator-min-microvolt = <1800000>; | ||
301 | regulator-max-microvolt = <1800000>; | ||
302 | regulator-mem-idle; | ||
303 | }; | ||
304 | |||
305 | ldo20_reg: ldo20 { | ||
306 | regulator-compatible = "LDO20"; | ||
307 | regulator-name = "VDDQ_PRE_1.8V"; | ||
308 | regulator-min-microvolt = <1800000>; | ||
309 | regulator-max-microvolt = <1800000>; | ||
310 | regulator-mem-idle; | ||
311 | }; | ||
312 | |||
313 | ldo21_reg: ldo21 { | ||
314 | regulator-compatible = "LDO21"; | ||
315 | regulator-name = "VTF_2.8V"; | ||
316 | regulator-min-microvolt = <2800000>; | ||
317 | regulator-max-microvolt = <2800000>; | ||
318 | regulator-mem-idle; | ||
319 | }; | ||
320 | |||
321 | ldo22_reg: ldo22 { | ||
322 | regulator-compatible = "LDO22"; | ||
323 | regulator-name = "VMEM_VDD_2.8V"; | ||
324 | regulator-min-microvolt = <2800000>; | ||
325 | regulator-max-microvolt = <2800000>; | ||
326 | regulator-always-on; | ||
327 | regulator-mem-off; | ||
328 | }; | ||
329 | |||
330 | ldo23_reg: ldo23 { | ||
331 | regulator-compatible = "LDO23"; | ||
332 | regulator-name = "TSP_AVDD_3.3V"; | ||
333 | regulator-min-microvolt = <3300000>; | ||
334 | regulator-max-microvolt = <3300000>; | ||
335 | regulator-mem-idle; | ||
336 | }; | ||
337 | |||
338 | ldo24_reg: ldo24 { | ||
339 | regulator-compatible = "LDO24"; | ||
340 | regulator-name = "TSP_VDD_1.8V"; | ||
341 | regulator-min-microvolt = <1800000>; | ||
342 | regulator-max-microvolt = <1800000>; | ||
343 | regulator-mem-idle; | ||
344 | }; | ||
345 | |||
346 | ldo25_reg: ldo25 { | ||
347 | regulator-compatible = "LDO25"; | ||
348 | regulator-name = "LCD_VCC_3.3V"; | ||
349 | regulator-min-microvolt = <2800000>; | ||
350 | regulator-max-microvolt = <2800000>; | ||
351 | regulator-mem-idle; | ||
352 | }; | ||
353 | |||
354 | ldo26_reg: ldo26 { | ||
355 | regulator-compatible = "LDO26"; | ||
356 | regulator-name = "MOTOR_VCC_3.0V"; | ||
357 | regulator-min-microvolt = <3000000>; | ||
358 | regulator-max-microvolt = <3000000>; | ||
359 | regulator-mem-idle; | ||
360 | }; | ||
361 | |||
362 | buck1_reg: buck1 { | ||
363 | regulator-compatible = "BUCK1"; | ||
364 | regulator-name = "vdd_mif"; | ||
365 | regulator-min-microvolt = <850000>; | ||
366 | regulator-max-microvolt = <1100000>; | ||
367 | regulator-always-on; | ||
368 | regulator-boot-on; | ||
369 | regulator-mem-off; | ||
370 | }; | ||
371 | |||
372 | buck2_reg: buck2 { | ||
373 | regulator-compatible = "BUCK2"; | ||
374 | regulator-name = "vdd_arm"; | ||
375 | regulator-min-microvolt = <850000>; | ||
376 | regulator-max-microvolt = <1500000>; | ||
377 | regulator-always-on; | ||
378 | regulator-boot-on; | ||
379 | regulator-mem-off; | ||
380 | }; | ||
381 | |||
382 | buck3_reg: buck3 { | ||
383 | regulator-compatible = "BUCK3"; | ||
384 | regulator-name = "vdd_int"; | ||
385 | regulator-min-microvolt = <850000>; | ||
386 | regulator-max-microvolt = <1150000>; | ||
387 | regulator-always-on; | ||
388 | regulator-boot-on; | ||
389 | regulator-mem-off; | ||
390 | }; | ||
391 | |||
392 | buck4_reg: buck4 { | ||
393 | regulator-compatible = "BUCK4"; | ||
394 | regulator-name = "vdd_g3d"; | ||
395 | regulator-min-microvolt = <850000>; | ||
396 | regulator-max-microvolt = <1150000>; | ||
397 | regulator-boot-on; | ||
398 | regulator-mem-off; | ||
399 | }; | ||
400 | |||
401 | buck5_reg: buck5 { | ||
402 | regulator-compatible = "BUCK5"; | ||
403 | regulator-name = "VMEM_1.2V_AP"; | ||
404 | regulator-min-microvolt = <1200000>; | ||
405 | regulator-max-microvolt = <1200000>; | ||
406 | regulator-always-on; | ||
407 | }; | ||
408 | |||
409 | buck6_reg: buck6 { | ||
410 | regulator-compatible = "BUCK6"; | ||
411 | regulator-name = "VCC_SUB_1.35V"; | ||
412 | regulator-min-microvolt = <1350000>; | ||
413 | regulator-max-microvolt = <1350000>; | ||
414 | regulator-always-on; | ||
415 | }; | ||
416 | |||
417 | buck7_reg: buck7 { | ||
418 | regulator-compatible = "BUCK7"; | ||
419 | regulator-name = "VCC_SUB_2.0V"; | ||
420 | regulator-min-microvolt = <2000000>; | ||
421 | regulator-max-microvolt = <2000000>; | ||
422 | regulator-always-on; | ||
423 | }; | ||
424 | |||
425 | buck8_reg: buck8 { | ||
426 | regulator-compatible = "BUCK8"; | ||
427 | regulator-name = "VMEM_VDDF_3.0V"; | ||
428 | regulator-min-microvolt = <2850000>; | ||
429 | regulator-max-microvolt = <2850000>; | ||
430 | regulator-always-on; | ||
431 | regulator-mem-off; | ||
432 | }; | ||
433 | |||
434 | buck9_reg: buck9 { | ||
435 | regulator-compatible = "BUCK9"; | ||
436 | regulator-name = "CAM_ISP_CORE_1.2V"; | ||
437 | regulator-min-microvolt = <1000000>; | ||
438 | regulator-max-microvolt = <1200000>; | ||
439 | regulator-mem-off; | ||
440 | }; | ||
441 | }; | ||
442 | }; | ||
443 | }; | ||
444 | |||
445 | sdhci@12510000 { | ||
446 | bus-width = <8>; | ||
447 | non-removable; | ||
448 | pinctrl-0 = <&sd0_clk &sd0_cmd &sd0_bus8>; | ||
449 | pinctrl-names = "default"; | ||
450 | vmmc-supply = <&vemmc_reg>; | ||
451 | status = "okay"; | ||
452 | }; | ||
453 | |||
454 | serial@13800000 { | ||
455 | status = "okay"; | ||
456 | }; | ||
457 | |||
458 | serial@13810000 { | ||
459 | status = "okay"; | ||
460 | }; | ||
461 | |||
462 | serial@13820000 { | ||
463 | status = "okay"; | ||
464 | }; | ||
465 | |||
466 | serial@13830000 { | ||
467 | status = "okay"; | ||
468 | }; | ||
469 | |||
470 | i2c_ak8975: i2c-gpio-0 { | ||
471 | compatible = "i2c-gpio"; | ||
472 | gpios = <&gpy2 4 0>, <&gpy2 5 0>; | ||
473 | i2c-gpio,delay-us = <2>; | ||
474 | #address-cells = <1>; | ||
475 | #size-cells = <0>; | ||
476 | status = "okay"; | ||
477 | |||
478 | ak8975@0c { | ||
479 | compatible = "ak,ak8975"; | ||
480 | reg = <0x0c>; | ||
481 | gpios = <&gpj0 7 0>; | ||
482 | }; | ||
483 | }; | ||
484 | |||
485 | spi_1: spi@13930000 { | ||
486 | pinctrl-names = "default"; | ||
487 | pinctrl-0 = <&spi1_bus>; | ||
488 | status = "okay"; | ||
489 | |||
490 | s5c73m3_spi: s5c73m3 { | ||
491 | compatible = "samsung,s5c73m3"; | ||
492 | spi-max-frequency = <50000000>; | ||
493 | reg = <0>; | ||
494 | controller-data { | ||
495 | cs-gpio = <&gpb 5 0>; | ||
496 | samsung,spi-feedback-delay = <2>; | ||
497 | }; | ||
498 | }; | ||
499 | }; | ||
500 | |||
501 | camera { | ||
502 | pinctrl-0 = <&cam_port_b_clk_active>; | ||
503 | pinctrl-names = "default"; | ||
504 | status = "okay"; | ||
505 | |||
506 | fimc_0: fimc@11800000 { | ||
507 | status = "okay"; | ||
508 | }; | ||
509 | |||
510 | fimc_1: fimc@11810000 { | ||
511 | status = "okay"; | ||
512 | }; | ||
513 | |||
514 | fimc_2: fimc@11820000 { | ||
515 | status = "okay"; | ||
516 | }; | ||
517 | |||
518 | fimc_3: fimc@11830000 { | ||
519 | status = "okay"; | ||
520 | }; | ||
521 | |||
522 | csis_1: csis@11890000 { | ||
523 | vddcore-supply = <&ldo8_reg>; | ||
524 | vddio-supply = <&ldo10_reg>; | ||
525 | clock-frequency = <160000000>; | ||
526 | status = "okay"; | ||
527 | |||
528 | /* Camera D (4) MIPI CSI-2 (CSIS1) */ | ||
529 | port@4 { | ||
530 | reg = <4>; | ||
531 | csis1_ep: endpoint { | ||
532 | remote-endpoint = <&is_s5k6a3_ep>; | ||
533 | data-lanes = <1>; | ||
534 | samsung,csis-hs-settle = <18>; | ||
535 | samsung,csis-wclk; | ||
536 | }; | ||
537 | }; | ||
538 | }; | ||
539 | |||
540 | fimc_lite_0: fimc-lite@12390000 { | ||
541 | status = "okay"; | ||
542 | }; | ||
543 | |||
544 | fimc_lite_1: fimc-lite@123A0000 { | ||
545 | status = "okay"; | ||
546 | }; | ||
547 | |||
548 | fimc-is@12000000 { | ||
549 | pinctrl-0 = <&fimc_is_uart>; | ||
550 | pinctrl-names = "default"; | ||
551 | status = "okay"; | ||
552 | |||
553 | i2c1_isp: i2c-isp@12140000 { | ||
554 | pinctrl-0 = <&fimc_is_i2c1>; | ||
555 | pinctrl-names = "default"; | ||
556 | |||
557 | s5k6a3@10 { | ||
558 | compatible = "samsung,s5k6a3"; | ||
559 | reg = <0x10>; | ||
560 | svdda-supply = <&cam_io_reg>; | ||
561 | svddio-supply = <&ldo19_reg>; | ||
562 | clock-frequency = <24000000>; | ||
563 | /* CAM_B_CLKOUT */ | ||
564 | clocks = <&clock_cam 1>; | ||
565 | clock-names = "mclk"; | ||
566 | samsung,camclk-out = <1>; | ||
567 | gpios = <&gpm1 6 0>; | ||
568 | |||
569 | port { | ||
570 | is_s5k6a3_ep: endpoint { | ||
571 | remote-endpoint = <&csis1_ep>; | ||
572 | data-lanes = <1>; | ||
573 | }; | ||
574 | }; | ||
575 | }; | ||
576 | }; | ||
577 | }; | ||
578 | }; | ||
579 | }; | ||
diff --git a/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi b/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi index 704290f7c5c0..99b26df8dbc7 100644 --- a/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos4x12-pinctrl.dtsi | |||
@@ -401,13 +401,26 @@ | |||
401 | samsung,pin-drv = <0>; | 401 | samsung,pin-drv = <0>; |
402 | }; | 402 | }; |
403 | 403 | ||
404 | cam_port_a: cam-port-a { | 404 | cam_port_a_io: cam-port-a-io { |
405 | samsung,pins = "gpj0-0", "gpj0-1", "gpj0-2", "gpj0-3", | 405 | samsung,pins = "gpj0-0", "gpj0-1", "gpj0-2", "gpj0-3", |
406 | "gpj0-4", "gpj0-5", "gpj0-6", "gpj0-7", | 406 | "gpj0-4", "gpj0-5", "gpj0-6", "gpj0-7", |
407 | "gpj1-0", "gpj1-1", "gpj1-2", "gpj1-3", | 407 | "gpj1-0", "gpj1-1", "gpj1-2", "gpj1-4"; |
408 | "gpj1-4"; | ||
409 | samsung,pin-function = <2>; | 408 | samsung,pin-function = <2>; |
410 | samsung,pin-pud = <3>; | 409 | samsung,pin-pud = <0>; |
410 | samsung,pin-drv = <0>; | ||
411 | }; | ||
412 | |||
413 | cam_port_a_clk_active: cam-port-a-clk-active { | ||
414 | samsung,pins = "gpj1-3"; | ||
415 | samsung,pin-function = <2>; | ||
416 | samsung,pin-pud = <0>; | ||
417 | samsung,pin-drv = <3>; | ||
418 | }; | ||
419 | |||
420 | cam_port_a_clk_idle: cam-port-a-clk-idle { | ||
421 | samsung,pins = "gpj1-3"; | ||
422 | samsung,pin-function = <0>; | ||
423 | samsung,pin-pud = <1>; | ||
411 | samsung,pin-drv = <0>; | 424 | samsung,pin-drv = <0>; |
412 | }; | 425 | }; |
413 | }; | 426 | }; |
@@ -778,16 +791,29 @@ | |||
778 | samsung,pin-drv = <3>; | 791 | samsung,pin-drv = <3>; |
779 | }; | 792 | }; |
780 | 793 | ||
781 | cam_port_b: cam-port-b { | 794 | cam_port_b_io: cam-port-b-io { |
782 | samsung,pins = "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3", | 795 | samsung,pins = "gpm0-0", "gpm0-1", "gpm0-2", "gpm0-3", |
783 | "gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7", | 796 | "gpm0-4", "gpm0-5", "gpm0-6", "gpm0-7", |
784 | "gpm1-0", "gpm1-1", "gpm2-0", "gpm2-1", | 797 | "gpm1-0", "gpm1-1", "gpm2-0", "gpm2-1"; |
785 | "gpm2-2"; | ||
786 | samsung,pin-function = <3>; | 798 | samsung,pin-function = <3>; |
787 | samsung,pin-pud = <3>; | 799 | samsung,pin-pud = <3>; |
788 | samsung,pin-drv = <0>; | 800 | samsung,pin-drv = <0>; |
789 | }; | 801 | }; |
790 | 802 | ||
803 | cam_port_b_clk_active: cam-port-b-clk-active { | ||
804 | samsung,pins = "gpm2-2"; | ||
805 | samsung,pin-function = <3>; | ||
806 | samsung,pin-pud = <0>; | ||
807 | samsung,pin-drv = <3>; | ||
808 | }; | ||
809 | |||
810 | cam_port_b_clk_idle: cam-port-b-clk-idle { | ||
811 | samsung,pins = "gpm2-2"; | ||
812 | samsung,pin-function = <0>; | ||
813 | samsung,pin-pud = <1>; | ||
814 | samsung,pin-drv = <0>; | ||
815 | }; | ||
816 | |||
791 | eint0: ext-int0 { | 817 | eint0: ext-int0 { |
792 | samsung,pins = "gpx0-0"; | 818 | samsung,pins = "gpx0-0"; |
793 | samsung,pin-function = <0xf>; | 819 | samsung,pin-function = <0xf>; |
@@ -822,6 +848,27 @@ | |||
822 | samsung,pin-pud = <0>; | 848 | samsung,pin-pud = <0>; |
823 | samsung,pin-drv = <0>; | 849 | samsung,pin-drv = <0>; |
824 | }; | 850 | }; |
851 | |||
852 | fimc_is_i2c0: fimc-is-i2c0 { | ||
853 | samsung,pins = "gpm4-0", "gpm4-1"; | ||
854 | samsung,pin-function = <2>; | ||
855 | samsung,pin-pud = <0>; | ||
856 | samsung,pin-drv = <0>; | ||
857 | }; | ||
858 | |||
859 | fimc_is_i2c1: fimc-is-i2c1 { | ||
860 | samsung,pins = "gpm4-2", "gpm4-3"; | ||
861 | samsung,pin-function = <2>; | ||
862 | samsung,pin-pud = <0>; | ||
863 | samsung,pin-drv = <0>; | ||
864 | }; | ||
865 | |||
866 | fimc_is_uart: fimc-is-uart { | ||
867 | samsung,pins = "gpm3-5", "gpm3-7"; | ||
868 | samsung,pin-function = <3>; | ||
869 | samsung,pin-pud = <0>; | ||
870 | samsung,pin-drv = <0>; | ||
871 | }; | ||
825 | }; | 872 | }; |
826 | 873 | ||
827 | pinctrl@03860000 { | 874 | pinctrl@03860000 { |
diff --git a/arch/arm/boot/dts/exynos4x12.dtsi b/arch/arm/boot/dts/exynos4x12.dtsi index 3aa2f060ba61..ad531fe6ab95 100644 --- a/arch/arm/boot/dts/exynos4x12.dtsi +++ b/arch/arm/boot/dts/exynos4x12.dtsi | |||
@@ -26,6 +26,13 @@ | |||
26 | pinctrl1 = &pinctrl_1; | 26 | pinctrl1 = &pinctrl_1; |
27 | pinctrl2 = &pinctrl_2; | 27 | pinctrl2 = &pinctrl_2; |
28 | pinctrl3 = &pinctrl_3; | 28 | pinctrl3 = &pinctrl_3; |
29 | fimc-lite0 = &fimc_lite_0; | ||
30 | fimc-lite1 = &fimc_lite_1; | ||
31 | }; | ||
32 | |||
33 | pd_isp: isp-power-domain@10023CA0 { | ||
34 | compatible = "samsung,exynos4210-pd"; | ||
35 | reg = <0x10023CA0 0x20>; | ||
29 | }; | 36 | }; |
30 | 37 | ||
31 | clock: clock-controller@10030000 { | 38 | clock: clock-controller@10030000 { |
@@ -73,4 +80,100 @@ | |||
73 | clock-names = "sclk_fimg2d", "fimg2d"; | 80 | clock-names = "sclk_fimg2d", "fimg2d"; |
74 | status = "disabled"; | 81 | status = "disabled"; |
75 | }; | 82 | }; |
83 | |||
84 | camera { | ||
85 | clocks = <&clock 132>, <&clock 133>, <&clock 351>, <&clock 352>; | ||
86 | clock-names = "sclk_cam0", "sclk_cam1", "pxl_async0", "pxl_async1"; | ||
87 | |||
88 | fimc_0: fimc@11800000 { | ||
89 | compatible = "samsung,exynos4212-fimc"; | ||
90 | samsung,pix-limits = <4224 8192 1920 4224>; | ||
91 | samsung,mainscaler-ext; | ||
92 | samsung,isp-wb; | ||
93 | samsung,cam-if; | ||
94 | }; | ||
95 | |||
96 | fimc_1: fimc@11810000 { | ||
97 | compatible = "samsung,exynos4212-fimc"; | ||
98 | samsung,pix-limits = <4224 8192 1920 4224>; | ||
99 | samsung,mainscaler-ext; | ||
100 | samsung,isp-wb; | ||
101 | samsung,cam-if; | ||
102 | }; | ||
103 | |||
104 | fimc_2: fimc@11820000 { | ||
105 | compatible = "samsung,exynos4212-fimc"; | ||
106 | samsung,pix-limits = <4224 8192 1920 4224>; | ||
107 | samsung,mainscaler-ext; | ||
108 | samsung,isp-wb; | ||
109 | samsung,lcd-wb; | ||
110 | samsung,cam-if; | ||
111 | }; | ||
112 | |||
113 | fimc_3: fimc@11830000 { | ||
114 | compatible = "samsung,exynos4212-fimc"; | ||
115 | samsung,pix-limits = <1920 8192 1366 1920>; | ||
116 | samsung,rotators = <0>; | ||
117 | samsung,mainscaler-ext; | ||
118 | samsung,isp-wb; | ||
119 | samsung,lcd-wb; | ||
120 | }; | ||
121 | |||
122 | fimc_lite_0: fimc-lite@12390000 { | ||
123 | compatible = "samsung,exynos4212-fimc-lite"; | ||
124 | reg = <0x12390000 0x1000>; | ||
125 | interrupts = <0 105 0>; | ||
126 | samsung,power-domain = <&pd_isp>; | ||
127 | clocks = <&clock 353>; | ||
128 | clock-names = "flite"; | ||
129 | status = "disabled"; | ||
130 | }; | ||
131 | |||
132 | fimc_lite_1: fimc-lite@123A0000 { | ||
133 | compatible = "samsung,exynos4212-fimc-lite"; | ||
134 | reg = <0x123A0000 0x1000>; | ||
135 | interrupts = <0 106 0>; | ||
136 | samsung,power-domain = <&pd_isp>; | ||
137 | clocks = <&clock 354>; | ||
138 | clock-names = "flite"; | ||
139 | status = "disabled"; | ||
140 | }; | ||
141 | |||
142 | fimc_is: fimc-is@12000000 { | ||
143 | compatible = "samsung,exynos4212-fimc-is", "simple-bus"; | ||
144 | reg = <0x12000000 0x260000>; | ||
145 | interrupts = <0 90 0>, <0 95 0>; | ||
146 | samsung,power-domain = <&pd_isp>; | ||
147 | clocks = <&clock 353>, <&clock 354>, <&clock 355>, | ||
148 | <&clock 356>, <&clock 17>, <&clock 357>, | ||
149 | <&clock 358>, <&clock 359>, <&clock 360>, | ||
150 | <&clock 450>,<&clock 451>, <&clock 452>, | ||
151 | <&clock 453>, <&clock 176>, <&clock 13>, | ||
152 | <&clock 454>, <&clock 395>, <&clock 455>; | ||
153 | clock-names = "lite0", "lite1", "ppmuispx", | ||
154 | "ppmuispmx", "mpll", "isp", | ||
155 | "drc", "fd", "mcuisp", | ||
156 | "ispdiv0", "ispdiv1", "mcuispdiv0", | ||
157 | "mcuispdiv1", "uart", "aclk200", | ||
158 | "div_aclk200", "aclk400mcuisp", | ||
159 | "div_aclk400mcuisp"; | ||
160 | #address-cells = <1>; | ||
161 | #size-cells = <1>; | ||
162 | ranges; | ||
163 | status = "disabled"; | ||
164 | |||
165 | pmu { | ||
166 | reg = <0x10020000 0x3000>; | ||
167 | }; | ||
168 | |||
169 | i2c1_isp: i2c-isp@12140000 { | ||
170 | compatible = "samsung,exynos4212-i2c-isp"; | ||
171 | reg = <0x12140000 0x100>; | ||
172 | clocks = <&clock 370>; | ||
173 | clock-names = "i2c_isp"; | ||
174 | #address-cells = <1>; | ||
175 | #size-cells = <0>; | ||
176 | }; | ||
177 | }; | ||
178 | }; | ||
76 | }; | 179 | }; |
diff --git a/arch/arm/boot/dts/exynos5.dtsi b/arch/arm/boot/dts/exynos5.dtsi index f65e124c04a6..6afa57d2fecc 100644 --- a/arch/arm/boot/dts/exynos5.dtsi +++ b/arch/arm/boot/dts/exynos5.dtsi | |||
@@ -108,4 +108,23 @@ | |||
108 | interrupts = <0 42 0>; | 108 | interrupts = <0 42 0>; |
109 | status = "disabled"; | 109 | status = "disabled"; |
110 | }; | 110 | }; |
111 | |||
112 | fimd@14400000 { | ||
113 | compatible = "samsung,exynos5250-fimd"; | ||
114 | interrupt-parent = <&combiner>; | ||
115 | reg = <0x14400000 0x40000>; | ||
116 | interrupt-names = "fifo", "vsync", "lcd_sys"; | ||
117 | interrupts = <18 4>, <18 5>, <18 6>; | ||
118 | status = "disabled"; | ||
119 | }; | ||
120 | |||
121 | dp-controller@145B0000 { | ||
122 | compatible = "samsung,exynos5-dp"; | ||
123 | reg = <0x145B0000 0x1000>; | ||
124 | interrupts = <10 3>; | ||
125 | interrupt-parent = <&combiner>; | ||
126 | #address-cells = <1>; | ||
127 | #size-cells = <0>; | ||
128 | status = "disabled"; | ||
129 | }; | ||
111 | }; | 130 | }; |
diff --git a/arch/arm/boot/dts/exynos5250-arndale.dts b/arch/arm/boot/dts/exynos5250-arndale.dts index abc7272c7afd..452d0b04d273 100644 --- a/arch/arm/boot/dts/exynos5250-arndale.dts +++ b/arch/arm/boot/dts/exynos5250-arndale.dts | |||
@@ -11,6 +11,7 @@ | |||
11 | 11 | ||
12 | /dts-v1/; | 12 | /dts-v1/; |
13 | #include "exynos5250.dtsi" | 13 | #include "exynos5250.dtsi" |
14 | #include <dt-bindings/interrupt-controller/irq.h> | ||
14 | 15 | ||
15 | / { | 16 | / { |
16 | model = "Insignal Arndale evaluation board based on EXYNOS5250"; | 17 | model = "Insignal Arndale evaluation board based on EXYNOS5250"; |
@@ -37,6 +38,28 @@ | |||
37 | s5m8767_pmic@66 { | 38 | s5m8767_pmic@66 { |
38 | compatible = "samsung,s5m8767-pmic"; | 39 | compatible = "samsung,s5m8767-pmic"; |
39 | reg = <0x66>; | 40 | reg = <0x66>; |
41 | interrupt-parent = <&gpx3>; | ||
42 | interrupts = <2 IRQ_TYPE_LEVEL_LOW>; | ||
43 | |||
44 | vinb1-supply = <&main_dc_reg>; | ||
45 | vinb2-supply = <&main_dc_reg>; | ||
46 | vinb3-supply = <&main_dc_reg>; | ||
47 | vinb4-supply = <&main_dc_reg>; | ||
48 | vinb5-supply = <&main_dc_reg>; | ||
49 | vinb6-supply = <&main_dc_reg>; | ||
50 | vinb7-supply = <&main_dc_reg>; | ||
51 | vinb8-supply = <&main_dc_reg>; | ||
52 | vinb9-supply = <&main_dc_reg>; | ||
53 | |||
54 | vinl1-supply = <&buck7_reg>; | ||
55 | vinl2-supply = <&buck7_reg>; | ||
56 | vinl3-supply = <&buck7_reg>; | ||
57 | vinl4-supply = <&main_dc_reg>; | ||
58 | vinl5-supply = <&main_dc_reg>; | ||
59 | vinl6-supply = <&main_dc_reg>; | ||
60 | vinl7-supply = <&main_dc_reg>; | ||
61 | vinl8-supply = <&buck8_reg>; | ||
62 | vinl9-supply = <&buck8_reg>; | ||
40 | 63 | ||
41 | s5m8767,pmic-buck2-dvs-voltage = <1300000>; | 64 | s5m8767,pmic-buck2-dvs-voltage = <1300000>; |
42 | s5m8767,pmic-buck3-dvs-voltage = <1100000>; | 65 | s5m8767,pmic-buck3-dvs-voltage = <1100000>; |
@@ -276,6 +299,16 @@ | |||
276 | op_mode = <1>; | 299 | op_mode = <1>; |
277 | }; | 300 | }; |
278 | 301 | ||
302 | buck7_reg: BUCK7 { | ||
303 | regulator-name = "PVDD_BUCK7"; | ||
304 | regulator-always-on; | ||
305 | }; | ||
306 | |||
307 | buck8_reg: BUCK8 { | ||
308 | regulator-name = "PVDD_BUCK8"; | ||
309 | regulator-always-on; | ||
310 | }; | ||
311 | |||
279 | buck9_reg: BUCK9 { | 312 | buck9_reg: BUCK9 { |
280 | regulator-name = "VDD_33_OFF_EXT1"; | 313 | regulator-name = "VDD_33_OFF_EXT1"; |
281 | regulator-min-microvolt = <750000>; | 314 | regulator-min-microvolt = <750000>; |
@@ -295,7 +328,22 @@ | |||
295 | }; | 328 | }; |
296 | 329 | ||
297 | i2c@12C90000 { | 330 | i2c@12C90000 { |
298 | status = "disabled"; | 331 | wm1811a@1a { |
332 | compatible = "wlf,wm1811"; | ||
333 | reg = <0x1a>; | ||
334 | |||
335 | AVDD2-supply = <&main_dc_reg>; | ||
336 | CPVDD-supply = <&main_dc_reg>; | ||
337 | DBVDD1-supply = <&main_dc_reg>; | ||
338 | DBVDD2-supply = <&main_dc_reg>; | ||
339 | DBVDD3-supply = <&main_dc_reg>; | ||
340 | LDO1VDD-supply = <&main_dc_reg>; | ||
341 | SPKVDD1-supply = <&main_dc_reg>; | ||
342 | SPKVDD2-supply = <&main_dc_reg>; | ||
343 | |||
344 | wlf,ldo1ena = <&gpb0 0 0>; | ||
345 | wlf,ldo2ena = <&gpb0 1 0>; | ||
346 | }; | ||
299 | }; | 347 | }; |
300 | 348 | ||
301 | i2c@12CA0000 { | 349 | i2c@12CA0000 { |
@@ -429,18 +477,29 @@ | |||
429 | vdd-supply = <&ldo8_reg>; | 477 | vdd-supply = <&ldo8_reg>; |
430 | }; | 478 | }; |
431 | 479 | ||
432 | mmc_reg: voltage-regulator { | 480 | regulators { |
433 | compatible = "regulator-fixed"; | 481 | compatible = "simple-bus"; |
434 | regulator-name = "VDD_33ON_2.8V"; | 482 | #address-cells = <1>; |
435 | regulator-min-microvolt = <2800000>; | 483 | #size-cells = <0>; |
436 | regulator-max-microvolt = <2800000>; | ||
437 | gpio = <&gpx1 1 1>; | ||
438 | enable-active-high; | ||
439 | }; | ||
440 | 484 | ||
441 | reg_hdmi_en: fixedregulator@0 { | 485 | main_dc_reg: fixedregulator@1 { |
442 | compatible = "regulator-fixed"; | 486 | compatible = "regulator-fixed"; |
443 | regulator-name = "hdmi-en"; | 487 | regulator-name = "MAIN_DC"; |
488 | }; | ||
489 | |||
490 | mmc_reg: voltage-regulator { | ||
491 | compatible = "regulator-fixed"; | ||
492 | regulator-name = "VDD_33ON_2.8V"; | ||
493 | regulator-min-microvolt = <2800000>; | ||
494 | regulator-max-microvolt = <2800000>; | ||
495 | gpio = <&gpx1 1 1>; | ||
496 | enable-active-high; | ||
497 | }; | ||
498 | |||
499 | reg_hdmi_en: fixedregulator@0 { | ||
500 | compatible = "regulator-fixed"; | ||
501 | regulator-name = "hdmi-en"; | ||
502 | }; | ||
444 | }; | 503 | }; |
445 | 504 | ||
446 | fixed-rate-clocks { | 505 | fixed-rate-clocks { |
@@ -450,16 +509,18 @@ | |||
450 | }; | 509 | }; |
451 | }; | 510 | }; |
452 | 511 | ||
453 | dp-controller { | 512 | dp-controller@145B0000 { |
454 | samsung,color-space = <0>; | 513 | samsung,color-space = <0>; |
455 | samsung,dynamic-range = <0>; | 514 | samsung,dynamic-range = <0>; |
456 | samsung,ycbcr-coeff = <0>; | 515 | samsung,ycbcr-coeff = <0>; |
457 | samsung,color-depth = <1>; | 516 | samsung,color-depth = <1>; |
458 | samsung,link-rate = <0x0a>; | 517 | samsung,link-rate = <0x0a>; |
459 | samsung,lane-count = <4>; | 518 | samsung,lane-count = <4>; |
519 | status = "okay"; | ||
460 | }; | 520 | }; |
461 | 521 | ||
462 | fimd: fimd@14400000 { | 522 | fimd: fimd@14400000 { |
523 | status = "okay"; | ||
463 | display-timings { | 524 | display-timings { |
464 | native-mode = <&timing0>; | 525 | native-mode = <&timing0>; |
465 | timing0: timing@0 { | 526 | timing0: timing@0 { |
@@ -480,4 +541,22 @@ | |||
480 | rtc { | 541 | rtc { |
481 | status = "okay"; | 542 | status = "okay"; |
482 | }; | 543 | }; |
544 | |||
545 | usb_hub_bus { | ||
546 | compatible = "simple-bus"; | ||
547 | #address-cells = <1>; | ||
548 | #size-cells = <0>; | ||
549 | |||
550 | // SMSC USB3503 connected in hardware only mode as a PHY | ||
551 | usb_hub: usb_hub { | ||
552 | compatible = "smsc,usb3503a"; | ||
553 | |||
554 | reset-gpios = <&gpx3 5 1>; | ||
555 | connect-gpios = <&gpd1 7 1>; | ||
556 | }; | ||
557 | }; | ||
558 | |||
559 | usb@12110000 { | ||
560 | usb-phy = <&usb2_phy>; | ||
561 | }; | ||
483 | }; | 562 | }; |
diff --git a/arch/arm/boot/dts/exynos5250-smdk5250.dts b/arch/arm/boot/dts/exynos5250-smdk5250.dts index 49f18c24a576..2538b329f2ce 100644 --- a/arch/arm/boot/dts/exynos5250-smdk5250.dts +++ b/arch/arm/boot/dts/exynos5250-smdk5250.dts | |||
@@ -250,7 +250,7 @@ | |||
250 | samsung,vbus-gpio = <&gpx2 6 0>; | 250 | samsung,vbus-gpio = <&gpx2 6 0>; |
251 | }; | 251 | }; |
252 | 252 | ||
253 | dp-controller { | 253 | dp-controller@145B0000 { |
254 | samsung,color-space = <0>; | 254 | samsung,color-space = <0>; |
255 | samsung,dynamic-range = <0>; | 255 | samsung,dynamic-range = <0>; |
256 | samsung,ycbcr-coeff = <0>; | 256 | samsung,ycbcr-coeff = <0>; |
@@ -260,21 +260,25 @@ | |||
260 | 260 | ||
261 | pinctrl-names = "default"; | 261 | pinctrl-names = "default"; |
262 | pinctrl-0 = <&dp_hpd>; | 262 | pinctrl-0 = <&dp_hpd>; |
263 | status = "okay"; | ||
263 | }; | 264 | }; |
264 | 265 | ||
265 | display-timings { | 266 | fimd@14400000 { |
266 | native-mode = <&timing0>; | 267 | status = "okay"; |
267 | timing0: timing@0 { | 268 | display-timings { |
268 | /* 1280x800 */ | 269 | native-mode = <&timing0>; |
269 | clock-frequency = <50000>; | 270 | timing0: timing@0 { |
270 | hactive = <1280>; | 271 | /* 1280x800 */ |
271 | vactive = <800>; | 272 | clock-frequency = <50000>; |
272 | hfront-porch = <4>; | 273 | hactive = <1280>; |
273 | hback-porch = <4>; | 274 | vactive = <800>; |
274 | hsync-len = <4>; | 275 | hfront-porch = <4>; |
275 | vback-porch = <4>; | 276 | hback-porch = <4>; |
276 | vfront-porch = <4>; | 277 | hsync-len = <4>; |
277 | vsync-len = <4>; | 278 | vback-porch = <4>; |
279 | vfront-porch = <4>; | ||
280 | vsync-len = <4>; | ||
281 | }; | ||
278 | }; | 282 | }; |
279 | }; | 283 | }; |
280 | 284 | ||
diff --git a/arch/arm/boot/dts/exynos5250.dtsi b/arch/arm/boot/dts/exynos5250.dtsi index f2dfa6b1f1a1..f7e2d3493f82 100644 --- a/arch/arm/boot/dts/exynos5250.dtsi +++ b/arch/arm/boot/dts/exynos5250.dtsi | |||
@@ -163,11 +163,21 @@ | |||
163 | clock-names = "watchdog"; | 163 | clock-names = "watchdog"; |
164 | }; | 164 | }; |
165 | 165 | ||
166 | g2d@10850000 { | ||
167 | compatible = "samsung,exynos5250-g2d"; | ||
168 | reg = <0x10850000 0x1000>; | ||
169 | interrupts = <0 91 0>; | ||
170 | clocks = <&clock 345>; | ||
171 | clock-names = "fimg2d"; | ||
172 | }; | ||
173 | |||
166 | codec@11000000 { | 174 | codec@11000000 { |
167 | compatible = "samsung,mfc-v6"; | 175 | compatible = "samsung,mfc-v6"; |
168 | reg = <0x11000000 0x10000>; | 176 | reg = <0x11000000 0x10000>; |
169 | interrupts = <0 96 0>; | 177 | interrupts = <0 96 0>; |
170 | samsung,power-domain = <&pd_mfc>; | 178 | samsung,power-domain = <&pd_mfc>; |
179 | clocks = <&clock 266>; | ||
180 | clock-names = "mfc"; | ||
171 | }; | 181 | }; |
172 | 182 | ||
173 | rtc { | 183 | rtc { |
@@ -611,28 +621,20 @@ | |||
611 | interrupts = <0 94 0>; | 621 | interrupts = <0 94 0>; |
612 | }; | 622 | }; |
613 | 623 | ||
614 | dp-controller { | 624 | dp_phy: video-phy@10040720 { |
615 | compatible = "samsung,exynos5-dp"; | 625 | compatible = "samsung,exynos5250-dp-video-phy"; |
616 | reg = <0x145b0000 0x1000>; | 626 | reg = <0x10040720 4>; |
617 | interrupts = <10 3>; | 627 | #phy-cells = <0>; |
618 | interrupt-parent = <&combiner>; | 628 | }; |
629 | |||
630 | dp-controller@145B0000 { | ||
619 | clocks = <&clock 342>; | 631 | clocks = <&clock 342>; |
620 | clock-names = "dp"; | 632 | clock-names = "dp"; |
621 | #address-cells = <1>; | 633 | phys = <&dp_phy>; |
622 | #size-cells = <0>; | 634 | phy-names = "dp"; |
623 | |||
624 | dptx-phy { | ||
625 | reg = <0x10040720>; | ||
626 | samsung,enable-mask = <1>; | ||
627 | }; | ||
628 | }; | 635 | }; |
629 | 636 | ||
630 | fimd { | 637 | fimd@14400000 { |
631 | compatible = "samsung,exynos5250-fimd"; | ||
632 | interrupt-parent = <&combiner>; | ||
633 | reg = <0x14400000 0x40000>; | ||
634 | interrupt-names = "fifo", "vsync", "lcd_sys"; | ||
635 | interrupts = <18 4>, <18 5>, <18 6>; | ||
636 | clocks = <&clock 133>, <&clock 339>; | 638 | clocks = <&clock 133>, <&clock 339>; |
637 | clock-names = "sclk_fimd", "fimd"; | 639 | clock-names = "sclk_fimd", "fimd"; |
638 | }; | 640 | }; |
diff --git a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi b/arch/arm/boot/dts/exynos5420-pinctrl.dtsi index 5848c425ae4d..e695aba5f73c 100644 --- a/arch/arm/boot/dts/exynos5420-pinctrl.dtsi +++ b/arch/arm/boot/dts/exynos5420-pinctrl.dtsi | |||
@@ -59,6 +59,13 @@ | |||
59 | interrupt-controller; | 59 | interrupt-controller; |
60 | #interrupt-cells = <2>; | 60 | #interrupt-cells = <2>; |
61 | }; | 61 | }; |
62 | |||
63 | dp_hpd: dp_hpd { | ||
64 | samsung,pins = "gpx0-7"; | ||
65 | samsung,pin-function = <3>; | ||
66 | samsung,pin-pud = <0>; | ||
67 | samaung,pin-drv = <0>; | ||
68 | }; | ||
62 | }; | 69 | }; |
63 | 70 | ||
64 | pinctrl@13410000 { | 71 | pinctrl@13410000 { |
diff --git a/arch/arm/boot/dts/exynos5420-smdk5420.dts b/arch/arm/boot/dts/exynos5420-smdk5420.dts index 08607df6a180..bafba25ba7c2 100644 --- a/arch/arm/boot/dts/exynos5420-smdk5420.dts +++ b/arch/arm/boot/dts/exynos5420-smdk5420.dts | |||
@@ -30,4 +30,35 @@ | |||
30 | clock-frequency = <24000000>; | 30 | clock-frequency = <24000000>; |
31 | }; | 31 | }; |
32 | }; | 32 | }; |
33 | |||
34 | dp-controller@145B0000 { | ||
35 | pinctrl-names = "default"; | ||
36 | pinctrl-0 = <&dp_hpd>; | ||
37 | samsung,color-space = <0>; | ||
38 | samsung,dynamic-range = <0>; | ||
39 | samsung,ycbcr-coeff = <0>; | ||
40 | samsung,color-depth = <1>; | ||
41 | samsung,link-rate = <0x0a>; | ||
42 | samsung,lane-count = <4>; | ||
43 | status = "okay"; | ||
44 | }; | ||
45 | |||
46 | fimd@14400000 { | ||
47 | status = "okay"; | ||
48 | display-timings { | ||
49 | native-mode = <&timing0>; | ||
50 | timing0: timing@0 { | ||
51 | clock-frequency = <50000>; | ||
52 | hactive = <2560>; | ||
53 | vactive = <1600>; | ||
54 | hfront-porch = <48>; | ||
55 | hback-porch = <80>; | ||
56 | hsync-len = <32>; | ||
57 | vback-porch = <16>; | ||
58 | vfront-porch = <8>; | ||
59 | vsync-len = <6>; | ||
60 | }; | ||
61 | }; | ||
62 | }; | ||
63 | |||
33 | }; | 64 | }; |
diff --git a/arch/arm/boot/dts/exynos5420.dtsi b/arch/arm/boot/dts/exynos5420.dtsi index 9e90d1ec0c28..5353e32897a4 100644 --- a/arch/arm/boot/dts/exynos5420.dtsi +++ b/arch/arm/boot/dts/exynos5420.dtsi | |||
@@ -14,7 +14,10 @@ | |||
14 | */ | 14 | */ |
15 | 15 | ||
16 | #include "exynos5.dtsi" | 16 | #include "exynos5.dtsi" |
17 | /include/ "exynos5420-pinctrl.dtsi" | 17 | #include "exynos5420-pinctrl.dtsi" |
18 | |||
19 | #include <dt-bindings/clk/exynos-audss-clk.h> | ||
20 | |||
18 | / { | 21 | / { |
19 | compatible = "samsung,exynos5420"; | 22 | compatible = "samsung,exynos5420"; |
20 | 23 | ||
@@ -65,6 +68,22 @@ | |||
65 | #clock-cells = <1>; | 68 | #clock-cells = <1>; |
66 | }; | 69 | }; |
67 | 70 | ||
71 | clock_audss: audss-clock-controller@3810000 { | ||
72 | compatible = "samsung,exynos5420-audss-clock"; | ||
73 | reg = <0x03810000 0x0C>; | ||
74 | #clock-cells = <1>; | ||
75 | clocks = <&clock 148>; | ||
76 | clock-names = "sclk_audio"; | ||
77 | }; | ||
78 | |||
79 | codec@11000000 { | ||
80 | compatible = "samsung,mfc-v7"; | ||
81 | reg = <0x11000000 0x10000>; | ||
82 | interrupts = <0 96 0>; | ||
83 | clocks = <&clock 401>; | ||
84 | clock-names = "mfc"; | ||
85 | }; | ||
86 | |||
68 | mct@101C0000 { | 87 | mct@101C0000 { |
69 | compatible = "samsung,exynos4210-mct"; | 88 | compatible = "samsung,exynos4210-mct"; |
70 | reg = <0x101C0000 0x800>; | 89 | reg = <0x101C0000 0x800>; |
@@ -90,6 +109,41 @@ | |||
90 | }; | 109 | }; |
91 | }; | 110 | }; |
92 | 111 | ||
112 | gsc_pd: power-domain@10044000 { | ||
113 | compatible = "samsung,exynos4210-pd"; | ||
114 | reg = <0x10044000 0x20>; | ||
115 | }; | ||
116 | |||
117 | isp_pd: power-domain@10044020 { | ||
118 | compatible = "samsung,exynos4210-pd"; | ||
119 | reg = <0x10044020 0x20>; | ||
120 | }; | ||
121 | |||
122 | mfc_pd: power-domain@10044060 { | ||
123 | compatible = "samsung,exynos4210-pd"; | ||
124 | reg = <0x10044060 0x20>; | ||
125 | }; | ||
126 | |||
127 | disp_pd: power-domain@100440C0 { | ||
128 | compatible = "samsung,exynos4210-pd"; | ||
129 | reg = <0x100440C0 0x20>; | ||
130 | }; | ||
131 | |||
132 | mau_pd: power-domain@100440E0 { | ||
133 | compatible = "samsung,exynos4210-pd"; | ||
134 | reg = <0x100440E0 0x20>; | ||
135 | }; | ||
136 | |||
137 | g2d_pd: power-domain@10044100 { | ||
138 | compatible = "samsung,exynos4210-pd"; | ||
139 | reg = <0x10044100 0x20>; | ||
140 | }; | ||
141 | |||
142 | msc_pd: power-domain@10044120 { | ||
143 | compatible = "samsung,exynos4210-pd"; | ||
144 | reg = <0x10044120 0x20>; | ||
145 | }; | ||
146 | |||
93 | pinctrl_0: pinctrl@13400000 { | 147 | pinctrl_0: pinctrl@13400000 { |
94 | compatible = "samsung,exynos5420-pinctrl"; | 148 | compatible = "samsung,exynos5420-pinctrl"; |
95 | reg = <0x13400000 0x1000>; | 149 | reg = <0x13400000 0x1000>; |
@@ -145,4 +199,23 @@ | |||
145 | clocks = <&clock 260>, <&clock 131>; | 199 | clocks = <&clock 260>, <&clock 131>; |
146 | clock-names = "uart", "clk_uart_baud0"; | 200 | clock-names = "uart", "clk_uart_baud0"; |
147 | }; | 201 | }; |
202 | |||
203 | dp_phy: video-phy@10040728 { | ||
204 | compatible = "samsung,exynos5250-dp-video-phy"; | ||
205 | reg = <0x10040728 4>; | ||
206 | #phy-cells = <0>; | ||
207 | }; | ||
208 | |||
209 | dp-controller@145B0000 { | ||
210 | clocks = <&clock 412>; | ||
211 | clock-names = "dp"; | ||
212 | phys = <&dp_phy>; | ||
213 | phy-names = "dp"; | ||
214 | }; | ||
215 | |||
216 | fimd@14400000 { | ||
217 | samsung,power-domain = <&disp_pd>; | ||
218 | clocks = <&clock 147>, <&clock 421>; | ||
219 | clock-names = "sclk_fimd", "fimd"; | ||
220 | }; | ||
148 | }; | 221 | }; |
diff --git a/arch/arm/boot/dts/exynos5440.dtsi b/arch/arm/boot/dts/exynos5440.dtsi index 1b81f36896bc..5d6cf4965d6e 100644 --- a/arch/arm/boot/dts/exynos5440.dtsi +++ b/arch/arm/boot/dts/exynos5440.dtsi | |||
@@ -18,6 +18,9 @@ | |||
18 | 18 | ||
19 | aliases { | 19 | aliases { |
20 | spi0 = &spi_0; | 20 | spi0 = &spi_0; |
21 | tmuctrl0 = &tmuctrl_0; | ||
22 | tmuctrl1 = &tmuctrl_1; | ||
23 | tmuctrl2 = &tmuctrl_2; | ||
21 | }; | 24 | }; |
22 | 25 | ||
23 | clock: clock-controller@160000 { | 26 | clock: clock-controller@160000 { |
@@ -207,6 +210,30 @@ | |||
207 | clock-names = "rtc"; | 210 | clock-names = "rtc"; |
208 | }; | 211 | }; |
209 | 212 | ||
213 | tmuctrl_0: tmuctrl@160118 { | ||
214 | compatible = "samsung,exynos5440-tmu"; | ||
215 | reg = <0x160118 0x230>, <0x160368 0x10>; | ||
216 | interrupts = <0 58 0>; | ||
217 | clocks = <&clock 21>; | ||
218 | clock-names = "tmu_apbif"; | ||
219 | }; | ||
220 | |||
221 | tmuctrl_1: tmuctrl@16011C { | ||
222 | compatible = "samsung,exynos5440-tmu"; | ||
223 | reg = <0x16011C 0x230>, <0x160368 0x10>; | ||
224 | interrupts = <0 58 0>; | ||
225 | clocks = <&clock 21>; | ||
226 | clock-names = "tmu_apbif"; | ||
227 | }; | ||
228 | |||
229 | tmuctrl_2: tmuctrl@160120 { | ||
230 | compatible = "samsung,exynos5440-tmu"; | ||
231 | reg = <0x160120 0x230>, <0x160368 0x10>; | ||
232 | interrupts = <0 58 0>; | ||
233 | clocks = <&clock 21>; | ||
234 | clock-names = "tmu_apbif"; | ||
235 | }; | ||
236 | |||
210 | sata@210000 { | 237 | sata@210000 { |
211 | compatible = "snps,exynos5440-ahci"; | 238 | compatible = "snps,exynos5440-ahci"; |
212 | reg = <0x210000 0x10000>; | 239 | reg = <0x210000 0x10000>; |
diff --git a/arch/arm/boot/dts/imx23-evk.dts b/arch/arm/boot/dts/imx23-evk.dts index da0588a04131..185c7c01102a 100644 --- a/arch/arm/boot/dts/imx23-evk.dts +++ b/arch/arm/boot/dts/imx23-evk.dts | |||
@@ -90,6 +90,11 @@ | |||
90 | }; | 90 | }; |
91 | 91 | ||
92 | apbx@80040000 { | 92 | apbx@80040000 { |
93 | lradc@80050000 { | ||
94 | status = "okay"; | ||
95 | fsl,lradc-touchscreen-wires = <4>; | ||
96 | }; | ||
97 | |||
93 | pwm: pwm@80064000 { | 98 | pwm: pwm@80064000 { |
94 | pinctrl-names = "default"; | 99 | pinctrl-names = "default"; |
95 | pinctrl-0 = <&pwm2_pins_a>; | 100 | pinctrl-0 = <&pwm2_pins_a>; |
@@ -107,6 +112,16 @@ | |||
107 | pinctrl-0 = <&duart_pins_a>; | 112 | pinctrl-0 = <&duart_pins_a>; |
108 | status = "okay"; | 113 | status = "okay"; |
109 | }; | 114 | }; |
115 | |||
116 | usbphy0: usbphy@8007c000 { | ||
117 | status = "okay"; | ||
118 | }; | ||
119 | }; | ||
120 | }; | ||
121 | |||
122 | ahb@80080000 { | ||
123 | usb0: usb@80080000 { | ||
124 | status = "okay"; | ||
110 | }; | 125 | }; |
111 | }; | 126 | }; |
112 | 127 | ||
diff --git a/arch/arm/boot/dts/imx23-olinuxino.dts b/arch/arm/boot/dts/imx23-olinuxino.dts index d107c4af321f..fc766ae12e24 100644 --- a/arch/arm/boot/dts/imx23-olinuxino.dts +++ b/arch/arm/boot/dts/imx23-olinuxino.dts | |||
@@ -69,6 +69,10 @@ | |||
69 | }; | 69 | }; |
70 | 70 | ||
71 | apbx@80040000 { | 71 | apbx@80040000 { |
72 | lradc@80050000 { | ||
73 | status = "okay"; | ||
74 | }; | ||
75 | |||
72 | duart: serial@80070000 { | 76 | duart: serial@80070000 { |
73 | pinctrl-names = "default"; | 77 | pinctrl-names = "default"; |
74 | pinctrl-0 = <&duart_pins_a>; | 78 | pinctrl-0 = <&duart_pins_a>; |
diff --git a/arch/arm/boot/dts/imx23.dtsi b/arch/arm/boot/dts/imx23.dtsi index 587ceef81e45..28b5ce289662 100644 --- a/arch/arm/boot/dts/imx23.dtsi +++ b/arch/arm/boot/dts/imx23.dtsi | |||
@@ -20,6 +20,8 @@ | |||
20 | gpio2 = &gpio2; | 20 | gpio2 = &gpio2; |
21 | serial0 = &auart0; | 21 | serial0 = &auart0; |
22 | serial1 = &auart1; | 22 | serial1 = &auart1; |
23 | spi0 = &ssp0; | ||
24 | spi1 = &ssp1; | ||
23 | }; | 25 | }; |
24 | 26 | ||
25 | cpus { | 27 | cpus { |
@@ -76,23 +78,21 @@ | |||
76 | #size-cells = <1>; | 78 | #size-cells = <1>; |
77 | reg = <0x8000c000 0x2000>, <0x8000a000 0x2000>; | 79 | reg = <0x8000c000 0x2000>, <0x8000a000 0x2000>; |
78 | reg-names = "gpmi-nand", "bch"; | 80 | reg-names = "gpmi-nand", "bch"; |
79 | interrupts = <13>, <56>; | 81 | interrupts = <56>; |
80 | interrupt-names = "gpmi-dma", "bch"; | 82 | interrupt-names = "bch"; |
81 | clocks = <&clks 34>; | 83 | clocks = <&clks 34>; |
82 | clock-names = "gpmi_io"; | 84 | clock-names = "gpmi_io"; |
83 | dmas = <&dma_apbh 4>; | 85 | dmas = <&dma_apbh 4>; |
84 | dma-names = "rx-tx"; | 86 | dma-names = "rx-tx"; |
85 | fsl,gpmi-dma-channel = <4>; | ||
86 | status = "disabled"; | 87 | status = "disabled"; |
87 | }; | 88 | }; |
88 | 89 | ||
89 | ssp0: ssp@80010000 { | 90 | ssp0: ssp@80010000 { |
90 | reg = <0x80010000 0x2000>; | 91 | reg = <0x80010000 0x2000>; |
91 | interrupts = <15 14>; | 92 | interrupts = <15>; |
92 | clocks = <&clks 33>; | 93 | clocks = <&clks 33>; |
93 | dmas = <&dma_apbh 1>; | 94 | dmas = <&dma_apbh 1>; |
94 | dma-names = "rx-tx"; | 95 | dma-names = "rx-tx"; |
95 | fsl,ssp-dma-channel = <1>; | ||
96 | status = "disabled"; | 96 | status = "disabled"; |
97 | }; | 97 | }; |
98 | 98 | ||
@@ -366,11 +366,10 @@ | |||
366 | 366 | ||
367 | ssp1: ssp@80034000 { | 367 | ssp1: ssp@80034000 { |
368 | reg = <0x80034000 0x2000>; | 368 | reg = <0x80034000 0x2000>; |
369 | interrupts = <2 20>; | 369 | interrupts = <2>; |
370 | clocks = <&clks 33>; | 370 | clocks = <&clks 33>; |
371 | dmas = <&dma_apbh 2>; | 371 | dmas = <&dma_apbh 2>; |
372 | dma-names = "rx-tx"; | 372 | dma-names = "rx-tx"; |
373 | fsl,ssp-dma-channel = <2>; | ||
374 | status = "disabled"; | 373 | status = "disabled"; |
375 | }; | 374 | }; |
376 | 375 | ||
@@ -472,7 +471,7 @@ | |||
472 | auart0: serial@8006c000 { | 471 | auart0: serial@8006c000 { |
473 | compatible = "fsl,imx23-auart"; | 472 | compatible = "fsl,imx23-auart"; |
474 | reg = <0x8006c000 0x2000>; | 473 | reg = <0x8006c000 0x2000>; |
475 | interrupts = <24 25 23>; | 474 | interrupts = <24>; |
476 | clocks = <&clks 32>; | 475 | clocks = <&clks 32>; |
477 | dmas = <&dma_apbx 6>, <&dma_apbx 7>; | 476 | dmas = <&dma_apbx 6>, <&dma_apbx 7>; |
478 | dma-names = "rx", "tx"; | 477 | dma-names = "rx", "tx"; |
@@ -482,7 +481,7 @@ | |||
482 | auart1: serial@8006e000 { | 481 | auart1: serial@8006e000 { |
483 | compatible = "fsl,imx23-auart"; | 482 | compatible = "fsl,imx23-auart"; |
484 | reg = <0x8006e000 0x2000>; | 483 | reg = <0x8006e000 0x2000>; |
485 | interrupts = <59 60 58>; | 484 | interrupts = <59>; |
486 | clocks = <&clks 32>; | 485 | clocks = <&clks 32>; |
487 | dmas = <&dma_apbx 8>, <&dma_apbx 9>; | 486 | dmas = <&dma_apbx 8>, <&dma_apbx 9>; |
488 | dma-names = "rx", "tx"; | 487 | dma-names = "rx", "tx"; |
diff --git a/arch/arm/boot/dts/imx28-cfa10036.dts b/arch/arm/boot/dts/imx28-cfa10036.dts index 94c4476972c3..1ec8c94bbac9 100644 --- a/arch/arm/boot/dts/imx28-cfa10036.dts +++ b/arch/arm/boot/dts/imx28-cfa10036.dts | |||
@@ -23,10 +23,7 @@ | |||
23 | apb@80000000 { | 23 | apb@80000000 { |
24 | apbh@80000000 { | 24 | apbh@80000000 { |
25 | pinctrl@80018000 { | 25 | pinctrl@80018000 { |
26 | pinctrl-names = "default"; | 26 | ssd1306_cfa10036: ssd1306-10036@0 { |
27 | pinctrl-0 = <&hog_pins_cfa10036>; | ||
28 | |||
29 | hog_pins_cfa10036: hog-10036@0 { | ||
30 | reg = <0>; | 27 | reg = <0>; |
31 | fsl,pinmux-ids = < | 28 | fsl,pinmux-ids = < |
32 | 0x2073 /* MX28_PAD_SSP0_D7__GPIO_2_7 */ | 29 | 0x2073 /* MX28_PAD_SSP0_D7__GPIO_2_7 */ |
@@ -83,6 +80,8 @@ | |||
83 | 80 | ||
84 | ssd1306: oled@3c { | 81 | ssd1306: oled@3c { |
85 | compatible = "solomon,ssd1306fb-i2c"; | 82 | compatible = "solomon,ssd1306fb-i2c"; |
83 | pinctrl-names = "default"; | ||
84 | pinctrl-0 = <&ssd1306_cfa10036>; | ||
86 | reg = <0x3c>; | 85 | reg = <0x3c>; |
87 | reset-gpios = <&gpio2 7 0>; | 86 | reset-gpios = <&gpio2 7 0>; |
88 | solomon,height = <32>; | 87 | solomon,height = <32>; |
diff --git a/arch/arm/boot/dts/imx28-cfa10037.dts b/arch/arm/boot/dts/imx28-cfa10037.dts index c2ef3a3d655e..182b99fe35f3 100644 --- a/arch/arm/boot/dts/imx28-cfa10037.dts +++ b/arch/arm/boot/dts/imx28-cfa10037.dts | |||
@@ -22,13 +22,19 @@ | |||
22 | apb@80000000 { | 22 | apb@80000000 { |
23 | apbh@80000000 { | 23 | apbh@80000000 { |
24 | pinctrl@80018000 { | 24 | pinctrl@80018000 { |
25 | pinctrl-names = "default", "default"; | 25 | usb_pins_cfa10037: usb-10037@0 { |
26 | pinctrl-1 = <&hog_pins_cfa10037>; | ||
27 | |||
28 | hog_pins_cfa10037: hog-10037@0 { | ||
29 | reg = <0>; | 26 | reg = <0>; |
30 | fsl,pinmux-ids = < | 27 | fsl,pinmux-ids = < |
31 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ | 28 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ |
29 | >; | ||
30 | fsl,drive-strength = <0>; | ||
31 | fsl,voltage = <1>; | ||
32 | fsl,pull-up = <0>; | ||
33 | }; | ||
34 | |||
35 | mac0_pins_cfa10037: mac0-10037@0 { | ||
36 | reg = <0>; | ||
37 | fsl,pinmux-ids = < | ||
32 | 0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */ | 38 | 0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */ |
33 | >; | 39 | >; |
34 | fsl,drive-strength = <0>; | 40 | fsl,drive-strength = <0>; |
@@ -56,7 +62,8 @@ | |||
56 | mac0: ethernet@800f0000 { | 62 | mac0: ethernet@800f0000 { |
57 | phy-mode = "rmii"; | 63 | phy-mode = "rmii"; |
58 | pinctrl-names = "default"; | 64 | pinctrl-names = "default"; |
59 | pinctrl-0 = <&mac0_pins_a>; | 65 | pinctrl-0 = <&mac0_pins_a |
66 | &mac0_pins_cfa10037>; | ||
60 | phy-reset-gpios = <&gpio2 21 0>; | 67 | phy-reset-gpios = <&gpio2 21 0>; |
61 | phy-reset-duration = <100>; | 68 | phy-reset-duration = <100>; |
62 | status = "okay"; | 69 | status = "okay"; |
@@ -68,6 +75,8 @@ | |||
68 | 75 | ||
69 | reg_usb1_vbus: usb1_vbus { | 76 | reg_usb1_vbus: usb1_vbus { |
70 | compatible = "regulator-fixed"; | 77 | compatible = "regulator-fixed"; |
78 | pinctrl-names = "default"; | ||
79 | pinctrl-0 = <&usb_pins_cfa10037>; | ||
71 | regulator-name = "usb1_vbus"; | 80 | regulator-name = "usb1_vbus"; |
72 | regulator-min-microvolt = <5000000>; | 81 | regulator-min-microvolt = <5000000>; |
73 | regulator-max-microvolt = <5000000>; | 82 | regulator-max-microvolt = <5000000>; |
diff --git a/arch/arm/boot/dts/imx28-cfa10049.dts b/arch/arm/boot/dts/imx28-cfa10049.dts index 04b2f769ffbd..06e4cfaf7dd2 100644 --- a/arch/arm/boot/dts/imx28-cfa10049.dts +++ b/arch/arm/boot/dts/imx28-cfa10049.dts | |||
@@ -22,32 +22,62 @@ | |||
22 | apb@80000000 { | 22 | apb@80000000 { |
23 | apbh@80000000 { | 23 | apbh@80000000 { |
24 | pinctrl@80018000 { | 24 | pinctrl@80018000 { |
25 | pinctrl-names = "default", "default"; | 25 | usb_pins_cfa10049: usb-10049@0 { |
26 | pinctrl-1 = <&hog_pins_cfa10049 | ||
27 | &hog_pins_cfa10049_pullup>; | ||
28 | |||
29 | hog_pins_cfa10049: hog-10049@0 { | ||
30 | reg = <0>; | 26 | reg = <0>; |
31 | fsl,pinmux-ids = < | 27 | fsl,pinmux-ids = < |
32 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ | 28 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ |
29 | >; | ||
30 | fsl,drive-strength = <0>; | ||
31 | fsl,voltage = <1>; | ||
32 | fsl,pull-up = <0>; | ||
33 | }; | ||
34 | |||
35 | i2cmux_pins_cfa10049: i2cmux-10049@0 { | ||
36 | reg = <0>; | ||
37 | fsl,pinmux-ids = < | ||
33 | 0x1163 /* MX28_PAD_LCD_D22__GPIO_1_22 */ | 38 | 0x1163 /* MX28_PAD_LCD_D22__GPIO_1_22 */ |
34 | 0x1173 /* MX28_PAD_LCD_D22__GPIO_1_23 */ | 39 | 0x1173 /* MX28_PAD_LCD_D22__GPIO_1_23 */ |
40 | >; | ||
41 | fsl,drive-strength = <0>; | ||
42 | fsl,voltage = <1>; | ||
43 | fsl,pull-up = <0>; | ||
44 | }; | ||
45 | |||
46 | mac0_pins_cfa10049: mac0-10049@0 { | ||
47 | reg = <0>; | ||
48 | fsl,pinmux-ids = < | ||
35 | 0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */ | 49 | 0x2153 /* MX28_PAD_SSP2_D5__GPIO_2_21 */ |
36 | 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ | ||
37 | >; | 50 | >; |
38 | fsl,drive-strength = <0>; | 51 | fsl,drive-strength = <0>; |
39 | fsl,voltage = <1>; | 52 | fsl,voltage = <1>; |
40 | fsl,pull-up = <0>; | 53 | fsl,pull-up = <0>; |
41 | }; | 54 | }; |
42 | 55 | ||
43 | hog_pins_cfa10049_pullup: hog-10049-pullup@0 { | 56 | pca_pins_cfa10049: pca-10049@0 { |
44 | reg = <0>; | 57 | reg = <0>; |
45 | fsl,pinmux-ids = < | 58 | fsl,pinmux-ids = < |
46 | 0x2133 /* MX28_PAD_SSP2_D3__GPIO_2_19 */ | 59 | 0x2133 /* MX28_PAD_SSP2_D3__GPIO_2_19 */ |
60 | >; | ||
61 | fsl,drive-strength = <0>; | ||
62 | fsl,voltage = <1>; | ||
63 | fsl,pull-up = <1>; | ||
64 | }; | ||
65 | |||
66 | rotary_pins_cfa10049: rotary-10049@0 { | ||
67 | reg = <0>; | ||
68 | fsl,pinmux-ids = < | ||
47 | 0x3183 /* MX28_PAD_I2C0_SCL__GPIO_3_24 */ | 69 | 0x3183 /* MX28_PAD_I2C0_SCL__GPIO_3_24 */ |
48 | 0x3193 /* MX28_PAD_I2C0_SDA__GPIO_3_25 */ | 70 | 0x3193 /* MX28_PAD_I2C0_SDA__GPIO_3_25 */ |
71 | >; | ||
72 | fsl,drive-strength = <0>; | ||
73 | fsl,voltage = <1>; | ||
74 | fsl,pull-up = <1>; | ||
75 | }; | ||
76 | |||
77 | rotary_btn_pins_cfa10049: rotary-btn-10049@0 { | ||
78 | reg = <0>; | ||
79 | fsl,pinmux-ids = < | ||
49 | 0x31a3 /* MX28_PAD_SAIF_SDATA0__GPIO_3_26 */ | 80 | 0x31a3 /* MX28_PAD_SAIF_SDATA0__GPIO_3_26 */ |
50 | 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ | ||
51 | >; | 81 | >; |
52 | fsl,drive-strength = <0>; | 82 | fsl,drive-strength = <0>; |
53 | fsl,voltage = <1>; | 83 | fsl,voltage = <1>; |
@@ -60,6 +90,7 @@ | |||
60 | 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ | 90 | 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ |
61 | 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ | 91 | 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ |
62 | 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ | 92 | 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ |
93 | 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ | ||
63 | >; | 94 | >; |
64 | fsl,drive-strength = <1>; | 95 | fsl,drive-strength = <1>; |
65 | fsl,voltage = <1>; | 96 | fsl,voltage = <1>; |
@@ -120,6 +151,16 @@ | |||
120 | fsl,pull-up = <0>; | 151 | fsl,pull-up = <0>; |
121 | }; | 152 | }; |
122 | 153 | ||
154 | lcdif_pins_cfa10049_pullup: lcdif-10049-pullup@0 { | ||
155 | reg = <0>; | ||
156 | fsl,pinmux-ids = < | ||
157 | 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ | ||
158 | >; | ||
159 | fsl,drive-strength = <0>; | ||
160 | fsl,voltage = <1>; | ||
161 | fsl,pull-up = <1>; | ||
162 | }; | ||
163 | |||
123 | w1_gpio_pins: w1-gpio@0 { | 164 | w1_gpio_pins: w1-gpio@0 { |
124 | reg = <0>; | 165 | reg = <0>; |
125 | fsl,pinmux-ids = < | 166 | fsl,pinmux-ids = < |
@@ -134,7 +175,8 @@ | |||
134 | lcdif@80030000 { | 175 | lcdif@80030000 { |
135 | pinctrl-names = "default"; | 176 | pinctrl-names = "default"; |
136 | pinctrl-0 = <&lcdif_18bit_pins_cfa10049 | 177 | pinctrl-0 = <&lcdif_18bit_pins_cfa10049 |
137 | &lcdif_pins_cfa10049>; | 178 | &lcdif_pins_cfa10049 |
179 | &lcdif_pins_cfa10049_pullup>; | ||
138 | display = <&display>; | 180 | display = <&display>; |
139 | status = "okay"; | 181 | status = "okay"; |
140 | 182 | ||
@@ -181,6 +223,8 @@ | |||
181 | compatible = "i2c-mux-gpio"; | 223 | compatible = "i2c-mux-gpio"; |
182 | #address-cells = <1>; | 224 | #address-cells = <1>; |
183 | #size-cells = <0>; | 225 | #size-cells = <0>; |
226 | pinctrl-names = "default"; | ||
227 | pinctrl-0 = <&i2cmux_pins_cfa10049>; | ||
184 | mux-gpios = <&gpio1 22 0 &gpio1 23 0>; | 228 | mux-gpios = <&gpio1 22 0 &gpio1 23 0>; |
185 | i2c-parent = <&i2c1>; | 229 | i2c-parent = <&i2c1>; |
186 | 230 | ||
@@ -203,6 +247,8 @@ | |||
203 | 247 | ||
204 | pca9555: pca9555@20 { | 248 | pca9555: pca9555@20 { |
205 | compatible = "nxp,pca9555"; | 249 | compatible = "nxp,pca9555"; |
250 | pinctrl-names = "default"; | ||
251 | pinctrl-0 = <&pca_pins_cfa10049>; | ||
206 | interrupt-parent = <&gpio2>; | 252 | interrupt-parent = <&gpio2>; |
207 | interrupts = <19 0x2>; | 253 | interrupts = <19 0x2>; |
208 | gpio-controller; | 254 | gpio-controller; |
@@ -239,6 +285,8 @@ | |||
239 | 285 | ||
240 | reg_usb1_vbus: usb1_vbus { | 286 | reg_usb1_vbus: usb1_vbus { |
241 | compatible = "regulator-fixed"; | 287 | compatible = "regulator-fixed"; |
288 | pinctrl-names = "default"; | ||
289 | pinctrl-0 = <&usb_pins_cfa10049>; | ||
242 | regulator-name = "usb1_vbus"; | 290 | regulator-name = "usb1_vbus"; |
243 | regulator-min-microvolt = <5000000>; | 291 | regulator-min-microvolt = <5000000>; |
244 | regulator-max-microvolt = <5000000>; | 292 | regulator-max-microvolt = <5000000>; |
@@ -250,7 +298,8 @@ | |||
250 | mac0: ethernet@800f0000 { | 298 | mac0: ethernet@800f0000 { |
251 | phy-mode = "rmii"; | 299 | phy-mode = "rmii"; |
252 | pinctrl-names = "default"; | 300 | pinctrl-names = "default"; |
253 | pinctrl-0 = <&mac0_pins_a>; | 301 | pinctrl-0 = <&mac0_pins_a |
302 | &mac0_pins_cfa10049>; | ||
254 | phy-reset-gpios = <&gpio2 21 0>; | 303 | phy-reset-gpios = <&gpio2 21 0>; |
255 | phy-reset-duration = <100>; | 304 | phy-reset-duration = <100>; |
256 | status = "okay"; | 305 | status = "okay"; |
@@ -320,6 +369,8 @@ | |||
320 | 369 | ||
321 | gpio_keys { | 370 | gpio_keys { |
322 | compatible = "gpio-keys"; | 371 | compatible = "gpio-keys"; |
372 | pinctrl-names = "default"; | ||
373 | pinctrl-0 = <&rotary_btn_pins_cfa10049>; | ||
323 | #address-cells = <1>; | 374 | #address-cells = <1>; |
324 | #size-cells = <0>; | 375 | #size-cells = <0>; |
325 | 376 | ||
@@ -333,6 +384,8 @@ | |||
333 | 384 | ||
334 | rotary { | 385 | rotary { |
335 | compatible = "rotary-encoder"; | 386 | compatible = "rotary-encoder"; |
387 | pinctrl-names = "default"; | ||
388 | pinctrl-0 = <&rotary_pins_cfa10049>; | ||
336 | gpios = <&gpio3 24 1>, <&gpio3 25 1>; | 389 | gpios = <&gpio3 24 1>, <&gpio3 25 1>; |
337 | linux,axis = <1>; /* REL_Y */ | 390 | linux,axis = <1>; /* REL_Y */ |
338 | rotary-encoder,relative-axis; | 391 | rotary-encoder,relative-axis; |
diff --git a/arch/arm/boot/dts/imx28-cfa10055.dts b/arch/arm/boot/dts/imx28-cfa10055.dts index 158111244122..171bcbe1ec4b 100644 --- a/arch/arm/boot/dts/imx28-cfa10055.dts +++ b/arch/arm/boot/dts/imx28-cfa10055.dts | |||
@@ -23,36 +23,13 @@ | |||
23 | apb@80000000 { | 23 | apb@80000000 { |
24 | apbh@80000000 { | 24 | apbh@80000000 { |
25 | pinctrl@80018000 { | 25 | pinctrl@80018000 { |
26 | pinctrl-names = "default", "default"; | ||
27 | pinctrl-1 = <&hog_pins_cfa10055 | ||
28 | &hog_pins_cfa10055_pullup>; | ||
29 | |||
30 | hog_pins_cfa10055: hog-10055@0 { | ||
31 | reg = <0>; | ||
32 | fsl,pinmux-ids = < | ||
33 | 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ | ||
34 | >; | ||
35 | fsl,drive-strength = <0>; | ||
36 | fsl,voltage = <1>; | ||
37 | fsl,pull-up = <0>; | ||
38 | }; | ||
39 | |||
40 | hog_pins_cfa10055_pullup: hog-10055-pullup@0 { | ||
41 | reg = <0>; | ||
42 | fsl,pinmux-ids = < | ||
43 | 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ | ||
44 | >; | ||
45 | fsl,drive-strength = <0>; | ||
46 | fsl,voltage = <1>; | ||
47 | fsl,pull-up = <1>; | ||
48 | }; | ||
49 | |||
50 | spi2_pins_cfa10055: spi2-cfa10055@0 { | 26 | spi2_pins_cfa10055: spi2-cfa10055@0 { |
51 | reg = <0>; | 27 | reg = <0>; |
52 | fsl,pinmux-ids = < | 28 | fsl,pinmux-ids = < |
53 | 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ | 29 | 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ |
54 | 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ | 30 | 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ |
55 | 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ | 31 | 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ |
32 | 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ | ||
56 | >; | 33 | >; |
57 | fsl,drive-strength = <1>; | 34 | fsl,drive-strength = <1>; |
58 | fsl,voltage = <1>; | 35 | fsl,voltage = <1>; |
@@ -98,12 +75,23 @@ | |||
98 | fsl,voltage = <1>; | 75 | fsl,voltage = <1>; |
99 | fsl,pull-up = <0>; | 76 | fsl,pull-up = <0>; |
100 | }; | 77 | }; |
78 | |||
79 | lcdif_pins_cfa10055_pullup: lcdif-10055-pullup@0 { | ||
80 | reg = <0>; | ||
81 | fsl,pinmux-ids = < | ||
82 | 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ | ||
83 | >; | ||
84 | fsl,drive-strength = <0>; | ||
85 | fsl,voltage = <1>; | ||
86 | fsl,pull-up = <1>; | ||
87 | }; | ||
101 | }; | 88 | }; |
102 | 89 | ||
103 | lcdif@80030000 { | 90 | lcdif@80030000 { |
104 | pinctrl-names = "default"; | 91 | pinctrl-names = "default"; |
105 | pinctrl-0 = <&lcdif_18bit_pins_cfa10055 | 92 | pinctrl-0 = <&lcdif_18bit_pins_cfa10055 |
106 | &lcdif_pins_cfa10055>; | 93 | &lcdif_pins_cfa10055 |
94 | &lcdif_pins_cfa10055_pullup>; | ||
107 | display = <&display>; | 95 | display = <&display>; |
108 | status = "okay"; | 96 | status = "okay"; |
109 | 97 | ||
diff --git a/arch/arm/boot/dts/imx28-cfa10056.dts b/arch/arm/boot/dts/imx28-cfa10056.dts new file mode 100644 index 000000000000..b45dd0e4ee57 --- /dev/null +++ b/arch/arm/boot/dts/imx28-cfa10056.dts | |||
@@ -0,0 +1,119 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Free Electrons | ||
3 | * | ||
4 | * 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 | * Version 2 or later at the following locations: | ||
7 | * | ||
8 | * http://www.opensource.org/licenses/gpl-license.html | ||
9 | * http://www.gnu.org/copyleft/gpl.html | ||
10 | */ | ||
11 | |||
12 | /* | ||
13 | * The CFA-10055 is an expansion board for the CFA-10036 module and | ||
14 | * CFA-10037, thus we need to include the CFA-10037 DTS. | ||
15 | */ | ||
16 | /include/ "imx28-cfa10037.dts" | ||
17 | |||
18 | / { | ||
19 | model = "Crystalfontz CFA-10056 Board"; | ||
20 | compatible = "crystalfontz,cfa10056", "crystalfontz,cfa10037", "crystalfontz,cfa10036", "fsl,imx28"; | ||
21 | |||
22 | apb@80000000 { | ||
23 | apbh@80000000 { | ||
24 | pinctrl@80018000 { | ||
25 | spi2_pins_cfa10056: spi2-cfa10056@0 { | ||
26 | reg = <0>; | ||
27 | fsl,pinmux-ids = < | ||
28 | 0x2103 /* MX28_PAD_SSP2_SCK__GPIO_2_16 */ | ||
29 | 0x2113 /* MX28_PAD_SSP2_CMD__GPIO_2_17 */ | ||
30 | 0x2123 /* MX28_PAD_SSP2_D0__GPIO_2_18 */ | ||
31 | 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ | ||
32 | >; | ||
33 | fsl,drive-strength = <1>; | ||
34 | fsl,voltage = <1>; | ||
35 | fsl,pull-up = <1>; | ||
36 | }; | ||
37 | |||
38 | lcdif_pins_cfa10056: lcdif-10056@0 { | ||
39 | reg = <0>; | ||
40 | fsl,pinmux-ids = < | ||
41 | 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ | ||
42 | 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ | ||
43 | 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ | ||
44 | 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ | ||
45 | >; | ||
46 | fsl,drive-strength = <0>; | ||
47 | fsl,voltage = <1>; | ||
48 | fsl,pull-up = <0>; | ||
49 | }; | ||
50 | |||
51 | lcdif_pins_cfa10056_pullup: lcdif-10056-pullup@0 { | ||
52 | reg = <0>; | ||
53 | fsl,pinmux-ids = < | ||
54 | 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ | ||
55 | >; | ||
56 | fsl,drive-strength = <0>; | ||
57 | fsl,voltage = <1>; | ||
58 | fsl,pull-up = <1>; | ||
59 | }; | ||
60 | }; | ||
61 | |||
62 | lcdif@80030000 { | ||
63 | pinctrl-names = "default"; | ||
64 | pinctrl-0 = <&lcdif_24bit_pins_a | ||
65 | &lcdif_pins_cfa10056 | ||
66 | &lcdif_pins_cfa10056_pullup >; | ||
67 | display = <&display>; | ||
68 | status = "okay"; | ||
69 | |||
70 | display: display { | ||
71 | bits-per-pixel = <32>; | ||
72 | bus-width = <24>; | ||
73 | |||
74 | display-timings { | ||
75 | native-mode = <&timing0>; | ||
76 | timing0: timing0 { | ||
77 | clock-frequency = <32000000>; | ||
78 | hactive = <480>; | ||
79 | vactive = <800>; | ||
80 | hback-porch = <2>; | ||
81 | hfront-porch = <2>; | ||
82 | vback-porch = <2>; | ||
83 | vfront-porch = <2>; | ||
84 | hsync-len = <5>; | ||
85 | vsync-len = <5>; | ||
86 | hsync-active = <0>; | ||
87 | vsync-active = <0>; | ||
88 | de-active = <1>; | ||
89 | pixelclk-active = <1>; | ||
90 | }; | ||
91 | }; | ||
92 | }; | ||
93 | }; | ||
94 | }; | ||
95 | }; | ||
96 | |||
97 | spi2 { | ||
98 | compatible = "spi-gpio"; | ||
99 | pinctrl-names = "default"; | ||
100 | pinctrl-0 = <&spi2_pins_cfa10056>; | ||
101 | status = "okay"; | ||
102 | gpio-sck = <&gpio2 16 0>; | ||
103 | gpio-mosi = <&gpio2 17 0>; | ||
104 | gpio-miso = <&gpio2 18 0>; | ||
105 | cs-gpios = <&gpio3 5 0>; | ||
106 | num-chipselects = <1>; | ||
107 | #address-cells = <1>; | ||
108 | #size-cells = <0>; | ||
109 | |||
110 | hx8369: hx8369@0 { | ||
111 | compatible = "himax,hx8369a", "himax,hx8369"; | ||
112 | reg = <0>; | ||
113 | spi-max-frequency = <100000>; | ||
114 | spi-cpol; | ||
115 | spi-cpha; | ||
116 | gpios-reset = <&gpio3 30 0>; | ||
117 | }; | ||
118 | }; | ||
119 | }; | ||
diff --git a/arch/arm/boot/dts/imx28-cfa10057.dts b/arch/arm/boot/dts/imx28-cfa10057.dts index 2da713cdb42a..0333c0532f28 100644 --- a/arch/arm/boot/dts/imx28-cfa10057.dts +++ b/arch/arm/boot/dts/imx28-cfa10057.dts | |||
@@ -23,35 +23,16 @@ | |||
23 | apb@80000000 { | 23 | apb@80000000 { |
24 | apbh@80000000 { | 24 | apbh@80000000 { |
25 | pinctrl@80018000 { | 25 | pinctrl@80018000 { |
26 | pinctrl-names = "default", "default"; | 26 | usb_pins_cfa10057: usb-10057@0 { |
27 | pinctrl-1 = <&hog_pins_cfa10057 | ||
28 | &hog_pins_cfa10057_pullup>; | ||
29 | |||
30 | hog_pins_cfa10057: hog-10057@0 { | ||
31 | reg = <0>; | 27 | reg = <0>; |
32 | fsl,pinmux-ids = < | 28 | fsl,pinmux-ids = < |
33 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ | 29 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ |
34 | 0x3053 /* MX28_PAD_AUART1_TX__GPIO_3_5 */ | ||
35 | >; | 30 | >; |
36 | fsl,drive-strength = <0>; | 31 | fsl,drive-strength = <0>; |
37 | fsl,voltage = <1>; | 32 | fsl,voltage = <1>; |
38 | fsl,pull-up = <0>; | 33 | fsl,pull-up = <0>; |
39 | }; | 34 | }; |
40 | 35 | ||
41 | hog_pins_cfa10057_pullup: hog-10057-pullup@0 { | ||
42 | reg = <0>; | ||
43 | fsl,pinmux-ids = < | ||
44 | 0x2133 /* MX28_PAD_SSP2_D3__GPIO_2_19 */ | ||
45 | 0x3183 /* MX28_PAD_I2C0_SCL__GPIO_3_24 */ | ||
46 | 0x3193 /* MX28_PAD_I2C0_SDA__GPIO_3_25 */ | ||
47 | 0x31a3 /* MX28_PAD_SAIF_SDATA0__GPIO_3_26 */ | ||
48 | 0x31e3 /* MX28_PAD_LCD_RESET__GPIO_3_30 */ | ||
49 | >; | ||
50 | fsl,drive-strength = <0>; | ||
51 | fsl,voltage = <1>; | ||
52 | fsl,pull-up = <1>; | ||
53 | }; | ||
54 | |||
55 | lcdif_18bit_pins_cfa10057: lcdif-18bit@0 { | 36 | lcdif_18bit_pins_cfa10057: lcdif-18bit@0 { |
56 | reg = <0>; | 37 | reg = <0>; |
57 | fsl,pinmux-ids = < | 38 | fsl,pinmux-ids = < |
@@ -164,6 +145,8 @@ | |||
164 | 145 | ||
165 | reg_usb1_vbus: usb1_vbus { | 146 | reg_usb1_vbus: usb1_vbus { |
166 | compatible = "regulator-fixed"; | 147 | compatible = "regulator-fixed"; |
148 | pinctrl-names = "default"; | ||
149 | pinctrl-0 = <&usb_pins_cfa10057>; | ||
167 | regulator-name = "usb1_vbus"; | 150 | regulator-name = "usb1_vbus"; |
168 | regulator-min-microvolt = <5000000>; | 151 | regulator-min-microvolt = <5000000>; |
169 | regulator-max-microvolt = <5000000>; | 152 | regulator-max-microvolt = <5000000>; |
diff --git a/arch/arm/boot/dts/imx28-cfa10058.dts b/arch/arm/boot/dts/imx28-cfa10058.dts new file mode 100644 index 000000000000..64c64c55a82a --- /dev/null +++ b/arch/arm/boot/dts/imx28-cfa10058.dts | |||
@@ -0,0 +1,141 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Crystalfontz America, Inc. | ||
3 | * Copyright 2013 Free Electrons | ||
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 | /* | ||
14 | * The CFA-10058 is an expansion board for the CFA-10036 module, thus we | ||
15 | * need to include the CFA-10036 DTS. | ||
16 | */ | ||
17 | /include/ "imx28-cfa10036.dts" | ||
18 | |||
19 | / { | ||
20 | model = "Crystalfontz CFA-10058 Board"; | ||
21 | compatible = "crystalfontz,cfa10058", "crystalfontz,cfa10036", "fsl,imx28"; | ||
22 | |||
23 | apb@80000000 { | ||
24 | apbh@80000000 { | ||
25 | pinctrl@80018000 { | ||
26 | usb_pins_cfa10058: usb-10058@0 { | ||
27 | reg = <0>; | ||
28 | fsl,pinmux-ids = < | ||
29 | 0x0073 /* MX28_PAD_GPMI_D7__GPIO_0_7 */ | ||
30 | >; | ||
31 | fsl,drive-strength = <0>; | ||
32 | fsl,voltage = <1>; | ||
33 | fsl,pull-up = <0>; | ||
34 | }; | ||
35 | |||
36 | lcdif_pins_cfa10058: lcdif-10058@0 { | ||
37 | reg = <0>; | ||
38 | fsl,pinmux-ids = < | ||
39 | 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ | ||
40 | 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ | ||
41 | 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ | ||
42 | 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ | ||
43 | >; | ||
44 | fsl,drive-strength = <0>; | ||
45 | fsl,voltage = <1>; | ||
46 | fsl,pull-up = <0>; | ||
47 | }; | ||
48 | }; | ||
49 | |||
50 | lcdif@80030000 { | ||
51 | pinctrl-names = "default"; | ||
52 | pinctrl-0 = <&lcdif_24bit_pins_a | ||
53 | &lcdif_pins_cfa10058>; | ||
54 | display = <&display>; | ||
55 | status = "okay"; | ||
56 | |||
57 | display: display { | ||
58 | bits-per-pixel = <32>; | ||
59 | bus-width = <24>; | ||
60 | |||
61 | display-timings { | ||
62 | native-mode = <&timing0>; | ||
63 | timing0: timing0 { | ||
64 | clock-frequency = <30000000>; | ||
65 | hactive = <800>; | ||
66 | vactive = <480>; | ||
67 | hback-porch = <40>; | ||
68 | hfront-porch = <40>; | ||
69 | vback-porch = <13>; | ||
70 | vfront-porch = <29>; | ||
71 | hsync-len = <8>; | ||
72 | vsync-len = <8>; | ||
73 | hsync-active = <0>; | ||
74 | vsync-active = <0>; | ||
75 | de-active = <1>; | ||
76 | pixelclk-active = <1>; | ||
77 | }; | ||
78 | }; | ||
79 | }; | ||
80 | }; | ||
81 | }; | ||
82 | |||
83 | apbx@80040000 { | ||
84 | lradc@80050000 { | ||
85 | fsl,lradc-touchscreen-wires = <4>; | ||
86 | status = "okay"; | ||
87 | }; | ||
88 | |||
89 | pwm: pwm@80064000 { | ||
90 | pinctrl-names = "default"; | ||
91 | pinctrl-0 = <&pwm3_pins_b>; | ||
92 | status = "okay"; | ||
93 | }; | ||
94 | |||
95 | usbphy1: usbphy@8007e000 { | ||
96 | status = "okay"; | ||
97 | }; | ||
98 | }; | ||
99 | }; | ||
100 | |||
101 | ahb@80080000 { | ||
102 | usb1: usb@80090000 { | ||
103 | vbus-supply = <®_usb1_vbus>; | ||
104 | pinctrl-0 = <&usbphy1_pins_a>; | ||
105 | pinctrl-names = "default"; | ||
106 | status = "okay"; | ||
107 | }; | ||
108 | }; | ||
109 | |||
110 | regulators { | ||
111 | compatible = "simple-bus"; | ||
112 | |||
113 | reg_usb1_vbus: usb1_vbus { | ||
114 | pinctrl-names = "default"; | ||
115 | pinctrl-0 = <&usb_pins_cfa10058>; | ||
116 | compatible = "regulator-fixed"; | ||
117 | regulator-name = "usb1_vbus"; | ||
118 | regulator-min-microvolt = <5000000>; | ||
119 | regulator-max-microvolt = <5000000>; | ||
120 | gpio = <&gpio0 7 1>; | ||
121 | }; | ||
122 | }; | ||
123 | |||
124 | ahb@80080000 { | ||
125 | mac0: ethernet@800f0000 { | ||
126 | phy-mode = "rmii"; | ||
127 | pinctrl-names = "default"; | ||
128 | pinctrl-0 = <&mac0_pins_a>; | ||
129 | phy-reset-gpios = <&gpio2 21 0>; | ||
130 | phy-reset-duration = <100>; | ||
131 | status = "okay"; | ||
132 | }; | ||
133 | }; | ||
134 | |||
135 | backlight { | ||
136 | compatible = "pwm-backlight"; | ||
137 | pwms = <&pwm 3 5000000>; | ||
138 | brightness-levels = <0 4 8 16 32 64 128 255>; | ||
139 | default-brightness-level = <6>; | ||
140 | }; | ||
141 | }; | ||
diff --git a/arch/arm/boot/dts/imx28-m28evk.dts b/arch/arm/boot/dts/imx28-m28evk.dts index 44d9da57736e..0d322a2bebaf 100644 --- a/arch/arm/boot/dts/imx28-m28evk.dts +++ b/arch/arm/boot/dts/imx28-m28evk.dts | |||
@@ -235,6 +235,12 @@ | |||
235 | pinctrl-0 = <&auart2_2pins_b>; | 235 | pinctrl-0 = <&auart2_2pins_b>; |
236 | status = "okay"; | 236 | status = "okay"; |
237 | }; | 237 | }; |
238 | |||
239 | pwm: pwm@80064000 { | ||
240 | pinctrl-names = "default"; | ||
241 | pinctrl-0 = <&pwm4_pins_a>; | ||
242 | status = "okay"; | ||
243 | }; | ||
238 | }; | 244 | }; |
239 | }; | 245 | }; |
240 | 246 | ||
@@ -270,6 +276,13 @@ | |||
270 | }; | 276 | }; |
271 | }; | 277 | }; |
272 | 278 | ||
279 | backlight { | ||
280 | compatible = "pwm-backlight"; | ||
281 | pwms = <&pwm 4 5000000>; | ||
282 | brightness-levels = <0 4 8 16 32 64 128 255>; | ||
283 | default-brightness-level = <6>; | ||
284 | }; | ||
285 | |||
273 | regulators { | 286 | regulators { |
274 | compatible = "simple-bus"; | 287 | compatible = "simple-bus"; |
275 | 288 | ||
diff --git a/arch/arm/boot/dts/imx28.dtsi b/arch/arm/boot/dts/imx28.dtsi index 9524a0571281..7363fded95ee 100644 --- a/arch/arm/boot/dts/imx28.dtsi +++ b/arch/arm/boot/dts/imx28.dtsi | |||
@@ -15,6 +15,8 @@ | |||
15 | interrupt-parent = <&icoll>; | 15 | interrupt-parent = <&icoll>; |
16 | 16 | ||
17 | aliases { | 17 | aliases { |
18 | ethernet0 = &mac0; | ||
19 | ethernet1 = &mac1; | ||
18 | gpio0 = &gpio0; | 20 | gpio0 = &gpio0; |
19 | gpio1 = &gpio1; | 21 | gpio1 = &gpio1; |
20 | gpio2 = &gpio2; | 22 | gpio2 = &gpio2; |
@@ -27,8 +29,8 @@ | |||
27 | serial2 = &auart2; | 29 | serial2 = &auart2; |
28 | serial3 = &auart3; | 30 | serial3 = &auart3; |
29 | serial4 = &auart4; | 31 | serial4 = &auart4; |
30 | ethernet0 = &mac0; | 32 | spi0 = &ssp1; |
31 | ethernet1 = &mac1; | 33 | spi1 = &ssp2; |
32 | }; | 34 | }; |
33 | 35 | ||
34 | cpus { | 36 | cpus { |
@@ -62,9 +64,9 @@ | |||
62 | reg = <0x80000000 0x2000>; | 64 | reg = <0x80000000 0x2000>; |
63 | }; | 65 | }; |
64 | 66 | ||
65 | hsadc@80002000 { | 67 | hsadc: hsadc@80002000 { |
66 | reg = <0x80002000 0x2000>; | 68 | reg = <0x80002000 0x2000>; |
67 | interrupts = <13 87>; | 69 | interrupts = <13>; |
68 | dmas = <&dma_apbh 12>; | 70 | dmas = <&dma_apbh 12>; |
69 | dma-names = "rx"; | 71 | dma-names = "rx"; |
70 | status = "disabled"; | 72 | status = "disabled"; |
@@ -86,25 +88,24 @@ | |||
86 | clocks = <&clks 25>; | 88 | clocks = <&clks 25>; |
87 | }; | 89 | }; |
88 | 90 | ||
89 | perfmon@80006000 { | 91 | perfmon: perfmon@80006000 { |
90 | reg = <0x80006000 0x800>; | 92 | reg = <0x80006000 0x800>; |
91 | interrupts = <27>; | 93 | interrupts = <27>; |
92 | status = "disabled"; | 94 | status = "disabled"; |
93 | }; | 95 | }; |
94 | 96 | ||
95 | gpmi-nand@8000c000 { | 97 | gpmi: gpmi-nand@8000c000 { |
96 | compatible = "fsl,imx28-gpmi-nand"; | 98 | compatible = "fsl,imx28-gpmi-nand"; |
97 | #address-cells = <1>; | 99 | #address-cells = <1>; |
98 | #size-cells = <1>; | 100 | #size-cells = <1>; |
99 | reg = <0x8000c000 0x2000>, <0x8000a000 0x2000>; | 101 | reg = <0x8000c000 0x2000>, <0x8000a000 0x2000>; |
100 | reg-names = "gpmi-nand", "bch"; | 102 | reg-names = "gpmi-nand", "bch"; |
101 | interrupts = <88>, <41>; | 103 | interrupts = <41>; |
102 | interrupt-names = "gpmi-dma", "bch"; | 104 | interrupt-names = "bch"; |
103 | clocks = <&clks 50>; | 105 | clocks = <&clks 50>; |
104 | clock-names = "gpmi_io"; | 106 | clock-names = "gpmi_io"; |
105 | dmas = <&dma_apbh 4>; | 107 | dmas = <&dma_apbh 4>; |
106 | dma-names = "rx-tx"; | 108 | dma-names = "rx-tx"; |
107 | fsl,gpmi-dma-channel = <4>; | ||
108 | status = "disabled"; | 109 | status = "disabled"; |
109 | }; | 110 | }; |
110 | 111 | ||
@@ -112,11 +113,10 @@ | |||
112 | #address-cells = <1>; | 113 | #address-cells = <1>; |
113 | #size-cells = <0>; | 114 | #size-cells = <0>; |
114 | reg = <0x80010000 0x2000>; | 115 | reg = <0x80010000 0x2000>; |
115 | interrupts = <96 82>; | 116 | interrupts = <96>; |
116 | clocks = <&clks 46>; | 117 | clocks = <&clks 46>; |
117 | dmas = <&dma_apbh 0>; | 118 | dmas = <&dma_apbh 0>; |
118 | dma-names = "rx-tx"; | 119 | dma-names = "rx-tx"; |
119 | fsl,ssp-dma-channel = <0>; | ||
120 | status = "disabled"; | 120 | status = "disabled"; |
121 | }; | 121 | }; |
122 | 122 | ||
@@ -124,11 +124,10 @@ | |||
124 | #address-cells = <1>; | 124 | #address-cells = <1>; |
125 | #size-cells = <0>; | 125 | #size-cells = <0>; |
126 | reg = <0x80012000 0x2000>; | 126 | reg = <0x80012000 0x2000>; |
127 | interrupts = <97 83>; | 127 | interrupts = <97>; |
128 | clocks = <&clks 47>; | 128 | clocks = <&clks 47>; |
129 | dmas = <&dma_apbh 1>; | 129 | dmas = <&dma_apbh 1>; |
130 | dma-names = "rx-tx"; | 130 | dma-names = "rx-tx"; |
131 | fsl,ssp-dma-channel = <1>; | ||
132 | status = "disabled"; | 131 | status = "disabled"; |
133 | }; | 132 | }; |
134 | 133 | ||
@@ -136,11 +135,10 @@ | |||
136 | #address-cells = <1>; | 135 | #address-cells = <1>; |
137 | #size-cells = <0>; | 136 | #size-cells = <0>; |
138 | reg = <0x80014000 0x2000>; | 137 | reg = <0x80014000 0x2000>; |
139 | interrupts = <98 84>; | 138 | interrupts = <98>; |
140 | clocks = <&clks 48>; | 139 | clocks = <&clks 48>; |
141 | dmas = <&dma_apbh 2>; | 140 | dmas = <&dma_apbh 2>; |
142 | dma-names = "rx-tx"; | 141 | dma-names = "rx-tx"; |
143 | fsl,ssp-dma-channel = <2>; | ||
144 | status = "disabled"; | 142 | status = "disabled"; |
145 | }; | 143 | }; |
146 | 144 | ||
@@ -148,15 +146,14 @@ | |||
148 | #address-cells = <1>; | 146 | #address-cells = <1>; |
149 | #size-cells = <0>; | 147 | #size-cells = <0>; |
150 | reg = <0x80016000 0x2000>; | 148 | reg = <0x80016000 0x2000>; |
151 | interrupts = <99 85>; | 149 | interrupts = <99>; |
152 | clocks = <&clks 49>; | 150 | clocks = <&clks 49>; |
153 | dmas = <&dma_apbh 3>; | 151 | dmas = <&dma_apbh 3>; |
154 | dma-names = "rx-tx"; | 152 | dma-names = "rx-tx"; |
155 | fsl,ssp-dma-channel = <3>; | ||
156 | status = "disabled"; | 153 | status = "disabled"; |
157 | }; | 154 | }; |
158 | 155 | ||
159 | pinctrl@80018000 { | 156 | pinctrl: pinctrl@80018000 { |
160 | #address-cells = <1>; | 157 | #address-cells = <1>; |
161 | #size-cells = <0>; | 158 | #size-cells = <0>; |
162 | compatible = "fsl,imx28-pinctrl", "simple-bus"; | 159 | compatible = "fsl,imx28-pinctrl", "simple-bus"; |
@@ -521,6 +518,18 @@ | |||
521 | fsl,pull-up = <1>; | 518 | fsl,pull-up = <1>; |
522 | }; | 519 | }; |
523 | 520 | ||
521 | saif0_pins_b: saif0@1 { | ||
522 | reg = <1>; | ||
523 | fsl,pinmux-ids = < | ||
524 | 0x3150 /* MX28_PAD_SAIF0_LRCLK__SAIF0_LRCLK */ | ||
525 | 0x3160 /* MX28_PAD_SAIF0_BITCLK__SAIF0_BITCLK */ | ||
526 | 0x3170 /* MX28_PAD_SAIF0_SDATA0__SAIF0_SDATA0 */ | ||
527 | >; | ||
528 | fsl,drive-strength = <2>; | ||
529 | fsl,voltage = <1>; | ||
530 | fsl,pull-up = <1>; | ||
531 | }; | ||
532 | |||
524 | saif1_pins_a: saif1@0 { | 533 | saif1_pins_a: saif1@0 { |
525 | reg = <0>; | 534 | reg = <0>; |
526 | fsl,pinmux-ids = < | 535 | fsl,pinmux-ids = < |
@@ -639,6 +648,19 @@ | |||
639 | fsl,pull-up = <0>; | 648 | fsl,pull-up = <0>; |
640 | }; | 649 | }; |
641 | 650 | ||
651 | lcdif_sync_pins_a: lcdif-sync@0 { | ||
652 | reg = <0>; | ||
653 | fsl,pinmux-ids = < | ||
654 | 0x11a1 /* MX28_PAD_LCD_RS__LCD_DOTCLK */ | ||
655 | 0x11b1 /* MX28_PAD_LCD_CS__LCD_ENABLE */ | ||
656 | 0x1181 /* MX28_PAD_LCD_RD_E__LCD_VSYNC */ | ||
657 | 0x1191 /* MX28_PAD_LCD_WR_RWN__LCD_HSYNC */ | ||
658 | >; | ||
659 | fsl,drive-strength = <0>; | ||
660 | fsl,voltage = <1>; | ||
661 | fsl,pull-up = <0>; | ||
662 | }; | ||
663 | |||
642 | can0_pins_a: can0@0 { | 664 | can0_pins_a: can0@0 { |
643 | reg = <0>; | 665 | reg = <0>; |
644 | fsl,pinmux-ids = < | 666 | fsl,pinmux-ids = < |
@@ -674,6 +696,21 @@ | |||
674 | fsl,pull-up = <1>; | 696 | fsl,pull-up = <1>; |
675 | }; | 697 | }; |
676 | 698 | ||
699 | spi3_pins_a: spi3@0 { | ||
700 | reg = <0>; | ||
701 | fsl,pinmux-ids = < | ||
702 | 0x3082 /* MX28_PAD_AUART2_RX__SSP3_D4 */ | ||
703 | 0x3092 /* MX28_PAD_AUART2_TX__SSP3_D5 */ | ||
704 | 0x2180 /* MX28_PAD_SSP3_SCK__SSP3_SCK */ | ||
705 | 0x2190 /* MX28_PAD_SSP3_MOSI__SSP3_CMD */ | ||
706 | 0x21A0 /* MX28_PAD_SSP3_MISO__SSP3_D0 */ | ||
707 | 0x21B0 /* MX28_PAD_SSP3_SS0__SSP3_D3 */ | ||
708 | >; | ||
709 | fsl,drive-strength = <1>; | ||
710 | fsl,voltage = <1>; | ||
711 | fsl,pull-up = <0>; | ||
712 | }; | ||
713 | |||
677 | usbphy0_pins_a: usbphy0@0 { | 714 | usbphy0_pins_a: usbphy0@0 { |
678 | reg = <0>; | 715 | reg = <0>; |
679 | fsl,pinmux-ids = < | 716 | fsl,pinmux-ids = < |
@@ -705,14 +742,14 @@ | |||
705 | }; | 742 | }; |
706 | }; | 743 | }; |
707 | 744 | ||
708 | digctl@8001c000 { | 745 | digctl: digctl@8001c000 { |
709 | compatible = "fsl,imx28-digctl", "fsl,imx23-digctl"; | 746 | compatible = "fsl,imx28-digctl", "fsl,imx23-digctl"; |
710 | reg = <0x8001c000 0x2000>; | 747 | reg = <0x8001c000 0x2000>; |
711 | interrupts = <89>; | 748 | interrupts = <89>; |
712 | status = "disabled"; | 749 | status = "disabled"; |
713 | }; | 750 | }; |
714 | 751 | ||
715 | etm@80022000 { | 752 | etm: etm@80022000 { |
716 | reg = <0x80022000 0x2000>; | 753 | reg = <0x80022000 0x2000>; |
717 | status = "disabled"; | 754 | status = "disabled"; |
718 | }; | 755 | }; |
@@ -733,19 +770,19 @@ | |||
733 | clocks = <&clks 26>; | 770 | clocks = <&clks 26>; |
734 | }; | 771 | }; |
735 | 772 | ||
736 | dcp@80028000 { | 773 | dcp: dcp@80028000 { |
737 | reg = <0x80028000 0x2000>; | 774 | reg = <0x80028000 0x2000>; |
738 | interrupts = <52 53 54>; | 775 | interrupts = <52 53 54>; |
739 | compatible = "fsl-dcp"; | 776 | compatible = "fsl-dcp"; |
740 | }; | 777 | }; |
741 | 778 | ||
742 | pxp@8002a000 { | 779 | pxp: pxp@8002a000 { |
743 | reg = <0x8002a000 0x2000>; | 780 | reg = <0x8002a000 0x2000>; |
744 | interrupts = <39>; | 781 | interrupts = <39>; |
745 | status = "disabled"; | 782 | status = "disabled"; |
746 | }; | 783 | }; |
747 | 784 | ||
748 | ocotp@8002c000 { | 785 | ocotp: ocotp@8002c000 { |
749 | compatible = "fsl,ocotp"; | 786 | compatible = "fsl,ocotp"; |
750 | reg = <0x8002c000 0x2000>; | 787 | reg = <0x8002c000 0x2000>; |
751 | status = "disabled"; | 788 | status = "disabled"; |
@@ -756,10 +793,10 @@ | |||
756 | status = "disabled"; | 793 | status = "disabled"; |
757 | }; | 794 | }; |
758 | 795 | ||
759 | lcdif@80030000 { | 796 | lcdif: lcdif@80030000 { |
760 | compatible = "fsl,imx28-lcdif"; | 797 | compatible = "fsl,imx28-lcdif"; |
761 | reg = <0x80030000 0x2000>; | 798 | reg = <0x80030000 0x2000>; |
762 | interrupts = <38 86>; | 799 | interrupts = <38>; |
763 | clocks = <&clks 55>; | 800 | clocks = <&clks 55>; |
764 | dmas = <&dma_apbh 13>; | 801 | dmas = <&dma_apbh 13>; |
765 | dma-names = "rx"; | 802 | dma-names = "rx"; |
@@ -784,41 +821,41 @@ | |||
784 | status = "disabled"; | 821 | status = "disabled"; |
785 | }; | 822 | }; |
786 | 823 | ||
787 | simdbg@8003c000 { | 824 | simdbg: simdbg@8003c000 { |
788 | reg = <0x8003c000 0x200>; | 825 | reg = <0x8003c000 0x200>; |
789 | status = "disabled"; | 826 | status = "disabled"; |
790 | }; | 827 | }; |
791 | 828 | ||
792 | simgpmisel@8003c200 { | 829 | simgpmisel: simgpmisel@8003c200 { |
793 | reg = <0x8003c200 0x100>; | 830 | reg = <0x8003c200 0x100>; |
794 | status = "disabled"; | 831 | status = "disabled"; |
795 | }; | 832 | }; |
796 | 833 | ||
797 | simsspsel@8003c300 { | 834 | simsspsel: simsspsel@8003c300 { |
798 | reg = <0x8003c300 0x100>; | 835 | reg = <0x8003c300 0x100>; |
799 | status = "disabled"; | 836 | status = "disabled"; |
800 | }; | 837 | }; |
801 | 838 | ||
802 | simmemsel@8003c400 { | 839 | simmemsel: simmemsel@8003c400 { |
803 | reg = <0x8003c400 0x100>; | 840 | reg = <0x8003c400 0x100>; |
804 | status = "disabled"; | 841 | status = "disabled"; |
805 | }; | 842 | }; |
806 | 843 | ||
807 | gpiomon@8003c500 { | 844 | gpiomon: gpiomon@8003c500 { |
808 | reg = <0x8003c500 0x100>; | 845 | reg = <0x8003c500 0x100>; |
809 | status = "disabled"; | 846 | status = "disabled"; |
810 | }; | 847 | }; |
811 | 848 | ||
812 | simenet@8003c700 { | 849 | simenet: simenet@8003c700 { |
813 | reg = <0x8003c700 0x100>; | 850 | reg = <0x8003c700 0x100>; |
814 | status = "disabled"; | 851 | status = "disabled"; |
815 | }; | 852 | }; |
816 | 853 | ||
817 | armjtag@8003c800 { | 854 | armjtag: armjtag@8003c800 { |
818 | reg = <0x8003c800 0x100>; | 855 | reg = <0x8003c800 0x100>; |
819 | status = "disabled"; | 856 | status = "disabled"; |
820 | }; | 857 | }; |
821 | }; | 858 | }; |
822 | 859 | ||
823 | apbx@80040000 { | 860 | apbx@80040000 { |
824 | compatible = "simple-bus"; | 861 | compatible = "simple-bus"; |
@@ -836,16 +873,15 @@ | |||
836 | saif0: saif@80042000 { | 873 | saif0: saif@80042000 { |
837 | compatible = "fsl,imx28-saif"; | 874 | compatible = "fsl,imx28-saif"; |
838 | reg = <0x80042000 0x2000>; | 875 | reg = <0x80042000 0x2000>; |
839 | interrupts = <59 80>; | 876 | interrupts = <59>; |
840 | #clock-cells = <0>; | 877 | #clock-cells = <0>; |
841 | clocks = <&clks 53>; | 878 | clocks = <&clks 53>; |
842 | dmas = <&dma_apbx 4>; | 879 | dmas = <&dma_apbx 4>; |
843 | dma-names = "rx-tx"; | 880 | dma-names = "rx-tx"; |
844 | fsl,saif-dma-channel = <4>; | ||
845 | status = "disabled"; | 881 | status = "disabled"; |
846 | }; | 882 | }; |
847 | 883 | ||
848 | power@80044000 { | 884 | power: power@80044000 { |
849 | reg = <0x80044000 0x2000>; | 885 | reg = <0x80044000 0x2000>; |
850 | status = "disabled"; | 886 | status = "disabled"; |
851 | }; | 887 | }; |
@@ -853,15 +889,14 @@ | |||
853 | saif1: saif@80046000 { | 889 | saif1: saif@80046000 { |
854 | compatible = "fsl,imx28-saif"; | 890 | compatible = "fsl,imx28-saif"; |
855 | reg = <0x80046000 0x2000>; | 891 | reg = <0x80046000 0x2000>; |
856 | interrupts = <58 81>; | 892 | interrupts = <58>; |
857 | clocks = <&clks 54>; | 893 | clocks = <&clks 54>; |
858 | dmas = <&dma_apbx 5>; | 894 | dmas = <&dma_apbx 5>; |
859 | dma-names = "rx-tx"; | 895 | dma-names = "rx-tx"; |
860 | fsl,saif-dma-channel = <5>; | ||
861 | status = "disabled"; | 896 | status = "disabled"; |
862 | }; | 897 | }; |
863 | 898 | ||
864 | lradc@80050000 { | 899 | lradc: lradc@80050000 { |
865 | compatible = "fsl,imx28-lradc"; | 900 | compatible = "fsl,imx28-lradc"; |
866 | reg = <0x80050000 0x2000>; | 901 | reg = <0x80050000 0x2000>; |
867 | interrupts = <10 14 15 16 17 18 19 | 902 | interrupts = <10 14 15 16 17 18 19 |
@@ -869,15 +904,15 @@ | |||
869 | status = "disabled"; | 904 | status = "disabled"; |
870 | }; | 905 | }; |
871 | 906 | ||
872 | spdif@80054000 { | 907 | spdif: spdif@80054000 { |
873 | reg = <0x80054000 0x2000>; | 908 | reg = <0x80054000 0x2000>; |
874 | interrupts = <45 66>; | 909 | interrupts = <45>; |
875 | dmas = <&dma_apbx 2>; | 910 | dmas = <&dma_apbx 2>; |
876 | dma-names = "tx"; | 911 | dma-names = "tx"; |
877 | status = "disabled"; | 912 | status = "disabled"; |
878 | }; | 913 | }; |
879 | 914 | ||
880 | rtc@80056000 { | 915 | mxs_rtc: rtc@80056000 { |
881 | compatible = "fsl,imx28-rtc", "fsl,stmp3xxx-rtc"; | 916 | compatible = "fsl,imx28-rtc", "fsl,stmp3xxx-rtc"; |
882 | reg = <0x80056000 0x2000>; | 917 | reg = <0x80056000 0x2000>; |
883 | interrupts = <29>; | 918 | interrupts = <29>; |
@@ -888,11 +923,10 @@ | |||
888 | #size-cells = <0>; | 923 | #size-cells = <0>; |
889 | compatible = "fsl,imx28-i2c"; | 924 | compatible = "fsl,imx28-i2c"; |
890 | reg = <0x80058000 0x2000>; | 925 | reg = <0x80058000 0x2000>; |
891 | interrupts = <111 68>; | 926 | interrupts = <111>; |
892 | clock-frequency = <100000>; | 927 | clock-frequency = <100000>; |
893 | dmas = <&dma_apbx 6>; | 928 | dmas = <&dma_apbx 6>; |
894 | dma-names = "rx-tx"; | 929 | dma-names = "rx-tx"; |
895 | fsl,i2c-dma-channel = <6>; | ||
896 | status = "disabled"; | 930 | status = "disabled"; |
897 | }; | 931 | }; |
898 | 932 | ||
@@ -901,11 +935,10 @@ | |||
901 | #size-cells = <0>; | 935 | #size-cells = <0>; |
902 | compatible = "fsl,imx28-i2c"; | 936 | compatible = "fsl,imx28-i2c"; |
903 | reg = <0x8005a000 0x2000>; | 937 | reg = <0x8005a000 0x2000>; |
904 | interrupts = <110 69>; | 938 | interrupts = <110>; |
905 | clock-frequency = <100000>; | 939 | clock-frequency = <100000>; |
906 | dmas = <&dma_apbx 7>; | 940 | dmas = <&dma_apbx 7>; |
907 | dma-names = "rx-tx"; | 941 | dma-names = "rx-tx"; |
908 | fsl,i2c-dma-channel = <7>; | ||
909 | status = "disabled"; | 942 | status = "disabled"; |
910 | }; | 943 | }; |
911 | 944 | ||
@@ -918,7 +951,7 @@ | |||
918 | status = "disabled"; | 951 | status = "disabled"; |
919 | }; | 952 | }; |
920 | 953 | ||
921 | timrot@80068000 { | 954 | timer: timrot@80068000 { |
922 | compatible = "fsl,imx28-timrot", "fsl,timrot"; | 955 | compatible = "fsl,imx28-timrot", "fsl,timrot"; |
923 | reg = <0x80068000 0x2000>; | 956 | reg = <0x80068000 0x2000>; |
924 | interrupts = <48 49 50 51>; | 957 | interrupts = <48 49 50 51>; |
@@ -928,10 +961,9 @@ | |||
928 | auart0: serial@8006a000 { | 961 | auart0: serial@8006a000 { |
929 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; | 962 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; |
930 | reg = <0x8006a000 0x2000>; | 963 | reg = <0x8006a000 0x2000>; |
931 | interrupts = <112 70 71>; | 964 | interrupts = <112>; |
932 | dmas = <&dma_apbx 8>, <&dma_apbx 9>; | 965 | dmas = <&dma_apbx 8>, <&dma_apbx 9>; |
933 | dma-names = "rx", "tx"; | 966 | dma-names = "rx", "tx"; |
934 | fsl,auart-dma-channel = <8 9>; | ||
935 | clocks = <&clks 45>; | 967 | clocks = <&clks 45>; |
936 | status = "disabled"; | 968 | status = "disabled"; |
937 | }; | 969 | }; |
@@ -939,7 +971,7 @@ | |||
939 | auart1: serial@8006c000 { | 971 | auart1: serial@8006c000 { |
940 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; | 972 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; |
941 | reg = <0x8006c000 0x2000>; | 973 | reg = <0x8006c000 0x2000>; |
942 | interrupts = <113 72 73>; | 974 | interrupts = <113>; |
943 | dmas = <&dma_apbx 10>, <&dma_apbx 11>; | 975 | dmas = <&dma_apbx 10>, <&dma_apbx 11>; |
944 | dma-names = "rx", "tx"; | 976 | dma-names = "rx", "tx"; |
945 | clocks = <&clks 45>; | 977 | clocks = <&clks 45>; |
@@ -949,7 +981,7 @@ | |||
949 | auart2: serial@8006e000 { | 981 | auart2: serial@8006e000 { |
950 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; | 982 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; |
951 | reg = <0x8006e000 0x2000>; | 983 | reg = <0x8006e000 0x2000>; |
952 | interrupts = <114 74 75>; | 984 | interrupts = <114>; |
953 | dmas = <&dma_apbx 12>, <&dma_apbx 13>; | 985 | dmas = <&dma_apbx 12>, <&dma_apbx 13>; |
954 | dma-names = "rx", "tx"; | 986 | dma-names = "rx", "tx"; |
955 | clocks = <&clks 45>; | 987 | clocks = <&clks 45>; |
@@ -959,7 +991,7 @@ | |||
959 | auart3: serial@80070000 { | 991 | auart3: serial@80070000 { |
960 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; | 992 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; |
961 | reg = <0x80070000 0x2000>; | 993 | reg = <0x80070000 0x2000>; |
962 | interrupts = <115 76 77>; | 994 | interrupts = <115>; |
963 | dmas = <&dma_apbx 14>, <&dma_apbx 15>; | 995 | dmas = <&dma_apbx 14>, <&dma_apbx 15>; |
964 | dma-names = "rx", "tx"; | 996 | dma-names = "rx", "tx"; |
965 | clocks = <&clks 45>; | 997 | clocks = <&clks 45>; |
@@ -969,7 +1001,7 @@ | |||
969 | auart4: serial@80072000 { | 1001 | auart4: serial@80072000 { |
970 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; | 1002 | compatible = "fsl,imx28-auart", "fsl,imx23-auart"; |
971 | reg = <0x80072000 0x2000>; | 1003 | reg = <0x80072000 0x2000>; |
972 | interrupts = <116 78 79>; | 1004 | interrupts = <116>; |
973 | dmas = <&dma_apbx 0>, <&dma_apbx 1>; | 1005 | dmas = <&dma_apbx 0>, <&dma_apbx 1>; |
974 | dma-names = "rx", "tx"; | 1006 | dma-names = "rx", "tx"; |
975 | clocks = <&clks 45>; | 1007 | clocks = <&clks 45>; |
@@ -1026,7 +1058,7 @@ | |||
1026 | status = "disabled"; | 1058 | status = "disabled"; |
1027 | }; | 1059 | }; |
1028 | 1060 | ||
1029 | dflpt@800c0000 { | 1061 | dflpt: dflpt@800c0000 { |
1030 | reg = <0x800c0000 0x10000>; | 1062 | reg = <0x800c0000 0x10000>; |
1031 | status = "disabled"; | 1063 | status = "disabled"; |
1032 | }; | 1064 | }; |
@@ -1049,10 +1081,9 @@ | |||
1049 | status = "disabled"; | 1081 | status = "disabled"; |
1050 | }; | 1082 | }; |
1051 | 1083 | ||
1052 | switch@800f8000 { | 1084 | etn_switch: switch@800f8000 { |
1053 | reg = <0x800f8000 0x8000>; | 1085 | reg = <0x800f8000 0x8000>; |
1054 | status = "disabled"; | 1086 | status = "disabled"; |
1055 | }; | 1087 | }; |
1056 | |||
1057 | }; | 1088 | }; |
1058 | }; | 1089 | }; |
diff --git a/arch/arm/boot/dts/pxa3xx.dtsi b/arch/arm/boot/dts/pxa3xx.dtsi index f9d92da86783..83bb0eff697b 100644 --- a/arch/arm/boot/dts/pxa3xx.dtsi +++ b/arch/arm/boot/dts/pxa3xx.dtsi | |||
@@ -28,5 +28,16 @@ | |||
28 | marvell,intc-priority; | 28 | marvell,intc-priority; |
29 | marvell,intc-nr-irqs = <56>; | 29 | marvell,intc-nr-irqs = <56>; |
30 | }; | 30 | }; |
31 | |||
32 | gpio: gpio@40e00000 { | ||
33 | compatible = "intel,pxa3xx-gpio"; | ||
34 | reg = <0x40e00000 0x10000>; | ||
35 | interrupt-names = "gpio0", "gpio1", "gpio_mux"; | ||
36 | interrupts = <8 9 10>; | ||
37 | gpio-controller; | ||
38 | #gpio-cells = <0x2>; | ||
39 | interrupt-controller; | ||
40 | #interrupt-cells = <0x2>; | ||
41 | }; | ||
31 | }; | 42 | }; |
32 | }; | 43 | }; |
diff --git a/arch/arm/boot/dts/r8a73a4-ape6evm.dts b/arch/arm/boot/dts/r8a73a4-ape6evm.dts index f603c6946c29..e657a9db1666 100644 --- a/arch/arm/boot/dts/r8a73a4-ape6evm.dts +++ b/arch/arm/boot/dts/r8a73a4-ape6evm.dts | |||
@@ -50,3 +50,25 @@ | |||
50 | }; | 50 | }; |
51 | }; | 51 | }; |
52 | }; | 52 | }; |
53 | |||
54 | &i2c5 { | ||
55 | vdd_dvfs: max8973@1b { | ||
56 | compatible = "maxim,max8973"; | ||
57 | reg = <0x1b>; | ||
58 | |||
59 | regulator-min-microvolt = <935000>; | ||
60 | regulator-max-microvolt = <1200000>; | ||
61 | regulator-boot-on; | ||
62 | regulator-always-on; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | &cpu0 { | ||
67 | cpu0-supply = <&vdd_dvfs>; | ||
68 | operating-points = < | ||
69 | /* kHz uV */ | ||
70 | 1950000 1115000 | ||
71 | 1462500 995000 | ||
72 | >; | ||
73 | voltage-tolerance = <1>; /* 1% */ | ||
74 | }; | ||
diff --git a/arch/arm/boot/dts/r8a73a4.dtsi b/arch/arm/boot/dts/r8a73a4.dtsi index 4ff2019c0e30..6c26caa880f2 100644 --- a/arch/arm/boot/dts/r8a73a4.dtsi +++ b/arch/arm/boot/dts/r8a73a4.dtsi | |||
@@ -85,4 +85,137 @@ | |||
85 | interrupt-parent = <&gic>; | 85 | interrupt-parent = <&gic>; |
86 | interrupts = <0 69 4>; | 86 | interrupts = <0 69 4>; |
87 | }; | 87 | }; |
88 | |||
89 | i2c0: i2c@e6500000 { | ||
90 | #address-cells = <1>; | ||
91 | #size-cells = <0>; | ||
92 | compatible = "renesas,rmobile-iic"; | ||
93 | reg = <0 0xe6500000 0 0x428>; | ||
94 | interrupt-parent = <&gic>; | ||
95 | interrupts = <0 174 0x4>; | ||
96 | }; | ||
97 | |||
98 | i2c1: i2c@e6510000 { | ||
99 | #address-cells = <1>; | ||
100 | #size-cells = <0>; | ||
101 | compatible = "renesas,rmobile-iic"; | ||
102 | reg = <0 0xe6510000 0 0x428>; | ||
103 | interrupt-parent = <&gic>; | ||
104 | interrupts = <0 175 0x4>; | ||
105 | }; | ||
106 | |||
107 | i2c2: i2c@e6520000 { | ||
108 | #address-cells = <1>; | ||
109 | #size-cells = <0>; | ||
110 | compatible = "renesas,rmobile-iic"; | ||
111 | reg = <0 0xe6520000 0 0x428>; | ||
112 | interrupt-parent = <&gic>; | ||
113 | interrupts = <0 176 0x4>; | ||
114 | }; | ||
115 | |||
116 | i2c3: i2c@e6530000 { | ||
117 | #address-cells = <1>; | ||
118 | #size-cells = <0>; | ||
119 | compatible = "renesas,rmobile-iic"; | ||
120 | reg = <0 0xe6530000 0 0x428>; | ||
121 | interrupt-parent = <&gic>; | ||
122 | interrupts = <0 177 0x4>; | ||
123 | }; | ||
124 | |||
125 | i2c4: i2c@e6540000 { | ||
126 | #address-cells = <1>; | ||
127 | #size-cells = <0>; | ||
128 | compatible = "renesas,rmobile-iic"; | ||
129 | reg = <0 0xe6540000 0 0x428>; | ||
130 | interrupt-parent = <&gic>; | ||
131 | interrupts = <0 178 0x4>; | ||
132 | }; | ||
133 | |||
134 | i2c5: i2c@e60b0000 { | ||
135 | #address-cells = <1>; | ||
136 | #size-cells = <0>; | ||
137 | compatible = "renesas,rmobile-iic"; | ||
138 | reg = <0 0xe60b0000 0 0x428>; | ||
139 | interrupt-parent = <&gic>; | ||
140 | interrupts = <0 179 0x4>; | ||
141 | }; | ||
142 | |||
143 | i2c6: i2c@e6550000 { | ||
144 | #address-cells = <1>; | ||
145 | #size-cells = <0>; | ||
146 | compatible = "renesas,rmobile-iic"; | ||
147 | reg = <0 0xe6550000 0 0x428>; | ||
148 | interrupt-parent = <&gic>; | ||
149 | interrupts = <0 184 0x4>; | ||
150 | }; | ||
151 | |||
152 | i2c7: i2c@e6560000 { | ||
153 | #address-cells = <1>; | ||
154 | #size-cells = <0>; | ||
155 | compatible = "renesas,rmobile-iic"; | ||
156 | reg = <0 0xe6560000 0 0x428>; | ||
157 | interrupt-parent = <&gic>; | ||
158 | interrupts = <0 185 0x4>; | ||
159 | }; | ||
160 | |||
161 | i2c8: i2c@e6570000 { | ||
162 | #address-cells = <1>; | ||
163 | #size-cells = <0>; | ||
164 | compatible = "renesas,rmobile-iic"; | ||
165 | reg = <0 0xe6570000 0 0x428>; | ||
166 | interrupt-parent = <&gic>; | ||
167 | interrupts = <0 173 0x4>; | ||
168 | }; | ||
169 | |||
170 | mmcif0: mmcif@ee200000 { | ||
171 | compatible = "renesas,sh-mmcif"; | ||
172 | reg = <0 0xee200000 0 0x80>; | ||
173 | interrupt-parent = <&gic>; | ||
174 | interrupts = <0 169 0x4>; | ||
175 | reg-io-width = <4>; | ||
176 | status = "disabled"; | ||
177 | }; | ||
178 | |||
179 | mmcif1: mmcif@ee220000 { | ||
180 | compatible = "renesas,sh-mmcif"; | ||
181 | reg = <0 0xee220000 0 0x80>; | ||
182 | interrupt-parent = <&gic>; | ||
183 | interrupts = <0 170 0x4>; | ||
184 | reg-io-width = <4>; | ||
185 | status = "disabled"; | ||
186 | }; | ||
187 | |||
188 | pfc: pfc@e6050000 { | ||
189 | compatible = "renesas,pfc-r8a73a4"; | ||
190 | reg = <0 0xe6050000 0 0x9000>; | ||
191 | gpio-controller; | ||
192 | #gpio-cells = <2>; | ||
193 | }; | ||
194 | |||
195 | sdhi0: sdhi@ee100000 { | ||
196 | compatible = "renesas,r8a73a4-sdhi"; | ||
197 | reg = <0 0xee100000 0 0x100>; | ||
198 | interrupt-parent = <&gic>; | ||
199 | interrupts = <0 165 4>; | ||
200 | cap-sd-highspeed; | ||
201 | status = "disabled"; | ||
202 | }; | ||
203 | |||
204 | sdhi1: sdhi@ee120000 { | ||
205 | compatible = "renesas,r8a73a4-sdhi"; | ||
206 | reg = <0 0xee120000 0 0x100>; | ||
207 | interrupt-parent = <&gic>; | ||
208 | interrupts = <0 166 4>; | ||
209 | cap-sd-highspeed; | ||
210 | status = "disabled"; | ||
211 | }; | ||
212 | |||
213 | sdhi2: sdhi@ee140000 { | ||
214 | compatible = "renesas,r8a73a4-sdhi"; | ||
215 | reg = <0 0xee140000 0 0x100>; | ||
216 | interrupt-parent = <&gic>; | ||
217 | interrupts = <0 167 4>; | ||
218 | cap-sd-highspeed; | ||
219 | status = "disabled"; | ||
220 | }; | ||
88 | }; | 221 | }; |
diff --git a/arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts b/arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts index 09ea22c26359..366f72989dc3 100644 --- a/arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts +++ b/arch/arm/boot/dts/r8a7740-armadillo800eva-reference.dts | |||
@@ -10,6 +10,7 @@ | |||
10 | 10 | ||
11 | /dts-v1/; | 11 | /dts-v1/; |
12 | /include/ "r8a7740.dtsi" | 12 | /include/ "r8a7740.dtsi" |
13 | #include <dt-bindings/gpio/gpio.h> | ||
13 | 14 | ||
14 | / { | 15 | / { |
15 | model = "armadillo 800 eva reference"; | 16 | model = "armadillo 800 eva reference"; |
@@ -33,6 +34,21 @@ | |||
33 | regulator-boot-on; | 34 | regulator-boot-on; |
34 | }; | 35 | }; |
35 | 36 | ||
37 | leds { | ||
38 | compatible = "gpio-leds"; | ||
39 | led1 { | ||
40 | gpios = <&pfc 102 GPIO_ACTIVE_HIGH>; | ||
41 | }; | ||
42 | led2 { | ||
43 | gpios = <&pfc 111 GPIO_ACTIVE_HIGH>; | ||
44 | }; | ||
45 | led3 { | ||
46 | gpios = <&pfc 110 GPIO_ACTIVE_HIGH>; | ||
47 | }; | ||
48 | led4 { | ||
49 | gpios = <&pfc 177 GPIO_ACTIVE_HIGH>; | ||
50 | }; | ||
51 | }; | ||
36 | }; | 52 | }; |
37 | 53 | ||
38 | &i2c0 { | 54 | &i2c0 { |
@@ -41,5 +57,23 @@ | |||
41 | reg = <0x55>; | 57 | reg = <0x55>; |
42 | interrupt-parent = <&irqpin1>; | 58 | interrupt-parent = <&irqpin1>; |
43 | interrupts = <2 0>; /* IRQ10: hwirq 2 on irqpin1 */ | 59 | interrupts = <2 0>; /* IRQ10: hwirq 2 on irqpin1 */ |
60 | pinctrl-0 = <&st1232_pins>; | ||
61 | pinctrl-names = "default"; | ||
62 | gpios = <&pfc 166 GPIO_ACTIVE_LOW>; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | &pfc { | ||
67 | pinctrl-0 = <&scifa1_pins>; | ||
68 | pinctrl-names = "default"; | ||
69 | |||
70 | scifa1_pins: scifa1 { | ||
71 | renesas,groups = "scifa1_data"; | ||
72 | renesas,function = "scifa1"; | ||
73 | }; | ||
74 | |||
75 | st1232_pins: st1232 { | ||
76 | renesas,groups = "intc_irq10"; | ||
77 | renesas,function = "intc"; | ||
44 | }; | 78 | }; |
45 | }; | 79 | }; |
diff --git a/arch/arm/boot/dts/r8a7740.dtsi b/arch/arm/boot/dts/r8a7740.dtsi index 24e930643821..e18a195b55f3 100644 --- a/arch/arm/boot/dts/r8a7740.dtsi +++ b/arch/arm/boot/dts/r8a7740.dtsi | |||
@@ -139,4 +139,12 @@ | |||
139 | 0 72 0x4 | 139 | 0 72 0x4 |
140 | 0 73 0x4>; | 140 | 0 73 0x4>; |
141 | }; | 141 | }; |
142 | |||
143 | pfc: pfc@e6050000 { | ||
144 | compatible = "renesas,pfc-r8a7740"; | ||
145 | reg = <0xe6050000 0x8000>, | ||
146 | <0xe605800c 0x20>; | ||
147 | gpio-controller; | ||
148 | #gpio-cells = <2>; | ||
149 | }; | ||
142 | }; | 150 | }; |
diff --git a/arch/arm/boot/dts/r8a7778.dtsi b/arch/arm/boot/dts/r8a7778.dtsi index 474373559bdc..45ac404ab6d8 100644 --- a/arch/arm/boot/dts/r8a7778.dtsi +++ b/arch/arm/boot/dts/r8a7778.dtsi | |||
@@ -32,4 +32,70 @@ | |||
32 | reg = <0xfe438000 0x1000>, | 32 | reg = <0xfe438000 0x1000>, |
33 | <0xfe430000 0x100>; | 33 | <0xfe430000 0x100>; |
34 | }; | 34 | }; |
35 | |||
36 | gpio0: gpio@ffc40000 { | ||
37 | compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; | ||
38 | reg = <0xffc40000 0x2c>; | ||
39 | interrupt-parent = <&gic>; | ||
40 | interrupts = <0 103 0x4>; | ||
41 | #gpio-cells = <2>; | ||
42 | gpio-controller; | ||
43 | gpio-ranges = <&pfc 0 0 32>; | ||
44 | #interrupt-cells = <2>; | ||
45 | interrupt-controller; | ||
46 | }; | ||
47 | |||
48 | gpio1: gpio@ffc41000 { | ||
49 | compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; | ||
50 | reg = <0xffc41000 0x2c>; | ||
51 | interrupt-parent = <&gic>; | ||
52 | interrupts = <0 103 0x4>; | ||
53 | #gpio-cells = <2>; | ||
54 | gpio-controller; | ||
55 | gpio-ranges = <&pfc 0 32 32>; | ||
56 | #interrupt-cells = <2>; | ||
57 | interrupt-controller; | ||
58 | }; | ||
59 | |||
60 | gpio2: gpio@ffc42000 { | ||
61 | compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; | ||
62 | reg = <0xffc42000 0x2c>; | ||
63 | interrupt-parent = <&gic>; | ||
64 | interrupts = <0 103 0x4>; | ||
65 | #gpio-cells = <2>; | ||
66 | gpio-controller; | ||
67 | gpio-ranges = <&pfc 0 64 32>; | ||
68 | #interrupt-cells = <2>; | ||
69 | interrupt-controller; | ||
70 | }; | ||
71 | |||
72 | gpio3: gpio@ffc43000 { | ||
73 | compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; | ||
74 | reg = <0xffc43000 0x2c>; | ||
75 | interrupt-parent = <&gic>; | ||
76 | interrupts = <0 103 0x4>; | ||
77 | #gpio-cells = <2>; | ||
78 | gpio-controller; | ||
79 | gpio-ranges = <&pfc 0 96 32>; | ||
80 | #interrupt-cells = <2>; | ||
81 | interrupt-controller; | ||
82 | }; | ||
83 | |||
84 | gpio4: gpio@ffc44000 { | ||
85 | compatible = "renesas,gpio-r8a7778", "renesas,gpio-rcar"; | ||
86 | reg = <0xffc44000 0x2c>; | ||
87 | interrupt-parent = <&gic>; | ||
88 | interrupts = <0 103 0x4>; | ||
89 | #gpio-cells = <2>; | ||
90 | gpio-controller; | ||
91 | gpio-ranges = <&pfc 0 128 27>; | ||
92 | #interrupt-cells = <2>; | ||
93 | interrupt-controller; | ||
94 | }; | ||
95 | |||
96 | pfc: pfc@fffc0000 { | ||
97 | compatible = "renesas,pfc-r8a7778"; | ||
98 | reg = <0xfffc000 0x118>; | ||
99 | #gpio-range-cells = <3>; | ||
100 | }; | ||
35 | }; | 101 | }; |
diff --git a/arch/arm/boot/dts/r8a7779-marzen-reference.dts b/arch/arm/boot/dts/r8a7779-marzen-reference.dts index 72be4c87cfb5..b64705be258d 100644 --- a/arch/arm/boot/dts/r8a7779-marzen-reference.dts +++ b/arch/arm/boot/dts/r8a7779-marzen-reference.dts | |||
@@ -11,6 +11,7 @@ | |||
11 | 11 | ||
12 | /dts-v1/; | 12 | /dts-v1/; |
13 | /include/ "r8a7779.dtsi" | 13 | /include/ "r8a7779.dtsi" |
14 | #include <dt-bindings/gpio/gpio.h> | ||
14 | 15 | ||
15 | / { | 16 | / { |
16 | model = "marzen"; | 17 | model = "marzen"; |
@@ -37,6 +38,9 @@ | |||
37 | lan0@18000000 { | 38 | lan0@18000000 { |
38 | compatible = "smsc,lan9220", "smsc,lan9115"; | 39 | compatible = "smsc,lan9220", "smsc,lan9115"; |
39 | reg = <0x18000000 0x100>; | 40 | reg = <0x18000000 0x100>; |
41 | pinctrl-0 = <&lan0_pins>; | ||
42 | pinctrl-names = "default"; | ||
43 | |||
40 | phy-mode = "mii"; | 44 | phy-mode = "mii"; |
41 | interrupt-parent = <&gic>; | 45 | interrupt-parent = <&gic>; |
42 | interrupts = <0 28 0x4>; | 46 | interrupts = <0 28 0x4>; |
@@ -44,4 +48,49 @@ | |||
44 | vddvario-supply = <&fixedregulator3v3>; | 48 | vddvario-supply = <&fixedregulator3v3>; |
45 | vdd33a-supply = <&fixedregulator3v3>; | 49 | vdd33a-supply = <&fixedregulator3v3>; |
46 | }; | 50 | }; |
51 | |||
52 | leds { | ||
53 | compatible = "gpio-leds"; | ||
54 | led2 { | ||
55 | gpios = <&gpio4 29 GPIO_ACTIVE_HIGH>; | ||
56 | }; | ||
57 | led3 { | ||
58 | gpios = <&gpio4 30 GPIO_ACTIVE_HIGH>; | ||
59 | }; | ||
60 | led4 { | ||
61 | gpios = <&gpio4 31 GPIO_ACTIVE_HIGH>; | ||
62 | }; | ||
63 | }; | ||
64 | }; | ||
65 | |||
66 | &pfc { | ||
67 | pinctrl-0 = <&scif2_pins &scif4_pins &sdhi0_pins>; | ||
68 | pinctrl-names = "default"; | ||
69 | |||
70 | lan0_pins: lan0 { | ||
71 | intc { | ||
72 | renesas,groups = "intc_irq1_b"; | ||
73 | renesas,function = "intc"; | ||
74 | }; | ||
75 | lbsc { | ||
76 | renesas,groups = "lbsc_ex_cs0"; | ||
77 | renesas,function = "lbsc"; | ||
78 | }; | ||
79 | }; | ||
80 | |||
81 | scif2_pins: scif2 { | ||
82 | renesas,groups = "scif2_data_c"; | ||
83 | renesas,function = "scif2"; | ||
84 | }; | ||
85 | |||
86 | scif4_pins: scif4 { | ||
87 | renesas,groups = "scif4_data"; | ||
88 | renesas,function = "scif4"; | ||
89 | }; | ||
90 | |||
91 | sdhi0_pins: sdhi0 { | ||
92 | renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", | ||
93 | "sdhi0_wp"; | ||
94 | renesas,function = "sdhi0"; | ||
95 | }; | ||
47 | }; | 96 | }; |
diff --git a/arch/arm/boot/dts/r8a7779.dtsi b/arch/arm/boot/dts/r8a7779.dtsi index 7f146c6bf756..e9fbe3d572d7 100644 --- a/arch/arm/boot/dts/r8a7779.dtsi +++ b/arch/arm/boot/dts/r8a7779.dtsi | |||
@@ -48,6 +48,90 @@ | |||
48 | <0xf0000100 0x100>; | 48 | <0xf0000100 0x100>; |
49 | }; | 49 | }; |
50 | 50 | ||
51 | gpio0: gpio@ffc40000 { | ||
52 | compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; | ||
53 | reg = <0xffc40000 0x2c>; | ||
54 | interrupt-parent = <&gic>; | ||
55 | interrupts = <0 141 0x4>; | ||
56 | #gpio-cells = <2>; | ||
57 | gpio-controller; | ||
58 | gpio-ranges = <&pfc 0 0 32>; | ||
59 | #interrupt-cells = <2>; | ||
60 | interrupt-controller; | ||
61 | }; | ||
62 | |||
63 | gpio1: gpio@ffc41000 { | ||
64 | compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; | ||
65 | reg = <0xffc41000 0x2c>; | ||
66 | interrupt-parent = <&gic>; | ||
67 | interrupts = <0 142 0x4>; | ||
68 | #gpio-cells = <2>; | ||
69 | gpio-controller; | ||
70 | gpio-ranges = <&pfc 0 32 32>; | ||
71 | #interrupt-cells = <2>; | ||
72 | interrupt-controller; | ||
73 | }; | ||
74 | |||
75 | gpio2: gpio@ffc42000 { | ||
76 | compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; | ||
77 | reg = <0xffc42000 0x2c>; | ||
78 | interrupt-parent = <&gic>; | ||
79 | interrupts = <0 143 0x4>; | ||
80 | #gpio-cells = <2>; | ||
81 | gpio-controller; | ||
82 | gpio-ranges = <&pfc 0 64 32>; | ||
83 | #interrupt-cells = <2>; | ||
84 | interrupt-controller; | ||
85 | }; | ||
86 | |||
87 | gpio3: gpio@ffc43000 { | ||
88 | compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; | ||
89 | reg = <0xffc43000 0x2c>; | ||
90 | interrupt-parent = <&gic>; | ||
91 | interrupts = <0 144 0x4>; | ||
92 | #gpio-cells = <2>; | ||
93 | gpio-controller; | ||
94 | gpio-ranges = <&pfc 0 96 32>; | ||
95 | #interrupt-cells = <2>; | ||
96 | interrupt-controller; | ||
97 | }; | ||
98 | |||
99 | gpio4: gpio@ffc44000 { | ||
100 | compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; | ||
101 | reg = <0xffc44000 0x2c>; | ||
102 | interrupt-parent = <&gic>; | ||
103 | interrupts = <0 145 0x4>; | ||
104 | #gpio-cells = <2>; | ||
105 | gpio-controller; | ||
106 | gpio-ranges = <&pfc 0 128 32>; | ||
107 | #interrupt-cells = <2>; | ||
108 | interrupt-controller; | ||
109 | }; | ||
110 | |||
111 | gpio5: gpio@ffc45000 { | ||
112 | compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; | ||
113 | reg = <0xffc45000 0x2c>; | ||
114 | interrupt-parent = <&gic>; | ||
115 | interrupts = <0 146 0x4>; | ||
116 | #gpio-cells = <2>; | ||
117 | gpio-controller; | ||
118 | gpio-ranges = <&pfc 0 160 32>; | ||
119 | #interrupt-cells = <2>; | ||
120 | interrupt-controller; | ||
121 | }; | ||
122 | |||
123 | gpio6: gpio@ffc46000 { | ||
124 | compatible = "renesas,gpio-r8a7779", "renesas,gpio-rcar"; | ||
125 | reg = <0xffc46000 0x2c>; | ||
126 | interrupt-parent = <&gic>; | ||
127 | interrupts = <0 147 0x4>; | ||
128 | #gpio-cells = <2>; | ||
129 | gpio-controller; | ||
130 | gpio-ranges = <&pfc 0 192 9>; | ||
131 | #interrupt-cells = <2>; | ||
132 | interrupt-controller; | ||
133 | }; | ||
134 | |||
51 | irqpin0: irqpin@fe780010 { | 135 | irqpin0: irqpin@fe780010 { |
52 | compatible = "renesas,intc-irqpin"; | 136 | compatible = "renesas,intc-irqpin"; |
53 | #interrupt-cells = <2>; | 137 | #interrupt-cells = <2>; |
@@ -101,6 +185,12 @@ | |||
101 | interrupts = <0 81 0x4>; | 185 | interrupts = <0 81 0x4>; |
102 | }; | 186 | }; |
103 | 187 | ||
188 | pfc: pfc@fffc0000 { | ||
189 | compatible = "renesas,pfc-r8a7779"; | ||
190 | reg = <0xfffc0000 0x23c>; | ||
191 | #gpio-range-cells = <3>; | ||
192 | }; | ||
193 | |||
104 | thermal@ffc48000 { | 194 | thermal@ffc48000 { |
105 | compatible = "renesas,rcar-thermal"; | 195 | compatible = "renesas,rcar-thermal"; |
106 | reg = <0xffc48000 0x38>; | 196 | reg = <0xffc48000 0x38>; |
diff --git a/arch/arm/boot/dts/r8a7790.dtsi b/arch/arm/boot/dts/r8a7790.dtsi index 339d9b11721c..3b879e7c697c 100644 --- a/arch/arm/boot/dts/r8a7790.dtsi +++ b/arch/arm/boot/dts/r8a7790.dtsi | |||
@@ -38,6 +38,78 @@ | |||
38 | interrupts = <1 9 0xf04>; | 38 | interrupts = <1 9 0xf04>; |
39 | }; | 39 | }; |
40 | 40 | ||
41 | gpio0: gpio@ffc40000 { | ||
42 | compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; | ||
43 | reg = <0 0xffc40000 0 0x2c>; | ||
44 | interrupt-parent = <&gic>; | ||
45 | interrupts = <0 4 0x4>; | ||
46 | #gpio-cells = <2>; | ||
47 | gpio-controller; | ||
48 | gpio-ranges = <&pfc 0 0 32>; | ||
49 | #interrupt-cells = <2>; | ||
50 | interrupt-controller; | ||
51 | }; | ||
52 | |||
53 | gpio1: gpio@ffc41000 { | ||
54 | compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; | ||
55 | reg = <0 0xffc41000 0 0x2c>; | ||
56 | interrupt-parent = <&gic>; | ||
57 | interrupts = <0 5 0x4>; | ||
58 | #gpio-cells = <2>; | ||
59 | gpio-controller; | ||
60 | gpio-ranges = <&pfc 0 32 32>; | ||
61 | #interrupt-cells = <2>; | ||
62 | interrupt-controller; | ||
63 | }; | ||
64 | |||
65 | gpio2: gpio@ffc42000 { | ||
66 | compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; | ||
67 | reg = <0 0xffc42000 0 0x2c>; | ||
68 | interrupt-parent = <&gic>; | ||
69 | interrupts = <0 6 0x4>; | ||
70 | #gpio-cells = <2>; | ||
71 | gpio-controller; | ||
72 | gpio-ranges = <&pfc 0 64 32>; | ||
73 | #interrupt-cells = <2>; | ||
74 | interrupt-controller; | ||
75 | }; | ||
76 | |||
77 | gpio3: gpio@ffc43000 { | ||
78 | compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; | ||
79 | reg = <0 0xffc43000 0 0x2c>; | ||
80 | interrupt-parent = <&gic>; | ||
81 | interrupts = <0 7 0x4>; | ||
82 | #gpio-cells = <2>; | ||
83 | gpio-controller; | ||
84 | gpio-ranges = <&pfc 0 96 32>; | ||
85 | #interrupt-cells = <2>; | ||
86 | interrupt-controller; | ||
87 | }; | ||
88 | |||
89 | gpio4: gpio@ffc44000 { | ||
90 | compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; | ||
91 | reg = <0 0xffc44000 0 0x2c>; | ||
92 | interrupt-parent = <&gic>; | ||
93 | interrupts = <0 8 0x4>; | ||
94 | #gpio-cells = <2>; | ||
95 | gpio-controller; | ||
96 | gpio-ranges = <&pfc 0 128 32>; | ||
97 | #interrupt-cells = <2>; | ||
98 | interrupt-controller; | ||
99 | }; | ||
100 | |||
101 | gpio5: gpio@ffc45000 { | ||
102 | compatible = "renesas,gpio-r8a7790", "renesas,gpio-rcar"; | ||
103 | reg = <0 0xffc45000 0 0x2c>; | ||
104 | interrupt-parent = <&gic>; | ||
105 | interrupts = <0 9 0x4>; | ||
106 | #gpio-cells = <2>; | ||
107 | gpio-controller; | ||
108 | gpio-ranges = <&pfc 0 160 32>; | ||
109 | #interrupt-cells = <2>; | ||
110 | interrupt-controller; | ||
111 | }; | ||
112 | |||
41 | timer { | 113 | timer { |
42 | compatible = "arm,armv7-timer"; | 114 | compatible = "arm,armv7-timer"; |
43 | interrupts = <1 13 0xf08>, | 115 | interrupts = <1 13 0xf08>, |
@@ -54,4 +126,64 @@ | |||
54 | interrupt-parent = <&gic>; | 126 | interrupt-parent = <&gic>; |
55 | interrupts = <0 0 4>, <0 1 4>, <0 2 4>, <0 3 4>; | 127 | interrupts = <0 0 4>, <0 1 4>, <0 2 4>, <0 3 4>; |
56 | }; | 128 | }; |
129 | |||
130 | mmcif0: mmcif@ee200000 { | ||
131 | compatible = "renesas,sh-mmcif"; | ||
132 | reg = <0 0xee200000 0 0x80>; | ||
133 | interrupt-parent = <&gic>; | ||
134 | interrupts = <0 169 0x4>; | ||
135 | reg-io-width = <4>; | ||
136 | status = "disabled"; | ||
137 | }; | ||
138 | |||
139 | mmcif1: mmcif@ee220000 { | ||
140 | compatible = "renesas,sh-mmcif"; | ||
141 | reg = <0 0xee220000 0 0x80>; | ||
142 | interrupt-parent = <&gic>; | ||
143 | interrupts = <0 170 0x4>; | ||
144 | reg-io-width = <4>; | ||
145 | status = "disabled"; | ||
146 | }; | ||
147 | |||
148 | pfc: pfc@e6060000 { | ||
149 | compatible = "renesas,pfc-r8a7790"; | ||
150 | reg = <0 0xe6060000 0 0x250>; | ||
151 | #gpio-range-cells = <3>; | ||
152 | }; | ||
153 | |||
154 | sdhi0: sdhi@ee100000 { | ||
155 | compatible = "renesas,r8a7790-sdhi"; | ||
156 | reg = <0 0xee100000 0 0x100>; | ||
157 | interrupt-parent = <&gic>; | ||
158 | interrupts = <0 165 4>; | ||
159 | cap-sd-highspeed; | ||
160 | status = "disabled"; | ||
161 | }; | ||
162 | |||
163 | sdhi1: sdhi@ee120000 { | ||
164 | compatible = "renesas,r8a7790-sdhi"; | ||
165 | reg = <0 0xee120000 0 0x100>; | ||
166 | interrupt-parent = <&gic>; | ||
167 | interrupts = <0 166 4>; | ||
168 | cap-sd-highspeed; | ||
169 | status = "disabled"; | ||
170 | }; | ||
171 | |||
172 | sdhi2: sdhi@ee140000 { | ||
173 | compatible = "renesas,r8a7790-sdhi"; | ||
174 | reg = <0 0xee140000 0 0x100>; | ||
175 | interrupt-parent = <&gic>; | ||
176 | interrupts = <0 167 4>; | ||
177 | cap-sd-highspeed; | ||
178 | status = "disabled"; | ||
179 | }; | ||
180 | |||
181 | sdhi3: sdhi@ee160000 { | ||
182 | compatible = "renesas,r8a7790-sdhi"; | ||
183 | reg = <0 0xee160000 0 0x100>; | ||
184 | interrupt-parent = <&gic>; | ||
185 | interrupts = <0 168 4>; | ||
186 | cap-sd-highspeed; | ||
187 | status = "disabled"; | ||
188 | }; | ||
57 | }; | 189 | }; |
diff --git a/arch/arm/boot/dts/sama5d3.dtsi b/arch/arm/boot/dts/sama5d3.dtsi index a1d5e25a6698..ff63fbbd18ab 100644 --- a/arch/arm/boot/dts/sama5d3.dtsi +++ b/arch/arm/boot/dts/sama5d3.dtsi | |||
@@ -48,6 +48,11 @@ | |||
48 | }; | 48 | }; |
49 | }; | 49 | }; |
50 | 50 | ||
51 | pmu { | ||
52 | compatible = "arm,cortex-a5-pmu"; | ||
53 | interrupts = <46 IRQ_TYPE_LEVEL_HIGH 0>; | ||
54 | }; | ||
55 | |||
51 | memory { | 56 | memory { |
52 | reg = <0x20000000 0x8000000>; | 57 | reg = <0x20000000 0x8000000>; |
53 | }; | 58 | }; |
diff --git a/arch/arm/boot/dts/sh7372.dtsi b/arch/arm/boot/dts/sh7372.dtsi index 7bf020ecadf5..249f65be2a50 100644 --- a/arch/arm/boot/dts/sh7372.dtsi +++ b/arch/arm/boot/dts/sh7372.dtsi | |||
@@ -23,4 +23,12 @@ | |||
23 | reg = <0x0>; | 23 | reg = <0x0>; |
24 | }; | 24 | }; |
25 | }; | 25 | }; |
26 | |||
27 | pfc: pfc@e6050000 { | ||
28 | compatible = "renesas,pfc-sh7372"; | ||
29 | reg = <0xe6050000 0x8000>, | ||
30 | <0xe605801c 0x1c>; | ||
31 | gpio-controller; | ||
32 | #gpio-cells = <2>; | ||
33 | }; | ||
26 | }; | 34 | }; |
diff --git a/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts b/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts index b6f759e830ed..b99e890def54 100644 --- a/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts +++ b/arch/arm/boot/dts/sh73a0-kzm9g-reference.dts | |||
@@ -13,6 +13,7 @@ | |||
13 | 13 | ||
14 | /dts-v1/; | 14 | /dts-v1/; |
15 | /include/ "sh73a0.dtsi" | 15 | /include/ "sh73a0.dtsi" |
16 | #include <dt-bindings/gpio/gpio.h> | ||
16 | 17 | ||
17 | / { | 18 | / { |
18 | model = "KZM-A9-GT"; | 19 | model = "KZM-A9-GT"; |
@@ -58,6 +59,24 @@ | |||
58 | regulator-boot-on; | 59 | regulator-boot-on; |
59 | }; | 60 | }; |
60 | 61 | ||
62 | vmmc_sdhi0: regulator@2 { | ||
63 | compatible = "regulator-fixed"; | ||
64 | regulator-name = "SDHI0 Vcc"; | ||
65 | regulator-min-microvolt = <3300000>; | ||
66 | regulator-max-microvolt = <3300000>; | ||
67 | gpio = <&pfc 15 GPIO_ACTIVE_HIGH>; | ||
68 | enable-active-high; | ||
69 | }; | ||
70 | |||
71 | vmmc_sdhi2: regulator@3 { | ||
72 | compatible = "regulator-fixed"; | ||
73 | regulator-name = "SDHI2 Vcc"; | ||
74 | regulator-min-microvolt = <3300000>; | ||
75 | regulator-max-microvolt = <3300000>; | ||
76 | gpio = <&pfc 14 GPIO_ACTIVE_HIGH>; | ||
77 | enable-active-high; | ||
78 | }; | ||
79 | |||
61 | lan9220@10000000 { | 80 | lan9220@10000000 { |
62 | compatible = "smsc,lan9220", "smsc,lan9115"; | 81 | compatible = "smsc,lan9220", "smsc,lan9115"; |
63 | reg = <0x10000000 0x100>; | 82 | reg = <0x10000000 0x100>; |
@@ -70,6 +89,22 @@ | |||
70 | vddvario-supply = <®_1p8v>; | 89 | vddvario-supply = <®_1p8v>; |
71 | vdd33a-supply = <®_3p3v>; | 90 | vdd33a-supply = <®_3p3v>; |
72 | }; | 91 | }; |
92 | |||
93 | leds { | ||
94 | compatible = "gpio-leds"; | ||
95 | led1 { | ||
96 | gpios = <&pfc 20 GPIO_ACTIVE_LOW>; | ||
97 | }; | ||
98 | led2 { | ||
99 | gpios = <&pfc 21 GPIO_ACTIVE_LOW>; | ||
100 | }; | ||
101 | led3 { | ||
102 | gpios = <&pfc 22 GPIO_ACTIVE_LOW>; | ||
103 | }; | ||
104 | led4 { | ||
105 | gpios = <&pfc 23 GPIO_ACTIVE_LOW>; | ||
106 | }; | ||
107 | }; | ||
73 | }; | 108 | }; |
74 | 109 | ||
75 | &i2c0 { | 110 | &i2c0 { |
@@ -145,20 +180,71 @@ | |||
145 | }; | 180 | }; |
146 | }; | 181 | }; |
147 | 182 | ||
183 | &i2c3 { | ||
184 | pinctrl-0 = <&i2c3_pins>; | ||
185 | pinctrl-names = "default"; | ||
186 | }; | ||
187 | |||
148 | &mmcif { | 188 | &mmcif { |
189 | pinctrl-0 = <&mmcif_pins>; | ||
190 | pinctrl-names = "default"; | ||
191 | |||
149 | bus-width = <8>; | 192 | bus-width = <8>; |
150 | vmmc-supply = <®_1p8v>; | 193 | vmmc-supply = <®_1p8v>; |
151 | status = "okay"; | 194 | status = "okay"; |
152 | }; | 195 | }; |
153 | 196 | ||
197 | &pfc { | ||
198 | pinctrl-0 = <&scifa4_pins>; | ||
199 | pinctrl-names = "default"; | ||
200 | |||
201 | i2c3_pins: i2c3 { | ||
202 | renesas,groups = "i2c3_1"; | ||
203 | renesas,function = "i2c3"; | ||
204 | }; | ||
205 | |||
206 | mmcif_pins: mmcif { | ||
207 | mux { | ||
208 | renesas,groups = "mmc0_data8_0", "mmc0_ctrl_0"; | ||
209 | renesas,function = "mmc0"; | ||
210 | }; | ||
211 | cfg { | ||
212 | renesas,groups = "mmc0_data8_0"; | ||
213 | renesas,pins = "PORT279"; | ||
214 | bias-pull-up; | ||
215 | }; | ||
216 | }; | ||
217 | |||
218 | scifa4_pins: scifa4 { | ||
219 | renesas,groups = "scifa4_data", "scifa4_ctrl"; | ||
220 | renesas,function = "scifa4"; | ||
221 | }; | ||
222 | |||
223 | sdhi0_pins: sdhi0 { | ||
224 | renesas,groups = "sdhi0_data4", "sdhi0_ctrl", "sdhi0_cd", "sdhi0_wp"; | ||
225 | renesas,function = "sdhi0"; | ||
226 | }; | ||
227 | |||
228 | sdhi2_pins: sdhi2 { | ||
229 | renesas,groups = "sdhi2_data4", "sdhi2_ctrl"; | ||
230 | renesas,function = "sdhi2"; | ||
231 | }; | ||
232 | }; | ||
233 | |||
154 | &sdhi0 { | 234 | &sdhi0 { |
155 | vmmc-supply = <®_3p3v>; | 235 | pinctrl-0 = <&sdhi0_pins>; |
236 | pinctrl-names = "default"; | ||
237 | |||
238 | vmmc-supply = <&vmmc_sdhi0>; | ||
156 | bus-width = <4>; | 239 | bus-width = <4>; |
157 | status = "okay"; | 240 | status = "okay"; |
158 | }; | 241 | }; |
159 | 242 | ||
160 | &sdhi2 { | 243 | &sdhi2 { |
161 | vmmc-supply = <®_3p3v>; | 244 | pinctrl-0 = <&sdhi2_pins>; |
245 | pinctrl-names = "default"; | ||
246 | |||
247 | vmmc-supply = <&vmmc_sdhi2>; | ||
162 | bus-width = <4>; | 248 | bus-width = <4>; |
163 | broken-cd; | 249 | broken-cd; |
164 | status = "okay"; | 250 | status = "okay"; |
diff --git a/arch/arm/boot/dts/sh73a0.dtsi b/arch/arm/boot/dts/sh73a0.dtsi index b97750256003..86e79feb7560 100644 --- a/arch/arm/boot/dts/sh73a0.dtsi +++ b/arch/arm/boot/dts/sh73a0.dtsi | |||
@@ -222,4 +222,12 @@ | |||
222 | cap-sd-highspeed; | 222 | cap-sd-highspeed; |
223 | status = "disabled"; | 223 | status = "disabled"; |
224 | }; | 224 | }; |
225 | |||
226 | pfc: pfc@e6050000 { | ||
227 | compatible = "renesas,pfc-sh73a0"; | ||
228 | reg = <0xe6050000 0x8000>, | ||
229 | <0xe605801c 0x1c>; | ||
230 | gpio-controller; | ||
231 | #gpio-cells = <2>; | ||
232 | }; | ||
225 | }; | 233 | }; |
diff --git a/arch/arm/boot/dts/socfpga.dtsi b/arch/arm/boot/dts/socfpga.dtsi index bee62a2cf6d6..e273fa993b8c 100644 --- a/arch/arm/boot/dts/socfpga.dtsi +++ b/arch/arm/boot/dts/socfpga.dtsi | |||
@@ -476,25 +476,25 @@ | |||
476 | }; | 476 | }; |
477 | 477 | ||
478 | timer0: timer0@ffc08000 { | 478 | timer0: timer0@ffc08000 { |
479 | compatible = "snps,dw-apb-timer-sp"; | 479 | compatible = "snps,dw-apb-timer"; |
480 | interrupts = <0 167 4>; | 480 | interrupts = <0 167 4>; |
481 | reg = <0xffc08000 0x1000>; | 481 | reg = <0xffc08000 0x1000>; |
482 | }; | 482 | }; |
483 | 483 | ||
484 | timer1: timer1@ffc09000 { | 484 | timer1: timer1@ffc09000 { |
485 | compatible = "snps,dw-apb-timer-sp"; | 485 | compatible = "snps,dw-apb-timer"; |
486 | interrupts = <0 168 4>; | 486 | interrupts = <0 168 4>; |
487 | reg = <0xffc09000 0x1000>; | 487 | reg = <0xffc09000 0x1000>; |
488 | }; | 488 | }; |
489 | 489 | ||
490 | timer2: timer2@ffd00000 { | 490 | timer2: timer2@ffd00000 { |
491 | compatible = "snps,dw-apb-timer-osc"; | 491 | compatible = "snps,dw-apb-timer"; |
492 | interrupts = <0 169 4>; | 492 | interrupts = <0 169 4>; |
493 | reg = <0xffd00000 0x1000>; | 493 | reg = <0xffd00000 0x1000>; |
494 | }; | 494 | }; |
495 | 495 | ||
496 | timer3: timer3@ffd01000 { | 496 | timer3: timer3@ffd01000 { |
497 | compatible = "snps,dw-apb-timer-osc"; | 497 | compatible = "snps,dw-apb-timer"; |
498 | interrupts = <0 170 4>; | 498 | interrupts = <0 170 4>; |
499 | reg = <0xffd01000 0x1000>; | 499 | reg = <0xffd01000 0x1000>; |
500 | }; | 500 | }; |
diff --git a/arch/arm/boot/dts/ste-ccu8540-pinctrl.dtsi b/arch/arm/boot/dts/ste-ccu8540-pinctrl.dtsi new file mode 100644 index 000000000000..e0799966bc25 --- /dev/null +++ b/arch/arm/boot/dts/ste-ccu8540-pinctrl.dtsi | |||
@@ -0,0 +1,196 @@ | |||
1 | /* | ||
2 | * Copyright 2012 ST-Ericsson | ||
3 | * | ||
4 | * 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 | * Version 2 or later at the following locations: | ||
7 | * | ||
8 | * http://www.opensource.org/licenses/gpl-license.html | ||
9 | * http://www.gnu.org/copyleft/gpl.html | ||
10 | */ | ||
11 | #include "ste-nomadik-pinctrl.dtsi" | ||
12 | |||
13 | / { | ||
14 | soc { | ||
15 | pinctrl { | ||
16 | uart0 { | ||
17 | uart0_default_mux: uart0_mux { | ||
18 | default_mux { | ||
19 | ste,function = "u0"; | ||
20 | ste,pins = "u0_a_1"; | ||
21 | }; | ||
22 | }; | ||
23 | |||
24 | uart0_default_mode: uart0_default { | ||
25 | default_cfg1 { | ||
26 | ste,pins = "GPIO0", "GPIO2"; | ||
27 | ste,config = <&in_pu>; | ||
28 | }; | ||
29 | |||
30 | default_cfg2 { | ||
31 | ste,pins = "GPIO1", "GPIO3"; | ||
32 | ste,config = <&out_hi>; | ||
33 | }; | ||
34 | }; | ||
35 | |||
36 | uart0_sleep_mode: uart0_sleep { | ||
37 | sleep_cfg1 { | ||
38 | ste,pins = "GPIO0", "GPIO2"; | ||
39 | ste,config = <&slpm_in_pu>; | ||
40 | }; | ||
41 | |||
42 | sleep_cfg2 { | ||
43 | ste,pins = "GPIO1", "GPIO3"; | ||
44 | ste,config = <&slpm_out_hi>; | ||
45 | }; | ||
46 | }; | ||
47 | }; | ||
48 | |||
49 | uart2 { | ||
50 | uart2_default_mode: uart2_default { | ||
51 | default_mux { | ||
52 | ste,function = "u2"; | ||
53 | ste,pins = "u2txrx_a_1"; | ||
54 | }; | ||
55 | |||
56 | default_cfg1 { | ||
57 | ste,pins = "GPIO120"; | ||
58 | ste,config = <&in_pu>; | ||
59 | }; | ||
60 | |||
61 | default_cfg2 { | ||
62 | ste,pins = "GPIO121"; | ||
63 | ste,config = <&out_hi>; | ||
64 | }; | ||
65 | }; | ||
66 | |||
67 | uart2_sleep_mode: uart2_sleep { | ||
68 | sleep_cfg1 { | ||
69 | ste,pins = "GPIO120"; | ||
70 | ste,config = <&slpm_in_pu>; | ||
71 | }; | ||
72 | |||
73 | sleep_cfg2 { | ||
74 | ste,pins = "GPIO121"; | ||
75 | ste,config = <&slpm_out_hi>; | ||
76 | }; | ||
77 | }; | ||
78 | }; | ||
79 | |||
80 | i2c0 { | ||
81 | i2c0_default_mux: i2c_mux { | ||
82 | default_mux { | ||
83 | ste,function = "i2c0"; | ||
84 | ste,pins = "i2c0_a_1"; | ||
85 | }; | ||
86 | }; | ||
87 | |||
88 | i2c0_default_mode: i2c_default { | ||
89 | default_cfg1 { | ||
90 | ste,pins = "GPIO147", "GPIO148"; | ||
91 | ste,config = <&in_pu>; | ||
92 | }; | ||
93 | }; | ||
94 | |||
95 | i2c0_sleep_mode: i2c_sleep { | ||
96 | sleep_cfg1 { | ||
97 | ste,pins = "GPIO147", "GPIO148"; | ||
98 | ste,config = <&slpm_in_pu>; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
102 | |||
103 | i2c1 { | ||
104 | i2c1_default_mux: i2c_mux { | ||
105 | default_mux { | ||
106 | ste,function = "i2c1"; | ||
107 | ste,pins = "i2c1_b_2"; | ||
108 | }; | ||
109 | }; | ||
110 | |||
111 | i2c1_default_mode: i2c_default { | ||
112 | default_cfg1 { | ||
113 | ste,pins = "GPIO16", "GPIO17"; | ||
114 | ste,config = <&in_pu>; | ||
115 | }; | ||
116 | }; | ||
117 | |||
118 | i2c1_sleep_mode: i2c_sleep { | ||
119 | sleep_cfg1 { | ||
120 | ste,pins = "GPIO16", "GPIO17"; | ||
121 | ste,config = <&slpm_in_pu>; | ||
122 | }; | ||
123 | }; | ||
124 | }; | ||
125 | |||
126 | i2c2 { | ||
127 | i2c2_default_mux: i2c_mux { | ||
128 | default_mux { | ||
129 | ste,function = "i2c2"; | ||
130 | ste,pins = "i2c2_b_2"; | ||
131 | }; | ||
132 | }; | ||
133 | |||
134 | i2c2_default_mode: i2c_default { | ||
135 | default_cfg1 { | ||
136 | ste,pins = "GPIO10", "GPIO11"; | ||
137 | ste,config = <&in_pu>; | ||
138 | }; | ||
139 | }; | ||
140 | |||
141 | i2c2_sleep_mode: i2c_sleep { | ||
142 | sleep_cfg1 { | ||
143 | ste,pins = "GPIO11", "GPIO11"; | ||
144 | ste,config = <&slpm_in_pu>; | ||
145 | }; | ||
146 | }; | ||
147 | }; | ||
148 | |||
149 | i2c4 { | ||
150 | i2c4_default_mux: i2c_mux { | ||
151 | default_mux { | ||
152 | ste,function = "i2c4"; | ||
153 | ste,pins = "i2c4_b_2"; | ||
154 | }; | ||
155 | }; | ||
156 | |||
157 | i2c4_default_mode: i2c_default { | ||
158 | default_cfg1 { | ||
159 | ste,pins = "GPIO122", "GPIO123"; | ||
160 | ste,config = <&in_pu>; | ||
161 | }; | ||
162 | }; | ||
163 | |||
164 | i2c4_sleep_mode: i2c_sleep { | ||
165 | sleep_cfg1 { | ||
166 | ste,pins = "GPIO122", "GPIO123"; | ||
167 | ste,config = <&slpm_in_pu>; | ||
168 | }; | ||
169 | }; | ||
170 | }; | ||
171 | |||
172 | i2c5 { | ||
173 | i2c5_default_mux: i2c_mux { | ||
174 | default_mux { | ||
175 | ste,function = "i2c5"; | ||
176 | ste,pins = "i2c5_c_2"; | ||
177 | }; | ||
178 | }; | ||
179 | |||
180 | i2c5_default_mode: i2c_default { | ||
181 | default_cfg1 { | ||
182 | ste,pins = "GPIO118", "GPIO119"; | ||
183 | ste,config = <&in_pu>; | ||
184 | }; | ||
185 | }; | ||
186 | |||
187 | i2c5_sleep_mode: i2c_sleep { | ||
188 | sleep_cfg1 { | ||
189 | ste,pins = "GPIO118", "GPIO119"; | ||
190 | ste,config = <&slpm_in_pu>; | ||
191 | }; | ||
192 | }; | ||
193 | }; | ||
194 | }; | ||
195 | }; | ||
196 | }; | ||
diff --git a/arch/arm/boot/dts/ste-ccu8540.dts b/arch/arm/boot/dts/ste-ccu8540.dts new file mode 100644 index 000000000000..7f3baf51a3a9 --- /dev/null +++ b/arch/arm/boot/dts/ste-ccu8540.dts | |||
@@ -0,0 +1,86 @@ | |||
1 | /* | ||
2 | * Copyright 2013 ST-Ericsson AB | ||
3 | * | ||
4 | * 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 | * Version 2 or later at the following locations: | ||
7 | * | ||
8 | * http://www.opensource.org/licenses/gpl-license.html | ||
9 | * http://www.gnu.org/copyleft/gpl.html | ||
10 | */ | ||
11 | |||
12 | /dts-v1/; | ||
13 | #include "ste-dbx5x0.dtsi" | ||
14 | #include "ste-ccu8540-pinctrl.dtsi" | ||
15 | |||
16 | / { | ||
17 | model = "ST-Ericsson U8540 platform with Device Tree"; | ||
18 | compatible = "st-ericsson,ccu8540", "st-ericsson,u8540"; | ||
19 | |||
20 | memory@0 { | ||
21 | reg = <0x20000000 0x1f000000>, <0xc0000000 0x3f000000>; | ||
22 | }; | ||
23 | |||
24 | soc { | ||
25 | pinctrl { | ||
26 | compatible = "stericsson,db8540-pinctrl"; | ||
27 | }; | ||
28 | |||
29 | prcmu@80157000 { | ||
30 | reg = <0x80157000 0x2000>, <0x801b0000 0x8000>, <0x801b8000 0x3000>; | ||
31 | reg-names = "prcmu", "prcmu-tcpm", "prcmu-tcdm"; | ||
32 | }; | ||
33 | |||
34 | uart@80120000 { | ||
35 | pinctrl-names = "default", "sleep"; | ||
36 | pinctrl-0 = <&uart0_default_mux>, <&uart0_default_mode>; | ||
37 | pinctrl-1 = <&uart0_sleep_mode>; | ||
38 | status = "okay"; | ||
39 | }; | ||
40 | |||
41 | uart@80121000 { | ||
42 | status = "okay"; | ||
43 | }; | ||
44 | |||
45 | uart@80007000 { | ||
46 | pinctrl-names = "default", "sleep"; | ||
47 | pinctrl-0 = <&uart2_default_mode>; | ||
48 | pinctrl-1 = <&uart2_sleep_mode>; | ||
49 | status = "okay"; | ||
50 | }; | ||
51 | |||
52 | i2c0: i2c@80004000 { | ||
53 | pinctrl-names = "default","sleep"; | ||
54 | pinctrl-0 = <&i2c0_default_mux>, <&i2c0_default_mode>; | ||
55 | pinctrl-1 = <&i2c0_sleep_mode>; | ||
56 | }; | ||
57 | |||
58 | i2c1: i2c@80122000 { | ||
59 | pinctrl-names = "default","sleep"; | ||
60 | pinctrl-0 = <&i2c1_default_mux>, <&i2c1_default_mode>; | ||
61 | pinctrl-1 = <&i2c1_sleep_mode>; | ||
62 | }; | ||
63 | |||
64 | i2c2: i2c@80128000 { | ||
65 | pinctrl-names = "default","sleep"; | ||
66 | pinctrl-0 = <&i2c2_default_mux>, <&i2c2_default_mode>; | ||
67 | pinctrl-1 = <&i2c2_sleep_mode>; | ||
68 | }; | ||
69 | |||
70 | i2c3: i2c@80110000 { | ||
71 | status = "disabled"; | ||
72 | }; | ||
73 | |||
74 | i2c4: i2c@8012a000 { | ||
75 | pinctrl-names = "default","sleep"; | ||
76 | pinctrl-0 = <&i2c4_default_mux>, <&i2c4_default_mode>; | ||
77 | pinctrl-1 = <&i2c4_sleep_mode>; | ||
78 | }; | ||
79 | |||
80 | i2c5: i2c@80001000 { | ||
81 | pinctrl-names = "default","sleep"; | ||
82 | pinctrl-0 = <&i2c5_default_mux>, <&i2c5_default_mode>; | ||
83 | pinctrl-1 = <&i2c5_sleep_mode>; | ||
84 | }; | ||
85 | }; | ||
86 | }; | ||
diff --git a/arch/arm/boot/dts/ccu9540.dts b/arch/arm/boot/dts/ste-ccu9540.dts index ed29ec7288e4..229508750890 100644 --- a/arch/arm/boot/dts/ccu9540.dts +++ b/arch/arm/boot/dts/ste-ccu9540.dts | |||
@@ -10,7 +10,7 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | /dts-v1/; | 12 | /dts-v1/; |
13 | #include "dbx5x0.dtsi" | 13 | #include "ste-dbx5x0.dtsi" |
14 | 14 | ||
15 | / { | 15 | / { |
16 | model = "ST-Ericsson CCU9540 platform with Device Tree"; | 16 | model = "ST-Ericsson CCU9540 platform with Device Tree"; |
diff --git a/arch/arm/boot/dts/dbx5x0.dtsi b/arch/arm/boot/dts/ste-dbx5x0.dtsi index a1529455f081..1c1091eedade 100644 --- a/arch/arm/boot/dts/dbx5x0.dtsi +++ b/arch/arm/boot/dts/ste-dbx5x0.dtsi | |||
@@ -245,7 +245,7 @@ | |||
245 | <22 IRQ_TYPE_LEVEL_HIGH>; | 245 | <22 IRQ_TYPE_LEVEL_HIGH>; |
246 | interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH"; | 246 | interrupt-names = "IRQ_HOTMON_LOW", "IRQ_HOTMON_HIGH"; |
247 | status = "disabled"; | 247 | status = "disabled"; |
248 | }; | 248 | }; |
249 | 249 | ||
250 | db8500-prcmu-regulators { | 250 | db8500-prcmu-regulators { |
251 | compatible = "stericsson,db8500-prcmu-regulator"; | 251 | compatible = "stericsson,db8500-prcmu-regulator"; |
@@ -457,8 +457,36 @@ | |||
457 | stericsson,earpeice-cmv = <950>; /* Units in mV. */ | 457 | stericsson,earpeice-cmv = <950>; /* Units in mV. */ |
458 | }; | 458 | }; |
459 | 459 | ||
460 | ext_regulators: ab8500-ext-regulators { | ||
461 | compatible = "stericsson,ab8500-ext-regulator"; | ||
462 | |||
463 | ab8500_ext1_reg: ab8500_ext1 { | ||
464 | regulator-compatible = "ab8500_ext1"; | ||
465 | regulator-min-microvolt = <1800000>; | ||
466 | regulator-max-microvolt = <1800000>; | ||
467 | regulator-boot-on; | ||
468 | regulator-always-on; | ||
469 | }; | ||
470 | |||
471 | ab8500_ext2_reg: ab8500_ext2 { | ||
472 | regulator-compatible = "ab8500_ext2"; | ||
473 | regulator-min-microvolt = <1360000>; | ||
474 | regulator-max-microvolt = <1360000>; | ||
475 | regulator-boot-on; | ||
476 | regulator-always-on; | ||
477 | }; | ||
478 | |||
479 | ab8500_ext3_reg: ab8500_ext3 { | ||
480 | regulator-compatible = "ab8500_ext3"; | ||
481 | regulator-min-microvolt = <3400000>; | ||
482 | regulator-max-microvolt = <3400000>; | ||
483 | regulator-boot-on; | ||
484 | }; | ||
485 | }; | ||
486 | |||
460 | ab8500-regulators { | 487 | ab8500-regulators { |
461 | compatible = "stericsson,ab8500-regulator"; | 488 | compatible = "stericsson,ab8500-regulator"; |
489 | vin-supply = <&ab8500_ext3_reg>; | ||
462 | 490 | ||
463 | // supplies to the display/camera | 491 | // supplies to the display/camera |
464 | ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { | 492 | ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { |
diff --git a/arch/arm/boot/dts/href.dtsi b/arch/arm/boot/dts/ste-href.dtsi index 9db41b9d8358..370e03f5e7b2 100644 --- a/arch/arm/boot/dts/href.dtsi +++ b/arch/arm/boot/dts/ste-href.dtsi | |||
@@ -10,7 +10,7 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | #include <dt-bindings/interrupt-controller/irq.h> | 12 | #include <dt-bindings/interrupt-controller/irq.h> |
13 | #include "dbx5x0.dtsi" | 13 | #include "ste-dbx5x0.dtsi" |
14 | 14 | ||
15 | / { | 15 | / { |
16 | memory { | 16 | memory { |
diff --git a/arch/arm/boot/dts/hrefprev60.dts b/arch/arm/boot/dts/ste-hrefprev60.dts index c6bb07df2d1d..d8d3b99ab007 100644 --- a/arch/arm/boot/dts/hrefprev60.dts +++ b/arch/arm/boot/dts/ste-hrefprev60.dts | |||
@@ -10,9 +10,9 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | /dts-v1/; | 12 | /dts-v1/; |
13 | #include "dbx5x0.dtsi" | 13 | #include "ste-dbx5x0.dtsi" |
14 | #include "href.dtsi" | 14 | #include "ste-href.dtsi" |
15 | #include "stuib.dtsi" | 15 | #include "ste-stuib.dtsi" |
16 | 16 | ||
17 | / { | 17 | / { |
18 | model = "ST-Ericsson HREF (pre-v60) platform with Device Tree"; | 18 | model = "ST-Ericsson HREF (pre-v60) platform with Device Tree"; |
diff --git a/arch/arm/boot/dts/hrefv60plus.dts b/arch/arm/boot/dts/ste-hrefv60plus.dts index 3d580d6447f9..6e52ebbf113f 100644 --- a/arch/arm/boot/dts/hrefv60plus.dts +++ b/arch/arm/boot/dts/ste-hrefv60plus.dts | |||
@@ -10,9 +10,9 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | /dts-v1/; | 12 | /dts-v1/; |
13 | #include "dbx5x0.dtsi" | 13 | #include "ste-dbx5x0.dtsi" |
14 | #include "href.dtsi" | 14 | #include "ste-href.dtsi" |
15 | #include "stuib.dtsi" | 15 | #include "ste-stuib.dtsi" |
16 | 16 | ||
17 | / { | 17 | / { |
18 | model = "ST-Ericsson HREF (v60+) platform with Device Tree"; | 18 | model = "ST-Ericsson HREF (v60+) platform with Device Tree"; |
diff --git a/arch/arm/boot/dts/ste-nomadik-pinctrl.dtsi b/arch/arm/boot/dts/ste-nomadik-pinctrl.dtsi new file mode 100644 index 000000000000..efddee9403c4 --- /dev/null +++ b/arch/arm/boot/dts/ste-nomadik-pinctrl.dtsi | |||
@@ -0,0 +1,95 @@ | |||
1 | /* | ||
2 | * Copyright 2012 ST-Ericsson | ||
3 | * | ||
4 | * 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 | * Version 2 or later at the following locations: | ||
7 | * | ||
8 | * http://www.opensource.org/licenses/gpl-license.html | ||
9 | * http://www.gnu.org/copyleft/gpl.html | ||
10 | */ | ||
11 | #include <dt-bindings/pinctrl/nomadik.h> | ||
12 | |||
13 | / { | ||
14 | in_nopull: in_nopull { | ||
15 | ste,input = <INPUT_NOPULL>; | ||
16 | }; | ||
17 | |||
18 | in_pu: input_pull_up { | ||
19 | ste,input = <INPUT_PULLUP>; | ||
20 | }; | ||
21 | |||
22 | in_pd: input_pull_down { | ||
23 | ste,input = <INPUT_PULLDOWN>; | ||
24 | }; | ||
25 | |||
26 | out_hi: output_high { | ||
27 | ste,output = <OUTPUT_HIGH>; | ||
28 | }; | ||
29 | |||
30 | out_lo: output_low { | ||
31 | ste,output = <OUTPUT_LOW>; | ||
32 | }; | ||
33 | |||
34 | gpio_out_lo: gpio_output_low { | ||
35 | ste,gpio = <GPIOMODE_ENABLED>; | ||
36 | ste,output = <OUTPUT_LOW>; | ||
37 | }; | ||
38 | |||
39 | slpm_in_pu: slpm_in_pu { | ||
40 | ste,sleep = <SLPM_ENABLED>; | ||
41 | ste,sleep-input = <SLPM_INPUT_PULLUP>; | ||
42 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
43 | }; | ||
44 | |||
45 | slpm_in_wkup_pdis: slpm_in_wkup_pdis { | ||
46 | ste,sleep = <SLPM_ENABLED>; | ||
47 | ste,sleep-input = <SLPM_DIR_INPUT>; | ||
48 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
49 | ste,sleep-pull-disable = <SLPM_PDIS_DISABLED>; | ||
50 | }; | ||
51 | |||
52 | slpm_out_lo: slpm_out_lo { | ||
53 | ste,sleep = <SLPM_ENABLED>; | ||
54 | ste,sleep-output = <SLPM_OUTPUT_LOW>; | ||
55 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
56 | }; | ||
57 | |||
58 | slpm_out_hi: slpm_out_hi { | ||
59 | ste,sleep = <SLPM_ENABLED>; | ||
60 | ste,sleep-output = <SLPM_OUTPUT_HIGH>; | ||
61 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
62 | }; | ||
63 | |||
64 | slpm_out_hi_wkup_pdis: slpm_out_hi_wkup_pdis { | ||
65 | ste,sleep = <SLPM_ENABLED>; | ||
66 | ste,sleep-output = <SLPM_OUTPUT_HIGH>; | ||
67 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
68 | ste,sleep-pull-disable = <SLPM_PDIS_DISABLED>; | ||
69 | }; | ||
70 | |||
71 | slpm_out_wkup_pdis: slpm_out_wkup_pdis { | ||
72 | ste,sleep = <SLPM_ENABLED>; | ||
73 | ste,sleep-output = <SLPM_DIR_OUTPUT>; | ||
74 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
75 | ste,sleep-pull-disable = <SLPM_PDIS_DISABLED>; | ||
76 | }; | ||
77 | |||
78 | in_wkup_pdis: in_wkup_pdis { | ||
79 | ste,sleep-input = <SLPM_DIR_INPUT>; | ||
80 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
81 | ste,sleep-pull-disable = <SLPM_PDIS_DISABLED>; | ||
82 | }; | ||
83 | |||
84 | out_hi_wkup_pdis: out_hi_wkup_pdis { | ||
85 | ste,sleep-output = <SLPM_OUTPUT_HIGH>; | ||
86 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
87 | ste,sleep-pull-disable = <SLPM_PDIS_DISABLED>; | ||
88 | }; | ||
89 | |||
90 | out_wkup_pdis: out_wkup_pdis { | ||
91 | ste,sleep-output = <SLPM_DIR_OUTPUT>; | ||
92 | ste,sleep-wakeup = <SLPM_WAKEUP_ENABLE>; | ||
93 | ste,sleep-pull-disable = <SLPM_PDIS_DISABLED>; | ||
94 | }; | ||
95 | }; | ||
diff --git a/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi b/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi index a3acfa7b3dc9..9169d3025f39 100644 --- a/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi +++ b/arch/arm/boot/dts/ste-nomadik-stn8815.dtsi | |||
@@ -140,18 +140,30 @@ | |||
140 | }; | 140 | }; |
141 | }; | 141 | }; |
142 | i2c0 { | 142 | i2c0 { |
143 | i2c0_default_mux: i2c0_mux { | ||
144 | i2c0_default_mux { | ||
145 | ste,function = "i2c0"; | ||
146 | ste,pins = "i2c0_a_1"; | ||
147 | }; | ||
148 | }; | ||
143 | i2c0_default_mode: i2c0_default { | 149 | i2c0_default_mode: i2c0_default { |
144 | i2c0_default_cfg { | 150 | i2c0_default_cfg { |
145 | ste,pins = "GPIO62_D3", "GPIO63_D2"; | 151 | ste,pins = "GPIO62_D3", "GPIO63_D2"; |
146 | ste,input = <1>; | 152 | ste,input = <0>; |
147 | }; | 153 | }; |
148 | }; | 154 | }; |
149 | }; | 155 | }; |
150 | i2c1 { | 156 | i2c1 { |
157 | i2c1_default_mux: i2c1_mux { | ||
158 | i2c1_default_mux { | ||
159 | ste,function = "i2c1"; | ||
160 | ste,pins = "i2c1_a_1"; | ||
161 | }; | ||
162 | }; | ||
151 | i2c1_default_mode: i2c1_default { | 163 | i2c1_default_mode: i2c1_default { |
152 | i2c1_default_cfg { | 164 | i2c1_default_cfg { |
153 | ste,pins = "GPIO53_L4", "GPIO54_L3"; | 165 | ste,pins = "GPIO53_L4", "GPIO54_L3"; |
154 | ste,input = <1>; | 166 | ste,input = <0>; |
155 | }; | 167 | }; |
156 | }; | 168 | }; |
157 | }; | 169 | }; |
@@ -159,7 +171,7 @@ | |||
159 | i2c2_default_mode: i2c2_default { | 171 | i2c2_default_mode: i2c2_default { |
160 | i2c2_default_cfg { | 172 | i2c2_default_cfg { |
161 | ste,pins = "GPIO73_C21", "GPIO74_C20"; | 173 | ste,pins = "GPIO73_C21", "GPIO74_C20"; |
162 | ste,input = <1>; | 174 | ste,input = <0>; |
163 | }; | 175 | }; |
164 | }; | 176 | }; |
165 | }; | 177 | }; |
@@ -682,13 +694,17 @@ | |||
682 | 694 | ||
683 | /* I2C0 connected to the STw4811 power management chip */ | 695 | /* I2C0 connected to the STw4811 power management chip */ |
684 | i2c0 { | 696 | i2c0 { |
685 | compatible = "i2c-gpio"; | 697 | compatible = "st,nomadik-i2c", "arm,primecell"; |
686 | gpios = <&gpio1 31 0>, /* sda */ | 698 | reg = <0x101f8000 0x1000>; |
687 | <&gpio1 30 0>; /* scl */ | 699 | interrupt-parent = <&vica>; |
700 | interrupts = <20>; | ||
701 | clock-frequency = <100000>; | ||
688 | #address-cells = <1>; | 702 | #address-cells = <1>; |
689 | #size-cells = <0>; | 703 | #size-cells = <0>; |
704 | clocks = <&i2c0clk>, <&pclki2c0>; | ||
705 | clock-names = "mclk", "apb_pclk"; | ||
690 | pinctrl-names = "default"; | 706 | pinctrl-names = "default"; |
691 | pinctrl-0 = <&i2c0_default_mode>; | 707 | pinctrl-0 = <&i2c0_default_mux>, <&i2c0_default_mode>; |
692 | 708 | ||
693 | stw4811@2d { | 709 | stw4811@2d { |
694 | compatible = "st,stw4811"; | 710 | compatible = "st,stw4811"; |
@@ -698,13 +714,17 @@ | |||
698 | 714 | ||
699 | /* I2C1 connected to various sensors */ | 715 | /* I2C1 connected to various sensors */ |
700 | i2c1 { | 716 | i2c1 { |
701 | compatible = "i2c-gpio"; | 717 | compatible = "st,nomadik-i2c", "arm,primecell"; |
702 | gpios = <&gpio1 22 0>, /* sda */ | 718 | reg = <0x101f7000 0x1000>; |
703 | <&gpio1 21 0>; /* scl */ | 719 | interrupt-parent = <&vica>; |
720 | interrupts = <21>; | ||
721 | clock-frequency = <100000>; | ||
704 | #address-cells = <1>; | 722 | #address-cells = <1>; |
705 | #size-cells = <0>; | 723 | #size-cells = <0>; |
724 | clocks = <&i2c1clk>, <&pclki2c1>; | ||
725 | clock-names = "mclk", "apb_pclk"; | ||
706 | pinctrl-names = "default"; | 726 | pinctrl-names = "default"; |
707 | pinctrl-0 = <&i2c1_default_mode>; | 727 | pinctrl-0 = <&i2c1_default_mux>, <&i2c1_default_mode>; |
708 | 728 | ||
709 | camera@2d { | 729 | camera@2d { |
710 | compatible = "st,camera"; | 730 | compatible = "st,camera"; |
diff --git a/arch/arm/boot/dts/snowball.dts b/arch/arm/boot/dts/ste-snowball.dts index 49824be66845..f1fc128e249d 100644 --- a/arch/arm/boot/dts/snowball.dts +++ b/arch/arm/boot/dts/ste-snowball.dts | |||
@@ -10,7 +10,7 @@ | |||
10 | */ | 10 | */ |
11 | 11 | ||
12 | /dts-v1/; | 12 | /dts-v1/; |
13 | #include "dbx5x0.dtsi" | 13 | #include "ste-dbx5x0.dtsi" |
14 | 14 | ||
15 | / { | 15 | / { |
16 | model = "Calao Systems Snowball platform with device tree"; | 16 | model = "Calao Systems Snowball platform with device tree"; |
@@ -165,34 +165,6 @@ | |||
165 | status = "okay"; | 165 | status = "okay"; |
166 | }; | 166 | }; |
167 | 167 | ||
168 | i2c@80004000 { | ||
169 | tc3589x@42 { | ||
170 | //compatible = "tc3589x"; | ||
171 | reg = <0x42>; | ||
172 | gpios = <&gpio6 25 0x4>; | ||
173 | interrupt-parent = <&gpio6>; | ||
174 | }; | ||
175 | tps61052@33 { | ||
176 | //compatible = "tps61052"; | ||
177 | reg = <0x33>; | ||
178 | }; | ||
179 | }; | ||
180 | |||
181 | i2c@80128000 { | ||
182 | lp5521@33 { | ||
183 | // compatible = "lp5521"; | ||
184 | reg = <0x33>; | ||
185 | }; | ||
186 | lp5521@34 { | ||
187 | // compatible = "lp5521"; | ||
188 | reg = <0x34>; | ||
189 | }; | ||
190 | bh1780@29 { | ||
191 | // compatible = "rohm,bh1780gli"; | ||
192 | reg = <0x33>; | ||
193 | }; | ||
194 | }; | ||
195 | |||
196 | cpufreq-cooling { | 168 | cpufreq-cooling { |
197 | status = "okay"; | 169 | status = "okay"; |
198 | }; | 170 | }; |
@@ -310,6 +282,20 @@ | |||
310 | compatible = "stericsson,ab8500-gpio"; | 282 | compatible = "stericsson,ab8500-gpio"; |
311 | }; | 283 | }; |
312 | 284 | ||
285 | ext_regulators: ab8500-ext-regulators { | ||
286 | ab8500_ext1_reg: ab8500_ext1 { | ||
287 | regulator-name = "ab8500-ext-supply1"; | ||
288 | }; | ||
289 | |||
290 | ab8500_ext2_reg_reg: ab8500_ext2 { | ||
291 | regulator-name = "ab8500-ext-supply2"; | ||
292 | }; | ||
293 | |||
294 | ab8500_ext3_reg_reg: ab8500_ext3 { | ||
295 | regulator-name = "ab8500-ext-supply3"; | ||
296 | }; | ||
297 | }; | ||
298 | |||
313 | ab8500-regulators { | 299 | ab8500-regulators { |
314 | ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { | 300 | ab8500_ldo_aux1_reg: ab8500_ldo_aux1 { |
315 | regulator-name = "V-DISPLAY"; | 301 | regulator-name = "V-DISPLAY"; |
diff --git a/arch/arm/boot/dts/stuib.dtsi b/arch/arm/boot/dts/ste-stuib.dtsi index 524e33240ad4..524e33240ad4 100644 --- a/arch/arm/boot/dts/stuib.dtsi +++ b/arch/arm/boot/dts/ste-stuib.dtsi | |||
diff --git a/arch/arm/boot/dts/sun4i-a10-a1000.dts b/arch/arm/boot/dts/sun4i-a10-a1000.dts new file mode 100644 index 000000000000..eb4d73b6a090 --- /dev/null +++ b/arch/arm/boot/dts/sun4i-a10-a1000.dts | |||
@@ -0,0 +1,101 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Emilio López | ||
3 | * | ||
4 | * Emilio López <emilio@elopez.com.ar> | ||
5 | * | ||
6 | * The code contained herein is licensed under the GNU General Public | ||
7 | * License. You may obtain a copy of the GNU General Public License | ||
8 | * Version 2 or later at the following locations: | ||
9 | * | ||
10 | * http://www.opensource.org/licenses/gpl-license.html | ||
11 | * http://www.gnu.org/copyleft/gpl.html | ||
12 | */ | ||
13 | |||
14 | /dts-v1/; | ||
15 | /include/ "sun4i-a10.dtsi" | ||
16 | |||
17 | / { | ||
18 | model = "Mele A1000"; | ||
19 | compatible = "mele,a1000", "allwinner,sun4i-a10"; | ||
20 | |||
21 | aliases { | ||
22 | serial0 = &uart0; | ||
23 | }; | ||
24 | |||
25 | soc@01c00000 { | ||
26 | emac: ethernet@01c0b000 { | ||
27 | pinctrl-names = "default"; | ||
28 | pinctrl-0 = <&emac_pins_a>; | ||
29 | phy = <&phy1>; | ||
30 | status = "okay"; | ||
31 | }; | ||
32 | |||
33 | mdio@01c0b080 { | ||
34 | phy-supply = <®_emac_3v3>; | ||
35 | status = "okay"; | ||
36 | |||
37 | phy1: ethernet-phy@1 { | ||
38 | reg = <1>; | ||
39 | }; | ||
40 | }; | ||
41 | |||
42 | pinctrl@01c20800 { | ||
43 | emac_power_pin_a1000: emac_power_pin@0 { | ||
44 | allwinner,pins = "PH15"; | ||
45 | allwinner,function = "gpio_out"; | ||
46 | allwinner,drive = <0>; | ||
47 | allwinner,pull = <0>; | ||
48 | }; | ||
49 | |||
50 | led_pins_a1000: led_pins@0 { | ||
51 | allwinner,pins = "PH10", "PH20"; | ||
52 | allwinner,function = "gpio_out"; | ||
53 | allwinner,drive = <0>; | ||
54 | allwinner,pull = <0>; | ||
55 | }; | ||
56 | }; | ||
57 | |||
58 | uart0: serial@01c28000 { | ||
59 | pinctrl-names = "default"; | ||
60 | pinctrl-0 = <&uart0_pins_a>; | ||
61 | status = "okay"; | ||
62 | }; | ||
63 | |||
64 | i2c0: i2c@01c2ac00 { | ||
65 | pinctrl-names = "default"; | ||
66 | pinctrl-0 = <&i2c0_pins_a>; | ||
67 | status = "okay"; | ||
68 | }; | ||
69 | }; | ||
70 | |||
71 | leds { | ||
72 | compatible = "gpio-leds"; | ||
73 | pinctrl-names = "default"; | ||
74 | pinctrl-0 = <&led_pins_a1000>; | ||
75 | |||
76 | red { | ||
77 | label = "a1000:red:usr"; | ||
78 | gpios = <&pio 7 10 0>; | ||
79 | }; | ||
80 | |||
81 | blue { | ||
82 | label = "a1000:blue:usr"; | ||
83 | gpios = <&pio 7 20 0>; | ||
84 | }; | ||
85 | }; | ||
86 | |||
87 | regulators { | ||
88 | compatible = "simple-bus"; | ||
89 | |||
90 | reg_emac_3v3: emac-3v3 { | ||
91 | compatible = "regulator-fixed"; | ||
92 | pinctrl-names = "default"; | ||
93 | pinctrl-0 = <&emac_power_pin_a1000>; | ||
94 | regulator-name = "emac-3v3"; | ||
95 | regulator-min-microvolt = <3300000>; | ||
96 | regulator-max-microvolt = <3300000>; | ||
97 | enable-active-high; | ||
98 | gpio = <&pio 7 15 0>; | ||
99 | }; | ||
100 | }; | ||
101 | }; | ||
diff --git a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts index 757c4cd900ee..425a7db898c5 100644 --- a/arch/arm/boot/dts/sun4i-a10-cubieboard.dts +++ b/arch/arm/boot/dts/sun4i-a10-cubieboard.dts | |||
@@ -26,7 +26,7 @@ | |||
26 | bootargs = "earlyprintk console=ttyS0,115200"; | 26 | bootargs = "earlyprintk console=ttyS0,115200"; |
27 | }; | 27 | }; |
28 | 28 | ||
29 | soc@01c20000 { | 29 | soc@01c00000 { |
30 | emac: ethernet@01c0b000 { | 30 | emac: ethernet@01c0b000 { |
31 | pinctrl-names = "default"; | 31 | pinctrl-names = "default"; |
32 | pinctrl-0 = <&emac_pins_a>; | 32 | pinctrl-0 = <&emac_pins_a>; |
@@ -76,12 +76,12 @@ | |||
76 | pinctrl-0 = <&led_pins_cubieboard>; | 76 | pinctrl-0 = <&led_pins_cubieboard>; |
77 | 77 | ||
78 | blue { | 78 | blue { |
79 | label = "cubieboard::blue"; | 79 | label = "cubieboard:blue:usr"; |
80 | gpios = <&pio 7 21 0>; /* LED1 */ | 80 | gpios = <&pio 7 21 0>; /* LED1 */ |
81 | }; | 81 | }; |
82 | 82 | ||
83 | green { | 83 | green { |
84 | label = "cubieboard::green"; | 84 | label = "cubieboard:green:usr"; |
85 | gpios = <&pio 7 20 0>; /* LED2 */ | 85 | gpios = <&pio 7 20 0>; /* LED2 */ |
86 | linux,default-trigger = "heartbeat"; | 86 | linux,default-trigger = "heartbeat"; |
87 | }; | 87 | }; |
diff --git a/arch/arm/boot/dts/sun4i-a10-hackberry.dts b/arch/arm/boot/dts/sun4i-a10-hackberry.dts index 3514b37d66bc..b3ae51fa9372 100644 --- a/arch/arm/boot/dts/sun4i-a10-hackberry.dts +++ b/arch/arm/boot/dts/sun4i-a10-hackberry.dts | |||
@@ -22,7 +22,7 @@ | |||
22 | bootargs = "earlyprintk console=ttyS0,115200"; | 22 | bootargs = "earlyprintk console=ttyS0,115200"; |
23 | }; | 23 | }; |
24 | 24 | ||
25 | soc@01c20000 { | 25 | soc@01c00000 { |
26 | emac: ethernet@01c0b000 { | 26 | emac: ethernet@01c0b000 { |
27 | pinctrl-names = "default"; | 27 | pinctrl-names = "default"; |
28 | pinctrl-0 = <&emac_pins_a>; | 28 | pinctrl-0 = <&emac_pins_a>; |
diff --git a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts index 078ed7f618d7..0c1447c68059 100644 --- a/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts +++ b/arch/arm/boot/dts/sun4i-a10-mini-xplus.dts | |||
@@ -22,7 +22,7 @@ | |||
22 | bootargs = "earlyprintk console=ttyS0,115200"; | 22 | bootargs = "earlyprintk console=ttyS0,115200"; |
23 | }; | 23 | }; |
24 | 24 | ||
25 | soc@01c20000 { | 25 | soc@01c00000 { |
26 | uart0: serial@01c28000 { | 26 | uart0: serial@01c28000 { |
27 | pinctrl-names = "default"; | 27 | pinctrl-names = "default"; |
28 | pinctrl-0 = <&uart0_pins_a>; | 28 | pinctrl-0 = <&uart0_pins_a>; |
diff --git a/arch/arm/boot/dts/sun4i-a10.dtsi b/arch/arm/boot/dts/sun4i-a10.dtsi index b2bd6e124250..c32770a28acf 100644 --- a/arch/arm/boot/dts/sun4i-a10.dtsi +++ b/arch/arm/boot/dts/sun4i-a10.dtsi | |||
@@ -160,11 +160,10 @@ | |||
160 | }; | 160 | }; |
161 | }; | 161 | }; |
162 | 162 | ||
163 | soc@01c20000 { | 163 | soc@01c00000 { |
164 | compatible = "simple-bus"; | 164 | compatible = "simple-bus"; |
165 | #address-cells = <1>; | 165 | #address-cells = <1>; |
166 | #size-cells = <1>; | 166 | #size-cells = <1>; |
167 | reg = <0x01c20000 0x300000>; | ||
168 | ranges; | 167 | ranges; |
169 | 168 | ||
170 | emac: ethernet@01c0b000 { | 169 | emac: ethernet@01c0b000 { |
diff --git a/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts b/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts index 64dc0c42c43a..3c9f8b3cd3e3 100644 --- a/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts +++ b/arch/arm/boot/dts/sun5i-a10s-olinuxino-micro.dts | |||
@@ -18,7 +18,7 @@ | |||
18 | model = "Olimex A10s-Olinuxino Micro"; | 18 | model = "Olimex A10s-Olinuxino Micro"; |
19 | compatible = "olimex,a10s-olinuxino-micro", "allwinner,sun5i-a10s"; | 19 | compatible = "olimex,a10s-olinuxino-micro", "allwinner,sun5i-a10s"; |
20 | 20 | ||
21 | soc@01c20000 { | 21 | soc@01c00000 { |
22 | emac: ethernet@01c0b000 { | 22 | emac: ethernet@01c0b000 { |
23 | pinctrl-names = "default"; | 23 | pinctrl-names = "default"; |
24 | pinctrl-0 = <&emac_pins_a>; | 24 | pinctrl-0 = <&emac_pins_a>; |
@@ -60,6 +60,31 @@ | |||
60 | pinctrl-0 = <&uart3_pins_a>; | 60 | pinctrl-0 = <&uart3_pins_a>; |
61 | status = "okay"; | 61 | status = "okay"; |
62 | }; | 62 | }; |
63 | |||
64 | i2c0: i2c@01c2ac00 { | ||
65 | pinctrl-names = "default"; | ||
66 | pinctrl-0 = <&i2c0_pins_a>; | ||
67 | status = "okay"; | ||
68 | }; | ||
69 | |||
70 | i2c1: i2c@01c2b000 { | ||
71 | pinctrl-names = "default"; | ||
72 | pinctrl-0 = <&i2c1_pins_a>; | ||
73 | status = "okay"; | ||
74 | |||
75 | at24@50 { | ||
76 | compatible = "at,24c16"; | ||
77 | pagesize = <16>; | ||
78 | reg = <0x50>; | ||
79 | read-only; | ||
80 | }; | ||
81 | }; | ||
82 | |||
83 | i2c2: i2c@01c2b400 { | ||
84 | pinctrl-names = "default"; | ||
85 | pinctrl-0 = <&i2c2_pins_a>; | ||
86 | status = "okay"; | ||
87 | }; | ||
63 | }; | 88 | }; |
64 | 89 | ||
65 | leds { | 90 | leds { |
diff --git a/arch/arm/boot/dts/sun5i-a10s.dtsi b/arch/arm/boot/dts/sun5i-a10s.dtsi index 2307ce827ae0..ee0ff9ba1bca 100644 --- a/arch/arm/boot/dts/sun5i-a10s.dtsi +++ b/arch/arm/boot/dts/sun5i-a10s.dtsi | |||
@@ -157,11 +157,10 @@ | |||
157 | }; | 157 | }; |
158 | }; | 158 | }; |
159 | 159 | ||
160 | soc@01c20000 { | 160 | soc@01c00000 { |
161 | compatible = "simple-bus"; | 161 | compatible = "simple-bus"; |
162 | #address-cells = <1>; | 162 | #address-cells = <1>; |
163 | #size-cells = <1>; | 163 | #size-cells = <1>; |
164 | reg = <0x01c20000 0x300000>; | ||
165 | ranges; | 164 | ranges; |
166 | 165 | ||
167 | emac: ethernet@01c0b000 { | 166 | emac: ethernet@01c0b000 { |
@@ -229,6 +228,27 @@ | |||
229 | allwinner,drive = <0>; | 228 | allwinner,drive = <0>; |
230 | allwinner,pull = <0>; | 229 | allwinner,pull = <0>; |
231 | }; | 230 | }; |
231 | |||
232 | i2c0_pins_a: i2c0@0 { | ||
233 | allwinner,pins = "PB0", "PB1"; | ||
234 | allwinner,function = "i2c0"; | ||
235 | allwinner,drive = <0>; | ||
236 | allwinner,pull = <0>; | ||
237 | }; | ||
238 | |||
239 | i2c1_pins_a: i2c1@0 { | ||
240 | allwinner,pins = "PB15", "PB16"; | ||
241 | allwinner,function = "i2c1"; | ||
242 | allwinner,drive = <0>; | ||
243 | allwinner,pull = <0>; | ||
244 | }; | ||
245 | |||
246 | i2c2_pins_a: i2c2@0 { | ||
247 | allwinner,pins = "PB17", "PB18"; | ||
248 | allwinner,function = "i2c2"; | ||
249 | allwinner,drive = <0>; | ||
250 | allwinner,pull = <0>; | ||
251 | }; | ||
232 | }; | 252 | }; |
233 | 253 | ||
234 | timer@01c20c00 { | 254 | timer@01c20c00 { |
@@ -282,5 +302,38 @@ | |||
282 | clocks = <&apb1_gates 19>; | 302 | clocks = <&apb1_gates 19>; |
283 | status = "disabled"; | 303 | status = "disabled"; |
284 | }; | 304 | }; |
305 | |||
306 | i2c0: i2c@01c2ac00 { | ||
307 | #address-cells = <1>; | ||
308 | #size-cells = <0>; | ||
309 | compatible = "allwinner,sun4i-i2c"; | ||
310 | reg = <0x01c2ac00 0x400>; | ||
311 | interrupts = <7>; | ||
312 | clocks = <&apb1_gates 0>; | ||
313 | clock-frequency = <100000>; | ||
314 | status = "disabled"; | ||
315 | }; | ||
316 | |||
317 | i2c1: i2c@01c2b000 { | ||
318 | #address-cells = <1>; | ||
319 | #size-cells = <0>; | ||
320 | compatible = "allwinner,sun4i-i2c"; | ||
321 | reg = <0x01c2b000 0x400>; | ||
322 | interrupts = <8>; | ||
323 | clocks = <&apb1_gates 1>; | ||
324 | clock-frequency = <100000>; | ||
325 | status = "disabled"; | ||
326 | }; | ||
327 | |||
328 | i2c2: i2c@01c2b400 { | ||
329 | #address-cells = <1>; | ||
330 | #size-cells = <0>; | ||
331 | compatible = "allwinner,sun4i-i2c"; | ||
332 | reg = <0x01c2b400 0x400>; | ||
333 | interrupts = <9>; | ||
334 | clocks = <&apb1_gates 2>; | ||
335 | clock-frequency = <100000>; | ||
336 | status = "disabled"; | ||
337 | }; | ||
285 | }; | 338 | }; |
286 | }; | 339 | }; |
diff --git a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts index 80497e376706..9e508dcc4245 100644 --- a/arch/arm/boot/dts/sun5i-a13-olinuxino.dts +++ b/arch/arm/boot/dts/sun5i-a13-olinuxino.dts | |||
@@ -22,7 +22,7 @@ | |||
22 | bootargs = "earlyprintk console=ttyS0,115200"; | 22 | bootargs = "earlyprintk console=ttyS0,115200"; |
23 | }; | 23 | }; |
24 | 24 | ||
25 | soc@01c20000 { | 25 | soc@01c00000 { |
26 | pinctrl@01c20800 { | 26 | pinctrl@01c20800 { |
27 | led_pins_olinuxino: led_pins@0 { | 27 | led_pins_olinuxino: led_pins@0 { |
28 | allwinner,pins = "PG9"; | 28 | allwinner,pins = "PG9"; |
diff --git a/arch/arm/boot/dts/sun5i-a13.dtsi b/arch/arm/boot/dts/sun5i-a13.dtsi index 7363211daf84..f6091dc0936c 100644 --- a/arch/arm/boot/dts/sun5i-a13.dtsi +++ b/arch/arm/boot/dts/sun5i-a13.dtsi | |||
@@ -150,11 +150,10 @@ | |||
150 | }; | 150 | }; |
151 | }; | 151 | }; |
152 | 152 | ||
153 | soc@01c20000 { | 153 | soc@01c00000 { |
154 | compatible = "simple-bus"; | 154 | compatible = "simple-bus"; |
155 | #address-cells = <1>; | 155 | #address-cells = <1>; |
156 | #size-cells = <1>; | 156 | #size-cells = <1>; |
157 | reg = <0x01c20000 0x300000>; | ||
158 | ranges; | 157 | ranges; |
159 | 158 | ||
160 | intc: interrupt-controller@01c20400 { | 159 | intc: interrupt-controller@01c20400 { |
diff --git a/arch/arm/boot/dts/sun6i-a31-colombus.dts b/arch/arm/boot/dts/sun6i-a31-colombus.dts new file mode 100644 index 000000000000..99c4b1847cab --- /dev/null +++ b/arch/arm/boot/dts/sun6i-a31-colombus.dts | |||
@@ -0,0 +1,30 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Maxime Ripard | ||
3 | * | ||
4 | * Maxime Ripard <maxime.ripard@free-electrons.com> | ||
5 | * | ||
6 | * The code contained herein is licensed under the GNU General Public | ||
7 | * License. You may obtain a copy of the GNU General Public License | ||
8 | * Version 2 or later at the following locations: | ||
9 | * | ||
10 | * http://www.opensource.org/licenses/gpl-license.html | ||
11 | * http://www.gnu.org/copyleft/gpl.html | ||
12 | */ | ||
13 | |||
14 | /dts-v1/; | ||
15 | /include/ "sun6i-a31.dtsi" | ||
16 | |||
17 | / { | ||
18 | model = "WITS A31 Colombus Evaluation Board"; | ||
19 | compatible = "wits,colombus", "allwinner,sun6i-a31"; | ||
20 | |||
21 | chosen { | ||
22 | bootargs = "earlyprintk console=ttyS0,115200"; | ||
23 | }; | ||
24 | |||
25 | soc@01c00000 { | ||
26 | uart0: serial@01c28000 { | ||
27 | status = "okay"; | ||
28 | }; | ||
29 | }; | ||
30 | }; | ||
diff --git a/arch/arm/boot/dts/sun6i-a31.dtsi b/arch/arm/boot/dts/sun6i-a31.dtsi new file mode 100644 index 000000000000..4d076ec24885 --- /dev/null +++ b/arch/arm/boot/dts/sun6i-a31.dtsi | |||
@@ -0,0 +1,156 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Maxime Ripard | ||
3 | * | ||
4 | * Maxime Ripard <maxime.ripard@free-electrons.com> | ||
5 | * | ||
6 | * The code contained herein is licensed under the GNU General Public | ||
7 | * License. You may obtain a copy of the GNU General Public License | ||
8 | * Version 2 or later at the following locations: | ||
9 | * | ||
10 | * http://www.opensource.org/licenses/gpl-license.html | ||
11 | * http://www.gnu.org/copyleft/gpl.html | ||
12 | */ | ||
13 | |||
14 | /include/ "skeleton.dtsi" | ||
15 | |||
16 | / { | ||
17 | interrupt-parent = <&gic>; | ||
18 | |||
19 | cpus { | ||
20 | #address-cells = <1>; | ||
21 | #size-cells = <0>; | ||
22 | |||
23 | cpu@0 { | ||
24 | compatible = "arm,cortex-a7"; | ||
25 | device_type = "cpu"; | ||
26 | reg = <0>; | ||
27 | }; | ||
28 | |||
29 | cpu@1 { | ||
30 | compatible = "arm,cortex-a7"; | ||
31 | device_type = "cpu"; | ||
32 | reg = <1>; | ||
33 | }; | ||
34 | |||
35 | cpu@2 { | ||
36 | compatible = "arm,cortex-a7"; | ||
37 | device_type = "cpu"; | ||
38 | reg = <2>; | ||
39 | }; | ||
40 | |||
41 | cpu@3 { | ||
42 | compatible = "arm,cortex-a7"; | ||
43 | device_type = "cpu"; | ||
44 | reg = <3>; | ||
45 | }; | ||
46 | }; | ||
47 | |||
48 | memory { | ||
49 | reg = <0x40000000 0x80000000>; | ||
50 | }; | ||
51 | |||
52 | clocks { | ||
53 | #address-cells = <1>; | ||
54 | #size-cells = <0>; | ||
55 | |||
56 | osc: oscillator { | ||
57 | #clock-cells = <0>; | ||
58 | compatible = "fixed-clock"; | ||
59 | clock-frequency = <24000000>; | ||
60 | }; | ||
61 | }; | ||
62 | |||
63 | soc@01c00000 { | ||
64 | compatible = "simple-bus"; | ||
65 | #address-cells = <1>; | ||
66 | #size-cells = <1>; | ||
67 | ranges; | ||
68 | |||
69 | timer@01c20c00 { | ||
70 | compatible = "allwinner,sun4i-timer"; | ||
71 | reg = <0x01c20c00 0xa0>; | ||
72 | interrupts = <0 18 1>, | ||
73 | <0 19 1>, | ||
74 | <0 20 1>, | ||
75 | <0 21 1>, | ||
76 | <0 22 1>; | ||
77 | clocks = <&osc>; | ||
78 | }; | ||
79 | |||
80 | wdt1: watchdog@01c20ca0 { | ||
81 | compatible = "allwinner,sun6i-wdt"; | ||
82 | reg = <0x01c20ca0 0x20>; | ||
83 | }; | ||
84 | |||
85 | uart0: serial@01c28000 { | ||
86 | compatible = "snps,dw-apb-uart"; | ||
87 | reg = <0x01c28000 0x400>; | ||
88 | interrupts = <0 0 1>; | ||
89 | reg-shift = <2>; | ||
90 | reg-io-width = <4>; | ||
91 | clocks = <&osc>; | ||
92 | status = "disabled"; | ||
93 | }; | ||
94 | |||
95 | uart1: serial@01c28400 { | ||
96 | compatible = "snps,dw-apb-uart"; | ||
97 | reg = <0x01c28400 0x400>; | ||
98 | interrupts = <0 1 1>; | ||
99 | reg-shift = <2>; | ||
100 | reg-io-width = <4>; | ||
101 | clocks = <&osc>; | ||
102 | status = "disabled"; | ||
103 | }; | ||
104 | |||
105 | uart2: serial@01c28800 { | ||
106 | compatible = "snps,dw-apb-uart"; | ||
107 | reg = <0x01c28800 0x400>; | ||
108 | interrupts = <0 2 1>; | ||
109 | reg-shift = <2>; | ||
110 | reg-io-width = <4>; | ||
111 | clocks = <&osc>; | ||
112 | status = "disabled"; | ||
113 | }; | ||
114 | |||
115 | uart3: serial@01c28c00 { | ||
116 | compatible = "snps,dw-apb-uart"; | ||
117 | reg = <0x01c28c00 0x400>; | ||
118 | interrupts = <0 3 1>; | ||
119 | reg-shift = <2>; | ||
120 | reg-io-width = <4>; | ||
121 | clocks = <&osc>; | ||
122 | status = "disabled"; | ||
123 | }; | ||
124 | |||
125 | uart4: serial@01c29000 { | ||
126 | compatible = "snps,dw-apb-uart"; | ||
127 | reg = <0x01c29000 0x400>; | ||
128 | interrupts = <0 4 1>; | ||
129 | reg-shift = <2>; | ||
130 | reg-io-width = <4>; | ||
131 | clocks = <&osc>; | ||
132 | status = "disabled"; | ||
133 | }; | ||
134 | |||
135 | uart5: serial@01c29400 { | ||
136 | compatible = "snps,dw-apb-uart"; | ||
137 | reg = <0x01c29400 0x400>; | ||
138 | interrupts = <0 5 1>; | ||
139 | reg-shift = <2>; | ||
140 | reg-io-width = <4>; | ||
141 | clocks = <&osc>; | ||
142 | status = "disabled"; | ||
143 | }; | ||
144 | |||
145 | gic: interrupt-controller@01c81000 { | ||
146 | compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic"; | ||
147 | reg = <0x01c81000 0x1000>, | ||
148 | <0x01c82000 0x1000>, | ||
149 | <0x01c84000 0x2000>, | ||
150 | <0x01c86000 0x2000>; | ||
151 | interrupt-controller; | ||
152 | #interrupt-cells = <3>; | ||
153 | interrupts = <1 9 0xf04>; | ||
154 | }; | ||
155 | }; | ||
156 | }; | ||
diff --git a/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts new file mode 100644 index 000000000000..d3395846491c --- /dev/null +++ b/arch/arm/boot/dts/sun7i-a20-olinuxino-micro.dts | |||
@@ -0,0 +1,34 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Maxime Ripard | ||
3 | * | ||
4 | * Maxime Ripard <maxime.ripard@free-electrons.com> | ||
5 | * | ||
6 | * The code contained herein is licensed under the GNU General Public | ||
7 | * License. You may obtain a copy of the GNU General Public License | ||
8 | * Version 2 or later at the following locations: | ||
9 | * | ||
10 | * http://www.opensource.org/licenses/gpl-license.html | ||
11 | * http://www.gnu.org/copyleft/gpl.html | ||
12 | */ | ||
13 | |||
14 | /dts-v1/; | ||
15 | /include/ "sun7i-a20.dtsi" | ||
16 | |||
17 | / { | ||
18 | model = "Olimex A20-Olinuxino Micro"; | ||
19 | compatible = "olimex,a20-olinuxino-micro", "allwinner,sun7i-a20"; | ||
20 | |||
21 | soc@01c00000 { | ||
22 | uart0: serial@01c28000 { | ||
23 | status = "okay"; | ||
24 | }; | ||
25 | |||
26 | uart6: serial@01c29800 { | ||
27 | status = "okay"; | ||
28 | }; | ||
29 | |||
30 | uart7: serial@01c29c00 { | ||
31 | status = "okay"; | ||
32 | }; | ||
33 | }; | ||
34 | }; | ||
diff --git a/arch/arm/boot/dts/sun7i-a20.dtsi b/arch/arm/boot/dts/sun7i-a20.dtsi new file mode 100644 index 000000000000..33391517118c --- /dev/null +++ b/arch/arm/boot/dts/sun7i-a20.dtsi | |||
@@ -0,0 +1,172 @@ | |||
1 | /* | ||
2 | * Copyright 2013 Maxime Ripard | ||
3 | * | ||
4 | * Maxime Ripard <maxime.ripard@free-electrons.com> | ||
5 | * | ||
6 | * The code contained herein is licensed under the GNU General Public | ||
7 | * License. You may obtain a copy of the GNU General Public License | ||
8 | * Version 2 or later at the following locations: | ||
9 | * | ||
10 | * http://www.opensource.org/licenses/gpl-license.html | ||
11 | * http://www.gnu.org/copyleft/gpl.html | ||
12 | */ | ||
13 | |||
14 | /include/ "skeleton.dtsi" | ||
15 | |||
16 | / { | ||
17 | interrupt-parent = <&gic>; | ||
18 | |||
19 | cpus { | ||
20 | #address-cells = <1>; | ||
21 | #size-cells = <0>; | ||
22 | |||
23 | cpu@0 { | ||
24 | compatible = "arm,cortex-a7"; | ||
25 | device_type = "cpu"; | ||
26 | reg = <0>; | ||
27 | }; | ||
28 | |||
29 | cpu@1 { | ||
30 | compatible = "arm,cortex-a7"; | ||
31 | device_type = "cpu"; | ||
32 | reg = <1>; | ||
33 | }; | ||
34 | }; | ||
35 | |||
36 | memory { | ||
37 | reg = <0x40000000 0x80000000>; | ||
38 | }; | ||
39 | |||
40 | clocks { | ||
41 | #address-cells = <1>; | ||
42 | #size-cells = <1>; | ||
43 | ranges; | ||
44 | |||
45 | osc24M: osc24M@01c20050 { | ||
46 | #clock-cells = <0>; | ||
47 | compatible = "fixed-clock"; | ||
48 | clock-frequency = <24000000>; | ||
49 | }; | ||
50 | |||
51 | osc32k: osc32k { | ||
52 | #clock-cells = <0>; | ||
53 | compatible = "fixed-clock"; | ||
54 | clock-frequency = <32768>; | ||
55 | }; | ||
56 | }; | ||
57 | |||
58 | soc@01c00000 { | ||
59 | compatible = "simple-bus"; | ||
60 | #address-cells = <1>; | ||
61 | #size-cells = <1>; | ||
62 | ranges; | ||
63 | |||
64 | timer@01c20c00 { | ||
65 | compatible = "allwinner,sun4i-timer"; | ||
66 | reg = <0x01c20c00 0x90>; | ||
67 | interrupts = <0 22 1>, | ||
68 | <0 23 1>, | ||
69 | <0 24 1>, | ||
70 | <0 25 1>, | ||
71 | <0 67 1>, | ||
72 | <0 68 1>; | ||
73 | clocks = <&osc24M>; | ||
74 | }; | ||
75 | |||
76 | wdt: watchdog@01c20c90 { | ||
77 | compatible = "allwinner,sun4i-wdt"; | ||
78 | reg = <0x01c20c90 0x10>; | ||
79 | }; | ||
80 | |||
81 | uart0: serial@01c28000 { | ||
82 | compatible = "snps,dw-apb-uart"; | ||
83 | reg = <0x01c28000 0x400>; | ||
84 | interrupts = <0 1 1>; | ||
85 | reg-shift = <2>; | ||
86 | reg-io-width = <4>; | ||
87 | clocks = <&osc24M>; | ||
88 | status = "disabled"; | ||
89 | }; | ||
90 | |||
91 | uart1: serial@01c28400 { | ||
92 | compatible = "snps,dw-apb-uart"; | ||
93 | reg = <0x01c28400 0x400>; | ||
94 | interrupts = <0 2 1>; | ||
95 | reg-shift = <2>; | ||
96 | reg-io-width = <4>; | ||
97 | clocks = <&osc24M>; | ||
98 | status = "disabled"; | ||
99 | }; | ||
100 | |||
101 | uart2: serial@01c28800 { | ||
102 | compatible = "snps,dw-apb-uart"; | ||
103 | reg = <0x01c28800 0x400>; | ||
104 | interrupts = <0 3 1>; | ||
105 | reg-shift = <2>; | ||
106 | reg-io-width = <4>; | ||
107 | clocks = <&osc24M>; | ||
108 | status = "disabled"; | ||
109 | }; | ||
110 | |||
111 | uart3: serial@01c28c00 { | ||
112 | compatible = "snps,dw-apb-uart"; | ||
113 | reg = <0x01c28c00 0x400>; | ||
114 | interrupts = <0 4 1>; | ||
115 | reg-shift = <2>; | ||
116 | reg-io-width = <4>; | ||
117 | clocks = <&osc24M>; | ||
118 | status = "disabled"; | ||
119 | }; | ||
120 | |||
121 | uart4: serial@01c29000 { | ||
122 | compatible = "snps,dw-apb-uart"; | ||
123 | reg = <0x01c29000 0x400>; | ||
124 | interrupts = <0 17 1>; | ||
125 | reg-shift = <2>; | ||
126 | reg-io-width = <4>; | ||
127 | clocks = <&osc24M>; | ||
128 | status = "disabled"; | ||
129 | }; | ||
130 | |||
131 | uart5: serial@01c29400 { | ||
132 | compatible = "snps,dw-apb-uart"; | ||
133 | reg = <0x01c29400 0x400>; | ||
134 | interrupts = <0 18 1>; | ||
135 | reg-shift = <2>; | ||
136 | reg-io-width = <4>; | ||
137 | clocks = <&osc24M>; | ||
138 | status = "disabled"; | ||
139 | }; | ||
140 | |||
141 | uart6: serial@01c29800 { | ||
142 | compatible = "snps,dw-apb-uart"; | ||
143 | reg = <0x01c29800 0x400>; | ||
144 | interrupts = <0 19 1>; | ||
145 | reg-shift = <2>; | ||
146 | reg-io-width = <4>; | ||
147 | clocks = <&osc24M>; | ||
148 | status = "disabled"; | ||
149 | }; | ||
150 | |||
151 | uart7: serial@01c29c00 { | ||
152 | compatible = "snps,dw-apb-uart"; | ||
153 | reg = <0x01c29c00 0x400>; | ||
154 | interrupts = <0 20 1>; | ||
155 | reg-shift = <2>; | ||
156 | reg-io-width = <4>; | ||
157 | clocks = <&osc24M>; | ||
158 | status = "disabled"; | ||
159 | }; | ||
160 | |||
161 | gic: interrupt-controller@01c81000 { | ||
162 | compatible = "arm,cortex-a7-gic", "arm,cortex-a15-gic"; | ||
163 | reg = <0x01c81000 0x1000>, | ||
164 | <0x01c82000 0x1000>, | ||
165 | <0x01c84000 0x2000>, | ||
166 | <0x01c86000 0x2000>; | ||
167 | interrupt-controller; | ||
168 | #interrupt-cells = <3>; | ||
169 | interrupts = <1 9 0xf04>; | ||
170 | }; | ||
171 | }; | ||
172 | }; | ||
diff --git a/arch/arm/boot/dts/tegra114-dalmore.dts b/arch/arm/boot/dts/tegra114-dalmore.dts index cb640eb6c932..60230288884b 100644 --- a/arch/arm/boot/dts/tegra114-dalmore.dts +++ b/arch/arm/boot/dts/tegra114-dalmore.dts | |||
@@ -791,7 +791,7 @@ | |||
791 | regulator-boot-on; | 791 | regulator-boot-on; |
792 | }; | 792 | }; |
793 | 793 | ||
794 | dcdc3 { | 794 | tps65090_dcdc3_reg: dcdc3 { |
795 | regulator-name = "vdd-ao"; | 795 | regulator-name = "vdd-ao"; |
796 | regulator-always-on; | 796 | regulator-always-on; |
797 | regulator-boot-on; | 797 | regulator-boot-on; |
@@ -836,6 +836,182 @@ | |||
836 | }; | 836 | }; |
837 | }; | 837 | }; |
838 | }; | 838 | }; |
839 | |||
840 | palmas: tps65913 { | ||
841 | compatible = "ti,palmas"; | ||
842 | reg = <0x58>; | ||
843 | interrupts = <0 86 IRQ_TYPE_LEVEL_LOW>; | ||
844 | |||
845 | #interrupt-cells = <2>; | ||
846 | interrupt-controller; | ||
847 | |||
848 | ti,system-power-controller; | ||
849 | |||
850 | palmas_gpio: gpio { | ||
851 | compatible = "ti,palmas-gpio"; | ||
852 | gpio-controller; | ||
853 | #gpio-cells = <2>; | ||
854 | }; | ||
855 | |||
856 | pmic { | ||
857 | compatible = "ti,tps65913-pmic", "ti,palmas-pmic"; | ||
858 | smps1-in-supply = <&tps65090_dcdc3_reg>; | ||
859 | smps3-in-supply = <&tps65090_dcdc3_reg>; | ||
860 | smps4-in-supply = <&tps65090_dcdc2_reg>; | ||
861 | smps7-in-supply = <&tps65090_dcdc2_reg>; | ||
862 | smps8-in-supply = <&tps65090_dcdc2_reg>; | ||
863 | smps9-in-supply = <&tps65090_dcdc2_reg>; | ||
864 | ldo1-in-supply = <&tps65090_dcdc2_reg>; | ||
865 | ldo2-in-supply = <&tps65090_dcdc2_reg>; | ||
866 | ldo3-in-supply = <&palmas_smps3_reg>; | ||
867 | ldo4-in-supply = <&tps65090_dcdc2_reg>; | ||
868 | ldo5-in-supply = <&vdd_ac_bat_reg>; | ||
869 | ldo6-in-supply = <&tps65090_dcdc2_reg>; | ||
870 | ldo7-in-supply = <&tps65090_dcdc2_reg>; | ||
871 | ldo8-in-supply = <&tps65090_dcdc3_reg>; | ||
872 | ldo9-in-supply = <&palmas_smps9_reg>; | ||
873 | ldoln-in-supply = <&tps65090_dcdc1_reg>; | ||
874 | ldousb-in-supply = <&tps65090_dcdc1_reg>; | ||
875 | |||
876 | regulators { | ||
877 | smps12 { | ||
878 | regulator-name = "vddio-ddr"; | ||
879 | regulator-min-microvolt = <1350000>; | ||
880 | regulator-max-microvolt = <1350000>; | ||
881 | regulator-always-on; | ||
882 | regulator-boot-on; | ||
883 | }; | ||
884 | |||
885 | palmas_smps3_reg: smps3 { | ||
886 | regulator-name = "vddio-1v8"; | ||
887 | regulator-min-microvolt = <1800000>; | ||
888 | regulator-max-microvolt = <1800000>; | ||
889 | regulator-always-on; | ||
890 | regulator-boot-on; | ||
891 | }; | ||
892 | |||
893 | smps45 { | ||
894 | regulator-name = "vdd-core"; | ||
895 | regulator-min-microvolt = <900000>; | ||
896 | regulator-max-microvolt = <1400000>; | ||
897 | regulator-always-on; | ||
898 | regulator-boot-on; | ||
899 | }; | ||
900 | |||
901 | smps457 { | ||
902 | regulator-name = "vdd-core"; | ||
903 | regulator-min-microvolt = <900000>; | ||
904 | regulator-max-microvolt = <1400000>; | ||
905 | regulator-always-on; | ||
906 | regulator-boot-on; | ||
907 | }; | ||
908 | |||
909 | smps8 { | ||
910 | regulator-name = "avdd-pll"; | ||
911 | regulator-min-microvolt = <1050000>; | ||
912 | regulator-max-microvolt = <1050000>; | ||
913 | regulator-always-on; | ||
914 | regulator-boot-on; | ||
915 | }; | ||
916 | |||
917 | palmas_smps9_reg: smps9 { | ||
918 | regulator-name = "sdhci-vdd-sd-slot"; | ||
919 | regulator-min-microvolt = <2800000>; | ||
920 | regulator-max-microvolt = <2800000>; | ||
921 | regulator-always-on; | ||
922 | }; | ||
923 | |||
924 | ldo1 { | ||
925 | regulator-name = "avdd-cam1"; | ||
926 | regulator-min-microvolt = <2800000>; | ||
927 | regulator-max-microvolt = <2800000>; | ||
928 | }; | ||
929 | |||
930 | ldo2 { | ||
931 | regulator-name = "avdd-cam2"; | ||
932 | regulator-min-microvolt = <2800000>; | ||
933 | regulator-max-microvolt = <2800000>; | ||
934 | }; | ||
935 | |||
936 | ldo3 { | ||
937 | regulator-name = "avdd-dsi-csi"; | ||
938 | regulator-min-microvolt = <1200000>; | ||
939 | regulator-max-microvolt = <1200000>; | ||
940 | regulator-always-on; | ||
941 | regulator-boot-on; | ||
942 | }; | ||
943 | |||
944 | ldo4 { | ||
945 | regulator-name = "vpp-fuse"; | ||
946 | regulator-min-microvolt = <1800000>; | ||
947 | regulator-max-microvolt = <1800000>; | ||
948 | }; | ||
949 | |||
950 | ldo6 { | ||
951 | regulator-name = "vdd-sensor-2v85"; | ||
952 | regulator-min-microvolt = <2850000>; | ||
953 | regulator-max-microvolt = <2850000>; | ||
954 | }; | ||
955 | |||
956 | ldo7 { | ||
957 | regulator-name = "vdd-af-cam1"; | ||
958 | regulator-min-microvolt = <2800000>; | ||
959 | regulator-max-microvolt = <2800000>; | ||
960 | }; | ||
961 | |||
962 | ldo8 { | ||
963 | regulator-name = "vdd-rtc"; | ||
964 | regulator-min-microvolt = <900000>; | ||
965 | regulator-max-microvolt = <900000>; | ||
966 | regulator-always-on; | ||
967 | regulator-boot-on; | ||
968 | ti,enable-ldo8-tracking; | ||
969 | }; | ||
970 | |||
971 | ldo9 { | ||
972 | regulator-name = "vddio-sdmmc-2"; | ||
973 | regulator-min-microvolt = <1800000>; | ||
974 | regulator-max-microvolt = <3300000>; | ||
975 | regulator-always-on; | ||
976 | regulator-boot-on; | ||
977 | }; | ||
978 | |||
979 | ldoln { | ||
980 | regulator-name = "hvdd-usb"; | ||
981 | regulator-min-microvolt = <3300000>; | ||
982 | regulator-max-microvolt = <3300000>; | ||
983 | }; | ||
984 | |||
985 | ldousb { | ||
986 | regulator-name = "avdd-usb"; | ||
987 | regulator-min-microvolt = <3300000>; | ||
988 | regulator-max-microvolt = <3300000>; | ||
989 | regulator-always-on; | ||
990 | regulator-boot-on; | ||
991 | }; | ||
992 | |||
993 | regen1 { | ||
994 | regulator-name = "rail-3v3"; | ||
995 | regulator-max-microvolt = <3300000>; | ||
996 | regulator-always-on; | ||
997 | regulator-boot-on; | ||
998 | }; | ||
999 | |||
1000 | regen2 { | ||
1001 | regulator-name = "rail-5v0"; | ||
1002 | regulator-max-microvolt = <5000000>; | ||
1003 | regulator-always-on; | ||
1004 | regulator-boot-on; | ||
1005 | }; | ||
1006 | }; | ||
1007 | }; | ||
1008 | |||
1009 | rtc { | ||
1010 | compatible = "ti,palmas-rtc"; | ||
1011 | interrupt-parent = <&palmas>; | ||
1012 | interrupts = <8 0>; | ||
1013 | }; | ||
1014 | }; | ||
839 | }; | 1015 | }; |
840 | 1016 | ||
841 | spi@7000da00 { | 1017 | spi@7000da00 { |
@@ -850,6 +1026,13 @@ | |||
850 | 1026 | ||
851 | pmc { | 1027 | pmc { |
852 | nvidia,invert-interrupt; | 1028 | nvidia,invert-interrupt; |
1029 | nvidia,suspend-mode = <1>; | ||
1030 | nvidia,cpu-pwr-good-time = <500>; | ||
1031 | nvidia,cpu-pwr-off-time = <300>; | ||
1032 | nvidia,core-pwr-good-time = <641 3845>; | ||
1033 | nvidia,core-pwr-off-time = <61036>; | ||
1034 | nvidia,core-power-req-active-high; | ||
1035 | nvidia,sys-clock-req-active-high; | ||
853 | }; | 1036 | }; |
854 | 1037 | ||
855 | ahub { | 1038 | ahub { |
@@ -870,6 +1053,15 @@ | |||
870 | non-removable; | 1053 | non-removable; |
871 | }; | 1054 | }; |
872 | 1055 | ||
1056 | usb@7d008000 { | ||
1057 | status = "okay"; | ||
1058 | }; | ||
1059 | |||
1060 | usb-phy@7d008000 { | ||
1061 | status = "okay"; | ||
1062 | vbus-supply = <&usb3_vbus_reg>; | ||
1063 | }; | ||
1064 | |||
873 | clocks { | 1065 | clocks { |
874 | compatible = "simple-bus"; | 1066 | compatible = "simple-bus"; |
875 | #address-cells = <1>; | 1067 | #address-cells = <1>; |
@@ -883,6 +1075,35 @@ | |||
883 | }; | 1075 | }; |
884 | }; | 1076 | }; |
885 | 1077 | ||
1078 | gpio-keys { | ||
1079 | compatible = "gpio-keys"; | ||
1080 | |||
1081 | home { | ||
1082 | label = "Home"; | ||
1083 | gpios = <&gpio TEGRA_GPIO(I, 5) GPIO_ACTIVE_LOW>; | ||
1084 | linux,code = <102>; /* KEY_HOME */ | ||
1085 | }; | ||
1086 | |||
1087 | power { | ||
1088 | label = "Power"; | ||
1089 | gpios = <&gpio TEGRA_GPIO(Q, 0) GPIO_ACTIVE_LOW>; | ||
1090 | linux,code = <116>; /* KEY_POWER */ | ||
1091 | gpio-key,wakeup; | ||
1092 | }; | ||
1093 | |||
1094 | volume_down { | ||
1095 | label = "Volume Down"; | ||
1096 | gpios = <&gpio TEGRA_GPIO(R, 1) GPIO_ACTIVE_LOW>; | ||
1097 | linux,code = <114>; /* KEY_VOLUMEDOWN */ | ||
1098 | }; | ||
1099 | |||
1100 | volume_up { | ||
1101 | label = "Volume Up"; | ||
1102 | gpios = <&gpio TEGRA_GPIO(R, 2) GPIO_ACTIVE_LOW>; | ||
1103 | linux,code = <115>; /* KEY_VOLUMEUP */ | ||
1104 | }; | ||
1105 | }; | ||
1106 | |||
886 | regulators { | 1107 | regulators { |
887 | compatible = "simple-bus"; | 1108 | compatible = "simple-bus"; |
888 | #address-cells = <1>; | 1109 | #address-cells = <1>; |
@@ -951,6 +1172,16 @@ | |||
951 | gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; | 1172 | gpio = <&gpio TEGRA_GPIO(K, 1) GPIO_ACTIVE_HIGH>; |
952 | vin-supply = <&tps65090_dcdc1_reg>; | 1173 | vin-supply = <&tps65090_dcdc1_reg>; |
953 | }; | 1174 | }; |
1175 | |||
1176 | vdd_cam_1v8_reg: regulator@6 { | ||
1177 | compatible = "regulator-fixed"; | ||
1178 | reg = <6>; | ||
1179 | regulator-name = "vdd_cam_1v8_reg"; | ||
1180 | regulator-min-microvolt = <1800000>; | ||
1181 | regulator-max-microvolt = <1800000>; | ||
1182 | enable-active-high; | ||
1183 | gpio = <&palmas_gpio 6 0>; | ||
1184 | }; | ||
954 | }; | 1185 | }; |
955 | 1186 | ||
956 | sound { | 1187 | sound { |
@@ -964,7 +1195,9 @@ | |||
964 | "Speakers", "SPORP", | 1195 | "Speakers", "SPORP", |
965 | "Speakers", "SPORN", | 1196 | "Speakers", "SPORN", |
966 | "Speakers", "SPOLP", | 1197 | "Speakers", "SPOLP", |
967 | "Speakers", "SPOLN"; | 1198 | "Speakers", "SPOLN", |
1199 | "Mic Jack", "MICBIAS1", | ||
1200 | "IN2P", "Mic Jack"; | ||
968 | 1201 | ||
969 | nvidia,i2s-controller = <&tegra_i2s1>; | 1202 | nvidia,i2s-controller = <&tegra_i2s1>; |
970 | nvidia,audio-codec = <&rt5640>; | 1203 | nvidia,audio-codec = <&rt5640>; |
diff --git a/arch/arm/boot/dts/tegra114-pluto.dts b/arch/arm/boot/dts/tegra114-pluto.dts deleted file mode 100644 index d5f8d3e0bde2..000000000000 --- a/arch/arm/boot/dts/tegra114-pluto.dts +++ /dev/null | |||
@@ -1,33 +0,0 @@ | |||
1 | /dts-v1/; | ||
2 | |||
3 | #include "tegra114.dtsi" | ||
4 | |||
5 | / { | ||
6 | model = "NVIDIA Tegra114 Pluto evaluation board"; | ||
7 | compatible = "nvidia,pluto", "nvidia,tegra114"; | ||
8 | |||
9 | memory { | ||
10 | reg = <0x80000000 0x40000000>; | ||
11 | }; | ||
12 | |||
13 | serial@70006300 { | ||
14 | status = "okay"; | ||
15 | }; | ||
16 | |||
17 | pmc { | ||
18 | nvidia,invert-interrupt; | ||
19 | }; | ||
20 | |||
21 | clocks { | ||
22 | compatible = "simple-bus"; | ||
23 | #address-cells = <1>; | ||
24 | #size-cells = <0>; | ||
25 | |||
26 | clk32k_in: clock { | ||
27 | compatible = "fixed-clock"; | ||
28 | reg=<0>; | ||
29 | #clock-cells = <0>; | ||
30 | clock-frequency = <32768>; | ||
31 | }; | ||
32 | }; | ||
33 | }; | ||
diff --git a/arch/arm/boot/dts/tegra114.dtsi b/arch/arm/boot/dts/tegra114.dtsi index abf6c40d28c6..2905145d8e59 100644 --- a/arch/arm/boot/dts/tegra114.dtsi +++ b/arch/arm/boot/dts/tegra114.dtsi | |||
@@ -430,6 +430,68 @@ | |||
430 | status = "disable"; | 430 | status = "disable"; |
431 | }; | 431 | }; |
432 | 432 | ||
433 | usb@7d000000 { | ||
434 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
435 | reg = <0x7d000000 0x4000>; | ||
436 | interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; | ||
437 | phy_type = "utmi"; | ||
438 | clocks = <&tegra_car TEGRA114_CLK_USBD>; | ||
439 | nvidia,phy = <&phy1>; | ||
440 | status = "disabled"; | ||
441 | }; | ||
442 | |||
443 | phy1: usb-phy@7d000000 { | ||
444 | compatible = "nvidia,tegra30-usb-phy"; | ||
445 | reg = <0x7d000000 0x4000 0x7d000000 0x4000>; | ||
446 | phy_type = "utmi"; | ||
447 | clocks = <&tegra_car TEGRA114_CLK_USBD>, | ||
448 | <&tegra_car TEGRA114_CLK_PLL_U>, | ||
449 | <&tegra_car TEGRA114_CLK_USBD>; | ||
450 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
451 | nvidia,hssync-start-delay = <0>; | ||
452 | nvidia,idle-wait-delay = <17>; | ||
453 | nvidia,elastic-limit = <16>; | ||
454 | nvidia,term-range-adj = <6>; | ||
455 | nvidia,xcvr-setup = <9>; | ||
456 | nvidia,xcvr-lsfslew = <0>; | ||
457 | nvidia,xcvr-lsrslew = <3>; | ||
458 | nvidia,hssquelch-level = <2>; | ||
459 | nvidia,hsdiscon-level = <5>; | ||
460 | nvidia,xcvr-hsslew = <12>; | ||
461 | status = "disabled"; | ||
462 | }; | ||
463 | |||
464 | usb@7d008000 { | ||
465 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
466 | reg = <0x7d008000 0x4000>; | ||
467 | interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; | ||
468 | phy_type = "utmi"; | ||
469 | clocks = <&tegra_car TEGRA114_CLK_USB3>; | ||
470 | nvidia,phy = <&phy3>; | ||
471 | status = "disabled"; | ||
472 | }; | ||
473 | |||
474 | phy3: usb-phy@7d008000 { | ||
475 | compatible = "nvidia,tegra30-usb-phy"; | ||
476 | reg = <0x7d008000 0x4000 0x7d000000 0x4000>; | ||
477 | phy_type = "utmi"; | ||
478 | clocks = <&tegra_car TEGRA114_CLK_USB3>, | ||
479 | <&tegra_car TEGRA114_CLK_PLL_U>, | ||
480 | <&tegra_car TEGRA114_CLK_USBD>; | ||
481 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
482 | nvidia,hssync-start-delay = <0>; | ||
483 | nvidia,idle-wait-delay = <17>; | ||
484 | nvidia,elastic-limit = <16>; | ||
485 | nvidia,term-range-adj = <6>; | ||
486 | nvidia,xcvr-setup = <9>; | ||
487 | nvidia,xcvr-lsfslew = <0>; | ||
488 | nvidia,xcvr-lsrslew = <3>; | ||
489 | nvidia,hssquelch-level = <2>; | ||
490 | nvidia,hsdiscon-level = <5>; | ||
491 | nvidia,xcvr-hsslew = <12>; | ||
492 | status = "disabled"; | ||
493 | }; | ||
494 | |||
433 | cpus { | 495 | cpus { |
434 | #address-cells = <1>; | 496 | #address-cells = <1>; |
435 | #size-cells = <0>; | 497 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/tegra20-colibri-512.dtsi b/arch/arm/boot/dts/tegra20-colibri-512.dtsi index 5592be6f2f7a..d5c9bca01232 100644 --- a/arch/arm/boot/dts/tegra20-colibri-512.dtsi +++ b/arch/arm/boot/dts/tegra20-colibri-512.dtsi | |||
@@ -363,7 +363,7 @@ | |||
363 | }; | 363 | }; |
364 | 364 | ||
365 | pmc { | 365 | pmc { |
366 | nvidia,suspend-mode = <2>; | 366 | nvidia,suspend-mode = <1>; |
367 | nvidia,cpu-pwr-good-time = <5000>; | 367 | nvidia,cpu-pwr-good-time = <5000>; |
368 | nvidia,cpu-pwr-off-time = <5000>; | 368 | nvidia,cpu-pwr-off-time = <5000>; |
369 | nvidia,core-pwr-good-time = <3845 3845>; | 369 | nvidia,core-pwr-good-time = <3845 3845>; |
diff --git a/arch/arm/boot/dts/tegra20-harmony.dts b/arch/arm/boot/dts/tegra20-harmony.dts index d9f89cd879a7..e156ab30e763 100644 --- a/arch/arm/boot/dts/tegra20-harmony.dts +++ b/arch/arm/boot/dts/tegra20-harmony.dts | |||
@@ -335,7 +335,7 @@ | |||
335 | regulator-always-on; | 335 | regulator-always-on; |
336 | }; | 336 | }; |
337 | 337 | ||
338 | ldo0 { | 338 | pci_clk_reg: ldo0 { |
339 | regulator-name = "vdd_ldo0,vddio_pex_clk"; | 339 | regulator-name = "vdd_ldo0,vddio_pex_clk"; |
340 | regulator-min-microvolt = <3300000>; | 340 | regulator-min-microvolt = <3300000>; |
341 | regulator-max-microvolt = <3300000>; | 341 | regulator-max-microvolt = <3300000>; |
@@ -417,7 +417,7 @@ | |||
417 | 417 | ||
418 | pmc { | 418 | pmc { |
419 | nvidia,invert-interrupt; | 419 | nvidia,invert-interrupt; |
420 | nvidia,suspend-mode = <2>; | 420 | nvidia,suspend-mode = <1>; |
421 | nvidia,cpu-pwr-good-time = <5000>; | 421 | nvidia,cpu-pwr-good-time = <5000>; |
422 | nvidia,cpu-pwr-off-time = <5000>; | 422 | nvidia,cpu-pwr-off-time = <5000>; |
423 | nvidia,core-pwr-good-time = <3845 3845>; | 423 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -425,6 +425,20 @@ | |||
425 | nvidia,sys-clock-req-active-high; | 425 | nvidia,sys-clock-req-active-high; |
426 | }; | 426 | }; |
427 | 427 | ||
428 | pcie-controller { | ||
429 | pex-clk-supply = <&pci_clk_reg>; | ||
430 | vdd-supply = <&pci_vdd_reg>; | ||
431 | status = "okay"; | ||
432 | |||
433 | pci@1,0 { | ||
434 | status = "okay"; | ||
435 | }; | ||
436 | |||
437 | pci@2,0 { | ||
438 | status = "okay"; | ||
439 | }; | ||
440 | }; | ||
441 | |||
428 | usb@c5000000 { | 442 | usb@c5000000 { |
429 | status = "okay"; | 443 | status = "okay"; |
430 | }; | 444 | }; |
@@ -643,7 +657,7 @@ | |||
643 | enable-active-high; | 657 | enable-active-high; |
644 | }; | 658 | }; |
645 | 659 | ||
646 | regulator@3 { | 660 | pci_vdd_reg: regulator@3 { |
647 | compatible = "regulator-fixed"; | 661 | compatible = "regulator-fixed"; |
648 | reg = <3>; | 662 | reg = <3>; |
649 | regulator-name = "vdd_1v05"; | 663 | regulator-name = "vdd_1v05"; |
@@ -651,8 +665,6 @@ | |||
651 | regulator-max-microvolt = <1050000>; | 665 | regulator-max-microvolt = <1050000>; |
652 | gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; | 666 | gpio = <&pmic 2 GPIO_ACTIVE_HIGH>; |
653 | enable-active-high; | 667 | enable-active-high; |
654 | /* Hack until board-harmony-pcie.c is removed */ | ||
655 | status = "disabled"; | ||
656 | }; | 668 | }; |
657 | 669 | ||
658 | regulator@4 { | 670 | regulator@4 { |
diff --git a/arch/arm/boot/dts/tegra20-paz00.dts b/arch/arm/boot/dts/tegra20-paz00.dts index cfd12763b1b2..8d71fc9d8a2f 100644 --- a/arch/arm/boot/dts/tegra20-paz00.dts +++ b/arch/arm/boot/dts/tegra20-paz00.dts | |||
@@ -417,7 +417,7 @@ | |||
417 | 417 | ||
418 | pmc { | 418 | pmc { |
419 | nvidia,invert-interrupt; | 419 | nvidia,invert-interrupt; |
420 | nvidia,suspend-mode = <2>; | 420 | nvidia,suspend-mode = <1>; |
421 | nvidia,cpu-pwr-good-time = <2000>; | 421 | nvidia,cpu-pwr-good-time = <2000>; |
422 | nvidia,cpu-pwr-off-time = <0>; | 422 | nvidia,cpu-pwr-off-time = <0>; |
423 | nvidia,core-pwr-good-time = <3845 3845>; | 423 | nvidia,core-pwr-good-time = <3845 3845>; |
diff --git a/arch/arm/boot/dts/tegra20-seaboard.dts b/arch/arm/boot/dts/tegra20-seaboard.dts index c8242533268f..315aae26c3cd 100644 --- a/arch/arm/boot/dts/tegra20-seaboard.dts +++ b/arch/arm/boot/dts/tegra20-seaboard.dts | |||
@@ -518,7 +518,7 @@ | |||
518 | 518 | ||
519 | pmc { | 519 | pmc { |
520 | nvidia,invert-interrupt; | 520 | nvidia,invert-interrupt; |
521 | nvidia,suspend-mode = <2>; | 521 | nvidia,suspend-mode = <1>; |
522 | nvidia,cpu-pwr-good-time = <5000>; | 522 | nvidia,cpu-pwr-good-time = <5000>; |
523 | nvidia,cpu-pwr-off-time = <5000>; | 523 | nvidia,cpu-pwr-off-time = <5000>; |
524 | nvidia,core-pwr-good-time = <3845 3845>; | 524 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -828,7 +828,7 @@ | |||
828 | regulator-min-microvolt = <5000000>; | 828 | regulator-min-microvolt = <5000000>; |
829 | regulator-max-microvolt = <5000000>; | 829 | regulator-max-microvolt = <5000000>; |
830 | enable-active-high; | 830 | enable-active-high; |
831 | gpio = <&gpio 24 0>; /* PD0 */ | 831 | gpio = <&gpio TEGRA_GPIO(D, 0) 0>; |
832 | regulator-always-on; | 832 | regulator-always-on; |
833 | regulator-boot-on; | 833 | regulator-boot-on; |
834 | }; | 834 | }; |
diff --git a/arch/arm/boot/dts/tegra20-tamonten.dtsi b/arch/arm/boot/dts/tegra20-tamonten.dtsi index c54faae7cfb3..7726dab3d08d 100644 --- a/arch/arm/boot/dts/tegra20-tamonten.dtsi +++ b/arch/arm/boot/dts/tegra20-tamonten.dtsi | |||
@@ -366,7 +366,7 @@ | |||
366 | regulator-always-on; | 366 | regulator-always-on; |
367 | }; | 367 | }; |
368 | 368 | ||
369 | ldo0 { | 369 | pci_clk_reg: ldo0 { |
370 | regulator-name = "vdd_ldo0,vddio_pex_clk"; | 370 | regulator-name = "vdd_ldo0,vddio_pex_clk"; |
371 | regulator-min-microvolt = <3300000>; | 371 | regulator-min-microvolt = <3300000>; |
372 | regulator-max-microvolt = <3300000>; | 372 | regulator-max-microvolt = <3300000>; |
@@ -459,7 +459,7 @@ | |||
459 | 459 | ||
460 | pmc { | 460 | pmc { |
461 | nvidia,invert-interrupt; | 461 | nvidia,invert-interrupt; |
462 | nvidia,suspend-mode = <2>; | 462 | nvidia,suspend-mode = <1>; |
463 | nvidia,cpu-pwr-good-time = <5000>; | 463 | nvidia,cpu-pwr-good-time = <5000>; |
464 | nvidia,cpu-pwr-off-time = <5000>; | 464 | nvidia,cpu-pwr-off-time = <5000>; |
465 | nvidia,core-pwr-good-time = <3845 3845>; | 465 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -467,6 +467,11 @@ | |||
467 | nvidia,sys-clock-req-active-high; | 467 | nvidia,sys-clock-req-active-high; |
468 | }; | 468 | }; |
469 | 469 | ||
470 | pcie-controller { | ||
471 | pex-clk-supply = <&pci_clk_reg>; | ||
472 | vdd-supply = <&pci_vdd_reg>; | ||
473 | }; | ||
474 | |||
470 | usb@c5008000 { | 475 | usb@c5008000 { |
471 | status = "okay"; | 476 | status = "okay"; |
472 | }; | 477 | }; |
@@ -509,5 +514,15 @@ | |||
509 | regulator-max-microvolt = <5000000>; | 514 | regulator-max-microvolt = <5000000>; |
510 | regulator-always-on; | 515 | regulator-always-on; |
511 | }; | 516 | }; |
517 | |||
518 | pci_vdd_reg: regulator@1 { | ||
519 | compatible = "regulator-fixed"; | ||
520 | reg = <1>; | ||
521 | regulator-name = "vdd_1v05"; | ||
522 | regulator-min-microvolt = <1050000>; | ||
523 | regulator-max-microvolt = <1050000>; | ||
524 | gpio = <&pmic 2 0>; | ||
525 | enable-active-high; | ||
526 | }; | ||
512 | }; | 527 | }; |
513 | }; | 528 | }; |
diff --git a/arch/arm/boot/dts/tegra20-tec.dts b/arch/arm/boot/dts/tegra20-tec.dts index c572c43751b1..3ada3cb67f07 100644 --- a/arch/arm/boot/dts/tegra20-tec.dts +++ b/arch/arm/boot/dts/tegra20-tec.dts | |||
@@ -32,6 +32,14 @@ | |||
32 | }; | 32 | }; |
33 | }; | 33 | }; |
34 | 34 | ||
35 | pcie-controller { | ||
36 | status = "okay"; | ||
37 | |||
38 | pci@1,0 { | ||
39 | status = "okay"; | ||
40 | }; | ||
41 | }; | ||
42 | |||
35 | sound { | 43 | sound { |
36 | compatible = "ad,tegra-audio-wm8903-tec", | 44 | compatible = "ad,tegra-audio-wm8903-tec", |
37 | "nvidia,tegra-audio-wm8903"; | 45 | "nvidia,tegra-audio-wm8903"; |
diff --git a/arch/arm/boot/dts/tegra20-trimslice.dts b/arch/arm/boot/dts/tegra20-trimslice.dts index 1e9d33adb925..78deea5c0d21 100644 --- a/arch/arm/boot/dts/tegra20-trimslice.dts +++ b/arch/arm/boot/dts/tegra20-trimslice.dts | |||
@@ -302,7 +302,7 @@ | |||
302 | }; | 302 | }; |
303 | 303 | ||
304 | pmc { | 304 | pmc { |
305 | nvidia,suspend-mode = <2>; | 305 | nvidia,suspend-mode = <1>; |
306 | nvidia,cpu-pwr-good-time = <5000>; | 306 | nvidia,cpu-pwr-good-time = <5000>; |
307 | nvidia,cpu-pwr-off-time = <5000>; | 307 | nvidia,cpu-pwr-off-time = <5000>; |
308 | nvidia,core-pwr-good-time = <3845 3845>; | 308 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -310,6 +310,16 @@ | |||
310 | nvidia,sys-clock-req-active-high; | 310 | nvidia,sys-clock-req-active-high; |
311 | }; | 311 | }; |
312 | 312 | ||
313 | pcie-controller { | ||
314 | status = "okay"; | ||
315 | pex-clk-supply = <&pci_clk_reg>; | ||
316 | vdd-supply = <&pci_vdd_reg>; | ||
317 | |||
318 | pci@1,0 { | ||
319 | status = "okay"; | ||
320 | }; | ||
321 | }; | ||
322 | |||
313 | usb@c5000000 { | 323 | usb@c5000000 { |
314 | status = "okay"; | 324 | status = "okay"; |
315 | }; | 325 | }; |
@@ -410,10 +420,28 @@ | |||
410 | regulator-min-microvolt = <5000000>; | 420 | regulator-min-microvolt = <5000000>; |
411 | regulator-max-microvolt = <5000000>; | 421 | regulator-max-microvolt = <5000000>; |
412 | enable-active-high; | 422 | enable-active-high; |
413 | gpio = <&gpio 170 0>; /* PV2 */ | 423 | gpio = <&gpio TEGRA_GPIO(V, 2) 0>; |
414 | regulator-always-on; | 424 | regulator-always-on; |
415 | regulator-boot-on; | 425 | regulator-boot-on; |
416 | }; | 426 | }; |
427 | |||
428 | pci_clk_reg: regulator@3 { | ||
429 | compatible = "regulator-fixed"; | ||
430 | reg = <3>; | ||
431 | regulator-name = "pci_clk"; | ||
432 | regulator-min-microvolt = <3300000>; | ||
433 | regulator-max-microvolt = <3300000>; | ||
434 | regulator-always-on; | ||
435 | }; | ||
436 | |||
437 | pci_vdd_reg: regulator@4 { | ||
438 | compatible = "regulator-fixed"; | ||
439 | reg = <4>; | ||
440 | regulator-name = "pci_vdd"; | ||
441 | regulator-min-microvolt = <1050000>; | ||
442 | regulator-max-microvolt = <1050000>; | ||
443 | regulator-always-on; | ||
444 | }; | ||
417 | }; | 445 | }; |
418 | 446 | ||
419 | sound { | 447 | sound { |
diff --git a/arch/arm/boot/dts/tegra20-ventana.dts b/arch/arm/boot/dts/tegra20-ventana.dts index 7f8c28d1121f..aab872cd0530 100644 --- a/arch/arm/boot/dts/tegra20-ventana.dts +++ b/arch/arm/boot/dts/tegra20-ventana.dts | |||
@@ -494,7 +494,7 @@ | |||
494 | 494 | ||
495 | pmc { | 495 | pmc { |
496 | nvidia,invert-interrupt; | 496 | nvidia,invert-interrupt; |
497 | nvidia,suspend-mode = <2>; | 497 | nvidia,suspend-mode = <1>; |
498 | nvidia,cpu-pwr-good-time = <2000>; | 498 | nvidia,cpu-pwr-good-time = <2000>; |
499 | nvidia,cpu-pwr-off-time = <100>; | 499 | nvidia,cpu-pwr-off-time = <100>; |
500 | nvidia,core-pwr-good-time = <3845 3845>; | 500 | nvidia,core-pwr-good-time = <3845 3845>; |
diff --git a/arch/arm/boot/dts/tegra20-whistler.dts b/arch/arm/boot/dts/tegra20-whistler.dts index c703197dca6e..d33a73cf167c 100644 --- a/arch/arm/boot/dts/tegra20-whistler.dts +++ b/arch/arm/boot/dts/tegra20-whistler.dts | |||
@@ -497,7 +497,7 @@ | |||
497 | 497 | ||
498 | pmc { | 498 | pmc { |
499 | nvidia,invert-interrupt; | 499 | nvidia,invert-interrupt; |
500 | nvidia,suspend-mode = <2>; | 500 | nvidia,suspend-mode = <1>; |
501 | nvidia,cpu-pwr-good-time = <2000>; | 501 | nvidia,cpu-pwr-good-time = <2000>; |
502 | nvidia,cpu-pwr-off-time = <1000>; | 502 | nvidia,cpu-pwr-off-time = <1000>; |
503 | nvidia,core-pwr-good-time = <0 3845>; | 503 | nvidia,core-pwr-good-time = <0 3845>; |
diff --git a/arch/arm/boot/dts/tegra20.dtsi b/arch/arm/boot/dts/tegra20.dtsi index e4570834512e..df40b54fd8bc 100644 --- a/arch/arm/boot/dts/tegra20.dtsi +++ b/arch/arm/boot/dts/tegra20.dtsi | |||
@@ -455,6 +455,61 @@ | |||
455 | #size-cells = <0>; | 455 | #size-cells = <0>; |
456 | }; | 456 | }; |
457 | 457 | ||
458 | pcie-controller { | ||
459 | compatible = "nvidia,tegra20-pcie"; | ||
460 | device_type = "pci"; | ||
461 | reg = <0x80003000 0x00000800 /* PADS registers */ | ||
462 | 0x80003800 0x00000200 /* AFI registers */ | ||
463 | 0x90000000 0x10000000>; /* configuration space */ | ||
464 | reg-names = "pads", "afi", "cs"; | ||
465 | interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH /* controller interrupt */ | ||
466 | GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ | ||
467 | interrupt-names = "intr", "msi"; | ||
468 | |||
469 | bus-range = <0x00 0xff>; | ||
470 | #address-cells = <3>; | ||
471 | #size-cells = <2>; | ||
472 | |||
473 | ranges = <0x82000000 0 0x80000000 0x80000000 0 0x00001000 /* port 0 registers */ | ||
474 | 0x82000000 0 0x80001000 0x80001000 0 0x00001000 /* port 1 registers */ | ||
475 | 0x81000000 0 0 0x82000000 0 0x00010000 /* downstream I/O */ | ||
476 | 0x82000000 0 0xa0000000 0xa0000000 0 0x08000000 /* non-prefetchable memory */ | ||
477 | 0xc2000000 0 0xa8000000 0xa8000000 0 0x18000000>; /* prefetchable memory */ | ||
478 | |||
479 | clocks = <&tegra_car TEGRA20_CLK_PEX>, | ||
480 | <&tegra_car TEGRA20_CLK_AFI>, | ||
481 | <&tegra_car TEGRA20_CLK_PCIE_XCLK>, | ||
482 | <&tegra_car TEGRA20_CLK_PLL_E>; | ||
483 | clock-names = "pex", "afi", "pcie_xclk", "pll_e"; | ||
484 | status = "disabled"; | ||
485 | |||
486 | pci@1,0 { | ||
487 | device_type = "pci"; | ||
488 | assigned-addresses = <0x82000800 0 0x80000000 0 0x1000>; | ||
489 | reg = <0x000800 0 0 0 0>; | ||
490 | status = "disabled"; | ||
491 | |||
492 | #address-cells = <3>; | ||
493 | #size-cells = <2>; | ||
494 | ranges; | ||
495 | |||
496 | nvidia,num-lanes = <2>; | ||
497 | }; | ||
498 | |||
499 | pci@2,0 { | ||
500 | device_type = "pci"; | ||
501 | assigned-addresses = <0x82001000 0 0x80001000 0 0x1000>; | ||
502 | reg = <0x001000 0 0 0 0>; | ||
503 | status = "disabled"; | ||
504 | |||
505 | #address-cells = <3>; | ||
506 | #size-cells = <2>; | ||
507 | ranges; | ||
508 | |||
509 | nvidia,num-lanes = <2>; | ||
510 | }; | ||
511 | }; | ||
512 | |||
458 | usb@c5000000 { | 513 | usb@c5000000 { |
459 | compatible = "nvidia,tegra20-ehci", "usb-ehci"; | 514 | compatible = "nvidia,tegra20-ehci", "usb-ehci"; |
460 | reg = <0xc5000000 0x4000>; | 515 | reg = <0xc5000000 0x4000>; |
diff --git a/arch/arm/boot/dts/tegra30-beaver.dts b/arch/arm/boot/dts/tegra30-beaver.dts index 87c5f7b7c271..08cad696e89f 100644 --- a/arch/arm/boot/dts/tegra30-beaver.dts +++ b/arch/arm/boot/dts/tegra30-beaver.dts | |||
@@ -10,6 +10,40 @@ | |||
10 | reg = <0x80000000 0x7ff00000>; | 10 | reg = <0x80000000 0x7ff00000>; |
11 | }; | 11 | }; |
12 | 12 | ||
13 | pcie-controller { | ||
14 | status = "okay"; | ||
15 | pex-clk-supply = <&sys_3v3_pexs_reg>; | ||
16 | vdd-supply = <&ldo1_reg>; | ||
17 | avdd-supply = <&ldo2_reg>; | ||
18 | |||
19 | pci@1,0 { | ||
20 | status = "okay"; | ||
21 | nvidia,num-lanes = <2>; | ||
22 | }; | ||
23 | |||
24 | pci@2,0 { | ||
25 | nvidia,num-lanes = <2>; | ||
26 | }; | ||
27 | |||
28 | pci@3,0 { | ||
29 | status = "okay"; | ||
30 | nvidia,num-lanes = <2>; | ||
31 | }; | ||
32 | }; | ||
33 | |||
34 | host1x { | ||
35 | hdmi { | ||
36 | status = "okay"; | ||
37 | |||
38 | vdd-supply = <&sys_3v3_reg>; | ||
39 | pll-supply = <&vio_reg>; | ||
40 | |||
41 | nvidia,hpd-gpio = | ||
42 | <&gpio TEGRA_GPIO(N, 7) GPIO_ACTIVE_HIGH>; | ||
43 | nvidia,ddc-i2c-bus = <&hdmiddc>; | ||
44 | }; | ||
45 | }; | ||
46 | |||
13 | pinmux { | 47 | pinmux { |
14 | pinctrl-names = "default"; | 48 | pinctrl-names = "default"; |
15 | pinctrl-0 = <&state_default>; | 49 | pinctrl-0 = <&state_default>; |
@@ -76,6 +110,11 @@ | |||
76 | nvidia,pull = <0>; | 110 | nvidia,pull = <0>; |
77 | nvidia,tristate = <0>; | 111 | nvidia,tristate = <0>; |
78 | }; | 112 | }; |
113 | pex_l1_prsnt_n_pdd4 { | ||
114 | nvidia,pins = "pex_l1_prsnt_n_pdd4", | ||
115 | "pex_l1_clkreq_n_pdd6"; | ||
116 | nvidia,pull = <2>; | ||
117 | }; | ||
79 | sdio3 { | 118 | sdio3 { |
80 | nvidia,pins = "drive_sdio3"; | 119 | nvidia,pins = "drive_sdio3"; |
81 | nvidia,high-speed-mode = <0>; | 120 | nvidia,high-speed-mode = <0>; |
@@ -85,6 +124,10 @@ | |||
85 | nvidia,slew-rate-rising = <1>; | 124 | nvidia,slew-rate-rising = <1>; |
86 | nvidia,slew-rate-falling = <1>; | 125 | nvidia,slew-rate-falling = <1>; |
87 | }; | 126 | }; |
127 | gpv { | ||
128 | nvidia,pins = "drive_gpv"; | ||
129 | nvidia,pull-up-strength = <16>; | ||
130 | }; | ||
88 | }; | 131 | }; |
89 | }; | 132 | }; |
90 | 133 | ||
@@ -107,7 +150,7 @@ | |||
107 | clock-frequency = <100000>; | 150 | clock-frequency = <100000>; |
108 | }; | 151 | }; |
109 | 152 | ||
110 | i2c@7000c700 { | 153 | hdmiddc: i2c@7000c700 { |
111 | status = "okay"; | 154 | status = "okay"; |
112 | clock-frequency = <100000>; | 155 | clock-frequency = <100000>; |
113 | }; | 156 | }; |
@@ -262,7 +305,7 @@ | |||
262 | pmc { | 305 | pmc { |
263 | status = "okay"; | 306 | status = "okay"; |
264 | nvidia,invert-interrupt; | 307 | nvidia,invert-interrupt; |
265 | nvidia,suspend-mode = <2>; | 308 | nvidia,suspend-mode = <1>; |
266 | nvidia,cpu-pwr-good-time = <2000>; | 309 | nvidia,cpu-pwr-good-time = <2000>; |
267 | nvidia,cpu-pwr-off-time = <200>; | 310 | nvidia,cpu-pwr-off-time = <200>; |
268 | nvidia,core-pwr-good-time = <3845 3845>; | 311 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -285,6 +328,15 @@ | |||
285 | non-removable; | 328 | non-removable; |
286 | }; | 329 | }; |
287 | 330 | ||
331 | usb@7d008000 { | ||
332 | status = "okay"; | ||
333 | }; | ||
334 | |||
335 | usb-phy@7d008000 { | ||
336 | vbus-supply = <&usb3_vbus_reg>; | ||
337 | status = "okay"; | ||
338 | }; | ||
339 | |||
288 | clocks { | 340 | clocks { |
289 | compatible = "simple-bus"; | 341 | compatible = "simple-bus"; |
290 | #address-cells = <1>; | 342 | #address-cells = <1>; |
@@ -357,7 +409,7 @@ | |||
357 | regulator-min-microvolt = <5000000>; | 409 | regulator-min-microvolt = <5000000>; |
358 | regulator-max-microvolt = <5000000>; | 410 | regulator-max-microvolt = <5000000>; |
359 | enable-active-high; | 411 | enable-active-high; |
360 | gpio = <&gpio TEGRA_GPIO(I, 4) GPIO_ACTIVE_HIGH>; | 412 | gpio = <&gpio TEGRA_GPIO(DD, 6) GPIO_ACTIVE_HIGH>; |
361 | gpio-open-drain; | 413 | gpio-open-drain; |
362 | vin-supply = <&vdd_5v_in_reg>; | 414 | vin-supply = <&vdd_5v_in_reg>; |
363 | }; | 415 | }; |
@@ -369,7 +421,7 @@ | |||
369 | regulator-min-microvolt = <5000000>; | 421 | regulator-min-microvolt = <5000000>; |
370 | regulator-max-microvolt = <5000000>; | 422 | regulator-max-microvolt = <5000000>; |
371 | enable-active-high; | 423 | enable-active-high; |
372 | gpio = <&gpio TEGRA_GPIO(H, 7) GPIO_ACTIVE_HIGH>; | 424 | gpio = <&gpio TEGRA_GPIO(DD, 4) GPIO_ACTIVE_HIGH>; |
373 | gpio-open-drain; | 425 | gpio-open-drain; |
374 | vin-supply = <&vdd_5v_in_reg>; | 426 | vin-supply = <&vdd_5v_in_reg>; |
375 | }; | 427 | }; |
@@ -421,7 +473,9 @@ | |||
421 | 473 | ||
422 | nvidia,audio-routing = | 474 | nvidia,audio-routing = |
423 | "Headphones", "HPOR", | 475 | "Headphones", "HPOR", |
424 | "Headphones", "HPOL"; | 476 | "Headphones", "HPOL", |
477 | "Mic Jack", "MICBIAS1", | ||
478 | "IN2P", "Mic Jack"; | ||
425 | 479 | ||
426 | nvidia,i2s-controller = <&tegra_i2s1>; | 480 | nvidia,i2s-controller = <&tegra_i2s1>; |
427 | nvidia,audio-codec = <&rt5640>; | 481 | nvidia,audio-codec = <&rt5640>; |
diff --git a/arch/arm/boot/dts/tegra30-cardhu.dtsi b/arch/arm/boot/dts/tegra30-cardhu.dtsi index f65b53d32416..e19dbf238e5c 100644 --- a/arch/arm/boot/dts/tegra30-cardhu.dtsi +++ b/arch/arm/boot/dts/tegra30-cardhu.dtsi | |||
@@ -31,6 +31,26 @@ | |||
31 | reg = <0x80000000 0x40000000>; | 31 | reg = <0x80000000 0x40000000>; |
32 | }; | 32 | }; |
33 | 33 | ||
34 | pcie-controller { | ||
35 | status = "okay"; | ||
36 | pex-clk-supply = <&pex_hvdd_3v3_reg>; | ||
37 | vdd-supply = <&ldo1_reg>; | ||
38 | avdd-supply = <&ldo2_reg>; | ||
39 | |||
40 | pci@1,0 { | ||
41 | nvidia,num-lanes = <4>; | ||
42 | }; | ||
43 | |||
44 | pci@2,0 { | ||
45 | nvidia,num-lanes = <1>; | ||
46 | }; | ||
47 | |||
48 | pci@3,0 { | ||
49 | status = "okay"; | ||
50 | nvidia,num-lanes = <1>; | ||
51 | }; | ||
52 | }; | ||
53 | |||
34 | pinmux { | 54 | pinmux { |
35 | pinctrl-names = "default"; | 55 | pinctrl-names = "default"; |
36 | pinctrl-0 = <&state_default>; | 56 | pinctrl-0 = <&state_default>; |
@@ -173,19 +193,6 @@ | |||
173 | gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>; | 193 | gpio-cfg = <0xffffffff 0xffffffff 0 0xffffffff 0xffffffff>; |
174 | }; | 194 | }; |
175 | 195 | ||
176 | tps62361 { | ||
177 | compatible = "ti,tps62361"; | ||
178 | reg = <0x60>; | ||
179 | |||
180 | regulator-name = "tps62361-vout"; | ||
181 | regulator-min-microvolt = <500000>; | ||
182 | regulator-max-microvolt = <1500000>; | ||
183 | regulator-boot-on; | ||
184 | regulator-always-on; | ||
185 | ti,vsel0-state-high; | ||
186 | ti,vsel1-state-high; | ||
187 | }; | ||
188 | |||
189 | pmic: tps65911@2d { | 196 | pmic: tps65911@2d { |
190 | compatible = "ti,tps65911"; | 197 | compatible = "ti,tps65911"; |
191 | reg = <0x2d>; | 198 | reg = <0x2d>; |
@@ -286,6 +293,26 @@ | |||
286 | }; | 293 | }; |
287 | }; | 294 | }; |
288 | }; | 295 | }; |
296 | |||
297 | nct1008 { | ||
298 | compatible = "onnn,nct1008"; | ||
299 | reg = <0x4c>; | ||
300 | interrupt-parent = <&gpio>; | ||
301 | interrupts = <TEGRA_GPIO(CC, 2) IRQ_TYPE_LEVEL_LOW>; | ||
302 | }; | ||
303 | |||
304 | tps62361 { | ||
305 | compatible = "ti,tps62361"; | ||
306 | reg = <0x60>; | ||
307 | |||
308 | regulator-name = "tps62361-vout"; | ||
309 | regulator-min-microvolt = <500000>; | ||
310 | regulator-max-microvolt = <1500000>; | ||
311 | regulator-boot-on; | ||
312 | regulator-always-on; | ||
313 | ti,vsel0-state-high; | ||
314 | ti,vsel1-state-high; | ||
315 | }; | ||
289 | }; | 316 | }; |
290 | 317 | ||
291 | spi@7000da00 { | 318 | spi@7000da00 { |
@@ -307,7 +334,7 @@ | |||
307 | pmc { | 334 | pmc { |
308 | status = "okay"; | 335 | status = "okay"; |
309 | nvidia,invert-interrupt; | 336 | nvidia,invert-interrupt; |
310 | nvidia,suspend-mode = <2>; | 337 | nvidia,suspend-mode = <1>; |
311 | nvidia,cpu-pwr-good-time = <2000>; | 338 | nvidia,cpu-pwr-good-time = <2000>; |
312 | nvidia,cpu-pwr-off-time = <200>; | 339 | nvidia,cpu-pwr-off-time = <200>; |
313 | nvidia,core-pwr-good-time = <3845 3845>; | 340 | nvidia,core-pwr-good-time = <3845 3845>; |
@@ -330,6 +357,15 @@ | |||
330 | non-removable; | 357 | non-removable; |
331 | }; | 358 | }; |
332 | 359 | ||
360 | usb@7d008000 { | ||
361 | status = "okay"; | ||
362 | }; | ||
363 | |||
364 | usb-phy@7d008000 { | ||
365 | vbus-supply = <&usb3_vbus_reg>; | ||
366 | status = "okay"; | ||
367 | }; | ||
368 | |||
333 | clocks { | 369 | clocks { |
334 | compatible = "simple-bus"; | 370 | compatible = "simple-bus"; |
335 | #address-cells = <1>; | 371 | #address-cells = <1>; |
diff --git a/arch/arm/boot/dts/tegra30.dtsi b/arch/arm/boot/dts/tegra30.dtsi index d8783f0fae63..0022c127e1d9 100644 --- a/arch/arm/boot/dts/tegra30.dtsi +++ b/arch/arm/boot/dts/tegra30.dtsi | |||
@@ -16,6 +16,76 @@ | |||
16 | serial4 = &uarte; | 16 | serial4 = &uarte; |
17 | }; | 17 | }; |
18 | 18 | ||
19 | pcie-controller { | ||
20 | compatible = "nvidia,tegra30-pcie"; | ||
21 | device_type = "pci"; | ||
22 | reg = <0x00003000 0x00000800 /* PADS registers */ | ||
23 | 0x00003800 0x00000200 /* AFI registers */ | ||
24 | 0x10000000 0x10000000>; /* configuration space */ | ||
25 | reg-names = "pads", "afi", "cs"; | ||
26 | interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH /* controller interrupt */ | ||
27 | GIC_SPI 99 IRQ_TYPE_LEVEL_HIGH>; /* MSI interrupt */ | ||
28 | interrupt-names = "intr", "msi"; | ||
29 | |||
30 | bus-range = <0x00 0xff>; | ||
31 | #address-cells = <3>; | ||
32 | #size-cells = <2>; | ||
33 | |||
34 | ranges = <0x82000000 0 0x00000000 0x00000000 0 0x00001000 /* port 0 configuration space */ | ||
35 | 0x82000000 0 0x00001000 0x00001000 0 0x00001000 /* port 1 configuration space */ | ||
36 | 0x82000000 0 0x00004000 0x00004000 0 0x00001000 /* port 2 configuration space */ | ||
37 | 0x81000000 0 0 0x02000000 0 0x00010000 /* downstream I/O */ | ||
38 | 0x82000000 0 0x20000000 0x20000000 0 0x08000000 /* non-prefetchable memory */ | ||
39 | 0xc2000000 0 0x28000000 0x28000000 0 0x18000000>; /* prefetchable memory */ | ||
40 | |||
41 | clocks = <&tegra_car TEGRA30_CLK_PCIE>, | ||
42 | <&tegra_car TEGRA30_CLK_AFI>, | ||
43 | <&tegra_car TEGRA30_CLK_PCIEX>, | ||
44 | <&tegra_car TEGRA30_CLK_PLL_E>, | ||
45 | <&tegra_car TEGRA30_CLK_CML0>; | ||
46 | clock-names = "pex", "afi", "pcie_xclk", "pll_e", "cml"; | ||
47 | status = "disabled"; | ||
48 | |||
49 | pci@1,0 { | ||
50 | device_type = "pci"; | ||
51 | assigned-addresses = <0x82000800 0 0x00000000 0 0x1000>; | ||
52 | reg = <0x000800 0 0 0 0>; | ||
53 | status = "disabled"; | ||
54 | |||
55 | #address-cells = <3>; | ||
56 | #size-cells = <2>; | ||
57 | ranges; | ||
58 | |||
59 | nvidia,num-lanes = <2>; | ||
60 | }; | ||
61 | |||
62 | pci@2,0 { | ||
63 | device_type = "pci"; | ||
64 | assigned-addresses = <0x82001000 0 0x00001000 0 0x1000>; | ||
65 | reg = <0x001000 0 0 0 0>; | ||
66 | status = "disabled"; | ||
67 | |||
68 | #address-cells = <3>; | ||
69 | #size-cells = <2>; | ||
70 | ranges; | ||
71 | |||
72 | nvidia,num-lanes = <2>; | ||
73 | }; | ||
74 | |||
75 | pci@3,0 { | ||
76 | device_type = "pci"; | ||
77 | assigned-addresses = <0x82001800 0 0x00004000 0 0x1000>; | ||
78 | reg = <0x001800 0 0 0 0>; | ||
79 | status = "disabled"; | ||
80 | |||
81 | #address-cells = <3>; | ||
82 | #size-cells = <2>; | ||
83 | ranges; | ||
84 | |||
85 | nvidia,num-lanes = <2>; | ||
86 | }; | ||
87 | }; | ||
88 | |||
19 | host1x { | 89 | host1x { |
20 | compatible = "nvidia,tegra30-host1x", "simple-bus"; | 90 | compatible = "nvidia,tegra30-host1x", "simple-bus"; |
21 | reg = <0x50000000 0x00024000>; | 91 | reg = <0x50000000 0x00024000>; |
@@ -561,6 +631,92 @@ | |||
561 | status = "disabled"; | 631 | status = "disabled"; |
562 | }; | 632 | }; |
563 | 633 | ||
634 | usb@7d000000 { | ||
635 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
636 | reg = <0x7d000000 0x4000>; | ||
637 | interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; | ||
638 | phy_type = "utmi"; | ||
639 | clocks = <&tegra_car TEGRA30_CLK_USBD>; | ||
640 | nvidia,needs-double-reset; | ||
641 | nvidia,phy = <&phy1>; | ||
642 | status = "disabled"; | ||
643 | }; | ||
644 | |||
645 | phy1: usb-phy@7d000000 { | ||
646 | compatible = "nvidia,tegra30-usb-phy"; | ||
647 | reg = <0x7d000000 0x4000 0x7d000000 0x4000>; | ||
648 | phy_type = "utmi"; | ||
649 | clocks = <&tegra_car TEGRA30_CLK_USBD>, | ||
650 | <&tegra_car TEGRA30_CLK_PLL_U>, | ||
651 | <&tegra_car TEGRA30_CLK_USBD>; | ||
652 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
653 | nvidia,hssync-start-delay = <9>; | ||
654 | nvidia,idle-wait-delay = <17>; | ||
655 | nvidia,elastic-limit = <16>; | ||
656 | nvidia,term-range-adj = <6>; | ||
657 | nvidia,xcvr-setup = <51>; | ||
658 | nvidia.xcvr-setup-use-fuses; | ||
659 | nvidia,xcvr-lsfslew = <1>; | ||
660 | nvidia,xcvr-lsrslew = <1>; | ||
661 | nvidia,xcvr-hsslew = <32>; | ||
662 | nvidia,hssquelch-level = <2>; | ||
663 | nvidia,hsdiscon-level = <5>; | ||
664 | status = "disabled"; | ||
665 | }; | ||
666 | |||
667 | usb@7d004000 { | ||
668 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
669 | reg = <0x7d004000 0x4000>; | ||
670 | interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; | ||
671 | phy_type = "ulpi"; | ||
672 | clocks = <&tegra_car TEGRA30_CLK_USB2>; | ||
673 | nvidia,phy = <&phy2>; | ||
674 | status = "disabled"; | ||
675 | }; | ||
676 | |||
677 | phy2: usb-phy@7d004000 { | ||
678 | compatible = "nvidia,tegra30-usb-phy"; | ||
679 | reg = <0x7d004000 0x4000>; | ||
680 | phy_type = "ulpi"; | ||
681 | clocks = <&tegra_car TEGRA30_CLK_USB2>, | ||
682 | <&tegra_car TEGRA30_CLK_PLL_U>, | ||
683 | <&tegra_car TEGRA30_CLK_CDEV2>; | ||
684 | clock-names = "reg", "pll_u", "ulpi-link"; | ||
685 | status = "disabled"; | ||
686 | }; | ||
687 | |||
688 | usb@7d008000 { | ||
689 | compatible = "nvidia,tegra30-ehci", "usb-ehci"; | ||
690 | reg = <0x7d008000 0x4000>; | ||
691 | interrupts = <GIC_SPI 97 IRQ_TYPE_LEVEL_HIGH>; | ||
692 | phy_type = "utmi"; | ||
693 | clocks = <&tegra_car TEGRA30_CLK_USB3>; | ||
694 | nvidia,phy = <&phy3>; | ||
695 | status = "disabled"; | ||
696 | }; | ||
697 | |||
698 | phy3: usb-phy@7d008000 { | ||
699 | compatible = "nvidia,tegra30-usb-phy"; | ||
700 | reg = <0x7d008000 0x4000 0x7d000000 0x4000>; | ||
701 | phy_type = "utmi"; | ||
702 | clocks = <&tegra_car TEGRA30_CLK_USB3>, | ||
703 | <&tegra_car TEGRA30_CLK_PLL_U>, | ||
704 | <&tegra_car TEGRA30_CLK_USBD>; | ||
705 | clock-names = "reg", "pll_u", "utmi-pads"; | ||
706 | nvidia,hssync-start-delay = <0>; | ||
707 | nvidia,idle-wait-delay = <17>; | ||
708 | nvidia,elastic-limit = <16>; | ||
709 | nvidia,term-range-adj = <6>; | ||
710 | nvidia,xcvr-setup = <51>; | ||
711 | nvidia.xcvr-setup-use-fuses; | ||
712 | nvidia,xcvr-lsfslew = <2>; | ||
713 | nvidia,xcvr-lsrslew = <2>; | ||
714 | nvidia,xcvr-hsslew = <32>; | ||
715 | nvidia,hssquelch-level = <2>; | ||
716 | nvidia,hsdiscon-level = <5>; | ||
717 | status = "disabled"; | ||
718 | }; | ||
719 | |||
564 | cpus { | 720 | cpus { |
565 | #address-cells = <1>; | 721 | #address-cells = <1>; |
566 | #size-cells = <0>; | 722 | #size-cells = <0>; |
diff --git a/arch/arm/boot/dts/u9540.dts b/arch/arm/boot/dts/u9540.dts deleted file mode 100644 index 95892ec6c342..000000000000 --- a/arch/arm/boot/dts/u9540.dts +++ /dev/null | |||
@@ -1,72 +0,0 @@ | |||
1 | /* | ||
2 | * Copyright 2012 ST-Ericsson AB | ||
3 | * | ||
4 | * 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 | * Version 2 or later at the following locations: | ||
7 | * | ||
8 | * http://www.opensource.org/licenses/gpl-license.html | ||
9 | * http://www.gnu.org/copyleft/gpl.html | ||
10 | */ | ||
11 | |||
12 | /dts-v1/; | ||
13 | /include/ "dbx5x0.dtsi" | ||
14 | |||
15 | / { | ||
16 | model = "ST-Ericsson U9540 platform with Device Tree"; | ||
17 | compatible = "st-ericsson,u9540"; | ||
18 | |||
19 | memory { | ||
20 | reg = <0x00000000 0x20000000>; | ||
21 | }; | ||
22 | |||
23 | soc-u9500 { | ||
24 | uart@80120000 { | ||
25 | status = "okay"; | ||
26 | }; | ||
27 | |||
28 | uart@80121000 { | ||
29 | status = "okay"; | ||
30 | }; | ||
31 | |||
32 | uart@80007000 { | ||
33 | status = "okay"; | ||
34 | }; | ||
35 | |||
36 | // External Micro SD slot | ||
37 | sdi0_per1@80126000 { | ||
38 | arm,primecell-periphid = <0x10480180>; | ||
39 | max-frequency = <100000000>; | ||
40 | bus-width = <4>; | ||
41 | mmc-cap-sd-highspeed; | ||
42 | mmc-cap-mmc-highspeed; | ||
43 | vmmc-supply = <&ab8500_ldo_aux3_reg>; | ||
44 | |||
45 | cd-gpios = <&gpio7 6 0x4>; // 230 | ||
46 | cd-inverted; | ||
47 | |||
48 | status = "okay"; | ||
49 | }; | ||
50 | |||
51 | |||
52 | // WLAN SDIO channel | ||
53 | sdi1_per2@80118000 { | ||
54 | arm,primecell-periphid = <0x10480180>; | ||
55 | max-frequency = <50000000>; | ||
56 | bus-width = <4>; | ||
57 | |||
58 | status = "okay"; | ||
59 | }; | ||
60 | |||
61 | // On-board eMMC | ||
62 | sdi4_per2@80114000 { | ||
63 | arm,primecell-periphid = <0x10480180>; | ||
64 | max-frequency = <100000000>; | ||
65 | bus-width = <8>; | ||
66 | mmc-cap-mmc-highspeed; | ||
67 | vmmc-supply = <&ab8500_ldo_aux2_reg>; | ||
68 | |||
69 | status = "okay"; | ||
70 | }; | ||
71 | }; | ||
72 | }; | ||
diff --git a/arch/arm/boot/dts/zynq-7000.dtsi b/arch/arm/boot/dts/zynq-7000.dtsi index 6f54a64850eb..e32b92b949d2 100644 --- a/arch/arm/boot/dts/zynq-7000.dtsi +++ b/arch/arm/boot/dts/zynq-7000.dtsi | |||
@@ -41,8 +41,8 @@ | |||
41 | L2: cache-controller { | 41 | L2: cache-controller { |
42 | compatible = "arm,pl310-cache"; | 42 | compatible = "arm,pl310-cache"; |
43 | reg = <0xF8F02000 0x1000>; | 43 | reg = <0xF8F02000 0x1000>; |
44 | arm,data-latency = <2 3 2>; | 44 | arm,data-latency = <3 2 2>; |
45 | arm,tag-latency = <2 3 2>; | 45 | arm,tag-latency = <2 2 2>; |
46 | cache-unified; | 46 | cache-unified; |
47 | cache-level = <2>; | 47 | cache-level = <2>; |
48 | }; | 48 | }; |
diff --git a/arch/arm/mach-nomadik/Kconfig b/arch/arm/mach-nomadik/Kconfig index 5981c3db9b41..4d42da49753c 100644 --- a/arch/arm/mach-nomadik/Kconfig +++ b/arch/arm/mach-nomadik/Kconfig | |||
@@ -27,6 +27,7 @@ config MACH_NOMADIK_8815NHK | |||
27 | select NOMADIK_8815 | 27 | select NOMADIK_8815 |
28 | select I2C | 28 | select I2C |
29 | select I2C_ALGOBIT | 29 | select I2C_ALGOBIT |
30 | select I2C_NOMADIK | ||
30 | 31 | ||
31 | endmenu | 32 | endmenu |
32 | endif | 33 | endif |
diff --git a/arch/arm/mach-pxa/pxa-dt.c b/arch/arm/mach-pxa/pxa-dt.c index 3835979a0dd3..f6a2c4b1c1dc 100644 --- a/arch/arm/mach-pxa/pxa-dt.c +++ b/arch/arm/mach-pxa/pxa-dt.c | |||
@@ -28,7 +28,7 @@ static const struct of_dev_auxdata pxa3xx_auxdata_lookup[] __initconst = { | |||
28 | OF_DEV_AUXDATA("mrvl,pxa-uart", 0x40700000, "pxa2xx-uart.2", NULL), | 28 | OF_DEV_AUXDATA("mrvl,pxa-uart", 0x40700000, "pxa2xx-uart.2", NULL), |
29 | OF_DEV_AUXDATA("mrvl,pxa-uart", 0x41600000, "pxa2xx-uart.3", NULL), | 29 | OF_DEV_AUXDATA("mrvl,pxa-uart", 0x41600000, "pxa2xx-uart.3", NULL), |
30 | OF_DEV_AUXDATA("marvell,pxa-mmc", 0x41100000, "pxa2xx-mci.0", NULL), | 30 | OF_DEV_AUXDATA("marvell,pxa-mmc", 0x41100000, "pxa2xx-mci.0", NULL), |
31 | OF_DEV_AUXDATA("mrvl,pxa-gpio", 0x40e00000, "pxa-gpio", NULL), | 31 | OF_DEV_AUXDATA("intel,pxa3xx-gpio", 0x40e00000, "pxa3xx-gpio", NULL), |
32 | OF_DEV_AUXDATA("marvell,pxa-ohci", 0x4c000000, "pxa27x-ohci", NULL), | 32 | OF_DEV_AUXDATA("marvell,pxa-ohci", 0x4c000000, "pxa27x-ohci", NULL), |
33 | OF_DEV_AUXDATA("mrvl,pxa-i2c", 0x40301680, "pxa2xx-i2c.0", NULL), | 33 | OF_DEV_AUXDATA("mrvl,pxa-i2c", 0x40301680, "pxa2xx-i2c.0", NULL), |
34 | OF_DEV_AUXDATA("mrvl,pwri2c", 0x40f500c0, "pxa3xx-i2c.1", NULL), | 34 | OF_DEV_AUXDATA("mrvl,pwri2c", 0x40f500c0, "pxa3xx-i2c.1", NULL), |
diff --git a/arch/arm/mach-shmobile/Kconfig b/arch/arm/mach-shmobile/Kconfig index 3912ce91fee4..cdefd7dcca79 100644 --- a/arch/arm/mach-shmobile/Kconfig +++ b/arch/arm/mach-shmobile/Kconfig | |||
@@ -1,3 +1,41 @@ | |||
1 | config ARCH_SHMOBILE_MULTI | ||
2 | bool "SH-Mobile Series" if ARCH_MULTI_V7 | ||
3 | depends on MMU | ||
4 | select CPU_V7 | ||
5 | select GENERIC_CLOCKEVENTS | ||
6 | select HAVE_ARM_SCU if SMP | ||
7 | select HAVE_ARM_TWD if LOCAL_TIMERS | ||
8 | select HAVE_SMP | ||
9 | select ARM_GIC | ||
10 | select MIGHT_HAVE_CACHE_L2X0 | ||
11 | select NO_IOPORT | ||
12 | select PINCTRL | ||
13 | select ARCH_REQUIRE_GPIOLIB | ||
14 | select CLKDEV_LOOKUP | ||
15 | |||
16 | if ARCH_SHMOBILE_MULTI | ||
17 | |||
18 | comment "SH-Mobile System Type" | ||
19 | |||
20 | config ARCH_EMEV2 | ||
21 | bool "Emma Mobile EV2" | ||
22 | |||
23 | comment "SH-Mobile Board Type" | ||
24 | |||
25 | config MACH_KZM9D_REFERENCE | ||
26 | bool "KZM9D board - Reference Device Tree Implementation" | ||
27 | depends on ARCH_EMEV2 | ||
28 | select REGULATOR_FIXED_VOLTAGE if REGULATOR | ||
29 | ---help--- | ||
30 | Use reference implementation of KZM9D board support | ||
31 | which makes a greater use of device tree at the expense | ||
32 | of not supporting a number of devices. | ||
33 | |||
34 | This is intended to aid developers | ||
35 | |||
36 | comment "SH-Mobile System Configuration" | ||
37 | endif | ||
38 | |||
1 | if ARCH_SHMOBILE | 39 | if ARCH_SHMOBILE |
2 | 40 | ||
3 | comment "SH-Mobile System Type" | 41 | comment "SH-Mobile System Type" |
@@ -156,6 +194,18 @@ config MACH_KZM9D | |||
156 | select REGULATOR_FIXED_VOLTAGE if REGULATOR | 194 | select REGULATOR_FIXED_VOLTAGE if REGULATOR |
157 | select USE_OF | 195 | select USE_OF |
158 | 196 | ||
197 | config MACH_KZM9D_REFERENCE | ||
198 | bool "KZM9D board - Reference Device Tree Implementation" | ||
199 | depends on ARCH_EMEV2 | ||
200 | select REGULATOR_FIXED_VOLTAGE if REGULATOR | ||
201 | select USE_OF | ||
202 | ---help--- | ||
203 | Use reference implementation of KZM9D board support | ||
204 | which makes a greater use of device tree at the expense | ||
205 | of not supporting a number of devices. | ||
206 | |||
207 | This is intended to aid developers | ||
208 | |||
159 | config MACH_KZM9G | 209 | config MACH_KZM9G |
160 | bool "KZM-A9-GT board" | 210 | bool "KZM-A9-GT board" |
161 | depends on ARCH_SH73A0 | 211 | depends on ARCH_SH73A0 |
@@ -186,6 +236,15 @@ config CPU_HAS_INTEVT | |||
186 | bool | 236 | bool |
187 | default y | 237 | default y |
188 | 238 | ||
239 | config SH_CLK_CPG | ||
240 | bool | ||
241 | |||
242 | source "drivers/sh/Kconfig" | ||
243 | |||
244 | endif | ||
245 | |||
246 | if ARCH_SHMOBILE || ARCH_SHMOBILE_MULTI | ||
247 | |||
189 | menu "Timer and clock configuration" | 248 | menu "Timer and clock configuration" |
190 | 249 | ||
191 | config SHMOBILE_TIMER_HZ | 250 | config SHMOBILE_TIMER_HZ |
@@ -220,9 +279,4 @@ config EM_TIMER_STI | |||
220 | 279 | ||
221 | endmenu | 280 | endmenu |
222 | 281 | ||
223 | config SH_CLK_CPG | ||
224 | bool | ||
225 | |||
226 | source "drivers/sh/Kconfig" | ||
227 | |||
228 | endif | 282 | endif |
diff --git a/arch/arm/mach-shmobile/Makefile b/arch/arm/mach-shmobile/Makefile index 6165a517f580..b150c4508237 100644 --- a/arch/arm/mach-shmobile/Makefile +++ b/arch/arm/mach-shmobile/Makefile | |||
@@ -2,18 +2,33 @@ | |||
2 | # Makefile for the linux kernel. | 2 | # Makefile for the linux kernel. |
3 | # | 3 | # |
4 | 4 | ||
5 | ccflags-$(CONFIG_ARCH_MULTIPLATFORM) := -I$(srctree)/arch/arm/mach-shmobile/include | ||
6 | |||
5 | # Common objects | 7 | # Common objects |
6 | obj-y := timer.o console.o clock.o | 8 | obj-y := timer.o console.o |
7 | 9 | ||
8 | # CPU objects | 10 | # CPU objects |
9 | obj-$(CONFIG_ARCH_SH7372) += setup-sh7372.o clock-sh7372.o intc-sh7372.o | 11 | obj-$(CONFIG_ARCH_SH7372) += setup-sh7372.o intc-sh7372.o |
10 | obj-$(CONFIG_ARCH_SH73A0) += setup-sh73a0.o clock-sh73a0.o intc-sh73a0.o | 12 | obj-$(CONFIG_ARCH_SH73A0) += setup-sh73a0.o intc-sh73a0.o |
11 | obj-$(CONFIG_ARCH_R8A73A4) += setup-r8a73a4.o clock-r8a73a4.o | 13 | obj-$(CONFIG_ARCH_R8A73A4) += setup-r8a73a4.o |
12 | obj-$(CONFIG_ARCH_R8A7740) += setup-r8a7740.o clock-r8a7740.o intc-r8a7740.o | 14 | obj-$(CONFIG_ARCH_R8A7740) += setup-r8a7740.o intc-r8a7740.o |
13 | obj-$(CONFIG_ARCH_R8A7778) += setup-r8a7778.o clock-r8a7778.o | 15 | obj-$(CONFIG_ARCH_R8A7778) += setup-r8a7778.o |
14 | obj-$(CONFIG_ARCH_R8A7779) += setup-r8a7779.o clock-r8a7779.o intc-r8a7779.o | 16 | obj-$(CONFIG_ARCH_R8A7779) += setup-r8a7779.o intc-r8a7779.o |
15 | obj-$(CONFIG_ARCH_R8A7790) += setup-r8a7790.o clock-r8a7790.o | 17 | obj-$(CONFIG_ARCH_R8A7790) += setup-r8a7790.o |
16 | obj-$(CONFIG_ARCH_EMEV2) += setup-emev2.o clock-emev2.o | 18 | obj-$(CONFIG_ARCH_EMEV2) += setup-emev2.o |
19 | |||
20 | # Clock objects | ||
21 | ifndef CONFIG_COMMON_CLK | ||
22 | obj-y += clock.o | ||
23 | obj-$(CONFIG_ARCH_SH7372) += clock-sh7372.o | ||
24 | obj-$(CONFIG_ARCH_SH73A0) += clock-sh73a0.o | ||
25 | obj-$(CONFIG_ARCH_R8A73A4) += clock-r8a73a4.o | ||
26 | obj-$(CONFIG_ARCH_R8A7740) += clock-r8a7740.o | ||
27 | obj-$(CONFIG_ARCH_R8A7778) += clock-r8a7778.o | ||
28 | obj-$(CONFIG_ARCH_R8A7779) += clock-r8a7779.o | ||
29 | obj-$(CONFIG_ARCH_R8A7790) += clock-r8a7790.o | ||
30 | obj-$(CONFIG_ARCH_EMEV2) += clock-emev2.o | ||
31 | endif | ||
17 | 32 | ||
18 | # SMP objects | 33 | # SMP objects |
19 | smp-y := platsmp.o headsmp.o | 34 | smp-y := platsmp.o headsmp.o |
@@ -46,6 +61,7 @@ obj-$(CONFIG_MACH_LAGER) += board-lager.o | |||
46 | obj-$(CONFIG_MACH_ARMADILLO800EVA) += board-armadillo800eva.o | 61 | obj-$(CONFIG_MACH_ARMADILLO800EVA) += board-armadillo800eva.o |
47 | obj-$(CONFIG_MACH_ARMADILLO800EVA_REFERENCE) += board-armadillo800eva-reference.o | 62 | obj-$(CONFIG_MACH_ARMADILLO800EVA_REFERENCE) += board-armadillo800eva-reference.o |
48 | obj-$(CONFIG_MACH_KZM9D) += board-kzm9d.o | 63 | obj-$(CONFIG_MACH_KZM9D) += board-kzm9d.o |
64 | obj-$(CONFIG_MACH_KZM9D_REFERENCE) += board-kzm9d-reference.o | ||
49 | obj-$(CONFIG_MACH_KZM9G) += board-kzm9g.o | 65 | obj-$(CONFIG_MACH_KZM9G) += board-kzm9g.o |
50 | obj-$(CONFIG_MACH_KZM9G_REFERENCE) += board-kzm9g-reference.o | 66 | obj-$(CONFIG_MACH_KZM9G_REFERENCE) += board-kzm9g-reference.o |
51 | 67 | ||
diff --git a/arch/arm/mach-shmobile/Makefile.boot b/arch/arm/mach-shmobile/Makefile.boot index 84c6868580f0..7785c52b5cfd 100644 --- a/arch/arm/mach-shmobile/Makefile.boot +++ b/arch/arm/mach-shmobile/Makefile.boot | |||
@@ -7,6 +7,7 @@ loadaddr-$(CONFIG_MACH_ARMADILLO800EVA_REFERENCE) += 0x40008000 | |||
7 | loadaddr-$(CONFIG_MACH_BOCKW) += 0x60008000 | 7 | loadaddr-$(CONFIG_MACH_BOCKW) += 0x60008000 |
8 | loadaddr-$(CONFIG_MACH_KOTA2) += 0x41008000 | 8 | loadaddr-$(CONFIG_MACH_KOTA2) += 0x41008000 |
9 | loadaddr-$(CONFIG_MACH_KZM9D) += 0x40008000 | 9 | loadaddr-$(CONFIG_MACH_KZM9D) += 0x40008000 |
10 | loadaddr-$(CONFIG_MACH_KZM9D_REFERENCE) += 0x40008000 | ||
10 | loadaddr-$(CONFIG_MACH_KZM9G) += 0x41008000 | 11 | loadaddr-$(CONFIG_MACH_KZM9G) += 0x41008000 |
11 | loadaddr-$(CONFIG_MACH_KZM9G_REFERENCE) += 0x41008000 | 12 | loadaddr-$(CONFIG_MACH_KZM9G_REFERENCE) += 0x41008000 |
12 | loadaddr-$(CONFIG_MACH_LAGER) += 0x40008000 | 13 | loadaddr-$(CONFIG_MACH_LAGER) += 0x40008000 |
diff --git a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c index 8f677df2d4c4..fd2446d995ad 100644 --- a/arch/arm/mach-shmobile/board-armadillo800eva-reference.c +++ b/arch/arm/mach-shmobile/board-armadillo800eva-reference.c | |||
@@ -24,7 +24,6 @@ | |||
24 | #include <linux/kernel.h> | 24 | #include <linux/kernel.h> |
25 | #include <linux/gpio.h> | 25 | #include <linux/gpio.h> |
26 | #include <linux/io.h> | 26 | #include <linux/io.h> |
27 | #include <linux/pinctrl/machine.h> | ||
28 | #include <mach/common.h> | 27 | #include <mach/common.h> |
29 | #include <mach/r8a7740.h> | 28 | #include <mach/r8a7740.h> |
30 | #include <asm/mach/arch.h> | 29 | #include <asm/mach/arch.h> |
@@ -119,12 +118,6 @@ | |||
119 | * usbhsf_power_ctrl() | 118 | * usbhsf_power_ctrl() |
120 | */ | 119 | */ |
121 | 120 | ||
122 | static const struct pinctrl_map eva_pinctrl_map[] = { | ||
123 | /* SCIFA1 */ | ||
124 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.1", "pfc-r8a7740", | ||
125 | "scifa1_data", "scifa1"), | ||
126 | }; | ||
127 | |||
128 | static void __init eva_clock_init(void) | 121 | static void __init eva_clock_init(void) |
129 | { | 122 | { |
130 | struct clk *system = clk_get(NULL, "system_clk"); | 123 | struct clk *system = clk_get(NULL, "system_clk"); |
@@ -165,27 +158,18 @@ clock_error: | |||
165 | */ | 158 | */ |
166 | static void __init eva_init(void) | 159 | static void __init eva_init(void) |
167 | { | 160 | { |
168 | |||
169 | r8a7740_clock_init(MD_CK0 | MD_CK2); | 161 | r8a7740_clock_init(MD_CK0 | MD_CK2); |
170 | eva_clock_init(); | 162 | eva_clock_init(); |
171 | 163 | ||
172 | pinctrl_register_mappings(eva_pinctrl_map, ARRAY_SIZE(eva_pinctrl_map)); | ||
173 | r8a7740_pinmux_init(); | ||
174 | |||
175 | r8a7740_meram_workaround(); | 164 | r8a7740_meram_workaround(); |
176 | 165 | ||
177 | /* | ||
178 | * Touchscreen | ||
179 | * TODO: Move reset GPIO over to .dts when we can reference it | ||
180 | */ | ||
181 | gpio_request_one(166, GPIOF_OUT_INIT_HIGH, NULL); /* TP_RST_B */ | ||
182 | |||
183 | #ifdef CONFIG_CACHE_L2X0 | 166 | #ifdef CONFIG_CACHE_L2X0 |
184 | /* Early BRESP enable, Shared attribute override enable, 32K*8way */ | 167 | /* Early BRESP enable, Shared attribute override enable, 32K*8way */ |
185 | l2x0_init(IOMEM(0xf0002000), 0x40440000, 0x82000fff); | 168 | l2x0_init(IOMEM(0xf0002000), 0x40440000, 0x82000fff); |
186 | #endif | 169 | #endif |
187 | 170 | ||
188 | r8a7740_add_standard_devices_dt(); | 171 | r8a7740_add_standard_devices_dt(); |
172 | |||
189 | r8a7740_pm_init(); | 173 | r8a7740_pm_init(); |
190 | } | 174 | } |
191 | 175 | ||
diff --git a/arch/arm/mach-shmobile/board-kzm9d-reference.c b/arch/arm/mach-shmobile/board-kzm9d-reference.c new file mode 100644 index 000000000000..8f8bb2fab076 --- /dev/null +++ b/arch/arm/mach-shmobile/board-kzm9d-reference.c | |||
@@ -0,0 +1,47 @@ | |||
1 | /* | ||
2 | * kzm9d board support - Reference DT implementation | ||
3 | * | ||
4 | * Copyright (C) 2013 Renesas Solutions Corp. | ||
5 | * Copyright (C) 2013 Magnus Damm | ||
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 as published by | ||
9 | * the Free Software Foundation; version 2 of the License. | ||
10 | * | ||
11 | * This program is distributed in the hope that it will be useful, | ||
12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | ||
13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | ||
14 | * GNU General Public License for more details. | ||
15 | * | ||
16 | * You should have received a copy of the GNU General Public License | ||
17 | * along with this program; if not, write to the Free Software | ||
18 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | ||
19 | */ | ||
20 | |||
21 | #include <linux/init.h> | ||
22 | #include <linux/of_platform.h> | ||
23 | #include <mach/emev2.h> | ||
24 | #include <mach/common.h> | ||
25 | #include <asm/mach/arch.h> | ||
26 | |||
27 | static void __init kzm9d_add_standard_devices(void) | ||
28 | { | ||
29 | if (!IS_ENABLED(CONFIG_COMMON_CLK)) | ||
30 | emev2_clock_init(); | ||
31 | |||
32 | of_platform_populate(NULL, of_default_bus_match_table, NULL, NULL); | ||
33 | } | ||
34 | |||
35 | static const char *kzm9d_boards_compat_dt[] __initdata = { | ||
36 | "renesas,kzm9d-reference", | ||
37 | NULL, | ||
38 | }; | ||
39 | |||
40 | DT_MACHINE_START(KZM9D_DT, "kzm9d") | ||
41 | .smp = smp_ops(emev2_smp_ops), | ||
42 | .map_io = emev2_map_io, | ||
43 | .init_early = emev2_init_delay, | ||
44 | .init_machine = kzm9d_add_standard_devices, | ||
45 | .init_late = shmobile_init_late, | ||
46 | .dt_compat = kzm9d_boards_compat_dt, | ||
47 | MACHINE_END | ||
diff --git a/arch/arm/mach-shmobile/board-kzm9d.c b/arch/arm/mach-shmobile/board-kzm9d.c index 15900f1f8af7..30c2cc695b12 100644 --- a/arch/arm/mach-shmobile/board-kzm9d.c +++ b/arch/arm/mach-shmobile/board-kzm9d.c | |||
@@ -86,8 +86,6 @@ DT_MACHINE_START(KZM9D_DT, "kzm9d") | |||
86 | .smp = smp_ops(emev2_smp_ops), | 86 | .smp = smp_ops(emev2_smp_ops), |
87 | .map_io = emev2_map_io, | 87 | .map_io = emev2_map_io, |
88 | .init_early = emev2_init_delay, | 88 | .init_early = emev2_init_delay, |
89 | .nr_irqs = NR_IRQS_LEGACY, | ||
90 | .init_irq = emev2_init_irq, | ||
91 | .init_machine = kzm9d_add_standard_devices, | 89 | .init_machine = kzm9d_add_standard_devices, |
92 | .init_late = shmobile_init_late, | 90 | .init_late = shmobile_init_late, |
93 | .dt_compat = kzm9d_boards_compat_dt, | 91 | .dt_compat = kzm9d_boards_compat_dt, |
diff --git a/arch/arm/mach-shmobile/board-kzm9g-reference.c b/arch/arm/mach-shmobile/board-kzm9g-reference.c index 41092bb01ee5..a66a808db012 100644 --- a/arch/arm/mach-shmobile/board-kzm9g-reference.c +++ b/arch/arm/mach-shmobile/board-kzm9g-reference.c | |||
@@ -21,66 +21,19 @@ | |||
21 | */ | 21 | */ |
22 | 22 | ||
23 | #include <linux/delay.h> | 23 | #include <linux/delay.h> |
24 | #include <linux/gpio.h> | ||
25 | #include <linux/io.h> | 24 | #include <linux/io.h> |
26 | #include <linux/irq.h> | 25 | #include <linux/irq.h> |
27 | #include <linux/input.h> | 26 | #include <linux/input.h> |
28 | #include <linux/of_platform.h> | 27 | #include <linux/of_platform.h> |
29 | #include <linux/pinctrl/machine.h> | ||
30 | #include <linux/pinctrl/pinconf-generic.h> | ||
31 | #include <mach/sh73a0.h> | 28 | #include <mach/sh73a0.h> |
32 | #include <mach/common.h> | 29 | #include <mach/common.h> |
33 | #include <asm/hardware/cache-l2x0.h> | 30 | #include <asm/hardware/cache-l2x0.h> |
34 | #include <asm/mach-types.h> | 31 | #include <asm/mach-types.h> |
35 | #include <asm/mach/arch.h> | 32 | #include <asm/mach/arch.h> |
36 | 33 | ||
37 | static unsigned long pin_pullup_conf[] = { | ||
38 | PIN_CONF_PACKED(PIN_CONFIG_BIAS_PULL_UP, 0), | ||
39 | }; | ||
40 | |||
41 | static const struct pinctrl_map kzm_pinctrl_map[] = { | ||
42 | PIN_MAP_MUX_GROUP_DEFAULT("e6826000.i2c", "pfc-sh73a0", | ||
43 | "i2c3_1", "i2c3"), | ||
44 | /* MMCIF */ | ||
45 | PIN_MAP_MUX_GROUP_DEFAULT("e6bd0000.mmcif", "pfc-sh73a0", | ||
46 | "mmc0_data8_0", "mmc0"), | ||
47 | PIN_MAP_MUX_GROUP_DEFAULT("e6bd0000.mmcif", "pfc-sh73a0", | ||
48 | "mmc0_ctrl_0", "mmc0"), | ||
49 | PIN_MAP_CONFIGS_PIN_DEFAULT("e6bd0000.mmcif", "pfc-sh73a0", | ||
50 | "PORT279", pin_pullup_conf), | ||
51 | PIN_MAP_CONFIGS_GROUP_DEFAULT("e6bd0000.mmcif", "pfc-sh73a0", | ||
52 | "mmc0_data8_0", pin_pullup_conf), | ||
53 | /* SCIFA4 */ | ||
54 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-sh73a0", | ||
55 | "scifa4_data", "scifa4"), | ||
56 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-sh73a0", | ||
57 | "scifa4_ctrl", "scifa4"), | ||
58 | /* SDHI0 */ | ||
59 | PIN_MAP_MUX_GROUP_DEFAULT("ee100000.sdhi", "pfc-sh73a0", | ||
60 | "sdhi0_data4", "sdhi0"), | ||
61 | PIN_MAP_MUX_GROUP_DEFAULT("ee100000.sdhi", "pfc-sh73a0", | ||
62 | "sdhi0_ctrl", "sdhi0"), | ||
63 | PIN_MAP_MUX_GROUP_DEFAULT("ee100000.sdhi", "pfc-sh73a0", | ||
64 | "sdhi0_cd", "sdhi0"), | ||
65 | PIN_MAP_MUX_GROUP_DEFAULT("ee100000.sdhi", "pfc-sh73a0", | ||
66 | "sdhi0_wp", "sdhi0"), | ||
67 | /* SDHI2 */ | ||
68 | PIN_MAP_MUX_GROUP_DEFAULT("ee140000.sdhi", "pfc-sh73a0", | ||
69 | "sdhi2_data4", "sdhi2"), | ||
70 | PIN_MAP_MUX_GROUP_DEFAULT("ee140000.sdhi", "pfc-sh73a0", | ||
71 | "sdhi2_ctrl", "sdhi2"), | ||
72 | }; | ||
73 | |||
74 | static void __init kzm_init(void) | 34 | static void __init kzm_init(void) |
75 | { | 35 | { |
76 | sh73a0_add_standard_devices_dt(); | 36 | sh73a0_add_standard_devices_dt(); |
77 | pinctrl_register_mappings(kzm_pinctrl_map, ARRAY_SIZE(kzm_pinctrl_map)); | ||
78 | sh73a0_pinmux_init(); | ||
79 | |||
80 | /* enable SD */ | ||
81 | gpio_request_one(15, GPIOF_OUT_INIT_HIGH, NULL); /* power */ | ||
82 | |||
83 | gpio_request_one(14, GPIOF_OUT_INIT_HIGH, NULL); /* power */ | ||
84 | 37 | ||
85 | #ifdef CONFIG_CACHE_L2X0 | 38 | #ifdef CONFIG_CACHE_L2X0 |
86 | /* Early BRESP enable, Shared attribute override enable, 64K*8way */ | 39 | /* Early BRESP enable, Shared attribute override enable, 64K*8way */ |
diff --git a/arch/arm/mach-shmobile/board-marzen-reference.c b/arch/arm/mach-shmobile/board-marzen-reference.c index 480d882e42c7..3d1c439b4998 100644 --- a/arch/arm/mach-shmobile/board-marzen-reference.c +++ b/arch/arm/mach-shmobile/board-marzen-reference.c | |||
@@ -19,42 +19,14 @@ | |||
19 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA | 19 | * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
20 | */ | 20 | */ |
21 | 21 | ||
22 | #include <linux/pinctrl/machine.h> | ||
23 | #include <mach/r8a7779.h> | 22 | #include <mach/r8a7779.h> |
24 | #include <mach/common.h> | 23 | #include <mach/common.h> |
25 | #include <mach/irqs.h> | 24 | #include <mach/irqs.h> |
26 | #include <asm/irq.h> | 25 | #include <asm/irq.h> |
27 | #include <asm/mach/arch.h> | 26 | #include <asm/mach/arch.h> |
28 | 27 | ||
29 | static const struct pinctrl_map marzen_pinctrl_map[] = { | ||
30 | /* SCIF2 (CN18: DEBUG0) */ | ||
31 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.2", "pfc-r8a7779", | ||
32 | "scif2_data_c", "scif2"), | ||
33 | /* SCIF4 (CN19: DEBUG1) */ | ||
34 | PIN_MAP_MUX_GROUP_DEFAULT("sh-sci.4", "pfc-r8a7779", | ||
35 | "scif4_data", "scif4"), | ||
36 | /* SDHI0 */ | ||
37 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
38 | "sdhi0_data4", "sdhi0"), | ||
39 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
40 | "sdhi0_ctrl", "sdhi0"), | ||
41 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
42 | "sdhi0_cd", "sdhi0"), | ||
43 | PIN_MAP_MUX_GROUP_DEFAULT("sh_mobile_sdhi.0", "pfc-r8a7779", | ||
44 | "sdhi0_wp", "sdhi0"), | ||
45 | /* SMSC */ | ||
46 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x", "pfc-r8a7779", | ||
47 | "intc_irq1_b", "intc"), | ||
48 | PIN_MAP_MUX_GROUP_DEFAULT("smsc911x", "pfc-r8a7779", | ||
49 | "lbsc_ex_cs0", "lbsc"), | ||
50 | }; | ||
51 | |||
52 | static void __init marzen_init(void) | 28 | static void __init marzen_init(void) |
53 | { | 29 | { |
54 | pinctrl_register_mappings(marzen_pinctrl_map, | ||
55 | ARRAY_SIZE(marzen_pinctrl_map)); | ||
56 | r8a7779_pinmux_init(); | ||
57 | |||
58 | r8a7779_add_standard_devices_dt(); | 30 | r8a7779_add_standard_devices_dt(); |
59 | } | 31 | } |
60 | 32 | ||
diff --git a/arch/arm/mach-shmobile/include/mach/emev2.h b/arch/arm/mach-shmobile/include/mach/emev2.h index 3e0c0441c782..b0ab4b72770a 100644 --- a/arch/arm/mach-shmobile/include/mach/emev2.h +++ b/arch/arm/mach-shmobile/include/mach/emev2.h | |||
@@ -2,7 +2,6 @@ | |||
2 | #define __ASM_EMEV2_H__ | 2 | #define __ASM_EMEV2_H__ |
3 | 3 | ||
4 | extern void emev2_map_io(void); | 4 | extern void emev2_map_io(void); |
5 | extern void emev2_init_irq(void); | ||
6 | extern void emev2_init_delay(void); | 5 | extern void emev2_init_delay(void); |
7 | extern void emev2_add_standard_devices(void); | 6 | extern void emev2_add_standard_devices(void); |
8 | extern void emev2_clock_init(void); | 7 | extern void emev2_clock_init(void); |
diff --git a/arch/arm/mach-shmobile/setup-emev2.c b/arch/arm/mach-shmobile/setup-emev2.c index e4b46930db52..1553af8e04ff 100644 --- a/arch/arm/mach-shmobile/setup-emev2.c +++ b/arch/arm/mach-shmobile/setup-emev2.c | |||
@@ -38,13 +38,6 @@ | |||
38 | 38 | ||
39 | static struct map_desc emev2_io_desc[] __initdata = { | 39 | static struct map_desc emev2_io_desc[] __initdata = { |
40 | #ifdef CONFIG_SMP | 40 | #ifdef CONFIG_SMP |
41 | /* 128K entity map for 0xe0100000 (SMU) */ | ||
42 | { | ||
43 | .virtual = 0xe0100000, | ||
44 | .pfn = __phys_to_pfn(0xe0100000), | ||
45 | .length = SZ_128K, | ||
46 | .type = MT_DEVICE | ||
47 | }, | ||
48 | /* 2M mapping for SCU + L2 controller */ | 41 | /* 2M mapping for SCU + L2 controller */ |
49 | { | 42 | { |
50 | .virtual = 0xf0000000, | 43 | .virtual = 0xf0000000, |
@@ -182,7 +175,8 @@ static struct resource pmu_resources[] = { | |||
182 | 175 | ||
183 | void __init emev2_add_standard_devices(void) | 176 | void __init emev2_add_standard_devices(void) |
184 | { | 177 | { |
185 | emev2_clock_init(); | 178 | if (!IS_ENABLED(CONFIG_COMMON_CLK)) |
179 | emev2_clock_init(); | ||
186 | 180 | ||
187 | emev2_register_uart(0); | 181 | emev2_register_uart(0); |
188 | emev2_register_uart(1); | 182 | emev2_register_uart(1); |
@@ -202,20 +196,6 @@ void __init emev2_init_delay(void) | |||
202 | shmobile_setup_delay(533, 1, 3); /* Cortex-A9 @ 533MHz */ | 196 | shmobile_setup_delay(533, 1, 3); /* Cortex-A9 @ 533MHz */ |
203 | } | 197 | } |
204 | 198 | ||
205 | void __init emev2_init_irq(void) | ||
206 | { | ||
207 | void __iomem *gic_dist_base; | ||
208 | void __iomem *gic_cpu_base; | ||
209 | |||
210 | /* Static mappings, never released */ | ||
211 | gic_dist_base = ioremap(0xe0028000, PAGE_SIZE); | ||
212 | gic_cpu_base = ioremap(0xe0020000, PAGE_SIZE); | ||
213 | BUG_ON(!gic_dist_base || !gic_cpu_base); | ||
214 | |||
215 | /* Use GIC to handle interrupts */ | ||
216 | gic_init(0, 29, gic_dist_base, gic_cpu_base); | ||
217 | } | ||
218 | |||
219 | #ifdef CONFIG_USE_OF | 199 | #ifdef CONFIG_USE_OF |
220 | 200 | ||
221 | static const char *emev2_boards_compat_dt[] __initdata = { | 201 | static const char *emev2_boards_compat_dt[] __initdata = { |
@@ -225,8 +205,8 @@ static const char *emev2_boards_compat_dt[] __initdata = { | |||
225 | 205 | ||
226 | DT_MACHINE_START(EMEV2_DT, "Generic Emma Mobile EV2 (Flattened Device Tree)") | 206 | DT_MACHINE_START(EMEV2_DT, "Generic Emma Mobile EV2 (Flattened Device Tree)") |
227 | .smp = smp_ops(emev2_smp_ops), | 207 | .smp = smp_ops(emev2_smp_ops), |
208 | .map_io = emev2_map_io, | ||
228 | .init_early = emev2_init_delay, | 209 | .init_early = emev2_init_delay, |
229 | .nr_irqs = NR_IRQS_LEGACY, | ||
230 | .dt_compat = emev2_boards_compat_dt, | 210 | .dt_compat = emev2_boards_compat_dt, |
231 | MACHINE_END | 211 | MACHINE_END |
232 | 212 | ||
diff --git a/arch/arm/mach-shmobile/smp-emev2.c b/arch/arm/mach-shmobile/smp-emev2.c index 22a05a869d25..1fcd607d64ad 100644 --- a/arch/arm/mach-shmobile/smp-emev2.c +++ b/arch/arm/mach-shmobile/smp-emev2.c | |||
@@ -38,9 +38,12 @@ static int emev2_boot_secondary(unsigned int cpu, struct task_struct *idle) | |||
38 | 38 | ||
39 | static void __init emev2_smp_prepare_cpus(unsigned int max_cpus) | 39 | static void __init emev2_smp_prepare_cpus(unsigned int max_cpus) |
40 | { | 40 | { |
41 | /* setup EMEV2 specific SCU base, enable */ | ||
42 | shmobile_scu_base = ioremap(EMEV2_SCU_BASE, PAGE_SIZE); | ||
41 | scu_enable(shmobile_scu_base); | 43 | scu_enable(shmobile_scu_base); |
42 | 44 | ||
43 | /* Tell ROM loader about our vector (in headsmp-scu.S, headsmp.S) */ | 45 | /* Tell ROM loader about our vector (in headsmp-scu.S, headsmp.S) */ |
46 | emev2_clock_init(); /* need ioremapped SMU */ | ||
44 | emev2_set_boot_vector(__pa(shmobile_boot_vector)); | 47 | emev2_set_boot_vector(__pa(shmobile_boot_vector)); |
45 | shmobile_boot_fn = virt_to_phys(shmobile_boot_scu); | 48 | shmobile_boot_fn = virt_to_phys(shmobile_boot_scu); |
46 | shmobile_boot_arg = (unsigned long)shmobile_scu_base; | 49 | shmobile_boot_arg = (unsigned long)shmobile_scu_base; |
@@ -49,21 +52,7 @@ static void __init emev2_smp_prepare_cpus(unsigned int max_cpus) | |||
49 | scu_power_mode(shmobile_scu_base, SCU_PM_NORMAL); | 52 | scu_power_mode(shmobile_scu_base, SCU_PM_NORMAL); |
50 | } | 53 | } |
51 | 54 | ||
52 | static void __init emev2_smp_init_cpus(void) | ||
53 | { | ||
54 | unsigned int ncores; | ||
55 | |||
56 | /* setup EMEV2 specific SCU base */ | ||
57 | shmobile_scu_base = ioremap(EMEV2_SCU_BASE, PAGE_SIZE); | ||
58 | emev2_clock_init(); /* need ioremapped SMU */ | ||
59 | |||
60 | ncores = shmobile_scu_base ? scu_get_core_count(shmobile_scu_base) : 1; | ||
61 | |||
62 | shmobile_smp_init_cpus(ncores); | ||
63 | } | ||
64 | |||
65 | struct smp_operations emev2_smp_ops __initdata = { | 55 | struct smp_operations emev2_smp_ops __initdata = { |
66 | .smp_init_cpus = emev2_smp_init_cpus, | ||
67 | .smp_prepare_cpus = emev2_smp_prepare_cpus, | 56 | .smp_prepare_cpus = emev2_smp_prepare_cpus, |
68 | .smp_boot_secondary = emev2_boot_secondary, | 57 | .smp_boot_secondary = emev2_boot_secondary, |
69 | }; | 58 | }; |
diff --git a/arch/arm/mach-ux500/cpu-db8500.c b/arch/arm/mach-ux500/cpu-db8500.c index 12eee8167525..2061b6a2a766 100644 --- a/arch/arm/mach-ux500/cpu-db8500.c +++ b/arch/arm/mach-ux500/cpu-db8500.c | |||
@@ -223,10 +223,10 @@ static struct of_dev_auxdata u8500_auxdata_lookup[] __initdata = { | |||
223 | OF_DEV_AUXDATA("arm,pl011", 0x80121000, "uart1", NULL), | 223 | OF_DEV_AUXDATA("arm,pl011", 0x80121000, "uart1", NULL), |
224 | OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", NULL), | 224 | OF_DEV_AUXDATA("arm,pl011", 0x80007000, "uart2", NULL), |
225 | OF_DEV_AUXDATA("arm,pl022", 0x80002000, "ssp0", &ssp0_plat), | 225 | OF_DEV_AUXDATA("arm,pl022", 0x80002000, "ssp0", &ssp0_plat), |
226 | OF_DEV_AUXDATA("arm,pl18x", 0x80126000, "sdi0", &mop500_sdi0_data), | 226 | OF_DEV_AUXDATA("arm,pl18x", 0x80126000, "sdi0", NULL), |
227 | OF_DEV_AUXDATA("arm,pl18x", 0x80118000, "sdi1", &mop500_sdi1_data), | 227 | OF_DEV_AUXDATA("arm,pl18x", 0x80118000, "sdi1", NULL), |
228 | OF_DEV_AUXDATA("arm,pl18x", 0x80005000, "sdi2", &mop500_sdi2_data), | 228 | OF_DEV_AUXDATA("arm,pl18x", 0x80005000, "sdi2", NULL), |
229 | OF_DEV_AUXDATA("arm,pl18x", 0x80114000, "sdi4", &mop500_sdi4_data), | 229 | OF_DEV_AUXDATA("arm,pl18x", 0x80114000, "sdi4", NULL), |
230 | /* Requires clock name bindings. */ | 230 | /* Requires clock name bindings. */ |
231 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e000, "gpio.0", NULL), | 231 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e000, "gpio.0", NULL), |
232 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e080, "gpio.1", NULL), | 232 | OF_DEV_AUXDATA("st,nomadik-gpio", 0x8012e080, "gpio.1", NULL), |