From bf1e46e959884df4bb204807efd21bbf44c5f87e Mon Sep 17 00:00:00 2001 From: Pierre Langlois Date: Fri, 5 Nov 2021 20:38:45 +0000 Subject: gnu: u-boot: Fix rk3399 boot from emmc. * gnu/packages/bootloaders.scm (%u-boot-rk3399-enable-emmc-phy-patch): New variable. (u-boot)[origin]: Register it. * gnu/packages/patches/u-boot-rk3399-enable-emmc-phy.patch: New file. * gnu/local.mk (dist_patch_DATA): Add it. --- gnu/local.mk | 1 + gnu/packages/bootloaders.scm | 9 +++++++- .../patches/u-boot-rk3399-enable-emmc-phy.patch | 26 ++++++++++++++++++++++ 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 gnu/packages/patches/u-boot-rk3399-enable-emmc-phy.patch (limited to 'gnu') diff --git a/gnu/local.mk b/gnu/local.mk index b9fff951b2..efe153faf2 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1826,6 +1826,7 @@ dist_patch_DATA = \ %D%/packages/patches/u-boot-rockchip-inno-usb.patch \ %D%/packages/patches/u-boot-sifive-prevent-reloc-initrd-fdt.patch \ %D%/packages/patches/u-boot-riscv64-fix-extlinux.patch \ + %D%/packages/patches/u-boot-rk3399-enable-emmc-phy.patch \ %D%/packages/patches/ucx-tcp-iface-ioctl.patch \ %D%/packages/patches/ungoogled-chromium-extension-search-path.patch \ %D%/packages/patches/ungoogled-chromium-ffmpeg-compat.patch \ diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index 0108494f59..0232efa78c 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -504,6 +504,12 @@ tree binary files. These are board description files used by Linux and BSD.") ;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html (search-patch "u-boot-allow-disabling-openssl.patch")) +(define %u-boot-rk3399-enable-emmc-phy-patch + ;; Fix emmc boot on rockpro64 and pinebook-pro, this was a regression + ;; therefore should hopefully be fixed when updating u-boot. + ;; https://lists.denx.de/pipermail/u-boot/2021-November/466329.html + (search-patch "u-boot-rk3399-enable-emmc-phy.patch")) + (define u-boot (package (name "u-boot") @@ -512,7 +518,8 @@ tree binary files. These are board description files used by Linux and BSD.") (patches (list %u-boot-rockchip-inno-usb-patch %u-boot-allow-disabling-openssl-patch - %u-boot-sifive-prevent-relocating-initrd-fdt)) + %u-boot-sifive-prevent-relocating-initrd-fdt + %u-boot-rk3399-enable-emmc-phy-patch)) (method url-fetch) (uri (string-append "https://ftp.denx.de/pub/u-boot/" diff --git a/gnu/packages/patches/u-boot-rk3399-enable-emmc-phy.patch b/gnu/packages/patches/u-boot-rk3399-enable-emmc-phy.patch new file mode 100644 index 0000000000..f14a9ce104 --- /dev/null +++ b/gnu/packages/patches/u-boot-rk3399-enable-emmc-phy.patch @@ -0,0 +1,26 @@ +adapting commit ac804143cf ("mmc: rockchip_sdhci: add phy and clock +config for rk3399") to fix the issue "Not found emmc phy device". + +Signed-off-by: Yifeng Zhao +--- + + arch/arm/dts/rk3399-u-boot.dtsi | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/arch/arm/dts/rk3399-u-boot.dtsi b/arch/arm/dts/rk3399-u-boot.dtsi +index 73922c328a..716b9a433a 100644 +--- a/arch/arm/dts/rk3399-u-boot.dtsi ++++ b/arch/arm/dts/rk3399-u-boot.dtsi +@@ -88,6 +88,10 @@ + u-boot,dm-pre-reloc; + }; + ++&emmc_phy { ++ u-boot,dm-pre-reloc; ++}; ++ + &grf { + u-boot,dm-pre-reloc; + }; +-- +2.17.1 -- cgit v1.2.3