1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29#ifndef __CONFIG_H
30#define __CONFIG_H
31#include <asm/sizes.h>
32
33
34
35
36#define CONFIG_ARMCORTEXA8 1
37#define CONFIG_OMAP 1
38#define CONFIG_OMAP34XX 1
39#define CONFIG_OMAP3430 1
40#define CONFIG_OMAP3_ZOOM1 1
41
42#include <asm/arch/cpu.h>
43#include <asm/arch/omap3.h>
44
45
46#define V_OSCK 26000000
47#define V_SCLK (V_OSCK >> 1)
48
49#undef CONFIG_USE_IRQ
50#define CONFIG_MISC_INIT_R
51
52#define CONFIG_CMDLINE_TAG 1
53#define CONFIG_SETUP_MEMORY_TAGS 1
54#define CONFIG_INITRD_TAG 1
55#define CONFIG_REVISION_TAG 1
56
57
58
59
60#define CONFIG_ENV_SIZE SZ_128K
61
62#define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + SZ_128K)
63#define CONFIG_SYS_GBL_DATA_SIZE 128
64
65
66
67
68
69
70
71
72
73#define V_NS16550_CLK 48000000
74
75#define CONFIG_SYS_NS16550
76#define CONFIG_SYS_NS16550_SERIAL
77#define CONFIG_SYS_NS16550_REG_SIZE (-4)
78#define CONFIG_SYS_NS16550_CLK V_NS16550_CLK
79
80
81
82
83#define CONFIG_CONS_INDEX 3
84#define CONFIG_SYS_NS16550_COM3 OMAP34XX_UART3
85#define CONFIG_SERIAL3 3
86
87
88#define CONFIG_ENV_OVERWRITE
89#define CONFIG_BAUDRATE 115200
90#define CONFIG_SYS_BAUDRATE_TABLE {4800, 9600, 19200, 38400, 57600,\
91 115200}
92#define CONFIG_MMC 1
93#define CONFIG_OMAP3_MMC 1
94#define CONFIG_DOS_PARTITION 1
95
96
97#include <config_cmd_default.h>
98
99#define CONFIG_CMD_EXT2
100#define CONFIG_CMD_FAT
101#define CONFIG_CMD_JFFS2
102
103#define CONFIG_CMD_I2C
104#define CONFIG_CMD_MMC
105#define CONFIG_CMD_NAND
106#define CONFIG_CMD_NAND_LOCK_UNLOCK
107
108#undef CONFIG_CMD_FLASH
109#undef CONFIG_CMD_FPGA
110#undef CONFIG_CMD_IMI
111#undef CONFIG_CMD_IMLS
112#undef CONFIG_CMD_NET
113#undef CONFIG_CMD_NFS
114
115#define CONFIG_SYS_NO_FLASH
116#define CONFIG_SYS_I2C_SPEED 100000
117#define CONFIG_SYS_I2C_SLAVE 1
118#define CONFIG_SYS_I2C_BUS 0
119#define CONFIG_SYS_I2C_BUS_SELECT 1
120#define CONFIG_DRIVER_OMAP34XX_I2C 1
121
122
123
124
125#define CONFIG_NAND_OMAP_GPMC
126#define CONFIG_SYS_NAND_ADDR NAND_BASE
127
128#define CONFIG_SYS_NAND_BASE NAND_BASE
129
130
131#define GPMC_NAND_ECC_LP_x16_LAYOUT 1
132
133#define CONFIG_SYS_MAX_NAND_DEVICE 1
134
135#define SECTORSIZE 512
136
137#define NAND_ALLOW_ERASE_ALL
138#define ADDR_COLUMN 1
139#define ADDR_PAGE 2
140#define ADDR_COLUMN_PAGE 3
141
142#define NAND_ChipID_UNKNOWN 0x00
143#define NAND_MAX_FLOORS 1
144#define NAND_MAX_CHIPS 1
145#define NAND_NO_RB 1
146#define CONFIG_SYS_NAND_WP
147
148#define CONFIG_JFFS2_NAND
149
150#define CONFIG_JFFS2_DEV "nand0"
151
152#define CONFIG_JFFS2_PART_OFFSET 0x680000
153#define CONFIG_JFFS2_PART_SIZE 0xf980000
154
155
156
157#define CONFIG_BOOTDELAY 10
158
159#define CONFIG_EXTRA_ENV_SETTINGS \
160 "loadaddr=0x82000000\0" \
161 "console=ttyS2,115200n8\0" \
162 "videomode=1024x768@60,vxres=1024,vyres=768\0" \
163 "videospec=omapfb:vram:2M,vram:4M\0" \
164 "mmcargs=setenv bootargs console=${console} " \
165 "video=${videospec},mode:${videomode} " \
166 "root=/dev/mmcblk0p2 rw " \
167 "rootfstype=ext3 rootwait\0" \
168 "nandargs=setenv bootargs console=${console} " \
169 "video=${videospec},mode:${videomode} " \
170 "root=/dev/mtdblock4 rw " \
171 "rootfstype=jffs2\0" \
172 "loadbootscript=fatload mmc 0 ${loadaddr} boot.scr\0" \
173 "bootscript=echo Running bootscript from mmc ...; " \
174 "autoscr ${loadaddr}\0" \
175 "loaduimage=fatload mmc 0 ${loadaddr} uImage\0" \
176 "mmcboot=echo Booting from mmc ...; " \
177 "run mmcargs; " \
178 "bootm ${loadaddr}\0" \
179 "nandboot=echo Booting from nand ...; " \
180 "run nandargs; " \
181 "nand read ${loadaddr} 280000 400000; " \
182 "bootm ${loadaddr}\0" \
183
184#define CONFIG_BOOTCOMMAND \
185 "if mmcinit; then " \
186 "if run loadbootscript; then " \
187 "run bootscript; " \
188 "else " \
189 "if run loaduimage; then " \
190 "run mmcboot; " \
191 "else run nandboot; " \
192 "fi; " \
193 "fi; " \
194 "else run nandboot; fi"
195
196#define CONFIG_AUTO_COMPLETE 1
197
198
199
200#define V_PROMPT "OMAP3 Zoom1# "
201
202#define CONFIG_SYS_LONGHELP
203#define CONFIG_SYS_HUSH_PARSER
204#define CONFIG_SYS_PROMPT_HUSH_PS2 "> "
205#define CONFIG_SYS_PROMPT V_PROMPT
206#define CONFIG_SYS_CBSIZE 256
207
208#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + \
209 sizeof(CONFIG_SYS_PROMPT) + 16)
210#define CONFIG_SYS_MAXARGS 16
211
212#define CONFIG_SYS_BARGSIZE (CONFIG_SYS_CBSIZE)
213
214#define CONFIG_SYS_MEMTEST_START (OMAP34XX_SDRC_CS0)
215
216#define CONFIG_SYS_MEMTEST_END (OMAP34XX_SDRC_CS0 + \
217 0x01F00000)
218
219#undef CONFIG_SYS_CLKS_IN_HZ
220
221#define CONFIG_SYS_LOAD_ADDR (OMAP34XX_SDRC_CS0)
222
223
224
225
226
227
228#define V_PVT 7
229
230#define CONFIG_SYS_TIMERBASE (OMAP34XX_GPT2)
231#define CONFIG_SYS_PVT V_PVT
232#define CONFIG_SYS_HZ ((V_SCLK) / (2 << CONFIG_SYS_PVT))
233
234
235
236
237
238
239#define CONFIG_STACKSIZE SZ_128K
240#ifdef CONFIG_USE_IRQ
241#define CONFIG_STACKSIZE_IRQ SZ_4K
242#define CONFIG_STACKSIZE_FIQ SZ_4K
243#endif
244
245
246
247
248#define CONFIG_NR_DRAM_BANKS 2
249#define PHYS_SDRAM_1 OMAP34XX_SDRC_CS0
250#define PHYS_SDRAM_1_SIZE SZ_32M
251#define PHYS_SDRAM_2 OMAP34XX_SDRC_CS1
252
253
254#define SDRC_R_B_C 1
255
256
257
258
259
260
261
262
263#define PISMO1_NAND_SIZE GPMC_SIZE_128M
264#define PISMO1_ONEN_SIZE GPMC_SIZE_128M
265
266#define CONFIG_SYS_MAX_FLASH_SECT 520
267
268#define CONFIG_SYS_MAX_FLASH_BANKS 2
269#define CONFIG_SYS_MONITOR_LEN SZ_256K
270
271#define CONFIG_SYS_FLASH_BASE boot_flash_base
272
273
274#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_FLASH_BASE
275#define CONFIG_SYS_ONENAND_BASE ONENAND_MAP
276
277#define CONFIG_ENV_IS_IN_NAND 1
278#define ONENAND_ENV_OFFSET 0x260000
279#define SMNAND_ENV_OFFSET 0x260000
280
281#define CONFIG_SYS_ENV_SECT_SIZE boot_flash_sec
282#define CONFIG_ENV_OFFSET boot_flash_off
283#define CONFIG_ENV_ADDR SMNAND_ENV_OFFSET
284
285
286
287
288
289#define CONFIG_SYS_FLASH_ERASE_TOUT (100 * CONFIG_SYS_HZ)
290#define CONFIG_SYS_FLASH_WRITE_TOUT (100 * CONFIG_SYS_HZ)
291
292
293#define CONFIG_SYS_MAX_MTD_BANKS (CONFIG_SYS_MAX_FLASH_BANKS + \
294 CONFIG_SYS_MAX_NAND_DEVICE)
295#define CONFIG_SYS_JFFS2_MEM_NAND
296
297#define CONFIG_SYS_JFFS2_FIRST_BANK CONFIG_SYS_MAX_FLASH_BANKS
298#define CONFIG_SYS_JFFS2_NUM_BANKS 1
299
300#ifndef __ASSEMBLY__
301extern gpmc_csx_t *nand_cs_base;
302extern gpmc_t *gpmc_cfg_base;
303extern unsigned int boot_flash_base;
304extern volatile unsigned int boot_flash_env_addr;
305extern unsigned int boot_flash_off;
306extern unsigned int boot_flash_sec;
307extern unsigned int boot_flash_type;
308#endif
309
310
311#define WRITE_NAND_COMMAND(d, adr)\
312 writel(d, &nand_cs_base->nand_cmd)
313#define WRITE_NAND_ADDRESS(d, adr)\
314 writel(d, &nand_cs_base->nand_adr)
315#define WRITE_NAND(d, adr) writew(d, &nand_cs_base->nand_dat)
316#define READ_NAND(adr) readl(&nand_cs_base->nand_dat)
317
318
319#define NAND_WP_OFF() do {readl(&gpmc_cfg_base->config) |= GPMC_CONFIG_WP; } \
320 while (0)
321#define NAND_WP_ON() do {readl(&gpmc_cfg_base->config) &= ~GPMC_CONFIG_WP; } \
322 while (0)
323#define NAND_DISABLE_CE(nand)
324#define NAND_ENABLE_CE(nand)
325#define NAND_WAIT_READY(nand) udelay(10)
326
327#endif
328