183d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */ 2254887a5SShengzhou Liu /* 3254887a5SShengzhou Liu * Copyright 2011-2013 Freescale Semiconductor, Inc. 4254887a5SShengzhou Liu */ 5254887a5SShengzhou Liu 6254887a5SShengzhou Liu /* 7254887a5SShengzhou Liu * T2080/T2081 QDS board configuration file 8254887a5SShengzhou Liu */ 9254887a5SShengzhou Liu 10254887a5SShengzhou Liu #ifndef __T208xQDS_H 11254887a5SShengzhou Liu #define __T208xQDS_H 12254887a5SShengzhou Liu 13254887a5SShengzhou Liu #define CONFIG_ICS307_REFCLK_HZ 25000000 /* ICS307 ref clk freq */ 140f3d80e9SYork Sun #if defined(CONFIG_ARCH_T2080) 15254887a5SShengzhou Liu #define CONFIG_FSL_SATA_V2 16254887a5SShengzhou Liu #define CONFIG_SYS_SRIO /* Enable Serial RapidIO Support */ 17254887a5SShengzhou Liu #define CONFIG_SRIO1 /* SRIO port 1 */ 18254887a5SShengzhou Liu #define CONFIG_SRIO2 /* SRIO port 2 */ 190f3d80e9SYork Sun #elif defined(CONFIG_ARCH_T2081) 20254887a5SShengzhou Liu #endif 21254887a5SShengzhou Liu 22254887a5SShengzhou Liu /* High Level Configuration Options */ 23254887a5SShengzhou Liu #define CONFIG_SYS_BOOK3E_HV /* Category E.HV supported */ 24254887a5SShengzhou Liu #define CONFIG_ENABLE_36BIT_PHYS 25254887a5SShengzhou Liu 26254887a5SShengzhou Liu #ifdef CONFIG_PHYS_64BIT 27254887a5SShengzhou Liu #define CONFIG_ADDR_MAP 1 28254887a5SShengzhou Liu #define CONFIG_SYS_NUM_ADDR_MAP 64 /* number of TLB1 entries */ 29254887a5SShengzhou Liu #endif 30254887a5SShengzhou Liu 31254887a5SShengzhou Liu #define CONFIG_SYS_FSL_CPC /* Corenet Platform Cache */ 3251370d56SYork Sun #define CONFIG_SYS_NUM_CPC CONFIG_SYS_NUM_DDR_CTLRS 33254887a5SShengzhou Liu #define CONFIG_ENV_OVERWRITE 34254887a5SShengzhou Liu 35254887a5SShengzhou Liu #ifdef CONFIG_RAMBOOT_PBL 36e4536f8eSMasahiro Yamada #define CONFIG_SYS_FSL_PBL_PBI board/freescale/t208xqds/t208x_pbi.cfg 37b19e288fSShengzhou Liu 38b19e288fSShengzhou Liu #define CONFIG_SPL_FLUSH_IMAGE 39b19e288fSShengzhou Liu #define CONFIG_SPL_TEXT_BASE 0xFFFD8000 40b19e288fSShengzhou Liu #define CONFIG_SPL_PAD_TO 0x40000 41b19e288fSShengzhou Liu #define CONFIG_SPL_MAX_SIZE 0x28000 42b19e288fSShengzhou Liu #define RESET_VECTOR_OFFSET 0x27FFC 43b19e288fSShengzhou Liu #define BOOT_PAGE_OFFSET 0x27000 44b19e288fSShengzhou Liu #ifdef CONFIG_SPL_BUILD 45b19e288fSShengzhou Liu #define CONFIG_SPL_SKIP_RELOCATE 46b19e288fSShengzhou Liu #define CONFIG_SPL_COMMON_INIT_DDR 47b19e288fSShengzhou Liu #define CONFIG_SYS_CCSR_DO_NOT_RELOCATE 48254887a5SShengzhou Liu #endif 49254887a5SShengzhou Liu 50b19e288fSShengzhou Liu #ifdef CONFIG_NAND 51b19e288fSShengzhou Liu #define CONFIG_SYS_NAND_U_BOOT_SIZE (768 << 10) 52b19e288fSShengzhou Liu #define CONFIG_SYS_NAND_U_BOOT_DST 0x00200000 53b19e288fSShengzhou Liu #define CONFIG_SYS_NAND_U_BOOT_START 0x00200000 54b19e288fSShengzhou Liu #define CONFIG_SYS_NAND_U_BOOT_OFFS (256 << 10) 55b19e288fSShengzhou Liu #define CONFIG_SYS_LDSCRIPT "arch/powerpc/cpu/mpc85xx/u-boot-nand.lds" 560f3d80e9SYork Sun #if defined(CONFIG_ARCH_T2080) 57ec90ac73SZhao Qiang #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2080_nand_rcw.cfg 580f3d80e9SYork Sun #elif defined(CONFIG_ARCH_T2081) 59ec90ac73SZhao Qiang #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2081_nand_rcw.cfg 60ec90ac73SZhao Qiang #endif 61b19e288fSShengzhou Liu #define CONFIG_SPL_NAND_BOOT 62b19e288fSShengzhou Liu #endif 63b19e288fSShengzhou Liu 64b19e288fSShengzhou Liu #ifdef CONFIG_SPIFLASH 65b19e288fSShengzhou Liu #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC 66b19e288fSShengzhou Liu #define CONFIG_SPL_SPI_FLASH_MINIMAL 67b19e288fSShengzhou Liu #define CONFIG_SYS_SPI_FLASH_U_BOOT_SIZE (768 << 10) 68b19e288fSShengzhou Liu #define CONFIG_SYS_SPI_FLASH_U_BOOT_DST (0x00200000) 69b19e288fSShengzhou Liu #define CONFIG_SYS_SPI_FLASH_U_BOOT_START (0x00200000) 70b19e288fSShengzhou Liu #define CONFIG_SYS_SPI_FLASH_U_BOOT_OFFS (256 << 10) 71b19e288fSShengzhou Liu #define CONFIG_SYS_LDSCRIPT "arch/powerpc/cpu/mpc85xx/u-boot.lds" 72b19e288fSShengzhou Liu #ifndef CONFIG_SPL_BUILD 73b19e288fSShengzhou Liu #define CONFIG_SYS_MPC85XX_NO_RESETVEC 74b19e288fSShengzhou Liu #endif 750f3d80e9SYork Sun #if defined(CONFIG_ARCH_T2080) 76ec90ac73SZhao Qiang #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2080_spi_rcw.cfg 770f3d80e9SYork Sun #elif defined(CONFIG_ARCH_T2081) 78ec90ac73SZhao Qiang #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2081_spi_rcw.cfg 79ec90ac73SZhao Qiang #endif 80b19e288fSShengzhou Liu #define CONFIG_SPL_SPI_BOOT 81b19e288fSShengzhou Liu #endif 82b19e288fSShengzhou Liu 83b19e288fSShengzhou Liu #ifdef CONFIG_SDCARD 84b19e288fSShengzhou Liu #define CONFIG_RESET_VECTOR_ADDRESS 0x200FFC 85b19e288fSShengzhou Liu #define CONFIG_SYS_MMC_U_BOOT_SIZE (768 << 10) 86b19e288fSShengzhou Liu #define CONFIG_SYS_MMC_U_BOOT_DST (0x00200000) 87b19e288fSShengzhou Liu #define CONFIG_SYS_MMC_U_BOOT_START (0x00200000) 88b19e288fSShengzhou Liu #define CONFIG_SYS_MMC_U_BOOT_OFFS (260 << 10) 89b19e288fSShengzhou Liu #define CONFIG_SYS_LDSCRIPT "arch/powerpc/cpu/mpc85xx/u-boot.lds" 90b19e288fSShengzhou Liu #ifndef CONFIG_SPL_BUILD 91b19e288fSShengzhou Liu #define CONFIG_SYS_MPC85XX_NO_RESETVEC 92b19e288fSShengzhou Liu #endif 930f3d80e9SYork Sun #if defined(CONFIG_ARCH_T2080) 94ec90ac73SZhao Qiang #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2080_sd_rcw.cfg 950f3d80e9SYork Sun #elif defined(CONFIG_ARCH_T2081) 96ec90ac73SZhao Qiang #define CONFIG_SYS_FSL_PBL_RCW board/freescale/t208xqds/t2081_sd_rcw.cfg 97ec90ac73SZhao Qiang #endif 98b19e288fSShengzhou Liu #define CONFIG_SPL_MMC_BOOT 99b19e288fSShengzhou Liu #endif 100b19e288fSShengzhou Liu 101b19e288fSShengzhou Liu #endif /* CONFIG_RAMBOOT_PBL */ 102b19e288fSShengzhou Liu 103254887a5SShengzhou Liu #define CONFIG_SRIO_PCIE_BOOT_MASTER 104254887a5SShengzhou Liu #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE 105254887a5SShengzhou Liu /* Set 1M boot space */ 106254887a5SShengzhou Liu #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR (CONFIG_SYS_TEXT_BASE & 0xfff00000) 107254887a5SShengzhou Liu #define CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR_PHYS \ 108254887a5SShengzhou Liu (0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_SLAVE_ADDR) 109254887a5SShengzhou Liu #define CONFIG_RESET_VECTOR_ADDRESS 0xfffffffc 110254887a5SShengzhou Liu #endif 111254887a5SShengzhou Liu 112254887a5SShengzhou Liu #ifndef CONFIG_RESET_VECTOR_ADDRESS 113254887a5SShengzhou Liu #define CONFIG_RESET_VECTOR_ADDRESS 0xeffffffc 114254887a5SShengzhou Liu #endif 115254887a5SShengzhou Liu 116254887a5SShengzhou Liu /* 117254887a5SShengzhou Liu * These can be toggled for performance analysis, otherwise use default. 118254887a5SShengzhou Liu */ 119254887a5SShengzhou Liu #define CONFIG_SYS_CACHE_STASHING 120254887a5SShengzhou Liu #define CONFIG_BTB /* toggle branch predition */ 121254887a5SShengzhou Liu #define CONFIG_DDR_ECC 122254887a5SShengzhou Liu #ifdef CONFIG_DDR_ECC 123254887a5SShengzhou Liu #define CONFIG_ECC_INIT_VIA_DDRCONTROLLER 124254887a5SShengzhou Liu #define CONFIG_MEM_INIT_VALUE 0xdeadbeef 125254887a5SShengzhou Liu #endif 126254887a5SShengzhou Liu 127254887a5SShengzhou Liu #if defined(CONFIG_SPIFLASH) 128254887a5SShengzhou Liu #define CONFIG_ENV_SIZE 0x2000 /* 8KB */ 129254887a5SShengzhou Liu #define CONFIG_ENV_OFFSET 0x100000 /* 1MB */ 130254887a5SShengzhou Liu #define CONFIG_ENV_SECT_SIZE 0x10000 131254887a5SShengzhou Liu #elif defined(CONFIG_SDCARD) 132254887a5SShengzhou Liu #define CONFIG_SYS_MMC_ENV_DEV 0 133254887a5SShengzhou Liu #define CONFIG_ENV_SIZE 0x2000 134b19e288fSShengzhou Liu #define CONFIG_ENV_OFFSET (512 * 0x800) 135254887a5SShengzhou Liu #elif defined(CONFIG_NAND) 136b19e288fSShengzhou Liu #define CONFIG_ENV_SIZE 0x2000 137b19e288fSShengzhou Liu #define CONFIG_ENV_OFFSET (10 * CONFIG_SYS_NAND_BLOCK_SIZE) 138254887a5SShengzhou Liu #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) 139254887a5SShengzhou Liu #define CONFIG_ENV_ADDR 0xffe20000 140254887a5SShengzhou Liu #define CONFIG_ENV_SIZE 0x2000 141254887a5SShengzhou Liu #elif defined(CONFIG_ENV_IS_NOWHERE) 142254887a5SShengzhou Liu #define CONFIG_ENV_SIZE 0x2000 143254887a5SShengzhou Liu #else 144254887a5SShengzhou Liu #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) 145254887a5SShengzhou Liu #define CONFIG_ENV_SIZE 0x2000 146254887a5SShengzhou Liu #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) */ 147254887a5SShengzhou Liu #endif 148254887a5SShengzhou Liu 149254887a5SShengzhou Liu #ifndef __ASSEMBLY__ 150254887a5SShengzhou Liu unsigned long get_board_sys_clk(void); 151254887a5SShengzhou Liu unsigned long get_board_ddr_clk(void); 152254887a5SShengzhou Liu #endif 153254887a5SShengzhou Liu 154254887a5SShengzhou Liu #define CONFIG_SYS_CLK_FREQ get_board_sys_clk() 155254887a5SShengzhou Liu #define CONFIG_DDR_CLK_FREQ get_board_ddr_clk() 156254887a5SShengzhou Liu 157254887a5SShengzhou Liu /* 158254887a5SShengzhou Liu * Config the L3 Cache as L3 SRAM 159254887a5SShengzhou Liu */ 160b19e288fSShengzhou Liu #define CONFIG_SYS_INIT_L3_ADDR 0xFFFC0000 161b19e288fSShengzhou Liu #define CONFIG_SYS_L3_SIZE (512 << 10) 162b19e288fSShengzhou Liu #define CONFIG_SPL_GD_ADDR (CONFIG_SYS_INIT_L3_ADDR + 32 * 1024) 163b19e288fSShengzhou Liu #ifdef CONFIG_RAMBOOT_PBL 164b19e288fSShengzhou Liu #define CONFIG_ENV_ADDR (CONFIG_SPL_GD_ADDR + 4 * 1024) 165b19e288fSShengzhou Liu #endif 166b19e288fSShengzhou Liu #define CONFIG_SPL_RELOC_MALLOC_ADDR (CONFIG_SPL_GD_ADDR + 12 * 1024) 167b19e288fSShengzhou Liu #define CONFIG_SPL_RELOC_MALLOC_SIZE (50 << 10) 168b19e288fSShengzhou Liu #define CONFIG_SPL_RELOC_STACK (CONFIG_SPL_GD_ADDR + 64 * 1024) 169254887a5SShengzhou Liu 170254887a5SShengzhou Liu #define CONFIG_SYS_DCSRBAR 0xf0000000 171254887a5SShengzhou Liu #define CONFIG_SYS_DCSRBAR_PHYS 0xf00000000ull 172254887a5SShengzhou Liu 173254887a5SShengzhou Liu /* EEPROM */ 174254887a5SShengzhou Liu #define CONFIG_ID_EEPROM 175254887a5SShengzhou Liu #define CONFIG_SYS_I2C_EEPROM_NXID 176254887a5SShengzhou Liu #define CONFIG_SYS_EEPROM_BUS_NUM 0 177254887a5SShengzhou Liu #define CONFIG_SYS_I2C_EEPROM_ADDR 0x57 178254887a5SShengzhou Liu #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 179254887a5SShengzhou Liu 180254887a5SShengzhou Liu /* 181254887a5SShengzhou Liu * DDR Setup 182254887a5SShengzhou Liu */ 183254887a5SShengzhou Liu #define CONFIG_VERY_BIG_RAM 184254887a5SShengzhou Liu #define CONFIG_SYS_DDR_SDRAM_BASE 0x00000000 185254887a5SShengzhou Liu #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 18640483e1eSShengzhou Liu #define CONFIG_DIMM_SLOTS_PER_CTLR 2 18740483e1eSShengzhou Liu #define CONFIG_CHIP_SELECTS_PER_CTRL (2 * CONFIG_DIMM_SLOTS_PER_CTLR) 188254887a5SShengzhou Liu #define CONFIG_DDR_SPD 189254887a5SShengzhou Liu #define CONFIG_SYS_SPD_BUS_NUM 0 190254887a5SShengzhou Liu #define CONFIG_SYS_SDRAM_SIZE 2048 /* for fixed parameter use */ 191254887a5SShengzhou Liu #define SPD_EEPROM_ADDRESS1 0x51 192254887a5SShengzhou Liu #define SPD_EEPROM_ADDRESS2 0x52 193254887a5SShengzhou Liu #define SPD_EEPROM_ADDRESS SPD_EEPROM_ADDRESS1 194254887a5SShengzhou Liu #define CTRL_INTLV_PREFERED cacheline 195254887a5SShengzhou Liu 196254887a5SShengzhou Liu /* 197254887a5SShengzhou Liu * IFC Definitions 198254887a5SShengzhou Liu */ 199254887a5SShengzhou Liu #define CONFIG_SYS_FLASH_BASE 0xe0000000 200254887a5SShengzhou Liu #define CONFIG_SYS_FLASH_BASE_PHYS (0xf00000000ull | CONFIG_SYS_FLASH_BASE) 201254887a5SShengzhou Liu #define CONFIG_SYS_NOR0_CSPR_EXT (0xf) 202254887a5SShengzhou Liu #define CONFIG_SYS_NOR0_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \ 203254887a5SShengzhou Liu + 0x8000000) | \ 204254887a5SShengzhou Liu CSPR_PORT_SIZE_16 | \ 205254887a5SShengzhou Liu CSPR_MSEL_NOR | \ 206254887a5SShengzhou Liu CSPR_V) 207254887a5SShengzhou Liu #define CONFIG_SYS_NOR1_CSPR_EXT (0xf) 208254887a5SShengzhou Liu #define CONFIG_SYS_NOR1_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ 209254887a5SShengzhou Liu CSPR_PORT_SIZE_16 | \ 210254887a5SShengzhou Liu CSPR_MSEL_NOR | \ 211254887a5SShengzhou Liu CSPR_V) 212254887a5SShengzhou Liu #define CONFIG_SYS_NOR_AMASK IFC_AMASK(128*1024*1024) 213254887a5SShengzhou Liu /* NOR Flash Timing Params */ 214254887a5SShengzhou Liu #define CONFIG_SYS_NOR_CSOR CSOR_NAND_TRHZ_80 215254887a5SShengzhou Liu 216254887a5SShengzhou Liu #define CONFIG_SYS_NOR_FTIM0 (FTIM0_NOR_TACSE(0x4) | \ 217254887a5SShengzhou Liu FTIM0_NOR_TEADC(0x5) | \ 218254887a5SShengzhou Liu FTIM0_NOR_TEAHC(0x5)) 219254887a5SShengzhou Liu #define CONFIG_SYS_NOR_FTIM1 (FTIM1_NOR_TACO(0x35) | \ 220254887a5SShengzhou Liu FTIM1_NOR_TRAD_NOR(0x1A) |\ 221254887a5SShengzhou Liu FTIM1_NOR_TSEQRAD_NOR(0x13)) 222254887a5SShengzhou Liu #define CONFIG_SYS_NOR_FTIM2 (FTIM2_NOR_TCS(0x4) | \ 223254887a5SShengzhou Liu FTIM2_NOR_TCH(0x4) | \ 224254887a5SShengzhou Liu FTIM2_NOR_TWPH(0x0E) | \ 225254887a5SShengzhou Liu FTIM2_NOR_TWP(0x1c)) 226254887a5SShengzhou Liu #define CONFIG_SYS_NOR_FTIM3 0x0 227254887a5SShengzhou Liu 228254887a5SShengzhou Liu #define CONFIG_SYS_FLASH_QUIET_TEST 229254887a5SShengzhou Liu #define CONFIG_FLASH_SHOW_PROGRESS 45 /* count down from 45/5: 9..1 */ 230254887a5SShengzhou Liu 231254887a5SShengzhou Liu #define CONFIG_SYS_MAX_FLASH_BANKS 2 /* number of banks */ 232254887a5SShengzhou Liu #define CONFIG_SYS_MAX_FLASH_SECT 1024 /* sectors per device */ 233254887a5SShengzhou Liu #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 234254887a5SShengzhou Liu #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 235254887a5SShengzhou Liu 236254887a5SShengzhou Liu #define CONFIG_SYS_FLASH_EMPTY_INFO 237254887a5SShengzhou Liu #define CONFIG_SYS_FLASH_BANKS_LIST {CONFIG_SYS_FLASH_BASE_PHYS \ 238254887a5SShengzhou Liu + 0x8000000, CONFIG_SYS_FLASH_BASE_PHYS} 239254887a5SShengzhou Liu 240254887a5SShengzhou Liu #define CONFIG_FSL_QIXIS /* use common QIXIS code */ 241254887a5SShengzhou Liu #define QIXIS_BASE 0xffdf0000 242254887a5SShengzhou Liu #define QIXIS_LBMAP_SWITCH 6 243254887a5SShengzhou Liu #define QIXIS_LBMAP_MASK 0x0f 244254887a5SShengzhou Liu #define QIXIS_LBMAP_SHIFT 0 245254887a5SShengzhou Liu #define QIXIS_LBMAP_DFLTBANK 0x00 246254887a5SShengzhou Liu #define QIXIS_LBMAP_ALTBANK 0x04 24746caebc1SYork Sun #define QIXIS_LBMAP_NAND 0x09 24846caebc1SYork Sun #define QIXIS_LBMAP_SD 0x00 24946caebc1SYork Sun #define QIXIS_RCW_SRC_NAND 0x104 25046caebc1SYork Sun #define QIXIS_RCW_SRC_SD 0x040 251254887a5SShengzhou Liu #define QIXIS_RST_CTL_RESET 0x83 252254887a5SShengzhou Liu #define QIXIS_RST_FORCE_MEM 0x1 253254887a5SShengzhou Liu #define QIXIS_RCFG_CTL_RECONFIG_IDLE 0x20 254254887a5SShengzhou Liu #define QIXIS_RCFG_CTL_RECONFIG_START 0x21 255254887a5SShengzhou Liu #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE 0x08 256254887a5SShengzhou Liu #define QIXIS_BASE_PHYS (0xf00000000ull | QIXIS_BASE) 257254887a5SShengzhou Liu 258254887a5SShengzhou Liu #define CONFIG_SYS_CSPR3_EXT (0xf) 259254887a5SShengzhou Liu #define CONFIG_SYS_CSPR3 (CSPR_PHYS_ADDR(QIXIS_BASE_PHYS) \ 260254887a5SShengzhou Liu | CSPR_PORT_SIZE_8 \ 261254887a5SShengzhou Liu | CSPR_MSEL_GPCM \ 262254887a5SShengzhou Liu | CSPR_V) 263*088d52cfSRajesh Bhagat #define CONFIG_SYS_AMASK3 IFC_AMASK(64 * 1024) 264254887a5SShengzhou Liu #define CONFIG_SYS_CSOR3 0x0 265254887a5SShengzhou Liu /* QIXIS Timing parameters for IFC CS3 */ 266254887a5SShengzhou Liu #define CONFIG_SYS_CS3_FTIM0 (FTIM0_GPCM_TACSE(0x0e) | \ 267254887a5SShengzhou Liu FTIM0_GPCM_TEADC(0x0e) | \ 268254887a5SShengzhou Liu FTIM0_GPCM_TEAHC(0x0e)) 269254887a5SShengzhou Liu #define CONFIG_SYS_CS3_FTIM1 (FTIM1_GPCM_TACO(0xff) | \ 270254887a5SShengzhou Liu FTIM1_GPCM_TRAD(0x3f)) 271254887a5SShengzhou Liu #define CONFIG_SYS_CS3_FTIM2 (FTIM2_GPCM_TCS(0x0e) | \ 2726b7679c8SShengzhou Liu FTIM2_GPCM_TCH(0x8) | \ 273254887a5SShengzhou Liu FTIM2_GPCM_TWP(0x1f)) 274254887a5SShengzhou Liu #define CONFIG_SYS_CS3_FTIM3 0x0 275254887a5SShengzhou Liu 276254887a5SShengzhou Liu /* NAND Flash on IFC */ 277254887a5SShengzhou Liu #define CONFIG_NAND_FSL_IFC 278254887a5SShengzhou Liu #define CONFIG_SYS_NAND_BASE 0xff800000 279254887a5SShengzhou Liu #define CONFIG_SYS_NAND_BASE_PHYS (0xf00000000ull | CONFIG_SYS_NAND_BASE) 280254887a5SShengzhou Liu 281254887a5SShengzhou Liu #define CONFIG_SYS_NAND_CSPR_EXT (0xf) 282254887a5SShengzhou Liu #define CONFIG_SYS_NAND_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \ 283254887a5SShengzhou Liu | CSPR_PORT_SIZE_8 /* Port Size = 8 bit */ \ 284254887a5SShengzhou Liu | CSPR_MSEL_NAND /* MSEL = NAND */ \ 285254887a5SShengzhou Liu | CSPR_V) 286254887a5SShengzhou Liu #define CONFIG_SYS_NAND_AMASK IFC_AMASK(64*1024) 287254887a5SShengzhou Liu 288254887a5SShengzhou Liu #define CONFIG_SYS_NAND_CSOR (CSOR_NAND_ECC_ENC_EN /* ECC on encode */ \ 289254887a5SShengzhou Liu | CSOR_NAND_ECC_DEC_EN /* ECC on decode */ \ 290254887a5SShengzhou Liu | CSOR_NAND_ECC_MODE_4 /* 4-bit ECC */ \ 291254887a5SShengzhou Liu | CSOR_NAND_RAL_3 /* RAL = 2Byes */ \ 292254887a5SShengzhou Liu | CSOR_NAND_PGS_2K /* Page Size = 2K */\ 293254887a5SShengzhou Liu | CSOR_NAND_SPRZ_64 /* Spare size = 64 */\ 294254887a5SShengzhou Liu | CSOR_NAND_PB(64)) /*Pages Per Block = 64*/ 295254887a5SShengzhou Liu 296254887a5SShengzhou Liu #define CONFIG_SYS_NAND_ONFI_DETECTION 297254887a5SShengzhou Liu 298254887a5SShengzhou Liu /* ONFI NAND Flash mode0 Timing Params */ 299254887a5SShengzhou Liu #define CONFIG_SYS_NAND_FTIM0 (FTIM0_NAND_TCCST(0x07) | \ 300254887a5SShengzhou Liu FTIM0_NAND_TWP(0x18) | \ 301254887a5SShengzhou Liu FTIM0_NAND_TWCHT(0x07) | \ 302254887a5SShengzhou Liu FTIM0_NAND_TWH(0x0a)) 303254887a5SShengzhou Liu #define CONFIG_SYS_NAND_FTIM1 (FTIM1_NAND_TADLE(0x32) | \ 304254887a5SShengzhou Liu FTIM1_NAND_TWBE(0x39) | \ 305254887a5SShengzhou Liu FTIM1_NAND_TRR(0x0e) | \ 306254887a5SShengzhou Liu FTIM1_NAND_TRP(0x18)) 307254887a5SShengzhou Liu #define CONFIG_SYS_NAND_FTIM2 (FTIM2_NAND_TRAD(0x0f) | \ 308254887a5SShengzhou Liu FTIM2_NAND_TREH(0x0a) | \ 309254887a5SShengzhou Liu FTIM2_NAND_TWHRE(0x1e)) 310254887a5SShengzhou Liu #define CONFIG_SYS_NAND_FTIM3 0x0 311254887a5SShengzhou Liu 312254887a5SShengzhou Liu #define CONFIG_SYS_NAND_DDR_LAW 11 313254887a5SShengzhou Liu #define CONFIG_SYS_NAND_BASE_LIST { CONFIG_SYS_NAND_BASE } 314254887a5SShengzhou Liu #define CONFIG_SYS_MAX_NAND_DEVICE 1 315254887a5SShengzhou Liu #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * 1024) 316254887a5SShengzhou Liu 317254887a5SShengzhou Liu #if defined(CONFIG_NAND) 318254887a5SShengzhou Liu #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NAND_CSPR_EXT 319254887a5SShengzhou Liu #define CONFIG_SYS_CSPR0 CONFIG_SYS_NAND_CSPR 320254887a5SShengzhou Liu #define CONFIG_SYS_AMASK0 CONFIG_SYS_NAND_AMASK 321254887a5SShengzhou Liu #define CONFIG_SYS_CSOR0 CONFIG_SYS_NAND_CSOR 322254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NAND_FTIM0 323254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NAND_FTIM1 324254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NAND_FTIM2 325254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NAND_FTIM3 32622cbf964SShengzhou Liu #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_NOR0_CSPR_EXT 32722cbf964SShengzhou Liu #define CONFIG_SYS_CSPR1 CONFIG_SYS_NOR0_CSPR 32822cbf964SShengzhou Liu #define CONFIG_SYS_AMASK1 CONFIG_SYS_NOR_AMASK 32922cbf964SShengzhou Liu #define CONFIG_SYS_CSOR1 CONFIG_SYS_NOR_CSOR 33022cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_NOR_FTIM0 33122cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_NOR_FTIM1 33222cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_NOR_FTIM2 33322cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_NOR_FTIM3 33422cbf964SShengzhou Liu #define CONFIG_SYS_CSPR2_EXT CONFIG_SYS_NOR1_CSPR_EXT 33522cbf964SShengzhou Liu #define CONFIG_SYS_CSPR2 CONFIG_SYS_NOR1_CSPR 336254887a5SShengzhou Liu #define CONFIG_SYS_AMASK2 CONFIG_SYS_NOR_AMASK 337254887a5SShengzhou Liu #define CONFIG_SYS_CSOR2 CONFIG_SYS_NOR_CSOR 338254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM0 CONFIG_SYS_NOR_FTIM0 339254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM1 CONFIG_SYS_NOR_FTIM1 340254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM2 CONFIG_SYS_NOR_FTIM2 341254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM3 CONFIG_SYS_NOR_FTIM3 342254887a5SShengzhou Liu #else 343254887a5SShengzhou Liu #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NOR0_CSPR_EXT 344254887a5SShengzhou Liu #define CONFIG_SYS_CSPR0 CONFIG_SYS_NOR0_CSPR 345254887a5SShengzhou Liu #define CONFIG_SYS_AMASK0 CONFIG_SYS_NOR_AMASK 346254887a5SShengzhou Liu #define CONFIG_SYS_CSOR0 CONFIG_SYS_NOR_CSOR 347254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NOR_FTIM0 348254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NOR_FTIM1 349254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NOR_FTIM2 350254887a5SShengzhou Liu #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NOR_FTIM3 35122cbf964SShengzhou Liu #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_NOR1_CSPR_EXT 35222cbf964SShengzhou Liu #define CONFIG_SYS_CSPR1 CONFIG_SYS_NOR1_CSPR 35322cbf964SShengzhou Liu #define CONFIG_SYS_AMASK1 CONFIG_SYS_NOR_AMASK 35422cbf964SShengzhou Liu #define CONFIG_SYS_CSOR1 CONFIG_SYS_NOR_CSOR 35522cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_NOR_FTIM0 35622cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_NOR_FTIM1 35722cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_NOR_FTIM2 35822cbf964SShengzhou Liu #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_NOR_FTIM3 359254887a5SShengzhou Liu #define CONFIG_SYS_CSPR2_EXT CONFIG_SYS_NAND_CSPR_EXT 360254887a5SShengzhou Liu #define CONFIG_SYS_CSPR2 CONFIG_SYS_NAND_CSPR 361254887a5SShengzhou Liu #define CONFIG_SYS_AMASK2 CONFIG_SYS_NAND_AMASK 362254887a5SShengzhou Liu #define CONFIG_SYS_CSOR2 CONFIG_SYS_NAND_CSOR 363254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM0 CONFIG_SYS_NAND_FTIM0 364254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM1 CONFIG_SYS_NAND_FTIM1 365254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM2 CONFIG_SYS_NAND_FTIM2 366254887a5SShengzhou Liu #define CONFIG_SYS_CS2_FTIM3 CONFIG_SYS_NAND_FTIM3 367254887a5SShengzhou Liu #endif 368254887a5SShengzhou Liu 369254887a5SShengzhou Liu #if defined(CONFIG_RAMBOOT_PBL) 370254887a5SShengzhou Liu #define CONFIG_SYS_RAMBOOT 371254887a5SShengzhou Liu #endif 372254887a5SShengzhou Liu 373b19e288fSShengzhou Liu #ifdef CONFIG_SPL_BUILD 374b19e288fSShengzhou Liu #define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE 375b19e288fSShengzhou Liu #else 376b19e288fSShengzhou Liu #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 377b19e288fSShengzhou Liu #endif 378b19e288fSShengzhou Liu 379254887a5SShengzhou Liu #define CONFIG_HWCONFIG 380254887a5SShengzhou Liu 381254887a5SShengzhou Liu /* define to use L1 as initial stack */ 382254887a5SShengzhou Liu #define CONFIG_L1_INIT_RAM 383254887a5SShengzhou Liu #define CONFIG_SYS_INIT_RAM_LOCK 384254887a5SShengzhou Liu #define CONFIG_SYS_INIT_RAM_ADDR 0xfdd00000 /* Initial L1 address */ 385254887a5SShengzhou Liu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH 0xf 386b3142e2cSYork Sun #define CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW 0xfe03c000 387254887a5SShengzhou Liu /* The assembler doesn't like typecast */ 388254887a5SShengzhou Liu #define CONFIG_SYS_INIT_RAM_ADDR_PHYS \ 389254887a5SShengzhou Liu ((CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH * 1ull << 32) | \ 390254887a5SShengzhou Liu CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW) 391254887a5SShengzhou Liu #define CONFIG_SYS_INIT_RAM_SIZE 0x00004000 392254887a5SShengzhou Liu #define CONFIG_SYS_GBL_DATA_OFFSET (CONFIG_SYS_INIT_RAM_SIZE - \ 393254887a5SShengzhou Liu GENERATED_GBL_DATA_SIZE) 394254887a5SShengzhou Liu #define CONFIG_SYS_INIT_SP_OFFSET CONFIG_SYS_GBL_DATA_OFFSET 3959307cbabSPrabhakar Kushwaha #define CONFIG_SYS_MONITOR_LEN (768 * 1024) 396254887a5SShengzhou Liu #define CONFIG_SYS_MALLOC_LEN (4 * 1024 * 1024) 397254887a5SShengzhou Liu 398254887a5SShengzhou Liu /* 399254887a5SShengzhou Liu * Serial Port 400254887a5SShengzhou Liu */ 401254887a5SShengzhou Liu #define CONFIG_SYS_NS16550_SERIAL 402254887a5SShengzhou Liu #define CONFIG_SYS_NS16550_REG_SIZE 1 403254887a5SShengzhou Liu #define CONFIG_SYS_NS16550_CLK (get_bus_freq(0)/2) 404254887a5SShengzhou Liu #define CONFIG_SYS_BAUDRATE_TABLE \ 405254887a5SShengzhou Liu {300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 57600, 115200} 406254887a5SShengzhou Liu #define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_CCSRBAR+0x11C500) 407254887a5SShengzhou Liu #define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_CCSRBAR+0x11C600) 408254887a5SShengzhou Liu #define CONFIG_SYS_NS16550_COM3 (CONFIG_SYS_CCSRBAR+0x11D500) 409254887a5SShengzhou Liu #define CONFIG_SYS_NS16550_COM4 (CONFIG_SYS_CCSRBAR+0x11D600) 410254887a5SShengzhou Liu 411254887a5SShengzhou Liu /* 412254887a5SShengzhou Liu * I2C 413254887a5SShengzhou Liu */ 414254887a5SShengzhou Liu #define CONFIG_SYS_I2C 415254887a5SShengzhou Liu #define CONFIG_SYS_I2C_FSL 416254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C_SLAVE 0x7F 417254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C2_SLAVE 0x7F 418254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C3_SLAVE 0x7F 419254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C4_SLAVE 0x7F 420254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C_OFFSET 0x118000 421254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C2_OFFSET 0x118100 422254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C3_OFFSET 0x119000 423254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C4_OFFSET 0x119100 424254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C_SPEED 100000 425254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C2_SPEED 100000 426254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C3_SPEED 100000 427254887a5SShengzhou Liu #define CONFIG_SYS_FSL_I2C4_SPEED 100000 428254887a5SShengzhou Liu #define I2C_MUX_PCA_ADDR_PRI 0x77 /* I2C bus multiplexer,primary */ 429254887a5SShengzhou Liu #define I2C_MUX_PCA_ADDR_SEC1 0x75 /* I2C bus multiplexer,secondary 1 */ 430254887a5SShengzhou Liu #define I2C_MUX_PCA_ADDR_SEC2 0x76 /* I2C bus multiplexer,secondary 2 */ 431254887a5SShengzhou Liu #define I2C_MUX_CH_DEFAULT 0x8 432254887a5SShengzhou Liu 4333ad2737eSYing Zhang #define I2C_MUX_CH_VOL_MONITOR 0xa 4343ad2737eSYing Zhang 4353ad2737eSYing Zhang /* Voltage monitor on channel 2*/ 4363ad2737eSYing Zhang #define I2C_VOL_MONITOR_ADDR 0x40 4373ad2737eSYing Zhang #define I2C_VOL_MONITOR_BUS_V_OFFSET 0x2 4383ad2737eSYing Zhang #define I2C_VOL_MONITOR_BUS_V_OVF 0x1 4393ad2737eSYing Zhang #define I2C_VOL_MONITOR_BUS_V_SHIFT 3 4403ad2737eSYing Zhang 4413ad2737eSYing Zhang #define CONFIG_VID_FLS_ENV "t208xqds_vdd_mv" 4423ad2737eSYing Zhang #ifndef CONFIG_SPL_BUILD 4433ad2737eSYing Zhang #define CONFIG_VID 4443ad2737eSYing Zhang #endif 4453ad2737eSYing Zhang #define CONFIG_VOL_MONITOR_IR36021_SET 4463ad2737eSYing Zhang #define CONFIG_VOL_MONITOR_IR36021_READ 4473ad2737eSYing Zhang /* The lowest and highest voltage allowed for T208xQDS */ 4483ad2737eSYing Zhang #define VDD_MV_MIN 819 4493ad2737eSYing Zhang #define VDD_MV_MAX 1212 450254887a5SShengzhou Liu 451254887a5SShengzhou Liu /* 452254887a5SShengzhou Liu * RapidIO 453254887a5SShengzhou Liu */ 454254887a5SShengzhou Liu #define CONFIG_SYS_SRIO1_MEM_VIRT 0xa0000000 455254887a5SShengzhou Liu #define CONFIG_SYS_SRIO1_MEM_PHYS 0xc20000000ull 456254887a5SShengzhou Liu #define CONFIG_SYS_SRIO1_MEM_SIZE 0x10000000 /* 256M */ 457254887a5SShengzhou Liu #define CONFIG_SYS_SRIO2_MEM_VIRT 0xb0000000 458254887a5SShengzhou Liu #define CONFIG_SYS_SRIO2_MEM_PHYS 0xc30000000ull 459254887a5SShengzhou Liu #define CONFIG_SYS_SRIO2_MEM_SIZE 0x10000000 /* 256M */ 460254887a5SShengzhou Liu /* 461254887a5SShengzhou Liu * for slave u-boot IMAGE instored in master memory space, 462254887a5SShengzhou Liu * PHYS must be aligned based on the SIZE 463254887a5SShengzhou Liu */ 464e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_PHYS 0xfef200000ull 465e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS1 0xfff00000ull 466e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_SIZE 0x100000 /* 1M */ 467e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_IMAGE_MEM_BUS2 0x3fff00000ull 468254887a5SShengzhou Liu /* 469254887a5SShengzhou Liu * for slave UCODE and ENV instored in master memory space, 470254887a5SShengzhou Liu * PHYS must be aligned based on the SIZE 471254887a5SShengzhou Liu */ 472e4911815SLiu Gang #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_PHYS 0xfef100000ull 473254887a5SShengzhou Liu #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_MEM_BUS 0x3ffe00000ull 474254887a5SShengzhou Liu #define CONFIG_SRIO_PCIE_BOOT_UCODE_ENV_SIZE 0x40000 /* 256K */ 475254887a5SShengzhou Liu 476254887a5SShengzhou Liu /* slave core release by master*/ 477254887a5SShengzhou Liu #define CONFIG_SRIO_PCIE_BOOT_BRR_OFFSET 0xe00e4 478254887a5SShengzhou Liu #define CONFIG_SRIO_PCIE_BOOT_RELEASE_MASK 0x00000001 /* release core 0 */ 479254887a5SShengzhou Liu 480254887a5SShengzhou Liu /* 481254887a5SShengzhou Liu * SRIO_PCIE_BOOT - SLAVE 482254887a5SShengzhou Liu */ 483254887a5SShengzhou Liu #ifdef CONFIG_SRIO_PCIE_BOOT_SLAVE 484254887a5SShengzhou Liu #define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR 0xFFE00000 485254887a5SShengzhou Liu #define CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR_PHYS \ 486254887a5SShengzhou Liu (0x300000000ull | CONFIG_SYS_SRIO_PCIE_BOOT_UCODE_ENV_ADDR) 487254887a5SShengzhou Liu #endif 488254887a5SShengzhou Liu 489254887a5SShengzhou Liu /* 490254887a5SShengzhou Liu * eSPI - Enhanced SPI 491254887a5SShengzhou Liu */ 492254887a5SShengzhou Liu 493254887a5SShengzhou Liu /* 494254887a5SShengzhou Liu * General PCI 495254887a5SShengzhou Liu * Memory space is mapped 1-1, but I/O space must start from 0. 496254887a5SShengzhou Liu */ 497b38eaec5SRobert P. J. Day #define CONFIG_PCIE1 /* PCIE controller 1 */ 498b38eaec5SRobert P. J. Day #define CONFIG_PCIE2 /* PCIE controller 2 */ 499b38eaec5SRobert P. J. Day #define CONFIG_PCIE3 /* PCIE controller 3 */ 500b38eaec5SRobert P. J. Day #define CONFIG_PCIE4 /* PCIE controller 4 */ 5017abcd0c0SBao Xiaowei #define CONFIG_FSL_PCIE_RESET /* pcie reset fix link width 2x-4x*/ 502254887a5SShengzhou Liu #define CONFIG_FSL_PCI_INIT /* Use common FSL init code */ 503254887a5SShengzhou Liu #define CONFIG_SYS_PCI_64BIT /* enable 64-bit PCI resources */ 504254887a5SShengzhou Liu /* controller 1, direct to uli, tgtid 3, Base address 20000 */ 505254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_MEM_VIRT 0x80000000 506254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_MEM_BUS 0xe0000000 507254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_MEM_PHYS 0xc00000000ull 508254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_MEM_SIZE 0x20000000 /* 512M */ 509254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_IO_VIRT 0xf8000000 510254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_IO_BUS 0x00000000 511254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_IO_PHYS 0xff8000000ull 512254887a5SShengzhou Liu #define CONFIG_SYS_PCIE1_IO_SIZE 0x00010000 /* 64k */ 513254887a5SShengzhou Liu 514254887a5SShengzhou Liu /* controller 2, Slot 2, tgtid 2, Base address 201000 */ 515254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_MEM_VIRT 0xa0000000 516254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_MEM_BUS 0xe0000000 517254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_MEM_PHYS 0xc20000000ull 518254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_MEM_SIZE 0x10000000 /* 256M */ 519254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_IO_VIRT 0xf8010000 520254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_IO_BUS 0x00000000 521254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_IO_PHYS 0xff8010000ull 522254887a5SShengzhou Liu #define CONFIG_SYS_PCIE2_IO_SIZE 0x00010000 /* 64k */ 523254887a5SShengzhou Liu 524254887a5SShengzhou Liu /* controller 3, Slot 1, tgtid 1, Base address 202000 */ 525254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_MEM_VIRT 0xb0000000 526254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_MEM_BUS 0xe0000000 527254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_MEM_PHYS 0xc30000000ull 528254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_MEM_SIZE 0x10000000 /* 256M */ 529254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_IO_VIRT 0xf8020000 530254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_IO_BUS 0x00000000 531254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_IO_PHYS 0xff8020000ull 532254887a5SShengzhou Liu #define CONFIG_SYS_PCIE3_IO_SIZE 0x00010000 /* 64k */ 533254887a5SShengzhou Liu 534254887a5SShengzhou Liu /* controller 4, Base address 203000 */ 535254887a5SShengzhou Liu #define CONFIG_SYS_PCIE4_MEM_VIRT 0xc0000000 536254887a5SShengzhou Liu #define CONFIG_SYS_PCIE4_MEM_BUS 0xe0000000 537254887a5SShengzhou Liu #define CONFIG_SYS_PCIE4_MEM_PHYS 0xc40000000ull 538254887a5SShengzhou Liu #define CONFIG_SYS_PCIE4_MEM_SIZE 0x10000000 /* 256M */ 539254887a5SShengzhou Liu #define CONFIG_SYS_PCIE4_IO_BUS 0x00000000 540254887a5SShengzhou Liu #define CONFIG_SYS_PCIE4_IO_PHYS 0xff8030000ull 541254887a5SShengzhou Liu #define CONFIG_SYS_PCIE4_IO_SIZE 0x00010000 /* 64k */ 542254887a5SShengzhou Liu 543254887a5SShengzhou Liu #ifdef CONFIG_PCI 544254887a5SShengzhou Liu #define CONFIG_PCI_INDIRECT_BRIDGE 545254887a5SShengzhou Liu #define CONFIG_PCI_SCAN_SHOW /* show pci devices on startup */ 546254887a5SShengzhou Liu #endif 547254887a5SShengzhou Liu 548254887a5SShengzhou Liu /* Qman/Bman */ 549254887a5SShengzhou Liu #ifndef CONFIG_NOBQFMAN 550254887a5SShengzhou Liu #define CONFIG_SYS_BMAN_NUM_PORTALS 18 551254887a5SShengzhou Liu #define CONFIG_SYS_BMAN_MEM_BASE 0xf4000000 552254887a5SShengzhou Liu #define CONFIG_SYS_BMAN_MEM_PHYS 0xff4000000ull 553254887a5SShengzhou Liu #define CONFIG_SYS_BMAN_MEM_SIZE 0x02000000 5543fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SP_CENA_SIZE 0x4000 5553fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SP_CINH_SIZE 0x1000 5563fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CENA_BASE CONFIG_SYS_BMAN_MEM_BASE 5573fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CENA_SIZE (CONFIG_SYS_BMAN_MEM_SIZE >> 1) 5583fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CINH_BASE (CONFIG_SYS_BMAN_MEM_BASE + \ 5593fa66db4SJeffrey Ladouceur CONFIG_SYS_BMAN_CENA_SIZE) 5603fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_CINH_SIZE (CONFIG_SYS_BMAN_MEM_SIZE >> 1) 5613fa66db4SJeffrey Ladouceur #define CONFIG_SYS_BMAN_SWP_ISDR_REG 0xE08 562254887a5SShengzhou Liu #define CONFIG_SYS_QMAN_NUM_PORTALS 18 563254887a5SShengzhou Liu #define CONFIG_SYS_QMAN_MEM_BASE 0xf6000000 564254887a5SShengzhou Liu #define CONFIG_SYS_QMAN_MEM_PHYS 0xff6000000ull 565254887a5SShengzhou Liu #define CONFIG_SYS_QMAN_MEM_SIZE 0x02000000 5663fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SP_CENA_SIZE 0x4000 5673fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SP_CINH_SIZE 0x1000 5683fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CENA_BASE CONFIG_SYS_QMAN_MEM_BASE 5693fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CENA_SIZE (CONFIG_SYS_QMAN_MEM_SIZE >> 1) 5703fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CINH_BASE (CONFIG_SYS_QMAN_MEM_BASE + \ 5713fa66db4SJeffrey Ladouceur CONFIG_SYS_QMAN_CENA_SIZE) 5723fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_CINH_SIZE (CONFIG_SYS_QMAN_MEM_SIZE >> 1) 5733fa66db4SJeffrey Ladouceur #define CONFIG_SYS_QMAN_SWP_ISDR_REG 0xE08 574254887a5SShengzhou Liu 575254887a5SShengzhou Liu #define CONFIG_SYS_DPAA_FMAN 576254887a5SShengzhou Liu #define CONFIG_SYS_DPAA_PME 577254887a5SShengzhou Liu #define CONFIG_SYS_PMAN 578254887a5SShengzhou Liu #define CONFIG_SYS_DPAA_DCE 579254887a5SShengzhou Liu #define CONFIG_SYS_DPAA_RMAN /* RMan */ 580254887a5SShengzhou Liu #define CONFIG_SYS_INTERLAKEN 581254887a5SShengzhou Liu 582254887a5SShengzhou Liu /* Default address of microcode for the Linux Fman driver */ 583254887a5SShengzhou Liu #if defined(CONFIG_SPIFLASH) 584254887a5SShengzhou Liu /* 585254887a5SShengzhou Liu * env is stored at 0x100000, sector size is 0x10000, ucode is stored after 586254887a5SShengzhou Liu * env, so we got 0x110000. 587254887a5SShengzhou Liu */ 588254887a5SShengzhou Liu #define CONFIG_SYS_QE_FW_IN_SPIFLASH 589dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR 0x110000 590254887a5SShengzhou Liu #elif defined(CONFIG_SDCARD) 591254887a5SShengzhou Liu /* 592254887a5SShengzhou Liu * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is 593b19e288fSShengzhou Liu * about 1MB (2048 blocks), Env is stored after the image, and the env size is 594b19e288fSShengzhou Liu * 0x2000 (16 blocks), 8 + 2048 + 16 = 2072, enlarge it to 2080. 595254887a5SShengzhou Liu */ 596254887a5SShengzhou Liu #define CONFIG_SYS_QE_FMAN_FW_IN_MMC 597b19e288fSShengzhou Liu #define CONFIG_SYS_FMAN_FW_ADDR (512 * 0x820) 598254887a5SShengzhou Liu #elif defined(CONFIG_NAND) 599254887a5SShengzhou Liu #define CONFIG_SYS_QE_FMAN_FW_IN_NAND 600b19e288fSShengzhou Liu #define CONFIG_SYS_FMAN_FW_ADDR (11 * CONFIG_SYS_NAND_BLOCK_SIZE) 601254887a5SShengzhou Liu #elif defined(CONFIG_SRIO_PCIE_BOOT_SLAVE) 602254887a5SShengzhou Liu /* 603254887a5SShengzhou Liu * Slave has no ucode locally, it can fetch this from remote. When implementing 604254887a5SShengzhou Liu * in two corenet boards, slave's ucode could be stored in master's memory 605254887a5SShengzhou Liu * space, the address can be mapped from slave TLB->slave LAW-> 606254887a5SShengzhou Liu * slave SRIO or PCIE outbound window->master inbound window-> 607254887a5SShengzhou Liu * master LAW->the ucode address in master's memory space. 608254887a5SShengzhou Liu */ 609254887a5SShengzhou Liu #define CONFIG_SYS_QE_FMAN_FW_IN_REMOTE 610dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR 0xFFE00000 611254887a5SShengzhou Liu #else 612254887a5SShengzhou Liu #define CONFIG_SYS_QE_FMAN_FW_IN_NOR 613dcf1d774SZhao Qiang #define CONFIG_SYS_FMAN_FW_ADDR 0xEFF00000 614254887a5SShengzhou Liu #endif 615254887a5SShengzhou Liu #define CONFIG_SYS_QE_FMAN_FW_LENGTH 0x10000 616254887a5SShengzhou Liu #define CONFIG_SYS_FDT_PAD (0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH) 617254887a5SShengzhou Liu #endif /* CONFIG_NOBQFMAN */ 618254887a5SShengzhou Liu 619254887a5SShengzhou Liu #ifdef CONFIG_SYS_DPAA_FMAN 620254887a5SShengzhou Liu #define CONFIG_FMAN_ENET 621254887a5SShengzhou Liu #define CONFIG_PHY_VITESSE 622254887a5SShengzhou Liu #define CONFIG_PHY_REALTEK 623254887a5SShengzhou Liu #define CONFIG_PHY_TERANETICS 624254887a5SShengzhou Liu #define RGMII_PHY1_ADDR 0x1 625254887a5SShengzhou Liu #define RGMII_PHY2_ADDR 0x2 626254887a5SShengzhou Liu #define FM1_10GEC1_PHY_ADDR 0x3 627254887a5SShengzhou Liu #define SGMII_CARD_PORT1_PHY_ADDR 0x1C 628254887a5SShengzhou Liu #define SGMII_CARD_PORT2_PHY_ADDR 0x1D 629254887a5SShengzhou Liu #define SGMII_CARD_PORT3_PHY_ADDR 0x1E 630254887a5SShengzhou Liu #define SGMII_CARD_PORT4_PHY_ADDR 0x1F 631254887a5SShengzhou Liu #endif 632254887a5SShengzhou Liu 633254887a5SShengzhou Liu #ifdef CONFIG_FMAN_ENET 634254887a5SShengzhou Liu #define CONFIG_ETHPRIME "FM1@DTSEC3" 635254887a5SShengzhou Liu #endif 636254887a5SShengzhou Liu 637254887a5SShengzhou Liu /* 638254887a5SShengzhou Liu * SATA 639254887a5SShengzhou Liu */ 640254887a5SShengzhou Liu #ifdef CONFIG_FSL_SATA_V2 641254887a5SShengzhou Liu #define CONFIG_SYS_SATA_MAX_DEVICE 2 642254887a5SShengzhou Liu #define CONFIG_SATA1 643254887a5SShengzhou Liu #define CONFIG_SYS_SATA1 CONFIG_SYS_MPC85xx_SATA1_ADDR 644254887a5SShengzhou Liu #define CONFIG_SYS_SATA1_FLAGS FLAGS_DMA 645254887a5SShengzhou Liu #define CONFIG_SATA2 646254887a5SShengzhou Liu #define CONFIG_SYS_SATA2 CONFIG_SYS_MPC85xx_SATA2_ADDR 647254887a5SShengzhou Liu #define CONFIG_SYS_SATA2_FLAGS FLAGS_DMA 648254887a5SShengzhou Liu #define CONFIG_LBA48 649254887a5SShengzhou Liu #endif 650254887a5SShengzhou Liu 651254887a5SShengzhou Liu /* 652254887a5SShengzhou Liu * USB 653254887a5SShengzhou Liu */ 6548850c5d5STom Rini #ifdef CONFIG_USB_EHCI_HCD 655254887a5SShengzhou Liu #define CONFIG_USB_EHCI_FSL 656254887a5SShengzhou Liu #define CONFIG_EHCI_HCD_INIT_AFTER_RESET 657254887a5SShengzhou Liu #define CONFIG_HAS_FSL_DR_USB 658254887a5SShengzhou Liu #endif 659254887a5SShengzhou Liu 660254887a5SShengzhou Liu /* 661254887a5SShengzhou Liu * SDHC 662254887a5SShengzhou Liu */ 663254887a5SShengzhou Liu #ifdef CONFIG_MMC 664cf23b4daSYangbo Lu #define CONFIG_FSL_ESDHC_USE_PERIPHERAL_CLK 665254887a5SShengzhou Liu #define CONFIG_SYS_FSL_ESDHC_ADDR CONFIG_SYS_MPC85xx_ESDHC_ADDR 666254887a5SShengzhou Liu #define CONFIG_SYS_FSL_ESDHC_BROKEN_TIMEOUT 667254887a5SShengzhou Liu #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33 668b46cf1b1SYangbo Lu #define CONFIG_FSL_ESDHC_ADAPTER_IDENT 669254887a5SShengzhou Liu #endif 670254887a5SShengzhou Liu 6719941cf78SShengzhou Liu /* 6729941cf78SShengzhou Liu * Dynamic MTD Partition support with mtdparts 6739941cf78SShengzhou Liu */ 6749941cf78SShengzhou Liu 675254887a5SShengzhou Liu /* 676254887a5SShengzhou Liu * Environment 677254887a5SShengzhou Liu */ 678254887a5SShengzhou Liu #define CONFIG_LOADS_ECHO /* echo on for serial download */ 679254887a5SShengzhou Liu #define CONFIG_SYS_LOADS_BAUD_CHANGE /* allow baudrate change */ 680254887a5SShengzhou Liu 681254887a5SShengzhou Liu /* 682254887a5SShengzhou Liu * Miscellaneous configurable options 683254887a5SShengzhou Liu */ 684254887a5SShengzhou Liu #define CONFIG_SYS_LOAD_ADDR 0x2000000 /* default load address */ 685254887a5SShengzhou Liu 686254887a5SShengzhou Liu /* 687254887a5SShengzhou Liu * For booting Linux, the board info and command line data 688254887a5SShengzhou Liu * have to be in the first 64 MB of memory, since this is 689254887a5SShengzhou Liu * the maximum mapped by the Linux kernel during initialization. 690254887a5SShengzhou Liu */ 691254887a5SShengzhou Liu #define CONFIG_SYS_BOOTMAPSZ (64 << 20) /* Initial map for Linux*/ 692254887a5SShengzhou Liu #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 693254887a5SShengzhou Liu 694254887a5SShengzhou Liu #ifdef CONFIG_CMD_KGDB 695254887a5SShengzhou Liu #define CONFIG_KGDB_BAUDRATE 230400 /* speed to run kgdb serial port */ 696254887a5SShengzhou Liu #define CONFIG_KGDB_SER_INDEX 2 /* which serial port to use */ 697254887a5SShengzhou Liu #endif 698254887a5SShengzhou Liu 699254887a5SShengzhou Liu /* 700254887a5SShengzhou Liu * Environment Configuration 701254887a5SShengzhou Liu */ 702254887a5SShengzhou Liu #define CONFIG_ROOTPATH "/opt/nfsroot" 703254887a5SShengzhou Liu #define CONFIG_BOOTFILE "uImage" 704254887a5SShengzhou Liu #define CONFIG_UBOOTPATH "u-boot.bin" /* U-Boot image on TFTP server */ 705254887a5SShengzhou Liu 706254887a5SShengzhou Liu /* default location for tftp and bootm */ 707254887a5SShengzhou Liu #define CONFIG_LOADADDR 1000000 708254887a5SShengzhou Liu #define __USB_PHY_TYPE utmi 709254887a5SShengzhou Liu 710254887a5SShengzhou Liu #define CONFIG_EXTRA_ENV_SETTINGS \ 711254887a5SShengzhou Liu "hwconfig=fsl_ddr:" \ 712254887a5SShengzhou Liu "ctlr_intlv=" __stringify(CTRL_INTLV_PREFERED) "," \ 713254887a5SShengzhou Liu "bank_intlv=auto;" \ 714254887a5SShengzhou Liu "usb1:dr_mode=host,phy_type=" __stringify(__USB_PHY_TYPE) "\0"\ 715254887a5SShengzhou Liu "netdev=eth0\0" \ 716254887a5SShengzhou Liu "uboot=" __stringify(CONFIG_UBOOTPATH) "\0" \ 717254887a5SShengzhou Liu "ubootaddr=" __stringify(CONFIG_SYS_TEXT_BASE) "\0" \ 718254887a5SShengzhou Liu "tftpflash=tftpboot $loadaddr $uboot && " \ 719254887a5SShengzhou Liu "protect off $ubootaddr +$filesize && " \ 720254887a5SShengzhou Liu "erase $ubootaddr +$filesize && " \ 721254887a5SShengzhou Liu "cp.b $loadaddr $ubootaddr $filesize && " \ 722254887a5SShengzhou Liu "protect on $ubootaddr +$filesize && " \ 723254887a5SShengzhou Liu "cmp.b $loadaddr $ubootaddr $filesize\0" \ 724254887a5SShengzhou Liu "consoledev=ttyS0\0" \ 725254887a5SShengzhou Liu "ramdiskaddr=2000000\0" \ 726254887a5SShengzhou Liu "ramdiskfile=t2080qds/ramdisk.uboot\0" \ 727b24a4f62SScott Wood "fdtaddr=1e00000\0" \ 728254887a5SShengzhou Liu "fdtfile=t2080qds/t2080qds.dtb\0" \ 7293246584dSKim Phillips "bdev=sda3\0" 730254887a5SShengzhou Liu 731254887a5SShengzhou Liu /* 732254887a5SShengzhou Liu * For emulation this causes u-boot to jump to the start of the 733254887a5SShengzhou Liu * proof point app code automatically 734254887a5SShengzhou Liu */ 735254887a5SShengzhou Liu #define CONFIG_PROOF_POINTS \ 736254887a5SShengzhou Liu "setenv bootargs root=/dev/$bdev rw " \ 737254887a5SShengzhou Liu "console=$consoledev,$baudrate $othbootargs;" \ 738254887a5SShengzhou Liu "cpu 1 release 0x29000000 - - -;" \ 739254887a5SShengzhou Liu "cpu 2 release 0x29000000 - - -;" \ 740254887a5SShengzhou Liu "cpu 3 release 0x29000000 - - -;" \ 741254887a5SShengzhou Liu "cpu 4 release 0x29000000 - - -;" \ 742254887a5SShengzhou Liu "cpu 5 release 0x29000000 - - -;" \ 743254887a5SShengzhou Liu "cpu 6 release 0x29000000 - - -;" \ 744254887a5SShengzhou Liu "cpu 7 release 0x29000000 - - -;" \ 745254887a5SShengzhou Liu "go 0x29000000" 746254887a5SShengzhou Liu 747254887a5SShengzhou Liu #define CONFIG_HVBOOT \ 748254887a5SShengzhou Liu "setenv bootargs config-addr=0x60000000; " \ 749254887a5SShengzhou Liu "bootm 0x01000000 - 0x00f00000" 750254887a5SShengzhou Liu 751254887a5SShengzhou Liu #define CONFIG_ALU \ 752254887a5SShengzhou Liu "setenv bootargs root=/dev/$bdev rw " \ 753254887a5SShengzhou Liu "console=$consoledev,$baudrate $othbootargs;" \ 754254887a5SShengzhou Liu "cpu 1 release 0x01000000 - - -;" \ 755254887a5SShengzhou Liu "cpu 2 release 0x01000000 - - -;" \ 756254887a5SShengzhou Liu "cpu 3 release 0x01000000 - - -;" \ 757254887a5SShengzhou Liu "cpu 4 release 0x01000000 - - -;" \ 758254887a5SShengzhou Liu "cpu 5 release 0x01000000 - - -;" \ 759254887a5SShengzhou Liu "cpu 6 release 0x01000000 - - -;" \ 760254887a5SShengzhou Liu "cpu 7 release 0x01000000 - - -;" \ 761254887a5SShengzhou Liu "go 0x01000000" 762254887a5SShengzhou Liu 763254887a5SShengzhou Liu #define CONFIG_LINUX \ 764254887a5SShengzhou Liu "setenv bootargs root=/dev/ram rw " \ 765254887a5SShengzhou Liu "console=$consoledev,$baudrate $othbootargs;" \ 766254887a5SShengzhou Liu "setenv ramdiskaddr 0x02000000;" \ 767254887a5SShengzhou Liu "setenv fdtaddr 0x00c00000;" \ 768254887a5SShengzhou Liu "setenv loadaddr 0x1000000;" \ 769254887a5SShengzhou Liu "bootm $loadaddr $ramdiskaddr $fdtaddr" 770254887a5SShengzhou Liu 771254887a5SShengzhou Liu #define CONFIG_HDBOOT \ 772254887a5SShengzhou Liu "setenv bootargs root=/dev/$bdev rw " \ 773254887a5SShengzhou Liu "console=$consoledev,$baudrate $othbootargs;" \ 774254887a5SShengzhou Liu "tftp $loadaddr $bootfile;" \ 775254887a5SShengzhou Liu "tftp $fdtaddr $fdtfile;" \ 776254887a5SShengzhou Liu "bootm $loadaddr - $fdtaddr" 777254887a5SShengzhou Liu 778254887a5SShengzhou Liu #define CONFIG_NFSBOOTCOMMAND \ 779254887a5SShengzhou Liu "setenv bootargs root=/dev/nfs rw " \ 780254887a5SShengzhou Liu "nfsroot=$serverip:$rootpath " \ 781254887a5SShengzhou Liu "ip=$ipaddr:$serverip:$gatewayip:$netmask:$hostname:$netdev:off " \ 782254887a5SShengzhou Liu "console=$consoledev,$baudrate $othbootargs;" \ 783254887a5SShengzhou Liu "tftp $loadaddr $bootfile;" \ 784254887a5SShengzhou Liu "tftp $fdtaddr $fdtfile;" \ 785254887a5SShengzhou Liu "bootm $loadaddr - $fdtaddr" 786254887a5SShengzhou Liu 787254887a5SShengzhou Liu #define CONFIG_RAMBOOTCOMMAND \ 788254887a5SShengzhou Liu "setenv bootargs root=/dev/ram rw " \ 789254887a5SShengzhou Liu "console=$consoledev,$baudrate $othbootargs;" \ 790254887a5SShengzhou Liu "tftp $ramdiskaddr $ramdiskfile;" \ 791254887a5SShengzhou Liu "tftp $loadaddr $bootfile;" \ 792254887a5SShengzhou Liu "tftp $fdtaddr $fdtfile;" \ 793254887a5SShengzhou Liu "bootm $loadaddr $ramdiskaddr $fdtaddr" 794254887a5SShengzhou Liu 795254887a5SShengzhou Liu #define CONFIG_BOOTCOMMAND CONFIG_LINUX 796254887a5SShengzhou Liu 797254887a5SShengzhou Liu #include <asm/fsl_secure_boot.h> 798ef6c55a2SAneesh Bansal 799254887a5SShengzhou Liu #endif /* __T208xQDS_H */ 800