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 332ae18241SWolfgang Denk #define CONFIG_SYS_TEXT_BASE 0xFE000000 342ae18241SWolfgang Denk 355e918a98SKim Phillips #define CONFIG_PCI 1 365e918a98SKim Phillips 372bd7460eSAnton Vorontsov #define CONFIG_BOARD_EARLY_INIT_F 3889c7784eSTimur Tabi #define CONFIG_MISC_INIT_R 39c9646ed7SAnton Vorontsov #define CONFIG_HWCONFIG 4089c7784eSTimur Tabi 4189c7784eSTimur Tabi /* 4289c7784eSTimur Tabi * On-board devices 4389c7784eSTimur Tabi */ 4489c7784eSTimur Tabi #define CONFIG_TSEC_ENET /* TSEC Ethernet support */ 4589c7784eSTimur Tabi #define CONFIG_VSC7385_ENET 4689c7784eSTimur Tabi 475e918a98SKim Phillips /* 485e918a98SKim Phillips * System Clock Setup 495e918a98SKim Phillips */ 505e918a98SKim Phillips #ifdef CONFIG_PCISLAVE 515e918a98SKim Phillips #define CONFIG_83XX_PCICLK 66666667 /* in HZ */ 525e918a98SKim Phillips #else 535e918a98SKim Phillips #define CONFIG_83XX_CLKIN 66666667 /* in Hz */ 54be9b56dfSKim Phillips #define CONFIG_PCIE 555e918a98SKim Phillips #endif 565e918a98SKim Phillips 575e918a98SKim Phillips #ifndef CONFIG_SYS_CLK_FREQ 585e918a98SKim Phillips #define CONFIG_SYS_CLK_FREQ CONFIG_83XX_CLKIN 595e918a98SKim Phillips #endif 605e918a98SKim Phillips 615e918a98SKim Phillips /* 625e918a98SKim Phillips * Hardware Reset Configuration Word 635e918a98SKim Phillips */ 646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_LOW (\ 655e918a98SKim Phillips HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ 665e918a98SKim Phillips HRCWL_DDR_TO_SCB_CLK_1X1 |\ 675e918a98SKim Phillips HRCWL_SVCOD_DIV_2 |\ 685e918a98SKim Phillips HRCWL_CSB_TO_CLKIN_5X1 |\ 695e918a98SKim Phillips HRCWL_CORE_TO_CSB_2X1) 705e918a98SKim Phillips 715e918a98SKim Phillips #ifdef CONFIG_PCISLAVE 726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 735e918a98SKim Phillips HRCWH_PCI_AGENT |\ 745e918a98SKim Phillips HRCWH_PCI1_ARBITER_DISABLE |\ 755e918a98SKim Phillips HRCWH_CORE_ENABLE |\ 765e918a98SKim Phillips HRCWH_FROM_0XFFF00100 |\ 775e918a98SKim Phillips HRCWH_BOOTSEQ_DISABLE |\ 785e918a98SKim Phillips HRCWH_SW_WATCHDOG_DISABLE |\ 795e918a98SKim Phillips HRCWH_ROM_LOC_LOCAL_16BIT |\ 805e918a98SKim Phillips HRCWH_RL_EXT_LEGACY |\ 815e918a98SKim Phillips HRCWH_TSEC1M_IN_RGMII |\ 825e918a98SKim Phillips HRCWH_TSEC2M_IN_RGMII |\ 835e918a98SKim Phillips HRCWH_BIG_ENDIAN |\ 845e918a98SKim Phillips HRCWH_LDP_CLEAR) 855e918a98SKim Phillips #else 866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HRCW_HIGH (\ 875e918a98SKim Phillips HRCWH_PCI_HOST |\ 885e918a98SKim Phillips HRCWH_PCI1_ARBITER_ENABLE |\ 895e918a98SKim Phillips HRCWH_CORE_ENABLE |\ 905e918a98SKim Phillips HRCWH_FROM_0X00000100 |\ 915e918a98SKim Phillips HRCWH_BOOTSEQ_DISABLE |\ 925e918a98SKim Phillips HRCWH_SW_WATCHDOG_DISABLE |\ 935e918a98SKim Phillips HRCWH_ROM_LOC_LOCAL_16BIT |\ 945e918a98SKim Phillips HRCWH_RL_EXT_LEGACY |\ 955e918a98SKim Phillips HRCWH_TSEC1M_IN_RGMII |\ 965e918a98SKim Phillips HRCWH_TSEC2M_IN_RGMII |\ 975e918a98SKim Phillips HRCWH_BIG_ENDIAN |\ 985e918a98SKim Phillips HRCWH_LDP_CLEAR) 995e918a98SKim Phillips #endif 1005e918a98SKim Phillips 1016d0f6bcfSJean-Christophe PLAGNIOL-VILLARD /* System performance - define the value i.e. CONFIG_SYS_XXX 1025e918a98SKim Phillips */ 1035e918a98SKim Phillips 1045e918a98SKim Phillips /* Arbiter Configuration Register */ 1056d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ACR_PIPE_DEP 3 /* Arbiter pipeline depth (0-3) */ 1066d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_ACR_RPTCNT 3 /* Arbiter repeat count (0-7) */ 1075e918a98SKim Phillips 1085e918a98SKim Phillips /* System Priority Control Regsiter */ 1096d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SPCR_TSECEP 3 /* eTSEC1&2 emergency priority (0-3) */ 1105e918a98SKim Phillips 1115e918a98SKim Phillips /* System Clock Configuration Register */ 1126d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_TSEC1CM 1 /* eTSEC1 clock mode (0-3) */ 1136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_TSEC2CM 1 /* eTSEC2 clock mode (0-3) */ 1146d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SCCR_SATACM SCCR_SATACM_2 /* SATA1-4 clock mode (0-3) */ 1155e918a98SKim Phillips 1165e918a98SKim Phillips /* 1175e918a98SKim Phillips * System IO Config 1185e918a98SKim Phillips */ 1196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SICRH 0x08200000 1206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SICRL 0x00000000 1215e918a98SKim Phillips 1225e918a98SKim Phillips /* 1235e918a98SKim Phillips * Output Buffer Impedance 1245e918a98SKim Phillips */ 1256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OBIR 0x30100000 1265e918a98SKim Phillips 1275e918a98SKim Phillips /* 1285e918a98SKim Phillips * IMMR new address 1295e918a98SKim Phillips */ 1306d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IMMR 0xE0000000 1315e918a98SKim Phillips 1325e918a98SKim Phillips /* 13389c7784eSTimur Tabi * Device configurations 13489c7784eSTimur Tabi */ 13589c7784eSTimur Tabi 13689c7784eSTimur Tabi /* Vitesse 7385 */ 13789c7784eSTimur Tabi 13889c7784eSTimur Tabi #ifdef CONFIG_VSC7385_ENET 13989c7784eSTimur Tabi 14089c7784eSTimur Tabi #define CONFIG_TSEC2 14189c7784eSTimur Tabi 14289c7784eSTimur Tabi /* The flash address and size of the VSC7385 firmware image */ 14389c7784eSTimur Tabi #define CONFIG_VSC7385_IMAGE 0xFE7FE000 14489c7784eSTimur Tabi #define CONFIG_VSC7385_IMAGE_SIZE 8192 14589c7784eSTimur Tabi 14689c7784eSTimur Tabi #endif 14789c7784eSTimur Tabi 14889c7784eSTimur Tabi /* 1495e918a98SKim Phillips * DDR Setup 1505e918a98SKim Phillips */ 1516d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_BASE 0x00000000 /* DDR is system memory */ 1526d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 1536d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 1546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CLK_CNTL 0x03000000 1556d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_83XX_DDR_USES_CS0 1565e918a98SKim Phillips 1576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDRCDR_VALUE (DDRCDR_DHC_EN | DDRCDR_ODT | DDRCDR_Q_DRN) 1585e918a98SKim Phillips 1595e918a98SKim Phillips #undef CONFIG_DDR_ECC /* support DDR ECC function */ 1605e918a98SKim Phillips #undef CONFIG_DDR_ECC_CMD /* Use DDR ECC user commands */ 1615e918a98SKim Phillips 1625e918a98SKim Phillips #undef CONFIG_NEVER_ASSERT_ODT_TO_CPU /* Never assert ODT to internal IOs */ 1635e918a98SKim Phillips 1645e918a98SKim Phillips /* 1655e918a98SKim Phillips * Manually set up DDR parameters 1665e918a98SKim Phillips */ 1676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SIZE 256 /* MB */ 1686d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_CS0_BNDS 0x0000000f 169*2fef4020SJoe Hershberger #define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN \ 170*2fef4020SJoe Hershberger | CSCONFIG_ODT_WR_ONLY_CURRENT \ 171*2fef4020SJoe Hershberger | CSCONFIG_ROW_BIT_13 \ 172*2fef4020SJoe Hershberger | CSCONFIG_COL_BIT_10) 1735e918a98SKim Phillips 1746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_3 0x00000000 1756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_0 ((0 << TIMING_CFG0_RWT_SHIFT) \ 1765e918a98SKim Phillips | (0 << TIMING_CFG0_WRT_SHIFT) \ 1775e918a98SKim Phillips | (0 << TIMING_CFG0_RRT_SHIFT) \ 1785e918a98SKim Phillips | (0 << TIMING_CFG0_WWT_SHIFT) \ 1795e918a98SKim Phillips | (2 << TIMING_CFG0_ACT_PD_EXIT_SHIFT) \ 1805e918a98SKim Phillips | (6 << TIMING_CFG0_PRE_PD_EXIT_SHIFT) \ 1815e918a98SKim Phillips | (8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT) \ 1825e918a98SKim Phillips | (2 << TIMING_CFG0_MRS_CYC_SHIFT)) 1835e918a98SKim Phillips /* 0x00260802 */ /* DDR400 */ 1846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_TIMING_1 ((3 << TIMING_CFG1_PRETOACT_SHIFT) \ 1855e918a98SKim Phillips | (9 << TIMING_CFG1_ACTTOPRE_SHIFT) \ 1865e918a98SKim Phillips | (3 << TIMING_CFG1_ACTTORW_SHIFT) \ 1875e918a98SKim Phillips | (7 << TIMING_CFG1_CASLAT_SHIFT) \ 1885e918a98SKim Phillips | (13 << TIMING_CFG1_REFREC_SHIFT) \ 1895e918a98SKim Phillips | (3 << TIMING_CFG1_WRREC_SHIFT) \ 1905e918a98SKim Phillips | (2 << TIMING_CFG1_ACTTOACT_SHIFT) \ 1915e918a98SKim Phillips | (2 << TIMING_CFG1_WRTORD_SHIFT)) 1925e918a98SKim Phillips /* 0x3937d322 */ 193*2fef4020SJoe Hershberger #define CONFIG_SYS_DDR_TIMING_2 ((0 << TIMING_CFG2_ADD_LAT_SHIFT) \ 194*2fef4020SJoe Hershberger | (5 << TIMING_CFG2_CPO_SHIFT) \ 195*2fef4020SJoe Hershberger | (3 << TIMING_CFG2_WR_LAT_DELAY_SHIFT) \ 196*2fef4020SJoe Hershberger | (2 << TIMING_CFG2_RD_TO_PRE_SHIFT) \ 197*2fef4020SJoe Hershberger | (3 << TIMING_CFG2_WR_DATA_DELAY_SHIFT) \ 198*2fef4020SJoe Hershberger | (3 << TIMING_CFG2_CKE_PLS_SHIFT) \ 199*2fef4020SJoe Hershberger | (8 << TIMING_CFG2_FOUR_ACT_SHIFT)) 200*2fef4020SJoe Hershberger /* 0x02984cc8 */ 2015e918a98SKim Phillips 2028eceeb7fSKim Phillips #define CONFIG_SYS_DDR_INTERVAL ((1024 << SDRAM_INTERVAL_REFINT_SHIFT) \ 2038eceeb7fSKim Phillips | (0 << SDRAM_INTERVAL_BSTOPRE_SHIFT)) 2045e918a98SKim Phillips /* 0x06090100 */ 2055e918a98SKim Phillips 2065e918a98SKim Phillips #if defined(CONFIG_DDR_2T_TIMING) 2076d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SREN \ 208*2fef4020SJoe Hershberger | SDRAM_CFG_SDRAM_TYPE_DDR2 \ 209*2fef4020SJoe Hershberger | SDRAM_CFG_32_BE \ 210*2fef4020SJoe Hershberger | SDRAM_CFG_2T_EN) 211*2fef4020SJoe Hershberger /* 0x43088000 */ 2125e918a98SKim Phillips #else 2136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG (SDRAM_CFG_SREN \ 214*2fef4020SJoe Hershberger | SDRAM_CFG_SDRAM_TYPE_DDR2) 2155e918a98SKim Phillips /* 0x43000000 */ 2165e918a98SKim Phillips #endif 2176d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_SDRAM_CFG2 0x00001000 /* 1 posted refresh */ 2188eceeb7fSKim Phillips #define CONFIG_SYS_DDR_MODE ((0x0406 << SDRAM_MODE_ESD_SHIFT) \ 2195e918a98SKim Phillips | (0x0442 << SDRAM_MODE_SD_SHIFT)) 2205e918a98SKim Phillips /* 0x04400442 */ /* DDR400 */ 2216d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DDR_MODE2 0x00000000 2225e918a98SKim Phillips 2235e918a98SKim Phillips /* 2245e918a98SKim Phillips * Memory test 2255e918a98SKim Phillips */ 2266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_DRAM_TEST /* memory test, takes time */ 2276d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_START 0x00040000 /* memtest region */ 2286d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MEMTEST_END 0x0ef70010 2295e918a98SKim Phillips 2305e918a98SKim Phillips /* 2315e918a98SKim Phillips * The reserved memory 2325e918a98SKim Phillips */ 23314d0a02aSWolfgang Denk #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 2345e918a98SKim Phillips 2356d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) 2366d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_RAMBOOT 2375e918a98SKim Phillips #else 2386d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_RAMBOOT 2395e918a98SKim Phillips #endif 2405e918a98SKim Phillips 2414a9932a4SKim Phillips #define CONFIG_SYS_MONITOR_LEN (384 * 1024) /* Reserve 384 kB for Mon */ 2426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MALLOC_LEN (512 * 1024) /* Reserved for malloc */ 2435e918a98SKim Phillips 2445e918a98SKim Phillips /* 2455e918a98SKim Phillips * Initial RAM Base Address Setup 2465e918a98SKim Phillips */ 2476d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_LOCK 1 2486d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_INIT_RAM_ADDR 0xE6000000 /* Initial RAM address */ 249553f0982SWolfgang Denk #define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* Size of used area in RAM */ 2505afe9722SJoe Hershberger #define CONFIG_SYS_GBL_DATA_OFFSET \ 2515afe9722SJoe Hershberger (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 2525e918a98SKim Phillips 2535e918a98SKim Phillips /* 2545e918a98SKim Phillips * Local Bus Configuration & Clock Setup 2555e918a98SKim Phillips */ 256c7190f02SKim Phillips #define CONFIG_SYS_LCRR_DBYP LCRR_DBYP 257c7190f02SKim Phillips #define CONFIG_SYS_LCRR_CLKDIV LCRR_CLKDIV_8 2586d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBC_LBCR 0x00000000 2590914f483SBecky Bruce #define CONFIG_FSL_ELBC 1 2605e918a98SKim Phillips 2615e918a98SKim Phillips /* 2625e918a98SKim Phillips * FLASH on the Local Bus 2635e918a98SKim Phillips */ 2646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_CFI /* use the Common Flash Interface */ 26500b1883aSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 2666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_BASE 0xFE000000 /* FLASH base address */ 2676d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_SIZE 8 /* max FLASH size is 32M */ 2685e918a98SKim Phillips 2696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_PROTECTION 1 /* Use h/w Flash protection. */ 2706d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_EMPTY_INFO /* display empty sectors */ 2716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE /* buffer up multiple bytes */ 2725e918a98SKim Phillips 2735afe9722SJoe Hershberger /* Window base at flash base */ 2745afe9722SJoe Hershberger #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE 2756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR0_PRELIM 0x80000016 /* 8 MB window size */ 2765e918a98SKim Phillips 2775afe9722SJoe Hershberger #define CONFIG_SYS_BR0_PRELIM (CONFIG_SYS_FLASH_BASE \ 2785afe9722SJoe Hershberger | (2 << BR_PS_SHIFT) /* 16 bit port */ \ 2795afe9722SJoe Hershberger | BR_V) /* valid */ 2806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR0_PRELIM (0xFF800000 /* 8 MByte */ \ 2815e918a98SKim Phillips | OR_GPCM_XACS \ 2825e918a98SKim Phillips | OR_GPCM_SCY_9 \ 2835e918a98SKim Phillips | OR_GPCM_EHTR \ 2845e918a98SKim Phillips | OR_GPCM_EAD) 2855e918a98SKim Phillips /* 0xFF806FF7 TODO SLOW 8 MB flash size */ 2865e918a98SKim Phillips 2876d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 2886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAX_FLASH_SECT 256 /* max sectors per device */ 2895e918a98SKim Phillips 2906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #undef CONFIG_SYS_FLASH_CHECKSUM 2916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 2926d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 2935e918a98SKim Phillips 29446a3aeeaSAnton Vorontsov /* 29546a3aeeaSAnton Vorontsov * NAND Flash on the Local Bus 29646a3aeeaSAnton Vorontsov */ 2976d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NAND_BASE 0xE0600000 /* 0xE0600000 */ 2985afe9722SJoe Hershberger #define CONFIG_SYS_BR1_PRELIM (CONFIG_SYS_NAND_BASE \ 2995afe9722SJoe Hershberger | (2 << BR_DECC_SHIFT) /* Use HW ECC */ \ 3005afe9722SJoe Hershberger | BR_PS_8 | /* 8 bit Port */ \ 3015afe9722SJoe Hershberger | BR_MS_FCM | /* MSEL = FCM */ \ 3025afe9722SJoe Hershberger | BR_V) /* valid */ 3035afe9722SJoe Hershberger #define CONFIG_SYS_OR1_PRELIM (0xFFFF8000 /* length 32K */ \ 3045afe9722SJoe Hershberger | OR_FCM_CSCT \ 3055afe9722SJoe Hershberger | OR_FCM_CST \ 3065afe9722SJoe Hershberger | OR_FCM_CHT \ 3075afe9722SJoe Hershberger | OR_FCM_SCY_1 \ 3085afe9722SJoe Hershberger | OR_FCM_TRLX \ 3095afe9722SJoe Hershberger | OR_FCM_EHTR) 3106d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWBAR1_PRELIM CONFIG_SYS_NAND_BASE 3116d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR1_PRELIM 0x8000000E /* 32KB */ 31246a3aeeaSAnton Vorontsov 31389c7784eSTimur Tabi /* Vitesse 7385 */ 31489c7784eSTimur Tabi 3156d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_VSC7385_BASE 0xF0000000 3165e918a98SKim Phillips 31789c7784eSTimur Tabi #ifdef CONFIG_VSC7385_ENET 31889c7784eSTimur Tabi 3196d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BR2_PRELIM 0xf0000801 /* Base address */ 3206d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_OR2_PRELIM 0xfffe09ff /* 128K bytes*/ 3215afe9722SJoe Hershberger /* Access Base */ 3225afe9722SJoe Hershberger #define CONFIG_SYS_LBLAWBAR2_PRELIM CONFIG_SYS_VSC7385_BASE 3236d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LBLAWAR2_PRELIM 0x80000010 /* Access Size 128K */ 3245e918a98SKim Phillips 32589c7784eSTimur Tabi #endif 32689c7784eSTimur Tabi 3275e918a98SKim Phillips /* 3285e918a98SKim Phillips * Serial Port 3295e918a98SKim Phillips */ 3305e918a98SKim Phillips #define CONFIG_CONS_INDEX 1 3316d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550 3326d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_SERIAL 3336d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_REG_SIZE 1 3346d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 3355e918a98SKim Phillips 3366d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_BAUDRATE_TABLE \ 3375e918a98SKim Phillips {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 3385e918a98SKim Phillips 3396d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500) 3406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600) 3415e918a98SKim Phillips 3422bd7460eSAnton Vorontsov /* SERDES */ 3432bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES 3442bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES1 0xe3000 3452bd7460eSAnton Vorontsov #define CONFIG_FSL_SERDES2 0xe3100 3462bd7460eSAnton Vorontsov 3475e918a98SKim Phillips /* Use the HUSH parser */ 3486d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HUSH_PARSER 3496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifdef CONFIG_SYS_HUSH_PARSER 3506d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 3515e918a98SKim Phillips #endif 3525e918a98SKim Phillips 3535e918a98SKim Phillips /* Pass open firmware flat tree */ 3545e918a98SKim Phillips #define CONFIG_OF_LIBFDT 1 3555e918a98SKim Phillips #define CONFIG_OF_BOARD_SETUP 1 356aabce7fbSAnton Vorontsov #define CONFIG_OF_STDOUT_VIA_ALIAS 1 3575e918a98SKim Phillips 3585e918a98SKim Phillips /* I2C */ 3595e918a98SKim Phillips #define CONFIG_HARD_I2C /* I2C with hardware support */ 3605e918a98SKim Phillips #undef CONFIG_SOFT_I2C /* I2C bit-banged */ 3615e918a98SKim Phillips #define CONFIG_FSL_I2C 3626d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_SPEED 400000 /* I2C speed and slave address */ 3636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_SLAVE 0x7F 3646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_NOPROBES {0x51} /* Don't probe these addrs */ 3656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_OFFSET 0x3000 3666d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C2_OFFSET 0x3100 3675e918a98SKim Phillips 3685e918a98SKim Phillips /* 3695e918a98SKim Phillips * Config on-board RTC 3705e918a98SKim Phillips */ 3715e918a98SKim Phillips #define CONFIG_RTC_DS1374 /* use ds1374 rtc via i2c */ 3726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_I2C_RTC_ADDR 0x68 /* at address 0x68 */ 3735e918a98SKim Phillips 3745e918a98SKim Phillips /* 3755e918a98SKim Phillips * General PCI 3765e918a98SKim Phillips * Addresses are mapped 1-1. 3775e918a98SKim Phillips */ 3786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_BASE 0x80000000 3796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_PHYS CONFIG_SYS_PCI_MEM_BASE 3806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MEM_SIZE 0x10000000 /* 256M */ 3816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_BASE 0x90000000 3826d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_PHYS CONFIG_SYS_PCI_MMIO_BASE 3836d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_MMIO_SIZE 0x10000000 /* 256M */ 3846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_BASE 0x00000000 3856d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_PHYS 0xE0300000 3866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_IO_SIZE 0x100000 /* 1M */ 3875e918a98SKim Phillips 3886d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_LOCAL CONFIG_SYS_SDRAM_BASE 3896d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_BUS 0x00000000 3906d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SLV_MEM_SIZE 0x80000000 3915e918a98SKim Phillips 3927e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_BASE 0xA0000000 3937e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_CFG_BASE 0xA0000000 3947e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_CFG_SIZE 0x08000000 3957e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_BASE 0xA8000000 3967e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_PHYS 0xA8000000 3977e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_MEM_SIZE 0x10000000 3987e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_BASE 0x00000000 3997e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_PHYS 0xB8000000 4007e915580SAnton Vorontsov #define CONFIG_SYS_PCIE1_IO_SIZE 0x00800000 4017e915580SAnton Vorontsov 4027e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_BASE 0xC0000000 4037e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_CFG_BASE 0xC0000000 4047e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_CFG_SIZE 0x08000000 4057e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_BASE 0xC8000000 4067e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_PHYS 0xC8000000 4077e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_MEM_SIZE 0x10000000 4087e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_BASE 0x00000000 4097e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_PHYS 0xD8000000 4107e915580SAnton Vorontsov #define CONFIG_SYS_PCIE2_IO_SIZE 0x00800000 4117e915580SAnton Vorontsov 4125e918a98SKim Phillips #ifdef CONFIG_PCI 4135e918a98SKim Phillips #define CONFIG_PCI_PNP /* do pci plug-and-play */ 4145e918a98SKim Phillips 4155e918a98SKim Phillips #undef CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ 4166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957 /* Freescale */ 4175e918a98SKim Phillips #endif /* CONFIG_PCI */ 4185e918a98SKim Phillips 4195e918a98SKim Phillips /* 4205e918a98SKim Phillips * TSEC 4215e918a98SKim Phillips */ 42289c7784eSTimur Tabi #ifdef CONFIG_TSEC_ENET 4235e918a98SKim Phillips 42489c7784eSTimur Tabi #define CONFIG_GMII /* MII PHY management */ 42589c7784eSTimur Tabi 42689c7784eSTimur Tabi #define CONFIG_TSEC1 42789c7784eSTimur Tabi 42889c7784eSTimur Tabi #ifdef CONFIG_TSEC1 42989c7784eSTimur Tabi #define CONFIG_HAS_ETH0 4305e918a98SKim Phillips #define CONFIG_TSEC1_NAME "TSEC0" 4316d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC1_OFFSET 0x24000 4325e918a98SKim Phillips #define TSEC1_PHY_ADDR 2 4335e918a98SKim Phillips #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 4345e918a98SKim Phillips #define TSEC1_PHYIDX 0 43589c7784eSTimur Tabi #endif 4365e918a98SKim Phillips 43789c7784eSTimur Tabi #ifdef CONFIG_TSEC2 43889c7784eSTimur Tabi #define CONFIG_HAS_ETH1 43989c7784eSTimur Tabi #define CONFIG_TSEC2_NAME "TSEC1" 4406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_TSEC2_OFFSET 0x25000 44189c7784eSTimur Tabi #define TSEC2_PHY_ADDR 0x1c 44289c7784eSTimur Tabi #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 44389c7784eSTimur Tabi #define TSEC2_PHYIDX 0 44489c7784eSTimur Tabi #endif 4455e918a98SKim Phillips 4465e918a98SKim Phillips /* Options are: TSEC[0-1] */ 4475e918a98SKim Phillips #define CONFIG_ETHPRIME "TSEC0" 4485e918a98SKim Phillips 44989c7784eSTimur Tabi #endif 45089c7784eSTimur Tabi 4515e918a98SKim Phillips /* 452730e7929SKim Phillips * SATA 453730e7929SKim Phillips */ 454730e7929SKim Phillips #define CONFIG_LIBATA 455730e7929SKim Phillips #define CONFIG_FSL_SATA 456730e7929SKim Phillips 4576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA_MAX_DEVICE 2 458730e7929SKim Phillips #define CONFIG_SATA1 4596d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1_OFFSET 0x18000 4606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1 (CONFIG_SYS_IMMR + CONFIG_SYS_SATA1_OFFSET) 4616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA1_FLAGS FLAGS_DMA 462730e7929SKim Phillips #define CONFIG_SATA2 4636d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2_OFFSET 0x19000 4646d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2 (CONFIG_SYS_IMMR + CONFIG_SYS_SATA2_OFFSET) 4656d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SATA2_FLAGS FLAGS_DMA 466730e7929SKim Phillips 467730e7929SKim Phillips #ifdef CONFIG_FSL_SATA 468730e7929SKim Phillips #define CONFIG_LBA48 469730e7929SKim Phillips #define CONFIG_CMD_SATA 470730e7929SKim Phillips #define CONFIG_DOS_PARTITION 471730e7929SKim Phillips #define CONFIG_CMD_EXT2 472730e7929SKim Phillips #endif 473730e7929SKim Phillips 474730e7929SKim Phillips /* 4755e918a98SKim Phillips * Environment 4765e918a98SKim Phillips */ 4776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #ifndef CONFIG_SYS_RAMBOOT 4785a1aceb0SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_IN_FLASH 1 4795afe9722SJoe Hershberger #define CONFIG_ENV_ADDR \ 4805afe9722SJoe Hershberger (CONFIG_SYS_MONITOR_BASE+CONFIG_SYS_MONITOR_LEN) 4810e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K (one sector) for env */ 4820e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE 0x4000 4835e918a98SKim Phillips #else 4846d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_NO_FLASH 1 /* Flash is not usable now */ 48593f6d725SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_IS_NOWHERE 1 /* Store ENV in memory only */ 4866d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE-0x1000) 4870e8d1586SJean-Christophe PLAGNIOL-VILLARD #define CONFIG_ENV_SIZE 0x2000 4885e918a98SKim Phillips #endif 4895e918a98SKim Phillips 4905e918a98SKim Phillips #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ 4916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */ 4925e918a98SKim Phillips 4935e918a98SKim Phillips /* 4945e918a98SKim Phillips * BOOTP options 4955e918a98SKim Phillips */ 4965e918a98SKim Phillips #define CONFIG_BOOTP_BOOTFILESIZE 4975e918a98SKim Phillips #define CONFIG_BOOTP_BOOTPATH 4985e918a98SKim Phillips #define CONFIG_BOOTP_GATEWAY 4995e918a98SKim Phillips #define CONFIG_BOOTP_HOSTNAME 5005e918a98SKim Phillips 5015e918a98SKim Phillips 5025e918a98SKim Phillips /* 5035e918a98SKim Phillips * Command line configuration. 5045e918a98SKim Phillips */ 5055e918a98SKim Phillips #include <config_cmd_default.h> 5065e918a98SKim Phillips 5075e918a98SKim Phillips #define CONFIG_CMD_PING 5085e918a98SKim Phillips #define CONFIG_CMD_I2C 5095e918a98SKim Phillips #define CONFIG_CMD_MII 5105e918a98SKim Phillips #define CONFIG_CMD_DATE 5115e918a98SKim Phillips 5125e918a98SKim Phillips #if defined(CONFIG_PCI) 5135e918a98SKim Phillips #define CONFIG_CMD_PCI 5145e918a98SKim Phillips #endif 5155e918a98SKim Phillips 5166d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #if defined(CONFIG_SYS_RAMBOOT) 517bdab39d3SMike Frysinger #undef CONFIG_CMD_SAVEENV 5185e918a98SKim Phillips #undef CONFIG_CMD_LOADS 5195e918a98SKim Phillips #endif 5205e918a98SKim Phillips 5215e918a98SKim Phillips #define CONFIG_CMDLINE_EDITING 1 /* add command line history */ 522a059e90eSKim Phillips #define CONFIG_AUTO_COMPLETE /* add autocompletion support */ 5235e918a98SKim Phillips 5245e918a98SKim Phillips #undef CONFIG_WATCHDOG /* watchdog disabled */ 5255e918a98SKim Phillips 526c9646ed7SAnton Vorontsov #define CONFIG_MMC 1 527c9646ed7SAnton Vorontsov 528c9646ed7SAnton Vorontsov #ifdef CONFIG_MMC 529c9646ed7SAnton Vorontsov #define CONFIG_FSL_ESDHC 530a6da8b81SChenhui Zhao #define CONFIG_FSL_ESDHC_PIN_MUX 531c9646ed7SAnton Vorontsov #define CONFIG_SYS_FSL_ESDHC_ADDR CONFIG_SYS_MPC83xx_ESDHC_ADDR 532c9646ed7SAnton Vorontsov #define CONFIG_CMD_MMC 533c9646ed7SAnton Vorontsov #define CONFIG_GENERIC_MMC 534c9646ed7SAnton Vorontsov #define CONFIG_CMD_EXT2 535c9646ed7SAnton Vorontsov #define CONFIG_CMD_FAT 536c9646ed7SAnton Vorontsov #define CONFIG_DOS_PARTITION 537c9646ed7SAnton Vorontsov #endif 538c9646ed7SAnton Vorontsov 5395e918a98SKim Phillips /* 5405e918a98SKim Phillips * Miscellaneous configurable options 5415e918a98SKim Phillips */ 5426d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LONGHELP /* undef to save memory */ 5436d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 5446d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */ 5455e918a98SKim Phillips 5465e918a98SKim Phillips #if defined(CONFIG_CMD_KGDB) 5476d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 5485e918a98SKim Phillips #else 5496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 5505e918a98SKim Phillips #endif 5515e918a98SKim Phillips 5525afe9722SJoe Hershberger /* Print Buffer Size */ 5535afe9722SJoe Hershberger #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE+sizeof(CONFIG_SYS_PROMPT)+16) 5546d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 5555afe9722SJoe Hershberger /* Boot Argument Buffer Size */ 5565afe9722SJoe Hershberger #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 5576d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HZ 1000 /* decrementer freq: 1ms ticks */ 5585e918a98SKim Phillips 5595e918a98SKim Phillips /* 5605e918a98SKim Phillips * For booting Linux, the board info and command line data 5619f530d59SIra W. Snyder * have to be in the first 256 MB of memory, since this is 5625e918a98SKim Phillips * the maximum mapped by the Linux kernel during initialization. 5635e918a98SKim Phillips */ 5649f530d59SIra W. Snyder #define CONFIG_SYS_BOOTMAPSZ (256 << 20) /* Initial Memory map for Linux */ 5655e918a98SKim Phillips 5665e918a98SKim Phillips /* 5675e918a98SKim Phillips * Core HID Setup 5685e918a98SKim Phillips */ 5696d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID0_INIT 0x000000000 5705afe9722SJoe Hershberger #define CONFIG_SYS_HID0_FINAL (HID0_ENABLE_MACHINE_CHECK \ 5715afe9722SJoe Hershberger | HID0_ENABLE_INSTRUCTION_CACHE) 5726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_HID2 HID2_HBE 5735e918a98SKim Phillips 5745e918a98SKim Phillips /* 5755e918a98SKim Phillips * MMU Setup 5765e918a98SKim Phillips */ 5775e918a98SKim Phillips 57831d82672SBecky Bruce #define CONFIG_HIGH_BATS 1 /* High BATs supported */ 57931d82672SBecky Bruce 5805e918a98SKim Phillips /* DDR: cache cacheable */ 5816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_LOWER CONFIG_SYS_SDRAM_BASE 5826d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_SDRAM_UPPER (CONFIG_SYS_SDRAM_BASE + 0x10000000) 5835e918a98SKim Phillips 5845afe9722SJoe Hershberger #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_LOWER \ 58572cd4087SJoe Hershberger | BATL_PP_RW \ 5865afe9722SJoe Hershberger | BATL_MEMCOHERENCE) 5875afe9722SJoe Hershberger #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_LOWER \ 5885afe9722SJoe Hershberger | BATU_BL_256M \ 5895afe9722SJoe Hershberger | BATU_VS \ 5905afe9722SJoe Hershberger | BATU_VP) 5916d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 5926d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 5935e918a98SKim Phillips 5945afe9722SJoe Hershberger #define CONFIG_SYS_IBAT1L (CONFIG_SYS_SDRAM_UPPER \ 59572cd4087SJoe Hershberger | BATL_PP_RW \ 5965afe9722SJoe Hershberger | BATL_MEMCOHERENCE) 5975afe9722SJoe Hershberger #define CONFIG_SYS_IBAT1U (CONFIG_SYS_SDRAM_UPPER \ 5985afe9722SJoe Hershberger | BATU_BL_256M \ 5995afe9722SJoe Hershberger | BATU_VS \ 6005afe9722SJoe Hershberger | BATU_VP) 6016d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 6026d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 6035e918a98SKim Phillips 6045e918a98SKim Phillips /* IMMRBAR, PCI IO and NAND: cache-inhibit and guarded */ 6055afe9722SJoe Hershberger #define CONFIG_SYS_IBAT2L (CONFIG_SYS_IMMR \ 60672cd4087SJoe Hershberger | BATL_PP_RW \ 6075afe9722SJoe Hershberger | BATL_CACHEINHIBIT \ 6085afe9722SJoe Hershberger | BATL_GUARDEDSTORAGE) 6095afe9722SJoe Hershberger #define CONFIG_SYS_IBAT2U (CONFIG_SYS_IMMR \ 6105afe9722SJoe Hershberger | BATU_BL_8M \ 6115afe9722SJoe Hershberger | BATU_VS \ 6125afe9722SJoe Hershberger | BATU_VP) 6136d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 6146d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 6155e918a98SKim Phillips 6165e918a98SKim Phillips /* L2 Switch: cache-inhibit and guarded */ 6175afe9722SJoe Hershberger #define CONFIG_SYS_IBAT3L (CONFIG_SYS_VSC7385_BASE \ 61872cd4087SJoe Hershberger | BATL_PP_RW \ 6195afe9722SJoe Hershberger | BATL_CACHEINHIBIT \ 6205afe9722SJoe Hershberger | BATL_GUARDEDSTORAGE) 6215afe9722SJoe Hershberger #define CONFIG_SYS_IBAT3U (CONFIG_SYS_VSC7385_BASE \ 6225afe9722SJoe Hershberger | BATU_BL_128K \ 6235afe9722SJoe Hershberger | BATU_VS \ 6245afe9722SJoe Hershberger | BATU_VP) 6256d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 6266d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 6275e918a98SKim Phillips 6285e918a98SKim Phillips /* FLASH: icache cacheable, but dcache-inhibit and guarded */ 6295afe9722SJoe Hershberger #define CONFIG_SYS_IBAT4L (CONFIG_SYS_FLASH_BASE \ 63072cd4087SJoe Hershberger | BATL_PP_RW \ 6315afe9722SJoe Hershberger | BATL_MEMCOHERENCE) 6325afe9722SJoe Hershberger #define CONFIG_SYS_IBAT4U (CONFIG_SYS_FLASH_BASE \ 6335afe9722SJoe Hershberger | BATU_BL_32M \ 6345afe9722SJoe Hershberger | BATU_VS \ 6355afe9722SJoe Hershberger | BATU_VP) 6365afe9722SJoe Hershberger #define CONFIG_SYS_DBAT4L (CONFIG_SYS_FLASH_BASE \ 63772cd4087SJoe Hershberger | BATL_PP_RW \ 6385afe9722SJoe Hershberger | BATL_CACHEINHIBIT \ 6395afe9722SJoe Hershberger | BATL_GUARDEDSTORAGE) 6406d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 6415e918a98SKim Phillips 6425e918a98SKim Phillips /* Stack in dcache: cacheable, no memory coherence */ 64372cd4087SJoe Hershberger #define CONFIG_SYS_IBAT5L (CONFIG_SYS_INIT_RAM_ADDR | BATL_PP_RW) 6445afe9722SJoe Hershberger #define CONFIG_SYS_IBAT5U (CONFIG_SYS_INIT_RAM_ADDR \ 6455afe9722SJoe Hershberger | BATU_BL_128K \ 6465afe9722SJoe Hershberger | BATU_VS \ 6475afe9722SJoe Hershberger | BATU_VP) 6486d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 6496d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 6505e918a98SKim Phillips 6515e918a98SKim Phillips #ifdef CONFIG_PCI 6525e918a98SKim Phillips /* PCI MEM space: cacheable */ 6535afe9722SJoe Hershberger #define CONFIG_SYS_IBAT6L (CONFIG_SYS_PCI_MEM_PHYS \ 65472cd4087SJoe Hershberger | BATL_PP_RW \ 6555afe9722SJoe Hershberger | BATL_MEMCOHERENCE) 6565afe9722SJoe Hershberger #define CONFIG_SYS_IBAT6U (CONFIG_SYS_PCI_MEM_PHYS \ 6575afe9722SJoe Hershberger | BATU_BL_256M \ 6585afe9722SJoe Hershberger | BATU_VS \ 6595afe9722SJoe Hershberger | BATU_VP) 6606d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 6616d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 6625e918a98SKim Phillips /* PCI MMIO space: cache-inhibit and guarded */ 6635afe9722SJoe Hershberger #define CONFIG_SYS_IBAT7L (CONFIG_SYS_PCI_MMIO_PHYS \ 66472cd4087SJoe Hershberger | BATL_PP_RW \ 6655afe9722SJoe Hershberger | BATL_CACHEINHIBIT \ 6665afe9722SJoe Hershberger | BATL_GUARDEDSTORAGE) 6675afe9722SJoe Hershberger #define CONFIG_SYS_IBAT7U (CONFIG_SYS_PCI_MMIO_PHYS \ 6685afe9722SJoe Hershberger | BATU_BL_256M \ 6695afe9722SJoe Hershberger | BATU_VS \ 6705afe9722SJoe Hershberger | BATU_VP) 6716d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 6726d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 6735e918a98SKim Phillips #else 6746d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6L (0) 6756d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT6U (0) 6766d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7L (0) 6776d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_IBAT7U (0) 6786d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 6796d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 6806d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 6816d0f6bcfSJean-Christophe PLAGNIOL-VILLARD #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 6825e918a98SKim Phillips #endif 6835e918a98SKim Phillips 6845e918a98SKim Phillips #if defined(CONFIG_CMD_KGDB) 6855e918a98SKim Phillips #define CONFIG_KGDB_BAUDRATE 230400 /* speed of kgdb serial port */ 6865e918a98SKim Phillips #define CONFIG_KGDB_SER_INDEX 2 /* which serial port to use */ 6875e918a98SKim Phillips #endif 6885e918a98SKim Phillips 6895e918a98SKim Phillips /* 6905e918a98SKim Phillips * Environment Configuration 6915e918a98SKim Phillips */ 6925e918a98SKim Phillips #define CONFIG_ENV_OVERWRITE 6935e918a98SKim Phillips 69418e69a35SAnton Vorontsov #define CONFIG_HAS_FSL_DR_USB 69518e69a35SAnton Vorontsov 6965afe9722SJoe Hershberger #define CONFIG_NETDEV "eth1" 6975e918a98SKim Phillips 6985e918a98SKim Phillips #define CONFIG_HOSTNAME mpc837x_rdb 6998b3637c6SJoe Hershberger #define CONFIG_ROOTPATH "/nfsroot" 7005afe9722SJoe Hershberger #define CONFIG_RAMDISKFILE "rootfs.ext2.gz.uboot" 701b3f44c21SJoe Hershberger #define CONFIG_BOOTFILE "uImage" 7025afe9722SJoe Hershberger /* U-Boot image on TFTP server */ 7035afe9722SJoe Hershberger #define CONFIG_UBOOTPATH "u-boot.bin" 7045afe9722SJoe Hershberger #define CONFIG_FDTFILE "mpc8379_rdb.dtb" 7055e918a98SKim Phillips 7065afe9722SJoe Hershberger /* default location for tftp and bootm */ 7075afe9722SJoe Hershberger #define CONFIG_LOADADDR 800000 7087fd0bea2SKim Phillips #define CONFIG_BOOTDELAY 6 /* -1 disables auto-boot */ 7095e918a98SKim Phillips #define CONFIG_BAUDRATE 115200 7105e918a98SKim Phillips 7115e918a98SKim Phillips #define XMK_STR(x) #x 7125e918a98SKim Phillips #define MK_STR(x) XMK_STR(x) 7135e918a98SKim Phillips 7145e918a98SKim Phillips #define CONFIG_EXTRA_ENV_SETTINGS \ 7155afe9722SJoe Hershberger "netdev=" CONFIG_NETDEV "\0" \ 7165afe9722SJoe Hershberger "uboot=" CONFIG_UBOOTPATH "\0" \ 7175e918a98SKim Phillips "tftpflash=tftp $loadaddr $uboot;" \ 71814d0a02aSWolfgang Denk "protect off " MK_STR(CONFIG_SYS_TEXT_BASE) " +$filesize; " \ 71914d0a02aSWolfgang Denk "erase " MK_STR(CONFIG_SYS_TEXT_BASE) " +$filesize; " \ 72014d0a02aSWolfgang Denk "cp.b $loadaddr " MK_STR(CONFIG_SYS_TEXT_BASE) " $filesize; " \ 72114d0a02aSWolfgang Denk "protect on " MK_STR(CONFIG_SYS_TEXT_BASE) " +$filesize; " \ 72214d0a02aSWolfgang Denk "cmp.b $loadaddr " MK_STR(CONFIG_SYS_TEXT_BASE) " $filesize\0" \ 72379f516bcSKim Phillips "fdtaddr=780000\0" \ 7245afe9722SJoe Hershberger "fdtfile=" CONFIG_FDTFILE "\0" \ 7255e918a98SKim Phillips "ramdiskaddr=1000000\0" \ 7265afe9722SJoe Hershberger "ramdiskfile=" CONFIG_RAMDISKFILE "\0" \ 7275e918a98SKim Phillips "console=ttyS0\0" \ 7285e918a98SKim Phillips "setbootargs=setenv bootargs " \ 7295e918a98SKim Phillips "root=$rootdev rw console=$console,$baudrate $othbootargs\0" \ 7305e918a98SKim Phillips "setipargs=setenv bootargs nfsroot=$serverip:$rootpath " \ 7315afe9722SJoe Hershberger "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:" \ 7325afe9722SJoe Hershberger "$netdev:off " \ 7335e918a98SKim Phillips "root=$rootdev rw console=$console,$baudrate $othbootargs\0" 7345e918a98SKim Phillips 7355e918a98SKim Phillips #define CONFIG_NFSBOOTCOMMAND \ 7365e918a98SKim Phillips "setenv rootdev /dev/nfs;" \ 7375e918a98SKim Phillips "run setbootargs;" \ 7385e918a98SKim Phillips "run setipargs;" \ 7395e918a98SKim Phillips "tftp $loadaddr $bootfile;" \ 7405e918a98SKim Phillips "tftp $fdtaddr $fdtfile;" \ 7415e918a98SKim Phillips "bootm $loadaddr - $fdtaddr" 7425e918a98SKim Phillips 7435e918a98SKim Phillips #define CONFIG_RAMBOOTCOMMAND \ 7445e918a98SKim Phillips "setenv rootdev /dev/ram;" \ 7455e918a98SKim Phillips "run setbootargs;" \ 7465e918a98SKim Phillips "tftp $ramdiskaddr $ramdiskfile;" \ 7475e918a98SKim Phillips "tftp $loadaddr $bootfile;" \ 7485e918a98SKim Phillips "tftp $fdtaddr $fdtfile;" \ 7495e918a98SKim Phillips "bootm $loadaddr $ramdiskaddr $fdtaddr" 7505e918a98SKim Phillips 7515e918a98SKim Phillips #undef MK_STR 7525e918a98SKim Phillips #undef XMK_STR 7535e918a98SKim Phillips 7545e918a98SKim Phillips #endif /* __CONFIG_H */ 755