openwrt/target/linux/bcm27xx/patches-6.6/950-0985-DTS-bcm2712-defer-SDIO1-CQE-selection-to-the-board-d.patch
Álvaro Fernández Rojas 8c405cdccc bcm27xx: add 6.6 kernel patches
The patches were generated from the RPi repo with the following command:
git format-patch v6.6.34..rpi-6.1.y

Some patches needed rebasing and, as usual, the applied and reverted, wireless
drivers, Github workflows, READMEs and defconfigs patches were removed.

Signed-off-by: Álvaro Fernández Rojas <noltari@gmail.com>
2024-06-18 18:52:49 +02:00

64 lines
2.3 KiB
Diff

From 4a3a03d494e81b2a5d9a1ed77223677ddb19279c Mon Sep 17 00:00:00 2001
From: Jonathan Bell <jonathan@raspberrypi.com>
Date: Wed, 20 Mar 2024 15:14:53 +0000
Subject: [PATCH 0985/1085] DTS: bcm2712: defer SDIO1 CQE selection to the
board dtb
Command Queueing on Linux with SD cards is new, with the potential to cause
filesystem corruption due to bugs in software or card firmware(s).
Default to disabled unless a) we know the interface connects to an eMMC
device or b) we want it switched on.
Signed-off-by: Jonathan Bell <jonathan@raspberrypi.com>
---
arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts | 1 +
arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi | 1 +
arch/arm/boot/dts/broadcom/bcm2712.dtsi | 1 -
arch/arm/boot/dts/overlays/README | 4 ++++
4 files changed, 6 insertions(+), 1 deletion(-)
--- a/arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts
+++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi-5-b.dts
@@ -819,6 +819,7 @@ spi10_cs_pins: &spi10_cs_gpio1 {};
random = <&random>, "status";
rtc = <&rpi_rtc>, "status";
rtc_bbat_vchg = <&rpi_rtc>, "trickle-charge-microvolt:0";
+ sd_cqe = <&sdio1>, "supports-cqe?";
spi = <&spi0>, "status";
suspend = <&pwr_key>, "linux,code:0=205";
uart0 = <&uart0>, "status";
--- a/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2712-rpi-cm5.dtsi
@@ -355,6 +355,7 @@ dpi_16bit_gpio2: &rp1_dpi_16bit_g
mmc-hs200-1_8v;
mmc-hs400-1_8v;
broken-cd;
+ supports-cqe;
status = "okay";
};
--- a/arch/arm/boot/dts/broadcom/bcm2712.dtsi
+++ b/arch/arm/boot/dts/broadcom/bcm2712.dtsi
@@ -1119,7 +1119,6 @@
clocks = <&clk_emmc2>;
sdhci-caps-mask = <0x0000C000 0x0>;
sdhci-caps = <0x0 0x0>;
- supports-cqe;
mmc-ddr-3_3v;
};
--- a/arch/arm/boot/dts/overlays/README
+++ b/arch/arm/boot/dts/overlays/README
@@ -344,6 +344,10 @@ Params:
non-lite SKU of CM4).
(default "on")
+ sd_cqe Use to enable Command Queueing on the SD
+ interface for faster Class A2 card performance
+ (Pi 5 only, default "off")
+
sd_overclock Clock (in MHz) to use when the MMC framework
requests 50MHz