~pmdj/ubuntu/trusty/qemu/2.9+applesmc+fadtv3

« back to all changes in this revision

Viewing changes to roms/u-boot/include/configs/TQM5200.h

  • Committer: Phil Dennis-Jordan
  • Date: 2017-07-21 08:03:43 UTC
  • mfrom: (1.1.1)
  • Revision ID: phil@philjordan.eu-20170721080343-2yr2vdj7713czahv
New upstream release 2.9.0.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
/*
 
2
 * (C) Copyright 2003-2005
 
3
 * Wolfgang Denk, DENX Software Engineering, wd@denx.de.
 
4
 *
 
5
 * (C) Copyright 2004-2006
 
6
 * Martin Krause, TQ-Systems GmbH, martin.krause@tqs.de
 
7
 *
 
8
 * SPDX-License-Identifier:     GPL-2.0+
 
9
 */
 
10
 
 
11
#ifndef __CONFIG_H
 
12
#define __CONFIG_H
 
13
 
 
14
/*
 
15
 * High Level Configuration Options
 
16
 * (easy to change)
 
17
 */
 
18
 
 
19
#define CONFIG_MPC5200          1       /* This is an MPC5200 CPU               */
 
20
#define CONFIG_TQM5200          1       /* ... on TQM5200 module                */
 
21
#undef CONFIG_TQM5200_REV100            /*  define for revision 100 modules     */
 
22
 
 
23
/*
 
24
 * Valid values for CONFIG_SYS_TEXT_BASE are:
 
25
 * 0xFC000000   boot low (standard configuration with room for
 
26
 *              max 64 MByte Flash ROM)
 
27
 * 0xFFF00000   boot high (for a backup copy of U-Boot)
 
28
 * 0x00100000   boot from RAM (for testing only)
 
29
 */
 
30
#ifndef CONFIG_SYS_TEXT_BASE
 
31
#define CONFIG_SYS_TEXT_BASE    0xFC000000
 
32
#endif
 
33
 
 
34
/* On a Cameron or on a FO300 board or ...                              */
 
35
#if !defined(CONFIG_CAM5200) && !defined(CONFIG_CHARON) \
 
36
        && !defined(CONFIG_FO300)
 
37
#define CONFIG_STK52XX          1       /* ... on a STK52XX board               */
 
38
#endif
 
39
 
 
40
#define CONFIG_SYS_MPC5XXX_CLKIN        33000000 /* ... running at 33.000000MHz         */
 
41
 
 
42
#define CONFIG_HIGH_BATS        1       /* High BATs supported                  */
 
43
 
 
44
/*
 
45
 * Serial console configuration
 
46
 */
 
47
#define CONFIG_PSC_CONSOLE      1       /* console is on PSC1                   */
 
48
#define CONFIG_BAUDRATE         115200  /* ... at 115200 bps                    */
 
49
#define CONFIG_SYS_BAUDRATE_TABLE       { 9600, 19200, 38400, 57600, 115200, 230400 }
 
50
#define CONFIG_BOOTCOUNT_LIMIT  1
 
51
 
 
52
#ifdef CONFIG_FO300
 
53
#define CONFIG_SYS_DEVICE_NULLDEV               1       /* enable null device */
 
54
#define CONFIG_SILENT_CONSOLE           1       /* enable silent startup */
 
55
#define CONFIG_BOARD_EARLY_INIT_F       1       /* used to detect S1 switch position */
 
56
#define CONFIG_USB_BIN_FIXUP            1       /* for a buggy USB device */
 
57
#if 0
 
58
#define FO300_SILENT_CONSOLE_WHEN_S1_CLOSED     1       /* silent console on PSC1 when S1 */
 
59
                                                        /* switch is closed */
 
60
#endif
 
61
 
 
62
#undef FO300_SILENT_CONSOLE_WHEN_S1_CLOSED              /* silent console on PSC1 when S1 */
 
63
                                                        /* switch is open */
 
64
#endif  /* CONFIG_FO300 */
 
65
 
 
66
#if defined(CONFIG_CHARON) || defined(CONFIG_STK52XX)
 
67
#define CONFIG_PS2KBD                   /* AT-PS/2 Keyboard             */
 
68
#define CONFIG_PS2MULT                  /* .. on PS/2 Multiplexer       */
 
69
#define CONFIG_PS2SERIAL        6       /* .. on PSC6                   */
 
70
#define CONFIG_PS2MULT_DELAY    (CONFIG_SYS_HZ/2)       /* Initial delay        */
 
71
#define CONFIG_BOARD_EARLY_INIT_R
 
72
#endif /* CONFIG_STK52XX */
 
73
 
 
74
/*
 
75
 * PCI Mapping:
 
76
 * 0x40000000 - 0x4fffffff - PCI Memory
 
77
 * 0x50000000 - 0x50ffffff - PCI IO Space
 
78
 */
 
79
#if defined(CONFIG_CHARON) || defined(CONFIG_STK52XX)
 
80
#define CONFIG_PCI              1
 
81
#define CONFIG_PCI_PNP          1
 
82
/* #define CONFIG_PCI_SCAN_SHOW 1 */
 
83
 
 
84
#define CONFIG_PCI_MEM_BUS      0x40000000
 
85
#define CONFIG_PCI_MEM_PHYS     CONFIG_PCI_MEM_BUS
 
86
#define CONFIG_PCI_MEM_SIZE     0x10000000
 
87
 
 
88
#define CONFIG_PCI_IO_BUS       0x50000000
 
89
#define CONFIG_PCI_IO_PHYS      CONFIG_PCI_IO_BUS
 
90
#define CONFIG_PCI_IO_SIZE      0x01000000
 
91
 
 
92
#define CONFIG_EEPRO100         1
 
93
#define CONFIG_SYS_RX_ETH_BUFFER        8  /* use 8 rx buffer on eepro100  */
 
94
#define CONFIG_NS8382X          1
 
95
#endif  /* CONFIG_STK52XX */
 
96
 
 
97
/*
 
98
 * Video console
 
99
 */
 
100
#ifndef CONFIG_TQM5200S         /* No graphics controller on TQM5200S */
 
101
#define CONFIG_VIDEO
 
102
#define CONFIG_VIDEO_SM501
 
103
#define CONFIG_VIDEO_SM501_32BPP
 
104
#define CONFIG_CFB_CONSOLE
 
105
#define CONFIG_VIDEO_LOGO
 
106
 
 
107
#ifndef CONFIG_FO300
 
108
#define CONFIG_CONSOLE_EXTRA_INFO
 
109
#else
 
110
#define CONFIG_VIDEO_BMP_LOGO
 
111
#endif
 
112
 
 
113
#define CONFIG_VGA_AS_SINGLE_DEVICE
 
114
#define CONFIG_VIDEO_SW_CURSOR
 
115
#define CONFIG_SPLASH_SCREEN
 
116
#define CONFIG_SYS_CONSOLE_IS_IN_ENV
 
117
#endif /* #ifndef CONFIG_TQM5200S */
 
118
 
 
119
 
 
120
/* Partitions */
 
121
#define CONFIG_MAC_PARTITION
 
122
#define CONFIG_DOS_PARTITION
 
123
#define CONFIG_ISO_PARTITION
 
124
 
 
125
/* USB */
 
126
#if defined(CONFIG_CHARON) || defined(CONFIG_FO300) || \
 
127
    defined(CONFIG_STK52XX)
 
128
#define CONFIG_USB_OHCI_NEW
 
129
#define CONFIG_SYS_OHCI_BE_CONTROLLER
 
130
#define CONFIG_USB_STORAGE
 
131
#define CONFIG_CMD_FAT
 
132
#define CONFIG_CMD_USB
 
133
 
 
134
#undef CONFIG_SYS_USB_OHCI_BOARD_INIT
 
135
#define CONFIG_SYS_USB_OHCI_CPU_INIT
 
136
#define CONFIG_SYS_USB_OHCI_REGS_BASE   MPC5XXX_USB
 
137
#define CONFIG_SYS_USB_OHCI_SLOT_NAME   "mpc5200"
 
138
#define CONFIG_SYS_USB_OHCI_MAX_ROOT_PORTS      15
 
139
 
 
140
#endif
 
141
 
 
142
#ifndef CONFIG_CAM5200
 
143
/* POST support */
 
144
#define CONFIG_POST             (CONFIG_SYS_POST_MEMORY   | \
 
145
                                 CONFIG_SYS_POST_CPU       | \
 
146
                                 CONFIG_SYS_POST_I2C)
 
147
#endif
 
148
 
 
149
#ifdef CONFIG_POST
 
150
/* preserve space for the post_word at end of on-chip SRAM */
 
151
#define MPC5XXX_SRAM_POST_SIZE MPC5XXX_SRAM_SIZE-4
 
152
#endif
 
153
 
 
154
 
 
155
/*
 
156
 * BOOTP options
 
157
 */
 
158
#define CONFIG_BOOTP_BOOTFILESIZE
 
159
#define CONFIG_BOOTP_BOOTPATH
 
160
#define CONFIG_BOOTP_GATEWAY
 
161
#define CONFIG_BOOTP_HOSTNAME
 
162
 
 
163
 
 
164
/*
 
165
 * Command line configuration.
 
166
 */
 
167
#include <config_cmd_default.h>
 
168
 
 
169
#define CONFIG_CMD_ASKENV
 
170
#define CONFIG_CMD_DATE
 
171
#define CONFIG_CMD_DHCP
 
172
#define CONFIG_CMD_EEPROM
 
173
#define CONFIG_CMD_I2C
 
174
#define CONFIG_CMD_JFFS2
 
175
#define CONFIG_CMD_MII
 
176
#define CONFIG_CMD_NFS
 
177
#define CONFIG_CMD_PING
 
178
#define CONFIG_CMD_REGINFO
 
179
#define CONFIG_CMD_SNTP
 
180
#define CONFIG_CMD_BSP
 
181
 
 
182
#ifdef CONFIG_VIDEO
 
183
    #define CONFIG_CMD_BMP
 
184
#endif
 
185
 
 
186
#ifdef CONFIG_PCI
 
187
#define CONFIG_CMD_PCI
 
188
#define CONFIG_PCIAUTO_SKIP_HOST_BRIDGE 1
 
189
#endif
 
190
 
 
191
#if defined(CONFIG_CHARON) || defined(CONFIG_FO300) || \
 
192
        defined(CONFIG_MINIFAP) || defined(CONFIG_STK52XX)
 
193
    #define CONFIG_CMD_IDE
 
194
    #define CONFIG_CMD_FAT
 
195
    #define CONFIG_CMD_EXT2
 
196
#endif
 
197
 
 
198
#if defined(CONFIG_CHARON) || defined(CONFIG_FO300) || \
 
199
        defined(CONFIG_STK52XX)
 
200
    #define CONFIG_CFG_USB
 
201
    #define CONFIG_CFG_FAT
 
202
#endif
 
203
 
 
204
#ifdef CONFIG_POST
 
205
    #define CONFIG_CMD_DIAG
 
206
#endif
 
207
 
 
208
 
 
209
#define CONFIG_TIMESTAMP                /* display image timestamps */
 
210
 
 
211
#if (CONFIG_SYS_TEXT_BASE != 0xFFF00000)
 
212
#   define CONFIG_SYS_LOWBOOT           1       /* Boot low */
 
213
#endif
 
214
 
 
215
/*
 
216
 * Autobooting
 
217
 */
 
218
#define CONFIG_BOOTDELAY        5       /* autoboot after 5 seconds */
 
219
 
 
220
#define CONFIG_PREBOOT  "echo;" \
 
221
        "echo Type \\\"run flash_nfs\\\" to mount root filesystem over NFS;" \
 
222
        "echo"
 
223
 
 
224
#undef  CONFIG_BOOTARGS
 
225
 
 
226
#if defined(CONFIG_TQM5200_B) && !defined(CONFIG_SYS_LOWBOOT)
 
227
# define ENV_UPDT                                                       \
 
228
        "update=protect off FFF00000 +${filesize};"                     \
 
229
                "erase FFF00000 +${filesize};"                          \
 
230
                "cp.b 200000 FFF00000 ${filesize};"                     \
 
231
                "protect on FFF00000 +${filesize}\0"
 
232
#else   /* default lowboot configuration */
 
233
#   define ENV_UPDT                                                     \
 
234
        "update=protect off FC000000 +${filesize};"                     \
 
235
                "erase FC000000 +${filesize};"                          \
 
236
                "cp.b 200000 FC000000 ${filesize};"                     \
 
237
                "protect on FC000000 +${filesize}\0"
 
238
#endif
 
239
 
 
240
#if defined(CONFIG_TQM5200)
 
241
#define CUSTOM_ENV_SETTINGS                                             \
 
242
        "hostname=tqm5200\0"                                            \
 
243
        "bootfile=/tftpboot/tqm5200/uImage\0"                           \
 
244
        "fdt_file=/tftpboot/tqm5200/tqm5200.dtb\0"                      \
 
245
        "u-boot=/tftpboot/tqm5200/u-boot.bin\0"
 
246
#elif defined(CONFIG_CAM5200)
 
247
#define CUSTOM_ENV_SETTINGS                                             \
 
248
        "bootfile=cam5200/uImage\0"                                     \
 
249
        "u-boot=cam5200/u-boot.bin\0"                                   \
 
250
        "setup=tftp 200000 cam5200/setup.img; source 200000\0"
 
251
#endif
 
252
 
 
253
#if defined(CONFIG_TQM5200_B)
 
254
#define ENV_FLASH_LAYOUT                                                \
 
255
        "fdt_addr=FC100000\0"                                           \
 
256
        "kernel_addr=FC140000\0"                                        \
 
257
        "ramdisk_addr=FC600000\0"
 
258
#elif defined(CONFIG_CHARON)
 
259
#define ENV_FLASH_LAYOUT                                                \
 
260
        "fdt_addr=FDFC0000\0"                                           \
 
261
        "kernel_addr=FC0A0000\0"                                        \
 
262
        "ramdisk_addr=FC200000\0"
 
263
#else   /* !CONFIG_TQM5200_B */
 
264
#define ENV_FLASH_LAYOUT                                                \
 
265
        "fdt_addr=FC0A0000\0"                                           \
 
266
        "kernel_addr=FC0C0000\0"                                        \
 
267
        "ramdisk_addr=FC300000\0"
 
268
#endif
 
269
 
 
270
#define CONFIG_EXTRA_ENV_SETTINGS                                       \
 
271
        "netdev=eth0\0"                                                 \
 
272
        "console=ttyPSC0\0"                                             \
 
273
        ENV_FLASH_LAYOUT                                                \
 
274
        "kernel_addr_r=400000\0"                                        \
 
275
        "fdt_addr_r=600000\0"                                           \
 
276
        "rootpath=/opt/eldk/ppc_6xx\0"                                  \
 
277
        "ramargs=setenv bootargs root=/dev/ram rw\0"                    \
 
278
        "nfsargs=setenv bootargs root=/dev/nfs rw "                     \
 
279
                "nfsroot=${serverip}:${rootpath}\0"                     \
 
280
        "addip=setenv bootargs ${bootargs} "                            \
 
281
                "ip=${ipaddr}:${serverip}:${gatewayip}:${netmask}"      \
 
282
                ":${hostname}:${netdev}:off panic=1\0"                  \
 
283
        "addcons=setenv bootargs ${bootargs} "                          \
 
284
                "console=${console},${baudrate}\0"                      \
 
285
        "addmtd=setenv bootargs ${bootargs} ${mtdparts}\0"              \
 
286
        "flash_self_old=sete console ttyS0; "                           \
 
287
                "run ramargs addip addcons addmtd; "                    \
 
288
                "bootm ${kernel_addr} ${ramdisk_addr}\0"                \
 
289
        "flash_self=run ramargs addip addcons;"                         \
 
290
                "bootm ${kernel_addr} ${ramdisk_addr} ${fdt_addr}\0"    \
 
291
        "flash_nfs_old=sete console ttyS0; run nfsargs addip addcons;"  \
 
292
                "bootm ${kernel_addr}\0"                                \
 
293
        "flash_nfs=run nfsargs addip addcons;"                          \
 
294
                "bootm ${kernel_addr} - ${fdt_addr}\0"                  \
 
295
        "net_nfs_old=tftp ${kernel_addr_r} ${bootfile};"                \
 
296
                "sete console ttyS0; run nfsargs addip addcons;bootm\0" \
 
297
        "net_nfs=tftp ${kernel_addr_r} ${bootfile}; "                   \
 
298
                "tftp ${fdt_addr_r} ${fdt_file}; "                      \
 
299
                "run nfsargs addip addcons addmtd; "                    \
 
300
                "bootm ${kernel_addr_r} - ${fdt_addr_r}\0"              \
 
301
        CUSTOM_ENV_SETTINGS                                             \
 
302
        "load=tftp 200000 ${u-boot}\0"                                  \
 
303
        ENV_UPDT                                                        \
 
304
        ""
 
305
 
 
306
#define CONFIG_BOOTCOMMAND      "run net_nfs"
 
307
 
 
308
/*
 
309
 * IPB Bus clocking configuration.
 
310
 */
 
311
#define CONFIG_SYS_IPBCLK_EQUALS_XLBCLK         /* define for 133MHz speed */
 
312
 
 
313
#if defined(CONFIG_SYS_IPBCLK_EQUALS_XLBCLK) && !defined(CONFIG_CAM5200)
 
314
/*
 
315
 * PCI Bus clocking configuration
 
316
 *
 
317
 * Actually a PCI Clock of 66 MHz is only set (in cpu_init.c) if
 
318
 * CONFIG_SYS_IPBCLK_EQUALS_XLBCLK is defined. This is because a PCI Clock of
 
319
 * 66 MHz yet hasn't been tested with a IPB Bus Clock of 66 MHz.
 
320
 */
 
321
#define CONFIG_SYS_PCICLK_EQUALS_IPBCLK_DIV2    /* define for 66MHz speed */
 
322
#endif
 
323
 
 
324
/*
 
325
 * I2C configuration
 
326
 */
 
327
#define CONFIG_HARD_I2C         1       /* I2C with hardware support */
 
328
#ifdef CONFIG_TQM5200_REV100
 
329
#define CONFIG_SYS_I2C_MODULE           1       /* Select I2C module #1 for rev. 100 board */
 
330
#else
 
331
#define CONFIG_SYS_I2C_MODULE           2       /* Select I2C module #2 for all other revs */
 
332
#endif
 
333
 
 
334
/*
 
335
 * I2C clock frequency
 
336
 *
 
337
 * Please notice, that the resulting clock frequency could differ from the
 
338
 * configured value. This is because the I2C clock is derived from system
 
339
 * clock over a frequency divider with only a few divider values. U-boot
 
340
 * calculates the best approximation for CONFIG_SYS_I2C_SPEED. However the calculated
 
341
 * approximation allways lies below the configured value, never above.
 
342
 */
 
343
#define CONFIG_SYS_I2C_SPEED            100000 /* 100 kHz */
 
344
#define CONFIG_SYS_I2C_SLAVE            0x7F
 
345
 
 
346
/*
 
347
 * EEPROM configuration for onboard EEPROM M24C32 (M24C64 should work
 
348
 * also). For other EEPROMs configuration should be verified. On Mini-FAP the
 
349
 * EEPROM (24C64) is on the same I2C address (but on other I2C bus), so the
 
350
 * same configuration could be used.
 
351
 */
 
352
#define CONFIG_SYS_I2C_EEPROM_ADDR              0x50    /* 1010000x */
 
353
#define CONFIG_SYS_I2C_EEPROM_ADDR_LEN          2
 
354
#define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS       5       /* =32 Bytes per write */
 
355
#define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS   20
 
356
 
 
357
/*
 
358
 * HW-Monitor configuration on Mini-FAP
 
359
 */
 
360
#if defined (CONFIG_MINIFAP)
 
361
#define CONFIG_SYS_I2C_HWMON_ADDR               0x2C
 
362
#endif
 
363
 
 
364
/* List of I2C addresses to be verified by POST */
 
365
#if defined (CONFIG_MINIFAP)
 
366
#undef CONFIG_SYS_POST_I2C_ADDRS
 
367
#define CONFIG_SYS_POST_I2C_ADDRS       {CONFIG_SYS_I2C_EEPROM_ADDR,    \
 
368
                                         CONFIG_SYS_I2C_HWMON_ADDR,     \
 
369
                                         CONFIG_SYS_I2C_SLAVE}
 
370
#endif
 
371
 
 
372
/*
 
373
 * Flash configuration
 
374
 */
 
375
#define CONFIG_SYS_FLASH_BASE           0xFC000000
 
376
 
 
377
#if defined(CONFIG_CAM5200) && defined(CONFIG_CAM5200_NIOSFLASH)
 
378
#define CONFIG_SYS_MAX_FLASH_BANKS      2       /* max num of flash banks
 
379
                                           (= chip selects) */
 
380
#define CONFIG_SYS_FLASH_WORD_SIZE      unsigned int /* main flash device with */
 
381
#define CONFIG_SYS_FLASH_ERASE_TOUT     120000  /* Timeout for Flash Erase (in ms) */
 
382
#define CONFIG_SYS_FLASH_WRITE_TOUT     500     /* Timeout for Flash Write (in ms) */
 
383
 
 
384
#define CONFIG_SYS_FLASH_ADDR0          0x555
 
385
#define CONFIG_SYS_FLASH_ADDR1          0x2AA
 
386
#define CONFIG_SYS_FLASH_2ND_16BIT_DEV  1       /* NIOS flash is a 16bit device */
 
387
#define CONFIG_SYS_MAX_FLASH_SECT       128
 
388
#else
 
389
/* use CFI flash driver */
 
390
#define CONFIG_SYS_FLASH_CFI            1       /* Flash is CFI conformant */
 
391
#define CONFIG_FLASH_CFI_DRIVER 1       /* Use the common driver */
 
392
#define CONFIG_FLASH_CFI_MTD            /* with MTD support */
 
393
#define CONFIG_SYS_FLASH_BANKS_LIST     { CONFIG_SYS_BOOTCS_START }
 
394
#define CONFIG_SYS_MAX_FLASH_BANKS      1       /* max num of flash banks
 
395
                                           (= chip selects) */
 
396
#define CONFIG_SYS_MAX_FLASH_SECT       512     /* max num of sects on one chip */
 
397
#endif
 
398
 
 
399
#define CONFIG_SYS_FLASH_EMPTY_INFO
 
400
#define CONFIG_SYS_FLASH_SIZE           0x04000000 /* 64 MByte */
 
401
#define CONFIG_SYS_FLASH_USE_BUFFER_WRITE       1
 
402
 
 
403
#if defined (CONFIG_CAM5200)
 
404
# define CONFIG_ENV_ADDR                (CONFIG_SYS_FLASH_BASE + 0x00040000)
 
405
#elif defined(CONFIG_TQM5200_B)
 
406
# define CONFIG_ENV_ADDR                (CONFIG_SYS_FLASH_BASE + 0x00080000)
 
407
#else
 
408
# define CONFIG_ENV_ADDR                (CONFIG_SYS_FLASH_BASE + 0x00060000)
 
409
#endif
 
410
 
 
411
/* Dynamic MTD partition support */
 
412
#define CONFIG_CMD_MTDPARTS
 
413
#define CONFIG_MTD_DEVICE               /* needed for mtdparts commands */
 
414
#define MTDIDS_DEFAULT          "nor0=fc000000.flash"
 
415
 
 
416
#if defined(CONFIG_STK52XX)
 
417
# if defined(CONFIG_TQM5200_B)
 
418
#  if defined(CONFIG_SYS_LOWBOOT)
 
419
#   define MTDPARTS_DEFAULT     "mtdparts=fc000000.flash:1m(firmware)," \
 
420
                                                "256k(dtb),"            \
 
421
                                                "2304k(kernel),"        \
 
422
                                                "2560k(small-fs),"      \
 
423
                                                "2m(initrd),"           \
 
424
                                                "8m(misc),"             \
 
425
                                                "16m(big-fs)"
 
426
#  else /* highboot */
 
427
#   define MTDPARTS_DEFAULT     "mtdparts=fc000000.flash:2560k(kernel),"\
 
428
                                                "3584k(small-fs),"      \
 
429
                                                "2m(initrd),"           \
 
430
                                                "8m(misc),"             \
 
431
                                                "15m(big-fs),"          \
 
432
                                                "1m(firmware)"
 
433
#  endif /* CONFIG_SYS_LOWBOOT */
 
434
# else  /* !CONFIG_TQM5200_B */
 
435
#   define MTDPARTS_DEFAULT     "mtdparts=fc000000.flash:640k(firmware),"\
 
436
                                                "128k(dtb),"            \
 
437
                                                "2304k(kernel),"        \
 
438
                                                "2m(initrd),"           \
 
439
                                                "4m(small-fs),"         \
 
440
                                                "8m(misc),"             \
 
441
                                                "15m(big-fs)"
 
442
# endif /* CONFIG_TQM5200_B */
 
443
#elif defined (CONFIG_CAM5200)
 
444
#   define MTDPARTS_DEFAULT     "mtdparts=fc000000.flash:768k(firmware),"\
 
445
                                                "1792k(kernel),"        \
 
446
                                                "5632k(rootfs),"        \
 
447
                                                "24m(home)"
 
448
#elif defined (CONFIG_CHARON)
 
449
#   define MTDPARTS_DEFAULT     "mtdparts=fc000000.flash:640k(firmware),"\
 
450
                                                "1408k(kernel),"        \
 
451
                                                "2m(initrd),"           \
 
452
                                                "4m(small-fs),"         \
 
453
                                                "24320k(big-fs),"       \
 
454
                                                "256k(dts)"
 
455
#elif defined (CONFIG_FO300)
 
456
#   define MTDPARTS_DEFAULT     "mtdparts=fc000000.flash:640k(firmware),"\
 
457
                                                "1408k(kernel),"        \
 
458
                                                "2m(initrd),"           \
 
459
                                                "4m(small-fs),"         \
 
460
                                                "8m(misc),"             \
 
461
                                                "16m(big-fs)"
 
462
#else
 
463
# error "Unknown Carrier Board"
 
464
#endif  /* CONFIG_STK52XX */
 
465
 
 
466
/*
 
467
 * Environment settings
 
468
 */
 
469
#define CONFIG_ENV_IS_IN_FLASH  1
 
470
#define CONFIG_ENV_SIZE         0x4000  /* 16 k - keep small for fast booting */
 
471
#if defined(CONFIG_TQM5200_B) || defined (CONFIG_CAM5200)
 
472
#define CONFIG_ENV_SECT_SIZE    0x40000
 
473
#else
 
474
#define CONFIG_ENV_SECT_SIZE    0x20000
 
475
#endif /* CONFIG_TQM5200_B */
 
476
#define CONFIG_ENV_ADDR_REDUND  (CONFIG_ENV_ADDR + CONFIG_ENV_SECT_SIZE)
 
477
#define CONFIG_ENV_SIZE_REDUND  (CONFIG_ENV_SIZE)
 
478
 
 
479
/*
 
480
 * Memory map
 
481
 */
 
482
#define CONFIG_SYS_MBAR         0xF0000000
 
483
#define CONFIG_SYS_SDRAM_BASE           0x00000000
 
484
#define CONFIG_SYS_DEFAULT_MBAR 0x80000000
 
485
 
 
486
/* Use ON-Chip SRAM until RAM will be available */
 
487
#define CONFIG_SYS_INIT_RAM_ADDR        MPC5XXX_SRAM
 
488
#ifdef CONFIG_POST
 
489
/* preserve space for the post_word at end of on-chip SRAM */
 
490
#define CONFIG_SYS_INIT_RAM_SIZE        MPC5XXX_SRAM_POST_SIZE
 
491
#else
 
492
#define CONFIG_SYS_INIT_RAM_SIZE        MPC5XXX_SRAM_SIZE
 
493
#endif
 
494
 
 
495
 
 
496
#define CONFIG_SYS_GBL_DATA_OFFSET      (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE)
 
497
#define CONFIG_SYS_INIT_SP_OFFSET       CONFIG_SYS_GBL_DATA_OFFSET
 
498
 
 
499
#define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE
 
500
#if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE)
 
501
#   define CONFIG_SYS_RAMBOOT           1
 
502
#endif
 
503
 
 
504
#if defined (CONFIG_CAM5200)
 
505
# define CONFIG_SYS_MONITOR_LEN (256 << 10)     /* Reserve 256 kB for Monitor   */
 
506
#elif defined(CONFIG_TQM5200_B)
 
507
# define CONFIG_SYS_MONITOR_LEN (512 << 10)     /* Reserve 512 kB for Monitor   */
 
508
#else
 
509
# define CONFIG_SYS_MONITOR_LEN (384 << 10)     /* Reserve 384 kB for Monitor   */
 
510
#endif
 
511
 
 
512
#define CONFIG_SYS_MALLOC_LEN           (1024 << 10)    /* Reserve 1024 kB for malloc() */
 
513
#define CONFIG_SYS_BOOTMAPSZ            (8 << 20)       /* Initial Memory map for Linux */
 
514
 
 
515
/*
 
516
 * Ethernet configuration
 
517
 */
 
518
#define CONFIG_MPC5xxx_FEC      1
 
519
#define CONFIG_MPC5xxx_FEC_MII100
 
520
/*
 
521
 * Define CONFIG_MPC5xxx_FEC_MII10 to force FEC at 10Mb
 
522
 */
 
523
/* #define CONFIG_MPC5xxx_FEC_MII10 */
 
524
#define CONFIG_PHY_ADDR         0x00
 
525
 
 
526
/*
 
527
 * GPIO configuration
 
528
 *
 
529
 * use CS1: Bit 0 (mask: 0x80000000):
 
530
 *         1 -> Pin gpio_wkup_6 as second SDRAM chip select (mem_cs1).
 
531
 * use ALT CAN position: Bits 2-3 (mask: 0x30000000):
 
532
 *        00 -> No Alternatives, CAN1/2 on PSC2 according to PSC2 setting.
 
533
 *              SPI on PSC3 according to PSC3 setting. Use for CAM5200.
 
534
 *        01 -> CAN1 on I2C1, CAN2 on Tmr0/1.
 
535
 *              Use for REV200 STK52XX boards and FO300 boards. Do not use
 
536
 *              with REV100 modules (because, there I2C1 is used as I2C bus).
 
537
 * use ATA: Bits 6-7 (mask 0x03000000):
 
538
 *        00 -> No ATA chip selects, csb_4/5 used as normal chip selects.
 
539
 *              Use for CAM5200 board.
 
540
 *        01 -> ATA cs0/1 on csb_4/5. Use for the remaining boards.
 
541
 * use PSC6: Bits 9-11 (mask 0x00700000):
 
542
 *       000 -> use PSC6_0 to PSC6_3 as GPIO, PSC6 could not be used as
 
543
 *              UART, CODEC or IrDA.
 
544
 *              GPIO on PSC6_3 is used in post_hotkeys_pressed() to
 
545
 *              enable extended POST tests.
 
546
 *              Use for MINI-FAP and TQM5200_IB boards.
 
547
 *       101 -> use PSC6 as UART. Pins PSC6_0 to PSC6_3 are used.
 
548
 *              Extended POST test is not available.
 
549
 *              Use for STK52xx, FO300 and CAM5200 boards.
 
550
 *              WARNING: When the extended POST is enabled, these bits will
 
551
 *                       be overridden by this code as GPIOs!
 
552
 * use PCI_DIS: Bit 16 (mask 0x00008000):
 
553
 *         1 -> disable PCI controller (on CAM5200 board).
 
554
 * use USB: Bits 18-19 (mask 0x00003000):
 
555
 *        10 -> two UARTs (on FO300 and CAM5200).
 
556
 * use PSC3: Bits 20-23 (mask: 0x00000f00):
 
557
 *      0000 -> All PSC3 pins are GPIOs.
 
558
 *      1100 -> UART/SPI (on FO300 board).
 
559
 *      0100 -> UART (on CAM5200 board).
 
560
 * use PSC2: Bits 25:27 (mask: 0x00000030):
 
561
 *       000 -> All PSC2 pins are GPIOs.
 
562
 *       100 -> UART (on CAM5200 board).
 
563
 *       001 -> CAN1/2 on PSC2 pins.
 
564
 *              Use for REV100 STK52xx boards
 
565
 *       01x -> Use AC97 (on FO300 board).
 
566
 * use PSC1: Bits 29-31 (mask: 0x00000007):
 
567
 *       100 -> UART (on all boards).
 
568
 */
 
569
#if !defined(CONFIG_SYS_GPS_PORT_CONFIG)
 
570
#if defined (CONFIG_MINIFAP)
 
571
# define CONFIG_SYS_GPS_PORT_CONFIG     0x91000004
 
572
#elif defined (CONFIG_STK52XX)
 
573
# if defined (CONFIG_STK52XX_REV100)
 
574
#  define CONFIG_SYS_GPS_PORT_CONFIG    0x81500014
 
575
# else /* STK52xx REV200 and above */
 
576
#  if defined (CONFIG_TQM5200_REV100)
 
577
#   error TQM5200 REV100 not supported on STK52XX REV200 or above
 
578
#  else/* TQM5200 REV200 and above */
 
579
#   define CONFIG_SYS_GPS_PORT_CONFIG   0x91500404
 
580
#  endif
 
581
# endif
 
582
#elif defined (CONFIG_FO300)
 
583
# define CONFIG_SYS_GPS_PORT_CONFIG     0x91502c24
 
584
#elif defined (CONFIG_CAM5200)
 
585
# define CONFIG_SYS_GPS_PORT_CONFIG     0x8050A444
 
586
#else  /* TMQ5200 Inbetriebnahme-Board */
 
587
# define CONFIG_SYS_GPS_PORT_CONFIG     0x81000004
 
588
#endif
 
589
#endif
 
590
 
 
591
/*
 
592
 * RTC configuration
 
593
 */
 
594
#if defined (CONFIG_STK52XX) && !defined (CONFIG_STK52XX_REV100)
 
595
# define CONFIG_RTC_M41T11 1
 
596
# define CONFIG_SYS_I2C_RTC_ADDR 0x68
 
597
# define CONFIG_SYS_M41T11_BASE_YEAR    1900    /* because Linux uses the same base
 
598
                                           year */
 
599
#else
 
600
# define CONFIG_RTC_MPC5200     1       /* use internal MPC5200 RTC */
 
601
#endif
 
602
 
 
603
/*
 
604
 * Miscellaneous configurable options
 
605
 */
 
606
#define CONFIG_SYS_LONGHELP                     /* undef to save memory     */
 
607
 
 
608
#define CONFIG_CMDLINE_EDITING  1       /* add command line history     */
 
609
#define CONFIG_SYS_HUSH_PARSER          1       /* use "hush" command parser    */
 
610
 
 
611
#define CONFIG_SYS_CACHELINE_SIZE       32      /* For MPC5xxx CPUs */
 
612
#if defined(CONFIG_CMD_KGDB)
 
613
#define CONFIG_SYS_CACHELINE_SHIFT      5       /* log base 2 of the above value */
 
614
#endif
 
615
 
 
616
#if defined(CONFIG_CMD_KGDB)
 
617
#define CONFIG_SYS_CBSIZE               1024    /* Console I/O Buffer Size  */
 
618
#else
 
619
#define CONFIG_SYS_CBSIZE               256     /* Console I/O Buffer Size  */
 
620
#endif
 
621
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */
 
622
#define CONFIG_SYS_MAXARGS              16      /* max number of command args   */
 
623
#define CONFIG_SYS_BARGSIZE             CONFIG_SYS_CBSIZE       /* Boot Argument Buffer Size    */
 
624
 
 
625
/* Enable an alternate, more extensive memory test */
 
626
#define CONFIG_SYS_ALT_MEMTEST
 
627
 
 
628
#define CONFIG_SYS_MEMTEST_START        0x00100000      /* memtest works on */
 
629
#define CONFIG_SYS_MEMTEST_END          0x00f00000      /* 1 ... 15 MB in DRAM  */
 
630
 
 
631
#define CONFIG_SYS_LOAD_ADDR            0x100000        /* default load address */
 
632
 
 
633
/*
 
634
 * Enable loopw command.
 
635
 */
 
636
#define CONFIG_LOOPW
 
637
 
 
638
/*
 
639
 * Various low-level settings
 
640
 */
 
641
#define CONFIG_SYS_HID0_INIT            HID0_ICE | HID0_ICFI
 
642
#define CONFIG_SYS_HID0_FINAL           HID0_ICE
 
643
 
 
644
#define CONFIG_SYS_BOOTCS_START CONFIG_SYS_FLASH_BASE
 
645
#define CONFIG_SYS_BOOTCS_SIZE          CONFIG_SYS_FLASH_SIZE
 
646
#ifdef CONFIG_SYS_PCICLK_EQUALS_IPBCLK_DIV2
 
647
#define CONFIG_SYS_BOOTCS_CFG           0x0008DF30 /* for pci_clk  = 66 MHz */
 
648
#else
 
649
#define CONFIG_SYS_BOOTCS_CFG           0x0004DF30 /* for pci_clk = 33 MHz */
 
650
#endif
 
651
#define CONFIG_SYS_CS0_START            CONFIG_SYS_FLASH_BASE
 
652
#define CONFIG_SYS_CS0_SIZE             CONFIG_SYS_FLASH_SIZE
 
653
 
 
654
#define CONFIG_LAST_STAGE_INIT
 
655
 
 
656
/*
 
657
 * SRAM - Do not map below 2 GB in address space, because this area is used
 
658
 * for SDRAM autosizing.
 
659
 */
 
660
#define CONFIG_SYS_CS2_START            0xE5000000
 
661
#define CONFIG_SYS_CS2_SIZE             0x100000        /* 1 MByte */
 
662
#define CONFIG_SYS_CS2_CFG              0x0004D930
 
663
 
 
664
/*
 
665
 * Grafic controller - Do not map below 2 GB in address space, because this
 
666
 * area is used for SDRAM autosizing.
 
667
 */
 
668
#define SM501_FB_BASE           0xE0000000
 
669
#define CONFIG_SYS_CS1_START            (SM501_FB_BASE)
 
670
#define CONFIG_SYS_CS1_SIZE             0x4000000       /* 64 MByte */
 
671
#define CONFIG_SYS_CS1_CFG              0x8F48FF70
 
672
#define SM501_MMIO_BASE         CONFIG_SYS_CS1_START + 0x03E00000
 
673
 
 
674
#define CONFIG_SYS_CS_BURST             0x00000000
 
675
#define CONFIG_SYS_CS_DEADCYCLE 0x33333311      /* 1 dead cycle for flash and SM501 */
 
676
 
 
677
#if defined(CONFIG_CAM5200)
 
678
#define CONFIG_SYS_CS4_START            0xB0000000
 
679
#define CONFIG_SYS_CS4_SIZE             0x00010000
 
680
#define CONFIG_SYS_CS4_CFG              0x01019C10
 
681
 
 
682
#define CONFIG_SYS_CS5_START            0xD0000000
 
683
#define CONFIG_SYS_CS5_SIZE             0x01208000
 
684
#define CONFIG_SYS_CS5_CFG              0x1414BF10
 
685
#endif
 
686
 
 
687
#define CONFIG_SYS_RESET_ADDRESS        0xff000000
 
688
 
 
689
/*-----------------------------------------------------------------------
 
690
 * USB stuff
 
691
 *-----------------------------------------------------------------------
 
692
 */
 
693
#define CONFIG_USB_CLOCK        0x0001BBBB
 
694
#define CONFIG_USB_CONFIG       0x00001000
 
695
 
 
696
/*-----------------------------------------------------------------------
 
697
 * IDE/ATA stuff Supports IDE harddisk
 
698
 *-----------------------------------------------------------------------
 
699
 */
 
700
 
 
701
#undef  CONFIG_IDE_8xx_PCCARD           /* Use IDE with PC Card Adapter */
 
702
 
 
703
#undef  CONFIG_IDE_8xx_DIRECT           /* Direct IDE    not supported  */
 
704
#undef  CONFIG_IDE_LED                  /* LED   for ide not supported  */
 
705
 
 
706
#define CONFIG_IDE_RESET                /* reset for ide supported      */
 
707
#define CONFIG_IDE_PREINIT
 
708
 
 
709
#define CONFIG_SYS_IDE_MAXBUS           1       /* max. 1 IDE bus               */
 
710
#define CONFIG_SYS_IDE_MAXDEVICE        2       /* max. 2 drives per IDE bus    */
 
711
 
 
712
#define CONFIG_SYS_ATA_IDE0_OFFSET      0x0000
 
713
 
 
714
#define CONFIG_SYS_ATA_BASE_ADDR        MPC5XXX_ATA
 
715
 
 
716
/* Offset for data I/O */
 
717
#define CONFIG_SYS_ATA_DATA_OFFSET      (0x0060)
 
718
 
 
719
/* Offset for normal register accesses */
 
720
#define CONFIG_SYS_ATA_REG_OFFSET       (CONFIG_SYS_ATA_DATA_OFFSET)
 
721
 
 
722
/* Offset for alternate registers */
 
723
#define CONFIG_SYS_ATA_ALT_OFFSET       (0x005C)
 
724
 
 
725
/* Interval between registers */
 
726
#define CONFIG_SYS_ATA_STRIDE           4
 
727
 
 
728
/* Support ATAPI devices */
 
729
#define CONFIG_ATAPI                    1
 
730
 
 
731
/*-----------------------------------------------------------------------
 
732
 * Open firmware flat tree support
 
733
 *-----------------------------------------------------------------------
 
734
 */
 
735
#define CONFIG_OF_LIBFDT        1
 
736
#define CONFIG_OF_BOARD_SETUP   1
 
737
 
 
738
#define OF_CPU                  "PowerPC,5200@0"
 
739
#define OF_SOC                  "soc5200@f0000000"
 
740
#define OF_TBCLK                (bd->bi_busfreq / 4)
 
741
#define OF_STDOUT_PATH          "/soc5200@f0000000/serial@2000"
 
742
 
 
743
#endif /* __CONFIG_H */