BCM2708: Add core Device Tree support
[platform/kernel/linux-rpi.git] / arch / arm / boot / dts / broadcom / bcm2711-rpi.dtsi
1 // SPDX-License-Identifier: GPL-2.0
2 #include "bcm2835-rpi.dtsi"
3
4 #include <dt-bindings/reset/raspberrypi,firmware-reset.h>
5
6 / {
7         /* Will be filled by the bootloader */
8         memory@0 {
9                 device_type = "memory";
10                 reg = <0 0 0>;
11         };
12
13         aliases {
14                 emmc2bus = &emmc2bus;
15                 ethernet0 = &genet;
16                 pcie0 = &pcie0;
17                 blconfig = &blconfig;
18                 blpubkey = &blpubkey;
19         };
20 };
21
22 &firmware {
23         firmware_clocks: clocks {
24                 compatible = "raspberrypi,firmware-clocks";
25                 #clock-cells = <1>;
26         };
27
28         expgpio: gpio {
29                 compatible = "raspberrypi,firmware-gpio";
30                 gpio-controller;
31                 #gpio-cells = <2>;
32                 status = "okay";
33         };
34
35         reset: reset {
36                 compatible = "raspberrypi,firmware-reset";
37                 #reset-cells = <1>;
38         };
39 };
40
41 &hdmi0 {
42         clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 0>, <&clk_27MHz>;
43         clock-names = "hdmi", "bvb", "audio", "cec";
44         wifi-2.4ghz-coexistence;
45 };
46
47 &hdmi1 {
48         clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
49         clock-names = "hdmi", "bvb", "audio", "cec";
50         wifi-2.4ghz-coexistence;
51 };
52
53 &hvs {
54         clocks = <&firmware_clocks 4>;
55 };
56
57 &rmem {
58         /*
59          * RPi4's co-processor will copy the board's bootloader configuration
60          * into memory for the OS to consume. It'll also update this node with
61          * its placement information.
62          */
63         blconfig: nvram@0 {
64                 compatible = "raspberrypi,bootloader-config", "nvmem-rmem";
65                 #address-cells = <1>;
66                 #size-cells = <1>;
67                 reg = <0x0 0x0 0x0>;
68                 no-map;
69                 status = "disabled";
70         };
71         /*
72          * RPi4 will copy the binary public key blob (if present) from the bootloader
73          * into memory for use by the OS.
74          */
75         blpubkey: nvram@1 {
76                 compatible = "raspberrypi,bootloader-public-key", "nvmem-rmem";
77                 #address-cells = <1>;
78                 #size-cells = <1>;
79                 reg = <0x0 0x0 0x0>;
80                 no-map;
81                 status = "disabled";
82         };
83 };
84
85 &v3d {
86         clocks = <&firmware_clocks 5>;
87 };
88
89 &vchiq {
90         interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
91 };