15e918a98SKim Phillips /* 25e918a98SKim Phillips * Copyright (C) 2007 Freescale Semiconductor, Inc. 35e918a98SKim Phillips * Kevin Lam <kevin.lam@freescale.com> 45e918a98SKim Phillips * Joe D'Abbraccio <joe.d'abbraccio@freescale.com> 55e918a98SKim Phillips * 65e918a98SKim Phillips * This program is free software; you can redistribute it and/or 75e918a98SKim Phillips * modify it under the terms of the GNU General Public License as 85e918a98SKim Phillips * published by the Free Software Foundation; either version 2 of 95e918a98SKim Phillips * the License, or (at your option) any later version. 105e918a98SKim Phillips * 115e918a98SKim Phillips * This program is distributed in the hope that it will be useful, 125e918a98SKim Phillips * but WITHOUT ANY WARRANTY; without even the implied warranty of 135e918a98SKim Phillips * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 145e918a98SKim Phillips * GNU General Public License for more details. 155e918a98SKim Phillips * 165e918a98SKim Phillips * You should have received a copy of the GNU General Public License 175e918a98SKim Phillips * along with this program; if not, write to the Free Software 185e918a98SKim Phillips * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 195e918a98SKim Phillips * MA 02111-1307 USA 205e918a98SKim Phillips */ 215e918a98SKim Phillips 225e918a98SKim Phillips #ifndef __CONFIG_H 235e918a98SKim Phillips #define __CONFIG_H 245e918a98SKim Phillips 255e918a98SKim Phillips /* 265e918a98SKim Phillips * High Level Configuration Options 275e918a98SKim Phillips */ 285e918a98SKim Phillips #define CONFIG_E300 1 /* E300 family */ 292c7920afSPeter Tyser #define CONFIG_MPC83xx 1 /* MPC83xx family */ 302c7920afSPeter Tyser #define CONFIG_MPC837x 1 /* MPC837x CPU specific */ 315e918a98SKim Phillips #define CONFIG_MPC837XERDB 1 325e918a98SKim Phillips 335e918a98SKim Phillips #define CONFIG_PCI 1 345e918a98SKim Phillips 352bd7460eSAnton Vorontsov #define CONFIG_BOARD_EARLY_INIT_F 3689c7784eSTimur Tabi #define CONFIG_MISC_INIT_R 37c9646ed7SAnton Vorontsov #define CONFIG_HWCONFIG 3889c7784eSTimur Tabi 3989c7784eSTimur Tabi /* 4089c7784eSTimur Tabi * On-board devices 4189c7784eSTimur Tabi */ 4289c7784eSTimur Tabi #define CONFIG_TSEC_ENET /* TSEC Ethernet support */ 4389c7784eSTimur Tabi #define CONFIG_VSC7385_ENET 4489c7784eSTimur Tabi 455e918a98SKim Phillips /* 465e918a98SKim Phillips * System Clock Setup 475e918a98SKim Phillips */ 485e918a98SKim Phillips #ifdef CONFIG_PCISLAVE 495e918a98SKim Phillips #define CONFIG_83XX_PCICLK 66666667 /* in HZ */ 505e918a98SKim Phillips #else 515e918a98SKim Phillips #define CONFIG_83XX_CLKIN 66666667 /* in Hz */ 52be9b56dfSKim Phillips #define CONFIG_PCIE 535e918a98SKim Phillips #endif 545e918a98SKim Phillips 555e918a98SKim Phillips #ifndef CONFIG_SYS_CLK_FREQ 565e918a98SKim Phillips #define CONFIG_SYS_CLK_FREQ CONFIG_83XX_CLKIN 575e918a98SKim Phillips #endif 585e918a98SKim Phillips 595e918a98SKim Phillips /* 605e918a98SKim Phillips * Hardware Reset Configuration Word 615e918a98SKim Phillips */ 626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_LOW (\ 635e918a98SKim Phillips HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ 645e918a98SKim Phillips HRCWL_DDR_TO_SCB_CLK_1X1 |\ 655e918a98SKim Phillips HRCWL_SVCOD_DIV_2 |\ 665e918a98SKim Phillips HRCWL_CSB_TO_CLKIN_5X1 |\ 675e918a98SKim Phillips HRCWL_CORE_TO_CSB_2X1) 685e918a98SKim Phillips 695e918a98SKim Phillips #ifdef CONFIG_PCISLAVE 706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 715e918a98SKim Phillips HRCWH_PCI_AGENT |\ 725e918a98SKim Phillips HRCWH_PCI1_ARBITER_DISABLE |\ 735e918a98SKim Phillips HRCWH_CORE_ENABLE |\ 745e918a98SKim Phillips HRCWH_FROM_0XFFF00100 |\ 755e918a98SKim Phillips HRCWH_BOOTSEQ_DISABLE |\ 765e918a98SKim Phillips HRCWH_SW_WATCHDOG_DISABLE |\ 775e918a98SKim Phillips HRCWH_ROM_LOC_LOCAL_16BIT |\ 785e918a98SKim Phillips HRCWH_RL_EXT_LEGACY |\ 795e918a98SKim Phillips HRCWH_TSEC1M_IN_RGMII |\ 805e918a98SKim Phillips HRCWH_TSEC2M_IN_RGMII |\ 815e918a98SKim Phillips HRCWH_BIG_ENDIAN |\ 825e918a98SKim Phillips HRCWH_LDP_CLEAR) 835e918a98SKim Phillips #else 846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 855e918a98SKim Phillips HRCWH_PCI_HOST |\ 865e918a98SKim Phillips HRCWH_PCI1_ARBITER_ENABLE |\ 875e918a98SKim Phillips HRCWH_CORE_ENABLE |\ 885e918a98SKim Phillips HRCWH_FROM_0X00000100 |\ 895e918a98SKim Phillips HRCWH_BOOTSEQ_DISABLE |\ 905e918a98SKim Phillips HRCWH_SW_WATCHDOG_DISABLE |\ 915e918a98SKim Phillips HRCWH_ROM_LOC_LOCAL_16BIT |\ 925e918a98SKim Phillips HRCWH_RL_EXT_LEGACY |\ 935e918a98SKim Phillips HRCWH_TSEC1M_IN_RGMII |\ 945e918a98SKim Phillips HRCWH_TSEC2M_IN_RGMII |\ 955e918a98SKim Phillips HRCWH_BIG_ENDIAN |\ 965e918a98SKim Phillips HRCWH_LDP_CLEAR) 975e918a98SKim Phillips #endif 985e918a98SKim Phillips 996d0f6bcfSJean-Christophe PLAGNIOL-VILLARD /* System performance - define the value i.e. CONFIG_SYS_XXX 1005e918a98SKim Phillips */ 1015e918a98SKim Phillips 1025e918a98SKim Phillips /* Arbiter Configuration Register */ 1036d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ACR_PIPE_DEP 3 /* Arbiter pipeline depth (0-3) */ 1046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ACR_RPTCNT 3 /* Arbiter repeat count (0-7) */ 1055e918a98SKim Phillips 1065e918a98SKim Phillips /* System Priority Control Regsiter */ 1076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SPCR_TSECEP 3 /* eTSEC1&2 emergency priority (0-3) */ 1085e918a98SKim Phillips 1095e918a98SKim Phillips /* System Clock Configuration Register */ 1106d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_TSEC1CM 1 /* eTSEC1 clock mode (0-3) */ 1116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_TSEC2CM 1 /* eTSEC2 clock mode (0-3) */ 1126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_SATACM SCCR_SATACM_2 /* SATA1-4 clock mode (0-3) */ 1135e918a98SKim Phillips 1145e918a98SKim Phillips /* 1155e918a98SKim Phillips * System IO Config 1165e918a98SKim Phillips */ 1176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SICRH 0x08200000 1186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SICRL 0x00000000 1195e918a98SKim Phillips 1205e918a98SKim Phillips /* 1215e918a98SKim Phillips * Output Buffer Impedance 1225e918a98SKim Phillips */ 1236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OBIR 0x30100000 1245e918a98SKim Phillips 1255e918a98SKim Phillips /* 1265e918a98SKim Phillips * IMMR new address 1275e918a98SKim Phillips */ 1286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IMMR 0xE0000000 1295e918a98SKim Phillips 1305e918a98SKim Phillips /* 13189c7784eSTimur Tabi * Device configurations 13289c7784eSTimur Tabi */ 13389c7784eSTimur Tabi 13489c7784eSTimur Tabi /* Vitesse 7385 */ 13589c7784eSTimur Tabi 13689c7784eSTimur Tabi #ifdef CONFIG_VSC7385_ENET 13789c7784eSTimur Tabi 13889c7784eSTimur Tabi #define CONFIG_TSEC2 13989c7784eSTimur Tabi 14089c7784eSTimur Tabi /* The flash address and size of the VSC7385 firmware image */ 14189c7784eSTimur Tabi #define CONFIG_VSC7385_IMAGE 0xFE7FE000 14289c7784eSTimur Tabi #define CONFIG_VSC7385_IMAGE_SIZE 8192 14389c7784eSTimur Tabi 14489c7784eSTimur Tabi #endif 14589c7784eSTimur Tabi 14689c7784eSTimur Tabi /* 1475e918a98SKim Phillips * DDR Setup 1485e918a98SKim Phillips */ 1496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_BASE 0x00000000 /* DDR is system memory */ 1506d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 1516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 1526d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CLK_CNTL 0x03000000 1536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_83XX_DDR_USES_CS0 1545e918a98SKim Phillips 1556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDRCDR_VALUE (DDRCDR_DHC_EN | DDRCDR_ODT | DDRCDR_Q_DRN) 1565e918a98SKim Phillips 1575e918a98SKim Phillips #undef CONFIG_DDR_ECC /* support DDR ECC function */ 1585e918a98SKim Phillips #undef CONFIG_DDR_ECC_CMD /* Use DDR ECC user commands */ 1595e918a98SKim Phillips 1605e918a98SKim Phillips #undef CONFIG_NEVER_ASSERT_ODT_TO_CPU /* Never assert ODT to internal IOs */ 1615e918a98SKim Phillips 1625e918a98SKim Phillips /* 1635e918a98SKim Phillips * Manually set up DDR parameters 1645e918a98SKim Phillips */ 1656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SIZE 256 /* MB */ 1666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_CS0_BNDS 0x0000000f 1676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN | CSCONFIG_ODT_WR_ACS \ 1685e918a98SKim Phillips | CSCONFIG_ROW_BIT_13 | CSCONFIG_COL_BIT_10) 1695e918a98SKim Phillips 1706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_3 0x00000000 1716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_0 ((0 << TIMING_CFG0_RWT_SHIFT) \ 1725e918a98SKim Phillips | (0 << TIMING_CFG0_WRT_SHIFT) \ 1735e918a98SKim Phillips | (0 << TIMING_CFG0_RRT_SHIFT) \ 1745e918a98SKim Phillips | (0 << TIMING_CFG0_WWT_SHIFT) \ 1755e918a98SKim Phillips | (2 << TIMING_CFG0_ACT_PD_EXIT_SHIFT) \ 1765e918a98SKim Phillips | (6 << TIMING_CFG0_PRE_PD_EXIT_SHIFT) \ 1775e918a98SKim Phillips | (8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT) \ 1785e918a98SKim Phillips | (2 << TIMING_CFG0_MRS_CYC_SHIFT)) 1795e918a98SKim Phillips /* 0x00220802 */ 1805e918a98SKim Phillips /* 0x00260802 */ /* DDR400 */ 1816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_1 ((3 << TIMING_CFG1_PRETOACT_SHIFT) \ 1825e918a98SKim Phillips | (9 << TIMING_CFG1_ACTTOPRE_SHIFT) \ 1835e918a98SKim Phillips | (3 << TIMING_CFG1_ACTTORW_SHIFT) \ 1845e918a98SKim Phillips | (7 << TIMING_CFG1_CASLAT_SHIFT) \ 1855e918a98SKim Phillips | (13 << TIMING_CFG1_REFREC_SHIFT) \ 1865e918a98SKim Phillips | (3 << TIMING_CFG1_WRREC_SHIFT) \ 1875e918a98SKim Phillips | (2 << TIMING_CFG1_ACTTOACT_SHIFT) \ 1885e918a98SKim Phillips | (2 << TIMING_CFG1_WRTORD_SHIFT)) 1895e918a98SKim Phillips /* 0x3935d322 */ 1905e918a98SKim Phillips /* 0x3937d322 */ 1916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_2 0x02984cc8 1925e918a98SKim Phillips 1938eceeb7fSKim Phillips #define CONFIG_SYS_DDR_INTERVAL ((1024 << SDRAM_INTERVAL_REFINT_SHIFT) \ 1948eceeb7fSKim Phillips | (0 << SDRAM_INTERVAL_BSTOPRE_SHIFT)) 1955e918a98SKim Phillips /* 0x06090100 */ 1965e918a98SKim Phillips 1975e918a98SKim Phillips #if defined(CONFIG_DDR_2T_TIMING) 1986d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SREN \ 1995e918a98SKim Phillips | 3 << SDRAM_CFG_SDRAM_TYPE_SHIFT \ 2005e918a98SKim Phillips | SDRAM_CFG_2T_EN \ 2015e918a98SKim Phillips | SDRAM_CFG_DBW_32) 2025e918a98SKim Phillips #else 2036d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SREN \ 2045e918a98SKim Phillips | 3 << SDRAM_CFG_SDRAM_TYPE_SHIFT) 2055e918a98SKim Phillips /* 0x43000000 */ 2065e918a98SKim Phillips #endif 2076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG2 0x00001000 /* 1 posted refresh */ 2088eceeb7fSKim Phillips #define CONFIG_SYS_DDR_MODE ((0x0406 << SDRAM_MODE_ESD_SHIFT) \ 2095e918a98SKim Phillips | (0x0442 << SDRAM_MODE_SD_SHIFT)) 2105e918a98SKim Phillips /* 0x04400442 */ /* DDR400 */ 2116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_MODE2 0x00000000 2125e918a98SKim Phillips 2135e918a98SKim Phillips /* 2145e918a98SKim Phillips * Memory test 2155e918a98SKim Phillips */ 2166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_DRAM_TEST /* memory test, takes time */ 2176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START 0x00040000 /* memtest region */ 2186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END 0x0ef70010 2195e918a98SKim Phillips 2205e918a98SKim Phillips /* 2215e918a98SKim Phillips * The reserved memory 2225e918a98SKim Phillips */ 2236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE TEXT_BASE /* start of monitor */ 2245e918a98SKim Phillips 2256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) 2266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_RAMBOOT 2275e918a98SKim Phillips #else 2286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_RAMBOOT 2295e918a98SKim Phillips #endif 2305e918a98SKim Phillips 2314a9932a4SKim Phillips #define CONFIG_SYS_MONITOR_LEN (384 * 1024) /* Reserve 384 kB for Mon */ 2326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN (512 * 1024) /* Reserved for malloc */ 2335e918a98SKim Phillips 2345e918a98SKim Phillips /* 2355e918a98SKim Phillips * Initial RAM Base Address Setup 2365e918a98SKim Phillips */ 2376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_LOCK 1 2386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR 0xE6000000 /* Initial RAM address */ 2396d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_END 0x1000 /* End of used area in RAM */ 2406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GBL_DATA_SIZE 0x100 /* num bytes initial data */ 2416d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE) 2425e918a98SKim Phillips 2435e918a98SKim Phillips /* 2445e918a98SKim Phillips * Local Bus Configuration & Clock Setup 2455e918a98SKim Phillips */ 2466d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LCRR (LCRR_DBYP | LCRR_CLKDIV_8) 2476d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBC_LBCR 0x00000000 2485e918a98SKim Phillips 2495e918a98SKim Phillips /* 2505e918a98SKim Phillips * FLASH on the Local Bus 2515e918a98SKim Phillips */ 2526d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI /* use the Common Flash Interface */ 25300b1883aSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 2546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BASE 0xFE000000 /* FLASH base address */ 2556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_SIZE 8 /* max FLASH size is 32M */ 2565e918a98SKim Phillips 2576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_PROTECTION 1 /* Use h/w Flash protection. */ 2586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_EMPTY_INFO /* display empty sectors */ 2596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE /* buffer up multiple bytes */ 2605e918a98SKim Phillips 2616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE /* Window base at flash base */ 2626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR0_PRELIM 0x80000016 /* 8 MB window size */ 2635e918a98SKim Phillips 2646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR0_PRELIM (CONFIG_SYS_FLASH_BASE | /* Flash Base address */ \ 2655e918a98SKim Phillips (2 << BR_PS_SHIFT) | /* 16 bit port size */ \ 2665e918a98SKim Phillips BR_V) /* valid */ 2676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR0_PRELIM (0xFF800000 /* 8 MByte */ \ 2685e918a98SKim Phillips | OR_GPCM_XACS \ 2695e918a98SKim Phillips | OR_GPCM_SCY_9 \ 2705e918a98SKim Phillips | OR_GPCM_EHTR \ 2715e918a98SKim Phillips | OR_GPCM_EAD) 2725e918a98SKim Phillips /* 0xFF806FF7 TODO SLOW 8 MB flash size */ 2735e918a98SKim Phillips 2746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 2756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT 256 /* max sectors per device */ 2765e918a98SKim Phillips 2776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_FLASH_CHECKSUM 2786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 2796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 2805e918a98SKim Phillips 28146a3aeeaSAnton Vorontsov /* 28246a3aeeaSAnton Vorontsov * NAND Flash on the Local Bus 28346a3aeeaSAnton Vorontsov */ 2846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NAND_BASE 0xE0600000 /* 0xE0600000 */ 2856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR1_PRELIM (CONFIG_SYS_NAND_BASE | \ 28646a3aeeaSAnton Vorontsov (2 << BR_DECC_SHIFT) | /* Use HW ECC */ \ 28746a3aeeaSAnton Vorontsov BR_PS_8 | /* Port Size = 8 bit */ \ 28846a3aeeaSAnton Vorontsov BR_MS_FCM | /* MSEL = FCM */ \ 28946a3aeeaSAnton Vorontsov BR_V) /* valid */ 2906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR1_PRELIM (0xFFFF8000 | /* length 32K */ \ 29146a3aeeaSAnton Vorontsov OR_FCM_CSCT | \ 29246a3aeeaSAnton Vorontsov OR_FCM_CST | \ 29346a3aeeaSAnton Vorontsov OR_FCM_CHT | \ 29446a3aeeaSAnton Vorontsov OR_FCM_SCY_1 | \ 29546a3aeeaSAnton Vorontsov OR_FCM_TRLX | \ 29646a3aeeaSAnton Vorontsov OR_FCM_EHTR) 2976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR1_PRELIM CONFIG_SYS_NAND_BASE 2986d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR1_PRELIM 0x8000000E /* 32KB */ 29946a3aeeaSAnton Vorontsov 30089c7784eSTimur Tabi /* Vitesse 7385 */ 30189c7784eSTimur Tabi 3026d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_VSC7385_BASE 0xF0000000 3035e918a98SKim Phillips 30489c7784eSTimur Tabi #ifdef CONFIG_VSC7385_ENET 30589c7784eSTimur Tabi 3066d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR2_PRELIM 0xf0000801 /* Base address */ 3076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR2_PRELIM 0xfffe09ff /* 128K bytes*/ 3086d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR2_PRELIM CONFIG_SYS_VSC7385_BASE /* Access Base */ 3096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR2_PRELIM 0x80000010 /* Access Size 128K */ 3105e918a98SKim Phillips 31189c7784eSTimur Tabi #endif 31289c7784eSTimur Tabi 3135e918a98SKim Phillips /* 3145e918a98SKim Phillips * Serial Port 3155e918a98SKim Phillips */ 3165e918a98SKim Phillips #define CONFIG_CONS_INDEX 1 3175e918a98SKim Phillips #undef CONFIG_SERIAL_SOFTWARE_FIFO 3186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550 3196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_SERIAL 3206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_REG_SIZE 1 3216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 3225e918a98SKim Phillips 3236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BAUDRATE_TABLE \ 3245e918a98SKim Phillips {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 3255e918a98SKim Phillips 3266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500) 3276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600) 3285e918a98SKim Phillips 3292bd7460eSAnton Vorontsov /* SERDES */ 3302bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES 3312bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES1 0xe3000 3322bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES2 0xe3100 3332bd7460eSAnton Vorontsov 3345e918a98SKim Phillips /* Use the HUSH parser */ 3356d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HUSH_PARSER 3366d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifdef CONFIG_SYS_HUSH_PARSER 3376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 3385e918a98SKim Phillips #endif 3395e918a98SKim Phillips 3405e918a98SKim Phillips /* Pass open firmware flat tree */ 3415e918a98SKim Phillips #define CONFIG_OF_LIBFDT 1 3425e918a98SKim Phillips #define CONFIG_OF_BOARD_SETUP 1 343aabce7fbSAnton Vorontsov #define CONFIG_OF_STDOUT_VIA_ALIAS 1 3445e918a98SKim Phillips 345c9646ed7SAnton Vorontsov #define CONFIG_SYS_64BIT_STRTOUL 1 346c9646ed7SAnton Vorontsov #define CONFIG_SYS_64BIT_VSPRINTF 1 347c9646ed7SAnton Vorontsov 3485e918a98SKim Phillips /* I2C */ 3495e918a98SKim Phillips #define CONFIG_HARD_I2C /* I2C with hardware support */ 3505e918a98SKim Phillips #undef CONFIG_SOFT_I2C /* I2C bit-banged */ 3515e918a98SKim Phillips #define CONFIG_FSL_I2C 3526d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_SPEED 400000 /* I2C speed and slave address */ 3536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_SLAVE 0x7F 3546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_NOPROBES {0x51} /* Don't probe these addrs */ 3556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_OFFSET 0x3000 3566d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C2_OFFSET 0x3100 3575e918a98SKim Phillips 3585e918a98SKim Phillips /* 3595e918a98SKim Phillips * Config on-board RTC 3605e918a98SKim Phillips */ 3615e918a98SKim Phillips #define CONFIG_RTC_DS1374 /* use ds1374 rtc via i2c */ 3626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_RTC_ADDR 0x68 /* at address 0x68 */ 3635e918a98SKim Phillips 3645e918a98SKim Phillips /* 3655e918a98SKim Phillips * General PCI 3665e918a98SKim Phillips * Addresses are mapped 1-1. 3675e918a98SKim Phillips */ 3686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_BASE 0x80000000 3696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_PHYS CONFIG_SYS_PCI_MEM_BASE 3706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_SIZE 0x10000000 /* 256M */ 3716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_BASE 0x90000000 3726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_PHYS CONFIG_SYS_PCI_MMIO_BASE 3736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_SIZE 0x10000000 /* 256M */ 3746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_BASE 0x00000000 3756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_PHYS 0xE0300000 3766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_SIZE 0x100000 /* 1M */ 3775e918a98SKim Phillips 3786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_LOCAL CONFIG_SYS_SDRAM_BASE 3796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_BUS 0x00000000 3806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_SIZE 0x80000000 3815e918a98SKim Phillips 3827e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_BASE 0xA0000000 3837e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_CFG_BASE 0xA0000000 3847e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_CFG_SIZE 0x08000000 3857e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_BASE 0xA8000000 3867e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_PHYS 0xA8000000 3877e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_SIZE 0x10000000 3887e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_BASE 0x00000000 3897e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_PHYS 0xB8000000 3907e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_SIZE 0x00800000 3917e915580SAnton Vorontsov 3927e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_BASE 0xC0000000 3937e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_CFG_BASE 0xC0000000 3947e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_CFG_SIZE 0x08000000 3957e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_BASE 0xC8000000 3967e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_PHYS 0xC8000000 3977e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_SIZE 0x10000000 3987e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_BASE 0x00000000 3997e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_PHYS 0xD8000000 4007e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_SIZE 0x00800000 4017e915580SAnton Vorontsov 4025e918a98SKim Phillips #ifdef CONFIG_PCI 4035e918a98SKim Phillips #define CONFIG_NET_MULTI 4045e918a98SKim Phillips #define CONFIG_PCI_PNP /* do pci plug-and-play */ 4055e918a98SKim Phillips 4065e918a98SKim Phillips #undef CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ 4076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957 /* Freescale */ 4085e918a98SKim Phillips #endif /* CONFIG_PCI */ 4095e918a98SKim Phillips 4105e918a98SKim Phillips /* 4115e918a98SKim Phillips * TSEC 4125e918a98SKim Phillips */ 41389c7784eSTimur Tabi #ifdef CONFIG_TSEC_ENET 4145e918a98SKim Phillips 41589c7784eSTimur Tabi #define CONFIG_NET_MULTI 41689c7784eSTimur Tabi #define CONFIG_GMII /* MII PHY management */ 41789c7784eSTimur Tabi 41889c7784eSTimur Tabi #define CONFIG_TSEC1 41989c7784eSTimur Tabi 42089c7784eSTimur Tabi #ifdef CONFIG_TSEC1 42189c7784eSTimur Tabi #define CONFIG_HAS_ETH0 4225e918a98SKim Phillips #define CONFIG_TSEC1_NAME "TSEC0" 4236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC1_OFFSET 0x24000 4245e918a98SKim Phillips #define TSEC1_PHY_ADDR 2 4255e918a98SKim Phillips #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 4265e918a98SKim Phillips #define TSEC1_PHYIDX 0 42789c7784eSTimur Tabi #endif 4285e918a98SKim Phillips 42989c7784eSTimur Tabi #ifdef CONFIG_TSEC2 43089c7784eSTimur Tabi #define CONFIG_HAS_ETH1 43189c7784eSTimur Tabi #define CONFIG_TSEC2_NAME "TSEC1" 4326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC2_OFFSET 0x25000 43389c7784eSTimur Tabi #define TSEC2_PHY_ADDR 0x1c 43489c7784eSTimur Tabi #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 43589c7784eSTimur Tabi #define TSEC2_PHYIDX 0 43689c7784eSTimur Tabi #endif 4375e918a98SKim Phillips 4385e918a98SKim Phillips /* Options are: TSEC[0-1] */ 4395e918a98SKim Phillips #define CONFIG_ETHPRIME "TSEC0" 4405e918a98SKim Phillips 44189c7784eSTimur Tabi #endif 44289c7784eSTimur Tabi 4435e918a98SKim Phillips /* 444730e7929SKim Phillips * SATA 445730e7929SKim Phillips */ 446730e7929SKim Phillips #define CONFIG_LIBATA 447730e7929SKim Phillips #define CONFIG_FSL_SATA 448730e7929SKim Phillips 4496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA_MAX_DEVICE 2 450730e7929SKim Phillips #define CONFIG_SATA1 4516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1_OFFSET 0x18000 4526d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1 (CONFIG_SYS_IMMR + CONFIG_SYS_SATA1_OFFSET) 4536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1_FLAGS FLAGS_DMA 454730e7929SKim Phillips #define CONFIG_SATA2 4556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2_OFFSET 0x19000 4566d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2 (CONFIG_SYS_IMMR + CONFIG_SYS_SATA2_OFFSET) 4576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2_FLAGS FLAGS_DMA 458730e7929SKim Phillips 459730e7929SKim Phillips #ifdef CONFIG_FSL_SATA 460730e7929SKim Phillips #define CONFIG_LBA48 461730e7929SKim Phillips #define CONFIG_CMD_SATA 462730e7929SKim Phillips #define CONFIG_DOS_PARTITION 463730e7929SKim Phillips #define CONFIG_CMD_EXT2 464730e7929SKim Phillips #endif 465730e7929SKim Phillips 466730e7929SKim Phillips /* 4675e918a98SKim Phillips * Environment 4685e918a98SKim Phillips */ 4696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifndef CONFIG_SYS_RAMBOOT 4705a1aceb0SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_IN_FLASH 1 4716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE+CONFIG_SYS_MONITOR_LEN) 4720e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K (one sector) for env */ 4730e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE 0x4000 4745e918a98SKim Phillips #else 4756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NO_FLASH 1 /* Flash is not usable now */ 47693f6d725SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_NOWHERE 1 /* Store ENV in memory only */ 4776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE-0x1000) 4780e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE 0x2000 4795e918a98SKim Phillips #endif 4805e918a98SKim Phillips 4815e918a98SKim Phillips #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ 4826d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */ 4835e918a98SKim Phillips 4845e918a98SKim Phillips /* 4855e918a98SKim Phillips * BOOTP options 4865e918a98SKim Phillips */ 4875e918a98SKim Phillips #define CONFIG_BOOTP_BOOTFILESIZE 4885e918a98SKim Phillips #define CONFIG_BOOTP_BOOTPATH 4895e918a98SKim Phillips #define CONFIG_BOOTP_GATEWAY 4905e918a98SKim Phillips #define CONFIG_BOOTP_HOSTNAME 4915e918a98SKim Phillips 4925e918a98SKim Phillips 4935e918a98SKim Phillips /* 4945e918a98SKim Phillips * Command line configuration. 4955e918a98SKim Phillips */ 4965e918a98SKim Phillips #include <config_cmd_default.h> 4975e918a98SKim Phillips 4985e918a98SKim Phillips #define CONFIG_CMD_PING 4995e918a98SKim Phillips #define CONFIG_CMD_I2C 5005e918a98SKim Phillips #define CONFIG_CMD_MII 5015e918a98SKim Phillips #define CONFIG_CMD_DATE 5025e918a98SKim Phillips 5035e918a98SKim Phillips #if defined(CONFIG_PCI) 5045e918a98SKim Phillips #define CONFIG_CMD_PCI 5055e918a98SKim Phillips #endif 5065e918a98SKim Phillips 5076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #if defined(CONFIG_SYS_RAMBOOT) 508bdab39d3SMike Frysinger #undef CONFIG_CMD_SAVEENV 5095e918a98SKim Phillips #undef CONFIG_CMD_LOADS 5105e918a98SKim Phillips #endif 5115e918a98SKim Phillips 5125e918a98SKim Phillips #define CONFIG_CMDLINE_EDITING 1 /* add command line history */ 5135e918a98SKim Phillips 5145e918a98SKim Phillips #undef CONFIG_WATCHDOG /* watchdog disabled */ 5155e918a98SKim Phillips 516c9646ed7SAnton Vorontsov #define CONFIG_MMC 1 517c9646ed7SAnton Vorontsov 518c9646ed7SAnton Vorontsov #ifdef CONFIG_MMC 519c9646ed7SAnton Vorontsov #define CONFIG_FSL_ESDHC 520c9646ed7SAnton Vorontsov #define CONFIG_SYS_FSL_ESDHC_ADDR CONFIG_SYS_MPC83xx_ESDHC_ADDR 521c9646ed7SAnton Vorontsov #define CONFIG_CMD_MMC 522c9646ed7SAnton Vorontsov #define CONFIG_GENERIC_MMC 523c9646ed7SAnton Vorontsov #define CONFIG_CMD_EXT2 524c9646ed7SAnton Vorontsov #define CONFIG_CMD_FAT 525c9646ed7SAnton Vorontsov #define CONFIG_DOS_PARTITION 526c9646ed7SAnton Vorontsov #endif 527c9646ed7SAnton Vorontsov 5285e918a98SKim Phillips /* 5295e918a98SKim Phillips * Miscellaneous configurable options 5305e918a98SKim Phillips */ 5316d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP /* undef to save memory */ 5326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 5336d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */ 5345e918a98SKim Phillips 5355e918a98SKim Phillips #if defined(CONFIG_CMD_KGDB) 5366d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 5375e918a98SKim Phillips #else 5386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 5395e918a98SKim Phillips #endif 5405e918a98SKim Phillips 5416d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */ 5426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 5436d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size */ 5446d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HZ 1000 /* decrementer freq: 1ms ticks */ 5455e918a98SKim Phillips 5465e918a98SKim Phillips /* 5475e918a98SKim Phillips * For booting Linux, the board info and command line data 5485e918a98SKim Phillips * have to be in the first 8 MB of memory, since this is 5495e918a98SKim Phillips * the maximum mapped by the Linux kernel during initialization. 5505e918a98SKim Phillips */ 5516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */ 5525e918a98SKim Phillips 5535e918a98SKim Phillips /* 5545e918a98SKim Phillips * Core HID Setup 5555e918a98SKim Phillips */ 5566d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID0_INIT 0x000000000 5576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID0_FINAL HID0_ENABLE_MACHINE_CHECK 5586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID2 HID2_HBE 5595e918a98SKim Phillips 5605e918a98SKim Phillips /* 5615e918a98SKim Phillips * MMU Setup 5625e918a98SKim Phillips */ 5635e918a98SKim Phillips 56431d82672SBecky Bruce #define CONFIG_HIGH_BATS 1 /* High BATs supported */ 56531d82672SBecky Bruce 5665e918a98SKim Phillips /* DDR: cache cacheable */ 5676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_LOWER CONFIG_SYS_SDRAM_BASE 5686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_UPPER (CONFIG_SYS_SDRAM_BASE + 0x10000000) 5695e918a98SKim Phillips 5706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_LOWER | BATL_PP_10 | BATL_MEMCOHERENCE) 5716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_LOWER | BATU_BL_256M | BATU_VS | BATU_VP) 5726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 5736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 5745e918a98SKim Phillips 5756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT1L (CONFIG_SYS_SDRAM_UPPER | BATL_PP_10 | BATL_MEMCOHERENCE) 5766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT1U (CONFIG_SYS_SDRAM_UPPER | BATU_BL_256M | BATU_VS | BATU_VP) 5776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 5786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 5795e918a98SKim Phillips 5805e918a98SKim Phillips /* IMMRBAR, PCI IO and NAND: cache-inhibit and guarded */ 5816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT2L (CONFIG_SYS_IMMR | BATL_PP_10 | \ 5825e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 5836d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT2U (CONFIG_SYS_IMMR | BATU_BL_8M | BATU_VS | BATU_VP) 5846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 5856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 5865e918a98SKim Phillips 5875e918a98SKim Phillips /* L2 Switch: cache-inhibit and guarded */ 5886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT3L (CONFIG_SYS_VSC7385_BASE | BATL_PP_10 | \ 5895e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 5906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT3U (CONFIG_SYS_VSC7385_BASE | BATU_BL_128K | BATU_VS | BATU_VP) 5916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 5926d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 5935e918a98SKim Phillips 5945e918a98SKim Phillips /* FLASH: icache cacheable, but dcache-inhibit and guarded */ 5956d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT4L (CONFIG_SYS_FLASH_BASE | BATL_PP_10 | BATL_MEMCOHERENCE) 5966d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT4U (CONFIG_SYS_FLASH_BASE | BATU_BL_32M | BATU_VS | BATU_VP) 5976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT4L (CONFIG_SYS_FLASH_BASE | BATL_PP_10 | \ 5985e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 5996d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 6005e918a98SKim Phillips 6015e918a98SKim Phillips /* Stack in dcache: cacheable, no memory coherence */ 6026d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT5L (CONFIG_SYS_INIT_RAM_ADDR | BATL_PP_10) 6036d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT5U (CONFIG_SYS_INIT_RAM_ADDR | BATU_BL_128K | BATU_VS | BATU_VP) 6046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 6056d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 6065e918a98SKim Phillips 6075e918a98SKim Phillips #ifdef CONFIG_PCI 6085e918a98SKim Phillips /* PCI MEM space: cacheable */ 6096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6L (CONFIG_SYS_PCI_MEM_PHYS | BATL_PP_10 | BATL_MEMCOHERENCE) 6106d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6U (CONFIG_SYS_PCI_MEM_PHYS | BATU_BL_256M | BATU_VS | BATU_VP) 6116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 6126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 6135e918a98SKim Phillips /* PCI MMIO space: cache-inhibit and guarded */ 6146d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7L (CONFIG_SYS_PCI_MMIO_PHYS | BATL_PP_10 | \ 6155e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 6166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7U (CONFIG_SYS_PCI_MMIO_PHYS | BATU_BL_256M | BATU_VS | BATU_VP) 6176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 6186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 6195e918a98SKim Phillips #else 6206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6L (0) 6216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6U (0) 6226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7L (0) 6236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7U (0) 6246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 6256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 6266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 6276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 6285e918a98SKim Phillips #endif 6295e918a98SKim Phillips 6305e918a98SKim Phillips /* 6315e918a98SKim Phillips * Internal Definitions 6325e918a98SKim Phillips * 6335e918a98SKim Phillips * Boot Flags 6345e918a98SKim Phillips */ 6355e918a98SKim Phillips #define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */ 6365e918a98SKim Phillips #define BOOTFLAG_WARM 0x02 /* Software reboot */ 6375e918a98SKim Phillips 6385e918a98SKim Phillips #if defined(CONFIG_CMD_KGDB) 6395e918a98SKim Phillips #define CONFIG_KGDB_BAUDRATE 230400 /* speed of kgdb serial port */ 6405e918a98SKim Phillips #define CONFIG_KGDB_SER_INDEX 2 /* which serial port to use */ 6415e918a98SKim Phillips #endif 6425e918a98SKim Phillips 6435e918a98SKim Phillips /* 6445e918a98SKim Phillips * Environment Configuration 6455e918a98SKim Phillips */ 6465e918a98SKim Phillips #define CONFIG_ENV_OVERWRITE 6475e918a98SKim Phillips 64889c7784eSTimur Tabi #ifdef CONFIG_HAS_ETH0 6495e918a98SKim Phillips #define CONFIG_ETHADDR 00:04:9f:ef:04:01 65089c7784eSTimur Tabi #endif 65189c7784eSTimur Tabi 65289c7784eSTimur Tabi #ifdef CONFIG_HAS_ETH1 6535e918a98SKim Phillips #define CONFIG_ETH1ADDR 00:04:9f:ef:04:02 65489c7784eSTimur Tabi #endif 6555e918a98SKim Phillips 65618e69a35SAnton Vorontsov #define CONFIG_HAS_FSL_DR_USB 65718e69a35SAnton Vorontsov 6585e918a98SKim Phillips #define CONFIG_IPADDR 10.0.0.2 6595e918a98SKim Phillips #define CONFIG_SERVERIP 10.0.0.1 6605e918a98SKim Phillips #define CONFIG_GATEWAYIP 10.0.0.1 6615e918a98SKim Phillips #define CONFIG_NETMASK 255.0.0.0 6625e918a98SKim Phillips #define CONFIG_NETDEV eth1 6635e918a98SKim Phillips 6645e918a98SKim Phillips #define CONFIG_HOSTNAME mpc837x_rdb 6655e918a98SKim Phillips #define CONFIG_ROOTPATH /nfsroot 6665e918a98SKim Phillips #define CONFIG_RAMDISKFILE rootfs.ext2.gz.uboot 6675e918a98SKim Phillips #define CONFIG_BOOTFILE uImage 6685e918a98SKim Phillips #define CONFIG_UBOOTPATH u-boot.bin /* U-Boot image on TFTP server */ 669270fe261SKim Phillips #define CONFIG_FDTFILE mpc8379_rdb.dtb 6705e918a98SKim Phillips 671*79f516bcSKim Phillips #define CONFIG_LOADADDR 800000 /* default location for tftp and bootm */ 6727fd0bea2SKim Phillips #define CONFIG_BOOTDELAY 6 /* -1 disables auto-boot */ 6735e918a98SKim Phillips #define CONFIG_BAUDRATE 115200 6745e918a98SKim Phillips 6755e918a98SKim Phillips #define XMK_STR(x) #x 6765e918a98SKim Phillips #define MK_STR(x) XMK_STR(x) 6775e918a98SKim Phillips 6785e918a98SKim Phillips #define CONFIG_EXTRA_ENV_SETTINGS \ 6795e918a98SKim Phillips "netdev=" MK_STR(CONFIG_NETDEV) "\0" \ 6805e918a98SKim Phillips "uboot=" MK_STR(CONFIG_UBOOTPATH) "\0" \ 6815e918a98SKim Phillips "tftpflash=tftp $loadaddr $uboot;" \ 6825e918a98SKim Phillips "protect off " MK_STR(TEXT_BASE) " +$filesize; " \ 6835e918a98SKim Phillips "erase " MK_STR(TEXT_BASE) " +$filesize; " \ 6845e918a98SKim Phillips "cp.b $loadaddr " MK_STR(TEXT_BASE) " $filesize; " \ 6855e918a98SKim Phillips "protect on " MK_STR(TEXT_BASE) " +$filesize; " \ 6865e918a98SKim Phillips "cmp.b $loadaddr " MK_STR(TEXT_BASE) " $filesize\0" \ 687*79f516bcSKim Phillips "fdtaddr=780000\0" \ 6885e918a98SKim Phillips "fdtfile=" MK_STR(CONFIG_FDTFILE) "\0" \ 6895e918a98SKim Phillips "ramdiskaddr=1000000\0" \ 6905e918a98SKim Phillips "ramdiskfile=" MK_STR(CONFIG_RAMDISKFILE) "\0" \ 6915e918a98SKim Phillips "console=ttyS0\0" \ 6925e918a98SKim Phillips "setbootargs=setenv bootargs " \ 6935e918a98SKim Phillips "root=$rootdev rw console=$console,$baudrate $othbootargs\0" \ 6945e918a98SKim Phillips "setipargs=setenv bootargs nfsroot=$serverip:$rootpath " \ 6955e918a98SKim Phillips "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ 6965e918a98SKim Phillips "root=$rootdev rw console=$console,$baudrate $othbootargs\0" 6975e918a98SKim Phillips 6985e918a98SKim Phillips #define CONFIG_NFSBOOTCOMMAND \ 6995e918a98SKim Phillips "setenv rootdev /dev/nfs;" \ 7005e918a98SKim Phillips "run setbootargs;" \ 7015e918a98SKim Phillips "run setipargs;" \ 7025e918a98SKim Phillips "tftp $loadaddr $bootfile;" \ 7035e918a98SKim Phillips "tftp $fdtaddr $fdtfile;" \ 7045e918a98SKim Phillips "bootm $loadaddr - $fdtaddr" 7055e918a98SKim Phillips 7065e918a98SKim Phillips #define CONFIG_RAMBOOTCOMMAND \ 7075e918a98SKim Phillips "setenv rootdev /dev/ram;" \ 7085e918a98SKim Phillips "run setbootargs;" \ 7095e918a98SKim Phillips "tftp $ramdiskaddr $ramdiskfile;" \ 7105e918a98SKim Phillips "tftp $loadaddr $bootfile;" \ 7115e918a98SKim Phillips "tftp $fdtaddr $fdtfile;" \ 7125e918a98SKim Phillips "bootm $loadaddr $ramdiskaddr $fdtaddr" 7135e918a98SKim Phillips 7145e918a98SKim Phillips #undef MK_STR 7155e918a98SKim Phillips #undef XMK_STR 7165e918a98SKim Phillips 7175e918a98SKim Phillips #endif /* __CONFIG_H */ 718