davinci: add support for printing clock frequency
[platform/kernel/u-boot.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_SC3      1
62 #define CONFIG_4xx      1
63 #define CONFIG_405GP    1
64
65 #define CONFIG_SYS_TEXT_BASE    0xFFFA0000
66
67 #define CONFIG_BOARD_EARLY_INIT_F       1
68 #define CONFIG_MISC_INIT_R              1       /* Call misc_init_r() */
69
70 /*
71  * Define IDE_USES_ISA_EMULATION for slower IDE access in the ISA-IO address range
72  * If undefined, IDE access uses a seperat emulation with higher access speed.
73  * Consider to inform your Linux IDE driver about the different addresses!
74  * IDE_USES_ISA_EMULATION is only used if you define CONFIG_CMD_IDE!
75  */
76 #define IDE_USES_ISA_EMULATION
77
78 /*-----------------------------------------------------------------------
79  * Serial Port
80  *----------------------------------------------------------------------*/
81 #define CONFIG_CONS_INDEX       1       /* Use UART0                    */
82 #define CONFIG_SYS_NS16550
83 #define CONFIG_SYS_NS16550_SERIAL
84 #define CONFIG_SYS_NS16550_REG_SIZE     1
85 #define CONFIG_SYS_NS16550_CLK          get_serial_clock()
86 #define CONFIG_SERIAL_MULTI
87
88 /*
89  * define CONFIG_SYS_CLK_FREQ to your base crystal clock in Hz
90  */
91 #define CONFIG_SYS_CLK_FREQ     33333333
92
93 /*
94  * define CONFIG_BAUDRATE to the baudrate value you want to use as default
95  */
96 #define CONFIG_BAUDRATE         115200
97 #define CONFIG_BOOTDELAY        3 /* autoboot after 3 seconds         */
98
99 #define CONFIG_PREBOOT  "echo;" \
100         "echo Type \\\"run flash_nfs\\\" to mount root filesystem over NFS;" \
101         "echo"
102
103 #undef  CONFIG_BOOTARGS
104
105 #define CONFIG_EXTRA_ENV_SETTINGS                                       \
106         "netdev=eth0\0"                                                 \
107         "nfsargs=setenv bootargs root=/dev/nfs rw "                     \
108                 "nfsroot=${serverip}:${rootpath}\0"                     \
109         "ramargs=setenv bootargs root=/dev/ram rw\0"                    \
110         "nand_args=setenv bootargs root=/dev/mtdblock5 rw"              \
111                 "rootfstype=jffs2\0"                                    \
112         "addip=setenv bootargs ${bootargs} "                            \
113                 "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
114                 ":${hostname}:${netdev}:off panic=1\0"                  \
115         "addcons=setenv bootargs ${bootargs} "                          \
116                 "console=ttyS0,${baudrate}\0"                           \
117         "flash_nfs=run nfsargs addip addcons;"                          \
118                 "bootm ${kernel_addr}\0"                                \
119         "flash_nand=run nand_args addip addcons;bootm ${kernel_addr}\0" \
120         "net_nfs=tftp 200000 ${bootfile};run nfsargs addip addcons;"    \
121                 "bootm\0"                                               \
122         "rootpath=/opt/eldk/ppc_4xx\0"                                  \
123         "bootfile=/tftpboot/sc3/uImage\0"                               \
124         "u-boot=/tftpboot/sc3/u-boot.bin\0"                             \
125         "setup=tftp 200000 /tftpboot/sc3/setup.img;source 200000\0"     \
126         "kernel_addr=FFE08000\0"                                        \
127         ""
128 #undef CONFIG_BOOTCOMMAND
129
130 #define CONFIG_SILENT_CONSOLE   1       /* enable silent startup */
131 #define CONFIG_SYS_DEVICE_NULLDEV       1       /* include nulldev device       */
132
133 #if 1   /* feel free to disable for development */
134 #define CONFIG_AUTOBOOT_KEYED           /* Enable password protection   */
135 #define CONFIG_AUTOBOOT_PROMPT          \
136         "\nSC3 - booting... stop with ENTER\n"
137 #define CONFIG_AUTOBOOT_DELAY_STR       "\r"    /* 1st "password"       */
138 #define CONFIG_AUTOBOOT_DELAY_STR2      "\n"    /* 1st "password"       */
139 #endif
140
141 /*
142  * define CONFIG_BOOTCOMMAND to the autoboot commands. They will running after
143  * the CONFIG_BOOTDELAY delay to boot your machine
144  */
145 #define CONFIG_BOOTCOMMAND      "bootp;dcache on;bootm"
146
147 /*
148  * define CONFIG_BOOTARGS to the default kernel parameters. They will used if you don't
149  * set different values at the u-boot prompt
150  */
151 #ifdef USE_VGA_GRAPHICS
152  #define CONFIG_BOOTARGS        "root=/dev/nfs rw ip=bootp nfsroot=/tftpboot/solidcard3re"
153 #else
154  #define CONFIG_BOOTARGS        "console=ttyS0,115200 root=/dev/nfs rw ip=bootp"
155 #endif
156 /*
157  * Is the USB host controller assembled? If yes define CONFIG_ISP1161_PRESENT
158  * This reserves memory bank #4 for this purpose
159  */
160 #undef CONFIG_ISP1161_PRESENT
161
162 #undef CONFIG_LOADS_ECHO   /* no echo on for serial download    */
163 #define CONFIG_SYS_LOADS_BAUD_CHANGE    1       /* allow baudrate change        */
164
165 /* #define CONFIG_EEPRO100_SROM_WRITE */
166 /* #define CONFIG_SHOW_MAC */
167 #define CONFIG_EEPRO100
168
169 #define CONFIG_PPC4xx_EMAC
170 #define CONFIG_MII 1                    /* add 405GP MII PHY management         */
171 #define CONFIG_PHY_ADDR 1       /* the connected Phy defaults to address 1 */
172
173 /*
174  * BOOTP options
175  */
176 #define CONFIG_BOOTP_BOOTFILESIZE
177 #define CONFIG_BOOTP_BOOTPATH
178 #define CONFIG_BOOTP_GATEWAY
179 #define CONFIG_BOOTP_HOSTNAME
180
181
182 /*
183  * Command line configuration.
184  */
185 #include <config_cmd_default.h>
186
187
188 #define CONFIG_CMD_CACHE
189 #define CONFIG_CMD_DATE
190 #define CONFIG_CMD_DHCP
191 #define CONFIG_CMD_ELF
192 #define CONFIG_CMD_I2C
193 #define CONFIG_CMD_IDE
194 #define CONFIG_CMD_IRQ
195 #define CONFIG_CMD_JFFS2
196 #define CONFIG_CMD_MII
197 #define CONFIG_CMD_NAND
198 #define CONFIG_CMD_NET
199 #define CONFIG_CMD_PCI
200 #define CONFIG_CMD_PING
201 #define CONFIG_CMD_SOURCE
202
203
204 #undef CONFIG_WATCHDOG                  /* watchdog disabled            */
205
206 /*
207  * Miscellaneous configurable options
208  */
209 #define CONFIG_SYS_LONGHELP     1               /* undef to save memory         */
210 #define CONFIG_SYS_PROMPT       "SC3> " /* Monitor Command Prompt       */
211 #define CONFIG_SYS_CBSIZE       256             /* Console I/O Buffer Size      */
212
213 #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */
214
215 #define CONFIG_SYS_MAXARGS      16              /* max number of command args   */
216 #define CONFIG_SYS_BARGSIZE     CONFIG_SYS_CBSIZE       /* Boot Argument Buffer Size    */
217
218 #define CONFIG_SYS_MEMTEST_START        0x0400000       /* memtest works on     */
219 #define CONFIG_SYS_MEMTEST_END          0x0C00000       /* 4 ... 12 MB in DRAM  */
220
221 /*
222  * If CONFIG_SYS_EXT_SERIAL_CLOCK, then the UART divisor is 1.
223  * If CONFIG_SYS_405_UART_ERRATA_59, then UART divisor is 31.
224  * Otherwise, UART divisor is determined by CPU Clock and CONFIG_SYS_BASE_BAUD value.
225  * The Linux BASE_BAUD define should match this configuration.
226  *    baseBaud = cpuClock/(uartDivisor*16)
227  * If CONFIG_SYS_405_UART_ERRATA_59 and 200MHz CPU clock,
228  * set Linux BASE_BAUD to 403200.
229  *
230  * Consider the OPB clock! If it get lower the BASE_BAUD must be lower to
231  * (see 405GP datasheet for descritpion)
232  */
233 #undef  CONFIG_SYS_EXT_SERIAL_CLOCK             /* external serial clock */
234 #undef  CONFIG_SYS_405_UART_ERRATA_59           /* 405GP/CR Rev. D silicon */
235 #define CONFIG_SYS_BASE_BAUD            921600  /* internal clock */
236
237 /* The following table includes the supported baudrates */
238 #define CONFIG_SYS_BAUDRATE_TABLE  \
239     {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200, 230400}
240
241 #define CONFIG_SYS_LOAD_ADDR            0x1000000       /* default load address */
242 #define CONFIG_SYS_EXTBDINFO            1       /* To use extended board_into (bd_t) */
243
244 #define CONFIG_SYS_HZ                   1000    /* decrementer freq: 1 ms ticks */
245
246 /*-----------------------------------------------------------------------
247  * IIC stuff
248  *-----------------------------------------------------------------------
249  */
250 #define  CONFIG_HARD_I2C                /* I2C with hardware support    */
251 #undef  CONFIG_SOFT_I2C                 /* I2C bit-banged               */
252 #define CONFIG_PPC4XX_I2C               /* use PPC4xx driver            */
253
254 #define I2C_INIT
255 #define I2C_ACTIVE 0
256 #define I2C_TRISTATE 0
257
258 #define CONFIG_SYS_I2C_SPEED            100000  /* use the standard 100kHz speed */
259 #define CONFIG_SYS_I2C_SLAVE            0x7F            /* mask valid bits */
260
261 #define CONFIG_RTC_DS1337
262 #define CONFIG_SYS_I2C_RTC_ADDR 0x68
263
264 /*-----------------------------------------------------------------------
265  * PCI stuff
266  *-----------------------------------------------------------------------
267  */
268 #define PCI_HOST_ADAPTER 0              /* configure ar pci adapter     */
269 #define PCI_HOST_FORCE  1               /* configure as pci host        */
270 #define PCI_HOST_AUTO   2               /* detected via arbiter enable  */
271
272 #define CONFIG_PCI                      /* include pci support          */
273 #define CONFIG_PCI_HOST PCI_HOST_FORCE  /* select pci host function     */
274 #define CONFIG_PCI_PNP                  /* do pci plug-and-play         */
275                                         /* resource configuration       */
276
277 /* If you want to see, whats connected to your PCI bus */
278 /* #define CONFIG_PCI_SCAN_SHOW */
279
280 #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x0000   /* PCI Vendor ID: to-do!!!      */
281 #define CONFIG_SYS_PCI_SUBSYS_DEVICEID 0x0000   /* PCI Device ID: to-do!!!      */
282 #define CONFIG_SYS_PCI_PTM1LA   0x00000000      /* point to sdram               */
283 #define CONFIG_SYS_PCI_PTM1MS   0x80000001      /* 2GB, enable hard-wired to 1  */
284 #define CONFIG_SYS_PCI_PTM1PCI 0x00000000       /* Host: use this pci address   */
285 #define CONFIG_SYS_PCI_PTM2LA   0x00000000      /* disabled                     */
286 #define CONFIG_SYS_PCI_PTM2MS   0x00000000      /* disabled                     */
287 #define CONFIG_SYS_PCI_PTM2PCI 0x04000000       /* Host: use this pci address   */
288
289 /*-----------------------------------------------------------------------
290  * External peripheral base address
291  *-----------------------------------------------------------------------
292  */
293 #if !defined(CONFIG_CMD_IDE)
294
295 #undef  CONFIG_IDE_LED                  /* no led for ide supported     */
296 #undef  CONFIG_IDE_RESET                /* no reset for ide supported   */
297
298 /*-----------------------------------------------------------------------
299  * IDE/ATA stuff
300  *-----------------------------------------------------------------------
301  */
302 #else
303 #define CONFIG_START_IDE        1       /* check, if use IDE */
304
305 #undef  CONFIG_IDE_8xx_DIRECT           /* no pcmcia interface required */
306 #undef  CONFIG_IDE_LED                  /* no led for ide supported     */
307 #undef  CONFIG_IDE_RESET                /* no reset for ide supported   */
308
309 #define CONFIG_ATAPI
310 #define CONFIG_DOS_PARTITION
311 #define CONFIG_SYS_IDE_MAXDEVICE        (CONFIG_SYS_IDE_MAXBUS*1) /* max. 1 drives per IDE bus */
312
313 #ifndef IDE_USES_ISA_EMULATION
314
315 /* New and faster access */
316 #define CONFIG_SYS_ATA_BASE_ADDR                0x7A000000      /* start of ISA IO emulation */
317
318 /* How many IDE busses are available */
319 #define CONFIG_SYS_IDE_MAXBUS           1
320
321 /* What IDE ports are available */
322 #define CONFIG_SYS_ATA_IDE0_OFFSET      0x000           /* first is available */
323 #undef  CONFIG_SYS_ATA_IDE1_OFFSET                      /* second not available */
324
325 /* access to the data port is calculated:
326    CONFIG_SYS_ATA_BASE_ADDR + CONFIG_SYS_ATA_IDE0_OFFSET + CONFIG_SYS_ATA_DATA_OFFSET + 0 */
327 #define CONFIG_SYS_ATA_DATA_OFFSET      0x0000  /* Offset for data I/O */
328
329 /* access to the registers is calculated:
330    CONFIG_SYS_ATA_BASE_ADDR + CONFIG_SYS_ATA_IDE0_OFFSET + CONFIG_SYS_ATA_REG_OFFSET + [1..7] */
331 #define CONFIG_SYS_ATA_REG_OFFSET       0x0000  /* Offset for normal register accesses  */
332
333 /* access to the alternate register is calculated:
334    CONFIG_SYS_ATA_BASE_ADDR + CONFIG_SYS_ATA_IDE0_OFFSET + CONFIG_SYS_ATA_ALT_OFFSET + 6 */
335 #define CONFIG_SYS_ATA_ALT_OFFSET       0x008           /* Offset for alternate registers       */
336
337 #else /* IDE_USES_ISA_EMULATION */
338
339 #define CONFIG_SYS_ATA_BASE_ADDR                0x79000000      /* start of ISA IO emulation */
340
341 /* How many IDE busses are available */
342 #define CONFIG_SYS_IDE_MAXBUS           1
343
344 /* What IDE ports are available */
345 #define CONFIG_SYS_ATA_IDE0_OFFSET      0x01F0  /* first is available */
346 #undef  CONFIG_SYS_ATA_IDE1_OFFSET                              /* second not available */
347
348 /* access to the data port is calculated:
349    CONFIG_SYS_ATA_BASE_ADDR + CONFIG_SYS_ATA_IDE0_OFFSET + CONFIG_SYS_ATA_DATA_OFFSET + 0 */
350 #define CONFIG_SYS_ATA_DATA_OFFSET      0x0000  /* Offset for data I/O */
351
352 /* access to the registers is calculated:
353    CONFIG_SYS_ATA_BASE_ADDR + CONFIG_SYS_ATA_IDE0_OFFSET + CONFIG_SYS_ATA_REG_OFFSET + [1..7] */
354 #define CONFIG_SYS_ATA_REG_OFFSET       0x0000  /* Offset for normal register accesses  */
355
356 /* access to the alternate register is calculated:
357    CONFIG_SYS_ATA_BASE_ADDR + CONFIG_SYS_ATA_IDE0_OFFSET + CONFIG_SYS_ATA_ALT_OFFSET + 6 */
358 #define CONFIG_SYS_ATA_ALT_OFFSET       0x03F0          /* Offset for alternate registers       */
359
360 #endif /* IDE_USES_ISA_EMULATION */
361
362 #endif
363
364 /*
365 #define CONFIG_SYS_KEY_REG_BASE_ADDR    0xF0100000
366 #define CONFIG_SYS_IR_REG_BASE_ADDR     0xF0200000
367 #define CONFIG_SYS_FPGA_REG_BASE_ADDR   0xF0300000
368 */
369
370 /*-----------------------------------------------------------------------
371  * Start addresses for the final memory configuration
372  * (Set up by the startup code)
373  * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0
374  *
375  * CONFIG_SYS_FLASH_BASE   -> start address of internal flash
376  * CONFIG_SYS_MONITOR_BASE -> start of u-boot
377  */
378 #define CONFIG_SYS_SDRAM_BASE           0x00000000
379 #define CONFIG_SYS_FLASH_BASE           0xFFE00000
380
381 #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE    /* Start of U-Boot      */
382 #define CONFIG_SYS_MONITOR_LEN          (0xFFFFFFFF - CONFIG_SYS_MONITOR_BASE + 1)
383 #define CONFIG_SYS_MALLOC_LEN           (128 * 1024)    /* Reserve 128 KiB for malloc() */
384
385 /*
386  * For booting Linux, the board info and command line data
387  * have to be in the first 8 MiB of memory, since this is
388  * the maximum mapped by the Linux kernel during initialization.
389  */
390 #define CONFIG_SYS_BOOTMAPSZ            (8 << 20)       /* Initial Memory map for Linux */
391 /*-----------------------------------------------------------------------
392  * FLASH organization ## FIXME: lookup in datasheet
393  */
394 #define CONFIG_SYS_MAX_FLASH_BANKS      2       /* max number of memory banks           */
395 #define CONFIG_SYS_MAX_FLASH_SECT       256     /* max number of sectors on one chip    */
396
397 #define CONFIG_SYS_FLASH_CFI                    /* flash is CFI compat. */
398 #define CONFIG_FLASH_CFI_DRIVER         /* Use common CFI driver*/
399 #define CONFIG_SYS_FLASH_EMPTY_INFO             /* print 'E' for empty sector   */
400 #define CONFIG_SYS_FLASH_QUIET_TEST     1       /* don't warn upon unknown flash*/
401 #define CONFIG_SYS_FLASH_ERASE_TOUT     120000  /* Timeout for Flash Erase (in ms)      */
402 #define CONFIG_SYS_FLASH_WRITE_TOUT     500     /* Timeout for Flash Write (in ms)      */
403 #define CONFIG_SYS_WRITE_SWAPPED_DATA           /* swap Databytes between reading/writing */
404
405 #define CONFIG_ENV_IS_IN_FLASH  1
406 #ifdef CONFIG_ENV_IS_IN_FLASH
407 #define CONFIG_ENV_OFFSET               0x00000000  /* Offset of Environment Sector in bottom type */
408 #define CONFIG_ENV_SIZE         0x4000      /* Total Size of Environment Sector */
409 #define CONFIG_ENV_SECT_SIZE    0x4000      /* see README - env sector total size       */
410
411 /* Address and size of Redundant Environment Sector     */
412 #define CONFIG_ENV_OFFSET_REDUND        (CONFIG_ENV_OFFSET+CONFIG_ENV_SIZE)
413 #define CONFIG_ENV_SIZE_REDUND  (CONFIG_ENV_SIZE)
414
415 #endif
416 /* let us changing anything in our environment */
417 #define CONFIG_ENV_OVERWRITE
418
419 /*
420  * NAND-FLASH stuff
421  */
422 #define CONFIG_SYS_MAX_NAND_DEVICE      1
423 #define CONFIG_SYS_NAND_BASE            0x77D00000
424
425 #define CONFIG_JFFS2_NAND 1                     /* jffs2 on nand support */
426
427 /* No command line, one static partition */
428 #undef  CONFIG_CMD_MTDPARTS
429 #define CONFIG_JFFS2_DEV                "nand0"
430 #define CONFIG_JFFS2_PART_SIZE          0x01000000
431 #define CONFIG_JFFS2_PART_OFFSET        0x00000000
432
433 /*
434  * Init Memory Controller:
435  *
436  */
437
438 #define FLASH_BASE0_PRELIM      CONFIG_SYS_FLASH_BASE
439 #define FLASH_BASE1_PRELIM      0
440
441 /*-----------------------------------------------------------------------
442  * Some informations about the internal SRAM (OCM=On Chip Memory)
443  *
444  * CONFIG_SYS_OCM_DATA_ADDR -> location
445  * CONFIG_SYS_OCM_DATA_SIZE -> size
446 */
447
448 #define CONFIG_SYS_TEMP_STACK_OCM       1
449 #define CONFIG_SYS_OCM_DATA_ADDR        0xF8000000
450 #define CONFIG_SYS_OCM_DATA_SIZE        0x1000
451
452 /*-----------------------------------------------------------------------
453  * Definitions for initial stack pointer and data area (in DPRAM):
454  * - we are using the internal 4k SRAM, so we don't need data cache mapping
455  * - internal SRAM (OCM=On Chip Memory) is placed to CONFIG_SYS_OCM_DATA_ADDR
456  * - Stackpointer will be located to
457  *   (CONFIG_SYS_INIT_RAM_ADDR&0xFFFF0000) | (CONFIG_SYS_INIT_SP_OFFSET&0x0000FFFF)
458  *   in arch/powerpc/cpu/ppc4xx/start.S
459  */
460
461 #undef CONFIG_SYS_INIT_DCACHE_CS
462 /* Where the internal SRAM starts */
463 #define CONFIG_SYS_INIT_RAM_ADDR        CONFIG_SYS_OCM_DATA_ADDR
464 /* Where the internal SRAM ends (only offset) */
465 #define CONFIG_SYS_INIT_RAM_SIZE        0x0F00
466
467 /*
468
469  CONFIG_SYS_INIT_RAM_ADDR ------> ------------ lower address
470                            |          |
471                            |  ^       |
472                            |  |       |
473                            |  | Stack |
474  CONFIG_SYS_GBL_DATA_OFFSET ----> ------------
475                            |          |
476                            | 64 Bytes |
477                            |          |
478  CONFIG_SYS_INIT_RAM_SIZE  ------> ------------ higher address
479   (offset only)
480
481 */
482 #define CONFIG_SYS_GBL_DATA_OFFSET   (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
483 /* Initial value of the stack pointern in internal SRAM */
484 #define CONFIG_SYS_INIT_SP_OFFSET    CONFIG_SYS_GBL_DATA_OFFSET
485
486 /* ################################################################################### */
487 /* These defines will be used in arch/powerpc/cpu/ppc4xx/cpu_init.c to setup external chip selects  */
488 /* They are currently undefined cause they are initiaized in board/solidcard3/init.S   */
489
490 /* This chip select accesses the boot device */
491 /* It depends on boot select switch if this device is 16 or 8 bit */
492
493 #undef CONFIG_SYS_EBC_PB0AP
494 #undef CONFIG_SYS_EBC_PB0CR
495
496 #undef CONFIG_SYS_EBC_PB1AP
497 #undef CONFIG_SYS_EBC_PB1CR
498
499 #undef CONFIG_SYS_EBC_PB2AP
500 #undef CONFIG_SYS_EBC_PB2CR
501
502 #undef CONFIG_SYS_EBC_PB3AP
503 #undef CONFIG_SYS_EBC_PB3CR
504
505 #undef CONFIG_SYS_EBC_PB4AP
506 #undef CONFIG_SYS_EBC_PB4CR
507
508 #undef CONFIG_SYS_EBC_PB5AP
509 #undef CONFIG_SYS_EBC_PB5CR
510
511 #undef CONFIG_SYS_EBC_PB6AP
512 #undef CONFIG_SYS_EBC_PB6CR
513
514 #undef CONFIG_SYS_EBC_PB7AP
515 #undef CONFIG_SYS_EBC_PB7CR
516
517 #define CONFIG_SYS_EBC_CFG    0xb84ef000
518
519 #undef CONFIG_SDRAM_BANK0       /* use private SDRAM initialization */
520 #undef CONFIG_SPD_EEPROM
521
522 /*
523  * Define this to get more information about system configuration
524  */
525 /* #define SC3_DEBUGOUT */
526 #undef SC3_DEBUGOUT
527
528 /***********************************************************************
529  * External peripheral base address
530  ***********************************************************************/
531
532 #define CONFIG_SYS_ISA_MEM_BASE_ADDRESS 0x78000000
533 /*
534  Die Grafik-Treiber greifen über die Adresse in diesem Macro auf den Chip zu.
535  Das funktioniert bei deren Karten, weil sie eine PCI-Bridge benutzen, die
536  das gleiche Mapping durchführen kann, wie der SC520 (also Aufteilen von IO-Zugriffen
537  auf ISA- und PCI-Zyklen)
538  */
539 #define CONFIG_SYS_ISA_IO_BASE_ADDRESS  0xE8000000
540 /*#define CONFIG_SYS_ISA_IO_BASE_ADDRESS  0x79000000 */
541
542 /************************************************************
543  * Video support
544  ************************************************************/
545
546 #ifdef USE_VGA_GRAPHICS
547 #define CONFIG_VIDEO            /* To enable video controller support */
548 #define CONFIG_VIDEO_CT69000
549 #define CONFIG_CFB_CONSOLE
550 /* #define CONFIG_VIDEO_LOGO */
551 #define CONFIG_VGA_AS_SINGLE_DEVICE
552 #define CONFIG_VIDEO_SW_CURSOR
553 /* #define CONFIG_VIDEO_HW_CURSOR */
554 #define CONFIG_VIDEO_ONBOARD    /* Video controller is on-board */
555
556 #define VIDEO_HW_RECTFILL
557 #define VIDEO_HW_BITBLT
558
559 #endif
560
561 /************************************************************
562  * Ident
563  ************************************************************/
564 #define CONFIG_SC3_VERSION "r1.4"
565
566 #define POST_OUT(x) (*((volatile unsigned char*)(0x79000080))=x)
567
568 #endif  /* __CONFIG_H */