865055aa31cd6eb9d7dc9ce5b23ffe268ee682fd
[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 #ifndef CONFIG_SYS_MALLOC_LEN
36 #define CONFIG_SYS_MALLOC_LEN           (32 << 20)
37 #endif
38 #define CONFIG_SYS_CBSIZE               1024
39
40 #define CONFIG_SYS_SDRAM_BASE           0
41 #define CONFIG_SYS_INIT_SP_ADDR         0x20000000
42 #define CONFIG_SYS_BOOTM_LEN            (64 << 20) /* 64 MiB */
43
44 /* ROM USB boot support, auto-execute boot.scr at scriptaddr */
45 #define BOOTENV_DEV_ROMUSB(devtypeu, devtypel, instance) \
46         "bootcmd_romusb=" \
47                 "if test \"${boot_source}\" = \"usb\" && " \
48                                 "test -n \"${scriptaddr}\"; then " \
49                         "echo '(ROM USB boot)'; " \
50                         "source ${scriptaddr}; " \
51                 "fi\0"
52
53 #define BOOTENV_DEV_NAME_ROMUSB(devtypeu, devtypel, instance)   \
54                 "romusb "
55
56 #ifdef CONFIG_CMD_USB
57 #define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0)
58 #else
59 #define BOOT_TARGET_DEVICES_USB(func)
60 #endif
61
62 #ifdef CONFIG_CMD_NVME
63         #define BOOT_TARGET_NVME(func) func(NVME, nvme, 0)
64 #else
65         #define BOOT_TARGET_NVME(func)
66 #endif
67
68 #ifndef BOOT_TARGET_DEVICES
69 #define BOOT_TARGET_DEVICES(func) \
70         func(ROMUSB, romusb, na)  \
71         func(MMC, mmc, 0) \
72         func(MMC, mmc, 1) \
73         func(MMC, mmc, 2) \
74         BOOT_TARGET_DEVICES_USB(func) \
75         BOOT_TARGET_NVME(func) \
76         func(PXE, pxe, na) \
77         func(DHCP, dhcp, na)
78 #endif
79
80 #include <config_distro_bootcmd.h>
81
82 #ifndef CONFIG_EXTRA_ENV_SETTINGS
83 #define CONFIG_EXTRA_ENV_SETTINGS \
84         "stdin=" STDIN_CFG "\0" \
85         "stdout=" STDOUT_CFG "\0" \
86         "stderr=" STDOUT_CFG "\0" \
87         "kernel_comp_addr_r=0x0d080000\0" \
88         "kernel_comp_size=0x2000000\0" \
89         "fdt_addr_r=0x08008000\0" \
90         "scriptaddr=0x08000000\0" \
91         "kernel_addr_r=0x08080000\0" \
92         "pxefile_addr_r=0x01080000\0" \
93         "fdtoverlay_addr_r=0x01000000\0" \
94         "ramdisk_addr_r=0x13000000\0" \
95         "fdtfile=amlogic/" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
96         BOOTENV
97 #endif
98
99
100 #endif /* __MESON64_CONFIG_H */