On 2026-01-30, Quentin Schulz wrote:
> On 1/30/26 2:46 AM, Vagrant Cascadian wrote:
>> Thanks for adding support for rk3588 MNT Reform2!
>> 
>> I tried using u-boot 2026.01 with the rk3588 MNT Reform2, but it only
>> gets as far as SPL, and then fails:
>> 
>>    U-Boot SPL 2026.01 (Jan 01 1970 - 00:00:01 +0000)
>>    Trying to boot from MMC1
>>    mmc_load_image_raw_sector: mmc block read error
>>    Error: -38
>>    SPL: Unsupported Boot Device!
>>    SPL: failed to boot from all boot devices
>>    ### ERROR ### Please RESET the board ###
>> 
>> I *think* MMC1 is eMMC, which I currently have blanked, as recovering
>> from a failed install on eMMC is trickier.
>> 
>
> It's surprising it isn't trying MMC1 twice as that's what it's supposed 
> to do due to u-boot,spl-boot-order containing "same-as-spl" and the eMMC 
> controller again later in the chain (see the property).
>
> In any case, no support for the SD controller in SPL according to the 
> defconfig, can you try with:
>
> """
> diff --git a/configs/mnt-reform2-rk3588_defconfig 
> b/configs/mnt-reform2-rk3588_defconfig
> index 6adc9e4e60c..982e6c6eb20 100644
> --- a/configs/mnt-reform2-rk3588_defconfig
> +++ b/configs/mnt-reform2-rk3588_defconfig
> @@ -50,6 +50,8 @@ CONFIG_MMC_HS400_ES_SUPPORT=y
>   CONFIG_SPL_MMC_HS400_ES_SUPPORT=y
>   CONFIG_MMC_HS400_SUPPORT=y
>   CONFIG_SPL_MMC_HS400_SUPPORT=y
> +CONFIG_MMC_DW=y
> +CONFIG_MMC_DW_ROCKCHIP=y
>   CONFIG_MMC_SDHCI=y
>   CONFIG_MMC_SDHCI_SDMA=y
>   CONFIG_MMC_SDHCI_ROCKCHIP=y
> """
>
> and report if it gets you further?

Much further, indeed! With that applied to 2026.04-rc1, I managed to
load the kernel, initrd and dtb from NVMe, and boot all the way to a
rootfs!

With one big downside... no display on linux (eDP? panel, or on
HDMI). Neither upstream u-boot or vendor u-boot provided output on the
display, so that part is not a regression.

I have a slightly older rk3588 module that does not use dsi -> eDP, that
might be an issue... maybe upstream u-boot vs. vendor u-boot is
configuring or not configuring something needed...


> I think you'll be missing support for 
> the CD gpio as well in SPL.
>
> So probably you need to enable SPL_GPIO:
>
> """
> diff --git a/configs/mnt-reform2-rk3588_defconfig 
> b/configs/mnt-reform2-rk3588_defconfig
> index 6adc9e4e60c..7485d03a0cb 100644
> --- a/configs/mnt-reform2-rk3588_defconfig
> +++ b/configs/mnt-reform2-rk3588_defconfig
> @@ -2,6 +2,7 @@ CONFIG_ARM=y
>   CONFIG_SKIP_LOWLEVEL_INIT=y
>   CONFIG_COUNTER_FREQUENCY=24000000
>   CONFIG_ARCH_ROCKCHIP=y
> +CONFIG_SPL_GPIO=y
>   CONFIG_DEFAULT_DEVICE_TREE="rockchip/rk3588-mnt-reform2"
>   CONFIG_ROCKCHIP_RK3588=y
>   CONFIG_SPL_SERIAL=y
> @@ -50,6 +51,8 @@ CONFIG_MMC_HS400_ES_SUPPORT=y
>   CONFIG_SPL_MMC_HS400_ES_SUPPORT=y
>   CONFIG_MMC_HS400_SUPPORT=y
>   CONFIG_SPL_MMC_HS400_SUPPORT=y
> +CONFIG_MMC_DW=y
> +CONFIG_MMC_DW_ROCKCHIP=y
>   CONFIG_MMC_SDHCI=y
>   CONFIG_MMC_SDHCI_SDMA=y
>   CONFIG_MMC_SDHCI_ROCKCHIP=y
> """
>
> aaaand also enable it in SPL DT:
>
> """
> diff --git a/arch/arm/dts/rk3588-mnt-reform2-u-boot.dtsi 
> b/arch/arm/dts/rk3588-mnt-reform2-u-boot.dtsi
> new file mode 100644
> index 00000000000..47509f4cb37
> --- /dev/null
> +++ b/arch/arm/dts/rk3588-mnt-reform2-u-boot.dtsi
> @@ -0,0 +1,9 @@
> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
> +
> +#include "rk3588-u-boot.dtsi"
> +
> +/* SD CD */
> +&gpio0 {
> +     bootph-pre-ram;
> +     bootph-some-ram;
> +};
> """
>
> I believe?

Do you think it is worth testing this part as well? Or is booting to
rootfs sufficient to demonstrate it is working?


live well,
  vagrant

Attachment: signature.asc
Description: PGP signature

Reply via email to