mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-21 22:47:56 +00:00
2e715fb4fc
Add support for BCM2712 (Raspberry Pi 5).
3bb5880ab3
Patches were generated from the diff between linux kernel branch linux-6.1.y
and rpi-6.1.y from raspberry pi kernel source:
- git format-patch linux-6.1.y...rpi-6.1.y
Build system: x86_64
Build-tested: bcm2708, bcm2709, bcm2710, bcm2711
Run-tested: bcm2710/RPi3B, bcm2711/RPi4B
Signed-off-by: Marty Jones <mj8263788@gmail.com>
[Remove applied and reverted patches, squash patches and config commits]
Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
105 lines
2.9 KiB
Diff
105 lines
2.9 KiB
Diff
From 51cdff455e3c3df29764f71bc0c9dd0e099945d6 Mon Sep 17 00:00:00 2001
|
|
From: Jonathan Bell <jonathan@raspberrypi.com>
|
|
Date: Wed, 8 Nov 2023 16:14:25 +0000
|
|
Subject: [PATCH] arm: dts: change RP1 SDHCI controller compatible string
|
|
|
|
Also add a sdio-pi5 overlay which enables mmc0 on GPIOs 22-27, as was
|
|
possible with earlier models of Pi.
|
|
|
|
Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
|
|
---
|
|
arch/arm/boot/dts/overlays/Makefile | 1 +
|
|
arch/arm/boot/dts/overlays/README | 7 ++++++
|
|
arch/arm/boot/dts/overlays/overlay_map.dts | 4 ++++
|
|
.../boot/dts/overlays/sdio-pi5-overlay.dts | 24 +++++++++++++++++++
|
|
arch/arm/boot/dts/rp1.dtsi | 4 ++--
|
|
5 files changed, 38 insertions(+), 2 deletions(-)
|
|
create mode 100644 arch/arm/boot/dts/overlays/sdio-pi5-overlay.dts
|
|
|
|
--- a/arch/arm/boot/dts/overlays/Makefile
|
|
+++ b/arch/arm/boot/dts/overlays/Makefile
|
|
@@ -225,6 +225,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
|
|
sc16is752-spi1.dtbo \
|
|
sdhost.dtbo \
|
|
sdio.dtbo \
|
|
+ sdio-pi5.dtbo \
|
|
seeed-can-fd-hat-v1.dtbo \
|
|
seeed-can-fd-hat-v2.dtbo \
|
|
sh1106-spi.dtbo \
|
|
--- a/arch/arm/boot/dts/overlays/README
|
|
+++ b/arch/arm/boot/dts/overlays/README
|
|
@@ -3932,6 +3932,13 @@ Info: This overlay is now deprecated.
|
|
Load: <Deprecated>
|
|
|
|
|
|
+Name: sdio-pi5
|
|
+Info: Selects the rp1_mmc0 interface and enables it on GPIOs 22-27.
|
|
+ Pi 5 only.
|
|
+Load: dtoverlay=sdio-pi5
|
|
+Params: <None>
|
|
+
|
|
+
|
|
Name: sdtweak
|
|
Info: This overlay is now deprecated. Use the sd_* dtparams in the
|
|
base DTB, e.g. "dtoverlay=sdtweak,poll_once" becomes
|
|
--- a/arch/arm/boot/dts/overlays/overlay_map.dts
|
|
+++ b/arch/arm/boot/dts/overlays/overlay_map.dts
|
|
@@ -250,6 +250,10 @@
|
|
deprecated = "use sdio,bus_width=1,gpios_22_25";
|
|
};
|
|
|
|
+ sdio-pi5 {
|
|
+ bcm2712;
|
|
+ };
|
|
+
|
|
sdtweak {
|
|
deprecated = "use 'dtparam=sd_poll_once' etc.";
|
|
};
|
|
--- /dev/null
|
|
+++ b/arch/arm/boot/dts/overlays/sdio-pi5-overlay.dts
|
|
@@ -0,0 +1,24 @@
|
|
+/dts-v1/;
|
|
+/plugin/;
|
|
+
|
|
+/* SDIO/SD/MMC on RP1 bank 0 */
|
|
+
|
|
+/{
|
|
+ compatible = "brcm,bcm2712";
|
|
+
|
|
+ fragment@0 {
|
|
+ target = <&rp1_mmc0>;
|
|
+ frag0: __overlay__ {
|
|
+ status = "okay";
|
|
+ pinctrl-0 = <&rp1_sdio0_22_27>;
|
|
+ pinctrl-names = "default";
|
|
+ };
|
|
+ };
|
|
+
|
|
+ fragment@1 {
|
|
+ target = <&rp1_sdio_clk0>;
|
|
+ frag1: __overlay__ {
|
|
+ status = "okay";
|
|
+ };
|
|
+ };
|
|
+};
|
|
--- a/arch/arm/boot/dts/rp1.dtsi
|
|
+++ b/arch/arm/boot/dts/rp1.dtsi
|
|
@@ -962,7 +962,7 @@
|
|
|
|
rp1_mmc0: mmc@180000 {
|
|
reg = <0xc0 0x40180000 0x0 0x100>;
|
|
- compatible = "snps,dwcmshc-sdhci";
|
|
+ compatible = "raspberrypi,rp1-dwcmshc";
|
|
interrupts = <RP1_INT_SDIO0 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&rp1_clocks RP1_CLK_SYS &sdhci_core
|
|
&rp1_clocks RP1_CLK_SDIO_TIMER
|
|
@@ -978,7 +978,7 @@
|
|
|
|
rp1_mmc1: mmc@184000 {
|
|
reg = <0xc0 0x40184000 0x0 0x100>;
|
|
- compatible = "snps,dwcmshc-sdhci";
|
|
+ compatible = "raspberrypi,rp1-dwcmshc";
|
|
interrupts = <RP1_INT_SDIO1 IRQ_TYPE_LEVEL_HIGH>;
|
|
clocks = <&rp1_clocks RP1_CLK_SYS &sdhci_core
|
|
&rp1_clocks RP1_CLK_SDIO_TIMER
|