1*a8d9758dSMingkai Hu /* 2*a8d9758dSMingkai Hu * Copyright 2013 Freescale Semiconductor, Inc. 3*a8d9758dSMingkai Hu * 4*a8d9758dSMingkai Hu * See file CREDITS for list of people who contributed to this 5*a8d9758dSMingkai Hu * project. 6*a8d9758dSMingkai Hu * 7*a8d9758dSMingkai Hu * This program is free software; you can redistribute it and/or 8*a8d9758dSMingkai Hu * modify it under the terms of the GNU General Public License as 9*a8d9758dSMingkai Hu * published by the Free Software Foundation; either version 2 of 10*a8d9758dSMingkai Hu * the License, or (at your option) any later version. 11*a8d9758dSMingkai Hu * 12*a8d9758dSMingkai Hu * This program is distributed in the hope that it will be useful, 13*a8d9758dSMingkai Hu * but WITHOUT ANY WARRANTY; without even the implied warranty of 14*a8d9758dSMingkai Hu * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.See the 15*a8d9758dSMingkai Hu * GNU General Public License for more details. 16*a8d9758dSMingkai Hu * 17*a8d9758dSMingkai Hu * You should have received a copy of the GNU General Public License 18*a8d9758dSMingkai Hu * along with this program; if not, write to the Free Software 19*a8d9758dSMingkai Hu * Foundation, Inc., 59 Temple Place, Suite 330, Boston, 20*a8d9758dSMingkai Hu * MA 02111-1307 USA 21*a8d9758dSMingkai Hu */ 22*a8d9758dSMingkai Hu 23*a8d9758dSMingkai Hu /* 24*a8d9758dSMingkai Hu * C29XPCIE board configuration file 25*a8d9758dSMingkai Hu */ 26*a8d9758dSMingkai Hu 27*a8d9758dSMingkai Hu #ifndef __CONFIG_H 28*a8d9758dSMingkai Hu #define __CONFIG_H 29*a8d9758dSMingkai Hu 30*a8d9758dSMingkai Hu #define CONFIG_PHYS_64BIT 31*a8d9758dSMingkai Hu 32*a8d9758dSMingkai Hu #ifdef CONFIG_C29XPCIE 33*a8d9758dSMingkai Hu #define CONFIG_PPC_C29X 34*a8d9758dSMingkai Hu #endif 35*a8d9758dSMingkai Hu 36*a8d9758dSMingkai Hu #ifdef CONFIG_SPIFLASH 37*a8d9758dSMingkai Hu #define CONFIG_RAMBOOT_SPIFLASH 38*a8d9758dSMingkai Hu #define CONFIG_SYS_TEXT_BASE 0x11000000 39*a8d9758dSMingkai Hu #define CONFIG_RESET_VECTOR_ADDRESS 0x1107fffc 40*a8d9758dSMingkai Hu #endif 41*a8d9758dSMingkai Hu 42*a8d9758dSMingkai Hu #ifndef CONFIG_SYS_TEXT_BASE 43*a8d9758dSMingkai Hu #define CONFIG_SYS_TEXT_BASE 0xeff80000 44*a8d9758dSMingkai Hu #endif 45*a8d9758dSMingkai Hu 46*a8d9758dSMingkai Hu #ifndef CONFIG_RESET_VECTOR_ADDRESS 47*a8d9758dSMingkai Hu #define CONFIG_RESET_VECTOR_ADDRESS 0xeffffffc 48*a8d9758dSMingkai Hu #endif 49*a8d9758dSMingkai Hu 50*a8d9758dSMingkai Hu #ifndef CONFIG_SYS_MONITOR_BASE 51*a8d9758dSMingkai Hu #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE 52*a8d9758dSMingkai Hu #endif 53*a8d9758dSMingkai Hu 54*a8d9758dSMingkai Hu /* High Level Configuration Options */ 55*a8d9758dSMingkai Hu #define CONFIG_BOOKE /* BOOKE */ 56*a8d9758dSMingkai Hu #define CONFIG_E500 /* BOOKE e500 family */ 57*a8d9758dSMingkai Hu #define CONFIG_MPC85xx 58*a8d9758dSMingkai Hu #define CONFIG_FSL_IFC /* Enable IFC Support */ 59*a8d9758dSMingkai Hu #define CONFIG_SYS_HAS_SERDES /* common SERDES init code */ 60*a8d9758dSMingkai Hu 61*a8d9758dSMingkai Hu #define CONFIG_PCI /* Enable PCI/PCIE */ 62*a8d9758dSMingkai Hu #ifdef CONFIG_PCI 63*a8d9758dSMingkai Hu #define CONFIG_PCIE1 /* PCIE controler 1 (slot 1) */ 64*a8d9758dSMingkai Hu #define CONFIG_FSL_PCI_INIT /* Use common FSL init code */ 65*a8d9758dSMingkai Hu #define CONFIG_PCI_INDIRECT_BRIDGE 66*a8d9758dSMingkai Hu #define CONFIG_FSL_PCIE_RESET /* need PCIe reset errata */ 67*a8d9758dSMingkai Hu #define CONFIG_SYS_PCI_64BIT /* enable 64-bit PCI resources */ 68*a8d9758dSMingkai Hu 69*a8d9758dSMingkai Hu #define CONFIG_CMD_NET 70*a8d9758dSMingkai Hu #define CONFIG_CMD_PCI 71*a8d9758dSMingkai Hu 72*a8d9758dSMingkai Hu #define CONFIG_E1000 73*a8d9758dSMingkai Hu 74*a8d9758dSMingkai Hu /* 75*a8d9758dSMingkai Hu * PCI Windows 76*a8d9758dSMingkai Hu * Memory space is mapped 1-1, but I/O space must start from 0. 77*a8d9758dSMingkai Hu */ 78*a8d9758dSMingkai Hu /* controller 1, Slot 1, tgtid 1, Base address a000 */ 79*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_NAME "Slot 1" 80*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_VIRT 0x80000000 81*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_BUS 0x80000000 82*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_PHYS 0xc00000000ull 83*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_MEM_SIZE 0x10000000 /* 256M */ 84*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_VIRT 0xffc00000 85*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_BUS 0x00000000 86*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_SIZE 0x00010000 /* 64k */ 87*a8d9758dSMingkai Hu #define CONFIG_SYS_PCIE1_IO_PHYS 0xfffc00000ull 88*a8d9758dSMingkai Hu 89*a8d9758dSMingkai Hu #define CONFIG_PCI_PNP /* do pci plug-and-play */ 90*a8d9758dSMingkai Hu 91*a8d9758dSMingkai Hu #define CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ 92*a8d9758dSMingkai Hu #define CONFIG_DOS_PARTITION 93*a8d9758dSMingkai Hu #endif 94*a8d9758dSMingkai Hu 95*a8d9758dSMingkai Hu #define CONFIG_FSL_LAW /* Use common FSL init code */ 96*a8d9758dSMingkai Hu #define CONFIG_TSEC_ENET 97*a8d9758dSMingkai Hu #define CONFIG_ENV_OVERWRITE 98*a8d9758dSMingkai Hu 99*a8d9758dSMingkai Hu #define CONFIG_DDR_CLK_FREQ 100000000 100*a8d9758dSMingkai Hu #define CONFIG_SYS_CLK_FREQ 66666666 101*a8d9758dSMingkai Hu 102*a8d9758dSMingkai Hu #define CONFIG_HWCONFIG 103*a8d9758dSMingkai Hu 104*a8d9758dSMingkai Hu /* 105*a8d9758dSMingkai Hu * These can be toggled for performance analysis, otherwise use default. 106*a8d9758dSMingkai Hu */ 107*a8d9758dSMingkai Hu #define CONFIG_L2_CACHE /* toggle L2 cache */ 108*a8d9758dSMingkai Hu #define CONFIG_BTB /* toggle branch predition */ 109*a8d9758dSMingkai Hu 110*a8d9758dSMingkai Hu #define CONFIG_ADDR_STREAMING /* toggle addr streaming */ 111*a8d9758dSMingkai Hu 112*a8d9758dSMingkai Hu #define CONFIG_ENABLE_36BIT_PHYS 113*a8d9758dSMingkai Hu 114*a8d9758dSMingkai Hu #define CONFIG_ADDR_MAP 1 115*a8d9758dSMingkai Hu #define CONFIG_SYS_NUM_ADDR_MAP 16 /* number of TLB1 entries */ 116*a8d9758dSMingkai Hu 117*a8d9758dSMingkai Hu #define CONFIG_SYS_MEMTEST_START 0x00200000 118*a8d9758dSMingkai Hu #define CONFIG_SYS_MEMTEST_END 0x00400000 119*a8d9758dSMingkai Hu #define CONFIG_PANIC_HANG 120*a8d9758dSMingkai Hu 121*a8d9758dSMingkai Hu /* DDR Setup */ 122*a8d9758dSMingkai Hu #define CONFIG_FSL_DDR3 123*a8d9758dSMingkai Hu #define CONFIG_DDR_SPD 124*a8d9758dSMingkai Hu #define CONFIG_SYS_SPD_BUS_NUM 0 125*a8d9758dSMingkai Hu #define SPD_EEPROM_ADDRESS 0x50 126*a8d9758dSMingkai Hu #define CONFIG_SYS_DDR_RAW_TIMING 127*a8d9758dSMingkai Hu 128*a8d9758dSMingkai Hu /* DDR ECC Setup*/ 129*a8d9758dSMingkai Hu #define CONFIG_DDR_ECC 130*a8d9758dSMingkai Hu #define CONFIG_MEM_INIT_VALUE 0xDeadBeef 131*a8d9758dSMingkai Hu #define CONFIG_ECC_INIT_VIA_DDRCONTROLLER 132*a8d9758dSMingkai Hu 133*a8d9758dSMingkai Hu #define CONFIG_SYS_SDRAM_SIZE 512 134*a8d9758dSMingkai Hu #define CONFIG_SYS_DDR_SDRAM_BASE 0x00000000 135*a8d9758dSMingkai Hu #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 136*a8d9758dSMingkai Hu 137*a8d9758dSMingkai Hu #define CONFIG_DIMM_SLOTS_PER_CTLR 1 138*a8d9758dSMingkai Hu #define CONFIG_CHIP_SELECTS_PER_CTRL 1 139*a8d9758dSMingkai Hu 140*a8d9758dSMingkai Hu #define CONFIG_SYS_CCSRBAR 0xffe00000 141*a8d9758dSMingkai Hu #define CONFIG_SYS_CCSRBAR_PHYS_LOW CONFIG_SYS_CCSRBAR 142*a8d9758dSMingkai Hu 143*a8d9758dSMingkai Hu /* Platform SRAM setting */ 144*a8d9758dSMingkai Hu #define CONFIG_SYS_PLATFORM_SRAM_BASE 0xffb00000 145*a8d9758dSMingkai Hu #define CONFIG_SYS_PLATFORM_SRAM_BASE_PHYS \ 146*a8d9758dSMingkai Hu (0xf00000000ull | CONFIG_SYS_PLATFORM_SRAM_BASE) 147*a8d9758dSMingkai Hu #define CONFIG_SYS_PLATFORM_SRAM_SIZE (512 << 10) 148*a8d9758dSMingkai Hu 149*a8d9758dSMingkai Hu /* 150*a8d9758dSMingkai Hu * IFC Definitions 151*a8d9758dSMingkai Hu */ 152*a8d9758dSMingkai Hu /* NOR Flash on IFC */ 153*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_BASE 0xec000000 154*a8d9758dSMingkai Hu #define CONFIG_SYS_MAX_FLASH_SECT 512 /* 64M */ 155*a8d9758dSMingkai Hu 156*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_BASE_PHYS (0xf00000000ull | CONFIG_SYS_FLASH_BASE) 157*a8d9758dSMingkai Hu 158*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE_PHYS } 159*a8d9758dSMingkai Hu #define CONFIG_SYS_MAX_FLASH_BANKS 1 160*a8d9758dSMingkai Hu 161*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_QUIET_TEST 162*a8d9758dSMingkai Hu #define CONFIG_FLASH_SHOW_PROGRESS 45 163*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* in ms */ 164*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* in ms */ 165*a8d9758dSMingkai Hu 166*a8d9758dSMingkai Hu /* 16Bit NOR Flash - S29GL512S10TFI01 */ 167*a8d9758dSMingkai Hu #define CONFIG_SYS_NOR_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ 168*a8d9758dSMingkai Hu CSPR_PORT_SIZE_16 | \ 169*a8d9758dSMingkai Hu CSPR_MSEL_NOR | \ 170*a8d9758dSMingkai Hu CSPR_V) 171*a8d9758dSMingkai Hu #define CONFIG_SYS_NOR_AMASK IFC_AMASK(64*1024*1024) 172*a8d9758dSMingkai Hu #define CONFIG_SYS_NOR_CSOR CSOR_NOR_ADM_SHIFT(4) 173*a8d9758dSMingkai Hu #define CONFIG_SYS_NOR_FTIM0 (FTIM0_NOR_TACSE(0x4) | \ 174*a8d9758dSMingkai Hu FTIM0_NOR_TEADC(0x5) | \ 175*a8d9758dSMingkai Hu FTIM0_NOR_TEAHC(0x5)) 176*a8d9758dSMingkai Hu #define CONFIG_SYS_NOR_FTIM1 (FTIM1_NOR_TACO(0x1e) | \ 177*a8d9758dSMingkai Hu FTIM1_NOR_TRAD_NOR(0x0f) | \ 178*a8d9758dSMingkai Hu FTIM1_NOR_TSEQRAD_NOR(0x0f)) 179*a8d9758dSMingkai Hu #define CONFIG_SYS_NOR_FTIM2 (FTIM2_NOR_TCS(0x4) | \ 180*a8d9758dSMingkai Hu FTIM2_NOR_TCH(0x4) | \ 181*a8d9758dSMingkai Hu FTIM2_NOR_TWP(0x1c)) 182*a8d9758dSMingkai Hu #define CONFIG_SYS_NOR_FTIM3 0x0 183*a8d9758dSMingkai Hu 184*a8d9758dSMingkai Hu /* CFI for NOR Flash */ 185*a8d9758dSMingkai Hu #define CONFIG_FLASH_CFI_DRIVER 186*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_CFI 187*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_EMPTY_INFO 188*a8d9758dSMingkai Hu #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 189*a8d9758dSMingkai Hu 190*a8d9758dSMingkai Hu /* NAND Flash on IFC */ 191*a8d9758dSMingkai Hu #define CONFIG_NAND_FSL_IFC 192*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_BASE 0xff800000 193*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_BASE_PHYS 0xfff800000ull 194*a8d9758dSMingkai Hu 195*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_BASE_LIST { CONFIG_SYS_NAND_BASE } 196*a8d9758dSMingkai Hu 197*a8d9758dSMingkai Hu #define CONFIG_SYS_MAX_NAND_DEVICE 1 198*a8d9758dSMingkai Hu #define CONFIG_MTD_NAND_VERIFY_WRITE 199*a8d9758dSMingkai Hu #define CONFIG_CMD_NAND 200*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * 1024) 201*a8d9758dSMingkai Hu 202*a8d9758dSMingkai Hu /* 8Bit NAND Flash - K9F1G08U0B */ 203*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \ 204*a8d9758dSMingkai Hu | CSPR_PORT_SIZE_8 \ 205*a8d9758dSMingkai Hu | CSPR_MSEL_NAND \ 206*a8d9758dSMingkai Hu | CSPR_V) 207*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_AMASK IFC_AMASK(64*1024) 208*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_CSOR (CSOR_NAND_ECC_ENC_EN /* ECC on encode */ \ 209*a8d9758dSMingkai Hu | CSOR_NAND_ECC_DEC_EN /* ECC on decode */ \ 210*a8d9758dSMingkai Hu | CSOR_NAND_ECC_MODE_4 /* 4-bit ECC */ \ 211*a8d9758dSMingkai Hu | CSOR_NAND_RAL_2 /* RAL = 2 Bytes */ \ 212*a8d9758dSMingkai Hu | CSOR_NAND_PGS_2K /* Page Size = 2k */ \ 213*a8d9758dSMingkai Hu | CSOR_NAND_SPRZ_64 /* Spare size = 64 */ \ 214*a8d9758dSMingkai Hu | CSOR_NAND_PB(64)) /* 64 Pages Per Block */ 215*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_FTIM0 (FTIM0_NAND_TCCST(0x01) | \ 216*a8d9758dSMingkai Hu FTIM0_NAND_TWP(0x0c) | \ 217*a8d9758dSMingkai Hu FTIM0_NAND_TWCHT(0x08) | \ 218*a8d9758dSMingkai Hu FTIM0_NAND_TWH(0x06)) 219*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_FTIM1 (FTIM1_NAND_TADLE(0x28) | \ 220*a8d9758dSMingkai Hu FTIM1_NAND_TWBE(0x1d) | \ 221*a8d9758dSMingkai Hu FTIM1_NAND_TRR(0x08) | \ 222*a8d9758dSMingkai Hu FTIM1_NAND_TRP(0x0c)) 223*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_FTIM2 (FTIM2_NAND_TRAD(0x0c) | \ 224*a8d9758dSMingkai Hu FTIM2_NAND_TREH(0x0a) | \ 225*a8d9758dSMingkai Hu FTIM2_NAND_TWHRE(0x18)) 226*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_FTIM3 (FTIM3_NAND_TWW(0x04)) 227*a8d9758dSMingkai Hu 228*a8d9758dSMingkai Hu #define CONFIG_SYS_NAND_DDR_LAW 11 229*a8d9758dSMingkai Hu 230*a8d9758dSMingkai Hu /* Set up IFC registers for boot location NOR/NAND */ 231*a8d9758dSMingkai Hu #define CONFIG_SYS_CSPR0 CONFIG_SYS_NOR_CSPR 232*a8d9758dSMingkai Hu #define CONFIG_SYS_AMASK0 CONFIG_SYS_NOR_AMASK 233*a8d9758dSMingkai Hu #define CONFIG_SYS_CSOR0 CONFIG_SYS_NOR_CSOR 234*a8d9758dSMingkai Hu #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NOR_FTIM0 235*a8d9758dSMingkai Hu #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NOR_FTIM1 236*a8d9758dSMingkai Hu #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NOR_FTIM2 237*a8d9758dSMingkai Hu #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NOR_FTIM3 238*a8d9758dSMingkai Hu #define CONFIG_SYS_CSPR1 CONFIG_SYS_NAND_CSPR 239*a8d9758dSMingkai Hu #define CONFIG_SYS_AMASK1 CONFIG_SYS_NAND_AMASK 240*a8d9758dSMingkai Hu #define CONFIG_SYS_CSOR1 CONFIG_SYS_NAND_CSOR 241*a8d9758dSMingkai Hu #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_NAND_FTIM0 242*a8d9758dSMingkai Hu #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_NAND_FTIM1 243*a8d9758dSMingkai Hu #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_NAND_FTIM2 244*a8d9758dSMingkai Hu #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_NAND_FTIM3 245*a8d9758dSMingkai Hu 246*a8d9758dSMingkai Hu /* CPLD on IFC, selected by CS2 */ 247*a8d9758dSMingkai Hu #define CONFIG_SYS_CPLD_BASE 0xffdf0000 248*a8d9758dSMingkai Hu #define CONFIG_SYS_CPLD_BASE_PHYS (0xf00000000ull \ 249*a8d9758dSMingkai Hu | CONFIG_SYS_CPLD_BASE) 250*a8d9758dSMingkai Hu 251*a8d9758dSMingkai Hu #define CONFIG_SYS_CSPR2 (CSPR_PHYS_ADDR(CONFIG_SYS_CPLD_BASE_PHYS) \ 252*a8d9758dSMingkai Hu | CSPR_PORT_SIZE_8 \ 253*a8d9758dSMingkai Hu | CSPR_MSEL_GPCM \ 254*a8d9758dSMingkai Hu | CSPR_V) 255*a8d9758dSMingkai Hu #define CONFIG_SYS_AMASK2 IFC_AMASK(64*1024) 256*a8d9758dSMingkai Hu #define CONFIG_SYS_CSOR2 0x0 257*a8d9758dSMingkai Hu /* CPLD Timing parameters for IFC CS2 */ 258*a8d9758dSMingkai Hu #define CONFIG_SYS_CS2_FTIM0 (FTIM0_GPCM_TACSE(0x0e) | \ 259*a8d9758dSMingkai Hu FTIM0_GPCM_TEADC(0x0e) | \ 260*a8d9758dSMingkai Hu FTIM0_GPCM_TEAHC(0x0e)) 261*a8d9758dSMingkai Hu #define CONFIG_SYS_CS2_FTIM1 (FTIM1_GPCM_TACO(0x0e) | \ 262*a8d9758dSMingkai Hu FTIM1_GPCM_TRAD(0x1f)) 263*a8d9758dSMingkai Hu #define CONFIG_SYS_CS2_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ 264*a8d9758dSMingkai Hu FTIM2_GPCM_TCH(0x0) | \ 265*a8d9758dSMingkai Hu FTIM2_GPCM_TWP(0x1f)) 266*a8d9758dSMingkai Hu #define CONFIG_SYS_CS2_FTIM3 0x0 267*a8d9758dSMingkai Hu 268*a8d9758dSMingkai Hu #if defined(CONFIG_RAMBOOT_SPIFLASH) 269*a8d9758dSMingkai Hu #define CONFIG_SYS_RAMBOOT 270*a8d9758dSMingkai Hu #define CONFIG_SYS_EXTRA_ENV_RELOC 271*a8d9758dSMingkai Hu #endif 272*a8d9758dSMingkai Hu 273*a8d9758dSMingkai Hu #define CONFIG_BOARD_EARLY_INIT_R 274*a8d9758dSMingkai Hu 275*a8d9758dSMingkai Hu #define CONFIG_SYS_INIT_RAM_LOCK 276*a8d9758dSMingkai Hu #define CONFIG_SYS_INIT_RAM_ADDR 0xffd00000 277*a8d9758dSMingkai Hu #define CONFIG_SYS_INIT_RAM_END 0x00004000 278*a8d9758dSMingkai Hu 279*a8d9758dSMingkai Hu #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_END \ 280*a8d9758dSMingkai Hu - GENERATED_GBL_DATA_SIZE) 281*a8d9758dSMingkai Hu #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 282*a8d9758dSMingkai Hu 283*a8d9758dSMingkai Hu #define CONFIG_SYS_MONITOR_LEN (512 * 1024) 284*a8d9758dSMingkai Hu #define CONFIG_SYS_MALLOC_LEN (1024 * 1024) 285*a8d9758dSMingkai Hu 286*a8d9758dSMingkai Hu /* Serial Port */ 287*a8d9758dSMingkai Hu #define CONFIG_CONS_INDEX 1 288*a8d9758dSMingkai Hu #define CONFIG_SYS_NS16550 289*a8d9758dSMingkai Hu #define CONFIG_SYS_NS16550_SERIAL 290*a8d9758dSMingkai Hu #define CONFIG_SYS_NS16550_REG_SIZE 1 291*a8d9758dSMingkai Hu #define CONFIG_SYS_NS16550_CLK get_bus_freq(0) 292*a8d9758dSMingkai Hu 293*a8d9758dSMingkai Hu #define CONFIG_SERIAL_MULTI /* Enable both serial ports */ 294*a8d9758dSMingkai Hu #define CONFIG_SYS_CONSOLE_IS_IN_ENV 295*a8d9758dSMingkai Hu 296*a8d9758dSMingkai Hu #define CONFIG_SYS_BAUDRATE_TABLE \ 297*a8d9758dSMingkai Hu {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200} 298*a8d9758dSMingkai Hu 299*a8d9758dSMingkai Hu #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_CCSRBAR+0x4500) 300*a8d9758dSMingkai Hu #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_CCSRBAR+0x4600) 301*a8d9758dSMingkai Hu 302*a8d9758dSMingkai Hu /* Use the HUSH parser */ 303*a8d9758dSMingkai Hu #define CONFIG_SYS_HUSH_PARSER 304*a8d9758dSMingkai Hu 305*a8d9758dSMingkai Hu /* 306*a8d9758dSMingkai Hu * Pass open firmware flat tree 307*a8d9758dSMingkai Hu */ 308*a8d9758dSMingkai Hu #define CONFIG_OF_LIBFDT 309*a8d9758dSMingkai Hu #define CONFIG_OF_BOARD_SETUP 310*a8d9758dSMingkai Hu #define CONFIG_OF_STDOUT_VIA_ALIAS 311*a8d9758dSMingkai Hu 312*a8d9758dSMingkai Hu /* new uImage format support */ 313*a8d9758dSMingkai Hu #define CONFIG_FIT 314*a8d9758dSMingkai Hu #define CONFIG_FIT_VERBOSE /* enable fit_format_{error,warning}() */ 315*a8d9758dSMingkai Hu 316*a8d9758dSMingkai Hu #define CONFIG_SYS_I2C 317*a8d9758dSMingkai Hu #define CONFIG_SYS_I2C_FSL 318*a8d9758dSMingkai Hu #define CONFIG_SYS_FSL_I2C_SPEED 400000 319*a8d9758dSMingkai Hu #define CONFIG_SYS_FSL_I2C2_SPEED 400000 320*a8d9758dSMingkai Hu #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F 321*a8d9758dSMingkai Hu #define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F 322*a8d9758dSMingkai Hu #define CONFIG_SYS_FSL_I2C_OFFSET 0x3000 323*a8d9758dSMingkai Hu #define CONFIG_SYS_FSL_I2C2_OFFSET 0x3100 324*a8d9758dSMingkai Hu 325*a8d9758dSMingkai Hu /* I2C EEPROM */ 326*a8d9758dSMingkai Hu /* enable read and write access to EEPROM */ 327*a8d9758dSMingkai Hu #define CONFIG_CMD_EEPROM 328*a8d9758dSMingkai Hu #define CONFIG_SYS_I2C_MULTI_EEPROMS 329*a8d9758dSMingkai Hu #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2 330*a8d9758dSMingkai Hu #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 331*a8d9758dSMingkai Hu #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5 332*a8d9758dSMingkai Hu 333*a8d9758dSMingkai Hu #define CONFIG_CMD_I2C 334*a8d9758dSMingkai Hu 335*a8d9758dSMingkai Hu /* eSPI - Enhanced SPI */ 336*a8d9758dSMingkai Hu #define CONFIG_FSL_ESPI 337*a8d9758dSMingkai Hu #define CONFIG_SPI_FLASH 338*a8d9758dSMingkai Hu #define CONFIG_SPI_FLASH_SPANSION 339*a8d9758dSMingkai Hu #define CONFIG_SPI_FLASH_EON 340*a8d9758dSMingkai Hu #define CONFIG_CMD_SF 341*a8d9758dSMingkai Hu #define CONFIG_SF_DEFAULT_SPEED 10000000 342*a8d9758dSMingkai Hu #define CONFIG_SF_DEFAULT_MODE SPI_MODE_0 343*a8d9758dSMingkai Hu 344*a8d9758dSMingkai Hu #ifdef CONFIG_TSEC_ENET 345*a8d9758dSMingkai Hu #define CONFIG_NET_MULTI 346*a8d9758dSMingkai Hu #define CONFIG_MII /* MII PHY management */ 347*a8d9758dSMingkai Hu #define CONFIG_MII_DEFAULT_TSEC 1 /* Allow unregistered phys */ 348*a8d9758dSMingkai Hu #define CONFIG_TSEC1 1 349*a8d9758dSMingkai Hu #define CONFIG_TSEC1_NAME "eTSEC1" 350*a8d9758dSMingkai Hu #define CONFIG_TSEC2 1 351*a8d9758dSMingkai Hu #define CONFIG_TSEC2_NAME "eTSEC2" 352*a8d9758dSMingkai Hu 353*a8d9758dSMingkai Hu /* Default mode is RGMII mode */ 354*a8d9758dSMingkai Hu #define TSEC1_PHY_ADDR 0 355*a8d9758dSMingkai Hu #define TSEC2_PHY_ADDR 2 356*a8d9758dSMingkai Hu 357*a8d9758dSMingkai Hu #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 358*a8d9758dSMingkai Hu #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 359*a8d9758dSMingkai Hu 360*a8d9758dSMingkai Hu #define CONFIG_ETHPRIME "eTSEC1" 361*a8d9758dSMingkai Hu 362*a8d9758dSMingkai Hu #define CONFIG_PHY_GIGE 363*a8d9758dSMingkai Hu #endif /* CONFIG_TSEC_ENET */ 364*a8d9758dSMingkai Hu 365*a8d9758dSMingkai Hu /* 366*a8d9758dSMingkai Hu * Environment 367*a8d9758dSMingkai Hu */ 368*a8d9758dSMingkai Hu #if defined(CONFIG_SYS_RAMBOOT) 369*a8d9758dSMingkai Hu #if defined(CONFIG_RAMBOOT_SPIFLASH) 370*a8d9758dSMingkai Hu #define CONFIG_ENV_IS_IN_SPI_FLASH 371*a8d9758dSMingkai Hu #define CONFIG_ENV_SPI_BUS 0 372*a8d9758dSMingkai Hu #define CONFIG_ENV_SPI_CS 0 373*a8d9758dSMingkai Hu #define CONFIG_ENV_SPI_MAX_HZ 10000000 374*a8d9758dSMingkai Hu #define CONFIG_ENV_SPI_MODE 0 375*a8d9758dSMingkai Hu #define CONFIG_ENV_OFFSET 0x100000 /* 1MB */ 376*a8d9758dSMingkai Hu #define CONFIG_ENV_SECT_SIZE 0x10000 377*a8d9758dSMingkai Hu #define CONFIG_ENV_SIZE 0x2000 378*a8d9758dSMingkai Hu #endif 379*a8d9758dSMingkai Hu #else 380*a8d9758dSMingkai Hu #define CONFIG_ENV_IS_IN_FLASH 381*a8d9758dSMingkai Hu #if CONFIG_SYS_MONITOR_BASE > 0xfff80000 382*a8d9758dSMingkai Hu #define CONFIG_ENV_ADDR 0xfff80000 383*a8d9758dSMingkai Hu #else 384*a8d9758dSMingkai Hu #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) 385*a8d9758dSMingkai Hu #endif 386*a8d9758dSMingkai Hu #define CONFIG_ENV_SIZE 0x2000 387*a8d9758dSMingkai Hu #define CONFIG_ENV_SECT_SIZE 0x20000 388*a8d9758dSMingkai Hu #endif 389*a8d9758dSMingkai Hu 390*a8d9758dSMingkai Hu #define CONFIG_LOADS_ECHO 391*a8d9758dSMingkai Hu #define CONFIG_SYS_LOADS_BAUD_CHANGE 392*a8d9758dSMingkai Hu 393*a8d9758dSMingkai Hu /* 394*a8d9758dSMingkai Hu * Command line configuration. 395*a8d9758dSMingkai Hu */ 396*a8d9758dSMingkai Hu #include <config_cmd_default.h> 397*a8d9758dSMingkai Hu 398*a8d9758dSMingkai Hu #define CONFIG_CMD_ERRATA 399*a8d9758dSMingkai Hu #define CONFIG_CMD_ELF 400*a8d9758dSMingkai Hu #define CONFIG_CMD_IRQ 401*a8d9758dSMingkai Hu #define CONFIG_CMD_MII 402*a8d9758dSMingkai Hu #define CONFIG_CMD_PING 403*a8d9758dSMingkai Hu #define CONFIG_CMD_SETEXPR 404*a8d9758dSMingkai Hu #define CONFIG_CMD_REGINFO 405*a8d9758dSMingkai Hu 406*a8d9758dSMingkai Hu /* 407*a8d9758dSMingkai Hu * Miscellaneous configurable options 408*a8d9758dSMingkai Hu */ 409*a8d9758dSMingkai Hu #define CONFIG_SYS_LONGHELP /* undef to save memory */ 410*a8d9758dSMingkai Hu #define CONFIG_CMDLINE_EDITING /* Command-line editing */ 411*a8d9758dSMingkai Hu #define CONFIG_AUTO_COMPLETE /* add autocompletion support */ 412*a8d9758dSMingkai Hu #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 413*a8d9758dSMingkai Hu #define CONFIG_SYS_PROMPT "=> " /* Monitor Command Prompt */ 414*a8d9758dSMingkai Hu 415*a8d9758dSMingkai Hu #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 416*a8d9758dSMingkai Hu #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 417*a8d9758dSMingkai Hu /* Print Buffer Size */ 418*a8d9758dSMingkai Hu #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 419*a8d9758dSMingkai Hu #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE/* Boot Argument Buffer Size */ 420*a8d9758dSMingkai Hu #define CONFIG_SYS_HZ 1000 /* dec freq: 1ms ticks */ 421*a8d9758dSMingkai Hu 422*a8d9758dSMingkai Hu /* 423*a8d9758dSMingkai Hu * For booting Linux, the board info and command line data 424*a8d9758dSMingkai Hu * have to be in the first 64 MB of memory, since this is 425*a8d9758dSMingkai Hu * the maximum mapped by the Linux kernel during initialization. 426*a8d9758dSMingkai Hu */ 427*a8d9758dSMingkai Hu #define CONFIG_SYS_BOOTMAPSZ (64 << 20) /* Initial Memory map for Linux */ 428*a8d9758dSMingkai Hu #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 429*a8d9758dSMingkai Hu 430*a8d9758dSMingkai Hu /* 431*a8d9758dSMingkai Hu * Environment Configuration 432*a8d9758dSMingkai Hu */ 433*a8d9758dSMingkai Hu 434*a8d9758dSMingkai Hu #ifdef CONFIG_TSEC_ENET 435*a8d9758dSMingkai Hu #define CONFIG_HAS_ETH0 436*a8d9758dSMingkai Hu #define CONFIG_HAS_ETH1 437*a8d9758dSMingkai Hu #endif 438*a8d9758dSMingkai Hu 439*a8d9758dSMingkai Hu #define CONFIG_ROOTPATH "/opt/nfsroot" 440*a8d9758dSMingkai Hu #define CONFIG_BOOTFILE "uImage" 441*a8d9758dSMingkai Hu #define CONFIG_UBOOTPATH u-boot.bin/* U-Boot image on TFTP server */ 442*a8d9758dSMingkai Hu 443*a8d9758dSMingkai Hu /* default location for tftp and bootm */ 444*a8d9758dSMingkai Hu #define CONFIG_LOADADDR 1000000 445*a8d9758dSMingkai Hu 446*a8d9758dSMingkai Hu #define CONFIG_BOOTDELAY -1 /* -1 disables auto-boot */ 447*a8d9758dSMingkai Hu 448*a8d9758dSMingkai Hu #define CONFIG_BAUDRATE 115200 449*a8d9758dSMingkai Hu 450*a8d9758dSMingkai Hu #define CONFIG_EXTRA_ENV_SETTINGS \ 451*a8d9758dSMingkai Hu "hwconfig=" __stringify(CONFIG_DEF_HWCONFIG) "\0" \ 452*a8d9758dSMingkai Hu "netdev=eth0\0" \ 453*a8d9758dSMingkai Hu "uboot=" __stringify(CONFIG_UBOOTPATH) "\0" \ 454*a8d9758dSMingkai Hu "loadaddr=1000000\0" \ 455*a8d9758dSMingkai Hu "consoledev=ttyS0\0" \ 456*a8d9758dSMingkai Hu "ramdiskaddr=2000000\0" \ 457*a8d9758dSMingkai Hu "ramdiskfile=rootfs.ext2.gz.uboot\0" \ 458*a8d9758dSMingkai Hu "fdtaddr=c00000\0" \ 459*a8d9758dSMingkai Hu "fdtfile=name/of/device-tree.dtb\0" \ 460*a8d9758dSMingkai Hu "othbootargs=ramdisk_size=600000\0" \ 461*a8d9758dSMingkai Hu 462*a8d9758dSMingkai Hu #define CONFIG_RAMBOOTCOMMAND \ 463*a8d9758dSMingkai Hu "setenv bootargs root=/dev/ram rw " \ 464*a8d9758dSMingkai Hu "console=$consoledev,$baudrate $othbootargs; " \ 465*a8d9758dSMingkai Hu "tftp $ramdiskaddr $ramdiskfile;" \ 466*a8d9758dSMingkai Hu "tftp $loadaddr $bootfile;" \ 467*a8d9758dSMingkai Hu "tftp $fdtaddr $fdtfile;" \ 468*a8d9758dSMingkai Hu "bootm $loadaddr $ramdiskaddr $fdtaddr" 469*a8d9758dSMingkai Hu 470*a8d9758dSMingkai Hu #define CONFIG_BOOTCOMMAND CONFIG_RAMBOOTCOMMAND 471*a8d9758dSMingkai Hu 472*a8d9758dSMingkai Hu #endif /* __CONFIG_H */ 473