mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-03 18:10:13 +00:00
d5c4ec4aa3
U-boot is intended to replace linux kernel in android boot image(ABL), and it's FIT payload to replace initramfs file. The boot process is similar to boot image with linux: - android bootloader (ABL) unpacks android boot image - ABL sets `linux,initrd-start property` in chosen node in unpacked FDT - ABL sets x0 register to FDT address, and passes control to u-boot - u-boot reads x0 register, and stores it in `prevbl_fdt_addr` env variable - u-boot reads `linux,initrd-start` property, and stores it in `prevbl_initrd_start_addr` In this way, u-boot bootcmd relies on `prevbl_initrd_start_addr` env variable, and boils down to `bootm $prevbl_initrd_start_addr`. If more control on boot process is desired, pack a boot script in FIT image, and put it to default configuration What done: - Rearrange defconfig option order - Add CONFIG_SAVE_PREV_BL_* options - Doc updates: - remove wrong SBOOT memory corruption note, because memory is changed during u-boot bringup process, not by SBOOT - put payload on ramdisk place in abl boot image creation step Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com>
21 lines
1 KiB
Text
21 lines
1 KiB
Text
CONFIG_ARM=y
|
|
CONFIG_SYS_CONFIG_NAME="exynos78x0-common"
|
|
CONFIG_SKIP_LOWLEVEL_INIT=y
|
|
CONFIG_ARCH_EXYNOS=y
|
|
CONFIG_SYS_TEXT_BASE=0x40001000
|
|
CONFIG_ARCH_EXYNOS7=y
|
|
CONFIG_TARGET_A7Y17LTE=y
|
|
CONFIG_NR_DRAM_BANKS=12
|
|
CONFIG_DEFAULT_DEVICE_TREE="exynos78x0-axy17lte"
|
|
CONFIG_SYS_LOAD_ADDR=0x40001000
|
|
CONFIG_FIT=y
|
|
CONFIG_USE_PREBOOT=y
|
|
CONFIG_PREBOOT="echo Read pressed buttons status;KEY_VOLUMEUP=gpa20;KEY_HOME=gpa17;KEY_VOLUMEDOWN=gpa21;KEY_POWER=gpa00;PRESSED=0;RELEASED=1;if gpio input $KEY_VOLUMEUP; then setenv VOLUME_UP $PRESSED; else setenv VOLUME_UP $RELEASED; fi;if gpio input $KEY_VOLUMEDOWN; then setenv VOLUME_DOWN $PRESSED; else setenv VOLUME_DOWN $RELEASED; fi;if gpio input $KEY_HOME; then setenv HOME $PRESSED; else setenv HOME $RELEASED; fi;if gpio input $KEY_POWER; then setenv POWER $PRESSED; else setenv POWER $RELEASED; fi;"
|
|
CONFIG_SAVE_PREV_BL_FDT_ADDR=y
|
|
CONFIG_SAVE_PREV_BL_INITRAMFS_START_ADDR=y
|
|
# CONFIG_DISPLAY_CPUINFO is not set
|
|
CONFIG_HUSH_PARSER=y
|
|
CONFIG_CMD_GPIO=y
|
|
CONFIG_CMD_I2C=y
|
|
CONFIG_DM_I2C_GPIO=y
|
|
CONFIG_LMB_MAX_REGIONS=64
|