1*4882a593Smuzhiyun /* 2*4882a593Smuzhiyun * Copyright (C) Freescale Semiconductor, Inc. 2006. 3*4882a593Smuzhiyun * 4*4882a593Smuzhiyun * (C) Copyright 2010 5*4882a593Smuzhiyun * Heiko Schocher, DENX Software Engineering, hs@denx.de. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun * SPDX-License-Identifier: GPL-2.0+ 8*4882a593Smuzhiyun */ 9*4882a593Smuzhiyun /* 10*4882a593Smuzhiyun * ve8313 board configuration file 11*4882a593Smuzhiyun */ 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun #ifndef __CONFIG_H 14*4882a593Smuzhiyun #define __CONFIG_H 15*4882a593Smuzhiyun 16*4882a593Smuzhiyun /* 17*4882a593Smuzhiyun * High Level Configuration Options 18*4882a593Smuzhiyun */ 19*4882a593Smuzhiyun #define CONFIG_E300 1 20*4882a593Smuzhiyun #define CONFIG_MPC831x 1 21*4882a593Smuzhiyun #define CONFIG_MPC8313 1 22*4882a593Smuzhiyun #define CONFIG_VE8313 1 23*4882a593Smuzhiyun 24*4882a593Smuzhiyun #ifndef CONFIG_SYS_TEXT_BASE 25*4882a593Smuzhiyun #define CONFIG_SYS_TEXT_BASE 0xfe000000 26*4882a593Smuzhiyun #endif 27*4882a593Smuzhiyun 28*4882a593Smuzhiyun #define CONFIG_PCI_INDIRECT_BRIDGE 1 29*4882a593Smuzhiyun #define CONFIG_FSL_ELBC 1 30*4882a593Smuzhiyun 31*4882a593Smuzhiyun /* 32*4882a593Smuzhiyun * On-board devices 33*4882a593Smuzhiyun * 34*4882a593Smuzhiyun */ 35*4882a593Smuzhiyun #define CONFIG_83XX_CLKIN 32000000 /* in Hz */ 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun #define CONFIG_SYS_CLK_FREQ CONFIG_83XX_CLKIN 38*4882a593Smuzhiyun 39*4882a593Smuzhiyun #define CONFIG_SYS_IMMR 0xE0000000 40*4882a593Smuzhiyun 41*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_START 0x00001000 42*4882a593Smuzhiyun #define CONFIG_SYS_MEMTEST_END 0x07000000 43*4882a593Smuzhiyun 44*4882a593Smuzhiyun #define CONFIG_SYS_ACR_PIPE_DEP 3 /* Arbiter pipeline depth */ 45*4882a593Smuzhiyun #define CONFIG_SYS_ACR_RPTCNT 3 /* Arbiter repeat count */ 46*4882a593Smuzhiyun 47*4882a593Smuzhiyun /* 48*4882a593Smuzhiyun * Device configurations 49*4882a593Smuzhiyun */ 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun /* 52*4882a593Smuzhiyun * DDR Setup 53*4882a593Smuzhiyun */ 54*4882a593Smuzhiyun #define CONFIG_SYS_DDR_BASE 0x00000000 /* DDR is system memory*/ 55*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_BASE 56*4882a593Smuzhiyun #define CONFIG_SYS_DDR_SDRAM_BASE CONFIG_SYS_DDR_BASE 57*4882a593Smuzhiyun 58*4882a593Smuzhiyun /* 59*4882a593Smuzhiyun * Manually set up DDR parameters, as this board does not 60*4882a593Smuzhiyun * have the SPD connected to I2C. 61*4882a593Smuzhiyun */ 62*4882a593Smuzhiyun #define CONFIG_SYS_DDR_SIZE 128 /* MB */ 63*4882a593Smuzhiyun #define CONFIG_SYS_DDR_CS0_CONFIG (CSCONFIG_EN \ 64*4882a593Smuzhiyun | CSCONFIG_AP \ 65*4882a593Smuzhiyun | CSCONFIG_ODT_RD_NEVER \ 66*4882a593Smuzhiyun | CSCONFIG_ODT_WR_ALL \ 67*4882a593Smuzhiyun | CSCONFIG_ROW_BIT_13 \ 68*4882a593Smuzhiyun | CSCONFIG_COL_BIT_10) 69*4882a593Smuzhiyun /* 0x80840102 */ 70*4882a593Smuzhiyun 71*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_3 0x00000000 72*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_0 ((0 << TIMING_CFG0_RWT_SHIFT) \ 73*4882a593Smuzhiyun | (0 << TIMING_CFG0_WRT_SHIFT) \ 74*4882a593Smuzhiyun | (3 << TIMING_CFG0_RRT_SHIFT) \ 75*4882a593Smuzhiyun | (2 << TIMING_CFG0_WWT_SHIFT) \ 76*4882a593Smuzhiyun | (7 << TIMING_CFG0_ACT_PD_EXIT_SHIFT) \ 77*4882a593Smuzhiyun | (2 << TIMING_CFG0_PRE_PD_EXIT_SHIFT) \ 78*4882a593Smuzhiyun | (8 << TIMING_CFG0_ODT_PD_EXIT_SHIFT) \ 79*4882a593Smuzhiyun | (2 << TIMING_CFG0_MRS_CYC_SHIFT)) 80*4882a593Smuzhiyun /* 0x0e720802 */ 81*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_1 ((2 << TIMING_CFG1_PRETOACT_SHIFT) \ 82*4882a593Smuzhiyun | (6 << TIMING_CFG1_ACTTOPRE_SHIFT) \ 83*4882a593Smuzhiyun | (2 << TIMING_CFG1_ACTTORW_SHIFT) \ 84*4882a593Smuzhiyun | (5 << TIMING_CFG1_CASLAT_SHIFT) \ 85*4882a593Smuzhiyun | (6 << TIMING_CFG1_REFREC_SHIFT) \ 86*4882a593Smuzhiyun | (2 << TIMING_CFG1_WRREC_SHIFT) \ 87*4882a593Smuzhiyun | (2 << TIMING_CFG1_ACTTOACT_SHIFT) \ 88*4882a593Smuzhiyun | (2 << TIMING_CFG1_WRTORD_SHIFT)) 89*4882a593Smuzhiyun /* 0x26256222 */ 90*4882a593Smuzhiyun #define CONFIG_SYS_DDR_TIMING_2 ((0 << TIMING_CFG2_ADD_LAT_SHIFT) \ 91*4882a593Smuzhiyun | (5 << TIMING_CFG2_CPO_SHIFT) \ 92*4882a593Smuzhiyun | (2 << TIMING_CFG2_WR_LAT_DELAY_SHIFT) \ 93*4882a593Smuzhiyun | (1 << TIMING_CFG2_RD_TO_PRE_SHIFT) \ 94*4882a593Smuzhiyun | (2 << TIMING_CFG2_WR_DATA_DELAY_SHIFT) \ 95*4882a593Smuzhiyun | (3 << TIMING_CFG2_CKE_PLS_SHIFT) \ 96*4882a593Smuzhiyun | (7 << TIMING_CFG2_FOUR_ACT_SHIFT)) 97*4882a593Smuzhiyun /* 0x029028c7 */ 98*4882a593Smuzhiyun #define CONFIG_SYS_DDR_INTERVAL ((0x320 << SDRAM_INTERVAL_REFINT_SHIFT) \ 99*4882a593Smuzhiyun | (0x2000 << SDRAM_INTERVAL_BSTOPRE_SHIFT)) 100*4882a593Smuzhiyun /* 0x03202000 */ 101*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_CFG (SDRAM_CFG_SREN \ 102*4882a593Smuzhiyun | SDRAM_CFG_SDRAM_TYPE_DDR2 \ 103*4882a593Smuzhiyun | SDRAM_CFG_DBW_32) 104*4882a593Smuzhiyun /* 0x43080000 */ 105*4882a593Smuzhiyun #define CONFIG_SYS_SDRAM_CFG2 0x00401000 106*4882a593Smuzhiyun #define CONFIG_SYS_DDR_MODE ((0x4440 << SDRAM_MODE_ESD_SHIFT) \ 107*4882a593Smuzhiyun | (0x0232 << SDRAM_MODE_SD_SHIFT)) 108*4882a593Smuzhiyun /* 0x44400232 */ 109*4882a593Smuzhiyun #define CONFIG_SYS_DDR_MODE_2 0x8000C000 110*4882a593Smuzhiyun 111*4882a593Smuzhiyun #define CONFIG_SYS_DDR_CLK_CNTL DDR_SDRAM_CLK_CNTL_CLK_ADJUST_05 112*4882a593Smuzhiyun /*0x02000000*/ 113*4882a593Smuzhiyun #define CONFIG_SYS_DDRCDR_VALUE (DDRCDR_EN \ 114*4882a593Smuzhiyun | DDRCDR_PZ_NOMZ \ 115*4882a593Smuzhiyun | DDRCDR_NZ_NOMZ \ 116*4882a593Smuzhiyun | DDRCDR_M_ODR) 117*4882a593Smuzhiyun /* 0x73000002 */ 118*4882a593Smuzhiyun 119*4882a593Smuzhiyun /* 120*4882a593Smuzhiyun * FLASH on the Local Bus 121*4882a593Smuzhiyun */ 122*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_CFI /* use the Common Flash Interface */ 123*4882a593Smuzhiyun #define CONFIG_FLASH_CFI_DRIVER /* use the CFI driver */ 124*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_BASE 0xFE000000 125*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_SIZE 32 /* size in MB */ 126*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_EMPTY_INFO /* display empty sectors */ 127*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE /* buffer up multiple bytes */ 128*4882a593Smuzhiyun 129*4882a593Smuzhiyun #define CONFIG_SYS_NOR_BR_PRELIM (CONFIG_SYS_FLASH_BASE \ 130*4882a593Smuzhiyun | BR_PS_16 /* 16 bit */ \ 131*4882a593Smuzhiyun | BR_MS_GPCM /* MSEL = GPCM */ \ 132*4882a593Smuzhiyun | BR_V) /* valid */ 133*4882a593Smuzhiyun #define CONFIG_SYS_NOR_OR_PRELIM (MEG_TO_AM(CONFIG_SYS_FLASH_SIZE) \ 134*4882a593Smuzhiyun | OR_GPCM_CSNT \ 135*4882a593Smuzhiyun | OR_GPCM_ACS_DIV4 \ 136*4882a593Smuzhiyun | OR_GPCM_SCY_5 \ 137*4882a593Smuzhiyun | OR_GPCM_TRLX_SET \ 138*4882a593Smuzhiyun | OR_GPCM_EAD) 139*4882a593Smuzhiyun /* 0xfe000c55 */ 140*4882a593Smuzhiyun 141*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR0_PRELIM CONFIG_SYS_FLASH_BASE 142*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR0_PRELIM (LBLAWAR_EN | LBLAWAR_32MB) 143*4882a593Smuzhiyun 144*4882a593Smuzhiyun #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 145*4882a593Smuzhiyun #define CONFIG_SYS_MAX_FLASH_SECT 256 /* sectors per dev */ 146*4882a593Smuzhiyun 147*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 148*4882a593Smuzhiyun #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 149*4882a593Smuzhiyun 150*4882a593Smuzhiyun #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 151*4882a593Smuzhiyun 152*4882a593Smuzhiyun #if (CONFIG_SYS_MONITOR_BASE < CONFIG_SYS_FLASH_BASE) 153*4882a593Smuzhiyun #define CONFIG_SYS_RAMBOOT 154*4882a593Smuzhiyun #endif 155*4882a593Smuzhiyun 156*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_LOCK 1 157*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_ADDR 0xFD000000 /* Initial RAM address */ 158*4882a593Smuzhiyun #define CONFIG_SYS_INIT_RAM_SIZE 0x1000 /* Size of used area in RAM*/ 159*4882a593Smuzhiyun 160*4882a593Smuzhiyun #define CONFIG_SYS_GBL_DATA_OFFSET \ 161*4882a593Smuzhiyun (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 162*4882a593Smuzhiyun #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 163*4882a593Smuzhiyun 164*4882a593Smuzhiyun /* CONFIG_SYS_MONITOR_LEN must be a multiple of CONFIG_ENV_SECT_SIZE */ 165*4882a593Smuzhiyun #define CONFIG_SYS_MONITOR_LEN (384 * 1024) 166*4882a593Smuzhiyun #define CONFIG_SYS_MALLOC_LEN (512 * 1024) 167*4882a593Smuzhiyun 168*4882a593Smuzhiyun /* 169*4882a593Smuzhiyun * Local Bus LCRR and LBCR regs 170*4882a593Smuzhiyun */ 171*4882a593Smuzhiyun #define CONFIG_SYS_LCRR_EADC LCRR_EADC_3 172*4882a593Smuzhiyun #define CONFIG_SYS_LCRR_CLKDIV LCRR_CLKDIV_2 173*4882a593Smuzhiyun 174*4882a593Smuzhiyun #define CONFIG_SYS_LBC_LBCR 0x00040000 175*4882a593Smuzhiyun 176*4882a593Smuzhiyun #define CONFIG_SYS_LBC_MRTPR 0x20000000 177*4882a593Smuzhiyun 178*4882a593Smuzhiyun /* 179*4882a593Smuzhiyun * NAND settings 180*4882a593Smuzhiyun */ 181*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BASE 0x61000000 182*4882a593Smuzhiyun #define CONFIG_SYS_MAX_NAND_DEVICE 1 183*4882a593Smuzhiyun #define CONFIG_NAND_FSL_ELBC 1 184*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BLOCK_SIZE 16384 185*4882a593Smuzhiyun 186*4882a593Smuzhiyun #define CONFIG_SYS_NAND_BR_PRELIM (CONFIG_SYS_NAND_BASE \ 187*4882a593Smuzhiyun | BR_PS_8 \ 188*4882a593Smuzhiyun | BR_DECC_CHK_GEN \ 189*4882a593Smuzhiyun | BR_MS_FCM \ 190*4882a593Smuzhiyun | BR_V) /* valid */ 191*4882a593Smuzhiyun /* 0x61000c21 */ 192*4882a593Smuzhiyun #define CONFIG_SYS_NAND_OR_PRELIM (OR_AM_32KB \ 193*4882a593Smuzhiyun | OR_FCM_BCTLD \ 194*4882a593Smuzhiyun | OR_FCM_CHT \ 195*4882a593Smuzhiyun | OR_FCM_SCY_2 \ 196*4882a593Smuzhiyun | OR_FCM_RST \ 197*4882a593Smuzhiyun | OR_FCM_TRLX) 198*4882a593Smuzhiyun /* 0xffff90ac */ 199*4882a593Smuzhiyun 200*4882a593Smuzhiyun #define CONFIG_SYS_BR0_PRELIM CONFIG_SYS_NOR_BR_PRELIM 201*4882a593Smuzhiyun #define CONFIG_SYS_OR0_PRELIM CONFIG_SYS_NOR_OR_PRELIM 202*4882a593Smuzhiyun #define CONFIG_SYS_BR1_PRELIM CONFIG_SYS_NAND_BR_PRELIM 203*4882a593Smuzhiyun #define CONFIG_SYS_OR1_PRELIM CONFIG_SYS_NAND_OR_PRELIM 204*4882a593Smuzhiyun 205*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWBAR1_PRELIM CONFIG_SYS_NAND_BASE 206*4882a593Smuzhiyun #define CONFIG_SYS_LBLAWAR1_PRELIM (LBLAWAR_EN | LBLAWAR_32KB) 207*4882a593Smuzhiyun 208*4882a593Smuzhiyun #define CONFIG_SYS_NAND_LBLAWBAR_PRELIM CONFIG_SYS_LBLAWBAR1_PRELIM 209*4882a593Smuzhiyun #define CONFIG_SYS_NAND_LBLAWAR_PRELIM CONFIG_SYS_LBLAWAR1_PRELIM 210*4882a593Smuzhiyun 211*4882a593Smuzhiyun /* CS2 NvRAM */ 212*4882a593Smuzhiyun #define CONFIG_SYS_BR2_PRELIM (0x60000000 \ 213*4882a593Smuzhiyun | BR_PS_8 \ 214*4882a593Smuzhiyun | BR_V) 215*4882a593Smuzhiyun /* 0x60000801 */ 216*4882a593Smuzhiyun #define CONFIG_SYS_OR2_PRELIM (OR_AM_128KB \ 217*4882a593Smuzhiyun | OR_GPCM_CSNT \ 218*4882a593Smuzhiyun | OR_GPCM_XACS \ 219*4882a593Smuzhiyun | OR_GPCM_SCY_3 \ 220*4882a593Smuzhiyun | OR_GPCM_TRLX_SET \ 221*4882a593Smuzhiyun | OR_GPCM_EHTR_SET \ 222*4882a593Smuzhiyun | OR_GPCM_EAD) 223*4882a593Smuzhiyun /* 0xfffe0937 */ 224*4882a593Smuzhiyun /* local bus read write buffer mapping SRAM@0x64000000 */ 225*4882a593Smuzhiyun #define CONFIG_SYS_BR3_PRELIM (0x62000000 \ 226*4882a593Smuzhiyun | BR_PS_16 \ 227*4882a593Smuzhiyun | BR_V) 228*4882a593Smuzhiyun /* 0x62001001 */ 229*4882a593Smuzhiyun 230*4882a593Smuzhiyun #define CONFIG_SYS_OR3_PRELIM (OR_AM_32MB \ 231*4882a593Smuzhiyun | OR_GPCM_CSNT \ 232*4882a593Smuzhiyun | OR_GPCM_XACS \ 233*4882a593Smuzhiyun | OR_GPCM_SCY_15 \ 234*4882a593Smuzhiyun | OR_GPCM_TRLX_SET \ 235*4882a593Smuzhiyun | OR_GPCM_EHTR_SET \ 236*4882a593Smuzhiyun | OR_GPCM_EAD) 237*4882a593Smuzhiyun /* 0xfe0009f7 */ 238*4882a593Smuzhiyun 239*4882a593Smuzhiyun /* 240*4882a593Smuzhiyun * Serial Port 241*4882a593Smuzhiyun */ 242*4882a593Smuzhiyun #define CONFIG_CONS_INDEX 1 243*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_SERIAL 244*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_REG_SIZE 1 245*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 246*4882a593Smuzhiyun 247*4882a593Smuzhiyun #define CONFIG_SYS_BAUDRATE_TABLE \ 248*4882a593Smuzhiyun {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 115200} 249*4882a593Smuzhiyun 250*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR+0x4500) 251*4882a593Smuzhiyun #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR+0x4600) 252*4882a593Smuzhiyun 253*4882a593Smuzhiyun #if defined(CONFIG_PCI) 254*4882a593Smuzhiyun /* 255*4882a593Smuzhiyun * General PCI 256*4882a593Smuzhiyun * Addresses are mapped 1-1. 257*4882a593Smuzhiyun */ 258*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MEM_BASE 0x80000000 259*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MEM_PHYS CONFIG_SYS_PCI1_MEM_BASE 260*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MEM_SIZE 0x10000000 /* 256M */ 261*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MMIO_BASE 0x90000000 262*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MMIO_PHYS CONFIG_SYS_PCI1_MMIO_BASE 263*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_MMIO_SIZE 0x10000000 /* 256M */ 264*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_IO_BASE 0x00000000 265*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_IO_PHYS 0xE2000000 266*4882a593Smuzhiyun #define CONFIG_SYS_PCI1_IO_SIZE 0x00100000 /* 1M */ 267*4882a593Smuzhiyun 268*4882a593Smuzhiyun #define CONFIG_SYS_PCI_SUBSYS_VENDORID 0x1957 /* Freescale */ 269*4882a593Smuzhiyun #endif 270*4882a593Smuzhiyun 271*4882a593Smuzhiyun /* 272*4882a593Smuzhiyun * TSEC 273*4882a593Smuzhiyun */ 274*4882a593Smuzhiyun #define CONFIG_TSEC_ENET /* TSEC ethernet support */ 275*4882a593Smuzhiyun 276*4882a593Smuzhiyun #define CONFIG_TSEC1 277*4882a593Smuzhiyun #ifdef CONFIG_TSEC1 278*4882a593Smuzhiyun #define CONFIG_HAS_ETH0 279*4882a593Smuzhiyun #define CONFIG_TSEC1_NAME "TSEC1" 280*4882a593Smuzhiyun #define CONFIG_SYS_TSEC1_OFFSET 0x24000 281*4882a593Smuzhiyun #define TSEC1_PHY_ADDR 0x01 282*4882a593Smuzhiyun #define TSEC1_FLAGS 0 283*4882a593Smuzhiyun #define TSEC1_PHYIDX 0 284*4882a593Smuzhiyun #endif 285*4882a593Smuzhiyun 286*4882a593Smuzhiyun /* Options are: TSEC[0-1] */ 287*4882a593Smuzhiyun #define CONFIG_ETHPRIME "TSEC1" 288*4882a593Smuzhiyun 289*4882a593Smuzhiyun /* 290*4882a593Smuzhiyun * Environment 291*4882a593Smuzhiyun */ 292*4882a593Smuzhiyun #define CONFIG_ENV_ADDR \ 293*4882a593Smuzhiyun (CONFIG_SYS_FLASH_BASE + CONFIG_SYS_MONITOR_LEN) 294*4882a593Smuzhiyun #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K(one sector) for env */ 295*4882a593Smuzhiyun #define CONFIG_ENV_SIZE 0x4000 296*4882a593Smuzhiyun /* Address and size of Redundant Environment Sector */ 297*4882a593Smuzhiyun #define CONFIG_ENV_OFFSET_REDUND \ 298*4882a593Smuzhiyun (CONFIG_ENV_OFFSET + CONFIG_ENV_SECT_SIZE) 299*4882a593Smuzhiyun #define CONFIG_ENV_SIZE_REDUND (CONFIG_ENV_SIZE) 300*4882a593Smuzhiyun 301*4882a593Smuzhiyun #define CONFIG_LOADS_ECHO 1 /* echo on for serial download */ 302*4882a593Smuzhiyun #define CONFIG_SYS_LOADS_BAUD_CHANGE 1 /* allow baudrate change */ 303*4882a593Smuzhiyun 304*4882a593Smuzhiyun /* 305*4882a593Smuzhiyun * BOOTP options 306*4882a593Smuzhiyun */ 307*4882a593Smuzhiyun #define CONFIG_BOOTP_BOOTFILESIZE 308*4882a593Smuzhiyun #define CONFIG_BOOTP_BOOTPATH 309*4882a593Smuzhiyun #define CONFIG_BOOTP_GATEWAY 310*4882a593Smuzhiyun #define CONFIG_BOOTP_HOSTNAME 311*4882a593Smuzhiyun 312*4882a593Smuzhiyun /* 313*4882a593Smuzhiyun * Command line configuration. 314*4882a593Smuzhiyun */ 315*4882a593Smuzhiyun 316*4882a593Smuzhiyun #define CONFIG_CMDLINE_EDITING 1 317*4882a593Smuzhiyun #define CONFIG_AUTO_COMPLETE /* add autocompletion support */ 318*4882a593Smuzhiyun 319*4882a593Smuzhiyun /* 320*4882a593Smuzhiyun * Miscellaneous configurable options 321*4882a593Smuzhiyun */ 322*4882a593Smuzhiyun #define CONFIG_SYS_LONGHELP /* undef to save memory */ 323*4882a593Smuzhiyun #define CONFIG_SYS_LOAD_ADDR 0x100000 /* default load address */ 324*4882a593Smuzhiyun #define CONFIG_SYS_CBSIZE 1024 /* Console I/O Buffer Size */ 325*4882a593Smuzhiyun 326*4882a593Smuzhiyun #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE /* Boot arg Buffer size */ 327*4882a593Smuzhiyun 328*4882a593Smuzhiyun /* 329*4882a593Smuzhiyun * For booting Linux, the board info and command line data 330*4882a593Smuzhiyun * have to be in the first 256 MB of memory, since this is 331*4882a593Smuzhiyun * the maximum mapped by the Linux kernel during initialization. 332*4882a593Smuzhiyun */ 333*4882a593Smuzhiyun /* Initial Memory map for Linux*/ 334*4882a593Smuzhiyun #define CONFIG_SYS_BOOTMAPSZ (256 << 20) 335*4882a593Smuzhiyun 336*4882a593Smuzhiyun /* 0x64050000 */ 337*4882a593Smuzhiyun #define CONFIG_SYS_HRCW_LOW (\ 338*4882a593Smuzhiyun 0x20000000 /* reserved, must be set */ |\ 339*4882a593Smuzhiyun HRCWL_DDRCM |\ 340*4882a593Smuzhiyun HRCWL_CSB_TO_CLKIN_4X1 | \ 341*4882a593Smuzhiyun HRCWL_CORE_TO_CSB_2_5X1) 342*4882a593Smuzhiyun 343*4882a593Smuzhiyun /* 0xa0600004 */ 344*4882a593Smuzhiyun #define CONFIG_SYS_HRCW_HIGH (HRCWH_PCI_HOST | \ 345*4882a593Smuzhiyun HRCWH_PCI_ARBITER_ENABLE | \ 346*4882a593Smuzhiyun HRCWH_CORE_ENABLE | \ 347*4882a593Smuzhiyun HRCWH_FROM_0X00000100 | \ 348*4882a593Smuzhiyun HRCWH_BOOTSEQ_DISABLE |\ 349*4882a593Smuzhiyun HRCWH_SW_WATCHDOG_DISABLE |\ 350*4882a593Smuzhiyun HRCWH_ROM_LOC_LOCAL_16BIT | \ 351*4882a593Smuzhiyun HRCWH_TSEC1M_IN_MII | \ 352*4882a593Smuzhiyun HRCWH_BIG_ENDIAN | \ 353*4882a593Smuzhiyun HRCWH_LALE_EARLY) 354*4882a593Smuzhiyun 355*4882a593Smuzhiyun /* System IO Config */ 356*4882a593Smuzhiyun #define CONFIG_SYS_SICRH (0x01000000 | \ 357*4882a593Smuzhiyun SICRH_ETSEC2_B | \ 358*4882a593Smuzhiyun SICRH_ETSEC2_C | \ 359*4882a593Smuzhiyun SICRH_ETSEC2_D | \ 360*4882a593Smuzhiyun SICRH_ETSEC2_E | \ 361*4882a593Smuzhiyun SICRH_ETSEC2_F | \ 362*4882a593Smuzhiyun SICRH_ETSEC2_G | \ 363*4882a593Smuzhiyun SICRH_TSOBI1 | \ 364*4882a593Smuzhiyun SICRH_TSOBI2) 365*4882a593Smuzhiyun /* 0x010fff03 */ 366*4882a593Smuzhiyun #define CONFIG_SYS_SICRL (SICRL_LBC | \ 367*4882a593Smuzhiyun SICRL_SPI_A | \ 368*4882a593Smuzhiyun SICRL_SPI_B | \ 369*4882a593Smuzhiyun SICRL_SPI_C | \ 370*4882a593Smuzhiyun SICRL_SPI_D | \ 371*4882a593Smuzhiyun SICRL_ETSEC2_A) 372*4882a593Smuzhiyun /* 0x33fc0003) */ 373*4882a593Smuzhiyun 374*4882a593Smuzhiyun #define CONFIG_SYS_HID0_INIT 0x000000000 375*4882a593Smuzhiyun #define CONFIG_SYS_HID0_FINAL (HID0_ENABLE_MACHINE_CHECK | \ 376*4882a593Smuzhiyun HID0_ENABLE_INSTRUCTION_CACHE) 377*4882a593Smuzhiyun 378*4882a593Smuzhiyun #define CONFIG_SYS_HID2 HID2_HBE 379*4882a593Smuzhiyun 380*4882a593Smuzhiyun #define CONFIG_HIGH_BATS 1 /* High BATs supported */ 381*4882a593Smuzhiyun 382*4882a593Smuzhiyun /* DDR @ 0x00000000 */ 383*4882a593Smuzhiyun #define CONFIG_SYS_IBAT0L (CONFIG_SYS_SDRAM_BASE | BATL_PP_RW) 384*4882a593Smuzhiyun #define CONFIG_SYS_IBAT0U (CONFIG_SYS_SDRAM_BASE \ 385*4882a593Smuzhiyun | BATU_BL_256M \ 386*4882a593Smuzhiyun | BATU_VS \ 387*4882a593Smuzhiyun | BATU_VP) 388*4882a593Smuzhiyun 389*4882a593Smuzhiyun #if defined(CONFIG_PCI) 390*4882a593Smuzhiyun /* PCI @ 0x80000000 */ 391*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1L (CONFIG_SYS_PCI1_MEM_BASE | BATL_PP_RW) 392*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1U (CONFIG_SYS_PCI1_MEM_BASE \ 393*4882a593Smuzhiyun | BATU_BL_256M \ 394*4882a593Smuzhiyun | BATU_VS \ 395*4882a593Smuzhiyun | BATU_VP) 396*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2L (CONFIG_SYS_PCI1_MMIO_BASE \ 397*4882a593Smuzhiyun | BATL_PP_RW \ 398*4882a593Smuzhiyun | BATL_CACHEINHIBIT \ 399*4882a593Smuzhiyun | BATL_GUARDEDSTORAGE) 400*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2U (CONFIG_SYS_PCI1_MMIO_BASE \ 401*4882a593Smuzhiyun | BATU_BL_256M \ 402*4882a593Smuzhiyun | BATU_VS \ 403*4882a593Smuzhiyun | BATU_VP) 404*4882a593Smuzhiyun #else 405*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1L (0) 406*4882a593Smuzhiyun #define CONFIG_SYS_IBAT1U (0) 407*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2L (0) 408*4882a593Smuzhiyun #define CONFIG_SYS_IBAT2U (0) 409*4882a593Smuzhiyun #endif 410*4882a593Smuzhiyun 411*4882a593Smuzhiyun /* PCI2 not supported on 8313 */ 412*4882a593Smuzhiyun #define CONFIG_SYS_IBAT3L (0) 413*4882a593Smuzhiyun #define CONFIG_SYS_IBAT3U (0) 414*4882a593Smuzhiyun #define CONFIG_SYS_IBAT4L (0) 415*4882a593Smuzhiyun #define CONFIG_SYS_IBAT4U (0) 416*4882a593Smuzhiyun 417*4882a593Smuzhiyun /* IMMRBAR @ 0xE0000000, PCI IO @ 0xE2000000 & BCSR @ 0xE2400000 */ 418*4882a593Smuzhiyun #define CONFIG_SYS_IBAT5L (CONFIG_SYS_IMMR \ 419*4882a593Smuzhiyun | BATL_PP_RW \ 420*4882a593Smuzhiyun | BATL_CACHEINHIBIT \ 421*4882a593Smuzhiyun | BATL_GUARDEDSTORAGE) 422*4882a593Smuzhiyun #define CONFIG_SYS_IBAT5U (CONFIG_SYS_IMMR \ 423*4882a593Smuzhiyun | BATU_BL_256M \ 424*4882a593Smuzhiyun | BATU_VS \ 425*4882a593Smuzhiyun | BATU_VP) 426*4882a593Smuzhiyun 427*4882a593Smuzhiyun /* stack in DCACHE 0xFDF00000 & FLASH @ 0xFE000000 */ 428*4882a593Smuzhiyun #define CONFIG_SYS_IBAT6L (0xF0000000 | BATL_PP_RW | BATL_GUARDEDSTORAGE) 429*4882a593Smuzhiyun #define CONFIG_SYS_IBAT6U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP) 430*4882a593Smuzhiyun 431*4882a593Smuzhiyun /* FPGA, SRAM, NAND @ 0x60000000 */ 432*4882a593Smuzhiyun #define CONFIG_SYS_IBAT7L (0x60000000 | BATL_PP_RW | BATL_GUARDEDSTORAGE) 433*4882a593Smuzhiyun #define CONFIG_SYS_IBAT7U (0x60000000 | BATU_BL_256M | BATU_VS | BATU_VP) 434*4882a593Smuzhiyun 435*4882a593Smuzhiyun #define CONFIG_SYS_DBAT0L CONFIG_SYS_IBAT0L 436*4882a593Smuzhiyun #define CONFIG_SYS_DBAT0U CONFIG_SYS_IBAT0U 437*4882a593Smuzhiyun #define CONFIG_SYS_DBAT1L CONFIG_SYS_IBAT1L 438*4882a593Smuzhiyun #define CONFIG_SYS_DBAT1U CONFIG_SYS_IBAT1U 439*4882a593Smuzhiyun #define CONFIG_SYS_DBAT2L CONFIG_SYS_IBAT2L 440*4882a593Smuzhiyun #define CONFIG_SYS_DBAT2U CONFIG_SYS_IBAT2U 441*4882a593Smuzhiyun #define CONFIG_SYS_DBAT3L CONFIG_SYS_IBAT3L 442*4882a593Smuzhiyun #define CONFIG_SYS_DBAT3U CONFIG_SYS_IBAT3U 443*4882a593Smuzhiyun #define CONFIG_SYS_DBAT4L CONFIG_SYS_IBAT4L 444*4882a593Smuzhiyun #define CONFIG_SYS_DBAT4U CONFIG_SYS_IBAT4U 445*4882a593Smuzhiyun #define CONFIG_SYS_DBAT5L CONFIG_SYS_IBAT5L 446*4882a593Smuzhiyun #define CONFIG_SYS_DBAT5U CONFIG_SYS_IBAT5U 447*4882a593Smuzhiyun #define CONFIG_SYS_DBAT6L CONFIG_SYS_IBAT6L 448*4882a593Smuzhiyun #define CONFIG_SYS_DBAT6U CONFIG_SYS_IBAT6U 449*4882a593Smuzhiyun #define CONFIG_SYS_DBAT7L CONFIG_SYS_IBAT7L 450*4882a593Smuzhiyun #define CONFIG_SYS_DBAT7U CONFIG_SYS_IBAT7U 451*4882a593Smuzhiyun 452*4882a593Smuzhiyun #define CONFIG_NETDEV eth0 453*4882a593Smuzhiyun 454*4882a593Smuzhiyun #define CONFIG_HOSTNAME ve8313 455*4882a593Smuzhiyun #define CONFIG_UBOOTPATH ve8313/u-boot.bin 456*4882a593Smuzhiyun 457*4882a593Smuzhiyun #define CONFIG_EXTRA_ENV_SETTINGS \ 458*4882a593Smuzhiyun "netdev=" __stringify(CONFIG_NETDEV) "\0" \ 459*4882a593Smuzhiyun "ethprime=" __stringify(CONFIG_TSEC1_NAME) "\0" \ 460*4882a593Smuzhiyun "u-boot=" __stringify(CONFIG_UBOOTPATH) "\0" \ 461*4882a593Smuzhiyun "u-boot_addr_r=100000\0" \ 462*4882a593Smuzhiyun "load=tftp ${u-boot_addr_r} ${u-boot}\0" \ 463*4882a593Smuzhiyun "update=protect off " __stringify(CONFIG_SYS_FLASH_BASE) \ 464*4882a593Smuzhiyun " +${filesize};" \ 465*4882a593Smuzhiyun "erase " __stringify(CONFIG_SYS_FLASH_BASE) " +${filesize};" \ 466*4882a593Smuzhiyun "cp.b ${u-boot_addr_r} " __stringify(CONFIG_SYS_FLASH_BASE) \ 467*4882a593Smuzhiyun " ${filesize};" \ 468*4882a593Smuzhiyun "protect on " __stringify(CONFIG_SYS_FLASH_BASE) " +${filesize}\0" \ 469*4882a593Smuzhiyun 470*4882a593Smuzhiyun #endif /* __CONFIG_H */ 471