11552af70STsiChungLiew /* 21552af70STsiChungLiew * Configuation settings for the Freescale MCF52277 EVB board. 31552af70STsiChungLiew * 41552af70STsiChungLiew * Copyright (C) 2004-2007 Freescale Semiconductor, Inc. 51552af70STsiChungLiew * TsiChung Liew (Tsi-Chung.Liew@freescale.com) 61552af70STsiChungLiew * 71552af70STsiChungLiew * See file CREDITS for list of people who contributed to this 81552af70STsiChungLiew * project. 91552af70STsiChungLiew * 101552af70STsiChungLiew * This program is free software; you can redistribute it and/or 111552af70STsiChungLiew * modify it under the terms of the GNU General Public License as 121552af70STsiChungLiew * published by the Free Software Foundation; either version 2 of 131552af70STsiChungLiew * the License, or (at your option) any later version. 141552af70STsiChungLiew * 151552af70STsiChungLiew * This program is distributed in the hope that it will be useful, 161552af70STsiChungLiew * but WITHOUT ANY WARRANTY; without even the implied warranty of 171552af70STsiChungLiew * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 181552af70STsiChungLiew * GNU General Public License for more details. 191552af70STsiChungLiew * 201552af70STsiChungLiew * You should have received a copy of the GNU General Public License 211552af70STsiChungLiew * along with this program; if not, write to the Free Software 221552af70STsiChungLiew * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 231552af70STsiChungLiew * MA 02111-1307 USA 241552af70STsiChungLiew */ 251552af70STsiChungLiew 261552af70STsiChungLiew /* 271552af70STsiChungLiew * board/config.h - configuration options, board specific 281552af70STsiChungLiew */ 291552af70STsiChungLiew 301552af70STsiChungLiew #ifndef _M52277EVB_H 311552af70STsiChungLiew #define _M52277EVB_H 321552af70STsiChungLiew 331552af70STsiChungLiew /* 341552af70STsiChungLiew * High Level Configuration Options 351552af70STsiChungLiew * (easy to change) 361552af70STsiChungLiew */ 371552af70STsiChungLiew #define CONFIG_MCF5227x /* define processor family */ 381552af70STsiChungLiew #define CONFIG_M52277 /* define processor type */ 391552af70STsiChungLiew #define CONFIG_M52277EVB /* M52277EVB board */ 401552af70STsiChungLiew 411552af70STsiChungLiew #define CONFIG_MCFUART 421552af70STsiChungLiew #define CFG_UART_PORT (0) 431552af70STsiChungLiew #define CONFIG_BAUDRATE 115200 441552af70STsiChungLiew #define CFG_BAUDRATE_TABLE { 9600 , 19200 , 38400 , 57600, 115200 } 451552af70STsiChungLiew 461552af70STsiChungLiew #undef CONFIG_WATCHDOG 471552af70STsiChungLiew 481552af70STsiChungLiew #define CONFIG_TIMESTAMP /* Print image info with timestamp */ 491552af70STsiChungLiew 501552af70STsiChungLiew /* 511552af70STsiChungLiew * BOOTP options 521552af70STsiChungLiew */ 531552af70STsiChungLiew #define CONFIG_BOOTP_BOOTFILESIZE 541552af70STsiChungLiew #define CONFIG_BOOTP_BOOTPATH 551552af70STsiChungLiew #define CONFIG_BOOTP_GATEWAY 561552af70STsiChungLiew #define CONFIG_BOOTP_HOSTNAME 571552af70STsiChungLiew 581552af70STsiChungLiew /* Command line configuration */ 591552af70STsiChungLiew #include <config_cmd_default.h> 601552af70STsiChungLiew 611552af70STsiChungLiew #define CONFIG_CMD_CACHE 621552af70STsiChungLiew #define CONFIG_CMD_DATE 631552af70STsiChungLiew #define CONFIG_CMD_ELF 641552af70STsiChungLiew #define CONFIG_CMD_FLASH 651552af70STsiChungLiew #define CONFIG_CMD_I2C 661552af70STsiChungLiew #define CONFIG_CMD_JFFS2 671552af70STsiChungLiew #define CONFIG_CMD_LOADB 681552af70STsiChungLiew #define CONFIG_CMD_LOADS 691552af70STsiChungLiew #define CONFIG_CMD_MEMORY 701552af70STsiChungLiew #define CONFIG_CMD_MISC 711552af70STsiChungLiew #undef CONFIG_CMD_NET 721552af70STsiChungLiew #define CONFIG_CMD_REGINFO 731552af70STsiChungLiew #undef CONFIG_CMD_USB 741552af70STsiChungLiew #undef CONFIG_CMD_BMP 751552af70STsiChungLiew 761552af70STsiChungLiew #define CONFIG_HOSTNAME M52277EVB 771552af70STsiChungLiew #define CONFIG_EXTRA_ENV_SETTINGS \ 781552af70STsiChungLiew "inpclk=" MK_STR(CFG_INPUT_CLKSRC) "\0" \ 791552af70STsiChungLiew "loadaddr=" MK_STR(CFG_LOAD_ADDR) "\0" \ 801552af70STsiChungLiew "u-boot=u-boot.bin\0" \ 811552af70STsiChungLiew "load=tftp ${loadaddr) ${u-boot}\0" \ 821552af70STsiChungLiew "upd=run load; run prog\0" \ 831552af70STsiChungLiew "prog=prot off 0 0x3ffff;" \ 841552af70STsiChungLiew "era 0 3ffff;" \ 851552af70STsiChungLiew "cp.b ${loadaddr} 0 ${filesize};" \ 861552af70STsiChungLiew "save\0" \ 871552af70STsiChungLiew "" 881552af70STsiChungLiew 89*44e5b9edSTsiChung Liew #define CONFIG_BOOTDELAY 3 /* autoboot after 3 seconds */ 901552af70STsiChungLiew /* LCD */ 911552af70STsiChungLiew #ifdef CONFIG_CMD_BMP 921552af70STsiChungLiew #define CONFIG_LCD 931552af70STsiChungLiew #define CONFIG_SPLASH_SCREEN 941552af70STsiChungLiew #define CONFIG_LCD_LOGO 951552af70STsiChungLiew #define CONFIG_SHARP_LQ035Q7DH06 961552af70STsiChungLiew #endif 971552af70STsiChungLiew 981552af70STsiChungLiew /* USB */ 991552af70STsiChungLiew #ifdef CONFIG_CMD_USB 1001552af70STsiChungLiew #define CONFIG_USB_EHCI 1011552af70STsiChungLiew #define CONFIG_USB_STORAGE 1021552af70STsiChungLiew #define CONFIG_DOS_PARTITION 1031552af70STsiChungLiew #define CONFIG_MAC_PARTITION 1041552af70STsiChungLiew #define CONFIG_ISO_PARTITION 1051552af70STsiChungLiew #define CFG_USB_EHCI_REGS_BASE 0xFC0B0000 1061552af70STsiChungLiew #define CFG_USB_EHCI_CPU_INIT 1071552af70STsiChungLiew #endif 1081552af70STsiChungLiew 1091552af70STsiChungLiew /* Realtime clock */ 1101552af70STsiChungLiew #define CONFIG_MCFRTC 1111552af70STsiChungLiew #undef RTC_DEBUG 1121552af70STsiChungLiew #define CFG_RTC_OSCILLATOR (32 * CFG_HZ) 1131552af70STsiChungLiew 1141552af70STsiChungLiew /* Timer */ 1151552af70STsiChungLiew #define CONFIG_MCFTMR 1161552af70STsiChungLiew #undef CONFIG_MCFPIT 1171552af70STsiChungLiew 1181552af70STsiChungLiew /* I2c */ 1191552af70STsiChungLiew #define CONFIG_FSL_I2C 1201552af70STsiChungLiew #define CONFIG_HARD_I2C /* I2C with hardware support */ 1211552af70STsiChungLiew #undef CONFIG_SOFT_I2C /* I2C bit-banged */ 1221552af70STsiChungLiew #define CFG_I2C_SPEED 80000 /* I2C speed and slave address */ 1231552af70STsiChungLiew #define CFG_I2C_SLAVE 0x7F 1241552af70STsiChungLiew #define CFG_I2C_OFFSET 0x58000 1251552af70STsiChungLiew #define CFG_IMMR CFG_MBAR 1261552af70STsiChungLiew 1271552af70STsiChungLiew /* Input, PCI, Flexbus, and VCO */ 1281552af70STsiChungLiew #define CONFIG_EXTRA_CLOCK 1291552af70STsiChungLiew 1301552af70STsiChungLiew #define CFG_INPUT_CLKSRC 16000000 1311552af70STsiChungLiew 1321552af70STsiChungLiew #define CONFIG_PRAM 512 /* 512 KB */ 1331552af70STsiChungLiew 1341552af70STsiChungLiew #define CFG_PROMPT "-> " 1351552af70STsiChungLiew #define CFG_LONGHELP /* undef to save memory */ 1361552af70STsiChungLiew 1371552af70STsiChungLiew #if defined(CONFIG_CMD_KGDB) 1381552af70STsiChungLiew #define CFG_CBSIZE 1024 /* Console I/O Buffer Size */ 1391552af70STsiChungLiew #else 1401552af70STsiChungLiew #define CFG_CBSIZE 256 /* Console I/O Buffer Size */ 1411552af70STsiChungLiew #endif 1421552af70STsiChungLiew #define CFG_PBSIZE (CFG_CBSIZE+sizeof(CFG_PROMPT)+16) /* Print Buffer Size */ 1431552af70STsiChungLiew #define CFG_MAXARGS 16 /* max number of command args */ 1441552af70STsiChungLiew #define CFG_BARGSIZE CFG_CBSIZE /* Boot Argument Buffer Size */ 1451552af70STsiChungLiew 1461552af70STsiChungLiew #define CFG_LOAD_ADDR (CFG_SDRAM_BASE + 0x10000) 1471552af70STsiChungLiew 1481552af70STsiChungLiew #define CFG_HZ 1000 1491552af70STsiChungLiew 1501552af70STsiChungLiew #define CFG_MBAR 0xFC000000 1511552af70STsiChungLiew 1521552af70STsiChungLiew /* 1531552af70STsiChungLiew * Low Level Configuration Settings 1541552af70STsiChungLiew * (address mappings, register initial values, etc.) 1551552af70STsiChungLiew * You should know what you are doing if you make changes here. 1561552af70STsiChungLiew */ 1571552af70STsiChungLiew 1581552af70STsiChungLiew /*----------------------------------------------------------------------- 1591552af70STsiChungLiew * Definitions for initial stack pointer and data area (in DPRAM) 1601552af70STsiChungLiew */ 1611552af70STsiChungLiew #define CFG_INIT_RAM_ADDR 0x80000000 1621552af70STsiChungLiew #define CFG_INIT_RAM_END 0x8000 /* End of used area in internal SRAM */ 1631552af70STsiChungLiew #define CFG_INIT_RAM_CTRL 0x21 1641552af70STsiChungLiew #define CFG_GBL_DATA_SIZE 128 /* size in bytes reserved for initial data */ 1651552af70STsiChungLiew #define CFG_GBL_DATA_OFFSET ((CFG_INIT_RAM_END - CFG_GBL_DATA_SIZE) - 16) 1661552af70STsiChungLiew #define CFG_INIT_SP_OFFSET CFG_GBL_DATA_OFFSET 1671552af70STsiChungLiew 1681552af70STsiChungLiew /*----------------------------------------------------------------------- 1691552af70STsiChungLiew * Start addresses for the final memory configuration 1701552af70STsiChungLiew * (Set up by the startup code) 1711552af70STsiChungLiew * Please note that CFG_SDRAM_BASE _must_ start at 0 1721552af70STsiChungLiew */ 1731552af70STsiChungLiew #define CFG_SDRAM_BASE 0x40000000 1741552af70STsiChungLiew #define CFG_SDRAM_SIZE 64 /* SDRAM size in MB */ 1751552af70STsiChungLiew #define CFG_SDRAM_CFG1 0x43711630 1761552af70STsiChungLiew #define CFG_SDRAM_CFG2 0x56670000 1771552af70STsiChungLiew #define CFG_SDRAM_CTRL 0xE1092000 1781552af70STsiChungLiew #define CFG_SDRAM_EMOD 0x81810000 1791552af70STsiChungLiew #define CFG_SDRAM_MODE 0x00CD0000 1801552af70STsiChungLiew 1811552af70STsiChungLiew #define CFG_MEMTEST_START CFG_SDRAM_BASE + 0x400 1821552af70STsiChungLiew #define CFG_MEMTEST_END ((CFG_SDRAM_SIZE - 3) << 20) 1831552af70STsiChungLiew 1841552af70STsiChungLiew #define CFG_MONITOR_BASE (CFG_FLASH_BASE + 0x400) 1851552af70STsiChungLiew #define CFG_BOOTPARAMS_LEN 64*1024 1861552af70STsiChungLiew #define CFG_MONITOR_LEN (256 << 10) /* Reserve 256 kB for Monitor */ 1871552af70STsiChungLiew #define CFG_MALLOC_LEN (128 << 10) /* Reserve 128 kB for malloc() */ 1881552af70STsiChungLiew 1891552af70STsiChungLiew /* Initial Memory map for Linux */ 1901552af70STsiChungLiew #define CFG_BOOTMAPSZ (CFG_SDRAM_BASE + (CFG_SDRAM_SIZE << 20)) 1911552af70STsiChungLiew 1921552af70STsiChungLiew /* Configuration for environment 1931552af70STsiChungLiew * Environment is embedded in u-boot in the second sector of the flash 1941552af70STsiChungLiew */ 1951552af70STsiChungLiew #define CFG_ENV_IS_IN_FLASH 1 1961552af70STsiChungLiew #define CONFIG_ENV_OVERWRITE 1 1971552af70STsiChungLiew #undef CFG_ENV_IS_EMBEDDED 1981552af70STsiChungLiew 1991552af70STsiChungLiew /*----------------------------------------------------------------------- 2001552af70STsiChungLiew * FLASH organization 2011552af70STsiChungLiew */ 2021552af70STsiChungLiew #define CFG_FLASH_BASE CFG_CS0_BASE 2031552af70STsiChungLiew #define CFG_FLASH0_BASE CFG_CS0_BASE 2041552af70STsiChungLiew #define CFG_ENV_ADDR (CFG_FLASH_BASE + 0x8000) 2051552af70STsiChungLiew #define CFG_ENV_SECT_SIZE 0x8000 2061552af70STsiChungLiew 2071552af70STsiChungLiew #define CFG_FLASH_CFI 2081552af70STsiChungLiew #ifdef CFG_FLASH_CFI 2091552af70STsiChungLiew 2101552af70STsiChungLiew # define CFG_FLASH_CFI_DRIVER 1 2111552af70STsiChungLiew # define CFG_FLASH_SIZE 0x1000000 /* Max size that the board might have */ 2121552af70STsiChungLiew # define CFG_FLASH_CFI_WIDTH FLASH_CFI_16BIT 2131552af70STsiChungLiew # define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */ 2141552af70STsiChungLiew # define CFG_MAX_FLASH_SECT 137 /* max number of sectors on one chip */ 2151552af70STsiChungLiew # define CFG_FLASH_PROTECTION /* "Real" (hardware) sectors protection */ 2161552af70STsiChungLiew # define CFG_FLASH_CHECKSUM 2171552af70STsiChungLiew #endif 2181552af70STsiChungLiew 2191552af70STsiChungLiew /* 2201552af70STsiChungLiew * This is setting for JFFS2 support in u-boot. 2211552af70STsiChungLiew * NOTE: Enable CONFIG_CMD_JFFS2 for JFFS2 support. 2221552af70STsiChungLiew */ 2231552af70STsiChungLiew #ifdef CONFIG_CMD_JFFS2 2241552af70STsiChungLiew # define CONFIG_JFFS2_DEV "nor0" 2251552af70STsiChungLiew # define CONFIG_JFFS2_PART_SIZE (0x01000000 - 0x40000) 2261552af70STsiChungLiew # define CONFIG_JFFS2_PART_OFFSET (CFG_FLASH0_BASE + 0x40000) 2271552af70STsiChungLiew #endif 2281552af70STsiChungLiew 2291552af70STsiChungLiew /*----------------------------------------------------------------------- 2301552af70STsiChungLiew * Cache Configuration 2311552af70STsiChungLiew */ 2321552af70STsiChungLiew #define CFG_CACHELINE_SIZE 16 2331552af70STsiChungLiew 2341552af70STsiChungLiew /*----------------------------------------------------------------------- 2351552af70STsiChungLiew * Memory bank definitions 2361552af70STsiChungLiew */ 2371552af70STsiChungLiew /* 2381552af70STsiChungLiew * CS0 - NOR Flash 2391552af70STsiChungLiew * CS1 - Available 2401552af70STsiChungLiew * CS2 - Available 2411552af70STsiChungLiew * CS3 - Available 2421552af70STsiChungLiew * CS4 - Available 2431552af70STsiChungLiew * CS5 - Available 2441552af70STsiChungLiew */ 2451552af70STsiChungLiew 2461552af70STsiChungLiew #define CFG_CS0_BASE 0x00000000 2471552af70STsiChungLiew #define CFG_CS0_MASK 0x00FF0001 2481552af70STsiChungLiew #define CFG_CS0_CTRL 0x00001FA0 2491552af70STsiChungLiew 2501552af70STsiChungLiew #endif /* _M52277EVB_H */ 251