19d79e575SWolfgang Wegner /* 29d79e575SWolfgang Wegner * Configuration settings for the Sentec Cobra Board. 39d79e575SWolfgang Wegner * 49d79e575SWolfgang Wegner * (C) Copyright 2003 Josef Baumgartner <josef.baumgartner@telex.de> 59d79e575SWolfgang Wegner * 69d79e575SWolfgang Wegner * See file CREDITS for list of people who contributed to this 79d79e575SWolfgang Wegner * project. 89d79e575SWolfgang Wegner * 99d79e575SWolfgang Wegner * This program is free software; you can redistribute it and/or 109d79e575SWolfgang Wegner * modify it under the terms of the GNU General Public License as 119d79e575SWolfgang Wegner * published by the Free Software Foundation; either version 2 of 129d79e575SWolfgang Wegner * the License, or (at your option) any later version. 139d79e575SWolfgang Wegner * 149d79e575SWolfgang Wegner * This program is distributed in the hope that it will be useful, 159d79e575SWolfgang Wegner * but WITHOUT ANY WARRANTY; without even the implied warranty of 169d79e575SWolfgang Wegner * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 179d79e575SWolfgang Wegner * GNU General Public License for more details. 189d79e575SWolfgang Wegner * 199d79e575SWolfgang Wegner * You should have received a copy of the GNU General Public License 209d79e575SWolfgang Wegner * along with this program; if not, write to the Free Software 219d79e575SWolfgang Wegner * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 229d79e575SWolfgang Wegner * MA 02111-1307 USA 239d79e575SWolfgang Wegner */ 249d79e575SWolfgang Wegner 259d79e575SWolfgang Wegner /* 269d79e575SWolfgang Wegner * configuration for ASTRO "Urmel" board. 279d79e575SWolfgang Wegner * Originating from Cobra5272 configuration, messed up by 289d79e575SWolfgang Wegner * Wolfgang Wegner <w.wegner@astro-kom.de> 299d79e575SWolfgang Wegner * Please do not bother the original author with bug reports 309d79e575SWolfgang Wegner * concerning this file. 319d79e575SWolfgang Wegner */ 329d79e575SWolfgang Wegner 339d79e575SWolfgang Wegner #ifndef _CONFIG_ASTRO_MCF5373L_H 349d79e575SWolfgang Wegner #define _CONFIG_ASTRO_MCF5373L_H 359d79e575SWolfgang Wegner 369d79e575SWolfgang Wegner /* 379d79e575SWolfgang Wegner * set the card type to actually compile for; either of 389d79e575SWolfgang Wegner * the possibilities listed below has to be used! 399d79e575SWolfgang Wegner */ 409d79e575SWolfgang Wegner #define CONFIG_ASTRO_V532 1 419d79e575SWolfgang Wegner 429d79e575SWolfgang Wegner #if CONFIG_ASTRO_V532 439d79e575SWolfgang Wegner #define ASTRO_ID 0xF8 449d79e575SWolfgang Wegner #elif CONFIG_ASTRO_V512 459d79e575SWolfgang Wegner #define ASTRO_ID 0xFA 469d79e575SWolfgang Wegner #elif CONFIG_ASTRO_TWIN7S2 479d79e575SWolfgang Wegner #define ASTRO_ID 0xF9 489d79e575SWolfgang Wegner #elif CONFIG_ASTRO_V912 499d79e575SWolfgang Wegner #define ASTRO_ID 0xFC 509d79e575SWolfgang Wegner #elif CONFIG_ASTRO_COFDMDUOS2 519d79e575SWolfgang Wegner #define ASTRO_ID 0xFB 529d79e575SWolfgang Wegner #else 539d79e575SWolfgang Wegner #error No card type defined! 549d79e575SWolfgang Wegner #endif 559d79e575SWolfgang Wegner 569d79e575SWolfgang Wegner /* 579d79e575SWolfgang Wegner * Define processor 589d79e575SWolfgang Wegner * possible values for Urmel board: only Coldfire M5373 processor supported 599d79e575SWolfgang Wegner * (please do not change) 609d79e575SWolfgang Wegner */ 619d79e575SWolfgang Wegner 629d79e575SWolfgang Wegner /* it seems not clear yet which processor defines we should use */ 639d79e575SWolfgang Wegner #define CONFIG_MCF537x /* define processor family */ 649d79e575SWolfgang Wegner #define CONFIG_MCF532x /* define processor family */ 659d79e575SWolfgang Wegner #define CONFIG_M5373 /* define processor type */ 669d79e575SWolfgang Wegner #define CONFIG_ASTRO5373L /* define board type */ 679d79e575SWolfgang Wegner 689d79e575SWolfgang Wegner /* Command line configuration */ 699d79e575SWolfgang Wegner #include <config_cmd_default.h> 709d79e575SWolfgang Wegner 719d79e575SWolfgang Wegner /* 729d79e575SWolfgang Wegner * CONFIG_MK_RAM defines if u-boot is loaded via BDM (or started from 739d79e575SWolfgang Wegner * a different bootloader that has already performed RAM setup) or 749d79e575SWolfgang Wegner * started directly from flash, which is the regular case for production 759d79e575SWolfgang Wegner * boards. 769d79e575SWolfgang Wegner */ 779d79e575SWolfgang Wegner #ifdef CONFIG_MK_RAM 789d79e575SWolfgang Wegner #define CONFIG_MONITOR_IS_IN_RAM 799d79e575SWolfgang Wegner #define CONFIG_TEXT_BASE 0x40020000 809d79e575SWolfgang Wegner #define ENABLE_JFFS 0 819d79e575SWolfgang Wegner #else 829d79e575SWolfgang Wegner #define CONFIG_TEXT_BASE 0x00000000 839d79e575SWolfgang Wegner #define ENABLE_JFFS 1 849d79e575SWolfgang Wegner #endif 859d79e575SWolfgang Wegner 869d79e575SWolfgang Wegner /* Define which commmands should be available at u-boot command prompt */ 879d79e575SWolfgang Wegner 889d79e575SWolfgang Wegner #define CONFIG_CMD_CACHE 899d79e575SWolfgang Wegner #define CONFIG_CMD_DATE 909d79e575SWolfgang Wegner #define CONFIG_CMD_ELF 919d79e575SWolfgang Wegner #define CONFIG_CMD_FLASH 929d79e575SWolfgang Wegner #define CONFIG_CMD_I2C 939d79e575SWolfgang Wegner #define CONFIG_CMD_MEMORY 949d79e575SWolfgang Wegner #define CONFIG_CMD_MISC 959d79e575SWolfgang Wegner #define CONFIG_CMD_XIMG 969d79e575SWolfgang Wegner #undef CONFIG_CMD_NET 979d79e575SWolfgang Wegner #undef CONFIG_CMD_NFS 989d79e575SWolfgang Wegner #if ENABLE_JFFS 999d79e575SWolfgang Wegner #define CONFIG_CMD_JFFS2 1009d79e575SWolfgang Wegner #endif 1019d79e575SWolfgang Wegner #define CONFIG_CMD_REGINFO 1029d79e575SWolfgang Wegner #define CONFIG_CMD_LOADS 1039d79e575SWolfgang Wegner #define CONFIG_CMD_LOADB 1049d79e575SWolfgang Wegner #define CONFIG_CMD_FPGA 1059d79e575SWolfgang Wegner #define CONFIG_CMDLINE_EDITING 1069d79e575SWolfgang Wegner 1079d79e575SWolfgang Wegner #define CONFIG_SYS_HUSH_PARSER 1089d79e575SWolfgang Wegner #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 1099d79e575SWolfgang Wegner 1109d79e575SWolfgang Wegner #define CONFIG_MCFRTC 1119d79e575SWolfgang Wegner #undef RTC_DEBUG 1129d79e575SWolfgang Wegner 1139d79e575SWolfgang Wegner /* Timer */ 1149d79e575SWolfgang Wegner #define CONFIG_MCFTMR 1159d79e575SWolfgang Wegner #undef CONFIG_MCFPIT 1169d79e575SWolfgang Wegner 1179d79e575SWolfgang Wegner /* I2C */ 1189d79e575SWolfgang Wegner #define CONFIG_FSL_I2C 1199d79e575SWolfgang Wegner #define CONFIG_HARD_I2C /* I2C with hw support */ 1209d79e575SWolfgang Wegner #undef CONFIG_SOFT_I2C /* I2C bit-banged */ 1219d79e575SWolfgang Wegner #define CONFIG_SYS_I2C_SPEED 80000 1229d79e575SWolfgang Wegner #define CONFIG_SYS_I2C_SLAVE 0x7F 1239d79e575SWolfgang Wegner #define CONFIG_SYS_I2C_OFFSET 0x58000 1249d79e575SWolfgang Wegner #define CONFIG_SYS_IMMR CONFIG_SYS_MBAR 1259d79e575SWolfgang Wegner 1269d79e575SWolfgang Wegner /* 1279d79e575SWolfgang Wegner * Defines processor clock - important for correct timings concerning serial 1289d79e575SWolfgang Wegner * interface etc. 1299d79e575SWolfgang Wegner * CONFIG_SYS_HZ gives unit: 1000 -> 1 Hz ^= 1000 ms 1309d79e575SWolfgang Wegner */ 1319d79e575SWolfgang Wegner 1329d79e575SWolfgang Wegner #define CONFIG_SYS_HZ 1000 1339d79e575SWolfgang Wegner #define CONFIG_SYS_CLK 80000000 1349d79e575SWolfgang Wegner #define CONFIG_SYS_CPU_CLK (CONFIG_SYS_CLK * 3) 1359d79e575SWolfgang Wegner #define CONFIG_SYS_SDRAM_SIZE 32 /* SDRAM size in MB */ 1369d79e575SWolfgang Wegner 1379d79e575SWolfgang Wegner #define CONFIG_SYS_CORE_SRAM_SIZE 0x8000 1389d79e575SWolfgang Wegner #define CONFIG_SYS_CORE_SRAM 0x80000000 1399d79e575SWolfgang Wegner 1409d79e575SWolfgang Wegner #define CONFIG_SYS_UNIFY_CACHE 1419d79e575SWolfgang Wegner 1429d79e575SWolfgang Wegner /* 1439d79e575SWolfgang Wegner * Define baudrate for UART1 (console output, tftp, ...) 1449d79e575SWolfgang Wegner * default value of CONFIG_BAUDRATE for Sentec board: 19200 baud 1459d79e575SWolfgang Wegner * CONFIG_SYS_BAUDRATE_TABLE defines values that can be selected 1469d79e575SWolfgang Wegner * in u-boot command interface 1479d79e575SWolfgang Wegner */ 1489d79e575SWolfgang Wegner 1499d79e575SWolfgang Wegner #define CONFIG_BAUDRATE 115200 1509d79e575SWolfgang Wegner #define CONFIG_SYS_BAUDRATE_TABLE { 9600 , 19200 , 38400 , 57600, 115200 } 1519d79e575SWolfgang Wegner 1529d79e575SWolfgang Wegner #define CONFIG_MCFUART 1539d79e575SWolfgang Wegner #define CONFIG_SYS_UART_PORT (2) 1549d79e575SWolfgang Wegner #define CONFIG_SYS_UART2_ALT3_GPIO 1559d79e575SWolfgang Wegner 1569d79e575SWolfgang Wegner /* 1579d79e575SWolfgang Wegner * Watchdog configuration; Watchdog is disabled for running from RAM 1589d79e575SWolfgang Wegner * and set to highest possible value else. Beware there is no check 1599d79e575SWolfgang Wegner * in the watchdog code to validate the timeout value set here! 1609d79e575SWolfgang Wegner */ 1619d79e575SWolfgang Wegner 1629d79e575SWolfgang Wegner #ifndef CONFIG_MONITOR_IS_IN_RAM 1639d79e575SWolfgang Wegner #define CONFIG_WATCHDOG 1649d79e575SWolfgang Wegner #define CONFIG_WATCHDOG_TIMEOUT 3355 /* timeout in milliseconds */ 1659d79e575SWolfgang Wegner #endif 1669d79e575SWolfgang Wegner 1679d79e575SWolfgang Wegner /* 1689d79e575SWolfgang Wegner * Configuration for environment 1699d79e575SWolfgang Wegner * Environment is located in the last sector of the flash 1709d79e575SWolfgang Wegner */ 1719d79e575SWolfgang Wegner 1729d79e575SWolfgang Wegner #ifndef CONFIG_MONITOR_IS_IN_RAM 1739d79e575SWolfgang Wegner #define CONFIG_ENV_OFFSET 0x1FF8000 1749d79e575SWolfgang Wegner #define CONFIG_ENV_SECT_SIZE 0x8000 1759d79e575SWolfgang Wegner #define CONFIG_ENV_IS_IN_FLASH 1 1769d79e575SWolfgang Wegner #else 1779d79e575SWolfgang Wegner /* 1789d79e575SWolfgang Wegner * environment in RAM - This is used to use a single PC-based application 1799d79e575SWolfgang Wegner * to load an image, load U-Boot, load an environment and then start U-Boot 1809d79e575SWolfgang Wegner * to execute the commands from the environment. Feedback is done via setting 1819d79e575SWolfgang Wegner * and reading memory locations. 1829d79e575SWolfgang Wegner */ 1839d79e575SWolfgang Wegner #define CONFIG_ENV_ADDR 0x40060000 1849d79e575SWolfgang Wegner #define CONFIG_ENV_SECT_SIZE 0x8000 1859d79e575SWolfgang Wegner #define CONFIG_ENV_IS_IN_FLASH 1 1869d79e575SWolfgang Wegner #endif 1879d79e575SWolfgang Wegner 1889d79e575SWolfgang Wegner /* here we put our FPGA configuration... */ 1899d79e575SWolfgang Wegner #define CONFIG_MISC_INIT_R 1 1909d79e575SWolfgang Wegner 1919d79e575SWolfgang Wegner /* Define user parameters that have to be customized most likely */ 1929d79e575SWolfgang Wegner 1939d79e575SWolfgang Wegner /* AUTOBOOT settings - booting images automatically by u-boot after power on */ 1949d79e575SWolfgang Wegner 1959d79e575SWolfgang Wegner /* 1969d79e575SWolfgang Wegner * used for autoboot, delay in seconds u-boot will wait before starting 1979d79e575SWolfgang Wegner * defined (auto-)boot command, setting to -1 disables delay, setting to 1989d79e575SWolfgang Wegner * 0 will too prevent access to u-boot command interface: u-boot then has 1999d79e575SWolfgang Wegner * to be reflashed 2009d79e575SWolfgang Wegner * beware - watchdog is not serviced during autoboot delay time! 2019d79e575SWolfgang Wegner */ 2029d79e575SWolfgang Wegner #ifdef CONFIG_MONITOR_IS_IN_RAM 2039d79e575SWolfgang Wegner #define CONFIG_BOOTDELAY 1 2049d79e575SWolfgang Wegner #else 2059d79e575SWolfgang Wegner #define CONFIG_BOOTDELAY 1 2069d79e575SWolfgang Wegner #endif 2079d79e575SWolfgang Wegner 2089d79e575SWolfgang Wegner /* 2099d79e575SWolfgang Wegner * The following settings will be contained in the environment block ; if you 2109d79e575SWolfgang Wegner * want to use a neutral environment all those settings can be manually set in 2119d79e575SWolfgang Wegner * u-boot: 'set' command 2129d79e575SWolfgang Wegner */ 2139d79e575SWolfgang Wegner 2149d79e575SWolfgang Wegner #define _QUOTEME(x) #x 2159d79e575SWolfgang Wegner #define QUOTEME(x) _QUOTEME(x) 2169d79e575SWolfgang Wegner 2179d79e575SWolfgang Wegner #define CONFIG_EXTRA_ENV_SETTINGS \ 2189d79e575SWolfgang Wegner "loaderversion=11\0" \ 2199d79e575SWolfgang Wegner "card_id="QUOTEME(ASTRO_ID)"\0" \ 2209d79e575SWolfgang Wegner "alterafile=0\0" \ 2219d79e575SWolfgang Wegner "xilinxfile=0\0" \ 2229d79e575SWolfgang Wegner "xilinxload=imxtract 0x540000 $xilinxfile 0x41000000&&"\ 2239d79e575SWolfgang Wegner "fpga load 0 0x41000000 $filesize\0" \ 2249d79e575SWolfgang Wegner "alteraload=imxtract 0x6c0000 $alterafile 0x41000000&&"\ 2259d79e575SWolfgang Wegner "fpga load 1 0x41000000 $filesize\0" \ 2269d79e575SWolfgang Wegner "env_default=1\0" \ 2279d79e575SWolfgang Wegner "env_check=if test $env_default -eq 1;"\ 2289d79e575SWolfgang Wegner " then setenv env_default 0;saveenv;fi\0" 2299d79e575SWolfgang Wegner 2309d79e575SWolfgang Wegner /* 2319d79e575SWolfgang Wegner * "update" is a non-standard command that has to be supplied 2329d79e575SWolfgang Wegner * by external update.c; This is not included in mainline because 2339d79e575SWolfgang Wegner * it needs non-blocking CFI routines. 2349d79e575SWolfgang Wegner */ 2359d79e575SWolfgang Wegner #ifdef CONFIG_MONITOR_IS_IN_RAM 2369d79e575SWolfgang Wegner #define CONFIG_BOOTCOMMAND "" /* no autoboot in this case */ 2379d79e575SWolfgang Wegner #else 2389d79e575SWolfgang Wegner #if CONFIG_ASTRO_V532 2399d79e575SWolfgang Wegner #define CONFIG_BOOTCOMMAND "protect off 0x80000 0x1ffffff;run env_check;"\ 2409d79e575SWolfgang Wegner "run xilinxload&&run alteraload&&bootm 0x80000;"\ 2419d79e575SWolfgang Wegner "update;reset" 2429d79e575SWolfgang Wegner #else 2439d79e575SWolfgang Wegner #define CONFIG_BOOTCOMMAND "protect off 0x80000 0x1ffffff;run env_check;"\ 2449d79e575SWolfgang Wegner "run xilinxload&&bootm 0x80000;update;reset" 2459d79e575SWolfgang Wegner #endif 2469d79e575SWolfgang Wegner #endif 2479d79e575SWolfgang Wegner 2489d79e575SWolfgang Wegner /* default bootargs that are considered during boot */ 2499d79e575SWolfgang Wegner #define CONFIG_BOOTARGS " console=ttyS2,115200 rootfstype=romfs"\ 2509d79e575SWolfgang Wegner " loaderversion=$loaderversion" 2519d79e575SWolfgang Wegner 2529d79e575SWolfgang Wegner #define CONFIG_SYS_PROMPT "URMEL > " 2539d79e575SWolfgang Wegner 2549d79e575SWolfgang Wegner /* default RAM address for user programs */ 2559d79e575SWolfgang Wegner #define CONFIG_SYS_LOAD_ADDR 0x20000 2569d79e575SWolfgang Wegner 2579d79e575SWolfgang Wegner #define CONFIG_SYS_LONGHELP 2589d79e575SWolfgang Wegner 2599d79e575SWolfgang Wegner #if (CONFIG_COMMANDS & CONFIG_CMD_KGDB) 2609d79e575SWolfgang Wegner #define CONFIG_SYS_CBSIZE 1024 2619d79e575SWolfgang Wegner #else 2629d79e575SWolfgang Wegner #define CONFIG_SYS_CBSIZE 256 2639d79e575SWolfgang Wegner #endif 2649d79e575SWolfgang Wegner #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) 2659d79e575SWolfgang Wegner #define CONFIG_SYS_MAXARGS 16 2669d79e575SWolfgang Wegner #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 2679d79e575SWolfgang Wegner 2689d79e575SWolfgang Wegner #define CONFIG_FPGA_COUNT 1 2699d79e575SWolfgang Wegner #define CONFIG_FPGA 2709d79e575SWolfgang Wegner #define CONFIG_FPGA_XILINX 2719d79e575SWolfgang Wegner #define CONFIG_FPGA_SPARTAN3 2729d79e575SWolfgang Wegner #define CONFIG_FPGA_ALTERA 2739d79e575SWolfgang Wegner #define CONFIG_FPGA_CYCLON2 2749d79e575SWolfgang Wegner #define CONFIG_SYS_FPGA_PROG_FEEDBACK 2759d79e575SWolfgang Wegner #define CONFIG_SYS_FPGA_WAIT 1000 2769d79e575SWolfgang Wegner 2779d79e575SWolfgang Wegner /* End of user parameters to be customized */ 2789d79e575SWolfgang Wegner 2799d79e575SWolfgang Wegner /* Defines memory range for test */ 2809d79e575SWolfgang Wegner 2819d79e575SWolfgang Wegner #define CONFIG_SYS_MEMTEST_START 0x40020000 2829d79e575SWolfgang Wegner #define CONFIG_SYS_MEMTEST_END 0x41ffffff 2839d79e575SWolfgang Wegner 2849d79e575SWolfgang Wegner /* 2859d79e575SWolfgang Wegner * Low Level Configuration Settings 2869d79e575SWolfgang Wegner * (address mappings, register initial values, etc.) 2879d79e575SWolfgang Wegner * You should know what you are doing if you make changes here. 2889d79e575SWolfgang Wegner */ 2899d79e575SWolfgang Wegner 2909d79e575SWolfgang Wegner /* Base register address */ 2919d79e575SWolfgang Wegner 2929d79e575SWolfgang Wegner #define CONFIG_SYS_MBAR 0xFC000000 /* Register Base Addrs */ 2939d79e575SWolfgang Wegner 2949d79e575SWolfgang Wegner /* System Conf. Reg. & System Protection Reg. */ 2959d79e575SWolfgang Wegner 2969d79e575SWolfgang Wegner #define CONFIG_SYS_SCR 0x0003; 2979d79e575SWolfgang Wegner #define CONFIG_SYS_SPR 0xffff; 2989d79e575SWolfgang Wegner 2999d79e575SWolfgang Wegner /* 3009d79e575SWolfgang Wegner * Definitions for initial stack pointer and data area (in internal SRAM) 3019d79e575SWolfgang Wegner */ 3029d79e575SWolfgang Wegner #define CONFIG_SYS_INIT_RAM_ADDR 0x80000000 3039d79e575SWolfgang Wegner #define CONFIG_SYS_INIT_RAM_END 0x8000 3049d79e575SWolfgang Wegner #define CONFIG_SYS_INIT_RAM_CTRL 0x221 3059d79e575SWolfgang Wegner #define CONFIG_SYS_GBL_DATA_SIZE 128 3069d79e575SWolfgang Wegner #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - \ 3079d79e575SWolfgang Wegner CONFIG_SYS_GBL_DATA_SIZE) 3089d79e575SWolfgang Wegner #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 3099d79e575SWolfgang Wegner 3109d79e575SWolfgang Wegner /* 3119d79e575SWolfgang Wegner * Start addresses for the final memory configuration 3129d79e575SWolfgang Wegner * (Set up by the startup code) 3139d79e575SWolfgang Wegner * for MCF5373, the allowable range is 0x40000000 to 0x7FF00000 3149d79e575SWolfgang Wegner */ 3159d79e575SWolfgang Wegner #define CONFIG_SYS_SDRAM_BASE 0x40000000 3169d79e575SWolfgang Wegner 3179d79e575SWolfgang Wegner /* 3189d79e575SWolfgang Wegner * Chipselect bank definitions 3199d79e575SWolfgang Wegner * 3209d79e575SWolfgang Wegner * CS0 - Flash 32MB (first 16MB) 3219d79e575SWolfgang Wegner * CS1 - Flash 32MB (second half) 3229d79e575SWolfgang Wegner * CS2 - FPGA 3239d79e575SWolfgang Wegner * CS3 - FPGA 3249d79e575SWolfgang Wegner * CS4 - unused 3259d79e575SWolfgang Wegner * CS5 - unused 3269d79e575SWolfgang Wegner */ 3279d79e575SWolfgang Wegner #define CONFIG_SYS_CS0_BASE 0 3289d79e575SWolfgang Wegner #define CONFIG_SYS_CS0_MASK 0x00ff0001 3299d79e575SWolfgang Wegner #define CONFIG_SYS_CS0_CTRL 0x00001fc0 3309d79e575SWolfgang Wegner 3319d79e575SWolfgang Wegner #define CONFIG_SYS_CS1_BASE 0x01000000 3329d79e575SWolfgang Wegner #define CONFIG_SYS_CS1_MASK 0x00ff0001 3339d79e575SWolfgang Wegner #define CONFIG_SYS_CS1_CTRL 0x00001fc0 3349d79e575SWolfgang Wegner 3359d79e575SWolfgang Wegner #define CONFIG_SYS_CS2_BASE 0x20000000 3369d79e575SWolfgang Wegner #define CONFIG_SYS_CS2_MASK 0x00ff0001 3379d79e575SWolfgang Wegner #define CONFIG_SYS_CS2_CTRL 0x0000fec0 3389d79e575SWolfgang Wegner 3399d79e575SWolfgang Wegner #define CONFIG_SYS_CS3_BASE 0x21000000 3409d79e575SWolfgang Wegner #define CONFIG_SYS_CS3_MASK 0x00ff0001 3419d79e575SWolfgang Wegner #define CONFIG_SYS_CS3_CTRL 0x0000fec0 3429d79e575SWolfgang Wegner 3439d79e575SWolfgang Wegner #define CONFIG_SYS_FLASH_BASE 0x00000000 3449d79e575SWolfgang Wegner 3459d79e575SWolfgang Wegner #ifdef CONFIG_MONITOR_IS_IN_RAM 3469d79e575SWolfgang Wegner #define CONFIG_SYS_MONITOR_BASE CONFIG_TEXT_BASE 3479d79e575SWolfgang Wegner #else 3489d79e575SWolfgang Wegner /* This is mainly used during relocation in start.S */ 3499d79e575SWolfgang Wegner #define CONFIG_SYS_MONITOR_BASE (CONFIG_SYS_FLASH_BASE + 0x400) 3509d79e575SWolfgang Wegner #endif 3519d79e575SWolfgang Wegner /* Reserve 256 kB for Monitor */ 3529d79e575SWolfgang Wegner #define CONFIG_SYS_MONITOR_LEN (256 << 10) 3539d79e575SWolfgang Wegner 3549d79e575SWolfgang Wegner #define CONFIG_SYS_BOOTPARAMS_LEN (64 * 1024) 3559d79e575SWolfgang Wegner /* Reserve 128 kB for malloc() */ 3569d79e575SWolfgang Wegner #define CONFIG_SYS_MALLOC_LEN (128 << 10) 3579d79e575SWolfgang Wegner 3589d79e575SWolfgang Wegner /* 3599d79e575SWolfgang Wegner * For booting Linux, the board info and command line data 3609d79e575SWolfgang Wegner * have to be in the first 8 MB of memory, since this is 3619d79e575SWolfgang Wegner * the maximum mapped by the Linux kernel during initialization ?? 3629d79e575SWolfgang Wegner */ 3639d79e575SWolfgang Wegner #define CONFIG_SYS_BOOTMAPSZ (CONFIG_SYS_SDRAM_BASE + \ 3649d79e575SWolfgang Wegner (CONFIG_SYS_SDRAM_SIZE << 20)) 3659d79e575SWolfgang Wegner 3669d79e575SWolfgang Wegner /* FLASH organization */ 3679d79e575SWolfgang Wegner #define CONFIG_SYS_MAX_FLASH_BANKS 1 3689d79e575SWolfgang Wegner #define CONFIG_SYS_MAX_FLASH_SECT 259 3699d79e575SWolfgang Wegner #define CONFIG_SYS_FLASH_ERASE_TOUT 1000 3709d79e575SWolfgang Wegner 3719d79e575SWolfgang Wegner #define CONFIG_SYS_FLASH_CFI 1 3729d79e575SWolfgang Wegner #define CONFIG_FLASH_CFI_DRIVER 1 3739d79e575SWolfgang Wegner #define CONFIG_SYS_FLASH_SIZE 0x2000000 3749d79e575SWolfgang Wegner #define CONFIG_SYS_FLASH_PROTECTION 1 3759d79e575SWolfgang Wegner #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 1 3769d79e575SWolfgang Wegner #define CONFIG_SYS_FLASH_CFI_NONBLOCK 1 3779d79e575SWolfgang Wegner 3789d79e575SWolfgang Wegner #if ENABLE_JFFS 3799d79e575SWolfgang Wegner /* JFFS Partition offset set */ 3809d79e575SWolfgang Wegner #define CONFIG_SYS_JFFS2_FIRST_BANK 0 3819d79e575SWolfgang Wegner #define CONFIG_SYS_JFFS2_NUM_BANKS 1 3829d79e575SWolfgang Wegner /* 512k reserved for u-boot */ 3839d79e575SWolfgang Wegner #define CONFIG_SYS_JFFS2_FIRST_SECTOR 0x40 3849d79e575SWolfgang Wegner #endif 3859d79e575SWolfgang Wegner 3869d79e575SWolfgang Wegner /* Cache Configuration */ 3879d79e575SWolfgang Wegner #define CONFIG_SYS_CACHELINE_SIZE 16 3889d79e575SWolfgang Wegner 389*dd9f054eSTsiChung Liew #define ICACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 390*dd9f054eSTsiChung Liew CONFIG_SYS_INIT_RAM_END - 8) 391*dd9f054eSTsiChung Liew #define DCACHE_STATUS (CONFIG_SYS_INIT_RAM_ADDR + \ 392*dd9f054eSTsiChung Liew CONFIG_SYS_INIT_RAM_END - 4) 393*dd9f054eSTsiChung Liew #define CONFIG_SYS_ICACHE_INV (CF_CACR_CINVA) 394*dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ACR0 (CONFIG_SYS_SDRAM_BASE | \ 395*dd9f054eSTsiChung Liew CF_ADDRMASK(CONFIG_SYS_SDRAM_SIZE) | \ 396*dd9f054eSTsiChung Liew CF_ACR_EN | CF_ACR_SM_ALL) 397*dd9f054eSTsiChung Liew #define CONFIG_SYS_CACHE_ICACR (CF_CACR_EC | CF_CACR_CINVA | \ 398*dd9f054eSTsiChung Liew CF_CACR_DCM_P) 399*dd9f054eSTsiChung Liew 4009d79e575SWolfgang Wegner #endif /* _CONFIG_ASTRO_MCF5373L_H */ 401