Commit 9dda8d9a authored by Stefan Wahren's avatar Stefan Wahren Committed by Nicolas Saenz Julienne
Browse files

ARM: dts: Move BCM2711 RPi specific into separate dtsi



There is a lot of Raspberry Pi specific stuff (neither SoC or board
specific) for the BCM2711 which is currently in the RPi 4 B dts. In order
to avoid copy & paste for every new BCM2711 based Raspberry Pi, move it
into a separate dtsi.

Signed-off-by: default avatarStefan Wahren <stefan.wahren@i2se.com>
Link: https://lore.kernel.org/r/1622981777-5023-4-git-send-email-stefan.wahren@i2se.com


Signed-off-by: default avatarNicolas Saenz Julienne <nsaenz@kernel.org>
parent f230c323
Loading
Loading
Loading
Loading
+10 −71
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0
/dts-v1/;
#include "bcm2711.dtsi"
#include "bcm2835-rpi.dtsi"
#include "bcm2711-rpi.dtsi"
#include "bcm283x-rpi-usb-peripheral.dtsi"

#include <dt-bindings/reset/raspberrypi,firmware-reset.h>

/ {
	compatible = "raspberrypi,4-model-b", "brcm,bcm2711";
	model = "Raspberry Pi 4 Model B";
@@ -15,19 +13,6 @@
		stdout-path = "serial1:115200n8";
	};

	/* Will be filled by the bootloader */
	memory@0 {
		device_type = "memory";
		reg = <0 0 0>;
	};

	aliases {
		emmc2bus = &emmc2bus;
		ethernet0 = &genet;
		pcie0 = &pcie0;
		blconfig = &blconfig;
	};

	leds {
		act {
			gpios = <&gpio 42 GPIO_ACTIVE_HIGH>;
@@ -79,16 +64,7 @@
	status = "okay";
};

&firmware {
	firmware_clocks: clocks {
		compatible = "raspberrypi,firmware-clocks";
		#clock-cells = <1>;
	};

	expgpio: gpio {
		compatible = "raspberrypi,firmware-gpio";
		gpio-controller;
		#gpio-cells = <2>;
&expgpio {
	gpio-line-names = "BT_ON",
			  "WL_ON",
			  "PWR_LED_OFF",
@@ -97,13 +73,6 @@
			  "CAM_GPIO",
			  "SD_PWR_ON",
			  "";
		status = "okay";
	};

	reset: reset {
		compatible = "raspberrypi,firmware-reset";
		#reset-cells = <1>;
	};
};

&gpio {
@@ -180,23 +149,13 @@
};

&hdmi0 {
	clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 0>, <&clk_27MHz>;
	clock-names = "hdmi", "bvb", "audio", "cec";
	wifi-2.4ghz-coexistence;
	status = "okay";
};

&hdmi1 {
	clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
	clock-names = "hdmi", "bvb", "audio", "cec";
	wifi-2.4ghz-coexistence;
	status = "okay";
};

&hvs {
	clocks = <&firmware_clocks 4>;
};

&pixelvalve0 {
	status = "okay";
};
@@ -219,22 +178,6 @@
	status = "okay";
};

&rmem {
	/*
	 * RPi4's co-processor will copy the board's bootloader configuration
	 * into memory for the OS to consume. It'll also update this node with
	 * its placement information.
	 */
	blconfig: nvram@0 {
		compatible = "raspberrypi,bootloader-config", "nvmem-rmem";
		#address-cells = <1>;
		#size-cells = <1>;
		reg = <0x0 0x0 0x0>;
		no-map;
		status = "disabled";
	};
};

/* SDHCI is used to control the SDIO for wireless */
&sdhci {
	#address-cells = <1>;
@@ -309,10 +252,6 @@
	status = "okay";
};

&vchiq {
	interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
};

&vc4 {
	status = "okay";
};
+74 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0
#include "bcm2835-rpi.dtsi"

#include <dt-bindings/reset/raspberrypi,firmware-reset.h>

/ {
	/* Will be filled by the bootloader */
	memory@0 {
		device_type = "memory";
		reg = <0 0 0>;
	};

	aliases {
		emmc2bus = &emmc2bus;
		ethernet0 = &genet;
		pcie0 = &pcie0;
		blconfig = &blconfig;
	};
};

&firmware {
	firmware_clocks: clocks {
		compatible = "raspberrypi,firmware-clocks";
		#clock-cells = <1>;
	};

	expgpio: gpio {
		compatible = "raspberrypi,firmware-gpio";
		gpio-controller;
		#gpio-cells = <2>;
		status = "okay";
	};

	reset: reset {
		compatible = "raspberrypi,firmware-reset";
		#reset-cells = <1>;
	};
};

&hdmi0 {
	clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 0>, <&clk_27MHz>;
	clock-names = "hdmi", "bvb", "audio", "cec";
	wifi-2.4ghz-coexistence;
};

&hdmi1 {
	clocks = <&firmware_clocks 13>, <&firmware_clocks 14>, <&dvp 1>, <&clk_27MHz>;
	clock-names = "hdmi", "bvb", "audio", "cec";
	wifi-2.4ghz-coexistence;
};

&hvs {
	clocks = <&firmware_clocks 4>;
};

&rmem {
	/*
	 * RPi4's co-processor will copy the board's bootloader configuration
	 * into memory for the OS to consume. It'll also update this node with
	 * its placement information.
	 */
	blconfig: nvram@0 {
		compatible = "raspberrypi,bootloader-config", "nvmem-rmem";
		#address-cells = <1>;
		#size-cells = <1>;
		reg = <0x0 0x0 0x0>;
		no-map;
		status = "disabled";
	};
};

&vchiq {
	interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
};