Skip to content

Commit 6e8485a

Browse files
committed
BCM270X_DT: Use bcm283x.dtsi, bcm2835.dtsi and bcm2836.dtsi
The mainline Device Tree files are quite close to downstream now. Let's use bcm283x.dtsi, bcm2835.dtsi and bcm2836.dtsi as base files for our dts files. Mainline dts files are based on these files: bcm2835-rpi.dtsi bcm2835.dtsi bcm2836.dtsi bcm283x.dtsi Current downstream are based on these: bcm2708.dtsi bcm2709.dtsi bcm2710.dtsi bcm2708_common.dtsi This patch introduces this dependency: bcm2708.dtsi bcm2709.dtsi bcm2708-rpi.dtsi bcm270x.dtsi bcm2835.dtsi bcm2836.dtsi bcm283x.dtsi And: bcm2710.dtsi bcm2708-rpi.dtsi bcm270x.dtsi bcm283x.dtsi bcm270x.dtsi contains the downstream bcm283x.dtsi diff. bcm2708-rpi.dtsi is the downstream version of bcm2835-rpi.dtsi. Other changes: - The led node has moved from /soc/leds to /leds. This is not a problem since the label is used to reference it. - The clk_osc reg property changes from 6 to 3. - The gpu nodes has their interrupt property set in the base file. - the clocks label does not point to the /clocks node anymore, but points to the cprman node. This is not a problem since the overlays that use the clock node refer to it directly: target-path = "/clocks"; - some nodes now have 2 labels since mainline and downstream differs in this respect: cprman/clocks, spi0/spi, gpu/vc4. - some nodes doesn't have an explicit status = "okay" since they're not disabled in the base file: watchdog and random. - gpiomem doesn't need an explicit status = "okay". - bcm2708-rpi-cm.dts got the hpd-gpios property from bcm2708_common.dtsi, it's now set directly in that file. - bcm2709-rpi-2-b.dts has the timer node moved from /soc/timer to /timer. - Removed clock-frequency property on the bcm{2709,2710}.dtsi timer nodes. Signed-off-by: Noralf Trønnes <[email protected]>
1 parent 5d9847d commit 6e8485a

12 files changed

+272
-587
lines changed

arch/arm/boot/dts/bcm2708-rpi-b-plus.dts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -98,15 +98,10 @@
9898
};
9999

100100
&i2s {
101-
#sound-dai-cells = <0>;
102101
pinctrl-names = "default";
103102
pinctrl-0 = <&i2s_pins>;
104103
};
105104

106-
&random {
107-
status = "okay";
108-
};
109-
110105
&leds {
111106
act_led: act {
112107
label = "led0";

arch/arm/boot/dts/bcm2708-rpi-b.dts

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -98,15 +98,10 @@
9898
};
9999

100100
&i2s {
101-
#sound-dai-cells = <0>;
102101
pinctrl-names = "default";
103102
pinctrl-0 = <&i2s_pins>;
104103
};
105104

106-
&random {
107-
status = "okay";
108-
};
109-
110105
&leds {
111106
act_led: act {
112107
label = "led0";

arch/arm/boot/dts/bcm2708-rpi-cm.dts

100755100644
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -81,13 +81,12 @@
8181
};
8282

8383
&i2s {
84-
#sound-dai-cells = <0>;
8584
pinctrl-names = "default";
8685
pinctrl-0 = <&i2s_pins>;
8786
};
8887

89-
&random {
90-
status = "okay";
88+
&hdmi {
89+
hpd-gpios = <&gpio 46 GPIO_ACTIVE_HIGH>;
9190
};
9291

9392
/ {

arch/arm/boot/dts/bcm2708-rpi.dtsi

Lines changed: 105 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,105 @@
1+
/* Downstream version of bcm2835-rpi.dtsi */
2+
3+
#include <dt-bindings/power/raspberrypi-power.h>
4+
5+
/ {
6+
memory {
7+
device_type = "memory";
8+
reg = <0x0 0x0>;
9+
};
10+
11+
aliases {
12+
audio = &audio;
13+
aux = &aux;
14+
sound = &sound;
15+
soc = &soc;
16+
dma = &dma;
17+
intc = &intc;
18+
watchdog = &watchdog;
19+
random = &random;
20+
mailbox = &mailbox;
21+
gpio = &gpio;
22+
uart0 = &uart0;
23+
sdhost = &sdhost;
24+
i2s = &i2s;
25+
spi0 = &spi0;
26+
i2c0 = &i2c0;
27+
uart1 = &uart1;
28+
spi1 = &spi1;
29+
spi2 = &spi2;
30+
mmc = &mmc;
31+
i2c1 = &i2c1;
32+
i2c2 = &i2c2;
33+
usb = &usb;
34+
leds = &leds;
35+
fb = &fb;
36+
vchiq = &vchiq;
37+
thermal = &thermal;
38+
};
39+
40+
leds: leds {
41+
compatible = "gpio-leds";
42+
};
43+
44+
soc {
45+
gpiomem {
46+
compatible = "brcm,bcm2835-gpiomem";
47+
reg = <0x7e200000 0x1000>;
48+
};
49+
50+
firmware: firmware {
51+
compatible = "raspberrypi,bcm2835-firmware";
52+
mboxes = <&mailbox>;
53+
};
54+
55+
power: power {
56+
compatible = "raspberrypi,bcm2835-power";
57+
firmware = <&firmware>;
58+
#power-domain-cells = <1>;
59+
};
60+
61+
fb: fb {
62+
compatible = "brcm,bcm2708-fb";
63+
firmware = <&firmware>;
64+
status = "disabled";
65+
};
66+
67+
vchiq: vchiq {
68+
compatible = "brcm,bcm2835-vchiq";
69+
reg = <0x7e00b840 0xf>;
70+
interrupts = <0 2>;
71+
cache-line-size = <32>;
72+
firmware = <&firmware>;
73+
};
74+
75+
thermal: thermal {
76+
compatible = "brcm,bcm2835-thermal";
77+
firmware = <&firmware>;
78+
};
79+
80+
/* Onboard audio */
81+
audio: audio {
82+
compatible = "brcm,bcm2835-audio";
83+
brcm,pwm-channels = <8>;
84+
status = "disabled";
85+
};
86+
87+
/* External sound card */
88+
sound: sound {
89+
status = "disabled";
90+
};
91+
92+
};
93+
94+
__overrides__ {
95+
cache_line_size = <&vchiq>, "cache-line-size:0";
96+
};
97+
};
98+
99+
&dma {
100+
brcm,dma-channel-mask = <0x7f34>;
101+
};
102+
103+
&hdmi {
104+
power-domains = <&power RPI_POWER_DOMAIN_HDMI>;
105+
};

arch/arm/boot/dts/bcm2708.dtsi

Lines changed: 5 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,22 @@
1-
#include "bcm2708_common.dtsi"
1+
#include "bcm2835.dtsi"
2+
#include "bcm270x.dtsi"
3+
#include "bcm2708-rpi.dtsi"
24

35
/ {
46
compatible = "brcm,bcm2708";
57
model = "BCM2708";
68

7-
chosen {
8-
/* No padding required - the boot loader can do that. */
9-
bootargs = "";
10-
};
11-
129
soc {
1310
ranges = <0x7e000000 0x20000000 0x01000000>;
11+
/delete-property/ dma-ranges;
1412

1513
timer@7e003000 {
1614
compatible = "brcm,bcm2835-system-timer";
1715
reg = <0x7e003000 0x1000>;
1816
interrupts = <1 0>, <1 1>, <1 2>, <1 3>;
1917
clock-frequency = <1000000>;
2018
};
21-
22-
arm-pmu {
23-
compatible = "arm,arm1176-pmu";
24-
};
25-
26-
gpiomem {
27-
compatible = "brcm,bcm2835-gpiomem";
28-
reg = <0x7e200000 0x1000>;
29-
status = "okay";
30-
};
3119
};
32-
};
33-
34-
&intc {
35-
compatible = "brcm,bcm2835-armctrl-ic";
36-
};
3720

38-
&watchdog {
39-
status = "okay";
21+
/delete-node/ cpus;
4022
};

0 commit comments

Comments
 (0)