xref: /openbmc/u-boot/include/configs/meson64.h (revision 5396b2a9)
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)
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 CONFIG_VIDEO_BMP_RLE8
22 #define CONFIG_BMP_16BPP
23 #define CONFIG_BMP_24BPP
24 #define CONFIG_BMP_32BPP
25 #define CONFIG_SPLASH_SCREEN
26 #define CONFIG_SPLASH_SCREEN_ALIGN
27 #define STDOUT_CFG "vidconsole,serial"
28 #else
29 #define STDOUT_CFG "serial"
30 #endif
31 
32 #ifdef CONFIG_USB_KEYBOARD
33 #define STDIN_CFG "usbkbd,serial"
34 #define CONFIG_PREBOOT "usb start"
35 #else
36 #define STDIN_CFG "serial"
37 #endif
38 
39 #define CONFIG_CPU_ARMV8
40 #define CONFIG_REMAKE_ELF
41 #define CONFIG_ENV_SIZE			0x2000
42 #define CONFIG_SYS_MAXARGS		32
43 #define CONFIG_SYS_MALLOC_LEN		(32 << 20)
44 #define CONFIG_SYS_CBSIZE		1024
45 
46 #define CONFIG_SYS_SDRAM_BASE		0
47 #define CONFIG_SYS_INIT_SP_ADDR		0x20000000
48 #define CONFIG_SYS_LOAD_ADDR		CONFIG_SYS_TEXT_BASE
49 #define CONFIG_SYS_BOOTM_LEN		(64 << 20) /* 64 MiB */
50 
51 /* ROM USB boot support, auto-execute boot.scr at scriptaddr */
52 #define BOOTENV_DEV_ROMUSB(devtypeu, devtypel, instance) \
53 	"bootcmd_romusb=" \
54 		"if test \"${boot_source}\" = \"usb\" && " \
55 				"test -n \"${scriptaddr}\"; then " \
56 			"echo '(ROM USB boot)'; " \
57 			"source ${scriptaddr}; " \
58 		"fi\0"
59 
60 #define BOOTENV_DEV_NAME_ROMUSB(devtypeu, devtypel, instance)	\
61 		"romusb "
62 
63 #ifdef CONFIG_CMD_USB
64 #define BOOT_TARGET_DEVICES_USB(func) func(USB, usb, 0)
65 #else
66 #define BOOT_TARGET_DEVICES_USB(func)
67 #endif
68 
69 #ifndef BOOT_TARGET_DEVICES
70 #define BOOT_TARGET_DEVICES(func) \
71 	func(ROMUSB, romusb, na)  \
72 	func(MMC, mmc, 0) \
73 	func(MMC, mmc, 1) \
74 	func(MMC, mmc, 2) \
75 	BOOT_TARGET_DEVICES_USB(func) \
76 	func(PXE, pxe, na) \
77 	func(DHCP, dhcp, na)
78 #endif
79 
80 #ifndef CONFIG_EXTRA_ENV_SETTINGS
81 #define CONFIG_EXTRA_ENV_SETTINGS \
82 	"stdin=" STDIN_CFG "\0" \
83 	"stdout=" STDOUT_CFG "\0" \
84 	"stderr=" STDOUT_CFG "\0" \
85 	"fdt_addr_r=0x08008000\0" \
86 	"scriptaddr=0x08000000\0" \
87 	"kernel_addr_r=0x08080000\0" \
88 	"pxefile_addr_r=0x01080000\0" \
89 	"ramdisk_addr_r=0x13000000\0" \
90 	"fdtfile=amlogic/" CONFIG_DEFAULT_DEVICE_TREE ".dtb\0" \
91 	BOOTENV
92 #endif
93 
94 #include <config_distro_bootcmd.h>
95 
96 #endif /* __MESON64_CONFIG_H */
97