1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * Copyright (C) Freescale Semiconductor, Inc. 2006, 2010. 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 5*4882a593Smuzhiyun */ 6*4882a593Smuzhiyun /* 7*4882a593Smuzhiyun * mpc8313epb board configuration file 8*4882a593Smuzhiyun */ 9*4882a593Smuzhiyun 10*4882a593Smuzhiyun #ifndef __CONFIG_H 11*4882a593Smuzhiyun #define __CONFIG_H 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun /* 14*4882a593Smuzhiyun * High Level Configuration Options 15*4882a593Smuzhiyun */ 16*4882a593Smuzhiyun #define CONFIG_E300 1 17*4882a593Smuzhiyun #define CONFIG_MPC831x 1 18*4882a593Smuzhiyun #define CONFIG_MPC8313 1 19*4882a593Smuzhiyun #define CONFIG_MPC8313ERDB 1 20*4882a593Smuzhiyun 21*4882a593Smuzhiyun #ifdef CONFIG_NAND 22*4882a593Smuzhiyun #define CONFIG_SPL_INIT_MINIMAL 23*4882a593Smuzhiyun #define CONFIG_SPL_FLUSH_IMAGE 24*4882a593Smuzhiyun #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" 25*4882a593Smuzhiyun #define CONFIG_SPL_MPC83XX_WAIT_FOR_NAND 26*4882a593Smuzhiyun 27*4882a593Smuzhiyun #ifdef CONFIG_SPL_BUILD 28*4882a593Smuzhiyun #define CONFIG_NS16550_MIN_FUNCTIONS 29*4882a593Smuzhiyun #endif 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE 0x00100000 /* CONFIG_SYS_NAND_U_BOOT_DST */ 32*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE_SPL 0xfff00000 33*4882a593Smuzhiyun #define CONFIG_SPL_MAX_SIZE (4 * 1024) 34*4882a593Smuzhiyun #define CONFIG_SPL_PAD_TO 0x4000 35*4882a593Smuzhiyun 36*4882a593Smuzhiyun #define CONFIG_SYS_NAND_U_BOOT_SIZE (512 << 10) 37*4882a593Smuzhiyun #define CONFIG_SYS_NAND_U_BOOT_DST 0x00100000 38*4882a593Smuzhiyun #define CONFIG_SYS_NAND_U_BOOT_START 0x00100100 39*4882a593Smuzhiyun #define CONFIG_SYS_NAND_U_BOOT_OFFS 16384 40*4882a593Smuzhiyun #define CONFIG_SYS_NAND_U_BOOT_RELOC 0x00010000 41*4882a593Smuzhiyun #define CONFIG_SYS_NAND_U_BOOT_RELOC_SP (CONFIG_SYS_NAND_U_BOOT_RELOC + 0x10000) 42*4882a593Smuzhiyun 43*4882a593Smuzhiyun #ifdef CONFIG_SPL_BUILD 44*4882a593Smuzhiyun #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE_SPL /* start of monitor */ 45*4882a593Smuzhiyun #endif 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun #endif /* CONFIG_NAND */ 48*4882a593Smuzhiyun 49*4882a593Smuzhiyun #ifndef CONFIG_SYS_TEXT_BASE 50*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE 0xFE000000 51*4882a593Smuzhiyun #endif 52*4882a593Smuzhiyun 53*4882a593Smuzhiyun #ifndef CONFIG_SYS_MONITOR_BASE 54*4882a593Smuzhiyun #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 55*4882a593Smuzhiyun #endif 56*4882a593Smuzhiyun 57*4882a593Smuzhiyun #define CONFIG_PCI_INDIRECT_BRIDGE 58*4882a593Smuzhiyun #define CONFIG_FSL_ELBC 1 59*4882a593Smuzhiyun 60*4882a593Smuzhiyun #define CONFIG_MISC_INIT_R 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun /* 63*4882a593Smuzhiyun * On-board devices 64*4882a593Smuzhiyun * 65*4882a593Smuzhiyun * TSEC1 is VSC switch 66*4882a593Smuzhiyun * TSEC2 is SoC TSEC 67*4882a593Smuzhiyun */ 68*4882a593Smuzhiyun #define CONFIG_VSC7385_ENET 69*4882a593Smuzhiyun #define CONFIG_TSEC2 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun #ifdef CONFIG_SYS_66MHZ 72*4882a593Smuzhiyun #define CONFIG_83XX_CLKIN 66666667 /* in Hz */ 73*4882a593Smuzhiyun #elif defined(CONFIG_SYS_33MHZ) 74*4882a593Smuzhiyun #define CONFIG_83XX_CLKIN 33333333 /* in Hz */ 75*4882a593Smuzhiyun #else 76*4882a593Smuzhiyun #error Unknown oscillator frequency. 77*4882a593Smuzhiyun #endif 78*4882a593Smuzhiyun 79*4882a593Smuzhiyun #define CONFIG_SYS_CLK_FREQ CONFIG_83XX_CLKIN 80*4882a593Smuzhiyun 81*4882a593Smuzhiyun #define CONFIG_BOARD_EARLY_INIT_R /* call board_early_init_r */ 82*4882a593Smuzhiyun 83*4882a593Smuzhiyun #define CONFIG_SYS_IMMR 0xE0000000 84*4882a593Smuzhiyun 85*4882a593Smuzhiyun #if defined(CONFIG_NAND) && !defined(CONFIG_SPL_BUILD) 86*4882a593Smuzhiyun #define CONFIG_DEFAULT_IMMR CONFIG_SYS_IMMR 87*4882a593Smuzhiyun #endif 88*4882a593Smuzhiyun 89*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_START 0x00001000 90*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_END 0x07f00000 91*4882a593Smuzhiyun 92*4882a593Smuzhiyun /* Early revs of this board will lock up hard when attempting 93*4882a593Smuzhiyun * to access the PMC registers, unless a JTAG debugger is 94*4882a593Smuzhiyun * connected, or some resistor modifications are made. 95*4882a593Smuzhiyun */ 96*4882a593Smuzhiyun #define CONFIG_SYS_8313ERDB_BROKEN_PMC 1 97*4882a593Smuzhiyun 98*4882a593Smuzhiyun #define CONFIG_SYS_ACR_PIPE_DEP 3 /* Arbiter pipeline depth (0-3) */ 99*4882a593Smuzhiyun #define CONFIG_SYS_ACR_RPTCNT 3 /* Arbiter repeat count (0-7) */ 100*4882a593Smuzhiyun 101*4882a593Smuzhiyun /* 102*4882a593Smuzhiyun * Device configurations 103*4882a593Smuzhiyun */ 104*4882a593Smuzhiyun 105*4882a593Smuzhiyun /* Vitesse 7385 */ 106*4882a593Smuzhiyun 107*4882a593Smuzhiyun #ifdef CONFIG_VSC7385_ENET 108*4882a593Smuzhiyun 109*4882a593Smuzhiyun #define CONFIG_TSEC1 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun /* The flash address and size of the VSC7385 firmware image */ 112*4882a593Smuzhiyun #define CONFIG_VSC7385_IMAGE 0xFE7FE000 113*4882a593Smuzhiyun #define CONFIG_VSC7385_IMAGE_SIZE 8192 114*4882a593Smuzhiyun 115*4882a593Smuzhiyun #endif 116*4882a593Smuzhiyun 117*4882a593Smuzhiyun /* 118*4882a593Smuzhiyun * DDR Setup 119*4882a593Smuzhiyun */ 120*4882a593Smuzhiyun #define CONFIG_SYS_DDR_BASE 0x00000000 /* DDR is system memory*/ 121*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 122*4882a593Smuzhiyun #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 123*4882a593Smuzhiyun 124*4882a593Smuzhiyun /* 125*4882a593Smuzhiyun * Manually set up DDR parameters, as this board does not 126*4882a593Smuzhiyun * seem to have the SPD connected to I2C. 127*4882a593Smuzhiyun */ 128*4882a593Smuzhiyun #define CONFIG_SYS_DDR_SIZE 128 /* MB */ 129*4882a593Smuzhiyun #define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN \ 130*4882a593Smuzhiyun | CSCONFIG_ODT_RD_NEVER \ 131*4882a593Smuzhiyun | CSCONFIG_ODT_WR_ONLY_CURRENT \ 132*4882a593Smuzhiyun | CSCONFIG_ROW_BIT_13 \ 133*4882a593Smuzhiyun | CSCONFIG_COL_BIT_10) 134*4882a593Smuzhiyun /* 0x80010102 */ 135*4882a593Smuzhiyun 136*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_3 0x00000000 137*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_0 ((0 << TIMING_CFG0_RWT_SHIFT) \ 138*4882a593Smuzhiyun | (0 << TIMING_CFG0_WRT_SHIFT) \ 139*4882a593Smuzhiyun | (0 << TIMING_CFG0_RRT_SHIFT) \ 140*4882a593Smuzhiyun | (0 << TIMING_CFG0_WWT_SHIFT) \ 141*4882a593Smuzhiyun | (2 << TIMING_CFG0_ACT_PD_EXIT_SHIFT) \ 142*4882a593Smuzhiyun | (2 << TIMING_CFG0_PRE_PD_EXIT_SHIFT) \ 143*4882a593Smuzhiyun | (8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT) \ 144*4882a593Smuzhiyun | (2 << TIMING_CFG0_MRS_CYC_SHIFT)) 145*4882a593Smuzhiyun /* 0x00220802 */ 146*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_1 ((3 << TIMING_CFG1_PRETOACT_SHIFT) \ 147*4882a593Smuzhiyun | (8 << TIMING_CFG1_ACTTOPRE_SHIFT) \ 148*4882a593Smuzhiyun | (3 << TIMING_CFG1_ACTTORW_SHIFT) \ 149*4882a593Smuzhiyun | (5 << TIMING_CFG1_CASLAT_SHIFT) \ 150*4882a593Smuzhiyun | (10 << TIMING_CFG1_REFREC_SHIFT) \ 151*4882a593Smuzhiyun | (3 << TIMING_CFG1_WRREC_SHIFT) \ 152*4882a593Smuzhiyun | (2 << TIMING_CFG1_ACTTOACT_SHIFT) \ 153*4882a593Smuzhiyun | (2 << TIMING_CFG1_WRTORD_SHIFT)) 154*4882a593Smuzhiyun /* 0x3835a322 */ 155*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_2 ((1 << TIMING_CFG2_ADD_LAT_SHIFT) \ 156*4882a593Smuzhiyun | (5 << TIMING_CFG2_CPO_SHIFT) \ 157*4882a593Smuzhiyun | (2 << TIMING_CFG2_WR_LAT_DELAY_SHIFT) \ 158*4882a593Smuzhiyun | (2 << TIMING_CFG2_RD_TO_PRE_SHIFT) \ 159*4882a593Smuzhiyun | (2 << TIMING_CFG2_WR_DATA_DELAY_SHIFT) \ 160*4882a593Smuzhiyun | (3 << TIMING_CFG2_CKE_PLS_SHIFT) \ 161*4882a593Smuzhiyun | (6 << TIMING_CFG2_FOUR_ACT_SHIFT)) 162*4882a593Smuzhiyun /* 0x129048c6 */ /* P9-45,may need tuning */ 163*4882a593Smuzhiyun #define CONFIG_SYS_DDR_INTERVAL ((1296 << SDRAM_INTERVAL_REFINT_SHIFT) \ 164*4882a593Smuzhiyun | (1280 << SDRAM_INTERVAL_BSTOPRE_SHIFT)) 165*4882a593Smuzhiyun /* 0x05100500 */ 166*4882a593Smuzhiyun #if defined(CONFIG_DDR_2T_TIMING) 167*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_CFG (SDRAM_CFG_SREN \ 168*4882a593Smuzhiyun | SDRAM_CFG_SDRAM_TYPE_DDR2 \ 169*4882a593Smuzhiyun | SDRAM_CFG_DBW_32 \ 170*4882a593Smuzhiyun | SDRAM_CFG_2T_EN) 171*4882a593Smuzhiyun /* 0x43088000 */ 172*4882a593Smuzhiyun #else 173*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_CFG (SDRAM_CFG_SREN \ 174*4882a593Smuzhiyun | SDRAM_CFG_SDRAM_TYPE_DDR2 \ 175*4882a593Smuzhiyun | SDRAM_CFG_DBW_32) 176*4882a593Smuzhiyun /* 0x43080000 */ 177*4882a593Smuzhiyun #endif 178*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_CFG2 0x00401000 179*4882a593Smuzhiyun /* set burst length to 8 for 32-bit data path */ 180*4882a593Smuzhiyun #define CONFIG_SYS_DDR_MODE ((0x4448 << SDRAM_MODE_ESD_SHIFT) \ 181*4882a593Smuzhiyun | (0x0632 << SDRAM_MODE_SD_SHIFT)) 182*4882a593Smuzhiyun /* 0x44480632 */ 183*4882a593Smuzhiyun #define CONFIG_SYS_DDR_MODE_2 0x8000C000 184*4882a593Smuzhiyun 185*4882a593Smuzhiyun #define CONFIG_SYS_DDR_CLK_CNTL DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05 186*4882a593Smuzhiyun /*0x02000000*/ 187*4882a593Smuzhiyun #define CONFIG_SYS_DDRCDR_VALUE (DDRCDR_EN \ 188*4882a593Smuzhiyun | DDRCDR_PZ_NOMZ \ 189*4882a593Smuzhiyun | DDRCDR_NZ_NOMZ \ 190*4882a593Smuzhiyun | DDRCDR_M_ODR) 191*4882a593Smuzhiyun 192*4882a593Smuzhiyun /* 193*4882a593Smuzhiyun * FLASH on the Local Bus 194*4882a593Smuzhiyun */ 195*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_CFI /* use the Common Flash Interface */ 196*4882a593Smuzhiyun #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 197*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_BASE 0xFE000000 /* start of FLASH */ 198*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_SIZE 8 /* flash size in MB */ 199*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_PROTECTION 1 /* Use h/w Flash protection. */ 200*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_EMPTY_INFO /* display empty sectors */ 201*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE /* buffer up multiple bytes */ 202*4882a593Smuzhiyun 203*4882a593Smuzhiyun #define CONFIG_SYS_NOR_BR_PRELIM (CONFIG_SYS_FLASH_BASE \ 204*4882a593Smuzhiyun | BR_PS_16 /* 16 bit port */ \ 205*4882a593Smuzhiyun | BR_MS_GPCM /* MSEL = GPCM */ \ 206*4882a593Smuzhiyun | BR_V) /* valid */ 207*4882a593Smuzhiyun #define CONFIG_SYS_NOR_OR_PRELIM (MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \ 208*4882a593Smuzhiyun | OR_GPCM_XACS \ 209*4882a593Smuzhiyun | OR_GPCM_SCY_9 \ 210*4882a593Smuzhiyun | OR_GPCM_EHTR \ 211*4882a593Smuzhiyun | OR_GPCM_EAD) 212*4882a593Smuzhiyun /* 0xFF006FF7 TODO SLOW 16 MB flash size */ 213*4882a593Smuzhiyun /* window base at flash base */ 214*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE 215*4882a593Smuzhiyun /* 16 MB window size */ 216*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR0_PRELIM (LBLAWAR_EN | LBLAWAR_16MB) 217*4882a593Smuzhiyun 218*4882a593Smuzhiyun #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 219*4882a593Smuzhiyun #define CONFIG_SYS_MAX_FLASH_SECT 135 /* sectors per device */ 220*4882a593Smuzhiyun 221*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 222*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 223*4882a593Smuzhiyun 224*4882a593Smuzhiyun #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) && \ 225*4882a593Smuzhiyun !defined(CONFIG_SPL_BUILD) 226*4882a593Smuzhiyun #define CONFIG_SYS_RAMBOOT 227*4882a593Smuzhiyun #endif 228*4882a593Smuzhiyun 229*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_LOCK 1 230*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_ADDR 0xFD000000 /* Initial RAM addr */ 231*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* Size of used area in RAM*/ 232*4882a593Smuzhiyun 233*4882a593Smuzhiyun #define CONFIG_SYS_GBL_DATA_OFFSET \ 234*4882a593Smuzhiyun (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 235*4882a593Smuzhiyun #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 236*4882a593Smuzhiyun 237*4882a593Smuzhiyun /* CONFIG_SYS_MONITOR_LEN must be a multiple of CONFIG_ENV_SECT_SIZE */ 238*4882a593Smuzhiyun #define CONFIG_SYS_MONITOR_LEN (512 * 1024) /* Reserve 512 kB for Mon */ 239*4882a593Smuzhiyun #define CONFIG_SYS_MALLOC_LEN (512 * 1024) /* Reserved for malloc */ 240*4882a593Smuzhiyun 241*4882a593Smuzhiyun /* 242*4882a593Smuzhiyun * Local Bus LCRR and LBCR regs 243*4882a593Smuzhiyun */ 244*4882a593Smuzhiyun #define CONFIG_SYS_LCRR_EADC LCRR_EADC_1 245*4882a593Smuzhiyun #define CONFIG_SYS_LCRR_CLKDIV LCRR_CLKDIV_4 246*4882a593Smuzhiyun #define CONFIG_SYS_LBC_LBCR (0x00040000 /* TODO */ \ 247*4882a593Smuzhiyun | (0xFF << LBCR_BMT_SHIFT) \ 248*4882a593Smuzhiyun | 0xF) /* 0x0004ff0f */ 249*4882a593Smuzhiyun 250*4882a593Smuzhiyun /* LB refresh timer prescal, 266MHz/32 */ 251*4882a593Smuzhiyun #define CONFIG_SYS_LBC_MRTPR 0x20000000 /*TODO */ 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun /* drivers/mtd/nand/raw/nand.c */ 254*4882a593Smuzhiyun #if defined(CONFIG_NAND) && defined(CONFIG_SPL_BUILD) 255*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BASE 0xFFF00000 256*4882a593Smuzhiyun #else 257*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BASE 0xE2800000 258*4882a593Smuzhiyun #endif 259*4882a593Smuzhiyun 260*4882a593Smuzhiyun #define CONFIG_MTD_PARTITION 261*4882a593Smuzhiyun #define MTDIDS_DEFAULT "nand0=e2800000.flash" 262*4882a593Smuzhiyun #define MTDPARTS_DEFAULT \ 263*4882a593Smuzhiyun "mtdparts=e2800000.flash:512k(uboot),128k(env),6m@1m(kernel),-(fs)" 264*4882a593Smuzhiyun 265*4882a593Smuzhiyun #define CONFIG_SYS_MAX_NAND_DEVICE 1 266*4882a593Smuzhiyun #define CONFIG_NAND_FSL_ELBC 1 267*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BLOCK_SIZE 16384 268*4882a593Smuzhiyun #define CONFIG_SYS_NAND_WINDOW_SIZE (32 * 1024) 269*4882a593Smuzhiyun 270*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BR_PRELIM (CONFIG_SYS_NAND_BASE \ 271*4882a593Smuzhiyun | BR_DECC_CHK_GEN /* Use HW ECC */ \ 272*4882a593Smuzhiyun | BR_PS_8 /* 8 bit port */ \ 273*4882a593Smuzhiyun | BR_MS_FCM /* MSEL = FCM */ \ 274*4882a593Smuzhiyun | BR_V) /* valid */ 275*4882a593Smuzhiyun #define CONFIG_SYS_NAND_OR_PRELIM \ 276*4882a593Smuzhiyun (P2SZ_TO_AM(CONFIG_SYS_NAND_WINDOW_SIZE) \ 277*4882a593Smuzhiyun | OR_FCM_CSCT \ 278*4882a593Smuzhiyun | OR_FCM_CST \ 279*4882a593Smuzhiyun | OR_FCM_CHT \ 280*4882a593Smuzhiyun | OR_FCM_SCY_1 \ 281*4882a593Smuzhiyun | OR_FCM_TRLX \ 282*4882a593Smuzhiyun | OR_FCM_EHTR) 283*4882a593Smuzhiyun /* 0xFFFF8396 */ 284*4882a593Smuzhiyun 285*4882a593Smuzhiyun #ifdef CONFIG_NAND 286*4882a593Smuzhiyun #define CONFIG_SYS_BR0_PRELIM CONFIG_SYS_NAND_BR_PRELIM 287*4882a593Smuzhiyun #define CONFIG_SYS_OR0_PRELIM CONFIG_SYS_NAND_OR_PRELIM 288*4882a593Smuzhiyun #define CONFIG_SYS_BR1_PRELIM CONFIG_SYS_NOR_BR_PRELIM 289*4882a593Smuzhiyun #define CONFIG_SYS_OR1_PRELIM CONFIG_SYS_NOR_OR_PRELIM 290*4882a593Smuzhiyun #else 291*4882a593Smuzhiyun #define CONFIG_SYS_BR0_PRELIM CONFIG_SYS_NOR_BR_PRELIM 292*4882a593Smuzhiyun #define CONFIG_SYS_OR0_PRELIM CONFIG_SYS_NOR_OR_PRELIM 293*4882a593Smuzhiyun #define CONFIG_SYS_BR1_PRELIM CONFIG_SYS_NAND_BR_PRELIM 294*4882a593Smuzhiyun #define CONFIG_SYS_OR1_PRELIM CONFIG_SYS_NAND_OR_PRELIM 295*4882a593Smuzhiyun #endif 296*4882a593Smuzhiyun 297*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR1_PRELIM CONFIG_SYS_NAND_BASE 298*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR1_PRELIM (LBLAWAR_EN | LBLAWAR_32KB) 299*4882a593Smuzhiyun 300*4882a593Smuzhiyun #define CONFIG_SYS_NAND_LBLAWBAR_PRELIM CONFIG_SYS_LBLAWBAR1_PRELIM 301*4882a593Smuzhiyun #define CONFIG_SYS_NAND_LBLAWAR_PRELIM CONFIG_SYS_LBLAWAR1_PRELIM 302*4882a593Smuzhiyun 303*4882a593Smuzhiyun /* local bus write LED / read status buffer (BCSR) mapping */ 304*4882a593Smuzhiyun #define CONFIG_SYS_BCSR_ADDR 0xFA000000 305*4882a593Smuzhiyun #define CONFIG_SYS_BCSR_SIZE (32 * 1024) /* 0x00008000 */ 306*4882a593Smuzhiyun /* map at 0xFA000000 on LCS3 */ 307*4882a593Smuzhiyun #define CONFIG_SYS_BR3_PRELIM (CONFIG_SYS_BCSR_ADDR \ 308*4882a593Smuzhiyun | BR_PS_8 /* 8 bit port */ \ 309*4882a593Smuzhiyun | BR_MS_GPCM /* MSEL = GPCM */ \ 310*4882a593Smuzhiyun | BR_V) /* valid */ 311*4882a593Smuzhiyun /* 0xFA000801 */ 312*4882a593Smuzhiyun #define CONFIG_SYS_OR3_PRELIM (P2SZ_TO_AM(CONFIG_SYS_BCSR_SIZE) \ 313*4882a593Smuzhiyun | OR_GPCM_CSNT \ 314*4882a593Smuzhiyun | OR_GPCM_ACS_DIV2 \ 315*4882a593Smuzhiyun | OR_GPCM_XACS \ 316*4882a593Smuzhiyun | OR_GPCM_SCY_15 \ 317*4882a593Smuzhiyun | OR_GPCM_TRLX_SET \ 318*4882a593Smuzhiyun | OR_GPCM_EHTR_SET \ 319*4882a593Smuzhiyun | OR_GPCM_EAD) 320*4882a593Smuzhiyun /* 0xFFFF8FF7 */ 321*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR3_PRELIM CONFIG_SYS_BCSR_ADDR 322*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR3_PRELIM (LBLAWAR_EN | LBLAWAR_32KB) 323*4882a593Smuzhiyun 324*4882a593Smuzhiyun /* Vitesse 7385 */ 325*4882a593Smuzhiyun 326*4882a593Smuzhiyun #ifdef CONFIG_VSC7385_ENET 327*4882a593Smuzhiyun 328*4882a593Smuzhiyun /* VSC7385 Base address on LCS2 */ 329*4882a593Smuzhiyun #define CONFIG_SYS_VSC7385_BASE 0xF0000000 330*4882a593Smuzhiyun #define CONFIG_SYS_VSC7385_SIZE (128 * 1024) /* 0x00020000 */ 331*4882a593Smuzhiyun 332*4882a593Smuzhiyun #define CONFIG_SYS_BR2_PRELIM (CONFIG_SYS_VSC7385_BASE \ 333*4882a593Smuzhiyun | BR_PS_8 /* 8 bit port */ \ 334*4882a593Smuzhiyun | BR_MS_GPCM /* MSEL = GPCM */ \ 335*4882a593Smuzhiyun | BR_V) /* valid */ 336*4882a593Smuzhiyun #define CONFIG_SYS_OR2_PRELIM (P2SZ_TO_AM(CONFIG_SYS_VSC7385_SIZE) \ 337*4882a593Smuzhiyun | OR_GPCM_CSNT \ 338*4882a593Smuzhiyun | OR_GPCM_XACS \ 339*4882a593Smuzhiyun | OR_GPCM_SCY_15 \ 340*4882a593Smuzhiyun | OR_GPCM_SETA \ 341*4882a593Smuzhiyun | OR_GPCM_TRLX_SET \ 342*4882a593Smuzhiyun | OR_GPCM_EHTR_SET \ 343*4882a593Smuzhiyun | OR_GPCM_EAD) 344*4882a593Smuzhiyun /* 0xFFFE09FF */ 345*4882a593Smuzhiyun 346*4882a593Smuzhiyun /* Access window base at VSC7385 base */ 347*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR2_PRELIM CONFIG_SYS_VSC7385_BASE 348*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR2_PRELIM (LBLAWAR_EN | LBLAWAR_128KB) 349*4882a593Smuzhiyun 350*4882a593Smuzhiyun #endif 351*4882a593Smuzhiyun 352*4882a593Smuzhiyun #define CONFIG_MPC83XX_GPIO 1 353*4882a593Smuzhiyun 354*4882a593Smuzhiyun /* 355*4882a593Smuzhiyun * Serial Port 356*4882a593Smuzhiyun */ 357*4882a593Smuzhiyun #define CONFIG_CONS_INDEX 1 358*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_SERIAL 359*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_REG_SIZE 1 360*4882a593Smuzhiyun 361*4882a593Smuzhiyun #define CONFIG_SYS_BAUDRATE_TABLE \ 362*4882a593Smuzhiyun {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 363*4882a593Smuzhiyun 364*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500) 365*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600) 366*4882a593Smuzhiyun 367*4882a593Smuzhiyun /* I2C */ 368*4882a593Smuzhiyun #define CONFIG_SYS_I2C 369*4882a593Smuzhiyun #define CONFIG_SYS_I2C_FSL 370*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C_SPEED 400000 371*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F 372*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C_OFFSET 0x3000 373*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C2_SPEED 400000 374*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F 375*4882a593Smuzhiyun #define CONFIG_SYS_FSL_I2C2_OFFSET 0x3100 376*4882a593Smuzhiyun #define CONFIG_SYS_I2C_NOPROBES { {0, 0x69} } 377*4882a593Smuzhiyun 378*4882a593Smuzhiyun /* 379*4882a593Smuzhiyun * General PCI 380*4882a593Smuzhiyun * Addresses are mapped 1-1. 381*4882a593Smuzhiyun */ 382*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MEM_BASE 0x80000000 383*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MEM_PHYS CONFIG_SYS_PCI1_MEM_BASE 384*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MEM_SIZE 0x10000000 /* 256M */ 385*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MMIO_BASE 0x90000000 386*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MMIO_PHYS CONFIG_SYS_PCI1_MMIO_BASE 387*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MMIO_SIZE 0x10000000 /* 256M */ 388*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_IO_BASE 0x00000000 389*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_IO_PHYS 0xE2000000 390*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_IO_SIZE 0x00100000 /* 1M */ 391*4882a593Smuzhiyun 392*4882a593Smuzhiyun #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1057 /* Motorola */ 393*4882a593Smuzhiyun 394*4882a593Smuzhiyun /* 395*4882a593Smuzhiyun * TSEC 396*4882a593Smuzhiyun */ 397*4882a593Smuzhiyun #define CONFIG_TSEC_ENET /* TSEC ethernet support */ 398*4882a593Smuzhiyun 399*4882a593Smuzhiyun #define CONFIG_GMII /* MII PHY management */ 400*4882a593Smuzhiyun 401*4882a593Smuzhiyun #ifdef CONFIG_TSEC1 402*4882a593Smuzhiyun #define CONFIG_HAS_ETH0 403*4882a593Smuzhiyun #define CONFIG_TSEC1_NAME "TSEC0" 404*4882a593Smuzhiyun #define CONFIG_SYS_TSEC1_OFFSET 0x24000 405*4882a593Smuzhiyun #define TSEC1_PHY_ADDR 0x1c 406*4882a593Smuzhiyun #define TSEC1_FLAGS TSEC_GIGABIT 407*4882a593Smuzhiyun #define TSEC1_PHYIDX 0 408*4882a593Smuzhiyun #endif 409*4882a593Smuzhiyun 410*4882a593Smuzhiyun #ifdef CONFIG_TSEC2 411*4882a593Smuzhiyun #define CONFIG_HAS_ETH1 412*4882a593Smuzhiyun #define CONFIG_TSEC2_NAME "TSEC1" 413*4882a593Smuzhiyun #define CONFIG_SYS_TSEC2_OFFSET 0x25000 414*4882a593Smuzhiyun #define TSEC2_PHY_ADDR 4 415*4882a593Smuzhiyun #define TSEC2_FLAGS TSEC_GIGABIT 416*4882a593Smuzhiyun #define TSEC2_PHYIDX 0 417*4882a593Smuzhiyun #endif 418*4882a593Smuzhiyun 419*4882a593Smuzhiyun /* Options are: TSEC[0-1] */ 420*4882a593Smuzhiyun #define CONFIG_ETHPRIME "TSEC1" 421*4882a593Smuzhiyun 422*4882a593Smuzhiyun /* 423*4882a593Smuzhiyun * Configure on-board RTC 424*4882a593Smuzhiyun */ 425*4882a593Smuzhiyun #define CONFIG_RTC_DS1337 426*4882a593Smuzhiyun #define CONFIG_SYS_I2C_RTC_ADDR 0x68 427*4882a593Smuzhiyun 428*4882a593Smuzhiyun /* 429*4882a593Smuzhiyun * Environment 430*4882a593Smuzhiyun */ 431*4882a593Smuzhiyun #if defined(CONFIG_NAND) 432*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET (512 * 1024) 433*4882a593Smuzhiyun #define CONFIG_ENV_SECT_SIZE CONFIG_SYS_NAND_BLOCK_SIZE 434*4882a593Smuzhiyun #define CONFIG_ENV_SIZE CONFIG_ENV_SECT_SIZE 435*4882a593Smuzhiyun #define CONFIG_ENV_SIZE_REDUND CONFIG_ENV_SIZE 436*4882a593Smuzhiyun #define CONFIG_ENV_RANGE (CONFIG_ENV_SECT_SIZE * 4) 437*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET_REDUND \ 438*4882a593Smuzhiyun (CONFIG_ENV_OFFSET + CONFIG_ENV_RANGE) 439*4882a593Smuzhiyun #elif !defined(CONFIG_SYS_RAMBOOT) 440*4882a593Smuzhiyun #define CONFIG_ENV_ADDR \ 441*4882a593Smuzhiyun (CONFIG_SYS_MONITOR_BASE + CONFIG_SYS_MONITOR_LEN) 442*4882a593Smuzhiyun #define CONFIG_ENV_SECT_SIZE 0x10000 /* 64K(one sector) for env */ 443*4882a593Smuzhiyun #define CONFIG_ENV_SIZE 0x2000 444*4882a593Smuzhiyun 445*4882a593Smuzhiyun /* Address and size of Redundant Environment Sector */ 446*4882a593Smuzhiyun #else 447*4882a593Smuzhiyun #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - 0x1000) 448*4882a593Smuzhiyun #define CONFIG_ENV_SIZE 0x2000 449*4882a593Smuzhiyun #endif 450*4882a593Smuzhiyun 451*4882a593Smuzhiyun #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ 452*4882a593Smuzhiyun #define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */ 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun /* 455*4882a593Smuzhiyun * BOOTP options 456*4882a593Smuzhiyun */ 457*4882a593Smuzhiyun #define CONFIG_BOOTP_BOOTFILESIZE 458*4882a593Smuzhiyun #define CONFIG_BOOTP_BOOTPATH 459*4882a593Smuzhiyun #define CONFIG_BOOTP_GATEWAY 460*4882a593Smuzhiyun #define CONFIG_BOOTP_HOSTNAME 461*4882a593Smuzhiyun 462*4882a593Smuzhiyun /* 463*4882a593Smuzhiyun * Command line configuration. 464*4882a593Smuzhiyun */ 465*4882a593Smuzhiyun 466*4882a593Smuzhiyun #define CONFIG_CMDLINE_EDITING 1 467*4882a593Smuzhiyun #define CONFIG_AUTO_COMPLETE /* add autocompletion support */ 468*4882a593Smuzhiyun 469*4882a593Smuzhiyun /* 470*4882a593Smuzhiyun * Miscellaneous configurable options 471*4882a593Smuzhiyun */ 472*4882a593Smuzhiyun #define CONFIG_SYS_LONGHELP /* undef to save memory */ 473*4882a593Smuzhiyun #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 474*4882a593Smuzhiyun #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 475*4882a593Smuzhiyun 476*4882a593Smuzhiyun /* Boot Argument Buffer Size */ 477*4882a593Smuzhiyun #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 478*4882a593Smuzhiyun 479*4882a593Smuzhiyun /* 480*4882a593Smuzhiyun * For booting Linux, the board info and command line data 481*4882a593Smuzhiyun * have to be in the first 256 MB of memory, since this is 482*4882a593Smuzhiyun * the maximum mapped by the Linux kernel during initialization. 483*4882a593Smuzhiyun */ 484*4882a593Smuzhiyun /* Initial Memory map for Linux*/ 485*4882a593Smuzhiyun #define CONFIG_SYS_BOOTMAPSZ (256 << 20) 486*4882a593Smuzhiyun #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 487*4882a593Smuzhiyun 488*4882a593Smuzhiyun #define CONFIG_SYS_RCWH_PCIHOST 0x80000000 /* PCIHOST */ 489*4882a593Smuzhiyun 490*4882a593Smuzhiyun #ifdef CONFIG_SYS_66MHZ 491*4882a593Smuzhiyun 492*4882a593Smuzhiyun /* 66MHz IN, 133MHz CSB, 266 DDR, 266 CORE */ 493*4882a593Smuzhiyun /* 0x62040000 */ 494*4882a593Smuzhiyun #define CONFIG_SYS_HRCW_LOW (\ 495*4882a593Smuzhiyun 0x20000000 /* reserved, must be set */ |\ 496*4882a593Smuzhiyun HRCWL_DDRCM |\ 497*4882a593Smuzhiyun HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ 498*4882a593Smuzhiyun HRCWL_DDR_TO_SCB_CLK_2X1 |\ 499*4882a593Smuzhiyun HRCWL_CSB_TO_CLKIN_2X1 |\ 500*4882a593Smuzhiyun HRCWL_CORE_TO_CSB_2X1) 501*4882a593Smuzhiyun 502*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_CLK (CONFIG_83XX_CLKIN * 2) 503*4882a593Smuzhiyun 504*4882a593Smuzhiyun #elif defined(CONFIG_SYS_33MHZ) 505*4882a593Smuzhiyun 506*4882a593Smuzhiyun /* 33MHz IN, 165MHz CSB, 330 DDR, 330 CORE */ 507*4882a593Smuzhiyun /* 0x65040000 */ 508*4882a593Smuzhiyun #define CONFIG_SYS_HRCW_LOW (\ 509*4882a593Smuzhiyun 0x20000000 /* reserved, must be set */ |\ 510*4882a593Smuzhiyun HRCWL_DDRCM |\ 511*4882a593Smuzhiyun HRCWL_LCL_BUS_TO_SCB_CLK_1X1 |\ 512*4882a593Smuzhiyun HRCWL_DDR_TO_SCB_CLK_2X1 |\ 513*4882a593Smuzhiyun HRCWL_CSB_TO_CLKIN_5X1 |\ 514*4882a593Smuzhiyun HRCWL_CORE_TO_CSB_2X1) 515*4882a593Smuzhiyun 516*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_CLK (CONFIG_83XX_CLKIN * 5) 517*4882a593Smuzhiyun 518*4882a593Smuzhiyun #endif 519*4882a593Smuzhiyun 520*4882a593Smuzhiyun #define CONFIG_SYS_HRCW_HIGH_BASE (\ 521*4882a593Smuzhiyun HRCWH_PCI_HOST |\ 522*4882a593Smuzhiyun HRCWH_PCI1_ARBITER_ENABLE |\ 523*4882a593Smuzhiyun HRCWH_CORE_ENABLE |\ 524*4882a593Smuzhiyun HRCWH_BOOTSEQ_DISABLE |\ 525*4882a593Smuzhiyun HRCWH_SW_WATCHDOG_DISABLE |\ 526*4882a593Smuzhiyun HRCWH_TSEC1M_IN_RGMII |\ 527*4882a593Smuzhiyun HRCWH_TSEC2M_IN_RGMII |\ 528*4882a593Smuzhiyun HRCWH_BIG_ENDIAN) 529*4882a593Smuzhiyun 530*4882a593Smuzhiyun #ifdef CONFIG_NAND 531*4882a593Smuzhiyun #define CONFIG_SYS_HRCW_HIGH (CONFIG_SYS_HRCW_HIGH_BASE |\ 532*4882a593Smuzhiyun HRCWH_FROM_0XFFF00100 |\ 533*4882a593Smuzhiyun HRCWH_ROM_LOC_NAND_SP_8BIT |\ 534*4882a593Smuzhiyun HRCWH_RL_EXT_NAND) 535*4882a593Smuzhiyun #else 536*4882a593Smuzhiyun #define CONFIG_SYS_HRCW_HIGH (CONFIG_SYS_HRCW_HIGH_BASE |\ 537*4882a593Smuzhiyun HRCWH_FROM_0X00000100 |\ 538*4882a593Smuzhiyun HRCWH_ROM_LOC_LOCAL_16BIT |\ 539*4882a593Smuzhiyun HRCWH_RL_EXT_LEGACY) 540*4882a593Smuzhiyun #endif 541*4882a593Smuzhiyun 542*4882a593Smuzhiyun /* System IO Config */ 543*4882a593Smuzhiyun #define CONFIG_SYS_SICRH (SICRH_TSOBI1 | SICRH_TSOBI2) /* RGMII */ 544*4882a593Smuzhiyun /* Enable Internal USB Phy and GPIO on LCD Connector */ 545*4882a593Smuzhiyun #define CONFIG_SYS_SICRL (SICRL_USBDR_10 | SICRL_LBC) 546*4882a593Smuzhiyun 547*4882a593Smuzhiyun #define CONFIG_SYS_HID0_INIT 0x000000000 548*4882a593Smuzhiyun #define CONFIG_SYS_HID0_FINAL (HID0_ENABLE_MACHINE_CHECK | \ 549*4882a593Smuzhiyun HID0_ENABLE_INSTRUCTION_CACHE | \ 550*4882a593Smuzhiyun HID0_ENABLE_DYNAMIC_POWER_MANAGMENT) 551*4882a593Smuzhiyun 552*4882a593Smuzhiyun #define CONFIG_SYS_HID2 HID2_HBE 553*4882a593Smuzhiyun 554*4882a593Smuzhiyun #define CONFIG_HIGH_BATS 1 /* High BATs supported */ 555*4882a593Smuzhiyun 556*4882a593Smuzhiyun /* DDR @ 0x00000000 */ 557*4882a593Smuzhiyun #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_BASE | BATL_PP_RW) 558*4882a593Smuzhiyun #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_BASE \ 559*4882a593Smuzhiyun | BATU_BL_256M \ 560*4882a593Smuzhiyun | BATU_VS \ 561*4882a593Smuzhiyun | BATU_VP) 562*4882a593Smuzhiyun 563*4882a593Smuzhiyun /* PCI @ 0x80000000 */ 564*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1L (CONFIG_SYS_PCI1_MEM_BASE | BATL_PP_RW) 565*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1U (CONFIG_SYS_PCI1_MEM_BASE \ 566*4882a593Smuzhiyun | BATU_BL_256M \ 567*4882a593Smuzhiyun | BATU_VS \ 568*4882a593Smuzhiyun | BATU_VP) 569*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2L (CONFIG_SYS_PCI1_MMIO_BASE \ 570*4882a593Smuzhiyun | BATL_PP_RW \ 571*4882a593Smuzhiyun | BATL_CACHEINHIBIT \ 572*4882a593Smuzhiyun | BATL_GUARDEDSTORAGE) 573*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2U (CONFIG_SYS_PCI1_MMIO_BASE \ 574*4882a593Smuzhiyun | BATU_BL_256M \ 575*4882a593Smuzhiyun | BATU_VS \ 576*4882a593Smuzhiyun | BATU_VP) 577*4882a593Smuzhiyun 578*4882a593Smuzhiyun /* PCI2 not supported on 8313 */ 579*4882a593Smuzhiyun #define CONFIG_SYS_IBAT3L (0) 580*4882a593Smuzhiyun #define CONFIG_SYS_IBAT3U (0) 581*4882a593Smuzhiyun #define CONFIG_SYS_IBAT4L (0) 582*4882a593Smuzhiyun #define CONFIG_SYS_IBAT4U (0) 583*4882a593Smuzhiyun 584*4882a593Smuzhiyun /* IMMRBAR @ 0xE0000000, PCI IO @ 0xE2000000 & BCSR @ 0xE2400000 */ 585*4882a593Smuzhiyun #define CONFIG_SYS_IBAT5L (CONFIG_SYS_IMMR \ 586*4882a593Smuzhiyun | BATL_PP_RW \ 587*4882a593Smuzhiyun | BATL_CACHEINHIBIT \ 588*4882a593Smuzhiyun | BATL_GUARDEDSTORAGE) 589*4882a593Smuzhiyun #define CONFIG_SYS_IBAT5U (CONFIG_SYS_IMMR \ 590*4882a593Smuzhiyun | BATU_BL_256M \ 591*4882a593Smuzhiyun | BATU_VS \ 592*4882a593Smuzhiyun | BATU_VP) 593*4882a593Smuzhiyun 594*4882a593Smuzhiyun /* SDRAM @ 0xF0000000, stack in DCACHE 0xFDF00000 & FLASH @ 0xFE000000 */ 595*4882a593Smuzhiyun #define CONFIG_SYS_IBAT6L (0xF0000000 | BATL_PP_RW | BATL_GUARDEDSTORAGE) 596*4882a593Smuzhiyun #define CONFIG_SYS_IBAT6U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP) 597*4882a593Smuzhiyun 598*4882a593Smuzhiyun #define CONFIG_SYS_IBAT7L (0) 599*4882a593Smuzhiyun #define CONFIG_SYS_IBAT7U (0) 600*4882a593Smuzhiyun 601*4882a593Smuzhiyun #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 602*4882a593Smuzhiyun #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 603*4882a593Smuzhiyun #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 604*4882a593Smuzhiyun #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 605*4882a593Smuzhiyun #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 606*4882a593Smuzhiyun #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 607*4882a593Smuzhiyun #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 608*4882a593Smuzhiyun #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 609*4882a593Smuzhiyun #define CONFIG_SYS_DBAT4L CONFIG_SYS_IBAT4L 610*4882a593Smuzhiyun #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 611*4882a593Smuzhiyun #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 612*4882a593Smuzhiyun #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 613*4882a593Smuzhiyun #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 614*4882a593Smuzhiyun #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 615*4882a593Smuzhiyun #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 616*4882a593Smuzhiyun #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 617*4882a593Smuzhiyun 618*4882a593Smuzhiyun /* 619*4882a593Smuzhiyun * Environment Configuration 620*4882a593Smuzhiyun */ 621*4882a593Smuzhiyun #define CONFIG_ENV_OVERWRITE 622*4882a593Smuzhiyun 623*4882a593Smuzhiyun #define CONFIG_NETDEV "eth1" 624*4882a593Smuzhiyun 625*4882a593Smuzhiyun #define CONFIG_HOSTNAME mpc8313erdb 626*4882a593Smuzhiyun #define CONFIG_ROOTPATH "/nfs/root/path" 627*4882a593Smuzhiyun #define CONFIG_BOOTFILE "uImage" 628*4882a593Smuzhiyun /* U-Boot image on TFTP server */ 629*4882a593Smuzhiyun #define CONFIG_UBOOTPATH "u-boot.bin" 630*4882a593Smuzhiyun #define CONFIG_FDTFILE "mpc8313erdb.dtb" 631*4882a593Smuzhiyun 632*4882a593Smuzhiyun /* default location for tftp and bootm */ 633*4882a593Smuzhiyun #define CONFIG_LOADADDR 800000 634*4882a593Smuzhiyun 635*4882a593Smuzhiyun #define CONFIG_EXTRA_ENV_SETTINGS \ 636*4882a593Smuzhiyun "netdev=" CONFIG_NETDEV "\0" \ 637*4882a593Smuzhiyun "ethprime=TSEC1\0" \ 638*4882a593Smuzhiyun "uboot=" CONFIG_UBOOTPATH "\0" \ 639*4882a593Smuzhiyun "tftpflash=tftpboot $loadaddr $uboot; " \ 640*4882a593Smuzhiyun "protect off " __stringify(CONFIG_SYS_TEXT_BASE) \ 641*4882a593Smuzhiyun " +$filesize; " \ 642*4882a593Smuzhiyun "erase " __stringify(CONFIG_SYS_TEXT_BASE) \ 643*4882a593Smuzhiyun " +$filesize; " \ 644*4882a593Smuzhiyun "cp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) \ 645*4882a593Smuzhiyun " $filesize; " \ 646*4882a593Smuzhiyun "protect on " __stringify(CONFIG_SYS_TEXT_BASE) \ 647*4882a593Smuzhiyun " +$filesize; " \ 648*4882a593Smuzhiyun "cmp.b $loadaddr " __stringify(CONFIG_SYS_TEXT_BASE) \ 649*4882a593Smuzhiyun " $filesize\0" \ 650*4882a593Smuzhiyun "fdtaddr=780000\0" \ 651*4882a593Smuzhiyun "fdtfile=" CONFIG_FDTFILE "\0" \ 652*4882a593Smuzhiyun "console=ttyS0\0" \ 653*4882a593Smuzhiyun "setbootargs=setenv bootargs " \ 654*4882a593Smuzhiyun "root=$rootdev rw console=$console,$baudrate $othbootargs\0" \ 655*4882a593Smuzhiyun "setipargs=setenv bootargs nfsroot=$serverip:$rootpath " \ 656*4882a593Smuzhiyun "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:"\ 657*4882a593Smuzhiyun "$netdev:off " \ 658*4882a593Smuzhiyun "root=$rootdev rw console=$console,$baudrate $othbootargs\0" 659*4882a593Smuzhiyun 660*4882a593Smuzhiyun #define CONFIG_NFSBOOTCOMMAND \ 661*4882a593Smuzhiyun "setenv rootdev /dev/nfs;" \ 662*4882a593Smuzhiyun "run setbootargs;" \ 663*4882a593Smuzhiyun "run setipargs;" \ 664*4882a593Smuzhiyun "tftp $loadaddr $bootfile;" \ 665*4882a593Smuzhiyun "tftp $fdtaddr $fdtfile;" \ 666*4882a593Smuzhiyun "bootm $loadaddr - $fdtaddr" 667*4882a593Smuzhiyun 668*4882a593Smuzhiyun #define CONFIG_RAMBOOTCOMMAND \ 669*4882a593Smuzhiyun "setenv rootdev /dev/ram;" \ 670*4882a593Smuzhiyun "run setbootargs;" \ 671*4882a593Smuzhiyun "tftp $ramdiskaddr $ramdiskfile;" \ 672*4882a593Smuzhiyun "tftp $loadaddr $bootfile;" \ 673*4882a593Smuzhiyun "tftp $fdtaddr $fdtfile;" \ 674*4882a593Smuzhiyun "bootm $loadaddr $ramdiskaddr $fdtaddr" 675*4882a593Smuzhiyun 676*4882a593Smuzhiyun #endif /* __CONFIG_H */ 677