14e43b2e8SHeiko Schocher /* 24e43b2e8SHeiko Schocher * Copyright (C) Freescale Semiconductor, Inc. 2006. 34e43b2e8SHeiko Schocher * 44e43b2e8SHeiko Schocher * (C) Copyright 2010 54e43b2e8SHeiko Schocher * Heiko Schocher, DENX Software Engineering, hs@denx.de. 64e43b2e8SHeiko Schocher * 74e43b2e8SHeiko Schocher * See file CREDITS for list of people who contributed to this 84e43b2e8SHeiko Schocher * project. 94e43b2e8SHeiko Schocher * 104e43b2e8SHeiko Schocher * This program is free software; you can redistribute it and/or 114e43b2e8SHeiko Schocher * modify it under the terms of the GNU General Public License as 124e43b2e8SHeiko Schocher * published by the Free Software Foundation; either version 2 of 134e43b2e8SHeiko Schocher * the License, or (at your option) any later version. 144e43b2e8SHeiko Schocher * 154e43b2e8SHeiko Schocher * This program is distributed in the hope that it will be useful, 164e43b2e8SHeiko Schocher * but WITHOUT ANY WARRANTY; without even the implied warranty of 174e43b2e8SHeiko Schocher * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 184e43b2e8SHeiko Schocher * GNU General Public License for more details. 194e43b2e8SHeiko Schocher * 204e43b2e8SHeiko Schocher * You should have received a copy of the GNU General Public License 214e43b2e8SHeiko Schocher * along with this program; if not, write to the Free Software 224e43b2e8SHeiko Schocher * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 234e43b2e8SHeiko Schocher * MA 02111-1307 USA 244e43b2e8SHeiko Schocher */ 254e43b2e8SHeiko Schocher /* 264e43b2e8SHeiko Schocher * ve8313 board configuration file 274e43b2e8SHeiko Schocher */ 284e43b2e8SHeiko Schocher 294e43b2e8SHeiko Schocher #ifndef __CONFIG_H 304e43b2e8SHeiko Schocher #define __CONFIG_H 314e43b2e8SHeiko Schocher 324e43b2e8SHeiko Schocher /* 334e43b2e8SHeiko Schocher * High Level Configuration Options 344e43b2e8SHeiko Schocher */ 354e43b2e8SHeiko Schocher #define CONFIG_E300 1 364e43b2e8SHeiko Schocher #define CONFIG_MPC83xx 1 374e43b2e8SHeiko Schocher #define CONFIG_MPC831x 1 384e43b2e8SHeiko Schocher #define CONFIG_MPC8313 1 394e43b2e8SHeiko Schocher #define CONFIG_VE8313 1 404e43b2e8SHeiko Schocher 414e43b2e8SHeiko Schocher #define CONFIG_PCI 1 42a2243b84SKumar Gala #define CONFIG_FSL_ELBC 1 434e43b2e8SHeiko Schocher 444e43b2e8SHeiko Schocher #define CONFIG_BOARD_EARLY_INIT_F 1 454e43b2e8SHeiko Schocher 464e43b2e8SHeiko Schocher /* 474e43b2e8SHeiko Schocher * On-board devices 484e43b2e8SHeiko Schocher * 494e43b2e8SHeiko Schocher */ 504e43b2e8SHeiko Schocher #define CONFIG_83XX_CLKIN 32000000 /* in Hz */ 514e43b2e8SHeiko Schocher 524e43b2e8SHeiko Schocher #define CONFIG_SYS_CLK_FREQ CONFIG_83XX_CLKIN 534e43b2e8SHeiko Schocher 544e43b2e8SHeiko Schocher #define CONFIG_SYS_IMMR 0xE0000000 554e43b2e8SHeiko Schocher 564e43b2e8SHeiko Schocher #define CONFIG_SYS_MEMTEST_START 0x00001000 574e43b2e8SHeiko Schocher #define CONFIG_SYS_MEMTEST_END 0x07000000 584e43b2e8SHeiko Schocher 594e43b2e8SHeiko Schocher #define CONFIG_SYS_ACR_PIPE_DEP 3 /* Arbiter pipeline depth */ 604e43b2e8SHeiko Schocher #define CONFIG_SYS_ACR_RPTCNT 3 /* Arbiter repeat count */ 614e43b2e8SHeiko Schocher 624e43b2e8SHeiko Schocher /* 634e43b2e8SHeiko Schocher * Device configurations 644e43b2e8SHeiko Schocher */ 654e43b2e8SHeiko Schocher 664e43b2e8SHeiko Schocher /* 674e43b2e8SHeiko Schocher * DDR Setup 684e43b2e8SHeiko Schocher */ 694e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_BASE 0x00000000 /* DDR is system memory*/ 704e43b2e8SHeiko Schocher #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 714e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 724e43b2e8SHeiko Schocher 734e43b2e8SHeiko Schocher /* 744e43b2e8SHeiko Schocher * Manually set up DDR parameters, as this board does not 754e43b2e8SHeiko Schocher * have the SPD connected to I2C. 764e43b2e8SHeiko Schocher */ 774e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_SIZE 128 /* MB */ 784e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_CONFIG ( CSCONFIG_EN \ 794e43b2e8SHeiko Schocher | CSCONFIG_AP \ 804e43b2e8SHeiko Schocher | 0x00040000 /* TODO */ \ 814e43b2e8SHeiko Schocher | CSCONFIG_ROW_BIT_13 | CSCONFIG_COL_BIT_10 ) 824e43b2e8SHeiko Schocher /* 0x80840102 */ 834e43b2e8SHeiko Schocher 844e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_3 0x00000000 854e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_0 ( ( 0 << TIMING_CFG0_RWT_SHIFT ) \ 864e43b2e8SHeiko Schocher | ( 0 << TIMING_CFG0_WRT_SHIFT ) \ 874e43b2e8SHeiko Schocher | ( 3 << TIMING_CFG0_RRT_SHIFT ) \ 884e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG0_WWT_SHIFT ) \ 894e43b2e8SHeiko Schocher | ( 7 << TIMING_CFG0_ACT_PD_EXIT_SHIFT ) \ 904e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG0_PRE_PD_EXIT_SHIFT ) \ 914e43b2e8SHeiko Schocher | ( 8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT ) \ 924e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG0_MRS_CYC_SHIFT ) ) 934e43b2e8SHeiko Schocher /* 0x0e720802 */ 944e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_1 ( ( 2 << TIMING_CFG1_PRETOACT_SHIFT ) \ 954e43b2e8SHeiko Schocher | ( 6 << TIMING_CFG1_ACTTOPRE_SHIFT ) \ 964e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG1_ACTTORW_SHIFT ) \ 974e43b2e8SHeiko Schocher | ( 5 << TIMING_CFG1_CASLAT_SHIFT ) \ 984e43b2e8SHeiko Schocher | ( 6 << TIMING_CFG1_REFREC_SHIFT ) \ 994e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG1_WRREC_SHIFT ) \ 1004e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG1_ACTTOACT_SHIFT ) \ 1014e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG1_WRTORD_SHIFT ) ) 1024e43b2e8SHeiko Schocher /* 0x26256222 */ 1034e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_TIMING_2 ( ( 0 << TIMING_CFG2_ADD_LAT_SHIFT ) \ 1044e43b2e8SHeiko Schocher | ( 5 << TIMING_CFG2_CPO_SHIFT ) \ 1054e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG2_WR_LAT_DELAY_SHIFT ) \ 1064e43b2e8SHeiko Schocher | ( 1 << TIMING_CFG2_RD_TO_PRE_SHIFT ) \ 1074e43b2e8SHeiko Schocher | ( 2 << TIMING_CFG2_WR_DATA_DELAY_SHIFT ) \ 1084e43b2e8SHeiko Schocher | ( 3 << TIMING_CFG2_CKE_PLS_SHIFT ) \ 1094e43b2e8SHeiko Schocher | ( 7 << TIMING_CFG2_FOUR_ACT_SHIFT) ) 1104e43b2e8SHeiko Schocher /* 0x029028c7 */ 1114e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_INTERVAL ( ( 0x320 << SDRAM_INTERVAL_REFINT_SHIFT ) \ 1124e43b2e8SHeiko Schocher | ( 0x2000 << SDRAM_INTERVAL_BSTOPRE_SHIFT ) ) 1134e43b2e8SHeiko Schocher /* 0x03202000 */ 1144e43b2e8SHeiko Schocher #define CONFIG_SYS_SDRAM_CFG ( SDRAM_CFG_SREN \ 1154e43b2e8SHeiko Schocher | SDRAM_CFG_SDRAM_TYPE_DDR2 \ 1164e43b2e8SHeiko Schocher | SDRAM_CFG_32_BE ) 1174e43b2e8SHeiko Schocher /* 0x43080000 */ 1184e43b2e8SHeiko Schocher #define CONFIG_SYS_SDRAM_CFG2 0x00401000 1194e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_MODE ( ( 0x4440 << SDRAM_MODE_ESD_SHIFT ) \ 1204e43b2e8SHeiko Schocher | ( 0x0232 << SDRAM_MODE_SD_SHIFT ) ) 1214e43b2e8SHeiko Schocher /* 0x44400232 */ 1224e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_MODE_2 0x8000C000 1234e43b2e8SHeiko Schocher 1244e43b2e8SHeiko Schocher #define CONFIG_SYS_DDR_CLK_CNTL DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05 1254e43b2e8SHeiko Schocher /*0x02000000*/ 1264e43b2e8SHeiko Schocher #define CONFIG_SYS_DDRCDR_VALUE ( DDRCDR_EN \ 1274e43b2e8SHeiko Schocher | DDRCDR_PZ_NOMZ \ 1284e43b2e8SHeiko Schocher | DDRCDR_NZ_NOMZ \ 1294e43b2e8SHeiko Schocher | DDRCDR_M_ODR ) 1304e43b2e8SHeiko Schocher /* 0x73000002 */ 1314e43b2e8SHeiko Schocher 1324e43b2e8SHeiko Schocher /* 1334e43b2e8SHeiko Schocher * FLASH on the Local Bus 1344e43b2e8SHeiko Schocher */ 1354e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_CFI /* use the Common Flash Interface */ 1364e43b2e8SHeiko Schocher #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 1374e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_BASE 0xFE000000 1384e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_SIZE 32 /* size in MB */ 1394e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_EMPTY_INFO /* display empty sectors */ 1404e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE /* buffer up multiple bytes */ 1414e43b2e8SHeiko Schocher 1424e43b2e8SHeiko Schocher #define CONFIG_SYS_NOR_BR_PRELIM (CONFIG_SYS_FLASH_BASE | \ 1434e43b2e8SHeiko Schocher (2 << BR_PS_SHIFT) | /* 16 bit */ \ 1444e43b2e8SHeiko Schocher BR_V) /* valid */ 1454e43b2e8SHeiko Schocher #define CONFIG_SYS_NOR_OR_PRELIM (MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \ 1464e43b2e8SHeiko Schocher | OR_GPCM_CSNT \ 1474e43b2e8SHeiko Schocher | OR_GPCM_ACS_DIV4 \ 1484e43b2e8SHeiko Schocher | OR_GPCM_SCY_5 \ 1494e43b2e8SHeiko Schocher | OR_GPCM_TRLX \ 1504e43b2e8SHeiko Schocher | OR_GPCM_EAD) 1514e43b2e8SHeiko Schocher /* 0xfe000c55 */ 1524e43b2e8SHeiko Schocher 1534e43b2e8SHeiko Schocher #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE 1544e43b2e8SHeiko Schocher #define CONFIG_SYS_LBLAWAR0_PRELIM 0x80000018 /* 32 MB window size */ 1554e43b2e8SHeiko Schocher 1564e43b2e8SHeiko Schocher #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 1574e43b2e8SHeiko Schocher #define CONFIG_SYS_MAX_FLASH_SECT 256 /* sectors per dev */ 1584e43b2e8SHeiko Schocher 1594e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 1604e43b2e8SHeiko Schocher #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 1614e43b2e8SHeiko Schocher 162*14d0a02aSWolfgang Denk #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 1634e43b2e8SHeiko Schocher 1644e43b2e8SHeiko Schocher #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) 1654e43b2e8SHeiko Schocher #define CONFIG_SYS_RAMBOOT 1664e43b2e8SHeiko Schocher #endif 1674e43b2e8SHeiko Schocher 1684e43b2e8SHeiko Schocher #define CONFIG_SYS_INIT_RAM_LOCK 1 1694e43b2e8SHeiko Schocher #define CONFIG_SYS_INIT_RAM_ADDR 0xFD000000 /* Initial RAM address */ 1704e43b2e8SHeiko Schocher #define CONFIG_SYS_INIT_RAM_END 0x1000 /* End of used area in RAM*/ 1714e43b2e8SHeiko Schocher 1724e43b2e8SHeiko Schocher #define CONFIG_SYS_GBL_DATA_SIZE 0x100 /* num bytes initial data */ 1734e43b2e8SHeiko Schocher #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - \ 1744e43b2e8SHeiko Schocher CONFIG_SYS_GBL_DATA_SIZE) 1754e43b2e8SHeiko Schocher #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 1764e43b2e8SHeiko Schocher 1774e43b2e8SHeiko Schocher /* CONFIG_SYS_MONITOR_LEN must be a multiple of CONFIG_ENV_SECT_SIZE */ 1784e43b2e8SHeiko Schocher #define CONFIG_SYS_MONITOR_LEN (384 * 1024) 1794e43b2e8SHeiko Schocher #define CONFIG_SYS_MALLOC_LEN (512 * 1024) 1804e43b2e8SHeiko Schocher 1814e43b2e8SHeiko Schocher /* 1824e43b2e8SHeiko Schocher * Local Bus LCRR and LBCR regs 1834e43b2e8SHeiko Schocher */ 1844e43b2e8SHeiko Schocher #define CONFIG_SYS_LCRR_EADC LCRR_EADC_3 1854e43b2e8SHeiko Schocher #define CONFIG_SYS_LCRR_CLKDIV LCRR_CLKDIV_2 1864e43b2e8SHeiko Schocher 1874e43b2e8SHeiko Schocher #define CONFIG_SYS_LBC_LBCR 0x00040000 1884e43b2e8SHeiko Schocher 1894e43b2e8SHeiko Schocher #define CONFIG_SYS_LBC_MRTPR 0x20000000 1904e43b2e8SHeiko Schocher 1914e43b2e8SHeiko Schocher /* 1924e43b2e8SHeiko Schocher * NAND settings 1934e43b2e8SHeiko Schocher */ 1944e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_BASE 0x61000000 1954e43b2e8SHeiko Schocher #define CONFIG_SYS_MAX_NAND_DEVICE 1 1964e43b2e8SHeiko Schocher #define CONFIG_MTD_NAND_VERIFY_WRITE 1974e43b2e8SHeiko Schocher #define CONFIG_CMD_NAND 1 1984e43b2e8SHeiko Schocher #define CONFIG_NAND_FSL_ELBC 1 1994e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_BLOCK_SIZE 16384 2004e43b2e8SHeiko Schocher 2014e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_BR_PRELIM ( CONFIG_SYS_NAND_BASE \ 2024e43b2e8SHeiko Schocher | BR_PS_8 \ 2034e43b2e8SHeiko Schocher | BR_DECC_CHK_GEN \ 2044e43b2e8SHeiko Schocher | BR_MS_FCM \ 2054e43b2e8SHeiko Schocher | BR_V ) /* valid */ 2064e43b2e8SHeiko Schocher /* 0x61000c21 */ 2074e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_OR_PRELIM (0xffff8000 \ 2084e43b2e8SHeiko Schocher | OR_FCM_BCTLD \ 2094e43b2e8SHeiko Schocher | OR_FCM_CHT \ 2104e43b2e8SHeiko Schocher | OR_FCM_SCY_2 \ 2114e43b2e8SHeiko Schocher | OR_FCM_RST \ 2124e43b2e8SHeiko Schocher | OR_FCM_TRLX) 2134e43b2e8SHeiko Schocher /* 0xffff90ac */ 2144e43b2e8SHeiko Schocher 2154e43b2e8SHeiko Schocher #define CONFIG_SYS_BR0_PRELIM CONFIG_SYS_NOR_BR_PRELIM 2164e43b2e8SHeiko Schocher #define CONFIG_SYS_OR0_PRELIM CONFIG_SYS_NOR_OR_PRELIM 2174e43b2e8SHeiko Schocher #define CONFIG_SYS_BR1_PRELIM CONFIG_SYS_NAND_BR_PRELIM 2184e43b2e8SHeiko Schocher #define CONFIG_SYS_OR1_PRELIM CONFIG_SYS_NAND_OR_PRELIM 2194e43b2e8SHeiko Schocher 2204e43b2e8SHeiko Schocher #define CONFIG_SYS_LBLAWBAR1_PRELIM CONFIG_SYS_NAND_BASE 2214e43b2e8SHeiko Schocher #define CONFIG_SYS_LBLAWAR1_PRELIM 0x8000000E /* 32KB */ 2224e43b2e8SHeiko Schocher 2234e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_LBLAWBAR_PRELIM CONFIG_SYS_LBLAWBAR1_PRELIM 2244e43b2e8SHeiko Schocher #define CONFIG_SYS_NAND_LBLAWAR_PRELIM CONFIG_SYS_LBLAWAR1_PRELIM 2254e43b2e8SHeiko Schocher 2264e43b2e8SHeiko Schocher /* CS2 NvRAM */ 2274e43b2e8SHeiko Schocher #define CONFIG_SYS_BR2_PRELIM (0x60000000 \ 2284e43b2e8SHeiko Schocher | BR_PS_8 \ 2294e43b2e8SHeiko Schocher | BR_V) 2304e43b2e8SHeiko Schocher /* 0x60000801 */ 2314e43b2e8SHeiko Schocher #define CONFIG_SYS_OR2_PRELIM (0xfffe0000 \ 2324e43b2e8SHeiko Schocher | OR_GPCM_CSNT \ 2334e43b2e8SHeiko Schocher | OR_GPCM_XACS \ 2344e43b2e8SHeiko Schocher | OR_GPCM_SCY_3 \ 2354e43b2e8SHeiko Schocher | OR_GPCM_TRLX \ 2364e43b2e8SHeiko Schocher | OR_GPCM_EHTR \ 2374e43b2e8SHeiko Schocher | OR_GPCM_EAD) 2384e43b2e8SHeiko Schocher /* 0xfffe0937 */ 2394e43b2e8SHeiko Schocher /* local bus read write buffer mapping SRAM@0x64000000 */ 2404e43b2e8SHeiko Schocher #define CONFIG_SYS_BR3_PRELIM (0x62000000 \ 2414e43b2e8SHeiko Schocher | BR_PS_16 \ 2424e43b2e8SHeiko Schocher | BR_V) 2434e43b2e8SHeiko Schocher /* 0x62001001 */ 2444e43b2e8SHeiko Schocher 2454e43b2e8SHeiko Schocher #define CONFIG_SYS_OR3_PRELIM (0xfe000000 \ 2464e43b2e8SHeiko Schocher | OR_GPCM_CSNT \ 2474e43b2e8SHeiko Schocher | OR_GPCM_XACS \ 2484e43b2e8SHeiko Schocher | OR_GPCM_SCY_15 \ 2494e43b2e8SHeiko Schocher | OR_GPCM_TRLX \ 2504e43b2e8SHeiko Schocher | OR_GPCM_EHTR \ 2514e43b2e8SHeiko Schocher | OR_GPCM_EAD) 2524e43b2e8SHeiko Schocher /* 0xfe0009f7 */ 2534e43b2e8SHeiko Schocher 2544e43b2e8SHeiko Schocher /* pass open firmware flat tree */ 2554e43b2e8SHeiko Schocher #define CONFIG_OF_LIBFDT 1 2564e43b2e8SHeiko Schocher #define CONFIG_OF_BOARD_SETUP 1 2574e43b2e8SHeiko Schocher #define CONFIG_OF_STDOUT_VIA_ALIAS 1 2584e43b2e8SHeiko Schocher 2594e43b2e8SHeiko Schocher /* 2604e43b2e8SHeiko Schocher * Serial Port 2614e43b2e8SHeiko Schocher */ 2624e43b2e8SHeiko Schocher #define CONFIG_CONS_INDEX 1 2634e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550 2644e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_SERIAL 2654e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_REG_SIZE 1 2664e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 2674e43b2e8SHeiko Schocher 2684e43b2e8SHeiko Schocher #define CONFIG_SYS_BAUDRATE_TABLE \ 2694e43b2e8SHeiko Schocher {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 2704e43b2e8SHeiko Schocher 2714e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500) 2724e43b2e8SHeiko Schocher #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600) 2734e43b2e8SHeiko Schocher 2744e43b2e8SHeiko Schocher /* Use the HUSH parser */ 2754e43b2e8SHeiko Schocher #define CONFIG_SYS_HUSH_PARSER 2764e43b2e8SHeiko Schocher #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 2774e43b2e8SHeiko Schocher 2784e43b2e8SHeiko Schocher #if defined(CONFIG_PCI) 2794e43b2e8SHeiko Schocher /* 2804e43b2e8SHeiko Schocher * General PCI 2814e43b2e8SHeiko Schocher * Addresses are mapped 1-1. 2824e43b2e8SHeiko Schocher */ 2834e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MEM_BASE 0x80000000 2844e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MEM_PHYS CONFIG_SYS_PCI1_MEM_BASE 2854e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MEM_SIZE 0x10000000 /* 256M */ 2864e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MMIO_BASE 0x90000000 2874e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MMIO_PHYS CONFIG_SYS_PCI1_MMIO_BASE 2884e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_MMIO_SIZE 0x10000000 /* 256M */ 2894e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_IO_BASE 0x00000000 2904e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_IO_PHYS 0xE2000000 2914e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI1_IO_SIZE 0x00100000 /* 1M */ 2924e43b2e8SHeiko Schocher 2934e43b2e8SHeiko Schocher #define CONFIG_PCI_PNP /* do pci plug-and-play */ 2944e43b2e8SHeiko Schocher #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957 /* Freescale */ 2954e43b2e8SHeiko Schocher #endif 2964e43b2e8SHeiko Schocher 2974e43b2e8SHeiko Schocher /* 2984e43b2e8SHeiko Schocher * TSEC 2994e43b2e8SHeiko Schocher */ 3004e43b2e8SHeiko Schocher #define CONFIG_TSEC_ENET /* TSEC ethernet support */ 3014e43b2e8SHeiko Schocher 3024e43b2e8SHeiko Schocher #define CONFIG_NET_MULTI 3034e43b2e8SHeiko Schocher 3044e43b2e8SHeiko Schocher #define CONFIG_TSEC1 3054e43b2e8SHeiko Schocher #ifdef CONFIG_TSEC1 3064e43b2e8SHeiko Schocher #define CONFIG_HAS_ETH0 3074e43b2e8SHeiko Schocher #define CONFIG_TSEC1_NAME "TSEC1" 3084e43b2e8SHeiko Schocher #define CONFIG_SYS_TSEC1_OFFSET 0x24000 3094e43b2e8SHeiko Schocher #define TSEC1_PHY_ADDR 0x01 3104e43b2e8SHeiko Schocher #define TSEC1_FLAGS 0 3114e43b2e8SHeiko Schocher #define TSEC1_PHYIDX 0 3124e43b2e8SHeiko Schocher #endif 3134e43b2e8SHeiko Schocher 3144e43b2e8SHeiko Schocher /* Options are: TSEC[0-1] */ 3154e43b2e8SHeiko Schocher #define CONFIG_ETHPRIME "TSEC1" 3164e43b2e8SHeiko Schocher 3174e43b2e8SHeiko Schocher /* 3184e43b2e8SHeiko Schocher * Environment 3194e43b2e8SHeiko Schocher */ 3204e43b2e8SHeiko Schocher #define CONFIG_ENV_IS_IN_FLASH 1 3214e43b2e8SHeiko Schocher #define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + \ 3224e43b2e8SHeiko Schocher CONFIG_SYS_MONITOR_LEN) 3234e43b2e8SHeiko Schocher #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K(one sector) for env */ 3244e43b2e8SHeiko Schocher #define CONFIG_ENV_SIZE 0x4000 3254e43b2e8SHeiko Schocher /* Address and size of Redundant Environment Sector */ 3264e43b2e8SHeiko Schocher #define CONFIG_ENV_OFFSET_REDUND (CONFIG_ENV_OFFSET + \ 3274e43b2e8SHeiko Schocher CONFIG_ENV_SECT_SIZE) 3284e43b2e8SHeiko Schocher #define CONFIG_ENV_SIZE_REDUND (CONFIG_ENV_SIZE) 3294e43b2e8SHeiko Schocher 3304e43b2e8SHeiko Schocher #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ 3314e43b2e8SHeiko Schocher #define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */ 3324e43b2e8SHeiko Schocher 3334e43b2e8SHeiko Schocher /* 3344e43b2e8SHeiko Schocher * BOOTP options 3354e43b2e8SHeiko Schocher */ 3364e43b2e8SHeiko Schocher #define CONFIG_BOOTP_BOOTFILESIZE 3374e43b2e8SHeiko Schocher #define CONFIG_BOOTP_BOOTPATH 3384e43b2e8SHeiko Schocher #define CONFIG_BOOTP_GATEWAY 3394e43b2e8SHeiko Schocher #define CONFIG_BOOTP_HOSTNAME 3404e43b2e8SHeiko Schocher 3414e43b2e8SHeiko Schocher /* 3424e43b2e8SHeiko Schocher * Command line configuration. 3434e43b2e8SHeiko Schocher */ 3444e43b2e8SHeiko Schocher #include <config_cmd_default.h> 3454e43b2e8SHeiko Schocher 3464e43b2e8SHeiko Schocher #define CONFIG_CMD_DHCP 3474e43b2e8SHeiko Schocher #define CONFIG_CMD_MII 3484e43b2e8SHeiko Schocher #define CONFIG_CMD_PING 3494e43b2e8SHeiko Schocher #define CONFIG_CMD_PCI 3504e43b2e8SHeiko Schocher 3514e43b2e8SHeiko Schocher #define CONFIG_CMDLINE_EDITING 1 3524e43b2e8SHeiko Schocher #define CONFIG_AUTO_COMPLETE /* add autocompletion support */ 3534e43b2e8SHeiko Schocher 3544e43b2e8SHeiko Schocher /* 3554e43b2e8SHeiko Schocher * Miscellaneous configurable options 3564e43b2e8SHeiko Schocher */ 3574e43b2e8SHeiko Schocher #define CONFIG_SYS_LONGHELP /* undef to save memory */ 3584e43b2e8SHeiko Schocher #define CONFIG_SYS_LOAD_ADDR 0x100000 /* default load address */ 3594e43b2e8SHeiko Schocher #define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */ 3604e43b2e8SHeiko Schocher #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 3614e43b2e8SHeiko Schocher 3624e43b2e8SHeiko Schocher #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) 3634e43b2e8SHeiko Schocher #define CONFIG_SYS_MAXARGS 16 /* max number of cmd args */ 3644e43b2e8SHeiko Schocher #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot arg Buffer size */ 3654e43b2e8SHeiko Schocher #define CONFIG_SYS_HZ 1000 /* 1ms ticks */ 3664e43b2e8SHeiko Schocher 3674e43b2e8SHeiko Schocher /* 3684e43b2e8SHeiko Schocher * For booting Linux, the board info and command line data 3699f530d59SIra W. Snyder * have to be in the first 256 MB of memory, since this is 3704e43b2e8SHeiko Schocher * the maximum mapped by the Linux kernel during initialization. 3714e43b2e8SHeiko Schocher */ 3729f530d59SIra W. Snyder #define CONFIG_SYS_BOOTMAPSZ (256 << 20) /* Initial Memory map for Linux*/ 3734e43b2e8SHeiko Schocher 3744e43b2e8SHeiko Schocher /* 0x64050000 */ 3754e43b2e8SHeiko Schocher #define CONFIG_SYS_HRCW_LOW (\ 3764e43b2e8SHeiko Schocher 0x20000000 /* reserved, must be set */ |\ 3774e43b2e8SHeiko Schocher HRCWL_DDRCM |\ 3784e43b2e8SHeiko Schocher HRCWL_CSB_TO_CLKIN_4X1 | \ 3794e43b2e8SHeiko Schocher HRCWL_CORE_TO_CSB_2_5X1) 3804e43b2e8SHeiko Schocher 3814e43b2e8SHeiko Schocher /* 0xa0600004 */ 3824e43b2e8SHeiko Schocher #define CONFIG_SYS_HRCW_HIGH (HRCWH_PCI_HOST | \ 3834e43b2e8SHeiko Schocher HRCWH_PCI_ARBITER_ENABLE | \ 3844e43b2e8SHeiko Schocher HRCWH_CORE_ENABLE | \ 3854e43b2e8SHeiko Schocher HRCWH_FROM_0X00000100 | \ 3864e43b2e8SHeiko Schocher HRCWH_BOOTSEQ_DISABLE |\ 3874e43b2e8SHeiko Schocher HRCWH_SW_WATCHDOG_DISABLE |\ 3884e43b2e8SHeiko Schocher HRCWH_ROM_LOC_LOCAL_16BIT | \ 3894e43b2e8SHeiko Schocher HRCWH_TSEC1M_IN_MII | \ 3904e43b2e8SHeiko Schocher HRCWH_BIG_ENDIAN | \ 3914e43b2e8SHeiko Schocher HRCWH_LALE_EARLY) 3924e43b2e8SHeiko Schocher 3934e43b2e8SHeiko Schocher /* System IO Config */ 3944e43b2e8SHeiko Schocher #define CONFIG_SYS_SICRH (0x01000000 | \ 3954e43b2e8SHeiko Schocher SICRH_ETSEC2_B | \ 3964e43b2e8SHeiko Schocher SICRH_ETSEC2_C | \ 3974e43b2e8SHeiko Schocher SICRH_ETSEC2_D | \ 3984e43b2e8SHeiko Schocher SICRH_ETSEC2_E | \ 3994e43b2e8SHeiko Schocher SICRH_ETSEC2_F | \ 4004e43b2e8SHeiko Schocher SICRH_ETSEC2_G | \ 4014e43b2e8SHeiko Schocher SICRH_TSOBI1 | \ 4024e43b2e8SHeiko Schocher SICRH_TSOBI2) 4034e43b2e8SHeiko Schocher /* 0x010fff03 */ 4044e43b2e8SHeiko Schocher #define CONFIG_SYS_SICRL (SICRL_LBC | \ 4054e43b2e8SHeiko Schocher SICRL_SPI_A | \ 4064e43b2e8SHeiko Schocher SICRL_SPI_B | \ 4074e43b2e8SHeiko Schocher SICRL_SPI_C | \ 4084e43b2e8SHeiko Schocher SICRL_SPI_D | \ 4094e43b2e8SHeiko Schocher SICRL_ETSEC2_A) 4104e43b2e8SHeiko Schocher /* 0x33fc0003) */ 4114e43b2e8SHeiko Schocher 4124e43b2e8SHeiko Schocher #define CONFIG_SYS_HID0_INIT 0x000000000 4134e43b2e8SHeiko Schocher #define CONFIG_SYS_HID0_FINAL (HID0_ENABLE_MACHINE_CHECK | \ 4144e43b2e8SHeiko Schocher HID0_ENABLE_INSTRUCTION_CACHE) 4154e43b2e8SHeiko Schocher 4164e43b2e8SHeiko Schocher #define CONFIG_SYS_HID2 HID2_HBE 4174e43b2e8SHeiko Schocher 4184e43b2e8SHeiko Schocher #define CONFIG_HIGH_BATS 1 /* High BATs supported */ 4194e43b2e8SHeiko Schocher 4204e43b2e8SHeiko Schocher /* DDR @ 0x00000000 */ 4214e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_BASE | BATL_PP_10) 4224e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_BASE | BATU_BL_256M | \ 4234e43b2e8SHeiko Schocher BATU_VS | BATU_VP) 4244e43b2e8SHeiko Schocher 4254e43b2e8SHeiko Schocher #if defined(CONFIG_PCI) 4264e43b2e8SHeiko Schocher /* PCI @ 0x80000000 */ 4274e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT1L (CONFIG_SYS_PCI1_MEM_BASE | BATL_PP_10) 4284e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT1U (CONFIG_SYS_PCI1_MEM_BASE | BATU_BL_256M | \ 4294e43b2e8SHeiko Schocher BATU_VS | BATU_VP) 4304e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT2L (CONFIG_SYS_PCI1_MMIO_BASE | BATL_PP_10 | \ 4314e43b2e8SHeiko Schocher BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 4324e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT2U (CONFIG_SYS_PCI1_MMIO_BASE | BATU_BL_256M | \ 4334e43b2e8SHeiko Schocher BATU_VS | BATU_VP) 4344e43b2e8SHeiko Schocher #else 4354e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT1L (0) 4364e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT1U (0) 4374e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT2L (0) 4384e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT2U (0) 4394e43b2e8SHeiko Schocher #endif 4404e43b2e8SHeiko Schocher 4414e43b2e8SHeiko Schocher /* PCI2 not supported on 8313 */ 4424e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT3L (0) 4434e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT3U (0) 4444e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT4L (0) 4454e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT4U (0) 4464e43b2e8SHeiko Schocher 4474e43b2e8SHeiko Schocher /* IMMRBAR @ 0xE0000000, PCI IO @ 0xE2000000 & BCSR @ 0xE2400000 */ 4484e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT5L (CONFIG_SYS_IMMR | BATL_PP_10 | \ 4494e43b2e8SHeiko Schocher BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 4504e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT5U (CONFIG_SYS_IMMR | BATU_BL_256M | BATU_VS | \ 4514e43b2e8SHeiko Schocher BATU_VP) 4524e43b2e8SHeiko Schocher 4534e43b2e8SHeiko Schocher /* stack in DCACHE 0xFDF00000 & FLASH @ 0xFE000000 */ 4544e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT6L (0xF0000000 | BATL_PP_10 | BATL_GUARDEDSTORAGE) 4554e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT6U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP) 4564e43b2e8SHeiko Schocher 4574e43b2e8SHeiko Schocher /* FPGA, SRAM, NAND @ 0x60000000 */ 4584e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT7L (0x60000000 | BATL_PP_10 | BATL_GUARDEDSTORAGE) 4594e43b2e8SHeiko Schocher #define CONFIG_SYS_IBAT7U (0x60000000 | BATU_BL_256M | BATU_VS | BATU_VP) 4604e43b2e8SHeiko Schocher 4614e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 4624e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 4634e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 4644e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 4654e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 4664e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 4674e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 4684e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 4694e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT4L CONFIG_SYS_IBAT4L 4704e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 4714e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 4724e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 4734e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 4744e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 4754e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 4764e43b2e8SHeiko Schocher #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 4774e43b2e8SHeiko Schocher 4784e43b2e8SHeiko Schocher /* 4794e43b2e8SHeiko Schocher * Internal Definitions 4804e43b2e8SHeiko Schocher * 4814e43b2e8SHeiko Schocher * Boot Flags 4824e43b2e8SHeiko Schocher */ 4834e43b2e8SHeiko Schocher #define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */ 4844e43b2e8SHeiko Schocher #define BOOTFLAG_WARM 0x02 /* Software reboot */ 4854e43b2e8SHeiko Schocher 4864e43b2e8SHeiko Schocher #define CONFIG_NETDEV eth0 4874e43b2e8SHeiko Schocher 4884e43b2e8SHeiko Schocher #define CONFIG_HOSTNAME ve8313 4894e43b2e8SHeiko Schocher #define CONFIG_UBOOTPATH ve8313/u-boot.bin 4904e43b2e8SHeiko Schocher 4914e43b2e8SHeiko Schocher #define CONFIG_BOOTDELAY 6 /* -1 disables auto-boot */ 4924e43b2e8SHeiko Schocher #define CONFIG_BAUDRATE 115200 4934e43b2e8SHeiko Schocher 4944e43b2e8SHeiko Schocher #define XMK_STR(x) #x 4954e43b2e8SHeiko Schocher #define MK_STR(x) XMK_STR(x) 4964e43b2e8SHeiko Schocher 4974e43b2e8SHeiko Schocher #define CONFIG_EXTRA_ENV_SETTINGS \ 4984e43b2e8SHeiko Schocher "netdev=" MK_STR(CONFIG_NETDEV) "\0" \ 4994e43b2e8SHeiko Schocher "ethprime=" MK_STR(CONFIG_TSEC1_NAME) "\0" \ 5004e43b2e8SHeiko Schocher "u-boot=" MK_STR(CONFIG_UBOOTPATH) "\0" \ 5014e43b2e8SHeiko Schocher "u-boot_addr_r=100000\0" \ 5024e43b2e8SHeiko Schocher "load=tftp ${u-boot_addr_r} ${u-boot}\0" \ 5034e43b2e8SHeiko Schocher "update=protect off " MK_STR(CONFIG_SYS_FLASH_BASE) " +${filesize};" \ 5044e43b2e8SHeiko Schocher "erase " MK_STR(CONFIG_SYS_FLASH_BASE) " +${filesize};" \ 5054e43b2e8SHeiko Schocher "cp.b ${u-boot_addr_r} " MK_STR(CONFIG_SYS_FLASH_BASE) \ 5064e43b2e8SHeiko Schocher " ${filesize};" \ 5074e43b2e8SHeiko Schocher "protect on " MK_STR(CONFIG_SYS_FLASH_BASE) " +${filesize}\0" \ 5084e43b2e8SHeiko Schocher 5094e43b2e8SHeiko Schocher #undef MK_STR 5104e43b2e8SHeiko Schocher #undef XMK_STR 5114e43b2e8SHeiko Schocher 5124e43b2e8SHeiko Schocher #endif /* __CONFIG_H */ 513