mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-12-12 06:12:58 +00:00
66ffe5783b
QEMU embeds the location of the kernel image in the device tree. Store this address in the environment as variable kernel_start. It is used in the board-local distro boot command QEMU to boot the kernel with the U-Boot device tree. The QEMU boot command is added as the first boot target device. Signed-off-by: Lukas Auer <lukas.auer@aisec.fraunhofer.de> Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Alexander Graf <agraf@suse.de>
49 lines
1.1 KiB
C
49 lines
1.1 KiB
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
|
|
*/
|
|
|
|
#ifndef __CONFIG_H
|
|
#define __CONFIG_H
|
|
|
|
#include <linux/sizes.h>
|
|
|
|
#define CONFIG_SYS_SDRAM_BASE 0x80000000
|
|
#define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_SDRAM_BASE + SZ_2M)
|
|
|
|
#define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_SDRAM_BASE + SZ_2M)
|
|
|
|
#define CONFIG_SYS_MALLOC_LEN SZ_8M
|
|
|
|
#define CONFIG_SYS_BOOTM_LEN SZ_16M
|
|
|
|
/* Environment options */
|
|
#define CONFIG_ENV_SIZE SZ_4K
|
|
|
|
#define BOOT_TARGET_DEVICES(func) \
|
|
func(QEMU, qemu, na) \
|
|
func(VIRTIO, virtio, 0) \
|
|
func(DHCP, dhcp, na)
|
|
|
|
#include <config_distro_bootcmd.h>
|
|
|
|
#define BOOTENV_DEV_QEMU(devtypeu, devtypel, instance) \
|
|
"bootcmd_qemu=" \
|
|
"if env exists kernel_start; then " \
|
|
"bootm ${kernel_start} - ${fdtcontroladdr};" \
|
|
"fi;\0"
|
|
|
|
#define BOOTENV_DEV_NAME_QEMU(devtypeu, devtypel, instance) \
|
|
"qemu "
|
|
|
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
|
"fdt_high=0xffffffffffffffff\0" \
|
|
"initrd_high=0xffffffffffffffff\0" \
|
|
"kernel_addr_r=0x81000000\0" \
|
|
"fdt_addr_r=0x82000000\0" \
|
|
"scriptaddr=0x82100000\0" \
|
|
"pxefile_addr_r=0x82200000\0" \
|
|
"ramdisk_addr_r=0x82300000\0" \
|
|
BOOTENV
|
|
|
|
#endif /* __CONFIG_H */
|