mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-17 02:08:38 +00:00
f8a1b33889
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: - strip unneeded config options - add FIT image support - add framebuffer node, u-boot logo and video console - increase LMB_MAX_REGIONS, to store all linux dtb reserved memory regions - add linux kernel image header Uart driver causes hang, when u-boot is used in android boot image instead of linux. Temporary disable console driver, until investigated and fixed. Signed-off-by: Dzmitry Sankouski <dsankouski@gmail.com> Cc: Ramon Fried <rfried.dev@gmail.com>
34 lines
857 B
C
34 lines
857 B
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Configuration file for boards, based on Qualcomm SDM845 chip
|
|
*
|
|
* (C) Copyright 2021 Dzmitry Sankouski <dsankouski@gmail.com>
|
|
*/
|
|
|
|
#ifndef __CONFIGS_SDM845_H
|
|
#define __CONFIGS_SDM845_H
|
|
|
|
#include <linux/sizes.h>
|
|
#include <asm/arch/sysmap-sdm845.h>
|
|
|
|
#define CONFIG_SYS_BAUDRATE_TABLE { 115200, 230400, 460800, 921600 }
|
|
|
|
/* Generic Timer Definitions */
|
|
#define COUNTER_FREQUENCY 19000000
|
|
|
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
|
"bootm_size=0x4000000\0" \
|
|
"bootm_low=0x80000000\0" \
|
|
"stdout=vidconsole\0" \
|
|
"stderr=vidconsole\0" \
|
|
"preboot=source $prevbl_initrd_start_addr:prebootscript\0" \
|
|
"bootcmd=source $prevbl_initrd_start_addr:bootscript\0"
|
|
|
|
/* Size of malloc() pool */
|
|
#define CONFIG_SYS_BOOTM_LEN SZ_64M
|
|
|
|
/* Monitor Command Prompt */
|
|
#define CONFIG_SYS_CBSIZE 512
|
|
#define CONFIG_SYS_MAXARGS 64
|
|
|
|
#endif
|