mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-05 04:13:19 +09:00
![AKASHI Takahiro](/assets/img/avatar_default.png)
If U-Boot is loaded and started from TF-A (you need to change SYS_TEXT_BASE to 0x60000000), it will hang up at flash initialization. If secure mode is off (default, or -machine virt,secure=off) at qemu, it will provide dtb with two flash memory banks: flash@0 { bank-width = <0x4>; reg = <0x0 0x0 0x0 0x4000000 0x0 0x4000000 0x0 0x4000000>; compatible = "cfi-flash"; }; If secure mode is on, on the other hand, qemu provides dtb with 1 bank: flash@0 { bank-width = <0x4>; reg = <0x0 0x4000000 0x0 0x4000000>; compatible = "cfi-flash"; }; As a result, flash_init()/flash_get_size() will eventually fail. With this patch applied, relevant CONFIG values are modified. Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Tested-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
59 lines
1.5 KiB
C
59 lines
1.5 KiB
C
/* SPDX-License-Identifier: GPL-2.0+ */
|
|
/*
|
|
* Copyright (c) 2017 Tuomas Tynkkynen
|
|
*/
|
|
|
|
#ifndef __CONFIG_H
|
|
#define __CONFIG_H
|
|
|
|
#include <linux/sizes.h>
|
|
|
|
/* Physical memory map */
|
|
|
|
#define CONFIG_SYS_SDRAM_BASE 0x40000000
|
|
|
|
/* The DTB generated by QEMU is placed at start of RAM, stay away from there */
|
|
#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_16M
|
|
|
|
/* For timer, QEMU emulates an ARMv7/ARMv8 architected timer */
|
|
#define CONFIG_SYS_HZ 1000
|
|
|
|
/* Environment options */
|
|
#define CONFIG_ENV_ADDR 0x4000000
|
|
#define CONFIG_ENV_SIZE SZ_256K
|
|
|
|
#define BOOT_TARGET_DEVICES(func) \
|
|
func(USB, usb, 0) \
|
|
func(SCSI, scsi, 0) \
|
|
func(VIRTIO, virtio, 0) \
|
|
func(DHCP, dhcp, na)
|
|
|
|
#include <config_distro_bootcmd.h>
|
|
|
|
#define CONFIG_PREBOOT "pci enum"
|
|
#define CONFIG_EXTRA_ENV_SETTINGS \
|
|
"fdt_high=0xffffffff\0" \
|
|
"initrd_high=0xffffffff\0" \
|
|
"fdt_addr=0x40000000\0" \
|
|
"scriptaddr=0x40200000\0" \
|
|
"pxefile_addr_r=0x40300000\0" \
|
|
"kernel_addr_r=0x40400000\0" \
|
|
"ramdisk_addr_r=0x44000000\0" \
|
|
BOOTENV
|
|
|
|
#define CONFIG_SYS_CBSIZE 512
|
|
|
|
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
|
|
#ifdef CONFIG_TFABOOT
|
|
#define CONFIG_SYS_FLASH_BASE 0x4000000
|
|
#define CONFIG_SYS_MAX_FLASH_BANKS 1
|
|
#else
|
|
#define CONFIG_SYS_FLASH_BASE 0x0
|
|
#define CONFIG_SYS_MAX_FLASH_BANKS 2
|
|
#endif
|
|
#define CONFIG_SYS_MAX_FLASH_SECT 256 /* Sector: 256K, Bank: 64M */
|
|
|
|
#endif /* __CONFIG_H */
|