f26dcfc21c11ecf7110ac8d196f0991518fb40f2
[platform/kernel/u-boot.git] / include / configs / qemu-riscv.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Copyright (C) 2018, Bin Meng <bmeng.cn@gmail.com>
4  */
5
6 #ifndef __CONFIG_H
7 #define __CONFIG_H
8
9 #include <linux/sizes.h>
10
11 #ifdef CONFIG_SPL
12
13 #define CONFIG_SPL_BSS_START_ADDR       0x84000000
14 #define CONFIG_SPL_BSS_MAX_SIZE         0x00100000
15 #define CONFIG_SYS_SPL_MALLOC_START     0x84100000
16 #define CONFIG_SYS_SPL_MALLOC_SIZE      0x00100000
17
18 #endif
19
20 #define CONFIG_SYS_SDRAM_BASE           0x80000000
21 #define CONFIG_SYS_INIT_SP_ADDR         (CONFIG_SYS_SDRAM_BASE + SZ_2M)
22
23 #define CONFIG_SYS_BOOTM_LEN            SZ_64M
24
25 #define CONFIG_STANDALONE_LOAD_ADDR     0x80200000
26
27 #define RISCV_MMODE_TIMERBASE           0x2000000
28 #define RISCV_MMODE_TIMER_FREQ          1000000
29
30 #define RISCV_SMODE_TIMER_FREQ          1000000
31
32 /* Environment options */
33
34 #ifndef CONFIG_SPL_BUILD
35 #define BOOT_TARGET_DEVICES(func) \
36         func(QEMU, qemu, na) \
37         func(VIRTIO, virtio, 0) \
38         func(SCSI, scsi, 0) \
39         func(DHCP, dhcp, na)
40
41 #include <config_distro_bootcmd.h>
42
43 #define BOOTENV_DEV_QEMU(devtypeu, devtypel, instance) \
44         "bootcmd_qemu=" \
45                 "if env exists kernel_start; then " \
46                         "bootm ${kernel_start} - ${fdtcontroladdr};" \
47                 "fi;\0"
48
49 #define BOOTENV_DEV_NAME_QEMU(devtypeu, devtypel, instance) \
50         "qemu "
51
52 #define CONFIG_EXTRA_ENV_SETTINGS \
53         "fdt_high=0xffffffffffffffff\0" \
54         "initrd_high=0xffffffffffffffff\0" \
55         "kernel_addr_r=0x84000000\0" \
56         "kernel_comp_addr_r=0x88000000\0" \
57         "kernel_comp_size=0x4000000\0" \
58         "fdt_addr_r=0x8c000000\0" \
59         "scriptaddr=0x8c100000\0" \
60         "pxefile_addr_r=0x8c200000\0" \
61         "ramdisk_addr_r=0x8c300000\0" \
62         BOOTENV
63 #endif
64
65 #endif /* __CONFIG_H */