From d7044f06dea839c61a01e6016a4b9dee15543f8d Mon Sep 17 00:00:00 2001 From: Phil Elwell Date: Thu, 30 Jan 2020 09:47:00 +0000 Subject: [PATCH] ARM: dts: Add sd_poll_once dtparam to bcm283x/2711 The old sdtweak overlay allowed the SD interface to be effectively disabled unless there was a card present at boot time, but that overlay doesn't work on bcm2711 and has largely been replaced by a set of sd_* dtparams (which have the advantage of being board- specific. Add an sd_poll_once dtparam to allow the same functionality on all Raspberry Pi boards. See: https://github.com/raspberrypi/linux/issues/3286 Signed-off-by: Phil Elwell --- arch/arm/boot/dts/bcm2708-rpi.dtsi | 1 + arch/arm/boot/dts/bcm2711-rpi-4-b.dts | 2 ++ arch/arm/boot/dts/overlays/README | 7 +++++++ 3 files changed, 10 insertions(+) --- a/arch/arm/boot/dts/bcm2708-rpi.dtsi +++ b/arch/arm/boot/dts/bcm2708-rpi.dtsi @@ -92,6 +92,7 @@ watchdog = <&watchdog>,"status"; random = <&random>,"status"; sd_overclock = <&sdhost>,"brcm,overclock-50:0"; + sd_poll_once = <&sdhost>,"non-removable?"; sd_force_pio = <&sdhost>,"brcm,force-pio?"; sd_pio_limit = <&sdhost>,"brcm,pio-limit:0"; sd_debug = <&sdhost>,"brcm,debug"; --- a/arch/arm/boot/dts/bcm2711-rpi-4-b.dts +++ b/arch/arm/boot/dts/bcm2711-rpi-4-b.dts @@ -349,5 +349,7 @@ eth_led0 = <&phy1>,"led-modes:0"; eth_led1 = <&phy1>,"led-modes:4"; + + sd_poll_once = <&emmc2>, "non-removable?"; }; }; --- a/arch/arm/boot/dts/overlays/README +++ b/arch/arm/boot/dts/overlays/README @@ -165,6 +165,13 @@ Params: sd_overclock Clock (in MHz) to use when the MMC framework requests 50MHz + sd_poll_once Looks for a card once after booting. Useful + for network booting scenarios to avoid the + overhead of continuous polling. N.B. Using + this option restricts the system to using a + single card per boot (or none at all). + (default off) + sd_force_pio Disable DMA support for SD driver (default off) sd_pio_limit Number of blocks above which to use DMA for