aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnaud Ferraris <arnaud.ferraris@gmail.com>2021-02-20 13:14:15 +0100
committerAndre Przywara <andre.przywara@arm.com>2021-04-16 01:12:59 +0100
commit747c2421c69d516af0f330cecf595fe4480854a3 (patch)
treebfc441630e1a2cc34c97fc4fe151351ac56ff148
parent925cd8d77eedfc5a05d7a9559da4e30b9277920a (diff)
downloadu-boot-747c2421c69d516af0f330cecf595fe4480854a3.zip
u-boot-747c2421c69d516af0f330cecf595fe4480854a3.tar.gz
u-boot-747c2421c69d516af0f330cecf595fe4480854a3.tar.bz2
sunxi: arm64: Add addresses for compressed kernel load
The "booti" command to load arm64 Linux kernels supports automatic decompression of zipped kernel images, but relies on some environment variables to point to usable buffer RAM. Add those variables and let them point to some default values, that should cover most use-cases. Signed-off-by: Andre Przywara <andre.przywara@arm.com>
-rw-r--r--include/configs/sunxi-common.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
index d81c0f4..9e37e99 100644
--- a/include/configs/sunxi-common.h
+++ b/include/configs/sunxi-common.h
@@ -243,6 +243,8 @@ extern int soft_i2c_gpio_scl;
*/
#define BOOTM_SIZE __stringify(0xa000000)
#define KERNEL_ADDR_R __stringify(SDRAM_OFFSET(0080000))
+#define KERNEL_COMP_ADDR_R __stringify(SDRAM_OFFSET(4000000))
+#define KERNEL_COMP_SIZE __stringify(0xb000000)
#define FDT_ADDR_R __stringify(SDRAM_OFFSET(FA00000))
#define SCRIPT_ADDR_R __stringify(SDRAM_OFFSET(FC00000))
#define PXEFILE_ADDR_R __stringify(SDRAM_OFFSET(FD00000))
@@ -288,6 +290,18 @@ extern int soft_i2c_gpio_scl;
"fdtoverlay_addr_r=" FDTOVERLAY_ADDR_R "\0" \
"ramdisk_addr_r=" RAMDISK_ADDR_R "\0"
+#ifdef CONFIG_ARM64
+
+#define MEM_LAYOUT_ENV_EXTRA_SETTINGS \
+ "kernel_comp_addr_r=" KERNEL_COMP_ADDR_R "\0" \
+ "kernel_comp_size=" KERNEL_COMP_SIZE "\0"
+
+#else
+
+#define MEM_LAYOUT_ENV_EXTRA_SETTINGS ""
+
+#endif
+
#define DFU_ALT_INFO_RAM \
"dfu_alt_info_ram=" \
"kernel ram " KERNEL_ADDR_R " 0x1000000;" \
@@ -438,6 +452,7 @@ extern int soft_i2c_gpio_scl;
#define CONFIG_EXTRA_ENV_SETTINGS \
CONSOLE_ENV_SETTINGS \
MEM_LAYOUT_ENV_SETTINGS \
+ MEM_LAYOUT_ENV_EXTRA_SETTINGS \
DFU_ALT_INFO_RAM \
"fdtfile=" FDTFILE "\0" \
"console=ttyS0,115200\0" \