1 /*
2  * (C) Copyright 2015
3  * Dirk Eibach,  Guntermann & Drunck GmbH, eibach@gdsys.de
4  *
5  *
6  * SPDX-License-Identifier:	GPL-2.0+
7  */
8 
9 #ifndef __CONFIG_H
10 #define __CONFIG_H
11 
12 /*
13  * DDR Setup
14  */
15 #define CONFIG_SYS_SDRAM_BASE		0x00000000 /* DDR is system memory */
16 /* TODO: Check: Can this be unified with CONFIG_SYS_SDRAM_BASE? */
17 #define CONFIG_SYS_DDR_SDRAM_BASE	CONFIG_SYS_SDRAM_BASE
18 
19 /*
20  * Memory test
21  * TODO: Migrate!
22  */
23 
24 /*
25  * The reserved memory
26  */
27 #define CONFIG_SYS_MONITOR_BASE	CONFIG_SYS_TEXT_BASE /* start of monitor */
28 
29 #define CONFIG_SYS_MONITOR_LEN	(512 * 1024) /* Reserve 512 kB for Mon */
30 #define CONFIG_SYS_MALLOC_LEN	(512 * 1024) /* Reserved for malloc */
31 
32 /*
33  * Initial RAM Base Address Setup
34  */
35 #define CONFIG_SYS_INIT_RAM_LOCK
36 #define CONFIG_SYS_INIT_RAM_ADDR	0xE6000000 /* Initial RAM address */
37 #define CONFIG_SYS_INIT_RAM_SIZE	0x1000 /* Size of used area in RAM */
38 #define CONFIG_SYS_GBL_DATA_OFFSET	\
39 	(CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
40 
41 /*
42  * FLASH on the Local Bus
43  */
44 #define CONFIG_SYS_FLASH_BASE		0xFE000000 /* FLASH base address */
45 #define CONFIG_SYS_FLASH_SIZE		8 /* FLASH size is up to 8M */
46 
47 #define CONFIG_SYS_MAX_FLASH_BANKS	1 /* number of banks */
48 #define CONFIG_SYS_MAX_FLASH_SECT	135
49 
50 #define CONFIG_SYS_BAUDRATE_TABLE  \
51 	{300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200}
52 
53 /*
54  * Environment
55  */
56 
57 #define CONFIG_LOADS_ECHO		/* echo on for serial download */
58 #define CONFIG_SYS_LOADS_BAUD_CHANGE	/* allow baudrate change */
59 
60 /*
61  * Miscellaneous configurable options
62  */
63 #define CONFIG_SYS_LOAD_ADDR		0x2000000 /* default load address */
64 #define CONFIG_SYS_HZ		1000	/* decrementer freq: 1ms ticks */
65 
66 #define CONFIG_SYS_CBSIZE	1024 /* Console I/O Buffer Size */
67 
68 /* Print Buffer Size */
69 #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
70 #define CONFIG_SYS_MAXARGS	16	/* max number of command args */
71 #define CONFIG_SYS_BARGSIZE	CONFIG_SYS_CBSIZE
72 
73 /*
74  * For booting Linux, the board info and command line data
75  * have to be in the first 256 MB of memory, since this is
76  * the maximum mapped by the Linux kernel during initialization.
77  */
78 #define CONFIG_SYS_BOOTMAPSZ	(256 << 20) /* Initial Memory map for Linux */
79 
80 /*
81  * Environment Configuration
82  */
83 
84 #define CONFIG_HAS_ETH0
85 #define CONFIG_HAS_ETH1
86 
87 #define CONFIG_LOADADDR	800000	/* default location for tftp and bootm */
88 
89 /* TODO: Turn into string option and migrate to Kconfig */
90 #define CONFIG_HOSTNAME		"gazerbeam"
91 #define CONFIG_ROOTPATH		"/opt/nfsroot"
92 #define CONFIG_BOOTFILE		"uImage"
93 
94 #define CONFIG_EXTRA_ENV_SETTINGS					\
95 	"netdev=eth0\0"							\
96 	"consoledev=ttyS1\0"						\
97 	"u-boot=u-boot.bin\0"						\
98 	"kernel_addr=1000000\0"					\
99 	"fdt_addr=C00000\0"						\
100 	"fdtfile=hrcon.dtb\0"				\
101 	"load=tftp ${loadaddr} ${u-boot}\0"				\
102 	"update=protect off " __stringify(CONFIG_SYS_MONITOR_BASE)	\
103 		" +${filesize};era " __stringify(CONFIG_SYS_MONITOR_BASE)\
104 		" +${filesize};cp.b ${fileaddr} "			\
105 		__stringify(CONFIG_SYS_MONITOR_BASE) " ${filesize}\0"	\
106 	"upd=run load update\0"						\
107 
108 #define CONFIG_NFSBOOTCOMMAND						\
109 	"setenv bootargs root=/dev/nfs rw "				\
110 	"nfsroot=$serverip:$rootpath "					\
111 	"ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \
112 	"console=$consoledev,$baudrate $othbootargs;"			\
113 	"tftp ${kernel_addr} $bootfile;"				\
114 	"tftp ${fdt_addr} $fdtfile;"					\
115 	"bootm ${kernel_addr} - ${fdt_addr}"
116 
117 #define CONFIG_MMCBOOTCOMMAND						\
118 	"setenv bootargs root=/dev/mmcblk0p3 rw rootwait "		\
119 	"console=$consoledev,$baudrate $othbootargs;"			\
120 	"ext2load mmc 0:2 ${kernel_addr} $bootfile;"			\
121 	"ext2load mmc 0:2 ${fdt_addr} $fdtfile;"			\
122 	"bootm ${kernel_addr} - ${fdt_addr}"
123 
124 #define CONFIG_BOOTCOMMAND		CONFIG_MMCBOOTCOMMAND
125 
126 #endif	/* __CONFIG_H */
127