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 37*c9646ed7SAnton 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 */ 525e918a98SKim Phillips #define CONFIG_83XX_GENERIC_PCI 1 537e915580SAnton Vorontsov #define CONFIG_83XX_GENERIC_PCIE 1 545e918a98SKim Phillips #endif 555e918a98SKim Phillips 565e918a98SKim Phillips #ifndef CONFIG_SYS_CLK_FREQ 575e918a98SKim Phillips #define CONFIG_SYS_CLK_FREQ CONFIG_83XX_CLKIN 585e918a98SKim Phillips #endif 595e918a98SKim Phillips 605e918a98SKim Phillips /* 615e918a98SKim Phillips * Hardware Reset Configuration Word 625e918a98SKim Phillips */ 636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_LOW (\ 645e918a98SKim Phillips HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ 655e918a98SKim Phillips HRCWL_DDR_TO_SCB_CLK_1X1 |\ 665e918a98SKim Phillips HRCWL_SVCOD_DIV_2 |\ 675e918a98SKim Phillips HRCWL_CSB_TO_CLKIN_5X1 |\ 685e918a98SKim Phillips HRCWL_CORE_TO_CSB_2X1) 695e918a98SKim Phillips 705e918a98SKim Phillips #ifdef CONFIG_PCISLAVE 716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 725e918a98SKim Phillips HRCWH_PCI_AGENT |\ 735e918a98SKim Phillips HRCWH_PCI1_ARBITER_DISABLE |\ 745e918a98SKim Phillips HRCWH_CORE_ENABLE |\ 755e918a98SKim Phillips HRCWH_FROM_0XFFF00100 |\ 765e918a98SKim Phillips HRCWH_BOOTSEQ_DISABLE |\ 775e918a98SKim Phillips HRCWH_SW_WATCHDOG_DISABLE |\ 785e918a98SKim Phillips HRCWH_ROM_LOC_LOCAL_16BIT |\ 795e918a98SKim Phillips HRCWH_RL_EXT_LEGACY |\ 805e918a98SKim Phillips HRCWH_TSEC1M_IN_RGMII |\ 815e918a98SKim Phillips HRCWH_TSEC2M_IN_RGMII |\ 825e918a98SKim Phillips HRCWH_BIG_ENDIAN |\ 835e918a98SKim Phillips HRCWH_LDP_CLEAR) 845e918a98SKim Phillips #else 856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 865e918a98SKim Phillips HRCWH_PCI_HOST |\ 875e918a98SKim Phillips HRCWH_PCI1_ARBITER_ENABLE |\ 885e918a98SKim Phillips HRCWH_CORE_ENABLE |\ 895e918a98SKim Phillips HRCWH_FROM_0X00000100 |\ 905e918a98SKim Phillips HRCWH_BOOTSEQ_DISABLE |\ 915e918a98SKim Phillips HRCWH_SW_WATCHDOG_DISABLE |\ 925e918a98SKim Phillips HRCWH_ROM_LOC_LOCAL_16BIT |\ 935e918a98SKim Phillips HRCWH_RL_EXT_LEGACY |\ 945e918a98SKim Phillips HRCWH_TSEC1M_IN_RGMII |\ 955e918a98SKim Phillips HRCWH_TSEC2M_IN_RGMII |\ 965e918a98SKim Phillips HRCWH_BIG_ENDIAN |\ 975e918a98SKim Phillips HRCWH_LDP_CLEAR) 985e918a98SKim Phillips #endif 995e918a98SKim Phillips 1006d0f6bcfSJean-Christophe PLAGNIOL-VILLARD /* System performance - define the value i.e. CONFIG_SYS_XXX 1015e918a98SKim Phillips */ 1025e918a98SKim Phillips 1035e918a98SKim Phillips /* Arbiter Configuration Register */ 1046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ACR_PIPE_DEP 3 /* Arbiter pipeline depth (0-3) */ 1056d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ACR_RPTCNT 3 /* Arbiter repeat count (0-7) */ 1065e918a98SKim Phillips 1075e918a98SKim Phillips /* System Priority Control Regsiter */ 1086d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SPCR_TSECEP 3 /* eTSEC1&2 emergency priority (0-3) */ 1095e918a98SKim Phillips 1105e918a98SKim Phillips /* System Clock Configuration Register */ 1116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_TSEC1CM 1 /* eTSEC1 clock mode (0-3) */ 1126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_TSEC2CM 1 /* eTSEC2 clock mode (0-3) */ 1136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_SATACM SCCR_SATACM_2 /* SATA1-4 clock mode (0-3) */ 1145e918a98SKim Phillips 1155e918a98SKim Phillips /* 1165e918a98SKim Phillips * System IO Config 1175e918a98SKim Phillips */ 1186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SICRH 0x08200000 1196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SICRL 0x00000000 1205e918a98SKim Phillips 1215e918a98SKim Phillips /* 1225e918a98SKim Phillips * Output Buffer Impedance 1235e918a98SKim Phillips */ 1246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OBIR 0x30100000 1255e918a98SKim Phillips 1265e918a98SKim Phillips /* 1275e918a98SKim Phillips * IMMR new address 1285e918a98SKim Phillips */ 1296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IMMR 0xE0000000 1305e918a98SKim Phillips 1315e918a98SKim Phillips /* 13289c7784eSTimur Tabi * Device configurations 13389c7784eSTimur Tabi */ 13489c7784eSTimur Tabi 13589c7784eSTimur Tabi /* Vitesse 7385 */ 13689c7784eSTimur Tabi 13789c7784eSTimur Tabi #ifdef CONFIG_VSC7385_ENET 13889c7784eSTimur Tabi 13989c7784eSTimur Tabi #define CONFIG_TSEC2 14089c7784eSTimur Tabi 14189c7784eSTimur Tabi /* The flash address and size of the VSC7385 firmware image */ 14289c7784eSTimur Tabi #define CONFIG_VSC7385_IMAGE 0xFE7FE000 14389c7784eSTimur Tabi #define CONFIG_VSC7385_IMAGE_SIZE 8192 14489c7784eSTimur Tabi 14589c7784eSTimur Tabi #endif 14689c7784eSTimur Tabi 14789c7784eSTimur Tabi /* 1485e918a98SKim Phillips * DDR Setup 1495e918a98SKim Phillips */ 1506d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_BASE 0x00000000 /* DDR is system memory */ 1516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 1526d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 1536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CLK_CNTL 0x03000000 1546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_83XX_DDR_USES_CS0 1555e918a98SKim Phillips 1566d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDRCDR_VALUE (DDRCDR_DHC_EN | DDRCDR_ODT | DDRCDR_Q_DRN) 1575e918a98SKim Phillips 1585e918a98SKim Phillips #undef CONFIG_DDR_ECC /* support DDR ECC function */ 1595e918a98SKim Phillips #undef CONFIG_DDR_ECC_CMD /* Use DDR ECC user commands */ 1605e918a98SKim Phillips 1615e918a98SKim Phillips #undef CONFIG_NEVER_ASSERT_ODT_TO_CPU /* Never assert ODT to internal IOs */ 1625e918a98SKim Phillips 1635e918a98SKim Phillips /* 1645e918a98SKim Phillips * Manually set up DDR parameters 1655e918a98SKim Phillips */ 1666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SIZE 256 /* MB */ 1676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_CS0_BNDS 0x0000000f 1686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN | CSCONFIG_ODT_WR_ACS \ 1695e918a98SKim Phillips | CSCONFIG_ROW_BIT_13 | CSCONFIG_COL_BIT_10) 1705e918a98SKim Phillips 1716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_3 0x00000000 1726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_0 ((0 << TIMING_CFG0_RWT_SHIFT) \ 1735e918a98SKim Phillips | (0 << TIMING_CFG0_WRT_SHIFT) \ 1745e918a98SKim Phillips | (0 << TIMING_CFG0_RRT_SHIFT) \ 1755e918a98SKim Phillips | (0 << TIMING_CFG0_WWT_SHIFT) \ 1765e918a98SKim Phillips | (2 << TIMING_CFG0_ACT_PD_EXIT_SHIFT) \ 1775e918a98SKim Phillips | (6 << TIMING_CFG0_PRE_PD_EXIT_SHIFT) \ 1785e918a98SKim Phillips | (8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT) \ 1795e918a98SKim Phillips | (2 << TIMING_CFG0_MRS_CYC_SHIFT)) 1805e918a98SKim Phillips /* 0x00220802 */ 1815e918a98SKim Phillips /* 0x00260802 */ /* DDR400 */ 1826d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_1 ((3 << TIMING_CFG1_PRETOACT_SHIFT) \ 1835e918a98SKim Phillips | (9 << TIMING_CFG1_ACTTOPRE_SHIFT) \ 1845e918a98SKim Phillips | (3 << TIMING_CFG1_ACTTORW_SHIFT) \ 1855e918a98SKim Phillips | (7 << TIMING_CFG1_CASLAT_SHIFT) \ 1865e918a98SKim Phillips | (13 << TIMING_CFG1_REFREC_SHIFT) \ 1875e918a98SKim Phillips | (3 << TIMING_CFG1_WRREC_SHIFT) \ 1885e918a98SKim Phillips | (2 << TIMING_CFG1_ACTTOACT_SHIFT) \ 1895e918a98SKim Phillips | (2 << TIMING_CFG1_WRTORD_SHIFT)) 1905e918a98SKim Phillips /* 0x3935d322 */ 1915e918a98SKim Phillips /* 0x3937d322 */ 1926d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_2 0x02984cc8 1935e918a98SKim Phillips 1946d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_INTERVAL ((1545 << SDRAM_INTERVAL_REFINT_SHIFT) \ 1955e918a98SKim Phillips | (256 << SDRAM_INTERVAL_BSTOPRE_SHIFT)) 1965e918a98SKim Phillips /* 0x06090100 */ 1975e918a98SKim Phillips 1985e918a98SKim Phillips #if defined(CONFIG_DDR_2T_TIMING) 1996d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SREN \ 2005e918a98SKim Phillips | 3 << SDRAM_CFG_SDRAM_TYPE_SHIFT \ 2015e918a98SKim Phillips | SDRAM_CFG_2T_EN \ 2025e918a98SKim Phillips | SDRAM_CFG_DBW_32) 2035e918a98SKim Phillips #else 2046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SREN \ 2055e918a98SKim Phillips | 3 << SDRAM_CFG_SDRAM_TYPE_SHIFT) 2065e918a98SKim Phillips /* 0x43000000 */ 2075e918a98SKim Phillips #endif 2086d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG2 0x00001000 /* 1 posted refresh */ 2096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_MODE ((0x0440 << SDRAM_MODE_ESD_SHIFT) \ 2105e918a98SKim Phillips | (0x0442 << SDRAM_MODE_SD_SHIFT)) 2115e918a98SKim Phillips /* 0x04400442 */ /* DDR400 */ 2126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_MODE2 0x00000000 2135e918a98SKim Phillips 2145e918a98SKim Phillips /* 2155e918a98SKim Phillips * Memory test 2165e918a98SKim Phillips */ 2176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_DRAM_TEST /* memory test, takes time */ 2186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START 0x00040000 /* memtest region */ 2196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END 0x0ef70010 2205e918a98SKim Phillips 2215e918a98SKim Phillips /* 2225e918a98SKim Phillips * The reserved memory 2235e918a98SKim Phillips */ 2246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MONITOR_BASE TEXT_BASE /* start of monitor */ 2255e918a98SKim Phillips 2266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) 2276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_RAMBOOT 2285e918a98SKim Phillips #else 2296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_RAMBOOT 2305e918a98SKim Phillips #endif 2315e918a98SKim Phillips 2324a9932a4SKim Phillips #define CONFIG_SYS_MONITOR_LEN (384 * 1024) /* Reserve 384 kB for Mon */ 233*c9646ed7SAnton Vorontsov #define CONFIG_SYS_MONITOR_LEN (320 * 1024) /* Reserve 320 kB for Mon */ 2346d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN (512 * 1024) /* Reserved for malloc */ 2355e918a98SKim Phillips 2365e918a98SKim Phillips /* 2375e918a98SKim Phillips * Initial RAM Base Address Setup 2385e918a98SKim Phillips */ 2396d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_LOCK 1 2406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR 0xE6000000 /* Initial RAM address */ 2416d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_END 0x1000 /* End of used area in RAM */ 2426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GBL_DATA_SIZE 0x100 /* num bytes initial data */ 2436d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END - CONFIG_SYS_GBL_DATA_SIZE) 2445e918a98SKim Phillips 2455e918a98SKim Phillips /* 2465e918a98SKim Phillips * Local Bus Configuration & Clock Setup 2475e918a98SKim Phillips */ 2486d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LCRR (LCRR_DBYP | LCRR_CLKDIV_8) 2496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBC_LBCR 0x00000000 2505e918a98SKim Phillips 2515e918a98SKim Phillips /* 2525e918a98SKim Phillips * FLASH on the Local Bus 2535e918a98SKim Phillips */ 2546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI /* use the Common Flash Interface */ 25500b1883aSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 2566d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BASE 0xFE000000 /* FLASH base address */ 2576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_SIZE 8 /* max FLASH size is 32M */ 2585e918a98SKim Phillips 2596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_PROTECTION 1 /* Use h/w Flash protection. */ 2606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_EMPTY_INFO /* display empty sectors */ 2616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE /* buffer up multiple bytes */ 2625e918a98SKim Phillips 2636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE /* Window base at flash base */ 2646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR0_PRELIM 0x80000016 /* 8 MB window size */ 2655e918a98SKim Phillips 2666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR0_PRELIM (CONFIG_SYS_FLASH_BASE | /* Flash Base address */ \ 2675e918a98SKim Phillips (2 << BR_PS_SHIFT) | /* 16 bit port size */ \ 2685e918a98SKim Phillips BR_V) /* valid */ 2696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR0_PRELIM (0xFF800000 /* 8 MByte */ \ 2705e918a98SKim Phillips | OR_GPCM_XACS \ 2715e918a98SKim Phillips | OR_GPCM_SCY_9 \ 2725e918a98SKim Phillips | OR_GPCM_EHTR \ 2735e918a98SKim Phillips | OR_GPCM_EAD) 2745e918a98SKim Phillips /* 0xFF806FF7 TODO SLOW 8 MB flash size */ 2755e918a98SKim Phillips 2766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 2776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT 256 /* max sectors per device */ 2785e918a98SKim Phillips 2796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_FLASH_CHECKSUM 2806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 2816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 2825e918a98SKim Phillips 28346a3aeeaSAnton Vorontsov /* 28446a3aeeaSAnton Vorontsov * NAND Flash on the Local Bus 28546a3aeeaSAnton Vorontsov */ 2866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NAND_BASE 0xE0600000 /* 0xE0600000 */ 2876d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR1_PRELIM (CONFIG_SYS_NAND_BASE | \ 28846a3aeeaSAnton Vorontsov (2 << BR_DECC_SHIFT) | /* Use HW ECC */ \ 28946a3aeeaSAnton Vorontsov BR_PS_8 | /* Port Size = 8 bit */ \ 29046a3aeeaSAnton Vorontsov BR_MS_FCM | /* MSEL = FCM */ \ 29146a3aeeaSAnton Vorontsov BR_V) /* valid */ 2926d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR1_PRELIM (0xFFFF8000 | /* length 32K */ \ 29346a3aeeaSAnton Vorontsov OR_FCM_CSCT | \ 29446a3aeeaSAnton Vorontsov OR_FCM_CST | \ 29546a3aeeaSAnton Vorontsov OR_FCM_CHT | \ 29646a3aeeaSAnton Vorontsov OR_FCM_SCY_1 | \ 29746a3aeeaSAnton Vorontsov OR_FCM_TRLX | \ 29846a3aeeaSAnton Vorontsov OR_FCM_EHTR) 2996d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR1_PRELIM CONFIG_SYS_NAND_BASE 3006d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR1_PRELIM 0x8000000E /* 32KB */ 30146a3aeeaSAnton Vorontsov 30289c7784eSTimur Tabi /* Vitesse 7385 */ 30389c7784eSTimur Tabi 3046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_VSC7385_BASE 0xF0000000 3055e918a98SKim Phillips 30689c7784eSTimur Tabi #ifdef CONFIG_VSC7385_ENET 30789c7784eSTimur Tabi 3086d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR2_PRELIM 0xf0000801 /* Base address */ 3096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR2_PRELIM 0xfffe09ff /* 128K bytes*/ 3106d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR2_PRELIM CONFIG_SYS_VSC7385_BASE /* Access Base */ 3116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR2_PRELIM 0x80000010 /* Access Size 128K */ 3125e918a98SKim Phillips 31389c7784eSTimur Tabi #endif 31489c7784eSTimur Tabi 3155e918a98SKim Phillips /* 3165e918a98SKim Phillips * Serial Port 3175e918a98SKim Phillips */ 3185e918a98SKim Phillips #define CONFIG_CONS_INDEX 1 3195e918a98SKim Phillips #undef CONFIG_SERIAL_SOFTWARE_FIFO 3206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550 3216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_SERIAL 3226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_REG_SIZE 1 3236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 3245e918a98SKim Phillips 3256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BAUDRATE_TABLE \ 3265e918a98SKim Phillips {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 3275e918a98SKim Phillips 3286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500) 3296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600) 3305e918a98SKim Phillips 3312bd7460eSAnton Vorontsov /* SERDES */ 3322bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES 3332bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES1 0xe3000 3342bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES2 0xe3100 3352bd7460eSAnton Vorontsov 3365e918a98SKim Phillips /* Use the HUSH parser */ 3376d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HUSH_PARSER 3386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifdef CONFIG_SYS_HUSH_PARSER 3396d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 3405e918a98SKim Phillips #endif 3415e918a98SKim Phillips 3425e918a98SKim Phillips /* Pass open firmware flat tree */ 3435e918a98SKim Phillips #define CONFIG_OF_LIBFDT 1 3445e918a98SKim Phillips #define CONFIG_OF_BOARD_SETUP 1 345aabce7fbSAnton Vorontsov #define CONFIG_OF_STDOUT_VIA_ALIAS 1 3465e918a98SKim Phillips 347*c9646ed7SAnton Vorontsov #define CONFIG_SYS_64BIT_STRTOUL 1 348*c9646ed7SAnton Vorontsov #define CONFIG_SYS_64BIT_VSPRINTF 1 349*c9646ed7SAnton Vorontsov 3505e918a98SKim Phillips /* I2C */ 3515e918a98SKim Phillips #define CONFIG_HARD_I2C /* I2C with hardware support */ 3525e918a98SKim Phillips #undef CONFIG_SOFT_I2C /* I2C bit-banged */ 3535e918a98SKim Phillips #define CONFIG_FSL_I2C 3546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_SPEED 400000 /* I2C speed and slave address */ 3556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_SLAVE 0x7F 3566d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_NOPROBES {0x51} /* Don't probe these addrs */ 3576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_OFFSET 0x3000 3586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C2_OFFSET 0x3100 3595e918a98SKim Phillips 3605e918a98SKim Phillips /* 3615e918a98SKim Phillips * Config on-board RTC 3625e918a98SKim Phillips */ 3635e918a98SKim Phillips #define CONFIG_RTC_DS1374 /* use ds1374 rtc via i2c */ 3646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_RTC_ADDR 0x68 /* at address 0x68 */ 3655e918a98SKim Phillips 3665e918a98SKim Phillips /* 3675e918a98SKim Phillips * General PCI 3685e918a98SKim Phillips * Addresses are mapped 1-1. 3695e918a98SKim Phillips */ 3706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_BASE 0x80000000 3716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_PHYS CONFIG_SYS_PCI_MEM_BASE 3726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_SIZE 0x10000000 /* 256M */ 3736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_BASE 0x90000000 3746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_PHYS CONFIG_SYS_PCI_MMIO_BASE 3756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_SIZE 0x10000000 /* 256M */ 3766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_BASE 0x00000000 3776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_PHYS 0xE0300000 3786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_SIZE 0x100000 /* 1M */ 3795e918a98SKim Phillips 3806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_LOCAL CONFIG_SYS_SDRAM_BASE 3816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_BUS 0x00000000 3826d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_SIZE 0x80000000 3835e918a98SKim Phillips 3847e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_BASE 0xA0000000 3857e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_CFG_BASE 0xA0000000 3867e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_CFG_SIZE 0x08000000 3877e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_BASE 0xA8000000 3887e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_PHYS 0xA8000000 3897e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_SIZE 0x10000000 3907e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_BASE 0x00000000 3917e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_PHYS 0xB8000000 3927e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_SIZE 0x00800000 3937e915580SAnton Vorontsov 3947e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_BASE 0xC0000000 3957e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_CFG_BASE 0xC0000000 3967e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_CFG_SIZE 0x08000000 3977e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_BASE 0xC8000000 3987e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_PHYS 0xC8000000 3997e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_SIZE 0x10000000 4007e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_BASE 0x00000000 4017e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_PHYS 0xD8000000 4027e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_SIZE 0x00800000 4037e915580SAnton Vorontsov 4045e918a98SKim Phillips #ifdef CONFIG_PCI 4055e918a98SKim Phillips #define CONFIG_NET_MULTI 4065e918a98SKim Phillips #define CONFIG_PCI_PNP /* do pci plug-and-play */ 4075e918a98SKim Phillips 4085e918a98SKim Phillips #undef CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ 4096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957 /* Freescale */ 4105e918a98SKim Phillips #endif /* CONFIG_PCI */ 4115e918a98SKim Phillips 4125e918a98SKim Phillips /* 4135e918a98SKim Phillips * TSEC 4145e918a98SKim Phillips */ 41589c7784eSTimur Tabi #ifdef CONFIG_TSEC_ENET 4165e918a98SKim Phillips 41789c7784eSTimur Tabi #define CONFIG_NET_MULTI 41889c7784eSTimur Tabi #define CONFIG_GMII /* MII PHY management */ 41989c7784eSTimur Tabi 42089c7784eSTimur Tabi #define CONFIG_TSEC1 42189c7784eSTimur Tabi 42289c7784eSTimur Tabi #ifdef CONFIG_TSEC1 42389c7784eSTimur Tabi #define CONFIG_HAS_ETH0 4245e918a98SKim Phillips #define CONFIG_TSEC1_NAME "TSEC0" 4256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC1_OFFSET 0x24000 4265e918a98SKim Phillips #define TSEC1_PHY_ADDR 2 4275e918a98SKim Phillips #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 4285e918a98SKim Phillips #define TSEC1_PHYIDX 0 42989c7784eSTimur Tabi #endif 4305e918a98SKim Phillips 43189c7784eSTimur Tabi #ifdef CONFIG_TSEC2 43289c7784eSTimur Tabi #define CONFIG_HAS_ETH1 43389c7784eSTimur Tabi #define CONFIG_TSEC2_NAME "TSEC1" 4346d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC2_OFFSET 0x25000 43589c7784eSTimur Tabi #define TSEC2_PHY_ADDR 0x1c 43689c7784eSTimur Tabi #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 43789c7784eSTimur Tabi #define TSEC2_PHYIDX 0 43889c7784eSTimur Tabi #endif 4395e918a98SKim Phillips 4405e918a98SKim Phillips /* Options are: TSEC[0-1] */ 4415e918a98SKim Phillips #define CONFIG_ETHPRIME "TSEC0" 4425e918a98SKim Phillips 44389c7784eSTimur Tabi #endif 44489c7784eSTimur Tabi 4455e918a98SKim Phillips /* 446730e7929SKim Phillips * SATA 447730e7929SKim Phillips */ 448730e7929SKim Phillips #define CONFIG_LIBATA 449730e7929SKim Phillips #define CONFIG_FSL_SATA 450730e7929SKim Phillips 4516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA_MAX_DEVICE 2 452730e7929SKim Phillips #define CONFIG_SATA1 4536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1_OFFSET 0x18000 4546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1 (CONFIG_SYS_IMMR + CONFIG_SYS_SATA1_OFFSET) 4556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1_FLAGS FLAGS_DMA 456730e7929SKim Phillips #define CONFIG_SATA2 4576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2_OFFSET 0x19000 4586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2 (CONFIG_SYS_IMMR + CONFIG_SYS_SATA2_OFFSET) 4596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2_FLAGS FLAGS_DMA 460730e7929SKim Phillips 461730e7929SKim Phillips #ifdef CONFIG_FSL_SATA 462730e7929SKim Phillips #define CONFIG_LBA48 463730e7929SKim Phillips #define CONFIG_CMD_SATA 464730e7929SKim Phillips #define CONFIG_DOS_PARTITION 465730e7929SKim Phillips #define CONFIG_CMD_EXT2 466730e7929SKim Phillips #endif 467730e7929SKim Phillips 468730e7929SKim Phillips /* 4695e918a98SKim Phillips * Environment 4705e918a98SKim Phillips */ 4716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifndef CONFIG_SYS_RAMBOOT 4725a1aceb0SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_IN_FLASH 1 4736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE+CONFIG_SYS_MONITOR_LEN) 4740e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K (one sector) for env */ 4750e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE 0x4000 4765e918a98SKim Phillips #else 4776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NO_FLASH 1 /* Flash is not usable now */ 47893f6d725SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_NOWHERE 1 /* Store ENV in memory only */ 4796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE-0x1000) 4800e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE 0x2000 4815e918a98SKim Phillips #endif 4825e918a98SKim Phillips 4835e918a98SKim Phillips #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ 4846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */ 4855e918a98SKim Phillips 4865e918a98SKim Phillips /* 4875e918a98SKim Phillips * BOOTP options 4885e918a98SKim Phillips */ 4895e918a98SKim Phillips #define CONFIG_BOOTP_BOOTFILESIZE 4905e918a98SKim Phillips #define CONFIG_BOOTP_BOOTPATH 4915e918a98SKim Phillips #define CONFIG_BOOTP_GATEWAY 4925e918a98SKim Phillips #define CONFIG_BOOTP_HOSTNAME 4935e918a98SKim Phillips 4945e918a98SKim Phillips 4955e918a98SKim Phillips /* 4965e918a98SKim Phillips * Command line configuration. 4975e918a98SKim Phillips */ 4985e918a98SKim Phillips #include <config_cmd_default.h> 4995e918a98SKim Phillips 5005e918a98SKim Phillips #define CONFIG_CMD_PING 5015e918a98SKim Phillips #define CONFIG_CMD_I2C 5025e918a98SKim Phillips #define CONFIG_CMD_MII 5035e918a98SKim Phillips #define CONFIG_CMD_DATE 5045e918a98SKim Phillips 5055e918a98SKim Phillips #if defined(CONFIG_PCI) 5065e918a98SKim Phillips #define CONFIG_CMD_PCI 5075e918a98SKim Phillips #endif 5085e918a98SKim Phillips 5096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #if defined(CONFIG_SYS_RAMBOOT) 510bdab39d3SMike Frysinger #undef CONFIG_CMD_SAVEENV 5115e918a98SKim Phillips #undef CONFIG_CMD_LOADS 5125e918a98SKim Phillips #endif 5135e918a98SKim Phillips 5145e918a98SKim Phillips #define CONFIG_CMDLINE_EDITING 1 /* add command line history */ 5155e918a98SKim Phillips 5165e918a98SKim Phillips #undef CONFIG_WATCHDOG /* watchdog disabled */ 5175e918a98SKim Phillips 518*c9646ed7SAnton Vorontsov #define CONFIG_MMC 1 519*c9646ed7SAnton Vorontsov 520*c9646ed7SAnton Vorontsov #ifdef CONFIG_MMC 521*c9646ed7SAnton Vorontsov #define CONFIG_FSL_ESDHC 522*c9646ed7SAnton Vorontsov #define CONFIG_SYS_FSL_ESDHC_ADDR CONFIG_SYS_MPC83xx_ESDHC_ADDR 523*c9646ed7SAnton Vorontsov #define CONFIG_CMD_MMC 524*c9646ed7SAnton Vorontsov #define CONFIG_GENERIC_MMC 525*c9646ed7SAnton Vorontsov #define CONFIG_CMD_EXT2 526*c9646ed7SAnton Vorontsov #define CONFIG_CMD_FAT 527*c9646ed7SAnton Vorontsov #define CONFIG_DOS_PARTITION 528*c9646ed7SAnton Vorontsov #endif 529*c9646ed7SAnton Vorontsov 5305e918a98SKim Phillips /* 5315e918a98SKim Phillips * Miscellaneous configurable options 5325e918a98SKim Phillips */ 5336d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP /* undef to save memory */ 5346d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 5356d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */ 5365e918a98SKim Phillips 5375e918a98SKim Phillips #if defined(CONFIG_CMD_KGDB) 5386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 5395e918a98SKim Phillips #else 5406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 5415e918a98SKim Phillips #endif 5425e918a98SKim Phillips 5436d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) /* Print Buffer Size */ 5446d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 5456d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot Argument Buffer Size */ 5466d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HZ 1000 /* decrementer freq: 1ms ticks */ 5475e918a98SKim Phillips 5485e918a98SKim Phillips /* 5495e918a98SKim Phillips * For booting Linux, the board info and command line data 5505e918a98SKim Phillips * have to be in the first 8 MB of memory, since this is 5515e918a98SKim Phillips * the maximum mapped by the Linux kernel during initialization. 5525e918a98SKim Phillips */ 5536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BOOTMAPSZ (8 << 20) /* Initial Memory map for Linux */ 5545e918a98SKim Phillips 5555e918a98SKim Phillips /* 5565e918a98SKim Phillips * Core HID Setup 5575e918a98SKim Phillips */ 5586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID0_INIT 0x000000000 5596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID0_FINAL HID0_ENABLE_MACHINE_CHECK 5606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID2 HID2_HBE 5615e918a98SKim Phillips 5625e918a98SKim Phillips /* 5635e918a98SKim Phillips * MMU Setup 5645e918a98SKim Phillips */ 5655e918a98SKim Phillips 56631d82672SBecky Bruce #define CONFIG_HIGH_BATS 1 /* High BATs supported */ 56731d82672SBecky Bruce 5685e918a98SKim Phillips /* DDR: cache cacheable */ 5696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_LOWER CONFIG_SYS_SDRAM_BASE 5706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_UPPER (CONFIG_SYS_SDRAM_BASE + 0x10000000) 5715e918a98SKim Phillips 5726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_LOWER | BATL_PP_10 | BATL_MEMCOHERENCE) 5736d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_LOWER | BATU_BL_256M | BATU_VS | BATU_VP) 5746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 5756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 5765e918a98SKim Phillips 5776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT1L (CONFIG_SYS_SDRAM_UPPER | BATL_PP_10 | BATL_MEMCOHERENCE) 5786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT1U (CONFIG_SYS_SDRAM_UPPER | BATU_BL_256M | BATU_VS | BATU_VP) 5796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 5806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 5815e918a98SKim Phillips 5825e918a98SKim Phillips /* IMMRBAR, PCI IO and NAND: cache-inhibit and guarded */ 5836d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT2L (CONFIG_SYS_IMMR | BATL_PP_10 | \ 5845e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 5856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT2U (CONFIG_SYS_IMMR | BATU_BL_8M | BATU_VS | BATU_VP) 5866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 5876d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 5885e918a98SKim Phillips 5895e918a98SKim Phillips /* L2 Switch: cache-inhibit and guarded */ 5906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT3L (CONFIG_SYS_VSC7385_BASE | BATL_PP_10 | \ 5915e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 5926d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT3U (CONFIG_SYS_VSC7385_BASE | BATU_BL_128K | BATU_VS | BATU_VP) 5936d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 5946d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 5955e918a98SKim Phillips 5965e918a98SKim Phillips /* FLASH: icache cacheable, but dcache-inhibit and guarded */ 5976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT4L (CONFIG_SYS_FLASH_BASE | BATL_PP_10 | BATL_MEMCOHERENCE) 5986d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT4U (CONFIG_SYS_FLASH_BASE | BATU_BL_32M | BATU_VS | BATU_VP) 5996d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT4L (CONFIG_SYS_FLASH_BASE | BATL_PP_10 | \ 6005e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 6016d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 6025e918a98SKim Phillips 6035e918a98SKim Phillips /* Stack in dcache: cacheable, no memory coherence */ 6046d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT5L (CONFIG_SYS_INIT_RAM_ADDR | BATL_PP_10) 6056d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT5U (CONFIG_SYS_INIT_RAM_ADDR | BATU_BL_128K | BATU_VS | BATU_VP) 6066d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 6076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 6085e918a98SKim Phillips 6095e918a98SKim Phillips #ifdef CONFIG_PCI 6105e918a98SKim Phillips /* PCI MEM space: cacheable */ 6116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6L (CONFIG_SYS_PCI_MEM_PHYS | BATL_PP_10 | BATL_MEMCOHERENCE) 6126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6U (CONFIG_SYS_PCI_MEM_PHYS | BATU_BL_256M | BATU_VS | BATU_VP) 6136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 6146d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 6155e918a98SKim Phillips /* PCI MMIO space: cache-inhibit and guarded */ 6166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7L (CONFIG_SYS_PCI_MMIO_PHYS | BATL_PP_10 | \ 6175e918a98SKim Phillips BATL_CACHEINHIBIT | BATL_GUARDEDSTORAGE) 6186d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7U (CONFIG_SYS_PCI_MMIO_PHYS | BATU_BL_256M | BATU_VS | BATU_VP) 6196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 6206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 6215e918a98SKim Phillips #else 6226d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6L (0) 6236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6U (0) 6246d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7L (0) 6256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7U (0) 6266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 6276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 6286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 6296d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 6305e918a98SKim Phillips #endif 6315e918a98SKim Phillips 6325e918a98SKim Phillips /* 6335e918a98SKim Phillips * Internal Definitions 6345e918a98SKim Phillips * 6355e918a98SKim Phillips * Boot Flags 6365e918a98SKim Phillips */ 6375e918a98SKim Phillips #define BOOTFLAG_COLD 0x01 /* Normal Power-On: Boot from FLASH */ 6385e918a98SKim Phillips #define BOOTFLAG_WARM 0x02 /* Software reboot */ 6395e918a98SKim Phillips 6405e918a98SKim Phillips #if defined(CONFIG_CMD_KGDB) 6415e918a98SKim Phillips #define CONFIG_KGDB_BAUDRATE 230400 /* speed of kgdb serial port */ 6425e918a98SKim Phillips #define CONFIG_KGDB_SER_INDEX 2 /* which serial port to use */ 6435e918a98SKim Phillips #endif 6445e918a98SKim Phillips 6455e918a98SKim Phillips /* 6465e918a98SKim Phillips * Environment Configuration 6475e918a98SKim Phillips */ 6485e918a98SKim Phillips #define CONFIG_ENV_OVERWRITE 6495e918a98SKim Phillips 65089c7784eSTimur Tabi #ifdef CONFIG_HAS_ETH0 6515e918a98SKim Phillips #define CONFIG_ETHADDR 00:04:9f:ef:04:01 65289c7784eSTimur Tabi #endif 65389c7784eSTimur Tabi 65489c7784eSTimur Tabi #ifdef CONFIG_HAS_ETH1 6555e918a98SKim Phillips #define CONFIG_ETH1ADDR 00:04:9f:ef:04:02 65689c7784eSTimur Tabi #endif 6575e918a98SKim Phillips 65818e69a35SAnton Vorontsov #define CONFIG_HAS_FSL_DR_USB 65918e69a35SAnton Vorontsov 6605e918a98SKim Phillips #define CONFIG_IPADDR 10.0.0.2 6615e918a98SKim Phillips #define CONFIG_SERVERIP 10.0.0.1 6625e918a98SKim Phillips #define CONFIG_GATEWAYIP 10.0.0.1 6635e918a98SKim Phillips #define CONFIG_NETMASK 255.0.0.0 6645e918a98SKim Phillips #define CONFIG_NETDEV eth1 6655e918a98SKim Phillips 6665e918a98SKim Phillips #define CONFIG_HOSTNAME mpc837x_rdb 6675e918a98SKim Phillips #define CONFIG_ROOTPATH /nfsroot 6685e918a98SKim Phillips #define CONFIG_RAMDISKFILE rootfs.ext2.gz.uboot 6695e918a98SKim Phillips #define CONFIG_BOOTFILE uImage 6705e918a98SKim Phillips #define CONFIG_UBOOTPATH u-boot.bin /* U-Boot image on TFTP server */ 671270fe261SKim Phillips #define CONFIG_FDTFILE mpc8379_rdb.dtb 6725e918a98SKim Phillips 673b2115757SKim Phillips #define CONFIG_LOADADDR 500000 /* default location for tftp and bootm */ 6747fd0bea2SKim Phillips #define CONFIG_BOOTDELAY 6 /* -1 disables auto-boot */ 6755e918a98SKim Phillips #define CONFIG_BAUDRATE 115200 6765e918a98SKim Phillips 6775e918a98SKim Phillips #define XMK_STR(x) #x 6785e918a98SKim Phillips #define MK_STR(x) XMK_STR(x) 6795e918a98SKim Phillips 6805e918a98SKim Phillips #define CONFIG_EXTRA_ENV_SETTINGS \ 6815e918a98SKim Phillips "netdev=" MK_STR(CONFIG_NETDEV) "\0" \ 6825e918a98SKim Phillips "uboot=" MK_STR(CONFIG_UBOOTPATH) "\0" \ 6835e918a98SKim Phillips "tftpflash=tftp $loadaddr $uboot;" \ 6845e918a98SKim Phillips "protect off " MK_STR(TEXT_BASE) " +$filesize; " \ 6855e918a98SKim Phillips "erase " MK_STR(TEXT_BASE) " +$filesize; " \ 6865e918a98SKim Phillips "cp.b $loadaddr " MK_STR(TEXT_BASE) " $filesize; " \ 6875e918a98SKim Phillips "protect on " MK_STR(TEXT_BASE) " +$filesize; " \ 6885e918a98SKim Phillips "cmp.b $loadaddr " MK_STR(TEXT_BASE) " $filesize\0" \ 6895e918a98SKim Phillips "fdtaddr=400000\0" \ 6905e918a98SKim Phillips "fdtfile=" MK_STR(CONFIG_FDTFILE) "\0" \ 6915e918a98SKim Phillips "ramdiskaddr=1000000\0" \ 6925e918a98SKim Phillips "ramdiskfile=" MK_STR(CONFIG_RAMDISKFILE) "\0" \ 6935e918a98SKim Phillips "console=ttyS0\0" \ 6945e918a98SKim Phillips "setbootargs=setenv bootargs " \ 6955e918a98SKim Phillips "root=$rootdev rw console=$console,$baudrate $othbootargs\0" \ 6965e918a98SKim Phillips "setipargs=setenv bootargs nfsroot=$serverip:$rootpath " \ 6975e918a98SKim Phillips "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ 6985e918a98SKim Phillips "root=$rootdev rw console=$console,$baudrate $othbootargs\0" 6995e918a98SKim Phillips 7005e918a98SKim Phillips #define CONFIG_NFSBOOTCOMMAND \ 7015e918a98SKim Phillips "setenv rootdev /dev/nfs;" \ 7025e918a98SKim Phillips "run setbootargs;" \ 7035e918a98SKim Phillips "run setipargs;" \ 7045e918a98SKim Phillips "tftp $loadaddr $bootfile;" \ 7055e918a98SKim Phillips "tftp $fdtaddr $fdtfile;" \ 7065e918a98SKim Phillips "bootm $loadaddr - $fdtaddr" 7075e918a98SKim Phillips 7085e918a98SKim Phillips #define CONFIG_RAMBOOTCOMMAND \ 7095e918a98SKim Phillips "setenv rootdev /dev/ram;" \ 7105e918a98SKim Phillips "run setbootargs;" \ 7115e918a98SKim Phillips "tftp $ramdiskaddr $ramdiskfile;" \ 7125e918a98SKim Phillips "tftp $loadaddr $bootfile;" \ 7135e918a98SKim Phillips "tftp $fdtaddr $fdtfile;" \ 7145e918a98SKim Phillips "bootm $loadaddr $ramdiskaddr $fdtaddr" 7155e918a98SKim Phillips 7165e918a98SKim Phillips #undef MK_STR 7175e918a98SKim Phillips #undef XMK_STR 7185e918a98SKim Phillips 7195e918a98SKim Phillips #endif /* __CONFIG_H */ 720