]> git.kernelconcepts.de Git - karo-tx-uboot.git/blob - include/configs/sc3.h
Merge with /home/tur/git/u-boot#motionpro
[karo-tx-uboot.git] / include / configs / sc3.h
1 /*
2  * (C) Copyright 2007
3  * Heiko Schocher, DENX Software Engineering, <hs@denx.de>.
4  *
5  * From:
6  * (C) Copyright 2003
7  * Juergen Beisert, EuroDesign embedded technologies, jbeisert@eurodsn.de
8  *
9  * See file CREDITS for list of people who contributed to this
10  * project.
11  *
12  * This program is free software; you can redistribute it and/or
13  * modify it under the terms of the GNU General Public License as
14  * published by the Free Software Foundation; either version 2 of
15  * the License, or (at your option) any later version.
16  *
17  * This program is distributed in the hope that it will be useful,
18  * but WITHOUT ANY WARRANTY; without even the implied warranty of
19  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
20  * GNU General Public License for more details.
21  *
22  * You should have received a copy of the GNU General Public License
23  * along with this program; if not, write to the Free Software
24  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
25  * MA 02111-1307 USA
26  */
27
28 #ifndef __CONFIG_H
29 #define __CONFIG_H
30
31 #undef USE_VGA_GRAPHICS
32
33 /* Memory Map
34  * 0x00000000 .... 0x03FFFFFF -> RAM (up to 128MiB)
35  * 0x74000000 .... 0x740FFFFF -> CS#6
36  * 0x74100000 .... 0x741FFFFF -> CS#7
37  * 0x74200000 .... 0x742FFFFF -> CS4# if no internal USB
38  * 0x74300000 .... 0x743FFFFF -> CS5# if no boosted IDE
39  * 0x77C00000 .... 0x77CFFFFF -> CS4# USB HC (1 MiB)
40  * 0x77D00000 .... 0x77DFFFFF -> CS1# NAND-Flash (1 MiB)
41  * 0x78000000 .... 0x78FFFFFF -> CS2# ISA-Bus Speicherzugriff (16 MiB)
42  * 0x79000000 .... 0x7900FFFF -> CS2# ISA-Bus IO-Zugriff (16 MiB, mapped: 64kiB)
43  * 0x79010000 .... 0x79FFFFFF -> CS2# ISA-Bus IO-Zugriff (mirrored)
44  * 0x7A000000 .... 0x7A0FFFFF -> CS5# IDE emulation (1MiB)
45  *
46  * 0x80000000 .... 0x9FFFFFFF -> PCI-Bus Speicherzugriff (512MiB, mapped: 1:1)
47  * 0xA0000000 .... 0xBFFFFFFF -> PCI-Bus Speicherzugriff (512MiB, mapped: 0x00000000...0x1FFFFFFF)
48  * 0xE8000000 .... 0xE800FFFF -> PCI-Bus IO-Zugriff (64kiB, translated to PCI: 0x0000...0xFFFF)
49  * 0xE8800000 .... 0xEBFFFFFF -> PCI-Bus IO-Zugriff (56MiB, translated to PCI: 0x00800000...0x3FFFFFF)
50  * 0xEED00000 .... 0xEED00003 -> PCI-Bus
51  * 0xEF400000 .... 0xEF40003F -> PCI-Bus Local Configuration Registers
52  * 0xEF40003F .... 0xEF5FFFFF -> reserved
53  * 0xEF600000 .... 0xEFFFFFFF -> 405GP internal Devices (10 MiB)
54  * 0xF0000000 .... 0xF01FFFFF -> Flash-ROM (2 MiB)
55  * 0xF0200000 .... 0xF7FFFFFF -> free for flash devices
56  * 0xF8000000 .... 0xF8000FFF -> OnChipMemory (4kiB)
57  * 0xF8001000 .... 0xFFDFFFFF -> free for flash devices
58  * 0xFFE00000 .... 0xFFFFFFFF -> BOOT-ROM (2 MiB)
59  */
60
61 #define CONFIG_SOLIDCARD3       1
62 #define CONFIG_4xx      1
63 #define CONFIG_405GP    1
64
65 #define CONFIG_BOARD_EARLY_INIT_F       1
66
67 /*
68  * Define IDE_USES_ISA_EMULATION for slower IDE access in the ISA-IO address range
69  * If undefined, IDE access uses a seperat emulation with higher access speed.
70  * Consider to inform your Linux IDE driver about the different addresses!
71  * IDE_USES_ISA_EMULATION is only used if your CONFIG_COMMANDS macro includes
72  * the CFG_CMD_IDE macro!
73  */
74 #define IDE_USES_ISA_EMULATION
75
76 /*-----------------------------------------------------------------------
77  * Serial Port
78  *----------------------------------------------------------------------*/
79 #define CONFIG_SERIAL_MULTI
80 #undef CONFIG_SERIAL_SOFTWARE_FIFO
81 /*
82  * define CONFIG_POWER_DOWN if your cpu should power down while waiting for your input
83  * Works only, if you have enabled the CONFIG_SERIAL_SOFTWARE_FIFO feature
84  */
85 #if CONFIG_SERIAL_SOFTWARE_FIFO
86  #define CONFIG_POWER_DOWN
87 #endif
88
89 /*
90  * define CONFIG_SYS_CLK_FREQ to your base crystal clock in Hz
91  */
92 #define CONFIG_SYS_CLK_FREQ     33333333
93
94 /*
95  * define CONFIG_BAUDRATE to the baudrate value you want to use as default
96  */
97 #define CONFIG_BAUDRATE         115200
98 #define CONFIG_BOOTDELAY        3 /* autoboot after 3 seconds         */
99
100 #define CONFIG_PREBOOT  "echo;" \
101         "echo Type \"run flash_nfs\" to mount root filesystem over NFS;" \
102         "echo"
103
104 #undef  CONFIG_BOOTARGS
105
106 #define CONFIG_EXTRA_ENV_SETTINGS                                       \
107         "netdev=eth0\0"                                                 \
108         "nfsargs=setenv bootargs root=/dev/nfs rw "                     \
109                 "nfsroot=${serverip}:${rootpath}\0"                     \
110         "ramargs=setenv bootargs root=/dev/ram rw\0"                    \
111         "nand_args=setenv bootargs root=/dev/mtdblock5 rw"              \
112                 "rootfstype=jffs2\0"                                    \
113         "addip=setenv bootargs ${bootargs} "                            \
114                 "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
115                 ":${hostname}:${netdev}:off panic=1\0"                  \
116         "addcons=setenv bootargs ${bootargs} "                          \
117                 "console=ttyS0,${baudrate}\0"                           \
118         "flash_nfs=run nfsargs addip addcons;"                          \
119                 "bootm ${kernel_addr}\0"                                \
120         "flash_nand=run nand_args addip addcons;bootm ${kernel_addr}\0" \
121         "net_nfs=tftp 200000 ${bootfile};run nfsargs addip addcons;"    \
122                 "bootm\0"                                               \
123         "rootpath=/opt/eldk/ppc_4xx\0"                                  \
124         "bootfile=/tftpboot/sc3/uImage\0"                               \
125         "u-boot=/tftpboot/sc3/u-boot.bin\0"                             \
126         "setup=tftp 200000 /tftpboot/sc3/setup.img;autoscr 200000\0"    \
127         "kernel_addr=FFE08000\0"                                        \
128         ""
129 #undef CONFIG_BOOTCOMMAND
130
131 #define CONFIG_SILENT_CONSOLE   1       /* enable silent startup */
132 #define CFG_DEVICE_NULLDEV      1       /* include nulldev device       */
133
134 #if 1   /* feel free to disable for development */
135 #define CONFIG_AUTOBOOT_KEYED           /* Enable password protection   */
136 #define CONFIG_AUTOBOOT_PROMPT          "\nSC3 - booting... stop with ENTER\n"
137 #define CONFIG_AUTOBOOT_DELAY_STR       "\n"    /* 1st "password"       */
138 #endif
139
140 /*
141  * define CONFIG_BOOTCOMMAND to the autoboot commands. They will running after
142  * the CONFIG_BOOTDELAY delay to boot your machine
143  */
144 #define CONFIG_BOOTCOMMAND      "bootp;dcache on;bootm"
145
146 /*
147  * define CONFIG_BOOTARGS to the default kernel parameters. They will used if you don't
148  * set different values at the u-boot prompt
149  */
150 #ifdef USE_VGA_GRAPHICS
151  #define CONFIG_BOOTARGS        "root=/dev/nfs rw ip=bootp nfsroot=/tftpboot/solidcard3re"
152 #else
153  #define CONFIG_BOOTARGS        "console=ttyS0,115200 root=/dev/nfs rw ip=bootp"
154 #endif
155 /*
156  * Is the USB host controller assembled? If yes define CONFIG_ISP1161_PRESENT
157  * This reserves memory bank #4 for this purpose
158  */
159 #undef CONFIG_ISP1161_PRESENT
160
161 #undef CONFIG_LOADS_ECHO   /* no echo on for serial download    */
162 #define CFG_LOADS_BAUD_CHANGE   1       /* allow baudrate change        */
163
164 #define CONFIG_NET_MULTI
165 /* #define CONFIG_EEPRO100_SROM_WRITE */
166 /* #define CONFIG_SHOW_MAC */
167 #define CONFIG_EEPRO100
168 #define CONFIG_MII 1                    /* add 405GP MII PHY management         */
169 #define CONFIG_PHY_ADDR 1       /* the connected Phy defaults to address 1 */
170
171 #define CONFIG_COMMANDS   \
172            (CONFIG_CMD_DFL      | \
173                         CFG_CMD_AUTOSCRIPT      | \
174                         CFG_CMD_PCI             | \
175                         CFG_CMD_IRQ             | \
176                         CFG_CMD_NET             | \
177                         CFG_CMD_MII             | \
178                         CFG_CMD_PING            | \
179                         CFG_CMD_NAND            | \
180                         CFG_CMD_JFFS2           | \
181                         CFG_CMD_I2C             | \
182                         CFG_CMD_IDE             | \
183                         CFG_CMD_DATE            | \
184                         CFG_CMD_DHCP            | \
185                         CFG_CMD_CACHE           | \
186                         CFG_CMD_ELF     )
187
188 /* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */
189 #include <cmd_confdefs.h>
190
191 #undef CONFIG_WATCHDOG                  /* watchdog disabled            */
192
193 /*
194  * Miscellaneous configurable options
195  */
196 #define CFG_LONGHELP    1               /* undef to save memory         */
197 #define CFG_PROMPT      "SC3> " /* Monitor Command Prompt       */
198 #define CFG_CBSIZE      256             /* Console I/O Buffer Size      */
199
200 #define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */
201
202 #define CFG_MAXARGS     16              /* max number of command args   */
203 #define CFG_BARGSIZE    CFG_CBSIZE      /* Boot Argument Buffer Size    */
204
205 #define CFG_MEMTEST_START       0x0400000       /* memtest works on     */
206 #define CFG_MEMTEST_END         0x0C00000       /* 4 ... 12 MB in DRAM  */
207
208 /*
209  * If CFG_EXT_SERIAL_CLOCK, then the UART divisor is 1.
210  * If CFG_405_UART_ERRATA_59, then UART divisor is 31.
211  * Otherwise, UART divisor is determined by CPU Clock and CFG_BASE_BAUD value.
212  * The Linux BASE_BAUD define should match this configuration.
213  *    baseBaud = cpuClock/(uartDivisor*16)
214  * If CFG_405_UART_ERRATA_59 and 200MHz CPU clock,
215  * set Linux BASE_BAUD to 403200.
216  *
217  * Consider the OPB clock! If it get lower the BASE_BAUD must be lower to
218  * (see 405GP datasheet for descritpion)
219  */
220 #undef  CFG_EXT_SERIAL_CLOCK            /* external serial clock */
221 #undef  CFG_405_UART_ERRATA_59          /* 405GP/CR Rev. D silicon */
222 #define CFG_BASE_BAUD           921600  /* internal clock */
223
224 /* The following table includes the supported baudrates */
225 #define CFG_BAUDRATE_TABLE  \
226     {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
227
228 #define CFG_LOAD_ADDR           0x1000000       /* default load address */
229 #define CFG_EXTBDINFO           1       /* To use extended board_into (bd_t) */
230
231 #define CFG_HZ                  1000    /* decrementer freq: 1 ms ticks */
232
233 /*-----------------------------------------------------------------------
234  * IIC stuff
235  *-----------------------------------------------------------------------
236  */
237 #define  CONFIG_HARD_I2C                /* I2C with hardware support    */
238 #undef  CONFIG_SOFT_I2C                 /* I2C bit-banged               */
239
240 #define I2C_INIT
241 #define I2C_ACTIVE 0
242 #define I2C_TRISTATE 0
243
244 #define CFG_I2C_SPEED           100000  /* use the standard 100kHz speed */
245 #define CFG_I2C_SLAVE           0x7F            /* mask valid bits */
246
247 #define CONFIG_RTC_DS1337
248 #define CFG_I2C_RTC_ADDR 0x68
249
250 /*-----------------------------------------------------------------------
251  * PCI stuff
252  *-----------------------------------------------------------------------
253  */
254 #define PCI_HOST_ADAPTER 0              /* configure ar pci adapter     */
255 #define PCI_HOST_FORCE  1               /* configure as pci host        */
256 #define PCI_HOST_AUTO   2               /* detected via arbiter enable  */
257
258 #define CONFIG_PCI                      /* include pci support          */
259 #define CONFIG_PCI_HOST PCI_HOST_FORCE  /* select pci host function     */
260 #define CONFIG_PCI_PNP                  /* do pci plug-and-play         */
261                                         /* resource configuration       */
262
263 /* If you want to see, whats connected to your PCI bus */
264 /* #define CONFIG_PCI_SCAN_SHOW */
265
266 #define CFG_PCI_SUBSYS_VENDORID 0x0000  /* PCI Vendor ID: to-do!!!      */
267 #define CFG_PCI_SUBSYS_DEVICEID 0x0000  /* PCI Device ID: to-do!!!      */
268 #define CFG_PCI_PTM1LA  0x00000000      /* point to sdram               */
269 #define CFG_PCI_PTM1MS  0x80000001      /* 2GB, enable hard-wired to 1  */
270 #define CFG_PCI_PTM1PCI 0x00000000      /* Host: use this pci address   */
271 #define CFG_PCI_PTM2LA  0x00000000      /* disabled                     */
272 #define CFG_PCI_PTM2MS  0x00000000      /* disabled                     */
273 #define CFG_PCI_PTM2PCI 0x04000000      /* Host: use this pci address   */
274
275 /*-----------------------------------------------------------------------
276  * External peripheral base address
277  *-----------------------------------------------------------------------
278  */
279 #if !(CONFIG_COMMANDS & CFG_CMD_IDE)
280
281 #undef  CONFIG_IDE_LED                  /* no led for ide supported     */
282 #undef  CONFIG_IDE_RESET                /* no reset for ide supported   */
283
284 /*-----------------------------------------------------------------------
285  * IDE/ATA stuff
286  *-----------------------------------------------------------------------
287  */
288 #else /* !(CONFIG_COMMANDS & CFG_CMD_IDE) */
289 #define CONFIG_START_IDE        1       /* check, if use IDE */
290
291 #undef  CONFIG_IDE_8xx_DIRECT           /* no pcmcia interface required */
292 #undef  CONFIG_IDE_LED                  /* no led for ide supported     */
293 #undef  CONFIG_IDE_RESET                /* no reset for ide supported   */
294
295 #define CONFIG_ATAPI
296 #define CONFIG_DOS_PARTITION
297 #define CFG_IDE_MAXDEVICE       (CFG_IDE_MAXBUS*1) /* max. 1 drives per IDE bus */
298
299 #ifndef IDE_USES_ISA_EMULATION
300
301 /* New and faster access */
302 #define CFG_ATA_BASE_ADDR               0x7A000000      /* start of ISA IO emulation */
303
304 /* How many IDE busses are available */
305 #define CFG_IDE_MAXBUS          1
306
307 /* What IDE ports are available */
308 #define CFG_ATA_IDE0_OFFSET     0x000           /* first is available */
309 #undef  CFG_ATA_IDE1_OFFSET                     /* second not available */
310
311 /* access to the data port is calculated:
312    CFG_ATA_BASE_ADDR + CFG_ATA_IDE0_OFFSET + CFG_ATA_DATA_OFFSET + 0 */
313 #define CFG_ATA_DATA_OFFSET     0x0000  /* Offset for data I/O */
314
315 /* access to the registers is calculated:
316    CFG_ATA_BASE_ADDR + CFG_ATA_IDE0_OFFSET + CFG_ATA_REG_OFFSET + [1..7] */
317 #define CFG_ATA_REG_OFFSET      0x0000  /* Offset for normal register accesses  */
318
319 /* access to the alternate register is calculated:
320    CFG_ATA_BASE_ADDR + CFG_ATA_IDE0_OFFSET + CFG_ATA_ALT_OFFSET + 6 */
321 #define CFG_ATA_ALT_OFFSET      0x008           /* Offset for alternate registers       */
322
323 #else /* IDE_USES_ISA_EMULATION */
324
325 #define CFG_ATA_BASE_ADDR               0x79000000      /* start of ISA IO emulation */
326
327 /* How many IDE busses are available */
328 #define CFG_IDE_MAXBUS          1
329
330 /* What IDE ports are available */
331 #define CFG_ATA_IDE0_OFFSET     0x01F0  /* first is available */
332 #undef  CFG_ATA_IDE1_OFFSET                             /* second not available */
333
334 /* access to the data port is calculated:
335    CFG_ATA_BASE_ADDR + CFG_ATA_IDE0_OFFSET + CFG_ATA_DATA_OFFSET + 0 */
336 #define CFG_ATA_DATA_OFFSET     0x0000  /* Offset for data I/O */
337
338 /* access to the registers is calculated:
339    CFG_ATA_BASE_ADDR + CFG_ATA_IDE0_OFFSET + CFG_ATA_REG_OFFSET + [1..7] */
340 #define CFG_ATA_REG_OFFSET      0x0000  /* Offset for normal register accesses  */
341
342 /* access to the alternate register is calculated:
343    CFG_ATA_BASE_ADDR + CFG_ATA_IDE0_OFFSET + CFG_ATA_ALT_OFFSET + 6 */
344 #define CFG_ATA_ALT_OFFSET      0x03F0          /* Offset for alternate registers       */
345
346 #endif /* IDE_USES_ISA_EMULATION */
347
348 #endif /* !(CONFIG_COMMANDS & CFG_CMD_IDE) */
349
350 /*
351 #define CFG_KEY_REG_BASE_ADDR   0xF0100000
352 #define CFG_IR_REG_BASE_ADDR    0xF0200000
353 #define CFG_FPGA_REG_BASE_ADDR  0xF0300000
354 */
355
356 /*-----------------------------------------------------------------------
357  * Start addresses for the final memory configuration
358  * (Set up by the startup code)
359  * Please note that CFG_SDRAM_BASE _must_ start at 0
360  *
361  * CFG_FLASH_BASE   -> start address of internal flash
362  * CFG_MONITOR_BASE -> start of u-boot
363  */
364 #ifndef __ASSEMBLER__
365 extern unsigned long offsetOfBigFlash;
366 extern unsigned long offsetOfEnvironment;
367 #endif
368
369 #define CFG_SDRAM_BASE          0x00000000
370 #define CFG_FLASH_BASE          0xFFE00000
371 #define CFG_MONITOR_BASE        0xFFFC0000     /* placed last 256k */
372 #define CFG_MONITOR_LEN         (224 * 1024)    /* Reserve 224 KiB for Monitor  */
373 #define CFG_MALLOC_LEN          (128 * 1024)    /* Reserve 128 KiB for malloc() */
374
375 /*
376  * For booting Linux, the board info and command line data
377  * have to be in the first 8 MiB of memory, since this is
378  * the maximum mapped by the Linux kernel during initialization.
379  */
380 #define CFG_BOOTMAPSZ           (8 << 20)       /* Initial Memory map for Linux */
381 /*-----------------------------------------------------------------------
382  * FLASH organization ## FIXME: lookup in datasheet
383  */
384 #define CFG_MAX_FLASH_BANKS     2       /* max number of memory banks           */
385 #define CFG_MAX_FLASH_SECT      256     /* max number of sectors on one chip    */
386
387 #define CFG_FLASH_CFI                   /* flash is CFI compat. */
388 #define CFG_FLASH_CFI_DRIVER            /* Use common CFI driver*/
389 #define CFG_FLASH_EMPTY_INFO            /* print 'E' for empty sector   */
390 #define CFG_FLASH_QUIET_TEST    1       /* don't warn upon unknown flash*/
391 #define CFG_FLASH_ERASE_TOUT    120000  /* Timeout for Flash Erase (in ms)      */
392 #define CFG_FLASH_WRITE_TOUT    500     /* Timeout for Flash Write (in ms)      */
393 #define CFG_WRITE_SWAPPED_DATA          /* swap Databytes between reading/writing */
394
395 #define CFG_ENV_IS_IN_FLASH     1
396 #if CFG_ENV_IS_IN_FLASH
397 #define CFG_ENV_OFFSET          0x00000000  /* Offset of Environment Sector in bottom type */
398 #define CFG_ENV_SIZE            0x4000      /* Total Size of Environment Sector */
399 #define CFG_ENV_SECT_SIZE       0x4000      /* see README - env sector total size       */
400
401 /* Address and size of Redundant Environment Sector     */
402 #define CFG_ENV_OFFSET_REDUND   (CFG_ENV_OFFSET+CFG_ENV_SIZE)
403 #define CFG_ENV_SIZE_REDUND     (CFG_ENV_SIZE)
404
405 #endif
406 /* let us changing anything in our environment */
407 #define CONFIG_ENV_OVERWRITE
408
409 /*
410  * NAND-FLASH stuff
411  */
412 #define CFG_MAX_NAND_DEVICE     1
413 #define NAND_MAX_CHIPS          1
414 #define CFG_NAND_BASE           0x77D00000
415
416
417 #define CONFIG_JFFS2_NAND 1                     /* jffs2 on nand support */
418
419 /* No command line, one static partition */
420 #undef  CONFIG_JFFS2_CMDLINE
421 #define CONFIG_JFFS2_DEV                "nand0"
422 #define CONFIG_JFFS2_PART_SIZE          0x01000000
423 #define CONFIG_JFFS2_PART_OFFSET        0x00000000
424
425 /*-----------------------------------------------------------------------
426  * Cache Configuration
427  *
428  * CFG_DCACHE_SIZE -> size of data cache:
429  * - 405GP 8k
430  * - 405GPr 16k
431  * How to handle the difference in chache size?
432  * CFG_CACHELINE_SIZE -> size of one cache line: 32 bytes
433  * (used in cpu/ppc4xx/start.S)
434 */
435 #define CFG_DCACHE_SIZE    16384
436
437 #define CFG_CACHELINE_SIZE 32
438
439 #if (CONFIG_COMMANDS & CFG_CMD_KGDB)
440  #define CFG_CACHELINE_SHIFT    5       /* log base 2 of the above value        */
441 #endif
442
443 /*
444  * Init Memory Controller:
445  *
446  */
447
448 #define FLASH_BASE0_PRELIM      CFG_FLASH_BASE
449 #define FLASH_BASE1_PRELIM      0
450
451 /*-----------------------------------------------------------------------
452  * Some informations about the internal SRAM (OCM=On Chip Memory)
453  *
454  * CFG_OCM_DATA_ADDR -> location
455  * CFG_OCM_DATA_SIZE -> size
456 */
457
458 #define CFG_TEMP_STACK_OCM      1
459 #define CFG_OCM_DATA_ADDR       0xF8000000
460 #define CFG_OCM_DATA_SIZE       0x1000
461
462 /*-----------------------------------------------------------------------
463  * Definitions for initial stack pointer and data area (in DPRAM):
464  * - we are using the internal 4k SRAM, so we don't need data cache mapping
465  * - internal SRAM (OCM=On Chip Memory) is placed to CFG_OCM_DATA_ADDR
466  * - Stackpointer will be located to
467  *   (CFG_INIT_RAM_ADDR&0xFFFF0000) | (CFG_INIT_SP_OFFSET&0x0000FFFF)
468  *   in cpu/ppc4xx/start.S
469  */
470
471 #undef CFG_INIT_DCACHE_CS
472 /* Where the internal SRAM starts */
473 #define CFG_INIT_RAM_ADDR       CFG_OCM_DATA_ADDR
474 /* Where the internal SRAM ends (only offset) */
475 #define CFG_INIT_RAM_END        0x0F00
476
477 /*
478
479  CFG_INIT_RAM_ADDR ------> ------------ lower address
480                            |          |
481                            |  ^       |
482                            |  |       |
483                            |  | Stack |
484  CFG_GBL_DATA_OFFSET ----> ------------
485                            |          |
486                            | 64 Bytes |
487                            |          |
488  CFG_INIT_RAM_END  ------> ------------ higher address
489   (offset only)
490
491 */
492 /* size in bytes reserved for initial data */
493 #define CFG_GBL_DATA_SIZE     64
494 #define CFG_GBL_DATA_OFFSET   (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE)
495 /* Initial value of the stack pointern in internal SRAM */
496 #define CFG_INIT_SP_OFFSET    CFG_GBL_DATA_OFFSET
497
498 /*
499  * Internal Definitions
500  *
501  * Boot Flags
502  */
503 #define BOOTFLAG_COLD   0x01            /* Normal Power-On: Boot from FLASH     */
504 #define BOOTFLAG_WARM   0x02            /* Software reboot                      */
505
506 /* ################################################################################### */
507 /* These defines will be used in cpu/ppc4xx/cpu_init.c to setup external chip selects  */
508 /* They are currently undefined cause they are initiaized in board/solidcard3/init.S   */
509
510 /* This chip select accesses the boot device */
511 /* It depends on boot select switch if this device is 16 or 8 bit */
512
513 #undef CFG_EBC_PB0AP
514 #undef CFG_EBC_PB0CR
515
516 #undef CFG_EBC_PB1AP
517 #undef CFG_EBC_PB1CR
518
519 #undef CFG_EBC_PB2AP
520 #undef CFG_EBC_PB2CR
521
522 #undef CFG_EBC_PB3AP
523 #undef CFG_EBC_PB3CR
524
525 #undef CFG_EBC_PB4AP
526 #undef CFG_EBC_PB4CR
527
528 #undef CFG_EBC_PB5AP
529 #undef CFG_EBC_PB5CR
530
531 #undef CFG_EBC_PB6AP
532 #undef CFG_EBC_PB6CR
533
534 #undef CFG_EBC_PB7AP
535 #undef CFG_EBC_PB7CR
536
537 #define CFG_EBC_CFG    0xb84ef000
538
539 #define CONFIG_SDRAM_BANK0      /* use the standard SDRAM initialization */
540 #undef CONFIG_SPD_EEPROM
541
542 /*
543  * Define this to get more information about system configuration
544  */
545 /* #define SC3_DEBUGOUT */
546 #undef SC3_DEBUGOUT
547
548 /***********************************************************************
549  * External peripheral base address
550  ***********************************************************************/
551
552 #define CFG_ISA_MEM_BASE_ADDRESS 0x78000000
553 /*
554  Die Grafik-Treiber greifen über die Adresse in diesem Macro auf den Chip zu.
555  Das funktioniert bei deren Karten, weil sie eine PCI-Bridge benutzen, die
556  das gleiche Mapping durchführen kann, wie der SC520 (also Aufteilen von IO-Zugriffen
557  auf ISA- und PCI-Zyklen)
558  */
559 #define CFG_ISA_IO_BASE_ADDRESS  0xE8000000
560 /*#define CFG_ISA_IO_BASE_ADDRESS  0x79000000 */
561
562 /************************************************************
563  * Video support
564  ************************************************************/
565
566 #ifdef USE_VGA_GRAPHICS
567 #define CONFIG_VIDEO            /* To enable video controller support */
568 #define CONFIG_VIDEO_CT69000
569 #define CONFIG_CFB_CONSOLE
570 /* #define CONFIG_VIDEO_LOGO */
571 #define CONFIG_VGA_AS_SINGLE_DEVICE
572 #define CONFIG_VIDEO_SW_CURSOR
573 /* #define CONFIG_VIDEO_HW_CURSOR */
574 #define CONFIG_VIDEO_ONBOARD    /* Video controller is on-board */
575
576 #define VIDEO_HW_RECTFILL
577 #define VIDEO_HW_BITBLT
578
579 #endif
580
581 /************************************************************
582  * Ident
583  ************************************************************/
584 #define CONFIG_SC3_VERSION "r1.4"
585
586 #define POST_OUT(x) (*((volatile unsigned char*)(0x79000080))=x)
587
588 #endif  /* __CONFIG_H */