1/* 2 * ppmc7xx.h 3 * --------- 4 * 5 * Wind River PPMC 7xx/74xx board configuration file. 6 * 7 * By Richard Danter (richard.danter@windriver.com) 8 * Copyright (C) 2005 Wind River Systems 9 */ 10 11 12#ifndef __CONFIG_H 13#define __CONFIG_H 14 15#define CONFIG_PPMC7XX 16 17 18/*=================================================================== 19 * 20 * User configurable settings - Modify to your preference 21 * 22 *=================================================================== 23 */ 24 25/* 26 * Debug 27 * 28 * DEBUG - Define this is you want extra debug info 29 * GTREGREAD - Required to build with debug 30 * do_bdinfo - Required to build with debug 31 */ 32 33#ifdef DEBUG 34#define GTREGREAD(x) 0xFFFFFFFF 35#define do_bdinfo(a,b,c,d) 36#endif 37 38/* 39 * CPU type 40 * 41 * CONFIG_7xx - We have a 750 or 755 CPU 42 * CONFIG_74xx - We have a 7400 CPU 43 * CONFIG_ALTIVEC - We have altivec enabled CPU (only 7400) 44 * CONFIG_BUS_CLK - System bus clock in Hz 45 */ 46 47#define CONFIG_7xx 48#undef CONFIG_74xx 49#undef CONFIG_ALTIVEC 50#define CONFIG_BUS_CLK 66000000 51 52 53/* 54 * Monitor configuration 55 * 56 * List of command sets to include in shell 57 * 58 * The following command sets have been tested and known to work: 59 * 60 * CMD_CACHE - Cache control commands 61 * CMD_MEMORY - Memory display, change and test commands 62 * CMD_FLASH - Erase and program flash 63 * CMD_ENV - Environment commands 64 * CMD_RUN - Run commands stored in env vars 65 * CMD_ELF - Load ELF files 66 * CMD_NET - Networking/file download commands 67 * CMD_PIN - ICMP Echo Request command 68 * CMD_PCI - PCI Bus scanning command 69 */ 70 71/* 72 * BOOTP options 73 */ 74#define CONFIG_BOOTP_BOOTFILESIZE 75#define CONFIG_BOOTP_BOOTPATH 76#define CONFIG_BOOTP_GATEWAY 77#define CONFIG_BOOTP_HOSTNAME 78 79 80/* 81 * Command line configuration. 82 */ 83#include <config_cmd_default.h> 84 85#define CONFIG_CMD_FLASH 86#define CONFIG_CMD_ENV 87#define CONFIG_CMD_RUN 88#define CONFIG_CMD_ELF 89#define CONFIG_CMD_NET 90#define CONFIG_CMD_PING 91#define CONFIG_CMD_PCI 92 93#undef CONFIG_CMD_KGDB 94 95 96/* 97 * Serial configuration 98 * 99 * CONFIG_CONS_INDEX - Serial console port number (COM1) 100 * CONFIG_BAUDRATE - Serial speed 101 */ 102 103#define CONFIG_CONS_INDEX 1 104#define CONFIG_BAUDRATE 9600 105 106 107/* 108 * PCI config 109 * 110 * CONFIG_PCI - Enable PCI bus 111 * CONFIG_PCI_PNP - Enable Plug & Play support 112 * CONFIG_PCI_SCAN_SHOW - Enable display of devices at startup 113 */ 114 115#define CONFIG_PCI 116#define CONFIG_PCI_PNP 117#undef CONFIG_PCI_SCAN_SHOW 118 119 120/* 121 * Network config 122 * 123 * CONFIG_NET_MULTI - Support for multiple network interfaces 124 * CONFIG_EEPRO100 - Intel 8255x Ethernet Controller 125 * CONFIG_EEPRO100_SROM_WRITE - Enable writing to network card ROM 126 */ 127 128#define CONFIG_NET_MULTI 129#define CONFIG_EEPRO100 130#define CONFIG_EEPRO100_SROM_WRITE 131 132 133/* 134 * Enable extra init functions 135 * 136 * CONFIG_MISC_INIT_F - Call pre-relocation init functions 137 * CONFIG_MISC_INIT_R - Call post relocation init functions 138 */ 139 140#undef CONFIG_MISC_INIT_F 141#define CONFIG_MISC_INIT_R 142 143 144/* 145 * Boot config 146 * 147 * CONFIG_BOOTCOMMAND - Command(s) to execute to auto-boot 148 * CONFIG_BOOTDELAY - How long to wait before auto-boot (in sec) 149 */ 150 151#define CONFIG_BOOTCOMMAND \ 152 "bootp;" \ 153 "setenv bootargs root=/dev/nfs rw nfsroot=$(serverip):$(rootpath) " \ 154 "ip=$(ipaddr):$(serverip):$(gatewayip):$(netmask):$(hostname)::off;" \ 155 "bootm" 156#define CONFIG_BOOTDELAY 5 157 158 159/*=================================================================== 160 * 161 * Board configuration settings - You should not need to modify these 162 * 163 *=================================================================== 164 */ 165 166 167/* 168 * Memory map 169 * 170 * This board runs in a standard CHRP (Map-B) configuration. 171 * 172 * Type Start End Size Width Chip Sel 173 * ----------- ----------- ----------- ------- ------- -------- 174 * SDRAM 0x00000000 0x04000000 64MB 64b SDRAMCS0 175 * User LED's 0x78000000 RCS3 176 * UART 0x7C000000 RCS2 177 * Mailbox 0xFF000000 RCS1 178 * Flash 0xFFC00000 0xFFFFFFFF 4MB 64b RCS0 179 * 180 * Flash sectors are laid out as follows. 181 * 182 * Sector Start End Size Comments 183 * ------- ----------- ----------- ------- ----------- 184 * 0 0xFFC00000 0xFFC3FFFF 256KB 185 * 1 0xFFC40000 0xFFC7FFFF 256KB 186 * 2 0xFFC80000 0xFFCBFFFF 256KB 187 * 3 0xFFCC0000 0xFFCFFFFF 256KB 188 * 4 0xFFD00000 0xFFD3FFFF 256KB 189 * 5 0xFFD40000 0xFFD7FFFF 256KB 190 * 6 0xFFD80000 0xFFDBFFFF 256KB 191 * 7 0xFFDC0000 0xFFDFFFFF 256KB 192 * 8 0xFFE00000 0xFFE3FFFF 256KB 193 * 9 0xFFE40000 0xFFE7FFFF 256KB 194 * 10 0xFFE80000 0xFFEBFFFF 256KB 195 * 11 0xFFEC0000 0xFFEFFFFF 256KB 196 * 12 0xFFF00000 0xFFF3FFFF 256KB U-Boot code here 197 * 13 0xFFF40000 0xFFF7FFFF 256KB 198 * 14 0xFFF80000 0xFFFBFFFF 256KB 199 * 15 0xFFFC0000 0xFFFDFFFF 128KB 200 * 16 0xFFFE0000 0xFFFE7FFF 32KB U-Boot env vars here 201 * 17 0xFFFE8000 0xFFFEFFFF 32KB U-Boot backup copy of env vars here 202 * 18 0xFFFF0000 0xFFFFFFFF 64KB 203 */ 204 205 206/* 207 * SDRAM config - see memory map details above. 208 * 209 * CONFIG_SYS_SDRAM_BASE - Start address of SDRAM, this _must_ be zero! 210 * CONFIG_SYS_SDRAM_SIZE - Total size of contiguous SDRAM bank(s) 211 */ 212 213#define CONFIG_SYS_SDRAM_BASE 0x00000000 214#define CONFIG_SYS_SDRAM_SIZE 0x04000000 215 216 217/* 218 * Flash config - see memory map details above. 219 * 220 * CONFIG_SYS_FLASH_BASE - Start address of flash memory 221 * CONFIG_SYS_FLASH_SIZE - Total size of contiguous flash mem 222 * CONFIG_SYS_FLASH_ERASE_TOUT - Erase timeout in ms 223 * CONFIG_SYS_FLASH_WRITE_TOUT - Write timeout in ms 224 * CONFIG_SYS_MAX_FLASH_BANKS - Number of banks of flash on board 225 * CONFIG_SYS_MAX_FLASH_SECT - Number of sectors in a bank 226 */ 227 228#define CONFIG_SYS_FLASH_BASE 0xFFC00000 229#define CONFIG_SYS_FLASH_SIZE 0x00400000 230#define CONFIG_SYS_FLASH_ERASE_TOUT 250000 231#define CONFIG_SYS_FLASH_WRITE_TOUT 5000 232#define CONFIG_SYS_MAX_FLASH_BANKS 1 233#define CONFIG_SYS_MAX_FLASH_SECT 19 234 235 236/* 237 * Monitor config - see memory map details above 238 * 239 * CONFIG_SYS_MONITOR_BASE - Base address of monitor code 240 * CONFIG_SYS_MALLOC_LEN - Size of malloc pool (128KB) 241 */ 242 243#define CONFIG_SYS_MONITOR_BASE TEXT_BASE 244#define CONFIG_SYS_MALLOC_LEN 0x20000 245 246 247/* 248 * Command shell settings 249 * 250 * CONFIG_SYS_BARGSIZE - Boot Argument buffer size 251 * CONFIG_SYS_BOOTMAPSZ - Size of app's mapped RAM at boot (Linux=8MB) 252 * CONFIG_SYS_CBSIZE - Console Buffer (input) size 253 * CONFIG_SYS_LOAD_ADDR - Default load address 254 * CONFIG_SYS_LONGHELP - Provide more detailed help 255 * CONFIG_SYS_MAXARGS - Number of args accepted by monitor commands 256 * CONFIG_SYS_MEMTEST_START - Start address of test to run on RAM 257 * CONFIG_SYS_MEMTEST_END - End address of RAM test 258 * CONFIG_SYS_PBSIZE - Print Buffer (output) size 259 * CONFIG_SYS_PROMPT - Prompt string 260 */ 261 262#define CONFIG_SYS_BARGSIZE 1024 263#define CONFIG_SYS_BOOTMAPSZ 0x800000 264#define CONFIG_SYS_CBSIZE 1024 265#define CONFIG_SYS_LOAD_ADDR 0x100000 266#define CONFIG_SYS_LONGHELP 267#define CONFIG_SYS_MAXARGS 16 268#define CONFIG_SYS_MEMTEST_START 0x00040000 269#define CONFIG_SYS_MEMTEST_END 0x00040100 270#define CONFIG_SYS_PBSIZE 1024 271#define CONFIG_SYS_PROMPT "=> " 272 273 274/* 275 * Environment config - see memory map details above 276 * 277 * CONFIG_ENV_IS_IN_FLASH - The env variables are stored in flash 278 * CONFIG_ENV_ADDR - Address of the sector containing env vars 279 * CONFIG_ENV_SIZE - Ammount of RAM for env vars (used to save RAM, 4KB) 280 * CONFIG_ENV_SECT_SIZE - Size of sector containing env vars (32KB) 281 */ 282 283#define CONFIG_ENV_IS_IN_FLASH 1 284#define CONFIG_ENV_ADDR 0xFFFE0000 285#define CONFIG_ENV_SIZE 0x1000 286#define CONFIG_ENV_ADDR_REDUND 0xFFFE8000 287#define CONFIG_ENV_SIZE_REDUND 0x1000 288#define CONFIG_ENV_SECT_SIZE 0x8000 289 290 291/* 292 * Initial RAM config 293 * 294 * Since the main system RAM is initialised very early, we place the INIT_RAM 295 * in the main system RAM just above the exception vectors. The contents are 296 * copied to top of RAM by the init code. 297 * 298 * CONFIG_SYS_INIT_RAM_ADDR - Address of Init RAM, above exception vect 299 * CONFIG_SYS_INIT_RAM_END - Size of Init RAM 300 * CONFIG_SYS_GBL_DATA_SIZE - Ammount of RAM to reserve for global data 301 * CONFIG_SYS_GBL_DATA_OFFSET - Start of global data, top of stack 302 */ 303 304#define CONFIG_SYS_INIT_RAM_ADDR (CONFIG_SYS_SDRAM_BASE + 0x4000) 305#define CONFIG_SYS_INIT_RAM_END 0x4000 306#define CONFIG_SYS_GBL_DATA_SIZE 128 307#define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE) 308 309 310/* 311 * Initial BAT config 312 * 313 * BAT0 - System SDRAM 314 * BAT1 - LED's and Serial Port 315 * BAT2 - PCI Memory 316 * BAT3 - PCI I/O including Flash Memory 317 */ 318 319#define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_BASE | BATL_PP_10 | BATL_MEMCOHERENCE) 320#define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_BASE | BATU_BL_64M | BATU_VS | BATU_VP) 321#define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 322#define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 323 324#define CONFIG_SYS_IBAT1L (0x70000000 | BATL_PP_RW | BATL_CACHEINHIBIT) 325#define CONFIG_SYS_IBAT1U (0x70000000 | BATU_BL_256M | BATU_VS | BATU_VP) 326#define CONFIG_SYS_DBAT1L (0x70000000 | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 327#define CONFIG_SYS_DBAT1U (0x70000000 | BATU_BL_256M | BATU_VS | BATU_VP) 328 329#define CONFIG_SYS_IBAT2L (0x80000000 | BATL_PP_RW | BATL_CACHEINHIBIT) 330#define CONFIG_SYS_IBAT2U (0x80000000 | BATU_BL_256M | BATU_VS | BATU_VP) 331#define CONFIG_SYS_DBAT2L (0x80000000 | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 332#define CONFIG_SYS_DBAT2U (0x80000000 | BATU_BL_256M | BATU_VS | BATU_VP) 333 334#define CONFIG_SYS_IBAT3L (0xF0000000 | BATL_PP_RW | BATL_CACHEINHIBIT) 335#define CONFIG_SYS_IBAT3U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP) 336#define CONFIG_SYS_DBAT3L (0xF0000000 | BATL_PP_RW | BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 337#define CONFIG_SYS_DBAT3U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP) 338 339 340/* 341 * Cache config 342 * 343 * CONFIG_SYS_CACHELINE_SIZE - Size of a cache line (CPU specific) 344 * CONFIG_SYS_L2 - L2 cache enabled if defined 345 * L2_INIT - L2 cache init flags 346 * L2_ENABLE - L2 cache enable flags 347 */ 348 349#define CONFIG_SYS_CACHELINE_SIZE 32 350#undef CONFIG_SYS_L2 351#define L2_INIT 0 352#define L2_ENABLE 0 353 354 355/* 356 * Clocks config 357 * 358 * CONFIG_SYS_BUS_HZ - Bus clock frequency in Hz 359 * CONFIG_SYS_BUS_CLK - As above (?) 360 * CONFIG_SYS_HZ - Decrementer freq in Hz 361 */ 362 363#define CONFIG_SYS_BUS_HZ CONFIG_BUS_CLK 364#define CONFIG_SYS_BUS_CLK CONFIG_BUS_CLK 365#define CONFIG_SYS_HZ 1000 366 367 368/* 369 * Serial port config 370 * 371 * CONFIG_SYS_BAUDRATE_TABLE - List of valid baud rates 372 * CONFIG_SYS_NS16550 - Include the NS16550 driver 373 * CONFIG_SYS_NS16550_SERIAL - Include the serial (wrapper) driver 374 * CONFIG_SYS_NS16550_CLK - Frequency of reference clock 375 * CONFIG_SYS_NS16550_REG_SIZE - 64-bit accesses to 8-bit port 376 * CONFIG_SYS_NS16550_COM1 - Base address of 1st serial port 377 */ 378 379#define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 } 380#define CONFIG_SYS_NS16550 381#define CONFIG_SYS_NS16550_SERIAL 382#define CONFIG_SYS_NS16550_CLK 3686400 383#define CONFIG_SYS_NS16550_REG_SIZE -8 384#define CONFIG_SYS_NS16550_COM1 0x7C000000 385 386 387/* 388 * PCI Config - Address Map B (CHRP) 389 */ 390 391#define CONFIG_SYS_PCI_MEMORY_BUS 0x00000000 392#define CONFIG_SYS_PCI_MEMORY_PHYS 0x00000000 393#define CONFIG_SYS_PCI_MEMORY_SIZE 0x40000000 394#define CONFIG_SYS_PCI_MEM_BUS 0x80000000 395#define CONFIG_SYS_PCI_MEM_PHYS 0x80000000 396#define CONFIG_SYS_PCI_MEM_SIZE 0x7D000000 397#define CONFIG_SYS_ISA_MEM_BUS 0x00000000 398#define CONFIG_SYS_ISA_MEM_PHYS 0xFD000000 399#define CONFIG_SYS_ISA_MEM_SIZE 0x01000000 400#define CONFIG_SYS_PCI_IO_BUS 0x00800000 401#define CONFIG_SYS_PCI_IO_PHYS 0xFE800000 402#define CONFIG_SYS_PCI_IO_SIZE 0x00400000 403#define CONFIG_SYS_ISA_IO_BUS 0x00000000 404#define CONFIG_SYS_ISA_IO_PHYS 0xFE000000 405#define CONFIG_SYS_ISA_IO_SIZE 0x00800000 406#define CONFIG_SYS_ISA_IO_BASE_ADDRESS CONFIG_SYS_ISA_IO_PHYS 407#define CONFIG_SYS_ISA_IO CONFIG_SYS_ISA_IO_PHYS 408#define CONFIG_SYS_60X_PCI_IO_OFFSET CONFIG_SYS_ISA_IO_PHYS 409 410 411/* 412 * Extra init functions 413 * 414 * CONFIG_SYS_BOARD_ASM_INIT - Call assembly init code 415 */ 416 417#define CONFIG_SYS_BOARD_ASM_INIT 418 419 420/* 421 * Boot flags 422 * 423 * BOOTFLAG_COLD - Indicates a power-on boot 424 * BOOTFLAG_WARM - Indicates a software reset 425 */ 426 427#define BOOTFLAG_COLD 0x01 428#define BOOTFLAG_WARM 0x02 429 430 431#endif /* __CONFIG_H */ 432