18e585f02STsiChung Liew /* 28e585f02STsiChung Liew * Configuation settings for the Freescale MCF5329 FireEngine board. 38e585f02STsiChung Liew * 48e585f02STsiChung Liew * Copyright (C) 2004-2007 Freescale Semiconductor, Inc. 58e585f02STsiChung Liew * TsiChung Liew (Tsi-Chung.Liew@freescale.com) 68e585f02STsiChung Liew * 78e585f02STsiChung Liew * See file CREDITS for list of people who contributed to this 88e585f02STsiChung Liew * project. 98e585f02STsiChung Liew * 108e585f02STsiChung Liew * This program is free software; you can redistribute it and/or 118e585f02STsiChung Liew * modify it under the terms of the GNU General Public License as 128e585f02STsiChung Liew * published by the Free Software Foundation; either version 2 of 138e585f02STsiChung Liew * the License, or (at your option) any later version. 148e585f02STsiChung Liew * 158e585f02STsiChung Liew * This program is distributed in the hope that it will be useful, 168e585f02STsiChung Liew * but WITHOUT ANY WARRANTY; without even the implied warranty of 178e585f02STsiChung Liew * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 188e585f02STsiChung Liew * GNU General Public License for more details. 198e585f02STsiChung Liew * 208e585f02STsiChung Liew * You should have received a copy of the GNU General Public License 218e585f02STsiChung Liew * along with this program; if not, write to the Free Software 228e585f02STsiChung Liew * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 238e585f02STsiChung Liew * MA 02111-1307 USA 248e585f02STsiChung Liew */ 258e585f02STsiChung Liew 268e585f02STsiChung Liew /* 278e585f02STsiChung Liew * board/config.h - configuration options, board specific 288e585f02STsiChung Liew */ 298e585f02STsiChung Liew 308e585f02STsiChung Liew #ifndef _M5329EVB_H 318e585f02STsiChung Liew #define _M5329EVB_H 328e585f02STsiChung Liew 338e585f02STsiChung Liew /* 348e585f02STsiChung Liew * High Level Configuration Options 358e585f02STsiChung Liew * (easy to change) 368e585f02STsiChung Liew */ 378e585f02STsiChung Liew #define CONFIG_MCF532x /* define processor family */ 388e585f02STsiChung Liew #define CONFIG_M5329 /* define processor type */ 398e585f02STsiChung Liew 408e585f02STsiChung Liew #undef DEBUG 418e585f02STsiChung Liew 428e585f02STsiChung Liew #define CONFIG_MCFSERIAL 438e585f02STsiChung Liew #define CONFIG_BAUDRATE 115200 448e585f02STsiChung Liew #define CFG_BAUDRATE_TABLE { 9600 , 19200 , 38400 , 57600, 115200 } 458e585f02STsiChung Liew 468e585f02STsiChung Liew #undef CONFIG_WATCHDOG 478e585f02STsiChung Liew #define CONFIG_WATCHDOG_TIMEOUT 5000 /* timeout in milliseconds, max timeout is 6.71sec */ 488e585f02STsiChung Liew 498e585f02STsiChung Liew #define CONFIG_COMMANDS ( CONFIG_CMD_DFL | \ 508e585f02STsiChung Liew CFG_CMD_CACHE | \ 518e585f02STsiChung Liew CFG_CMD_DATE | \ 528e585f02STsiChung Liew CFG_CMD_ELF | \ 538e585f02STsiChung Liew CFG_CMD_FLASH | \ 548e585f02STsiChung Liew (CFG_CMD_LOADB | CFG_CMD_LOADS) | \ 558e585f02STsiChung Liew CFG_CMD_MEMORY | \ 568e585f02STsiChung Liew CFG_CMD_MISC | \ 578e585f02STsiChung Liew CFG_CMD_MII | \ 588e585f02STsiChung Liew CFG_CMD_NET | \ 598e585f02STsiChung Liew CFG_CMD_PING | \ 608e585f02STsiChung Liew CFG_CMD_REGINFO \ 618e585f02STsiChung Liew ) 628e585f02STsiChung Liew 638e585f02STsiChung Liew #define CONFIG_MCFFEC 648e585f02STsiChung Liew #ifdef CONFIG_MCFFEC 658e585f02STsiChung Liew # define CONFIG_NET_MULTI 1 668e585f02STsiChung Liew # define CONFIG_MII 1 678e585f02STsiChung Liew # define CFG_DISCOVER_PHY 688e585f02STsiChung Liew # define CFG_RX_ETH_BUFFER 8 698e585f02STsiChung Liew # define CFG_FAULT_ECHO_LINK_DOWN 708e585f02STsiChung Liew 718e585f02STsiChung Liew # define CFG_FEC0_PINMUX 0 728e585f02STsiChung Liew # define CFG_FEC0_MIIBASE CFG_FEC0_IOBASE 738e585f02STsiChung Liew # define MCFFEC_TOUT_LOOP 50000 748e585f02STsiChung Liew /* If CFG_DISCOVER_PHY is not defined - hardcoded */ 758e585f02STsiChung Liew # ifndef CFG_DISCOVER_PHY 768e585f02STsiChung Liew # define FECDUPLEX FULL 778e585f02STsiChung Liew # define FECSPEED _100BASET 788e585f02STsiChung Liew # else 798e585f02STsiChung Liew # ifndef CFG_FAULT_ECHO_LINK_DOWN 808e585f02STsiChung Liew # define CFG_FAULT_ECHO_LINK_DOWN 818e585f02STsiChung Liew # endif 828e585f02STsiChung Liew # endif /* CFG_DISCOVER_PHY */ 838e585f02STsiChung Liew #endif 848e585f02STsiChung Liew 858e585f02STsiChung Liew #define CONFIG_MCFUART 868e585f02STsiChung Liew #define CFG_UART_PORT (0) 878e585f02STsiChung Liew 888e585f02STsiChung Liew #define CONFIG_MCFRTC 898e585f02STsiChung Liew #undef RTC_DEBUG 908e585f02STsiChung Liew 918e585f02STsiChung Liew /* Timer */ 928e585f02STsiChung Liew #define CONFIG_MCFTMR 938e585f02STsiChung Liew #undef CONFIG_MCFPIT 948e585f02STsiChung Liew 958e585f02STsiChung Liew /* this must be included AFTER the definition of CONFIG_COMMANDS (if any) */ 968e585f02STsiChung Liew #include <cmd_confdefs.h> 978e585f02STsiChung Liew #define CONFIG_BOOTDELAY 1 /* autoboot after 5 seconds */ 988e585f02STsiChung Liew #ifdef CONFIG_MCFFEC 998e585f02STsiChung Liew # define CONFIG_ETHADDR 00:e0:0c:bc:e5:60 1008e585f02STsiChung Liew # define CONFIG_IPADDR 192.162.1.2 1018e585f02STsiChung Liew # define CONFIG_NETMASK 255.255.255.0 1028e585f02STsiChung Liew # define CONFIG_SERVERIP 192.162.1.1 1038e585f02STsiChung Liew # define CONFIG_GATEWAYIP 192.162.1.1 1048e585f02STsiChung Liew # define CONFIG_OVERWRITE_ETHADDR_ONCE 1058e585f02STsiChung Liew #endif /* FEC_ENET */ 1068e585f02STsiChung Liew 1078e585f02STsiChung Liew #define CONFIG_HOSTNAME M5329EVB 1088e585f02STsiChung Liew #define CONFIG_EXTRA_ENV_SETTINGS \ 1098e585f02STsiChung Liew "netdev=eth0\0" \ 1108e585f02STsiChung Liew "loadaddr=40010000\0" \ 1118e585f02STsiChung Liew "u-boot=u-boot.bin\0" \ 1128e585f02STsiChung Liew "load=tftp ${loadaddr) ${u-boot}\0" \ 1138e585f02STsiChung Liew "upd=run load; run prog\0" \ 1148e585f02STsiChung Liew "prog=prot off 0 2ffff;" \ 1158e585f02STsiChung Liew "era 0 2ffff;" \ 1168e585f02STsiChung Liew "cp.b ${loadaddr} 0 ${filesize};" \ 1178e585f02STsiChung Liew "save\0" \ 1188e585f02STsiChung Liew "" 1198e585f02STsiChung Liew 1208e585f02STsiChung Liew #define CONFIG_PRAM 512 /* 512 KB */ 1218e585f02STsiChung Liew #define CFG_PROMPT "-> " 1228e585f02STsiChung Liew #define CFG_LONGHELP /* undef to save memory */ 1238e585f02STsiChung Liew 1248e585f02STsiChung Liew #if (CONFIG_COMMANDS & CFG_CMD_KGDB) 1258e585f02STsiChung Liew # define CFG_CBSIZE 1024 /* Console I/O Buffer Size */ 1268e585f02STsiChung Liew #else 1278e585f02STsiChung Liew # define CFG_CBSIZE 256 /* Console I/O Buffer Size */ 1288e585f02STsiChung Liew #endif 1298e585f02STsiChung Liew 1308e585f02STsiChung Liew #define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */ 1318e585f02STsiChung Liew #define CFG_MAXARGS 16 /* max number of command args */ 1328e585f02STsiChung Liew #define CFG_BARGSIZE CFG_CBSIZE /* Boot Argument Buffer Size */ 1338e585f02STsiChung Liew #define CFG_LOAD_ADDR 0x40010000 1348e585f02STsiChung Liew 1358e585f02STsiChung Liew #define CFG_HZ 1000 1368e585f02STsiChung Liew #define CFG_CLK 80000000 1378e585f02STsiChung Liew #define CFG_CPU_CLK CFG_CLK * 3 1388e585f02STsiChung Liew 1398e585f02STsiChung Liew #define CFG_MBAR 0xFC000000 1408e585f02STsiChung Liew 1418e585f02STsiChung Liew /* 1428e585f02STsiChung Liew * Low Level Configuration Settings 1438e585f02STsiChung Liew * (address mappings, register initial values, etc.) 1448e585f02STsiChung Liew * You should know what you are doing if you make changes here. 1458e585f02STsiChung Liew */ 1468e585f02STsiChung Liew /*----------------------------------------------------------------------- 1478e585f02STsiChung Liew * Definitions for initial stack pointer and data area (in DPRAM) 1488e585f02STsiChung Liew */ 1498e585f02STsiChung Liew #define CFG_INIT_RAM_ADDR 0x80000000 1508e585f02STsiChung Liew #define CFG_INIT_RAM_END 0x8000 /* End of used area in internal SRAM */ 1518e585f02STsiChung Liew #define CFG_INIT_RAM_CTRL 0x221 1528e585f02STsiChung Liew #define CFG_GBL_DATA_SIZE 128 /* size in bytes reserved for initial data */ 1538e585f02STsiChung Liew #define CFG_GBL_DATA_OFFSET (CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE) 1548e585f02STsiChung Liew #define CFG_INIT_SP_OFFSET CFG_GBL_DATA_OFFSET 1558e585f02STsiChung Liew 1568e585f02STsiChung Liew /*----------------------------------------------------------------------- 1578e585f02STsiChung Liew * Start addresses for the final memory configuration 1588e585f02STsiChung Liew * (Set up by the startup code) 1598e585f02STsiChung Liew * Please note that CFG_SDRAM_BASE _must_ start at 0 1608e585f02STsiChung Liew */ 1618e585f02STsiChung Liew #define CFG_SDRAM_BASE 0x40000000 1628e585f02STsiChung Liew #define CFG_SDRAM_SIZE 16 /* SDRAM size in MB */ 1638e585f02STsiChung Liew #define CFG_SDRAM_CFG1 0x53722730 1648e585f02STsiChung Liew #define CFG_SDRAM_CFG2 0x56670000 1658e585f02STsiChung Liew #define CFG_SDRAM_CTRL 0xE1092000 1668e585f02STsiChung Liew #define CFG_SDRAM_EMOD 0x40010000 1678e585f02STsiChung Liew #define CFG_SDRAM_MODE 0x018D0000 1688e585f02STsiChung Liew 1698e585f02STsiChung Liew #define CFG_MEMTEST_START CFG_SDRAM_BASE + 0x400 1708e585f02STsiChung Liew #define CFG_MEMTEST_END ((CFG_SDRAM_SIZE - 3) << 20) 1718e585f02STsiChung Liew 1728e585f02STsiChung Liew #define CFG_MONITOR_BASE (CFG_FLASH_BASE + 0x400) 1738e585f02STsiChung Liew #define CFG_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */ 1748e585f02STsiChung Liew 1758e585f02STsiChung Liew #define CFG_BOOTPARAMS_LEN 64*1024 1768e585f02STsiChung Liew #define CFG_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */ 1778e585f02STsiChung Liew 1788e585f02STsiChung Liew /* 1798e585f02STsiChung Liew * For booting Linux, the board info and command line data 1808e585f02STsiChung Liew * have to be in the first 8 MB of memory, since this is 1818e585f02STsiChung Liew * the maximum mapped by the Linux kernel during initialization ?? 1828e585f02STsiChung Liew */ 1838e585f02STsiChung Liew #define CFG_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */ 1848e585f02STsiChung Liew 1858e585f02STsiChung Liew /*----------------------------------------------------------------------- 1868e585f02STsiChung Liew * FLASH organization 1878e585f02STsiChung Liew */ 188*48dbfeabSTsiChungLiew #define CFG_FLASH_CFI 1898e585f02STsiChung Liew #ifdef CFG_FLASH_CFI 1908e585f02STsiChung Liew # define CFG_FLASH_CFI_DRIVER 1 1918e585f02STsiChung Liew # define CFG_FLASH_SIZE 0x800000 /* Max size that the board might have */ 1928e585f02STsiChung Liew # define CFG_FLASH_CFI_WIDTH FLASH_CFI_16BIT 193*48dbfeabSTsiChungLiew # define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */ 194*48dbfeabSTsiChungLiew # define CFG_MAX_FLASH_SECT 137 /* max number of sectors on one chip */ 195*48dbfeabSTsiChungLiew # define CFG_FLASH_PROTECTION /* "Real" (hardware) sectors protection */ 1968e585f02STsiChung Liew #endif 1978e585f02STsiChung Liew 1988e585f02STsiChung Liew #define CFG_FLASH_BASE 0 1998e585f02STsiChung Liew #define CFG_FLASH0_BASE (CFG_CS0_BASE << 16) 2008e585f02STsiChung Liew 2018e585f02STsiChung Liew /* Configuration for environment 2028e585f02STsiChung Liew * Environment is embedded in u-boot in the second sector of the flash 2038e585f02STsiChung Liew */ 2048e585f02STsiChung Liew #define CFG_ENV_OFFSET 0x4000 2058e585f02STsiChung Liew #define CFG_ENV_SECT_SIZE 0x2000 2068e585f02STsiChung Liew #define CFG_ENV_IS_IN_FLASH 1 2078e585f02STsiChung Liew #define CFG_ENV_IS_EMBEDDED 1 2088e585f02STsiChung Liew 2098e585f02STsiChung Liew /*----------------------------------------------------------------------- 2108e585f02STsiChung Liew * Cache Configuration 2118e585f02STsiChung Liew */ 2128e585f02STsiChung Liew #define CFG_CACHELINE_SIZE 16 2138e585f02STsiChung Liew 2148e585f02STsiChung Liew /*----------------------------------------------------------------------- 2158e585f02STsiChung Liew * Chipselect bank definitions 2168e585f02STsiChung Liew */ 2178e585f02STsiChung Liew /* 2188e585f02STsiChung Liew * CS0 - NOR Flash 1, 2, 4, or 8MB 2198e585f02STsiChung Liew * CS1 - CompactFlash and registers 2208e585f02STsiChung Liew * CS2 - NAND Flash 16, 32, or 64MB 2218e585f02STsiChung Liew * CS3 - Available 2228e585f02STsiChung Liew * CS4 - Available 2238e585f02STsiChung Liew * CS5 - Available 2248e585f02STsiChung Liew */ 2258e585f02STsiChung Liew #define CFG_CS0_BASE 0 2268e585f02STsiChung Liew #define CFG_CS0_MASK 0x007f0001 2278e585f02STsiChung Liew #define CFG_CS0_CTRL 0x00001fa0 2288e585f02STsiChung Liew 2298e585f02STsiChung Liew #define CFG_CS1_BASE 0x1000 2308e585f02STsiChung Liew #define CFG_CS1_MASK 0x001f0001 2318e585f02STsiChung Liew #define CFG_CS1_CTRL 0x002A3780 2328e585f02STsiChung Liew 2338e585f02STsiChung Liew #ifdef NANDFLASH_SIZE 2348e585f02STsiChung Liew #define CFG_CS2_BASE 0x00800000 2358e585f02STsiChung Liew #define CFG_CS2_MASK 0x00ff0001 2368e585f02STsiChung Liew #define CFG_CS2_CTRL 0x00001f60 2378e585f02STsiChung Liew #endif 2388e585f02STsiChung Liew 2398e585f02STsiChung Liew #define CONFIG_UDP_CHECKSUM 2408e585f02STsiChung Liew 2418e585f02STsiChung Liew #endif /* _M5329EVB_H */ 242