1// SPDX-License-Identifier: GPL-2.0
2#include "bcm2835-rpi.dtsi"
3
4#include <dt-bindings/power/raspberrypi-power.h>
5#include <dt-bindings/reset/raspberrypi,firmware-reset.h>
6
7/ {
8	/* Will be filled by the bootloader */
9	memory@0 {
10		device_type = "memory";
11		reg = <0 0 0>;
12	};
13
14	aliases {
15		emmc2bus = &emmc2bus;
16		ethernet0 = &genet;
17		pcie0 = &pcie0;
18		blconfig = &blconfig;
19	};
20
21	i2c0mux: i2c-mux0 {
22		compatible = "i2c-mux-pinctrl";
23		#address-cells = <1>;
24		#size-cells = <0>;
25
26		i2c-parent = <&i2c0>;
27
28		pinctrl-names = "i2c0", "i2c0-vc";
29		pinctrl-0 = <&i2c0_gpio0>;
30		pinctrl-1 = <&i2c0_gpio44>;
31
32		i2c0_0: i2c@0 {
33			reg = <0>;
34			#address-cells = <1>;
35			#size-cells = <0>;
36		};
37
38		i2c0_1: i2c@1 {
39			reg = <1>;
40			#address-cells = <1>;
41			#size-cells = <0>;
42		};
43	};
44};
45
46&firmware {
47	expgpio: gpio {
48		compatible = "raspberrypi,firmware-gpio";
49		gpio-controller;
50		#gpio-cells = <2>;
51		status = "okay";
52	};
53
54	reset: reset {
55		compatible = "raspberrypi,firmware-reset";
56		#reset-cells = <1>;
57	};
58};
59
60&hdmi0 {
61	clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 0>, <&clk_27MHz>;
62	clock-names = "hdmi", "bvb", "audio", "cec";
63	wifi-2.4ghz-coexistence;
64};
65
66&hdmi1 {
67	clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
68	clock-names = "hdmi", "bvb", "audio", "cec";
69	wifi-2.4ghz-coexistence;
70};
71
72&hvs {
73	clocks = <&firmware_clocks 4>;
74};
75
76&i2c0 {
77	/delete-property/ pinctrl-names;
78	/delete-property/ pinctrl-0;
79};
80
81&rmem {
82	/*
83	 * RPi4's co-processor will copy the board's bootloader configuration
84	 * into memory for the OS to consume. It'll also update this node with
85	 * its placement information.
86	 */
87	blconfig: nvram@0 {
88		compatible = "raspberrypi,bootloader-config", "nvmem-rmem";
89		#address-cells = <1>;
90		#size-cells = <1>;
91		reg = <0x0 0x0 0x0>;
92		no-map;
93		status = "disabled";
94	};
95};
96
97&v3d {
98	clocks = <&firmware_clocks 5>;
99};
100
101&vchiq {
102	interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
103};
104
105&xhci {
106	power-domains = <&power RPI_POWER_DOMAIN_USB>;
107};
108