aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexander Shiyan <shc_work@mail.ru>2016-06-04 03:10:04 -0400
committerArnd Bergmann <arnd@arndb.de>2016-07-06 11:57:40 -0400
commit46e6b3aa65c86bf204deb5ff590e186639009427 (patch)
treef3e72f26e9b2b593d14f3e403a3beb8300bf9902
parent8fe9c8b750ca294882b163100817f97866990481 (diff)
ARM: dts: clps711x: Add DT Cirrus Logic EDB7211 Development board
This adds the Cirrus Logic EP7209,EP7211 DT templates and support for EDB7211 Development board. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r--arch/arm/boot/dts/Makefile2
-rw-r--r--arch/arm/boot/dts/ep7209.dtsi191
-rw-r--r--arch/arm/boot/dts/ep7211-edb7211.dts100
-rw-r--r--arch/arm/boot/dts/ep7211.dtsi12
4 files changed, 305 insertions, 0 deletions
diff --git a/arch/arm/boot/dts/Makefile b/arch/arm/boot/dts/Makefile
index 7bbda1ea314f..e8ce0cb859ee 100644
--- a/arch/arm/boot/dts/Makefile
+++ b/arch/arm/boot/dts/Makefile
@@ -109,6 +109,8 @@ dtb-$(CONFIG_ARCH_BERLIN) += \
109 berlin2q-marvell-dmp.dtb 109 berlin2q-marvell-dmp.dtb
110dtb-$(CONFIG_ARCH_BRCMSTB) += \ 110dtb-$(CONFIG_ARCH_BRCMSTB) += \
111 bcm7445-bcm97445svmb.dtb 111 bcm7445-bcm97445svmb.dtb
112dtb-$(CONFIG_ARCH_CLPS711X) += \
113 ep7211-edb7211.dtb
112dtb-$(CONFIG_ARCH_DAVINCI) += \ 114dtb-$(CONFIG_ARCH_DAVINCI) += \
113 da850-enbw-cmc.dtb \ 115 da850-enbw-cmc.dtb \
114 da850-evm.dtb 116 da850-evm.dtb
diff --git a/arch/arm/boot/dts/ep7209.dtsi b/arch/arm/boot/dts/ep7209.dtsi
new file mode 100644
index 000000000000..aaf1261d2ee4
--- /dev/null
+++ b/arch/arm/boot/dts/ep7209.dtsi
@@ -0,0 +1,191 @@
1/*
2 * The code contained herein is licensed under the GNU General Public
3 * License. You may obtain a copy of the GNU General Public License
4 * Version 2 or later at the following locations:
5 */
6
7/dts-v1/;
8
9#include "skeleton.dtsi"
10
11#include <dt-bindings/clock/clps711x-clock.h>
12
13/ {
14 model = "Cirrus Logic EP7209";
15 compatible = "cirrus,ep7209";
16
17 aliases {
18 gpio0 = &porta;
19 gpio1 = &portb;
20 gpio3 = &portd;
21 gpio4 = &porte;
22 serial0 = &uart1;
23 serial1 = &uart2;
24 spi0 = &spi;
25 timer0 = &timer1;
26 timer1 = &timer2;
27 };
28
29 cpus {
30 #address-cells = <0>;
31 #size-cells = <0>;
32
33 cpu {
34 device_type = "cpu";
35 compatible = "arm,arm720t";
36 };
37 };
38
39 soc {
40 #address-cells = <1>;
41 #size-cells = <1>;
42 compatible = "simple-bus";
43 interrupt-parent = <&intc>;
44 ranges;
45
46 clks: clks@80000000 {
47 #clock-cells = <1>;
48 compatible = "cirrus,ep7209-clk";
49 reg = <0x80000000 0xc000>;
50 startup-frequency = <73728000>;
51 };
52
53 intc: intc@80000000 {
54 compatible = "cirrus,ep7209-intc";
55 reg = <0x80000000 0x4000>;
56 interrupt-controller;
57 #interrupt-cells = <1>;
58 };
59
60 porta: gpio@80000000 {
61 compatible = "cirrus,ep7209-gpio";
62 reg = <0x80000000 0x1 0x80000040 0x1>;
63 gpio-controller;
64 #gpio-cells = <2>;
65 };
66
67 portb: gpio@80000001 {
68 compatible = "cirrus,ep7209-gpio";
69 reg = <0x80000001 0x1 0x80000041 0x1>;
70 gpio-controller;
71 #gpio-cells = <2>;
72 };
73
74 portd: gpio@80000003 {
75 compatible = "cirrus,ep7209-gpio";
76 reg = <0x80000003 0x1 0x80000043 0x1>;
77 gpio-controller;
78 #gpio-cells = <2>;
79 };
80
81 porte: gpio@80000083 {
82 compatible = "cirrus,ep7209-gpio";
83 reg = <0x80000083 0x1 0x800000c3 0x1>;
84 gpio-controller;
85 #gpio-cells = <2>;
86 };
87
88 syscon1: syscon@80000100 {
89 compatible = "cirrus,ep7209-syscon1", "syscon";
90 reg = <0x80000100 0x80>;
91 };
92
93 bus: bus@80000180 {
94 #address-cells = <2>;
95 #size-cells = <1>;
96 compatible = "cirrus,ep7209-bus", "simple-bus";
97 clocks = <&clks CLPS711X_CLK_BUS>;
98 reg = <0x80000180 0x80>;
99 ranges = <
100 0 0 0x00000000 0x10000000
101 1 0 0x10000000 0x10000000
102 2 0 0x20000000 0x10000000
103 3 0 0x30000000 0x10000000
104 4 0 0x40000000 0x10000000
105 5 0 0x50000000 0x10000000
106 6 0 0x60000000 0x0000c000
107 7 0 0x70000000 0x00000080
108 >;
109 };
110
111 fb: fb@800002c0 {
112 compatible = "cirrus,ep7209-fb";
113 reg = <0x800002c0 0xd44>, <0x60000000 0xc000>;
114 clocks = <&clks CLPS711X_CLK_BUS>;
115 status = "disabled";
116 };
117
118 timer1: timer@80000300 {
119 compatible = "cirrus,ep7209-timer";
120 reg = <0x80000300 0x4>;
121 clocks = <&clks CLPS711X_CLK_TIMER1>;
122 interrupts = <8>;
123 };
124
125 timer2: timer@80000340 {
126 compatible = "cirrus,ep7209-timer";
127 reg = <0x80000340 0x4>;
128 clocks = <&clks CLPS711X_CLK_TIMER2>;
129 interrupts = <9>;
130 };
131
132 pwm: pwm@80000400 {
133 compatible = "cirrus,ep7209-pwm";
134 reg = <0x80000400 0x4>;
135 clocks = <&clks CLPS711X_CLK_PWM>;
136 #pwm-cells = <1>;
137 };
138
139 uart1: uart@80000480 {
140 compatible = "cirrus,ep7209-uart";
141 reg = <0x80000480 0x80>;
142 interrupts = <12 13>;
143 clocks = <&clks CLPS711X_CLK_UART>;
144 syscon = <&syscon1>;
145 };
146
147 spi: spi@80000500 {
148 #address-cells = <1>;
149 #size-cells = <0>;
150 compatible = "cirrus,ep7209-spi";
151 reg = <0x80000500 0x4>;
152 interrupts = <15>;
153 clocks = <&clks CLPS711X_CLK_SPI>;
154 status = "disabled";
155 };
156
157 syscon2: syscon@80001100 {
158 compatible = "cirrus,ep7209-syscon2", "syscon";
159 reg = <0x80001100 0x80>;
160 };
161
162 uart2: uart@80001480 {
163 compatible = "cirrus,ep7209-uart";
164 reg = <0x80001480 0x80>;
165 interrupts = <28 29>;
166 clocks = <&clks CLPS711X_CLK_UART>;
167 syscon = <&syscon2>;
168 };
169
170 dai: dai@80002000 {
171 #sound-dai-cells = <0>;
172 compatible = "cirrus,ep7209-dai";
173 reg = <0x80002000 0x604>;
174 clocks = <&clks CLPS711X_CLK_PLL>;
175 clock-names = "pll";
176 interrupts = <32>;
177 status = "disabled";
178 };
179
180 syscon3: syscon@80002200 {
181 compatible = "cirrus,ep7209-syscon3", "syscon";
182 reg = <0x80002200 0x40>;
183 };
184 };
185
186 mctrl: mctrl {
187 compatible = "cirrus,ep7209-mctrl-gpio";
188 gpio-controller;
189 #gpio-cells = <2>;
190 };
191};
diff --git a/arch/arm/boot/dts/ep7211-edb7211.dts b/arch/arm/boot/dts/ep7211-edb7211.dts
new file mode 100644
index 000000000000..9a134ed271eb
--- /dev/null
+++ b/arch/arm/boot/dts/ep7211-edb7211.dts
@@ -0,0 +1,100 @@
1/*
2 * The code contained herein is licensed under the GNU General Public
3 * License. You may obtain a copy of the GNU General Public License
4 * Version 2 or later at the following locations:
5 */
6
7#include "ep7211.dtsi"
8#include <dt-bindings/gpio/gpio.h>
9
10/ {
11 model = "Cirrus Logic EP7211 Development Board";
12 compatible = "cirrus,edb7211", "cirrus,ep7211", "cirrus,ep7209";
13
14 memory {
15 reg = <0xc0000000 0x02000000>;
16 };
17
18 backlight: backlight {
19 compatible = "pwm-backlight";
20 pwms = <&pwm 0>;
21 brightness-levels = <
22 0x0 0x1 0x2 0x3 0x4 0x5 0x6 0x7
23 0x8 0x9 0xa 0xb 0xc 0xd 0xe 0xf
24 >;
25 default-brightness-level = <0x0>;
26 power-supply = <&blen>;
27 };
28
29 display: display {
30 model = "320x240x4";
31 native-mode = <&timing0>;
32 bits-per-pixel = <4>;
33 ac-prescale = <17>;
34
35 display-timings {
36 timing0: 320x240 {
37 hactive = <320>;
38 hback-porch = <0>;
39 hfront-porch = <0>;
40 hsync-len = <0>;
41 vactive = <240>;
42 vback-porch = <0>;
43 vfront-porch = <0>;
44 vsync-len = <0>;
45 clock-frequency = <6500000>;
46 };
47 };
48 };
49
50 i2c: i2c {
51 compatible = "i2c-gpio";
52 gpios = <&portd 4 GPIO_ACTIVE_HIGH>,
53 <&portd 5 GPIO_ACTIVE_HIGH>;
54 i2c-gpio,delay-us = <2>;
55 i2c-gpio,scl-output-only;
56 #address-cells = <1>;
57 #size-cells = <0>;
58 };
59
60 lcddc: lcddc {
61 compatible = "regulator-fixed";
62 regulator-name = "BACKLIGHT ENABLE";
63 regulator-min-microvolt = <3300000>;
64 regulator-max-microvolt = <3300000>;
65 gpio = <&portd 1 GPIO_ACTIVE_HIGH>;
66 };
67
68 blen: blen {
69 compatible = "regulator-fixed";
70 regulator-name = "BACKLIGHT ENABLE";
71 regulator-min-microvolt = <3300000>;
72 regulator-max-microvolt = <3300000>;
73 gpio = <&portd 3 GPIO_ACTIVE_HIGH>;
74 };
75};
76
77&bus {
78 flash: nor@00000000 {
79 compatible = "cfi-flash";
80 reg = <0 0x00000000 0x02000000>;
81 bank-width = <2>;
82 #address-cells = <1>;
83 #size-cells = <1>;
84 };
85};
86
87&fb {
88 display = <&display>;
89 lcd-supply = <&lcddc>;
90 status = "okay";
91};
92
93&portd {
94 lcden {
95 gpio-hog;
96 gpios = <2 GPIO_ACTIVE_HIGH>;
97 output-high;
98 line-name = "LCD ENABLE";
99 };
100};
diff --git a/arch/arm/boot/dts/ep7211.dtsi b/arch/arm/boot/dts/ep7211.dtsi
new file mode 100644
index 000000000000..e438f6db0673
--- /dev/null
+++ b/arch/arm/boot/dts/ep7211.dtsi
@@ -0,0 +1,12 @@
1/*
2 * The code contained herein is licensed under the GNU General Public
3 * License. You may obtain a copy of the GNU General Public License
4 * Version 2 or later at the following locations:
5 */
6
7#include "ep7209.dtsi"
8
9/ {
10 model = "Cirrus Logic EP7211";
11 compatible = "cirrus,ep7211", "cirrus,ep7209";
12};