ipq806x: update clk and cpufreq drivers
[openwrt/openwrt.git] / target / linux / ipq806x / patches-4.9 / 0026-dts-ipq4019-Add-support-for-IPQ4019-DK04-board.patch
1 From ec3e465ecf3f7dd26f2e22170e4c5f4b9979df5d Mon Sep 17 00:00:00 2001
2 From: Matthew McClintock <mmcclint@codeaurora.org>
3 Date: Mon, 21 Mar 2016 15:55:21 -0500
4 Subject: [PATCH 26/69] dts: ipq4019: Add support for IPQ4019 DK04 board
5
6 This is pretty similiar to a DK01 but has a bit more IO. Some notable
7 differences are listed below however they are not in the device tree yet
8 as we continue adding more support
9
10 - second serial port
11 - PCIe
12 - NAND
13 - SD/EMMC
14
15 Signed-off-by: Matthew McClintock <mmcclint@codeaurora.org>
16 ---
17 arch/arm/boot/dts/Makefile | 1 +
18 arch/arm/boot/dts/qcom-ipq4019-ap.dk01.1.dtsi | 12 +-
19 arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts | 21 +++
20 arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi | 163 ++++++++++++++++++++++++
21 4 files changed, 189 insertions(+), 8 deletions(-)
22 create mode 100644 arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts
23 create mode 100644 arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi
24
25 --- a/arch/arm/boot/dts/Makefile
26 +++ b/arch/arm/boot/dts/Makefile
27 @@ -617,6 +617,7 @@ dtb-$(CONFIG_ARCH_QCOM) += \
28 qcom-apq8084-ifc6540.dtb \
29 qcom-apq8084-mtp.dtb \
30 qcom-ipq4019-ap.dk01.1-c1.dtb \
31 + qcom-ipq4019-ap.dk04.1-c1.dtb \
32 qcom-ipq8064-ap148.dtb \
33 qcom-msm8660-surf.dtb \
34 qcom-msm8960-cdp.dtb \
35 --- /dev/null
36 +++ b/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1-c1.dts
37 @@ -0,0 +1,22 @@
38 +/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
39 + *
40 + * Permission to use, copy, modify, and/or distribute this software for any
41 + * purpose with or without fee is hereby granted, provided that the above
42 + * copyright notice and this permission notice appear in all copies.
43 + *
44 + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
45 + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
46 + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
47 + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
48 + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
49 + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
50 + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
51 + *
52 + */
53 +
54 +#include "qcom-ipq4019-ap.dk04.1.dtsi"
55 +
56 +/ {
57 + model = "Qualcomm Technologies, Inc. IPQ40xx/AP-DK04.1-C1";
58 + compatible = "qcom,ap-dk04.1-c1", "qcom,ipq4019";
59 +};
60 --- /dev/null
61 +++ b/arch/arm/boot/dts/qcom-ipq4019-ap.dk04.1.dtsi
62 @@ -0,0 +1,163 @@
63 +/* Copyright (c) 2015, The Linux Foundation. All rights reserved.
64 + *
65 + * Permission to use, copy, modify, and/or distribute this software for any
66 + * purpose with or without fee is hereby granted, provided that the above
67 + * copyright notice and this permission notice appear in all copies.
68 + *
69 + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
70 + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
71 + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
72 + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
73 + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
74 + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
75 + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
76 + *
77 + */
78 +
79 +#include "qcom-ipq4019.dtsi"
80 +
81 +/ {
82 + model = "Qualcomm Technologies, Inc. IPQ4019/AP-DK04.1";
83 + compatible = "qcom,ipq4019";
84 +
85 + clocks {
86 + xo: xo {
87 + compatible = "fixed-clock";
88 + clock-frequency = <48000000>;
89 + #clock-cells = <0>;
90 + };
91 + };
92 +
93 + soc {
94 + timer {
95 + compatible = "arm,armv7-timer";
96 + interrupts = <1 2 0xf08>,
97 + <1 3 0xf08>,
98 + <1 4 0xf08>,
99 + <1 1 0xf08>;
100 + clock-frequency = <48000000>;
101 + };
102 +
103 + pinctrl@0x01000000 {
104 + serial_0_pins: serial_pinmux {
105 + mux {
106 + pins = "gpio16", "gpio17";
107 + function = "blsp_uart0";
108 + bias-disable;
109 + };
110 + };
111 +
112 + serial_1_pins: serial1_pinmux {
113 + mux {
114 + pins = "gpio8", "gpio9";
115 + function = "blsp_uart1";
116 + bias-disable;
117 + };
118 + };
119 +
120 + spi_0_pins: spi_0_pinmux {
121 + pinmux {
122 + function = "blsp_spi0";
123 + pins = "gpio13", "gpio14", "gpio15";
124 + };
125 + pinmux_cs {
126 + function = "gpio";
127 + pins = "gpio12";
128 + };
129 + pinconf {
130 + pins = "gpio13", "gpio14", "gpio15";
131 + drive-strength = <12>;
132 + bias-disable;
133 + };
134 + pinconf_cs {
135 + pins = "gpio12";
136 + drive-strength = <2>;
137 + bias-disable;
138 + output-high;
139 + };
140 + };
141 +
142 + i2c_0_pins: i2c_0_pinmux {
143 + pinmux {
144 + function = "blsp_i2c0";
145 + pins = "gpio10", "gpio11";
146 + };
147 + pinconf {
148 + pins = "gpio10", "gpio11";
149 + drive-strength = <16>;
150 + bias-disable;
151 + };
152 + };
153 + };
154 +
155 + blsp_dma: dma@7884000 {
156 + status = "ok";
157 + };
158 +
159 + spi_0: spi@78b5000 {
160 + pinctrl-0 = <&spi_0_pins>;
161 + pinctrl-names = "default";
162 + status = "ok";
163 + cs-gpios = <&tlmm 12 0>;
164 +
165 + mx25l25635e@0 {
166 + #address-cells = <1>;
167 + #size-cells = <1>;
168 + reg = <0>;
169 + compatible = "mx25l25635e";
170 + spi-max-frequency = <24000000>;
171 + };
172 + };
173 +
174 + i2c_0: i2c@78b7000 { /* BLSP1 QUP2 */
175 + pinctrl-0 = <&i2c_0_pins>;
176 + pinctrl-names = "default";
177 +
178 + status = "ok";
179 + };
180 +
181 + serial@78af000 {
182 + pinctrl-0 = <&serial_0_pins>;
183 + pinctrl-names = "default";
184 + status = "ok";
185 + };
186 +
187 + serial@78b0000 {
188 + pinctrl-0 = <&serial_1_pins>;
189 + pinctrl-names = "default";
190 + status = "ok";
191 + };
192 +
193 + usb3_ss_phy: ssphy@9a000 {
194 + status = "ok";
195 + };
196 +
197 + usb3_hs_phy: hsphy@a6000 {
198 + status = "ok";
199 + };
200 +
201 + usb3: usb3@8af8800 {
202 + status = "ok";
203 + };
204 +
205 + usb2_hs_phy: hsphy@a8000 {
206 + status = "ok";
207 + };
208 +
209 + usb2: usb2@60f8800 {
210 + status = "ok";
211 + };
212 +
213 + cryptobam: dma@8e04000 {
214 + status = "ok";
215 + };
216 +
217 + crypto@8e3a000 {
218 + status = "ok";
219 + };
220 +
221 + watchdog@b017000 {
222 + status = "ok";
223 + };
224 + };
225 +};