xref: /openbmc/u-boot/include/configs/lsxl.h (revision 0a6eac842ea288411309cebdc4e72ff59ea6c5ee)
1 /*
2  * Copyright (c) 2012 Michael Walle
3  * Michael Walle <michael@walle.cc>
4  *
5  * SPDX-License-Identifier:	GPL-2.0+
6  */
7 
8 #ifndef _CONFIG_LSXL_H
9 #define _CONFIG_LSXL_H
10 
11 /*
12  * Version number information
13  */
14 #if defined(CONFIG_LSCHLV2)
15 #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lschl.cfg
16 #define CONFIG_MACH_TYPE 3006
17 #define CONFIG_SYS_TCLK 166666667 /* 166 MHz */
18 #elif defined(CONFIG_LSXHL)
19 #define CONFIG_SYS_KWD_CONFIG $(CONFIG_BOARDDIR)/kwbimage-lsxhl.cfg
20 #define CONFIG_MACH_TYPE 2663
21 /* CONFIG_SYS_TCLK is 200000000 by default */
22 #else
23 #error "unknown board"
24 #endif
25 
26 /*
27  * General configuration options
28  */
29 #define CONFIG_FEROCEON_88FR131		/* CPU Core subversion */
30 #define CONFIG_KW88F6281		/* SOC Name */
31 
32 #define CONFIG_SKIP_LOWLEVEL_INIT	/* disable board lowlevel_init */
33 #define CONFIG_MISC_INIT_R
34 #define CONFIG_SHOW_BOOT_PROGRESS
35 
36 #define CONFIG_KIRKWOOD_GPIO
37 
38 #define CONFIG_SYS_NO_FLASH
39 #define CONFIG_SYS_CONSOLE_INFO_QUIET
40 
41 /*
42  * Enable u-boot API for standalone programs.
43  */
44 #define CONFIG_API
45 
46 /*
47  * Commands configuration
48  */
49 #define CONFIG_CMD_ENV
50 #define CONFIG_CMD_IDE
51 
52 #define CONFIG_DOS_PARTITION
53 #define CONFIG_EFI_PARTITION
54 
55 /*
56  * mv-common.h should be defined after CMD configs since it used them
57  * to enable certain macros
58  */
59 #include "mv-common.h"
60 
61 /* loading initramfs images without uimage header */
62 #define CONFIG_SUPPORT_RAW_INITRD
63 
64 /* ST M25P40 */
65 #undef CONFIG_ENV_SPI_MAX_HZ
66 #define CONFIG_ENV_SPI_MAX_HZ		25000000
67 #undef CONFIG_SF_DEFAULT_SPEED
68 #define CONFIG_SF_DEFAULT_SPEED		25000000
69 
70 /*
71  *  Environment variables configurations
72  */
73 #ifdef CONFIG_SPI_FLASH
74 #define CONFIG_SYS_MAX_FLASH_BANKS	1
75 #define CONFIG_SYS_MAX_FLASH_SECT	8
76 #define CONFIG_ENV_IS_IN_SPI_FLASH	1
77 #define CONFIG_ENV_SECT_SIZE		0x10000 /* 64K */
78 #else
79 #define CONFIG_ENV_IS_NOWHERE
80 #endif
81 
82 #define CONFIG_ENV_SIZE			0x10000 /* 64k */
83 #define CONFIG_ENV_OFFSET		0x70000 /* env starts here */
84 
85 /*
86  * Default environment variables
87  */
88 #define CONFIG_LOADADDR		0x00800000
89 #define CONFIG_BOOTCOMMAND	"run bootcmd_${bootsource}"
90 #define CONFIG_BOOTARGS		"console=ttyS0,115200 root=/dev/sda2"
91 
92 #if defined(CONFIG_LSXHL)
93 #define CONFIG_FDTFILE "kirkwood-lsxhl.dtb"
94 #elif defined(CONFIG_LSCHLV2)
95 #define CONFIG_FDTFILE "kirkwood-lschlv2.dtb"
96 #else
97 #error "Unsupported board"
98 #endif
99 
100 #define CONFIG_EXTRA_ENV_SETTINGS					\
101 	"bootsource=legacy\0"						\
102 	"hdpart=0:1\0"							\
103 	"kernel_addr=0x00800000\0"					\
104 	"ramdisk_addr=0x01000000\0"					\
105 	"fdt_addr=0x00ff0000\0"						\
106 	"bootcmd_legacy=ide reset "					\
107 		"&& load ide ${hdpart} ${kernel_addr} /uImage.buffalo "	\
108 		"&& load ide ${hdpart} ${ramdisk_addr} /initrd.buffalo "\
109 		"&& bootm ${kernel_addr} ${ramdisk_addr}\0"		\
110 	"bootcmd_net=bootp ${kernel_addr} vmlinuz "			\
111 		"&& tftpboot ${ramdisk_addr} initrd.img "		\
112 		"&& setenv ramdisk_len ${filesize} "			\
113 		"&& tftpboot ${fdt_addr} " CONFIG_FDTFILE " "		\
114 		"&& bootz ${kernel_addr} "				\
115 			"${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0"	\
116 	"bootcmd_hdd=ide reset "					\
117 		"&& load ide ${hdpart} ${kernel_addr} /vmlinuz "	\
118 		"&& load ide ${hdpart} ${ramdisk_addr} /initrd.img "	\
119 		"&& setenv ramdisk_len ${filesize} "			\
120 		"&& load ide ${hdpart} ${fdt_addr} /dtb "		\
121 		"&& bootz ${kernel_addr} "				\
122 			"${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0"	\
123 	"bootcmd_usb=usb start "					\
124 		"&& load usb 0:1 ${kernel_addr} /vmlinuz "		\
125 		"&& load usb 0:1 ${ramdisk_addr} /initrd.img "		\
126 		"&& setenv ramdisk_len ${filesize} "			\
127 		"&& load usb 0:1 ${fdt_addr} " CONFIG_FDTFILE " "	\
128 		"&& bootz ${kernel_addr} "				\
129 			"${ramdisk_addr}:${ramdisk_len} ${fdt_addr}\0"	\
130 	"bootcmd_rescue=run config_nc_dhcp; run nc\0"			\
131 	"eraseenv=sf probe 0 "						\
132 		"&& sf erase " __stringify(CONFIG_ENV_OFFSET)		\
133 			" +" __stringify(CONFIG_ENV_SIZE) "\0"		\
134 	"config_nc_dhcp=setenv autoload_old ${autoload}; "		\
135 		"setenv autoload no "					\
136 		"&& bootp "						\
137 		"&& setenv ncip "					\
138 		"&& setenv autoload ${autoload_old}; "			\
139 		"setenv autoload_old\0"					\
140 	"standard_env=setenv ipaddr; setenv netmask; setenv serverip; "	\
141 		"setenv ncip; setenv gatewayip; setenv ethact; "	\
142 		"setenv bootfile; setenv dnsip; "			\
143 		"setenv bootsource legacy; run ser\0"			\
144 	"restore_env=run standard_env; saveenv; reset\0"		\
145 	"ser=setenv stdin serial; setenv stdout serial; "		\
146 		"setenv stderr serial\0"				\
147 	"nc=setenv stdin nc; setenv stdout nc; setenv stderr nc\0"	\
148 	"stdin=serial\0"						\
149 	"stdout=serial\0"						\
150 	"stderr=serial\0"
151 
152 /*
153  * Ethernet Driver configuration
154  */
155 #ifdef CONFIG_CMD_NET
156 #define CONFIG_MVGBE_PORTS		{0, 1} /* enable port 1 only */
157 #define CONFIG_PHY_BASE_ADR		7
158 #undef CONFIG_RESET_PHY_R
159 #endif /* CONFIG_CMD_NET */
160 
161 #ifdef CONFIG_CMD_IDE
162 #undef CONFIG_IDE_LED
163 #undef CONFIG_SYS_IDE_MAXBUS
164 #define CONFIG_SYS_IDE_MAXBUS		1
165 #undef CONFIG_SYS_IDE_MAXDEVICE
166 #define CONFIG_SYS_IDE_MAXDEVICE	1
167 #define CONFIG_SYS_ATA_IDE0_OFFSET	MV_SATA_PORT0_OFFSET
168 #define CONFIG_SYS_64BIT_LBA
169 #endif
170 
171 #endif /* _CONFIG_LSXL_H */
172