1550e3dc0SWang Huan /* 2550e3dc0SWang Huan * Copyright 2014 Freescale Semiconductor, Inc. 3550e3dc0SWang Huan * 4550e3dc0SWang Huan * SPDX-License-Identifier: GPL-2.0+ 5550e3dc0SWang Huan */ 6550e3dc0SWang Huan 7550e3dc0SWang Huan #ifndef __CONFIG_H 8550e3dc0SWang Huan #define __CONFIG_H 9550e3dc0SWang Huan 10aeb901f2SHongbo Zhang #define CONFIG_ARMV7_PSCI_1_0 11340848b1SWang Dongsheng 123288628aSHongbo Zhang #define CONFIG_ARMV7_SECURE_BASE OCRAM_BASE_S_ADDR 133288628aSHongbo Zhang 1418fb0e3cSGong Qianyu #define CONFIG_SYS_FSL_CLK 15550e3dc0SWang Huan 16550e3dc0SWang Huan #define CONFIG_SKIP_LOWLEVEL_INIT 17550e3dc0SWang Huan 1841ba57d0Stang yuantian #define CONFIG_DEEP_SLEEP 1941ba57d0Stang yuantian 20550e3dc0SWang Huan /* 21550e3dc0SWang Huan * Size of malloc() pool 22550e3dc0SWang Huan */ 23550e3dc0SWang Huan #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 16 * 1024 * 1024) 24550e3dc0SWang Huan 25550e3dc0SWang Huan #define CONFIG_SYS_INIT_RAM_ADDR OCRAM_BASE_ADDR 26550e3dc0SWang Huan #define CONFIG_SYS_INIT_RAM_SIZE OCRAM_SIZE 27550e3dc0SWang Huan 28550e3dc0SWang Huan #ifndef __ASSEMBLY__ 29550e3dc0SWang Huan unsigned long get_board_sys_clk(void); 30550e3dc0SWang Huan unsigned long get_board_ddr_clk(void); 31550e3dc0SWang Huan #endif 32550e3dc0SWang Huan 3370097027SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 34d612f0abSAlison Wang #define CONFIG_SYS_CLK_FREQ 100000000 35d612f0abSAlison Wang #define CONFIG_DDR_CLK_FREQ 100000000 36d612f0abSAlison Wang #define CONFIG_QIXIS_I2C_ACCESS 37d612f0abSAlison Wang #else 38550e3dc0SWang Huan #define CONFIG_SYS_CLK_FREQ get_board_sys_clk() 39550e3dc0SWang Huan #define CONFIG_DDR_CLK_FREQ get_board_ddr_clk() 40d612f0abSAlison Wang #endif 41550e3dc0SWang Huan 4286949c2bSAlison Wang #ifdef CONFIG_RAMBOOT_PBL 4386949c2bSAlison Wang #define CONFIG_SYS_FSL_PBL_PBI board/freescale/ls1021aqds/ls102xa_pbi.cfg 4486949c2bSAlison Wang #endif 4586949c2bSAlison Wang 4686949c2bSAlison Wang #ifdef CONFIG_SD_BOOT 4770097027SAlison Wang #ifdef CONFIG_SD_BOOT_QSPI 4870097027SAlison Wang #define CONFIG_SYS_FSL_PBL_RCW \ 4970097027SAlison Wang board/freescale/ls1021aqds/ls102xa_rcw_sd_qspi.cfg 5070097027SAlison Wang #else 5170097027SAlison Wang #define CONFIG_SYS_FSL_PBL_RCW \ 5270097027SAlison Wang board/freescale/ls1021aqds/ls102xa_rcw_sd_ifc.cfg 5370097027SAlison Wang #endif 5486949c2bSAlison Wang #define CONFIG_SPL_FRAMEWORK 5586949c2bSAlison Wang #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" 5686949c2bSAlison Wang 5786949c2bSAlison Wang #define CONFIG_SPL_TEXT_BASE 0x10000000 5886949c2bSAlison Wang #define CONFIG_SPL_MAX_SIZE 0x1a000 5986949c2bSAlison Wang #define CONFIG_SPL_STACK 0x1001d000 6086949c2bSAlison Wang #define CONFIG_SPL_PAD_TO 0x1c000 6186949c2bSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x82000000 6286949c2bSAlison Wang 6341ba57d0Stang yuantian #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE + \ 6441ba57d0Stang yuantian CONFIG_SYS_MONITOR_LEN) 6586949c2bSAlison Wang #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 6686949c2bSAlison Wang #define CONFIG_SPL_BSS_START_ADDR 0x80100000 6786949c2bSAlison Wang #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 687ee52af4SAlison Wang #define CONFIG_SYS_MONITOR_LEN 0xc0000 6986949c2bSAlison Wang #endif 7086949c2bSAlison Wang 71d612f0abSAlison Wang #ifdef CONFIG_QSPI_BOOT 72615bfce5SAlison Wang #define CONFIG_SYS_TEXT_BASE 0x40100000 7370097027SAlison Wang #endif 7470097027SAlison Wang 758ab967b6SAlison Wang #ifdef CONFIG_NAND_BOOT 768ab967b6SAlison Wang #define CONFIG_SYS_FSL_PBL_RCW board/freescale/ls1021aqds/ls102xa_rcw_nand.cfg 778ab967b6SAlison Wang #define CONFIG_SPL_FRAMEWORK 788ab967b6SAlison Wang #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" 798ab967b6SAlison Wang 808ab967b6SAlison Wang #define CONFIG_SPL_TEXT_BASE 0x10000000 818ab967b6SAlison Wang #define CONFIG_SPL_MAX_SIZE 0x1a000 828ab967b6SAlison Wang #define CONFIG_SPL_STACK 0x1001d000 838ab967b6SAlison Wang #define CONFIG_SPL_PAD_TO 0x1c000 848ab967b6SAlison Wang #define CONFIG_SYS_TEXT_BASE 0x82000000 858ab967b6SAlison Wang 868ab967b6SAlison Wang #define CONFIG_SYS_NAND_U_BOOT_SIZE (400 << 10) 878ab967b6SAlison Wang #define CONFIG_SYS_NAND_U_BOOT_OFFS CONFIG_SPL_PAD_TO 888ab967b6SAlison Wang #define CONFIG_SYS_NAND_PAGE_SIZE 2048 898ab967b6SAlison Wang #define CONFIG_SYS_NAND_U_BOOT_DST CONFIG_SYS_TEXT_BASE 908ab967b6SAlison Wang #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE 918ab967b6SAlison Wang 928ab967b6SAlison Wang #define CONFIG_SYS_SPL_MALLOC_START 0x80200000 938ab967b6SAlison Wang #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 948ab967b6SAlison Wang #define CONFIG_SPL_BSS_START_ADDR 0x80100000 958ab967b6SAlison Wang #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 968ab967b6SAlison Wang #define CONFIG_SYS_MONITOR_LEN 0x80000 978ab967b6SAlison Wang #endif 988ab967b6SAlison Wang 99550e3dc0SWang Huan #ifndef CONFIG_SYS_TEXT_BASE 1001c69a51cSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x60100000 101550e3dc0SWang Huan #endif 102550e3dc0SWang Huan 103550e3dc0SWang Huan #define CONFIG_NR_DRAM_BANKS 1 104550e3dc0SWang Huan 105550e3dc0SWang Huan #define CONFIG_DDR_SPD 106550e3dc0SWang Huan #define SPD_EEPROM_ADDRESS 0x51 107550e3dc0SWang Huan #define CONFIG_SYS_SPD_BUS_NUM 0 108550e3dc0SWang Huan 109550e3dc0SWang Huan #define CONFIG_FSL_DDR_INTERACTIVE /* Interactive debugging */ 110c7eae7fcSYork Sun #ifndef CONFIG_SYS_FSL_DDR4 111c7eae7fcSYork Sun #define CONFIG_SYS_DDR_RAW_TIMING 112c7eae7fcSYork Sun #endif 113550e3dc0SWang Huan #define CONFIG_DIMM_SLOTS_PER_CTLR 1 114550e3dc0SWang Huan #define CONFIG_CHIP_SELECTS_PER_CTRL 4 115550e3dc0SWang Huan 116550e3dc0SWang Huan #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000UL 117550e3dc0SWang Huan #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 118550e3dc0SWang Huan 119550e3dc0SWang Huan #define CONFIG_DDR_ECC 120550e3dc0SWang Huan #ifdef CONFIG_DDR_ECC 121550e3dc0SWang Huan #define CONFIG_ECC_INIT_VIA_DDRCONTROLLER 122550e3dc0SWang Huan #define CONFIG_MEM_INIT_VALUE 0xdeadbeef 123550e3dc0SWang Huan #endif 124550e3dc0SWang Huan 1254c59ab9cSAlison Wang #if !defined(CONFIG_SD_BOOT) && !defined(CONFIG_NAND_BOOT) && \ 1264c59ab9cSAlison Wang !defined(CONFIG_QSPI_BOOT) 12763e75fd7SZhao Qiang #define CONFIG_U_QE 128*5aa03dddSZhao Qiang #define CONFIG_SYS_QE_FMAN_FW_IN_NOR 12963e75fd7SZhao Qiang #endif 13063e75fd7SZhao Qiang 131550e3dc0SWang Huan /* 132550e3dc0SWang Huan * IFC Definitions 133550e3dc0SWang Huan */ 13470097027SAlison Wang #if !defined(CONFIG_QSPI_BOOT) && !defined(CONFIG_SD_BOOT_QSPI) 135550e3dc0SWang Huan #define CONFIG_FSL_IFC 136550e3dc0SWang Huan #define CONFIG_SYS_FLASH_BASE 0x60000000 137550e3dc0SWang Huan #define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE 138550e3dc0SWang Huan 139550e3dc0SWang Huan #define CONFIG_SYS_NOR0_CSPR_EXT (0x0) 140550e3dc0SWang Huan #define CONFIG_SYS_NOR0_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ 141550e3dc0SWang Huan CSPR_PORT_SIZE_16 | \ 142550e3dc0SWang Huan CSPR_MSEL_NOR | \ 143550e3dc0SWang Huan CSPR_V) 144550e3dc0SWang Huan #define CONFIG_SYS_NOR1_CSPR_EXT (0x0) 145550e3dc0SWang Huan #define CONFIG_SYS_NOR1_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS \ 146550e3dc0SWang Huan + 0x8000000) | \ 147550e3dc0SWang Huan CSPR_PORT_SIZE_16 | \ 148550e3dc0SWang Huan CSPR_MSEL_NOR | \ 149550e3dc0SWang Huan CSPR_V) 150550e3dc0SWang Huan #define CONFIG_SYS_NOR_AMASK IFC_AMASK(128 * 1024 * 1024) 151550e3dc0SWang Huan 152550e3dc0SWang Huan #define CONFIG_SYS_NOR_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 153550e3dc0SWang Huan CSOR_NOR_TRHZ_80) 154550e3dc0SWang Huan #define CONFIG_SYS_NOR_FTIM0 (FTIM0_NOR_TACSE(0x4) | \ 155550e3dc0SWang Huan FTIM0_NOR_TEADC(0x5) | \ 156550e3dc0SWang Huan FTIM0_NOR_TEAHC(0x5)) 157550e3dc0SWang Huan #define CONFIG_SYS_NOR_FTIM1 (FTIM1_NOR_TACO(0x35) | \ 158550e3dc0SWang Huan FTIM1_NOR_TRAD_NOR(0x1a) | \ 159550e3dc0SWang Huan FTIM1_NOR_TSEQRAD_NOR(0x13)) 160550e3dc0SWang Huan #define CONFIG_SYS_NOR_FTIM2 (FTIM2_NOR_TCS(0x4) | \ 161550e3dc0SWang Huan FTIM2_NOR_TCH(0x4) | \ 162550e3dc0SWang Huan FTIM2_NOR_TWPH(0xe) | \ 163550e3dc0SWang Huan FTIM2_NOR_TWP(0x1c)) 164550e3dc0SWang Huan #define CONFIG_SYS_NOR_FTIM3 0 165550e3dc0SWang Huan 166550e3dc0SWang Huan #define CONFIG_FLASH_CFI_DRIVER 167550e3dc0SWang Huan #define CONFIG_SYS_FLASH_CFI 168550e3dc0SWang Huan #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 169550e3dc0SWang Huan #define CONFIG_SYS_FLASH_QUIET_TEST 170550e3dc0SWang Huan #define CONFIG_FLASH_SHOW_PROGRESS 45 171550e3dc0SWang Huan #define CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS 172272c5265SYuan Yao #define CONFIG_SYS_WRITE_SWAPPED_DATA 173550e3dc0SWang Huan 174550e3dc0SWang Huan #define CONFIG_SYS_MAX_FLASH_BANKS 2 /* number of banks */ 175550e3dc0SWang Huan #define CONFIG_SYS_MAX_FLASH_SECT 1024 /* sectors per device */ 176550e3dc0SWang Huan #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 177550e3dc0SWang Huan #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 178550e3dc0SWang Huan 179550e3dc0SWang Huan #define CONFIG_SYS_FLASH_EMPTY_INFO 180550e3dc0SWang Huan #define CONFIG_SYS_FLASH_BANKS_LIST {CONFIG_SYS_FLASH_BASE_PHYS, \ 181550e3dc0SWang Huan CONFIG_SYS_FLASH_BASE_PHYS + 0x8000000} 182550e3dc0SWang Huan 183550e3dc0SWang Huan /* 184550e3dc0SWang Huan * NAND Flash Definitions 185550e3dc0SWang Huan */ 186550e3dc0SWang Huan #define CONFIG_NAND_FSL_IFC 187550e3dc0SWang Huan 188550e3dc0SWang Huan #define CONFIG_SYS_NAND_BASE 0x7e800000 189550e3dc0SWang Huan #define CONFIG_SYS_NAND_BASE_PHYS CONFIG_SYS_NAND_BASE 190550e3dc0SWang Huan 191550e3dc0SWang Huan #define CONFIG_SYS_NAND_CSPR_EXT (0x0) 192550e3dc0SWang Huan 193550e3dc0SWang Huan #define CONFIG_SYS_NAND_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_NAND_BASE_PHYS) \ 194550e3dc0SWang Huan | CSPR_PORT_SIZE_8 \ 195550e3dc0SWang Huan | CSPR_MSEL_NAND \ 196550e3dc0SWang Huan | CSPR_V) 197550e3dc0SWang Huan #define CONFIG_SYS_NAND_AMASK IFC_AMASK(64*1024) 198550e3dc0SWang Huan #define CONFIG_SYS_NAND_CSOR (CSOR_NAND_ECC_ENC_EN /* ECC on encode */ \ 199550e3dc0SWang Huan | CSOR_NAND_ECC_DEC_EN /* ECC on decode */ \ 200550e3dc0SWang Huan | CSOR_NAND_ECC_MODE_4 /* 4-bit ECC */ \ 201550e3dc0SWang Huan | CSOR_NAND_RAL_3 /* RAL = 3 Bytes */ \ 202550e3dc0SWang Huan | CSOR_NAND_PGS_2K /* Page Size = 2K */ \ 203550e3dc0SWang Huan | CSOR_NAND_SPRZ_64 /* Spare size = 64 */ \ 204550e3dc0SWang Huan | CSOR_NAND_PB(64)) /* 64 Pages Per Block */ 205550e3dc0SWang Huan 206550e3dc0SWang Huan #define CONFIG_SYS_NAND_ONFI_DETECTION 207550e3dc0SWang Huan 208550e3dc0SWang Huan #define CONFIG_SYS_NAND_FTIM0 (FTIM0_NAND_TCCST(0x7) | \ 209550e3dc0SWang Huan FTIM0_NAND_TWP(0x18) | \ 210550e3dc0SWang Huan FTIM0_NAND_TWCHT(0x7) | \ 211550e3dc0SWang Huan FTIM0_NAND_TWH(0xa)) 212550e3dc0SWang Huan #define CONFIG_SYS_NAND_FTIM1 (FTIM1_NAND_TADLE(0x32) | \ 213550e3dc0SWang Huan FTIM1_NAND_TWBE(0x39) | \ 214550e3dc0SWang Huan FTIM1_NAND_TRR(0xe) | \ 215550e3dc0SWang Huan FTIM1_NAND_TRP(0x18)) 216550e3dc0SWang Huan #define CONFIG_SYS_NAND_FTIM2 (FTIM2_NAND_TRAD(0xf) | \ 217550e3dc0SWang Huan FTIM2_NAND_TREH(0xa) | \ 218550e3dc0SWang Huan FTIM2_NAND_TWHRE(0x1e)) 219550e3dc0SWang Huan #define CONFIG_SYS_NAND_FTIM3 0x0 220550e3dc0SWang Huan 221550e3dc0SWang Huan #define CONFIG_SYS_NAND_BASE_LIST { CONFIG_SYS_NAND_BASE } 222550e3dc0SWang Huan #define CONFIG_SYS_MAX_NAND_DEVICE 1 223550e3dc0SWang Huan #define CONFIG_CMD_NAND 224550e3dc0SWang Huan 225550e3dc0SWang Huan #define CONFIG_SYS_NAND_BLOCK_SIZE (128 * 1024) 226d612f0abSAlison Wang #endif 227550e3dc0SWang Huan 228550e3dc0SWang Huan /* 229550e3dc0SWang Huan * QIXIS Definitions 230550e3dc0SWang Huan */ 231550e3dc0SWang Huan #define CONFIG_FSL_QIXIS 232550e3dc0SWang Huan 233550e3dc0SWang Huan #ifdef CONFIG_FSL_QIXIS 234550e3dc0SWang Huan #define QIXIS_BASE 0x7fb00000 235550e3dc0SWang Huan #define QIXIS_BASE_PHYS QIXIS_BASE 236550e3dc0SWang Huan #define CONFIG_SYS_I2C_FPGA_ADDR 0x66 237550e3dc0SWang Huan #define QIXIS_LBMAP_SWITCH 6 238550e3dc0SWang Huan #define QIXIS_LBMAP_MASK 0x0f 239550e3dc0SWang Huan #define QIXIS_LBMAP_SHIFT 0 240550e3dc0SWang Huan #define QIXIS_LBMAP_DFLTBANK 0x00 241550e3dc0SWang Huan #define QIXIS_LBMAP_ALTBANK 0x04 242aeb901f2SHongbo Zhang #define QIXIS_PWR_CTL 0x21 243aeb901f2SHongbo Zhang #define QIXIS_PWR_CTL_POWEROFF 0x80 244550e3dc0SWang Huan #define QIXIS_RST_CTL_RESET 0x44 245550e3dc0SWang Huan #define QIXIS_RCFG_CTL_RECONFIG_IDLE 0x20 246550e3dc0SWang Huan #define QIXIS_RCFG_CTL_RECONFIG_START 0x21 247550e3dc0SWang Huan #define QIXIS_RCFG_CTL_WATCHDOG_ENBLE 0x08 248349cfc97SHongbo Zhang #define QIXIS_CTL_SYS 0x5 249349cfc97SHongbo Zhang #define QIXIS_CTL_SYS_EVTSW_MASK 0x0c 250349cfc97SHongbo Zhang #define QIXIS_CTL_SYS_EVTSW_IRQ 0x04 251349cfc97SHongbo Zhang #define QIXIS_RST_FORCE_3 0x45 252349cfc97SHongbo Zhang #define QIXIS_RST_FORCE_3_PCIESLOT1 0x80 253349cfc97SHongbo Zhang #define QIXIS_PWR_CTL2 0x21 254349cfc97SHongbo Zhang #define QIXIS_PWR_CTL2_PCTL 0x2 255550e3dc0SWang Huan 256550e3dc0SWang Huan #define CONFIG_SYS_FPGA_CSPR_EXT (0x0) 257550e3dc0SWang Huan #define CONFIG_SYS_FPGA_CSPR (CSPR_PHYS_ADDR(QIXIS_BASE_PHYS) | \ 258550e3dc0SWang Huan CSPR_PORT_SIZE_8 | \ 259550e3dc0SWang Huan CSPR_MSEL_GPCM | \ 260550e3dc0SWang Huan CSPR_V) 261550e3dc0SWang Huan #define CONFIG_SYS_FPGA_AMASK IFC_AMASK(64 * 1024) 262550e3dc0SWang Huan #define CONFIG_SYS_FPGA_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 263550e3dc0SWang Huan CSOR_NOR_NOR_MODE_AVD_NOR | \ 264550e3dc0SWang Huan CSOR_NOR_TRHZ_80) 265550e3dc0SWang Huan 266550e3dc0SWang Huan /* 267550e3dc0SWang Huan * QIXIS Timing parameters for IFC GPCM 268550e3dc0SWang Huan */ 269550e3dc0SWang Huan #define CONFIG_SYS_FPGA_FTIM0 (FTIM0_GPCM_TACSE(0xe) | \ 270550e3dc0SWang Huan FTIM0_GPCM_TEADC(0xe) | \ 271550e3dc0SWang Huan FTIM0_GPCM_TEAHC(0xe)) 272550e3dc0SWang Huan #define CONFIG_SYS_FPGA_FTIM1 (FTIM1_GPCM_TACO(0xe) | \ 273550e3dc0SWang Huan FTIM1_GPCM_TRAD(0x1f)) 274550e3dc0SWang Huan #define CONFIG_SYS_FPGA_FTIM2 (FTIM2_GPCM_TCS(0xe) | \ 275550e3dc0SWang Huan FTIM2_GPCM_TCH(0xe) | \ 276550e3dc0SWang Huan FTIM2_GPCM_TWP(0xf0)) 277550e3dc0SWang Huan #define CONFIG_SYS_FPGA_FTIM3 0x0 278550e3dc0SWang Huan #endif 279550e3dc0SWang Huan 2808ab967b6SAlison Wang #if defined(CONFIG_NAND_BOOT) 2818ab967b6SAlison Wang #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NAND_CSPR_EXT 2828ab967b6SAlison Wang #define CONFIG_SYS_CSPR0 CONFIG_SYS_NAND_CSPR 2838ab967b6SAlison Wang #define CONFIG_SYS_AMASK0 CONFIG_SYS_NAND_AMASK 2848ab967b6SAlison Wang #define CONFIG_SYS_CSOR0 CONFIG_SYS_NAND_CSOR 2858ab967b6SAlison Wang #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NAND_FTIM0 2868ab967b6SAlison Wang #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NAND_FTIM1 2878ab967b6SAlison Wang #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NAND_FTIM2 2888ab967b6SAlison Wang #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NAND_FTIM3 2898ab967b6SAlison Wang #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_NOR0_CSPR_EXT 2908ab967b6SAlison Wang #define CONFIG_SYS_CSPR1 CONFIG_SYS_NOR0_CSPR 2918ab967b6SAlison Wang #define CONFIG_SYS_AMASK1 CONFIG_SYS_NOR_AMASK 2928ab967b6SAlison Wang #define CONFIG_SYS_CSOR1 CONFIG_SYS_NOR_CSOR 2938ab967b6SAlison Wang #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_NOR_FTIM0 2948ab967b6SAlison Wang #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_NOR_FTIM1 2958ab967b6SAlison Wang #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_NOR_FTIM2 2968ab967b6SAlison Wang #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_NOR_FTIM3 2978ab967b6SAlison Wang #define CONFIG_SYS_CSPR2_EXT CONFIG_SYS_NOR1_CSPR_EXT 2988ab967b6SAlison Wang #define CONFIG_SYS_CSPR2 CONFIG_SYS_NOR1_CSPR 2998ab967b6SAlison Wang #define CONFIG_SYS_AMASK2 CONFIG_SYS_NOR_AMASK 3008ab967b6SAlison Wang #define CONFIG_SYS_CSOR2 CONFIG_SYS_NOR_CSOR 3018ab967b6SAlison Wang #define CONFIG_SYS_CS2_FTIM0 CONFIG_SYS_NOR_FTIM0 3028ab967b6SAlison Wang #define CONFIG_SYS_CS2_FTIM1 CONFIG_SYS_NOR_FTIM1 3038ab967b6SAlison Wang #define CONFIG_SYS_CS2_FTIM2 CONFIG_SYS_NOR_FTIM2 3048ab967b6SAlison Wang #define CONFIG_SYS_CS2_FTIM3 CONFIG_SYS_NOR_FTIM3 3058ab967b6SAlison Wang #define CONFIG_SYS_CSPR3_EXT CONFIG_SYS_FPGA_CSPR_EXT 3068ab967b6SAlison Wang #define CONFIG_SYS_CSPR3 CONFIG_SYS_FPGA_CSPR 3078ab967b6SAlison Wang #define CONFIG_SYS_AMASK3 CONFIG_SYS_FPGA_AMASK 3088ab967b6SAlison Wang #define CONFIG_SYS_CSOR3 CONFIG_SYS_FPGA_CSOR 3098ab967b6SAlison Wang #define CONFIG_SYS_CS3_FTIM0 CONFIG_SYS_FPGA_FTIM0 3108ab967b6SAlison Wang #define CONFIG_SYS_CS3_FTIM1 CONFIG_SYS_FPGA_FTIM1 3118ab967b6SAlison Wang #define CONFIG_SYS_CS3_FTIM2 CONFIG_SYS_FPGA_FTIM2 3128ab967b6SAlison Wang #define CONFIG_SYS_CS3_FTIM3 CONFIG_SYS_FPGA_FTIM3 3138ab967b6SAlison Wang #else 314550e3dc0SWang Huan #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NOR0_CSPR_EXT 315550e3dc0SWang Huan #define CONFIG_SYS_CSPR0 CONFIG_SYS_NOR0_CSPR 316550e3dc0SWang Huan #define CONFIG_SYS_AMASK0 CONFIG_SYS_NOR_AMASK 317550e3dc0SWang Huan #define CONFIG_SYS_CSOR0 CONFIG_SYS_NOR_CSOR 318550e3dc0SWang Huan #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NOR_FTIM0 319550e3dc0SWang Huan #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NOR_FTIM1 320550e3dc0SWang Huan #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NOR_FTIM2 321550e3dc0SWang Huan #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NOR_FTIM3 322550e3dc0SWang Huan #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_NOR1_CSPR_EXT 323550e3dc0SWang Huan #define CONFIG_SYS_CSPR1 CONFIG_SYS_NOR1_CSPR 324550e3dc0SWang Huan #define CONFIG_SYS_AMASK1 CONFIG_SYS_NOR_AMASK 325550e3dc0SWang Huan #define CONFIG_SYS_CSOR1 CONFIG_SYS_NOR_CSOR 326550e3dc0SWang Huan #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_NOR_FTIM0 327550e3dc0SWang Huan #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_NOR_FTIM1 328550e3dc0SWang Huan #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_NOR_FTIM2 329550e3dc0SWang Huan #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_NOR_FTIM3 330550e3dc0SWang Huan #define CONFIG_SYS_CSPR2_EXT CONFIG_SYS_NAND_CSPR_EXT 331550e3dc0SWang Huan #define CONFIG_SYS_CSPR2 CONFIG_SYS_NAND_CSPR 332550e3dc0SWang Huan #define CONFIG_SYS_AMASK2 CONFIG_SYS_NAND_AMASK 333550e3dc0SWang Huan #define CONFIG_SYS_CSOR2 CONFIG_SYS_NAND_CSOR 334550e3dc0SWang Huan #define CONFIG_SYS_CS2_FTIM0 CONFIG_SYS_NAND_FTIM0 335550e3dc0SWang Huan #define CONFIG_SYS_CS2_FTIM1 CONFIG_SYS_NAND_FTIM1 336550e3dc0SWang Huan #define CONFIG_SYS_CS2_FTIM2 CONFIG_SYS_NAND_FTIM2 337550e3dc0SWang Huan #define CONFIG_SYS_CS2_FTIM3 CONFIG_SYS_NAND_FTIM3 338550e3dc0SWang Huan #define CONFIG_SYS_CSPR3_EXT CONFIG_SYS_FPGA_CSPR_EXT 339550e3dc0SWang Huan #define CONFIG_SYS_CSPR3 CONFIG_SYS_FPGA_CSPR 340550e3dc0SWang Huan #define CONFIG_SYS_AMASK3 CONFIG_SYS_FPGA_AMASK 341550e3dc0SWang Huan #define CONFIG_SYS_CSOR3 CONFIG_SYS_FPGA_CSOR 342550e3dc0SWang Huan #define CONFIG_SYS_CS3_FTIM0 CONFIG_SYS_FPGA_FTIM0 343550e3dc0SWang Huan #define CONFIG_SYS_CS3_FTIM1 CONFIG_SYS_FPGA_FTIM1 344550e3dc0SWang Huan #define CONFIG_SYS_CS3_FTIM2 CONFIG_SYS_FPGA_FTIM2 345550e3dc0SWang Huan #define CONFIG_SYS_CS3_FTIM3 CONFIG_SYS_FPGA_FTIM3 3468ab967b6SAlison Wang #endif 347550e3dc0SWang Huan 348550e3dc0SWang Huan /* 349550e3dc0SWang Huan * Serial Port 350550e3dc0SWang Huan */ 3518fc2121aSAlison Wang #ifdef CONFIG_LPUART 3528fc2121aSAlison Wang #define CONFIG_LPUART_32B_REG 3538fc2121aSAlison Wang #else 354550e3dc0SWang Huan #define CONFIG_CONS_INDEX 1 355550e3dc0SWang Huan #define CONFIG_SYS_NS16550_SERIAL 356d83b47b7SYork Sun #ifndef CONFIG_DM_SERIAL 357550e3dc0SWang Huan #define CONFIG_SYS_NS16550_REG_SIZE 1 358d83b47b7SYork Sun #endif 359550e3dc0SWang Huan #define CONFIG_SYS_NS16550_CLK get_serial_clock() 3608fc2121aSAlison Wang #endif 361550e3dc0SWang Huan 362550e3dc0SWang Huan /* 363550e3dc0SWang Huan * I2C 364550e3dc0SWang Huan */ 365550e3dc0SWang Huan #define CONFIG_SYS_I2C 366550e3dc0SWang Huan #define CONFIG_SYS_I2C_MXC 36703544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 36803544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 369f8cb101eSYork Sun #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ 370550e3dc0SWang Huan 371550e3dc0SWang Huan /* 372550e3dc0SWang Huan * I2C bus multiplexer 373550e3dc0SWang Huan */ 374550e3dc0SWang Huan #define I2C_MUX_PCA_ADDR_PRI 0x77 375550e3dc0SWang Huan #define I2C_MUX_CH_DEFAULT 0x8 376dd04832dSXiubo Li #define I2C_MUX_CH_CH7301 0xC 377550e3dc0SWang Huan 378550e3dc0SWang Huan /* 379550e3dc0SWang Huan * MMC 380550e3dc0SWang Huan */ 381550e3dc0SWang Huan #define CONFIG_FSL_ESDHC 382550e3dc0SWang Huan 383e5493d4eSHaikun Wang /* SPI */ 38470097027SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 385e5493d4eSHaikun Wang /* QSPI */ 386d612f0abSAlison Wang #define QSPI0_AMBA_BASE 0x40000000 387d612f0abSAlison Wang #define FSL_QSPI_FLASH_SIZE (1 << 24) 388d612f0abSAlison Wang #define FSL_QSPI_FLASH_NUM 2 389e5493d4eSHaikun Wang 390e5493d4eSHaikun Wang /* DSPI */ 391e5493d4eSHaikun Wang 392e5493d4eSHaikun Wang /* DM SPI */ 393e5493d4eSHaikun Wang #if defined(CONFIG_FSL_DSPI) || defined(CONFIG_FSL_QSPI) 394e5493d4eSHaikun Wang #define CONFIG_DM_SPI_FLASH 3956812484aSJagan Teki #define CONFIG_SPI_FLASH_DATAFLASH 396e5493d4eSHaikun Wang #endif 397d612f0abSAlison Wang #endif 398d612f0abSAlison Wang 399550e3dc0SWang Huan /* 4008776cb20SNikhil Badola * USB 4018776cb20SNikhil Badola */ 402081a1b73SRamneek Mehresh /* EHCI Support - disbaled by default */ 403081a1b73SRamneek Mehresh /*#define CONFIG_HAS_FSL_DR_USB*/ 4048776cb20SNikhil Badola 4058776cb20SNikhil Badola #ifdef CONFIG_HAS_FSL_DR_USB 4068776cb20SNikhil Badola #define CONFIG_USB_EHCI_FSL 4078776cb20SNikhil Badola #define CONFIG_EHCI_HCD_INIT_AFTER_RESET 4088776cb20SNikhil Badola #endif 409081a1b73SRamneek Mehresh 410081a1b73SRamneek Mehresh /*XHCI Support - enabled by default*/ 411081a1b73SRamneek Mehresh #define CONFIG_HAS_FSL_XHCI_USB 412081a1b73SRamneek Mehresh 413081a1b73SRamneek Mehresh #ifdef CONFIG_HAS_FSL_XHCI_USB 414081a1b73SRamneek Mehresh #define CONFIG_USB_XHCI_FSL 415081a1b73SRamneek Mehresh #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 416081a1b73SRamneek Mehresh #define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2 417081a1b73SRamneek Mehresh #endif 418081a1b73SRamneek Mehresh 4198776cb20SNikhil Badola /* 420dd04832dSXiubo Li * Video 421dd04832dSXiubo Li */ 422b215fb3fSSanchayan Maity #ifdef CONFIG_VIDEO_FSL_DCU_FB 423dd04832dSXiubo Li #define CONFIG_VIDEO_LOGO 424dd04832dSXiubo Li #define CONFIG_VIDEO_BMP_LOGO 425dd04832dSXiubo Li 426dd04832dSXiubo Li #define CONFIG_FSL_DIU_CH7301 427dd04832dSXiubo Li #define CONFIG_SYS_I2C_DVI_BUS_NUM 0 428dd04832dSXiubo Li #define CONFIG_SYS_I2C_QIXIS_ADDR 0x66 429dd04832dSXiubo Li #define CONFIG_SYS_I2C_DVI_ADDR 0x75 430dd04832dSXiubo Li #endif 431dd04832dSXiubo Li 432dd04832dSXiubo Li /* 433550e3dc0SWang Huan * eTSEC 434550e3dc0SWang Huan */ 435550e3dc0SWang Huan #define CONFIG_TSEC_ENET 436550e3dc0SWang Huan 437550e3dc0SWang Huan #ifdef CONFIG_TSEC_ENET 438550e3dc0SWang Huan #define CONFIG_MII 439550e3dc0SWang Huan #define CONFIG_MII_DEFAULT_TSEC 3 440550e3dc0SWang Huan #define CONFIG_TSEC1 1 441550e3dc0SWang Huan #define CONFIG_TSEC1_NAME "eTSEC1" 442550e3dc0SWang Huan #define CONFIG_TSEC2 1 443550e3dc0SWang Huan #define CONFIG_TSEC2_NAME "eTSEC2" 444550e3dc0SWang Huan #define CONFIG_TSEC3 1 445550e3dc0SWang Huan #define CONFIG_TSEC3_NAME "eTSEC3" 446550e3dc0SWang Huan 447550e3dc0SWang Huan #define TSEC1_PHY_ADDR 1 448550e3dc0SWang Huan #define TSEC2_PHY_ADDR 2 449550e3dc0SWang Huan #define TSEC3_PHY_ADDR 3 450550e3dc0SWang Huan 451550e3dc0SWang Huan #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 452550e3dc0SWang Huan #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 453550e3dc0SWang Huan #define TSEC3_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 454550e3dc0SWang Huan 455550e3dc0SWang Huan #define TSEC1_PHYIDX 0 456550e3dc0SWang Huan #define TSEC2_PHYIDX 0 457550e3dc0SWang Huan #define TSEC3_PHYIDX 0 458550e3dc0SWang Huan 459550e3dc0SWang Huan #define CONFIG_ETHPRIME "eTSEC1" 460550e3dc0SWang Huan 461550e3dc0SWang Huan #define CONFIG_PHY_GIGE 462550e3dc0SWang Huan #define CONFIG_PHYLIB 463550e3dc0SWang Huan #define CONFIG_PHY_REALTEK 464550e3dc0SWang Huan 465550e3dc0SWang Huan #define CONFIG_HAS_ETH0 466550e3dc0SWang Huan #define CONFIG_HAS_ETH1 467550e3dc0SWang Huan #define CONFIG_HAS_ETH2 468550e3dc0SWang Huan 469550e3dc0SWang Huan #define CONFIG_FSL_SGMII_RISER 1 470550e3dc0SWang Huan #define SGMII_RISER_PHY_OFFSET 0x1b 471550e3dc0SWang Huan 472550e3dc0SWang Huan #ifdef CONFIG_FSL_SGMII_RISER 473550e3dc0SWang Huan #define CONFIG_SYS_TBIPA_VALUE 8 474550e3dc0SWang Huan #endif 475550e3dc0SWang Huan 476550e3dc0SWang Huan #endif 477da419027SMinghuan Lian 478da419027SMinghuan Lian /* PCIe */ 479b38eaec5SRobert P. J. Day #define CONFIG_PCIE1 /* PCIE controller 1 */ 480b38eaec5SRobert P. J. Day #define CONFIG_PCIE2 /* PCIE controller 2 */ 481da419027SMinghuan Lian 482180b8688SMinghuan Lian #ifdef CONFIG_PCI 483180b8688SMinghuan Lian #define CONFIG_PCI_SCAN_SHOW 484180b8688SMinghuan Lian #define CONFIG_CMD_PCI 485180b8688SMinghuan Lian #endif 486180b8688SMinghuan Lian 487550e3dc0SWang Huan #define CONFIG_CMDLINE_TAG 488550e3dc0SWang Huan #define CONFIG_CMDLINE_EDITING 48986949c2bSAlison Wang 4901a2826f6SXiubo Li #define CONFIG_PEN_ADDR_BIG_ENDIAN 491435acd83SMingkai Hu #define CONFIG_LAYERSCAPE_NS_ACCESS 4921a2826f6SXiubo Li #define CONFIG_SMP_PEN_ADDR 0x01ee0200 493e4916e85SAndre Przywara #define COUNTER_FREQUENCY 12500000 4941a2826f6SXiubo Li 495550e3dc0SWang Huan #define CONFIG_HWCONFIG 49603c22449SZhuoyu Zhang #define HWCONFIG_BUFFER_SIZE 256 49703c22449SZhuoyu Zhang 49803c22449SZhuoyu Zhang #define CONFIG_FSL_DEVICE_DISABLE 499550e3dc0SWang Huan 500550e3dc0SWang Huan 501615bfce5SAlison Wang #define CONFIG_SYS_QE_FW_ADDR 0x60940000 50263e75fd7SZhao Qiang 5038fc2121aSAlison Wang #ifdef CONFIG_LPUART 5048fc2121aSAlison Wang #define CONFIG_EXTRA_ENV_SETTINGS \ 5058fc2121aSAlison Wang "bootargs=root=/dev/ram0 rw console=ttyLP0,115200\0" \ 50699fe4541SAlison Wang "fdt_high=0xffffffff\0" \ 50799fe4541SAlison Wang "initrd_high=0xffffffff\0" \ 5088fc2121aSAlison Wang "hwconfig=fsl_ddr:ctlr_intlv=null,bank_intlv=null\0" 5098fc2121aSAlison Wang #else 510550e3dc0SWang Huan #define CONFIG_EXTRA_ENV_SETTINGS \ 511550e3dc0SWang Huan "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \ 51299fe4541SAlison Wang "fdt_high=0xffffffff\0" \ 51399fe4541SAlison Wang "initrd_high=0xffffffff\0" \ 514550e3dc0SWang Huan "hwconfig=fsl_ddr:ctlr_intlv=null,bank_intlv=null\0" 5158fc2121aSAlison Wang #endif 516550e3dc0SWang Huan 517550e3dc0SWang Huan /* 518550e3dc0SWang Huan * Miscellaneous configurable options 519550e3dc0SWang Huan */ 520550e3dc0SWang Huan #define CONFIG_SYS_LONGHELP /* undef to save memory */ 521550e3dc0SWang Huan #define CONFIG_AUTO_COMPLETE 522550e3dc0SWang Huan #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 523550e3dc0SWang Huan #define CONFIG_SYS_PBSIZE \ 524550e3dc0SWang Huan (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 525550e3dc0SWang Huan #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 526550e3dc0SWang Huan #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 527550e3dc0SWang Huan 528550e3dc0SWang Huan #define CONFIG_SYS_MEMTEST_START 0x80000000 529550e3dc0SWang Huan #define CONFIG_SYS_MEMTEST_END 0x9fffffff 530550e3dc0SWang Huan 531550e3dc0SWang Huan #define CONFIG_SYS_LOAD_ADDR 0x82000000 532550e3dc0SWang Huan 533660673afSXiubo Li #define CONFIG_LS102XA_STREAM_ID 534660673afSXiubo Li 535550e3dc0SWang Huan #define CONFIG_SYS_INIT_SP_OFFSET \ 536550e3dc0SWang Huan (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 537550e3dc0SWang Huan #define CONFIG_SYS_INIT_SP_ADDR \ 538550e3dc0SWang Huan (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 539550e3dc0SWang Huan 54086949c2bSAlison Wang #ifdef CONFIG_SPL_BUILD 54186949c2bSAlison Wang #define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE 54286949c2bSAlison Wang #else 543550e3dc0SWang Huan #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 54486949c2bSAlison Wang #endif 545550e3dc0SWang Huan 546550e3dc0SWang Huan /* 547550e3dc0SWang Huan * Environment 548550e3dc0SWang Huan */ 549550e3dc0SWang Huan #define CONFIG_ENV_OVERWRITE 550550e3dc0SWang Huan 55186949c2bSAlison Wang #if defined(CONFIG_SD_BOOT) 552615bfce5SAlison Wang #define CONFIG_ENV_OFFSET 0x300000 55386949c2bSAlison Wang #define CONFIG_ENV_IS_IN_MMC 55486949c2bSAlison Wang #define CONFIG_SYS_MMC_ENV_DEV 0 55586949c2bSAlison Wang #define CONFIG_ENV_SIZE 0x2000 556d612f0abSAlison Wang #elif defined(CONFIG_QSPI_BOOT) 557d612f0abSAlison Wang #define CONFIG_ENV_IS_IN_SPI_FLASH 558d612f0abSAlison Wang #define CONFIG_ENV_SIZE 0x2000 /* 8KB */ 559615bfce5SAlison Wang #define CONFIG_ENV_OFFSET 0x300000 /* 3MB */ 560d612f0abSAlison Wang #define CONFIG_ENV_SECT_SIZE 0x10000 5618ab967b6SAlison Wang #elif defined(CONFIG_NAND_BOOT) 5628ab967b6SAlison Wang #define CONFIG_ENV_IS_IN_NAND 5638ab967b6SAlison Wang #define CONFIG_ENV_SIZE 0x2000 5648ab967b6SAlison Wang #define CONFIG_ENV_OFFSET (10 * CONFIG_SYS_NAND_BLOCK_SIZE) 56586949c2bSAlison Wang #else 566550e3dc0SWang Huan #define CONFIG_ENV_IS_IN_FLASH 567615bfce5SAlison Wang #define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x300000) 568550e3dc0SWang Huan #define CONFIG_ENV_SIZE 0x2000 569550e3dc0SWang Huan #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) */ 57086949c2bSAlison Wang #endif 571550e3dc0SWang Huan 5724ba4a095SRuchika Gupta #define CONFIG_MISC_INIT_R 5734ba4a095SRuchika Gupta 574ef6c55a2SAneesh Bansal #include <asm/fsl_secure_boot.h> 575cc7b8b9aSAlison Wang #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 5764ba4a095SRuchika Gupta 577550e3dc0SWang Huan #endif 578