summaryrefslogtreecommitdiffstats
path: root/recipes-bsp/u-boot/u-boot-2019.07/0002-dts-Create-a-dtsi-for-BCM2835-6-7-specific-configura.patch
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-bsp/u-boot/u-boot-2019.07/0002-dts-Create-a-dtsi-for-BCM2835-6-7-specific-configura.patch')
-rw-r--r--recipes-bsp/u-boot/u-boot-2019.07/0002-dts-Create-a-dtsi-for-BCM2835-6-7-specific-configura.patch209
1 files changed, 209 insertions, 0 deletions
diff --git a/recipes-bsp/u-boot/u-boot-2019.07/0002-dts-Create-a-dtsi-for-BCM2835-6-7-specific-configura.patch b/recipes-bsp/u-boot/u-boot-2019.07/0002-dts-Create-a-dtsi-for-BCM2835-6-7-specific-configura.patch
new file mode 100644
index 0000000..eda8b56
--- /dev/null
+++ b/recipes-bsp/u-boot/u-boot-2019.07/0002-dts-Create-a-dtsi-for-BCM2835-6-7-specific-configura.patch
@@ -0,0 +1,209 @@
1From 9ef5ac66aaa8e52d1ed3a6fd6390d7d8d91a537d Mon Sep 17 00:00:00 2001
2From: Andrei Gherzan <andrei@balena.io>
3Date: Wed, 17 Jul 2019 15:32:34 +0100
4Subject: [PATCH 02/12] dts: Create a dtsi for BCM2835/6/7 specific
5 configuration
6
7This follows a similar change in kernel[1]. The change moves
8configuration that was not applicable for all bcm2835/6/7/8 out of
9bcm283x.dtsi. The new file is bcm2835-common.dtsi and contains
10conifguration that is common for bcm2835/6/7 (not bcm2838).
11
12[1] https://github.com/raspberrypi/linux/commit/769a7330aa5bebcc98b1ff12ecb767db4e5c644d#diff-5979fba23a5bab2cf66dde09db872dfc
13
14Signed-off-by: Andrei Gherzan <andrei@balena.io>
15Upstream-status: Pending
16---
17 arch/arm/dts/bcm2835-common.dtsi | 53 ++++++++++++++++++++++++++++++++
18 arch/arm/dts/bcm2835.dtsi | 1 +
19 arch/arm/dts/bcm2836.dtsi | 1 +
20 arch/arm/dts/bcm2837.dtsi | 1 +
21 arch/arm/dts/bcm283x.dtsi | 45 +--------------------------
22 5 files changed, 57 insertions(+), 44 deletions(-)
23 create mode 100644 arch/arm/dts/bcm2835-common.dtsi
24
25diff --git a/arch/arm/dts/bcm2835-common.dtsi b/arch/arm/dts/bcm2835-common.dtsi
26new file mode 100644
27index 0000000000..17771730a3
28--- /dev/null
29+++ b/arch/arm/dts/bcm2835-common.dtsi
30@@ -0,0 +1,53 @@
31+// SPDX-License-Identifier: GPL-2.0
32+
33+/* This include file covers the common peripherals and configuration between
34+ * bcm2835, bcm2836 and bcm2837 implementations.
35+ */
36+
37+/ {
38+ soc {
39+ timer@7e003000 {
40+ compatible = "brcm,bcm2835-system-timer";
41+ reg = <0x7e003000 0x1000>;
42+ interrupts = <1 0>, <1 1>, <1 2>, <1 3>;
43+ /* This could be a reference to BCM2835_CLOCK_TIMER,
44+ * but we don't have the driver using the common clock
45+ * support yet.
46+ */
47+ clock-frequency = <1000000>;
48+ };
49+
50+ intc: interrupt-controller@7e00b200 {
51+ compatible = "brcm,bcm2835-armctrl-ic";
52+ reg = <0x7e00b200 0x200>;
53+ interrupt-controller;
54+ #interrupt-cells = <2>;
55+ };
56+
57+ thermal: thermal@7e212000 {
58+ compatible = "brcm,bcm2835-thermal";
59+ reg = <0x7e212000 0x8>;
60+ clocks = <&clocks BCM2835_CLOCK_TSENS>;
61+ #thermal-sensor-cells = <0>;
62+ status = "disabled";
63+ };
64+
65+ v3d: v3d@7ec00000 {
66+ compatible = "brcm,bcm2835-v3d";
67+ reg = <0x7ec00000 0x1000>;
68+ interrupts = <1 10>;
69+ };
70+ };
71+};
72+
73+&gpio {
74+ i2c_slave_gpio18: i2c_slave_gpio18 {
75+ brcm,pins = <18 19 20 21>;
76+ brcm,function = <BCM2835_FSEL_ALT3>;
77+ };
78+
79+ jtag_gpio4: jtag_gpio4 {
80+ brcm,pins = <4 5 6 12 13>;
81+ brcm,function = <BCM2835_FSEL_ALT5>;
82+ };
83+};
84diff --git a/arch/arm/dts/bcm2835.dtsi b/arch/arm/dts/bcm2835.dtsi
85index a5c3824c80..53bf4579cc 100644
86--- a/arch/arm/dts/bcm2835.dtsi
87+++ b/arch/arm/dts/bcm2835.dtsi
88@@ -1,5 +1,6 @@
89 // SPDX-License-Identifier: GPL-2.0
90 #include "bcm283x.dtsi"
91+#include "bcm2835-common.dtsi"
92
93 / {
94 compatible = "brcm,bcm2835";
95diff --git a/arch/arm/dts/bcm2836.dtsi b/arch/arm/dts/bcm2836.dtsi
96index c933e84138..82d6c4662a 100644
97--- a/arch/arm/dts/bcm2836.dtsi
98+++ b/arch/arm/dts/bcm2836.dtsi
99@@ -1,5 +1,6 @@
100 // SPDX-License-Identifier: GPL-2.0
101 #include "bcm283x.dtsi"
102+#include "bcm2835-common.dtsi"
103
104 / {
105 compatible = "brcm,bcm2836";
106diff --git a/arch/arm/dts/bcm2837.dtsi b/arch/arm/dts/bcm2837.dtsi
107index beb6c502da..9e95fee78e 100644
108--- a/arch/arm/dts/bcm2837.dtsi
109+++ b/arch/arm/dts/bcm2837.dtsi
110@@ -1,4 +1,5 @@
111 #include "bcm283x.dtsi"
112+#include "bcm2835-common.dtsi"
113
114 / {
115 compatible = "brcm,bcm2837";
116diff --git a/arch/arm/dts/bcm283x.dtsi b/arch/arm/dts/bcm283x.dtsi
117index 9777644c6c..a024727e4d 100644
118--- a/arch/arm/dts/bcm283x.dtsi
119+++ b/arch/arm/dts/bcm283x.dtsi
120@@ -56,17 +56,6 @@
121 #address-cells = <1>;
122 #size-cells = <1>;
123
124- timer@7e003000 {
125- compatible = "brcm,bcm2835-system-timer";
126- reg = <0x7e003000 0x1000>;
127- interrupts = <1 0>, <1 1>, <1 2>, <1 3>;
128- /* This could be a reference to BCM2835_CLOCK_TIMER,
129- * but we don't have the driver using the common clock
130- * support yet.
131- */
132- clock-frequency = <1000000>;
133- };
134-
135 txp@7e004000 {
136 compatible = "brcm,bcm2835-txp";
137 reg = <0x7e004000 0x20>;
138@@ -114,13 +103,6 @@
139 brcm,dma-channel-mask = <0x7f35>;
140 };
141
142- intc: interrupt-controller@7e00b200 {
143- compatible = "brcm,bcm2835-armctrl-ic";
144- reg = <0x7e00b200 0x200>;
145- interrupt-controller;
146- #interrupt-cells = <2>;
147- };
148-
149 pm: watchdog@7e100000 {
150 compatible = "brcm,bcm2835-pm", "brcm,bcm2835-pm-wdt";
151 #power-domain-cells = <1>;
152@@ -184,8 +166,7 @@
153 interrupt-controller;
154 #interrupt-cells = <2>;
155
156- /* Defines pin muxing groups according to
157- * BCM2835-ARM-Peripherals.pdf page 102.
158+ /* Defines common pin muxing groups
159 *
160 * While each pin can have its mux selected
161 * for various functions individually, some
162@@ -263,15 +244,6 @@
163 brcm,pins = <44 45>;
164 brcm,function = <BCM2835_FSEL_ALT2>;
165 };
166- i2c_slave_gpio18: i2c_slave_gpio18 {
167- brcm,pins = <18 19 20 21>;
168- brcm,function = <BCM2835_FSEL_ALT3>;
169- };
170-
171- jtag_gpio4: jtag_gpio4 {
172- brcm,pins = <4 5 6 12 13>;
173- brcm,function = <BCM2835_FSEL_ALT5>;
174- };
175 jtag_gpio22: jtag_gpio22 {
176 brcm,pins = <22 23 24 25 26 27>;
177 brcm,function = <BCM2835_FSEL_ALT4>;
178@@ -488,14 +460,6 @@
179
180 };
181
182- thermal: thermal@7e212000 {
183- compatible = "brcm,bcm2835-thermal";
184- reg = <0x7e212000 0x8>;
185- clocks = <&clocks BCM2835_CLOCK_TSENS>;
186- #thermal-sensor-cells = <0>;
187- status = "disabled";
188- };
189-
190 aux: aux@7e215000 {
191 compatible = "brcm,bcm2835-aux";
192 #clock-cells = <1>;
193@@ -635,13 +599,6 @@
194 phy-names = "usb2-phy";
195 };
196
197- v3d: v3d@7ec00000 {
198- compatible = "brcm,bcm2835-v3d";
199- reg = <0x7ec00000 0x1000>;
200- interrupts = <1 10>;
201- power-domains = <&pm BCM2835_POWER_DOMAIN_GRAFX_V3D>;
202- };
203-
204 vc4: gpu {
205 compatible = "brcm,bcm2835-vc4";
206 };
207--
2082.22.0
209