]> git.baikalelectronics.ru Git - uboot.git/commit
rockchip: Align FIT image data to SD/MMC block length
authorJonas Karlman <jonas@kwiboo.se>
Sat, 21 Jan 2023 19:01:39 +0000 (19:01 +0000)
committerSimon Glass <sjg@chromium.org>
Thu, 26 Jan 2023 17:47:45 +0000 (10:47 -0700)
commit4085c016b5af066436bd28158b703b48f9baf9f9
tree91f122aa0d8a5f2bc9277e19089d10b72f754b31
parentcf21303a1d1d24b1df8aedd4e6552e0ffaffc1d5
rockchip: Align FIT image data to SD/MMC block length

SPL load FIT images by reading the data aligned to block length.
Block length aligned image data is read directly to the load address.
Unaligned image data is written to an offset of the load address and
then the data is memcpy to the load address.

This adds a small overhead of having to memcpy unaligned data, something
that normally is not an issue.

However, TF-A may have a segment that should be loaded into SRAM, e.g.
vendor TF-A for RK3568 has a 8KiB segment that should be loaded into the
8KiB PMU SRAM. Having the image data for such segment unaligned result
in segment being written to and memcpy from beyond the SRAM boundary, in
the end this results in invalid data in SRAM.

Aligning the FIT and its external data to MMC block length to work
around such issue.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Simon Glass <sjg@chromium.org>
arch/arm/dts/rockchip-u-boot.dtsi