[PATCH 2/5] mmc: rockchip_sdhci: Disable DMA mode using a device tree property

Quentin Schulz quentin.schulz at theobroma-systems.com
Fri May 12 17:17:57 CEST 2023


Hi Jonas,

On 5/6/23 19:41, Jonas Karlman wrote:
> Loading part of TF-A into SRAM from eMMC using DMA fails on RK3399
> similar to other Rockchip SoCs. Checksum validation fails with:
> 
>    ## Checking hash(es) for Image atf-2 ... sha256 error!
>    Bad hash value for 'hash' hash node in 'atf-2' image node
>    spl_load_simple_fit: can't load image loadables index 1 (ret = -1)
>    mmc_load_image_raw_sector: mmc block read error
>    SPL: failed to boot from all boot devices
>    ### ERROR ### Please RESET the board ###
> 
> Add a device tree property, u-boot,spl-fifo-mode, to control when the
> rockchip_sdhci driver should disable the use of DMA and fallback on PIO
> mode. Same device tree property is used by the rockchip_dw_mmc driver.
> 
> In commit 2cc6cde647e2 ("mmc: rockchip_sdhci: Limit number of blocks
> read in a single command") the DMA mode was disabled using a CONFIG
> option on RK3588. Revert that and instead disable DMA using the device
> tree property for all RK3588 boards, also apply similar workaround for
> all RK3399 boards.
> 
> Fixes: 2cc6cde647e2 ("mmc: rockchip_sdhci: Limit number of blocks read in a single command")
> Signed-off-by: Jonas Karlman <jonas at kwiboo.se>

Tested-by: Quentin Schulz <foss+uboot at 0leil.net> # RK3399 Puma, RK3588 Tiger

Thanks,
Quentin


More information about the U-Boot mailing list