]> git.ipfire.org Git - people/ms/u-boot.git/blame - include/configs/bf533-stamp.h
rename CFG_ENV macros to CONFIG_ENV
[people/ms/u-boot.git] / include / configs / bf533-stamp.h
CommitLineData
3f0606ad
AL
1/*
2 * U-boot - Configuration file for BF533 STAMP board
3 */
4
5#ifndef __CONFIG_STAMP_H__
6#define __CONFIG_STAMP_H__
7
f7ce12cb
MF
8#include <asm/blackfin-config-pre.h>
9
3f0606ad 10#define CONFIG_RTC_BFIN 1
3f0606ad
AL
11
12#define CONFIG_PANIC_HANG 1
13
f7ce12cb 14#define CONFIG_BFIN_CPU bf533-0.3
9171fc81 15#define CONFIG_BFIN_BOOT_MODE BFIN_BOOT_BYPASS
3f0606ad
AL
16
17/* This sets the default state of the cache on U-Boot's boot */
18#define CONFIG_ICACHE_ON
19#define CONFIG_DCACHE_ON
20
3f0606ad
AL
21/*
22 * Board settings
3f0606ad 23 */
8db13d63
AL
24#define CONFIG_DRIVER_SMC91111 1
25#define CONFIG_SMC91111_BASE 0x20300300
3f0606ad
AL
26
27/* FLASH/ETHERNET uses the same address range */
53677ef1 28#define SHARED_RESOURCES 1
3f0606ad
AL
29
30/* Is I2C bit-banged? */
8db13d63 31#define CONFIG_SOFT_I2C 1
3f0606ad
AL
32
33/*
34 * Software (bit-bang) I2C driver configuration
35 */
8db13d63
AL
36#define PF_SCL PF3
37#define PF_SDA PF2
3f0606ad
AL
38
39/*
40 * Video splash screen support
41 */
8db13d63 42#define CONFIG_VIDEO 0
3f0606ad 43
3f0606ad
AL
44/*
45 * Clock settings
3f0606ad
AL
46 */
47
8db13d63
AL
48/* CONFIG_CLKIN_HZ is any value in Hz */
49#define CONFIG_CLKIN_HZ 11059200
50/* CONFIG_CLKIN_HALF controls what is passed to PLL 0=CLKIN */
51/* 1=CLKIN/2 */
52#define CONFIG_CLKIN_HALF 0
53/* CONFIG_PLL_BYPASS controls if the PLL is used 0=don't bypass */
54/* 1=bypass PLL */
55#define CONFIG_PLL_BYPASS 0
56/* CONFIG_VCO_MULT controls what the multiplier of the PLL is. */
57/* Values can range from 1-64 */
58#define CONFIG_VCO_MULT 36
59/* CONFIG_CCLK_DIV controls what the core clock divider is */
60/* Values can be 1, 2, 4, or 8 ONLY */
61#define CONFIG_CCLK_DIV 1
62/* CONFIG_SCLK_DIV controls what the peripheral clock divider is*/
63/* Values can range from 1-15 */
64#define CONFIG_SCLK_DIV 5
65/* CONFIG_SPI_BAUD controls the SPI peripheral clock divider */
66/* Values can range from 2-65535 */
67/* SCK Frequency = SCLK / (2 * CONFIG_SPI_BAUD) */
68#define CONFIG_SPI_BAUD 2
8db13d63 69#define CONFIG_SPI_BAUD_INITBLOCK 4
3f0606ad 70
3f0606ad
AL
71/*
72 * Network settings
3f0606ad
AL
73 */
74
75#if (CONFIG_DRIVER_SMC91111)
76#if 0
77#define CONFIG_MII
78#endif
79
80/* network support */
8db13d63
AL
81#define CONFIG_IPADDR 192.168.0.15
82#define CONFIG_NETMASK 255.255.255.0
83#define CONFIG_GATEWAYIP 192.168.0.1
84#define CONFIG_SERVERIP 192.168.0.2
85#define CONFIG_HOSTNAME STAMP
86#define CONFIG_ROOTPATH /checkout/uClinux-dist/romfs
3f0606ad
AL
87
88/* To remove hardcoding and enable MAC storage in EEPROM */
8db13d63 89/* #define CONFIG_ETHADDR 02:80:ad:20:31:b8 */
3f0606ad
AL
90#endif /* CONFIG_DRIVER_SMC91111 */
91
92/*
93 * Flash settings
3f0606ad
AL
94 */
95
8db13d63 96#define CFG_FLASH_CFI /* The flash is CFI compatible */
00b1883a 97#define CONFIG_FLASH_CFI_DRIVER /* Use common CFI driver */
3f0606ad
AL
98#define CFG_FLASH_CFI_AMD_RESET
99
8db13d63
AL
100#define CFG_FLASH_BASE 0x20000000
101#define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */
102#define CFG_MAX_FLASH_SECT 67 /* max number of sectors on one chip */
3f0606ad 103
9171fc81 104#if (CONFIG_BFIN_BOOT_MODE == BFIN_BOOT_SPI_MASTER)
bb1f8b4f 105#define CONFIG_ENV_IS_IN_EEPROM 1
0e8d1586
JCPV
106#define CONFIG_ENV_OFFSET 0x4000
107#define CONFIG_ENV_HEADER (CONFIG_ENV_OFFSET + 0x12A) /* 0x12A is the length of LDR file header */
9171fc81 108#else
5a1aceb0 109#define CONFIG_ENV_IS_IN_FLASH 1
0e8d1586
JCPV
110#define CONFIG_ENV_ADDR 0x20004000
111#define CONFIG_ENV_OFFSET (CONFIG_ENV_ADDR - CFG_FLASH_BASE)
3f0606ad
AL
112#endif
113
0e8d1586
JCPV
114#define CONFIG_ENV_SIZE 0x2000
115#define CONFIG_ENV_SECT_SIZE 0x2000 /* Total Size of Environment Sector */
3f0606ad
AL
116#define ENV_IS_EMBEDDED
117
8db13d63 118#define CFG_FLASH_ERASE_TOUT 30000 /* Timeout for Chip Erase (in ms) */
3f0606ad 119#define CFG_FLASH_ERASEBLOCK_TOUT 5000 /* Timeout for Block Erase (in ms) */
8db13d63 120#define CFG_FLASH_WRITE_TOUT 1 /* Timeout for Flash Write (in ms) */
3f0606ad
AL
121
122/* JFFS Partition offset set */
123#define CFG_JFFS2_FIRST_BANK 0
124#define CFG_JFFS2_NUM_BANKS 1
125/* 512k reserved for u-boot */
53677ef1 126#define CFG_JFFS2_FIRST_SECTOR 11
3f0606ad
AL
127
128/*
129 * following timeouts shall be used once the
130 * Flash real protection is enabled
131 */
8db13d63
AL
132#define CFG_FLASH_LOCK_TOUT 5 /* Timeout for Flash Set Lock Bit (in ms) */
133#define CFG_FLASH_UNLOCK_TOUT 10000 /* Timeout for Flash Clear Lock Bits (in ms) */
3f0606ad
AL
134
135/*
136 * SDRAM settings & memory map
3f0606ad
AL
137 */
138
8db13d63
AL
139#define CONFIG_MEM_SIZE 128 /* 128, 64, 32, 16 */
140#define CONFIG_MEM_ADD_WDTH 11 /* 8, 9, 10, 11 */
3f0606ad
AL
141#define CONFIG_MEM_MT48LC64M4A2FB_7E 1
142
8db13d63 143#define CFG_MEMTEST_START 0x00000000 /* memtest works on */
3f0606ad 144
8db13d63 145#define CFG_SDRAM_BASE 0x00000000
3f0606ad
AL
146
147#define CFG_MAX_RAM_SIZE (CONFIG_MEM_SIZE * 1024 *1024)
148#define CFG_MEMTEST_END (CFG_MAX_RAM_SIZE - 0x80000 - 1)
149#define CONFIG_LOADADDR 0x01000000
150
53677ef1 151#define CFG_LOAD_ADDR CONFIG_LOADADDR
8db13d63
AL
152#define CFG_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */
153#define CFG_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */
154#define CFG_GBL_DATA_SIZE 0x4000 /* Reserve 16k for Global Data */
155#define CONFIG_STACKSIZE (128*1024) /* regular stack */
3f0606ad
AL
156
157#define CFG_MONITOR_BASE (CFG_MAX_RAM_SIZE - 0x40000)
8db13d63
AL
158#define CFG_MALLOC_BASE (CFG_MONITOR_BASE - CFG_MALLOC_LEN)
159#define CFG_GBL_DATA_ADDR (CFG_MALLOC_BASE - CFG_GBL_DATA_SIZE)
160#define CONFIG_STACKBASE (CFG_GBL_DATA_ADDR - 4)
3f0606ad
AL
161
162/* Check to make sure everything fits in SDRAM */
163#if ((CFG_MONITOR_BASE + CFG_MONITOR_LEN) > CFG_MAX_RAM_SIZE)
164 #error Memory Map does not fit into configuration
165#endif
166
167#if ( CONFIG_CLKIN_HALF == 0 )
8db13d63 168#define CONFIG_VCO_HZ ( CONFIG_CLKIN_HZ * CONFIG_VCO_MULT )
3f0606ad 169#else
8db13d63 170#define CONFIG_VCO_HZ (( CONFIG_CLKIN_HZ * CONFIG_VCO_MULT ) / 2 )
3f0606ad
AL
171#endif
172
173#if (CONFIG_PLL_BYPASS == 0)
8db13d63
AL
174#define CONFIG_CCLK_HZ ( CONFIG_VCO_HZ / CONFIG_CCLK_DIV )
175#define CONFIG_SCLK_HZ ( CONFIG_VCO_HZ / CONFIG_SCLK_DIV )
3f0606ad 176#else
8db13d63
AL
177#define CONFIG_CCLK_HZ CONFIG_CLKIN_HZ
178#define CONFIG_SCLK_HZ CONFIG_CLKIN_HZ
3f0606ad
AL
179#endif
180
3f0606ad
AL
181/*
182 * Command settings
3f0606ad
AL
183 */
184
8db13d63
AL
185#define CFG_LONGHELP 1
186#define CONFIG_CMDLINE_EDITING 1
3f0606ad 187
8db13d63 188#define CFG_AUTOLOAD "no" /*rarpb, bootp or dhcp commands will perform only a */
3f0606ad 189
8db13d63 190/* configuration lookup from the BOOTP/DHCP server, */
0d93de11 191/* but not try to load any image using TFTP */
8db13d63
AL
192
193#define CONFIG_BOOTDELAY 5
194#define CONFIG_BOOT_RETRY_TIME -1 /* Enable this if bootretry required, currently its disabled */
8db13d63 195#define CONFIG_BOOTCOMMAND "run ramboot"
3f0606ad 196
8db13d63 197#define CONFIG_BOOTARGS "root=/dev/mtdblock0 rw console=ttyBF0,57600"
3f0606ad 198
3f0606ad 199
3f0606ad 200#define CONFIG_EXTRA_ENV_SETTINGS \
8db13d63
AL
201 "ramargs=setenv bootargs root=/dev/mtdblock0 rw console=ttyBF0,57600\0" \
202 "nfsargs=setenv bootargs root=/dev/nfs rw nfsroot=$(serverip):" \
203 "$(rootpath) console=ttyBF0,57600\0" \
204 "addip=setenv bootargs $(bootargs) ip=$(ipaddr):$(serverip):" \
205 "$(gatewayip):$(netmask):$(hostname):eth0:off\0" \
206 "ramboot=tftpboot $(loadaddr) linux; " \
3f0606ad 207 "run ramargs;run addip;bootelf\0" \
8db13d63 208 "nfsboot=tftpboot $(loadaddr) linux; " \
3f0606ad 209 "run nfsargs;run addip;bootelf\0" \
8db13d63
AL
210 "flashboot=bootm 0x20100000\0" \
211 "update=tftpboot $(loadaddr) u-boot.bin; " \
212 "protect off 0x20000000 0x2003FFFF; erase 0x20000000 0x2003FFFF;" \
213 "cp.b $(loadaddr) 0x20000000 $(filesize)\0" \
214 ""
3f0606ad
AL
215
216#ifdef CONFIG_SOFT_I2C
217#if (!CONFIG_SOFT_I2C)
218#undef CONFIG_SOFT_I2C
219#endif
220#endif
221
ba2351f9 222
079a136c
JL
223/*
224 * BOOTP options
225 */
226#define CONFIG_BOOTP_BOOTFILESIZE
227#define CONFIG_BOOTP_BOOTPATH
228#define CONFIG_BOOTP_GATEWAY
229#define CONFIG_BOOTP_HOSTNAME
230
231
ba2351f9
JL
232/*
233 * Command line configuration.
234 */
235#include <config_cmd_default.h>
236
237#define CONFIG_CMD_ELF
238#define CONFIG_CMD_CACHE
239#define CONFIG_CMD_JFFS2
240#define CONFIG_CMD_EEPROM
241#define CONFIG_CMD_DATE
242
243#if (CONFIG_DRIVER_SMC91111)
244#define CONFIG_CMD_PING
245#endif
246
3f0606ad 247#if (CONFIG_SOFT_I2C)
ba2351f9
JL
248#define CONFIG_CMD_I2C
249#endif
3f0606ad 250
ba2351f9 251#define CONFIG_CMD_DHCP
3f0606ad 252
3f0606ad
AL
253
254/*
255 * Console settings
3f0606ad
AL
256 */
257
8db13d63
AL
258#define CONFIG_BAUDRATE 57600
259#define CFG_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 }
3f0606ad 260
f7ce12cb 261#define CFG_PROMPT "bfin> " /* Monitor Command Prompt */
3f0606ad 262
ba2351f9 263#if defined(CONFIG_CMD_KGDB)
8db13d63 264#define CFG_CBSIZE 1024 /* Console I/O Buffer Size */
3f0606ad 265#else
8db13d63 266#define CFG_CBSIZE 256 /* Console I/O Buffer Size */
3f0606ad 267#endif
8db13d63
AL
268#define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */
269#define CFG_MAXARGS 16 /* max number of command args */
270#define CFG_BARGSIZE CFG_CBSIZE /* Boot Argument Buffer Size */
3f0606ad 271
8db13d63 272#define CONFIG_LOADS_ECHO 1
3f0606ad
AL
273
274/*
275 * I2C settings
276 * By default PF2 is used as SDA and PF3 as SCL on the Stamp board
277 */
278#if (CONFIG_SOFT_I2C)
279
8db13d63
AL
280#define I2C_INIT (*pFIO_DIR |= PF_SCL); asm("ssync;")
281#define I2C_ACTIVE (*pFIO_DIR |= PF_SDA); *pFIO_INEN &= ~PF_SDA; asm("ssync;")
282#define I2C_TRISTATE (*pFIO_DIR &= ~PF_SDA); *pFIO_INEN |= PF_SDA; asm("ssync;")
283#define I2C_READ ((volatile)(*pFIO_FLAG_D & PF_SDA) != 0); asm("ssync;")
284#define I2C_SDA(bit) if(bit) { \
285 *pFIO_FLAG_S = PF_SDA; \
286 asm("ssync;"); \
287 } \
288 else { \
289 *pFIO_FLAG_C = PF_SDA; \
290 asm("ssync;"); \
291 }
292#define I2C_SCL(bit) if(bit) { \
293 *pFIO_FLAG_S = PF_SCL; \
294 asm("ssync;"); \
295 } \
296 else { \
297 *pFIO_FLAG_C = PF_SCL; \
298 asm("ssync;"); \
299 }
300#define I2C_DELAY udelay(5) /* 1/4 I2C clock duration */
301
302#define CFG_I2C_SPEED 50000
303#define CFG_I2C_SLAVE 0xFE
3f0606ad
AL
304#endif /* CONFIG_SOFT_I2C */
305
306/*
307 * Compact Flash settings
308 */
309
310/* Enabled below option for CF support */
8db13d63 311/* #define CONFIG_STAMP_CF 1 */
3f0606ad 312
ba2351f9 313#if defined(CONFIG_STAMP_CF) && defined(CONFIG_CMD_IDE)
3f0606ad 314
8db13d63
AL
315#define CONFIG_MISC_INIT_R 1
316#define CONFIG_DOS_PARTITION 1
3f0606ad
AL
317/*
318 * IDE/ATA stuff
319 */
8db13d63
AL
320#undef CONFIG_IDE_8xx_DIRECT /* no pcmcia interface required */
321#undef CONFIG_IDE_LED /* no led for ide supported */
322#undef CONFIG_IDE_RESET /* no reset for ide supported */
3f0606ad 323
8db13d63
AL
324#define CFG_IDE_MAXBUS 1 /* max. 1 IDE busses */
325#define CFG_IDE_MAXDEVICE (CFG_IDE_MAXBUS*1) /* max. 1 drives per IDE bus */
3f0606ad 326
8db13d63
AL
327#define CFG_ATA_BASE_ADDR 0x20200000
328#define CFG_ATA_IDE0_OFFSET 0x0000
3f0606ad 329
8db13d63
AL
330#define CFG_ATA_DATA_OFFSET 0x0020 /* Offset for data I/O */
331#define CFG_ATA_REG_OFFSET 0x0020 /* Offset for normal register accesses */
332#define CFG_ATA_ALT_OFFSET 0x0007 /* Offset for alternate registers */
3f0606ad 333
8db13d63 334#define CFG_ATA_STRIDE 2
3f0606ad
AL
335#endif
336
337/*
338 * Miscellaneous configurable options
339 */
340
8db13d63 341#define CFG_HZ 1000 /* 1ms time tick */
3f0606ad 342
8db13d63 343#define CFG_BOOTM_LEN 0x4000000/* Large Image Length, set to 64 Meg */
3f0606ad 344
8db13d63 345#define CONFIG_SHOW_BOOT_PROGRESS 1 /* Show boot progress on LEDs */
3f0606ad
AL
346
347#define CONFIG_SPI
348
349#ifdef CONFIG_VIDEO
350#if (CONFIG_VIDEO)
8db13d63
AL
351#define CONFIG_SPLASH_SCREEN 1
352#define CONFIG_SILENT_CONSOLE 1
3f0606ad
AL
353#else
354#undef CONFIG_VIDEO
355#endif
356#endif
357
358/*
359 * FLASH organization and environment definitions
360 */
9171fc81
MF
361
362#define CONFIG_EBIU_SDRRC_VAL 0x268
363#define CONFIG_EBIU_SDGCTL_VAL 0x911109
364#define CONFIG_EBIU_SDBCTL_VAL 0x37
365
366#define CONFIG_EBIU_AMGCTL_VAL 0xFF
367#define CONFIG_EBIU_AMBCTL0_VAL 0xBBC3BBC3
368#define CONFIG_EBIU_AMBCTL1_VAL 0x99B39983
369#define CF_CONFIG_EBIU_AMBCTL1_VAL 0x99B3ffc2
370
371#include <asm/blackfin-config-post.h>
3f0606ad 372
3f0606ad 373#endif