summaryrefslogtreecommitdiff
path: root/common/splash_source.c
diff options
context:
space:
mode:
authorTom Rini <trini@konsulko.com>2025-01-22 16:08:34 -0600
committerTom Rini <trini@konsulko.com>2025-01-22 17:08:47 -0600
commita3b71cc6f5cc74d4edc5808790a3d2999ea3f7fe (patch)
treebf148f9145392c695ffb623ef8c307a4a3fe8e82 /common/splash_source.c
parent2eed5a1ff36217372e19f7513bd07077fc76718a (diff)
parent8985ff56b16dc6c04da2c96d48e7f6f54d04e3ff (diff)
Merge patch series "upl: Prerequite patches for updated spec"
Simon Glass <sjg@chromium.org> says: The current UPL spec[1] has been tidied up and improved over the last year, since U-Boot's original UPL support was written. This series includes some prerequisite patches needed for the real UPL patches. It is split from [2] [1] https://github.com/UniversalPayload/spec/tree/3f1450d [2] https://patchwork.ozlabs.org/project/uboot/list/?series=438574&state=* Link: https://lore.kernel.org/r/20250111000029.245022-1-sjg@chromium.org
Diffstat (limited to 'common/splash_source.c')
-rw-r--r--common/splash_source.c17
1 files changed, 4 insertions, 13 deletions
diff --git a/common/splash_source.c b/common/splash_source.c
index f43e7cc1be7..2df78a4f2d7 100644
--- a/common/splash_source.c
+++ b/common/splash_source.c
@@ -395,19 +395,10 @@ static int splash_load_fit(struct splash_location *location, u32 bmp_load_addr)
}
/* Extract the splash data from FIT */
- /* 1. Test if splash is in FIT internal data. */
- if (!fit_image_get_data(fit_header, node_offset, &internal_splash_data, &internal_splash_size))
- memmove((void *)(uintptr_t)bmp_load_addr, internal_splash_data, internal_splash_size);
- /* 2. Test if splash is in FIT external data with fixed position. */
- else if (!fit_image_get_data_position(fit_header, node_offset, &external_splash_addr))
- is_splash_external = true;
- /* 3. Test if splash is in FIT external data with offset. */
- else if (!fit_image_get_data_offset(fit_header, node_offset, &external_splash_addr)) {
- /* Align data offset to 4-byte boundary */
- fit_size = ALIGN(fdt_totalsize(fit_header), 4);
- /* External splash offset means the offset by end of FIT header */
- external_splash_addr += location->offset + fit_size;
- is_splash_external = true;
+ if (!fit_image_get_data(fit_header, node_offset, &internal_splash_data,
+ &internal_splash_size)) {
+ memmove((void *)(uintptr_t)bmp_load_addr, internal_splash_data,
+ internal_splash_size);
} else {
printf("Failed to get splash image from FIT\n");
return -ENODATA;