configs: meson64: add SCSI boot target
[platform/kernel/u-boot.git] / include / configs / meson64.h
1 /* SPDX-License-Identifier: GPL-2.0+ */
2 /*
3  * Configuration for Amlogic Meson 64bits SoCs
4  * (C) Copyright 2016 Beniamino Galvani <b.galvani@gmail.com>
5  */
6
7 #ifndef __MESON64_CONFIG_H
8 #define __MESON64_CONFIG_H
9
10 /* Generic Interrupt Controller Definitions */
11 #if (defined(CONFIG_MESON_AXG) || defined(CONFIG_MESON_G12A))
12 #define GICD_BASE                       0xffc01000
13 #define GICC_BASE                       0xffc02000
14 #else /* MESON GXL and GXBB */
15 #define GICD_BASE                       0xc4301000
16 #define GICC_BASE                       0xc4302000
17 #endif
18
19 /* For splashscreen */
20 #ifdef CONFIG_DM_VIDEO
21 #define STDOUT_CFG "vidconsole,serial"
22 #else
23 #define STDOUT_CFG "serial"
24 #endif
25
26 #ifdef CONFIG_USB_KEYBOARD
27 #define STDIN_CFG "usbkbd,serial"
28 #else
29 #define STDIN_CFG "serial"
30 #endif
31
32 #define CONFIG_CPU_ARMV8
33 #define CONFIG_REMAKE_ELF
34 #define CONFIG_SYS_MAXARGS              32
35 #define CONFIG_SYS_CBSIZE               1024
36
37 #define CONFIG_SYS_SDRAM_BASE           0
38 #define CONFIG_SYS_INIT_SP_ADDR         0x20000000
39 #define CONFIG_SYS_BOOTM_LEN            (64 << 20) /* 64 MiB */
40
41 /* ROM USB boot support, auto-execute boot.scr at scriptaddr */
42 #define BOOTENV_DEV_ROMUSB(devtypeu, devtypel, instance) \
43         "bootcmd_romusb=" \
44                 "if test \"${boot_source}\" = \"usb\" && " \
45                                 "test -n \"${scriptaddr}\"; then " \
46                         "echo '(ROM USB boot)'; " \
47                         "source ${scriptaddr}; " \
48                 "fi\0"
49
50 #define BOOTENV_DEV_NAME_ROMUSB(devtypeu, devtypel, instance)   \
51                 "romusb "
52
53 #ifdef CONFIG_CMD_USB
54 #define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0)
55 #else
56 #define BOOT_TARGET_DEVICES_USB(func)
57 #endif
58
59 #ifdef CONFIG_CMD_NVME
60         #define BOOT_TARGET_NVME(func) func(NVME, nvme, 0)
61 #else
62         #define BOOT_TARGET_NVME(func)
63 #endif
64
65 #ifdef CONFIG_CMD_SCSI
66         #define BOOT_TARGET_SCSI(func) func(SCSI, scsi, 0)
67 #else
68         #define BOOT_TARGET_SCSI(func)
69 #endif
70
71 #ifndef BOOT_TARGET_DEVICES
72 #define BOOT_TARGET_DEVICES(func) \
73         func(ROMUSB, romusb, na)  \
74         func(MMC, mmc, 0) \
75         func(MMC, mmc, 1) \
76         func(MMC, mmc, 2) \
77         BOOT_TARGET_DEVICES_USB(func) \
78         BOOT_TARGET_NVME(func) \
79         BOOT_TARGET_SCSI(func) \
80         func(PXE, pxe, na) \
81         func(DHCP, dhcp, na)
82 #endif
83
84 #include <config_distro_bootcmd.h>
85
86 #ifndef CONFIG_EXTRA_ENV_SETTINGS
87 #define CONFIG_EXTRA_ENV_SETTINGS \
88         "stdin=" STDIN_CFG "\0" \
89         "stdout=" STDOUT_CFG "\0" \
90         "stderr=" STDOUT_CFG "\0" \
91         "kernel_comp_addr_r=0x0d080000\0" \
92         "kernel_comp_size=0x2000000\0" \
93         "fdt_addr_r=0x08008000\0" \
94         "scriptaddr=0x08000000\0" \
95         "kernel_addr_r=0x08080000\0" \
96         "pxefile_addr_r=0x01080000\0" \
97         "fdtoverlay_addr_r=0x01000000\0" \
98         "ramdisk_addr_r=0x13000000\0" \
99         "fdtfile=amlogic/" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
100         BOOTENV
101 #endif
102
103
104 #endif /* __MESON64_CONFIG_H */