1 /* SPDX-License-Identifier: GPL-2.0+ */
2 
3 #ifndef __BCM_NS_H
4 #define __BCM_NS_H
5 
6 #include <linux/sizes.h>
7 
8 /* Physical Memory Map */
9 #define V2M_BASE			0x00000000
10 #define PHYS_SDRAM_1			V2M_BASE
11 
12 #define CFG_SYS_SDRAM_BASE		PHYS_SDRAM_1
13 
14 /* Called "periph_clk" in Linux, used by the global timer */
15 #define CFG_SYS_HZ_CLOCK		500000000
16 
17 /* Called "iprocslow" in Linux */
18 #define CFG_SYS_NS16550_CLK		125000000
19 
20 /* console configuration */
21 #define CONSOLE_ARGS "console_args=console=ttyS0,115200n8\0"
22 #define MAX_CPUS "max_cpus=maxcpus=2\0"
23 #define EXTRA_ARGS "extra_args=earlycon=uart8250,mmio32,0x18000300\0"
24 
25 #define BASE_ARGS "${console_args} ${extra_args} ${pcie_args}"	\
26 		  " ${max_cpus}  ${log_level} ${reserved_mem}"
27 #define SETBOOTARGS "setbootargs=setenv bootargs " BASE_ARGS "\0"
28 
29 #define KERNEL_LOADADDR_CFG \
30 	"loadaddr=0x01000000\0" \
31 	"dtb_loadaddr=0x02000000\0"
32 
33 /*
34  * Hardcoded for the only boards we support, if you add more
35  * boards, add a more clever bootcmd!
36  */
37 #define NS_BOOTCMD "bootcmd_dlink_dir8xxl=seama 0x00fe0000; go 0x01000000"
38 
39 #define ARCH_ENV_SETTINGS \
40 	CONSOLE_ARGS \
41 	MAX_CPUS \
42 	EXTRA_ARGS \
43 	KERNEL_LOADADDR_CFG \
44 	NS_BOOTCMD
45 
46 #define CFG_EXTRA_ENV_SETTINGS \
47 	ARCH_ENV_SETTINGS
48 
49 #endif /* __BCM_NS_H */
50