1 From 835ee8baed06f752b2c04fde6f328b1e0a27b985 Mon Sep 17 00:00:00 2001
2 From: Jonathan Bell <jonathan@raspberrypi.com>
3 Date: Wed, 8 Nov 2023 16:14:25 +0000
4 Subject: [PATCH 0719/1085] arm: dts: change RP1 SDHCI controller compatible
7 Also add a sdio-pi5 overlay which enables mmc0 on GPIOs 22-27, as was
8 possible with earlier models of Pi.
10 Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
12 arch/arm/boot/dts/broadcom/rp1.dtsi | 4 ++--
13 arch/arm/boot/dts/overlays/Makefile | 1 +
14 arch/arm/boot/dts/overlays/README | 7 ++++++
15 arch/arm/boot/dts/overlays/overlay_map.dts | 4 ++++
16 .../boot/dts/overlays/sdio-pi5-overlay.dts | 24 +++++++++++++++++++
17 5 files changed, 38 insertions(+), 2 deletions(-)
18 create mode 100644 arch/arm/boot/dts/overlays/sdio-pi5-overlay.dts
20 --- a/arch/arm/boot/dts/broadcom/rp1.dtsi
21 +++ b/arch/arm/boot/dts/broadcom/rp1.dtsi
24 rp1_mmc0: mmc@180000 {
25 reg = <0xc0 0x40180000 0x0 0x100>;
26 - compatible = "snps,dwcmshc-sdhci";
27 + compatible = "raspberrypi,rp1-dwcmshc";
28 interrupts = <RP1_INT_SDIO0 IRQ_TYPE_LEVEL_HIGH>;
29 clocks = <&rp1_clocks RP1_CLK_SYS &sdhci_core
30 &rp1_clocks RP1_CLK_SDIO_TIMER
33 rp1_mmc1: mmc@184000 {
34 reg = <0xc0 0x40184000 0x0 0x100>;
35 - compatible = "snps,dwcmshc-sdhci";
36 + compatible = "raspberrypi,rp1-dwcmshc";
37 interrupts = <RP1_INT_SDIO1 IRQ_TYPE_LEVEL_HIGH>;
38 clocks = <&rp1_clocks RP1_CLK_SYS &sdhci_core
39 &rp1_clocks RP1_CLK_SDIO_TIMER
40 --- a/arch/arm/boot/dts/overlays/Makefile
41 +++ b/arch/arm/boot/dts/overlays/Makefile
42 @@ -225,6 +225,7 @@ dtbo-$(CONFIG_ARCH_BCM2835) += \
47 seeed-can-fd-hat-v1.dtbo \
48 seeed-can-fd-hat-v2.dtbo \
50 --- a/arch/arm/boot/dts/overlays/README
51 +++ b/arch/arm/boot/dts/overlays/README
52 @@ -3932,6 +3932,13 @@ Info: This overlay is now deprecated.
57 +Info: Selects the rp1_mmc0 interface and enables it on GPIOs 22-27.
59 +Load: dtoverlay=sdio-pi5
64 Info: This overlay is now deprecated. Use the sd_* dtparams in the
65 base DTB, e.g. "dtoverlay=sdtweak,poll_once" becomes
66 --- a/arch/arm/boot/dts/overlays/overlay_map.dts
67 +++ b/arch/arm/boot/dts/overlays/overlay_map.dts
69 deprecated = "use sdio,bus_width=1,gpios_22_25";
77 deprecated = "use 'dtparam=sd_poll_once' etc.";
80 +++ b/arch/arm/boot/dts/overlays/sdio-pi5-overlay.dts
85 +/* SDIO/SD/MMC on RP1 bank 0 */
88 + compatible = "brcm,bcm2712";
91 + target = <&rp1_mmc0>;
92 + frag0: __overlay__ {
94 + pinctrl-0 = <&rp1_sdio0_22_27>;
95 + pinctrl-names = "default";
100 + target = <&rp1_sdio_clk0>;
101 + frag1: __overlay__ {