]>
Commit | Line | Data |
---|---|---|
566c9c16 VK |
1 | /* |
2 | * (C) Copyright 2009 | |
3 | * Vipin Kumar, STMicroelectronics, <[email protected]> | |
4 | * | |
5 | * See file CREDITS for list of people who contributed to this | |
6 | * project. | |
7 | * | |
8 | * This program is free software; you can redistribute it and/or | |
9 | * modify it under the terms of the GNU General Public License as | |
10 | * published by the Free Software Foundation; either version 2 of | |
11 | * the License, or (at your option) any later version. | |
12 | * | |
13 | * This program is distributed in the hope that it will be useful, | |
14 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
15 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
16 | * GNU General Public License for more details. | |
17 | * | |
18 | * You should have received a copy of the GNU General Public License | |
19 | * along with this program; if not, write to the Free Software | |
20 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, | |
21 | * MA 02111-1307 USA | |
22 | */ | |
23 | ||
24 | #ifndef _SPEAR_COMMON_H | |
25 | #define _SPEAR_COMMON_H | |
26 | /* | |
27 | * Common configurations used for both spear3xx as well as spear6xx | |
28 | */ | |
29 | ||
deb00562 VK |
30 | /* Ethernet driver configuration */ |
31 | #define CONFIG_MII | |
32 | #define CONFIG_DESIGNWARE_ETH | |
33 | #define CONFIG_DW_SEARCH_PHY | |
34 | #define CONFIG_DW0_PHY 1 | |
35 | #define CONFIG_NET_MULTI | |
36 | #define CONFIG_PHY_RESET_DELAY 10000 /* in usec */ | |
37 | ||
566c9c16 | 38 | /* USBD driver configuration */ |
2721551a | 39 | #define CONFIG_DW_UDC |
566c9c16 VK |
40 | #define CONFIG_USB_DEVICE |
41 | #define CONFIG_USB_TTY | |
42 | ||
43 | #define CONFIG_USBD_PRODUCT_NAME "SPEAr SoC" | |
44 | #define CONFIG_USBD_MANUFACTURER "ST Microelectronics" | |
45 | ||
2721551a | 46 | #if defined(CONFIG_USB_TTY) |
566c9c16 | 47 | #define CONFIG_EXTRA_ENV_USBTTY "usbtty=cdc_acm\0" |
2721551a | 48 | #endif |
566c9c16 VK |
49 | |
50 | /* I2C driver configuration */ | |
51 | #define CONFIG_HARD_I2C | |
031ed2fa | 52 | #define CONFIG_DW_I2C |
566c9c16 VK |
53 | #define CONFIG_SYS_I2C_SPEED 400000 |
54 | #define CONFIG_SYS_I2C_SLAVE 0x02 | |
55 | ||
56 | #define CONFIG_I2C_CHIPADDRESS 0x50 | |
57 | ||
58 | /* Timer, HZ specific defines */ | |
59 | #define CONFIG_SYS_HZ (1000) | |
60 | #define CONFIG_SYS_HZ_CLOCK (8300000) | |
61 | ||
62 | /* Flash configuration */ | |
63 | #if defined(CONFIG_FLASH_PNOR) | |
64 | #define CONFIG_SPEAR_EMI 1 | |
65 | #else | |
f3fcf92d | 66 | #define CONFIG_ST_SMI |
566c9c16 VK |
67 | #endif |
68 | ||
f3fcf92d | 69 | #if defined(CONFIG_ST_SMI) |
566c9c16 VK |
70 | |
71 | #define CONFIG_SYS_MAX_FLASH_BANKS 2 | |
72 | #define CONFIG_SYS_FLASH_BASE (0xF8000000) | |
73 | #define CONFIG_SYS_CS1_FLASH_BASE (0xF9000000) | |
74 | #define CONFIG_SYS_FLASH_BANK_SIZE (0x01000000) | |
75 | #define CONFIG_SYS_FLASH_ADDR_BASE {CONFIG_SYS_FLASH_BASE, \ | |
76 | CONFIG_SYS_CS1_FLASH_BASE} | |
77 | #define CONFIG_SYS_MAX_FLASH_SECT 128 | |
78 | ||
79 | #define CONFIG_SYS_FLASH_EMPTY_INFO 1 | |
80 | #define CONFIG_SYS_FLASH_ERASE_TOUT (3 * CONFIG_SYS_HZ) | |
81 | #define CONFIG_SYS_FLASH_WRITE_TOUT (3 * CONFIG_SYS_HZ) | |
82 | ||
83 | #endif | |
84 | ||
85 | /* | |
86 | * Serial Configuration (PL011) | |
87 | * CONFIG_PL01x_PORTS is defined in specific files | |
88 | */ | |
89 | #define CONFIG_PL011_SERIAL | |
90 | #define CONFIG_PL011_CLOCK (48 * 1000 * 1000) | |
91 | #define CONFIG_CONS_INDEX 0 | |
92 | #define CONFIG_BAUDRATE 115200 | |
93 | #define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, \ | |
94 | 57600, 115200 } | |
95 | ||
96 | #define CONFIG_SYS_LOADS_BAUD_CHANGE | |
97 | ||
98 | /* NAND FLASH Configuration */ | |
1fa943b9 | 99 | #define CONFIG_SYS_NAND_SELF_INIT |
a39fcfb2 SH |
100 | #define CONFIG_MTD_DEVICE |
101 | #define CONFIG_MTD_PARTITIONS | |
1fa943b9 | 102 | #define CONFIG_NAND_FSMC |
566c9c16 VK |
103 | #define CONFIG_SYS_MAX_NAND_DEVICE 1 |
104 | #define CONFIG_MTD_NAND_VERIFY_WRITE 1 | |
105 | ||
106 | /* | |
107 | * Command support defines | |
108 | */ | |
109 | #define CONFIG_CMD_I2C | |
110 | #define CONFIG_CMD_NAND | |
111 | #define CONFIG_CMD_ENV | |
112 | #define CONFIG_CMD_MEMORY | |
113 | #define CONFIG_CMD_RUN | |
114 | #define CONFIG_CMD_SAVES | |
deb00562 VK |
115 | #define CONFIG_CMD_NET |
116 | #define CONFIG_CMD_MII | |
117 | #define CONFIG_CMD_PING | |
118 | #define CONFIG_CMD_DHCP | |
566c9c16 VK |
119 | |
120 | /* This must be included AFTER the definition of CONFIG_COMMANDS (if any) */ | |
121 | #include <config_cmd_default.h> | |
566c9c16 VK |
122 | |
123 | /* | |
124 | * Default Environment Varible definitions | |
125 | */ | |
126 | #if defined(CONFIG_SPEAR_USBTTY) | |
127 | #define CONFIG_BOOTDELAY -1 | |
128 | #else | |
129 | #define CONFIG_BOOTDELAY 1 | |
130 | #endif | |
131 | ||
132 | #define CONFIG_ENV_OVERWRITE | |
133 | ||
134 | /* | |
135 | * U-Boot Environment placing definitions. | |
136 | */ | |
137 | #if defined(CONFIG_ENV_IS_IN_FLASH) | |
f3fcf92d | 138 | #ifdef CONFIG_ST_SMI |
566c9c16 VK |
139 | /* |
140 | * Environment is in serial NOR flash | |
141 | */ | |
142 | #define CONFIG_SYS_MONITOR_LEN 0x00040000 | |
143 | #define CONFIG_ENV_SECT_SIZE 0x00010000 | |
144 | #define CONFIG_FSMTDBLK "/dev/mtdblock8 " | |
145 | ||
146 | #define CONFIG_BOOTCOMMAND "bootm 0xf8050000" | |
147 | ||
148 | #elif defined(CONFIG_SPEAR_EMI) | |
149 | /* | |
150 | * Environment is in parallel NOR flash | |
151 | */ | |
152 | #define CONFIG_SYS_MONITOR_LEN 0x00060000 | |
153 | #define CONFIG_ENV_SECT_SIZE 0x00020000 | |
154 | #define CONFIG_FSMTDBLK "/dev/mtdblock3 " | |
155 | ||
156 | #define CONFIG_BOOTCOMMAND "cp.b 0x50080000 0x1600000 " \ | |
157 | "0x4C0000; bootm 0x1600000" | |
158 | #endif | |
159 | ||
160 | #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE | |
161 | #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE + \ | |
162 | CONFIG_SYS_MONITOR_LEN) | |
163 | #elif defined(CONFIG_ENV_IS_IN_NAND) | |
164 | /* | |
165 | * Environment is in NAND | |
166 | */ | |
167 | ||
168 | #define CONFIG_ENV_OFFSET 0x60000 | |
169 | #define CONFIG_ENV_RANGE 0x10000 | |
170 | #define CONFIG_FSMTDBLK "/dev/mtdblock12 " | |
171 | ||
172 | #define CONFIG_BOOTCOMMAND "nand read.jffs2 0x1600000 " \ | |
173 | "0x80000 0x4C0000; " \ | |
174 | "bootm 0x1600000" | |
175 | #endif | |
176 | ||
177 | #define CONFIG_BOOTARGS_NFS "root=/dev/nfs ip=dhcp " \ | |
178 | "console=ttyS0 init=/bin/sh" | |
179 | #define CONFIG_BOOTARGS "console=ttyS0 mem=128M " \ | |
180 | "root="CONFIG_FSMTDBLK \ | |
181 | "rootfstype=jffs2" | |
182 | ||
183 | #define CONFIG_ENV_SIZE 0x02000 | |
184 | ||
185 | /* Miscellaneous configurable options */ | |
962d026b VK |
186 | #define CONFIG_ARCH_CPU_INIT |
187 | #define CONFIG_DISPLAY_CPUINFO | |
566c9c16 VK |
188 | #define CONFIG_BOOT_PARAMS_ADDR 0x00000100 |
189 | #define CONFIG_CMDLINE_TAG 1 | |
190 | #define CONFIG_SETUP_MEMORY_TAGS 1 | |
191 | #define CONFIG_MISC_INIT_R 1 | |
192 | #define CONFIG_ZERO_BOOTDELAY_CHECK 1 | |
193 | #define CONFIG_AUTOBOOT_KEYED 1 | |
194 | #define CONFIG_AUTOBOOT_STOP_STR " " | |
195 | #define CONFIG_AUTOBOOT_PROMPT \ | |
196 | "Hit SPACE in %d seconds to stop autoboot.\n", bootdelay | |
197 | ||
198 | #define CONFIG_SYS_MEMTEST_START 0x00800000 | |
199 | #define CONFIG_SYS_MEMTEST_END 0x04000000 | |
200 | #define CONFIG_SYS_MALLOC_LEN (1024*1024) | |
566c9c16 VK |
201 | #define CONFIG_IDENT_STRING "-SPEAr" |
202 | #define CONFIG_SYS_LONGHELP | |
203 | #define CONFIG_SYS_PROMPT "u-boot> " | |
204 | #define CONFIG_CMDLINE_EDITING | |
205 | #define CONFIG_SYS_CBSIZE 256 | |
206 | #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \ | |
207 | sizeof(CONFIG_SYS_PROMPT) + 16) | |
208 | #define CONFIG_SYS_MAXARGS 16 | |
209 | #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE | |
210 | #define CONFIG_SYS_LOAD_ADDR 0x00800000 | |
211 | #define CONFIG_SYS_CONSOLE_INFO_QUIET 1 | |
566c9c16 VK |
212 | |
213 | #define CONFIG_EXTRA_ENV_SETTINGS CONFIG_EXTRA_ENV_USBTTY | |
214 | ||
215 | /* Stack sizes */ | |
216 | #define CONFIG_STACKSIZE (128*1024) | |
217 | ||
218 | #ifdef CONFIG_USE_IRQ | |
219 | #define CONFIG_STACKSIZE_IRQ (4*1024) | |
220 | #define CONFIG_STACKSIZE_FIQ (4*1024) | |
221 | #endif | |
222 | ||
223 | /* Physical Memory Map */ | |
224 | #define CONFIG_NR_DRAM_BANKS 1 | |
225 | #define PHYS_SDRAM_1 0x00000000 | |
226 | #define PHYS_SDRAM_1_MAXSIZE 0x40000000 | |
227 | ||
a39fcfb2 SH |
228 | #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM_1 |
229 | #define CONFIG_SYS_INIT_RAM_ADDR 0xD2800000 | |
230 | #define CONFIG_SYS_INIT_RAM_SIZE 0x2000 | |
231 | ||
232 | #define CONFIG_SYS_INIT_SP_OFFSET \ | |
233 | (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) | |
234 | ||
235 | #define CONFIG_SYS_INIT_SP_ADDR \ | |
236 | (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) | |
237 | ||
566c9c16 | 238 | #endif |