1*bf9a5215STsiChung Liew /* 2*bf9a5215STsiChung Liew * Configuation settings for the Freescale MCF5208EVBe. 3*bf9a5215STsiChung Liew * 4*bf9a5215STsiChung Liew * Copyright (C) 2004-2008 Freescale Semiconductor, Inc. 5*bf9a5215STsiChung Liew * TsiChung Liew (Tsi-Chung.Liew@freescale.com) 6*bf9a5215STsiChung Liew * 7*bf9a5215STsiChung Liew * See file CREDITS for list of people who contributed to this 8*bf9a5215STsiChung Liew * project. 9*bf9a5215STsiChung Liew * 10*bf9a5215STsiChung Liew * This program is free software; you can redistribute it and/or 11*bf9a5215STsiChung Liew * modify it under the terms of the GNU General Public License as 12*bf9a5215STsiChung Liew * published by the Free Software Foundation; either version 2 of 13*bf9a5215STsiChung Liew * the License, or (at your option) any later version. 14*bf9a5215STsiChung Liew * 15*bf9a5215STsiChung Liew * This program is distributed in the hope that it will be useful, 16*bf9a5215STsiChung Liew * but WITHOUT ANY WARRANTY; without even the implied warranty of 17*bf9a5215STsiChung Liew * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 18*bf9a5215STsiChung Liew * GNU General Public License for more details. 19*bf9a5215STsiChung Liew * 20*bf9a5215STsiChung Liew * You should have received a copy of the GNU General Public License 21*bf9a5215STsiChung Liew * along with this program; if not, write to the Free Software 22*bf9a5215STsiChung Liew * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 23*bf9a5215STsiChung Liew * MA 02111-1307 USA 24*bf9a5215STsiChung Liew */ 25*bf9a5215STsiChung Liew 26*bf9a5215STsiChung Liew #ifndef _M5208EVBE_H 27*bf9a5215STsiChung Liew #define _M5208EVBE_H 28*bf9a5215STsiChung Liew 29*bf9a5215STsiChung Liew /* 30*bf9a5215STsiChung Liew * High Level Configuration Options 31*bf9a5215STsiChung Liew * (easy to change) 32*bf9a5215STsiChung Liew */ 33*bf9a5215STsiChung Liew #define CONFIG_MCF520x /* define processor family */ 34*bf9a5215STsiChung Liew #define CONFIG_M5208 /* define processor type */ 35*bf9a5215STsiChung Liew 36*bf9a5215STsiChung Liew #define CONFIG_MCFUART 37*bf9a5215STsiChung Liew #define CONFIG_SYS_UART_PORT (0) 38*bf9a5215STsiChung Liew #define CONFIG_BAUDRATE 115200 39*bf9a5215STsiChung Liew #define CONFIG_SYS_BAUDRATE_TABLE { 9600 , 19200 , 38400 , 57600, 115200 } 40*bf9a5215STsiChung Liew 41*bf9a5215STsiChung Liew #undef CONFIG_WATCHDOG 42*bf9a5215STsiChung Liew #define CONFIG_WATCHDOG_TIMEOUT 5000 43*bf9a5215STsiChung Liew 44*bf9a5215STsiChung Liew /* Command line configuration */ 45*bf9a5215STsiChung Liew #include <config_cmd_default.h> 46*bf9a5215STsiChung Liew 47*bf9a5215STsiChung Liew #define CONFIG_CMD_CACHE 48*bf9a5215STsiChung Liew #define CONFIG_CMD_ELF 49*bf9a5215STsiChung Liew #define CONFIG_CMD_FLASH 50*bf9a5215STsiChung Liew #undef CONFIG_CMD_I2C 51*bf9a5215STsiChung Liew #define CONFIG_CMD_MEMORY 52*bf9a5215STsiChung Liew #define CONFIG_CMD_MISC 53*bf9a5215STsiChung Liew #define CONFIG_CMD_MII 54*bf9a5215STsiChung Liew #define CONFIG_CMD_NET 55*bf9a5215STsiChung Liew #define CONFIG_CMD_PING 56*bf9a5215STsiChung Liew #define CONFIG_CMD_REGINFO 57*bf9a5215STsiChung Liew 58*bf9a5215STsiChung Liew #define CONFIG_MCFFEC 59*bf9a5215STsiChung Liew #ifdef CONFIG_MCFFEC 60*bf9a5215STsiChung Liew # define CONFIG_NET_MULTI 1 61*bf9a5215STsiChung Liew # define CONFIG_MII 1 62*bf9a5215STsiChung Liew # define CONFIG_MII_INIT 1 63*bf9a5215STsiChung Liew # define CONFIG_SYS_DISCOVER_PHY 64*bf9a5215STsiChung Liew # define CONFIG_SYS_RX_ETH_BUFFER 8 65*bf9a5215STsiChung Liew # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 66*bf9a5215STsiChung Liew # define CONFIG_HAS_ETH1 67*bf9a5215STsiChung Liew 68*bf9a5215STsiChung Liew # define CONFIG_SYS_FEC0_PINMUX 0 69*bf9a5215STsiChung Liew # define CONFIG_SYS_FEC0_MIIBASE CONFIG_SYS_FEC0_IOBASE 70*bf9a5215STsiChung Liew # define MCFFEC_TOUT_LOOP 50000 71*bf9a5215STsiChung Liew /* If CONFIG_SYS_DISCOVER_PHY is not defined - hardcoded */ 72*bf9a5215STsiChung Liew # ifndef CONFIG_SYS_DISCOVER_PHY 73*bf9a5215STsiChung Liew # define FECDUPLEX FULL 74*bf9a5215STsiChung Liew # define FECSPEED _100BASET 75*bf9a5215STsiChung Liew # else 76*bf9a5215STsiChung Liew # ifndef CONFIG_SYS_FAULT_ECHO_LINK_DOWN 77*bf9a5215STsiChung Liew # define CONFIG_SYS_FAULT_ECHO_LINK_DOWN 78*bf9a5215STsiChung Liew # endif 79*bf9a5215STsiChung Liew # endif /* CONFIG_SYS_DISCOVER_PHY */ 80*bf9a5215STsiChung Liew #endif 81*bf9a5215STsiChung Liew 82*bf9a5215STsiChung Liew /* Timer */ 83*bf9a5215STsiChung Liew #define CONFIG_MCFTMR 84*bf9a5215STsiChung Liew #undef CONFIG_MCFPIT 85*bf9a5215STsiChung Liew 86*bf9a5215STsiChung Liew /* I2C */ 87*bf9a5215STsiChung Liew #define CONFIG_FSL_I2C 88*bf9a5215STsiChung Liew #define CONFIG_HARD_I2C /* I2C with hw support */ 89*bf9a5215STsiChung Liew #undef CONFIG_SOFT_I2C /* I2C bit-banged */ 90*bf9a5215STsiChung Liew #define CONFIG_SYS_I2C_SPEED 80000 91*bf9a5215STsiChung Liew #define CONFIG_SYS_I2C_SLAVE 0x7F 92*bf9a5215STsiChung Liew #define CONFIG_SYS_I2C_OFFSET 0x58000 93*bf9a5215STsiChung Liew #define CONFIG_SYS_IMMR CONFIG_SYS_MBAR 94*bf9a5215STsiChung Liew 95*bf9a5215STsiChung Liew #define CONFIG_BOOTDELAY 1 /* autoboot after 5 seconds */ 96*bf9a5215STsiChung Liew #define CONFIG_UDP_CHECKSUM 97*bf9a5215STsiChung Liew 98*bf9a5215STsiChung Liew #ifdef CONFIG_MCFFEC 99*bf9a5215STsiChung Liew # define CONFIG_ETHADDR 00:e0:0c:bc:e5:60 100*bf9a5215STsiChung Liew # define CONFIG_IPADDR 192.162.1.2 101*bf9a5215STsiChung Liew # define CONFIG_NETMASK 255.255.255.0 102*bf9a5215STsiChung Liew # define CONFIG_SERVERIP 192.162.1.1 103*bf9a5215STsiChung Liew # define CONFIG_GATEWAYIP 192.162.1.1 104*bf9a5215STsiChung Liew # define CONFIG_OVERWRITE_ETHADDR_ONCE 105*bf9a5215STsiChung Liew #endif /* CONFIG_MCFFEC */ 106*bf9a5215STsiChung Liew 107*bf9a5215STsiChung Liew #define CONFIG_HOSTNAME M5208EVBe 108*bf9a5215STsiChung Liew #define CONFIG_EXTRA_ENV_SETTINGS \ 109*bf9a5215STsiChung Liew "netdev=eth0\0" \ 110*bf9a5215STsiChung Liew "loadaddr=40010000\0" \ 111*bf9a5215STsiChung Liew "u-boot=u-boot.bin\0" \ 112*bf9a5215STsiChung Liew "load=tftp ${loadaddr) ${u-boot}\0" \ 113*bf9a5215STsiChung Liew "upd=run load; run prog\0" \ 114*bf9a5215STsiChung Liew "prog=prot off 0 3ffff;" \ 115*bf9a5215STsiChung Liew "era 0 3ffff;" \ 116*bf9a5215STsiChung Liew "cp.b ${loadaddr} 0 ${filesize};" \ 117*bf9a5215STsiChung Liew "save\0" \ 118*bf9a5215STsiChung Liew "" 119*bf9a5215STsiChung Liew 120*bf9a5215STsiChung Liew #define CONFIG_PRAM 512 /* 512 KB */ 121*bf9a5215STsiChung Liew #define CONFIG_SYS_PROMPT "-> " 122*bf9a5215STsiChung Liew #define CONFIG_SYS_LONGHELP /* undef to save memory */ 123*bf9a5215STsiChung Liew 124*bf9a5215STsiChung Liew #ifdef CONFIG_CMD_KGDB 125*bf9a5215STsiChung Liew # define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 126*bf9a5215STsiChung Liew #else 127*bf9a5215STsiChung Liew # define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 128*bf9a5215STsiChung Liew #endif 129*bf9a5215STsiChung Liew 130*bf9a5215STsiChung Liew #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */ 131*bf9a5215STsiChung Liew #define CONFIG_SYS_MAXARGS 16 /* max number of cmd args */ 132*bf9a5215STsiChung Liew #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Arg Buf Sz */ 133*bf9a5215STsiChung Liew #define CONFIG_SYS_LOAD_ADDR 0x40010000 134*bf9a5215STsiChung Liew 135*bf9a5215STsiChung Liew #define CONFIG_SYS_HZ 1000 136*bf9a5215STsiChung Liew #define CONFIG_SYS_CLK 166666666 /* CPU Core Clock */ 137*bf9a5215STsiChung Liew #define CONFIG_SYS_PLL_ODR 0x36 138*bf9a5215STsiChung Liew #define CONFIG_SYS_PLL_FDR 0x7D 139*bf9a5215STsiChung Liew 140*bf9a5215STsiChung Liew #define CONFIG_SYS_MBAR 0xFC000000 141*bf9a5215STsiChung Liew 142*bf9a5215STsiChung Liew /* 143*bf9a5215STsiChung Liew * Low Level Configuration Settings 144*bf9a5215STsiChung Liew * (address mappings, register initial values, etc.) 145*bf9a5215STsiChung Liew * You should know what you are doing if you make changes here. 146*bf9a5215STsiChung Liew */ 147*bf9a5215STsiChung Liew /* Definitions for initial stack pointer and data area (in DPRAM) */ 148*bf9a5215STsiChung Liew #define CONFIG_SYS_INIT_RAM_ADDR 0x80000000 149*bf9a5215STsiChung Liew #define CONFIG_SYS_INIT_RAM_END 0x4000 /* End of used area in internal SRAM */ 150*bf9a5215STsiChung Liew #define CONFIG_SYS_INIT_RAM_CTRL 0x221 151*bf9a5215STsiChung Liew #define CONFIG_SYS_GBL_DATA_SIZE 128 /* size in bytes reserved for initial data */ 152*bf9a5215STsiChung Liew #define CONFIG_SYS_GBL_DATA_OFFSET ((CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE) - 0x10) 153*bf9a5215STsiChung Liew #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 154*bf9a5215STsiChung Liew 155*bf9a5215STsiChung Liew /* 156*bf9a5215STsiChung Liew * Start addresses for the final memory configuration 157*bf9a5215STsiChung Liew * (Set up by the startup code) 158*bf9a5215STsiChung Liew * Please note that CONFIG_SYS_SDRAM_BASE _must_ start at 0 159*bf9a5215STsiChung Liew */ 160*bf9a5215STsiChung Liew #define CONFIG_SYS_SDRAM_BASE 0x40000000 161*bf9a5215STsiChung Liew #define CONFIG_SYS_SDRAM_SIZE 64 /* SDRAM size in MB */ 162*bf9a5215STsiChung Liew #define CONFIG_SYS_SDRAM_CFG1 0x43711630 163*bf9a5215STsiChung Liew #define CONFIG_SYS_SDRAM_CFG2 0x56670000 164*bf9a5215STsiChung Liew #define CONFIG_SYS_SDRAM_CTRL 0xE1002000 165*bf9a5215STsiChung Liew #define CONFIG_SYS_SDRAM_EMOD 0x80010000 166*bf9a5215STsiChung Liew #define CONFIG_SYS_SDRAM_MODE 0x00CD0000 167*bf9a5215STsiChung Liew 168*bf9a5215STsiChung Liew #define CONFIG_SYS_MEMTEST_START CONFIG_SYS_SDRAM_BASE + 0x400 169*bf9a5215STsiChung Liew #define CONFIG_SYS_MEMTEST_END ((CONFIG_SYS_SDRAM_SIZE - 3) << 20) 170*bf9a5215STsiChung Liew 171*bf9a5215STsiChung Liew #define CONFIG_SYS_MONITOR_BASE (CONFIG_SYS_FLASH_BASE + 0x400) 172*bf9a5215STsiChung Liew #define CONFIG_SYS_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */ 173*bf9a5215STsiChung Liew 174*bf9a5215STsiChung Liew #define CONFIG_SYS_BOOTPARAMS_LEN 64*1024 175*bf9a5215STsiChung Liew #define CONFIG_SYS_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */ 176*bf9a5215STsiChung Liew 177*bf9a5215STsiChung Liew /* 178*bf9a5215STsiChung Liew * For booting Linux, the board info and command line data 179*bf9a5215STsiChung Liew * have to be in the first 8 MB of memory, since this is 180*bf9a5215STsiChung Liew * the maximum mapped by the Linux kernel during initialization ?? 181*bf9a5215STsiChung Liew */ 182*bf9a5215STsiChung Liew #define CONFIG_SYS_BOOTMAPSZ (CONFIG_SYS_SDRAM_BASE + (CONFIG_SYS_SDRAM_SIZE << 20)) 183*bf9a5215STsiChung Liew #define CONFIG_SYS_BOOTM_LEN (CONFIG_SYS_SDRAM_SIZE << 20) 184*bf9a5215STsiChung Liew 185*bf9a5215STsiChung Liew /* FLASH organization */ 186*bf9a5215STsiChung Liew #define CONFIG_SYS_FLASH_CFI 187*bf9a5215STsiChung Liew #ifdef CONFIG_SYS_FLASH_CFI 188*bf9a5215STsiChung Liew # define CONFIG_FLASH_CFI_DRIVER 1 189*bf9a5215STsiChung Liew # define CONFIG_SYS_FLASH_SIZE 0x800000 /* Max size that the board might have */ 190*bf9a5215STsiChung Liew # define CONFIG_SYS_FLASH_CFI_WIDTH FLASH_CFI_16BIT 191*bf9a5215STsiChung Liew # define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */ 192*bf9a5215STsiChung Liew # define CONFIG_SYS_MAX_FLASH_SECT 254 /* max number of sectors on one chip */ 193*bf9a5215STsiChung Liew # define CONFIG_SYS_FLASH_PROTECTION /* "Real" (hardware) sectors protection */ 194*bf9a5215STsiChung Liew #endif 195*bf9a5215STsiChung Liew 196*bf9a5215STsiChung Liew #define CONFIG_SYS_FLASH_BASE CONFIG_SYS_CS0_BASE 197*bf9a5215STsiChung Liew 198*bf9a5215STsiChung Liew /* 199*bf9a5215STsiChung Liew * Configuration for environment 200*bf9a5215STsiChung Liew * Environment is embedded in u-boot in the second sector of the flash 201*bf9a5215STsiChung Liew */ 202*bf9a5215STsiChung Liew #define CONFIG_ENV_OFFSET 0x2000 203*bf9a5215STsiChung Liew #define CONFIG_ENV_SIZE 0x1000 204*bf9a5215STsiChung Liew #define CONFIG_ENV_SECT_SIZE 0x2000 205*bf9a5215STsiChung Liew #define CONFIG_ENV_IS_IN_FLASH 1 206*bf9a5215STsiChung Liew 207*bf9a5215STsiChung Liew /* Cache Configuration */ 208*bf9a5215STsiChung Liew #define CONFIG_SYS_CACHELINE_SIZE 16 209*bf9a5215STsiChung Liew 210*bf9a5215STsiChung Liew /* Chipselect bank definitions */ 211*bf9a5215STsiChung Liew /* 212*bf9a5215STsiChung Liew * CS0 - NOR Flash 213*bf9a5215STsiChung Liew * CS1 - Available 214*bf9a5215STsiChung Liew * CS2 - Available 215*bf9a5215STsiChung Liew * CS3 - Available 216*bf9a5215STsiChung Liew * CS4 - Available 217*bf9a5215STsiChung Liew * CS5 - Available 218*bf9a5215STsiChung Liew */ 219*bf9a5215STsiChung Liew #define CONFIG_SYS_CS0_BASE 0 220*bf9a5215STsiChung Liew #define CONFIG_SYS_CS0_MASK 0x007F0001 221*bf9a5215STsiChung Liew #define CONFIG_SYS_CS0_CTRL 0x00001FA0 222*bf9a5215STsiChung Liew 223*bf9a5215STsiChung Liew #endif /* _M5208EVBE_H */ 224