1*c8a7d9daSWang Huan /* 2*c8a7d9daSWang Huan * Copyright 2014 Freescale Semiconductor, Inc. 3*c8a7d9daSWang Huan * 4*c8a7d9daSWang Huan * SPDX-License-Identifier: GPL-2.0+ 5*c8a7d9daSWang Huan */ 6*c8a7d9daSWang Huan 7*c8a7d9daSWang Huan #ifndef __CONFIG_H 8*c8a7d9daSWang Huan #define __CONFIG_H 9*c8a7d9daSWang Huan 10*c8a7d9daSWang Huan #include <config_cmd_default.h> 11*c8a7d9daSWang Huan 12*c8a7d9daSWang Huan #define CONFIG_LS102XA 13*c8a7d9daSWang Huan 14*c8a7d9daSWang Huan #define CONFIG_SYS_GENERIC_BOARD 15*c8a7d9daSWang Huan 16*c8a7d9daSWang Huan #define CONFIG_DISPLAY_CPUINFO 17*c8a7d9daSWang Huan #define CONFIG_DISPLAY_BOARDINFO 18*c8a7d9daSWang Huan 19*c8a7d9daSWang Huan #define CONFIG_SKIP_LOWLEVEL_INIT 20*c8a7d9daSWang Huan #define CONFIG_BOARD_EARLY_INIT_F 21*c8a7d9daSWang Huan 22*c8a7d9daSWang Huan /* 23*c8a7d9daSWang Huan * Size of malloc() pool 24*c8a7d9daSWang Huan */ 25*c8a7d9daSWang Huan #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 16 * 1024 * 1024) 26*c8a7d9daSWang Huan 27*c8a7d9daSWang Huan #define CONFIG_SYS_INIT_RAM_ADDR OCRAM_BASE_ADDR 28*c8a7d9daSWang Huan #define CONFIG_SYS_INIT_RAM_SIZE OCRAM_SIZE 29*c8a7d9daSWang Huan 30*c8a7d9daSWang Huan /* 31*c8a7d9daSWang Huan * Generic Timer Definitions 32*c8a7d9daSWang Huan */ 33*c8a7d9daSWang Huan #define GENERIC_TIMER_CLK 12500000 34*c8a7d9daSWang Huan 35*c8a7d9daSWang Huan #define CONFIG_SYS_CLK_FREQ 100000000 36*c8a7d9daSWang Huan #define CONFIG_DDR_CLK_FREQ 100000000 37*c8a7d9daSWang Huan 38*c8a7d9daSWang Huan #ifndef CONFIG_SYS_TEXT_BASE 39*c8a7d9daSWang Huan #define CONFIG_SYS_TEXT_BASE 0x67f80000 40*c8a7d9daSWang Huan #endif 41*c8a7d9daSWang Huan 42*c8a7d9daSWang Huan #define CONFIG_NR_DRAM_BANKS 1 43*c8a7d9daSWang Huan #define PHYS_SDRAM 0x80000000 44*c8a7d9daSWang Huan #define PHYS_SDRAM_SIZE (1u * 1024 * 1024 * 1024) 45*c8a7d9daSWang Huan 46*c8a7d9daSWang Huan #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000UL 47*c8a7d9daSWang Huan #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 48*c8a7d9daSWang Huan 49*c8a7d9daSWang Huan #define CONFIG_SYS_HAS_SERDES 50*c8a7d9daSWang Huan 51*c8a7d9daSWang Huan /* 52*c8a7d9daSWang Huan * IFC Definitions 53*c8a7d9daSWang Huan */ 54*c8a7d9daSWang Huan #define CONFIG_FSL_IFC 55*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE 0x60000000 56*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE 57*c8a7d9daSWang Huan 58*c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR_EXT (0x0) 59*c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ 60*c8a7d9daSWang Huan CSPR_PORT_SIZE_16 | \ 61*c8a7d9daSWang Huan CSPR_MSEL_NOR | \ 62*c8a7d9daSWang Huan CSPR_V) 63*c8a7d9daSWang Huan #define CONFIG_SYS_NOR_AMASK IFC_AMASK(128 * 1024 * 1024) 64*c8a7d9daSWang Huan 65*c8a7d9daSWang Huan /* NOR Flash Timing Params */ 66*c8a7d9daSWang Huan #define CONFIG_SYS_NOR_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 67*c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 68*c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM0 (FTIM0_NOR_TACSE(0x4) | \ 69*c8a7d9daSWang Huan FTIM0_NOR_TEADC(0x5) | \ 70*c8a7d9daSWang Huan FTIM0_NOR_TAVDS(0x0) | \ 71*c8a7d9daSWang Huan FTIM0_NOR_TEAHC(0x5)) 72*c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM1 (FTIM1_NOR_TACO(0x35) | \ 73*c8a7d9daSWang Huan FTIM1_NOR_TRAD_NOR(0x1A) | \ 74*c8a7d9daSWang Huan FTIM1_NOR_TSEQRAD_NOR(0x13)) 75*c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM2 (FTIM2_NOR_TCS(0x4) | \ 76*c8a7d9daSWang Huan FTIM2_NOR_TCH(0x4) | \ 77*c8a7d9daSWang Huan FTIM2_NOR_TWP(0x1c) | \ 78*c8a7d9daSWang Huan FTIM2_NOR_TWPH(0x0e)) 79*c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM3 0 80*c8a7d9daSWang Huan 81*c8a7d9daSWang Huan #define CONFIG_FLASH_CFI_DRIVER 82*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_CFI 83*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 84*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_QUIET_TEST 85*c8a7d9daSWang Huan #define CONFIG_FLASH_SHOW_PROGRESS 45 /* count down from 45/5: 9..1 */ 86*c8a7d9daSWang Huan 87*c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 88*c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_SECT 1024 /* sectors per device */ 89*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 90*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 91*c8a7d9daSWang Huan 92*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_EMPTY_INFO 93*c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE_PHYS } 94*c8a7d9daSWang Huan 95*c8a7d9daSWang Huan #define CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS 96*c8a7d9daSWang Huan 97*c8a7d9daSWang Huan /* CPLD */ 98*c8a7d9daSWang Huan 99*c8a7d9daSWang Huan #define CONFIG_SYS_CPLD_BASE 0x7fb00000 100*c8a7d9daSWang Huan #define CPLD_BASE_PHYS CONFIG_SYS_CPLD_BASE 101*c8a7d9daSWang Huan 102*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR_EXT (0x0) 103*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR (CSPR_PHYS_ADDR(CPLD_BASE_PHYS) | \ 104*c8a7d9daSWang Huan CSPR_PORT_SIZE_8 | \ 105*c8a7d9daSWang Huan CSPR_MSEL_GPCM | \ 106*c8a7d9daSWang Huan CSPR_V) 107*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_AMASK IFC_AMASK(64 * 1024) 108*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 109*c8a7d9daSWang Huan CSOR_NOR_NOR_MODE_AVD_NOR | \ 110*c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 111*c8a7d9daSWang Huan 112*c8a7d9daSWang Huan /* CPLD Timing parameters for IFC GPCM */ 113*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM0 (FTIM0_GPCM_TACSE(0xf) | \ 114*c8a7d9daSWang Huan FTIM0_GPCM_TEADC(0xf) | \ 115*c8a7d9daSWang Huan FTIM0_GPCM_TEAHC(0xf)) 116*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM1 (FTIM1_GPCM_TACO(0xff) | \ 117*c8a7d9daSWang Huan FTIM1_GPCM_TRAD(0x3f)) 118*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM2 (FTIM2_GPCM_TCS(0xf) | \ 119*c8a7d9daSWang Huan FTIM2_GPCM_TCH(0xf) | \ 120*c8a7d9daSWang Huan FTIM2_GPCM_TWP(0xff)) 121*c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM3 0x0 122*c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NOR0_CSPR_EXT 123*c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0 CONFIG_SYS_NOR0_CSPR 124*c8a7d9daSWang Huan #define CONFIG_SYS_AMASK0 CONFIG_SYS_NOR_AMASK 125*c8a7d9daSWang Huan #define CONFIG_SYS_CSOR0 CONFIG_SYS_NOR_CSOR 126*c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NOR_FTIM0 127*c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NOR_FTIM1 128*c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NOR_FTIM2 129*c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NOR_FTIM3 130*c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_FPGA_CSPR_EXT 131*c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1 CONFIG_SYS_FPGA_CSPR 132*c8a7d9daSWang Huan #define CONFIG_SYS_AMASK1 CONFIG_SYS_FPGA_AMASK 133*c8a7d9daSWang Huan #define CONFIG_SYS_CSOR1 CONFIG_SYS_FPGA_CSOR 134*c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_FPGA_FTIM0 135*c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_FPGA_FTIM1 136*c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_FPGA_FTIM2 137*c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_FPGA_FTIM3 138*c8a7d9daSWang Huan 139*c8a7d9daSWang Huan /* 140*c8a7d9daSWang Huan * Serial Port 141*c8a7d9daSWang Huan */ 142*c8a7d9daSWang Huan #define CONFIG_CONS_INDEX 1 143*c8a7d9daSWang Huan #define CONFIG_SYS_NS16550 144*c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_SERIAL 145*c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_REG_SIZE 1 146*c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_CLK get_serial_clock() 147*c8a7d9daSWang Huan 148*c8a7d9daSWang Huan #define CONFIG_BAUDRATE 115200 149*c8a7d9daSWang Huan 150*c8a7d9daSWang Huan /* 151*c8a7d9daSWang Huan * I2C 152*c8a7d9daSWang Huan */ 153*c8a7d9daSWang Huan #define CONFIG_CMD_I2C 154*c8a7d9daSWang Huan #define CONFIG_SYS_I2C 155*c8a7d9daSWang Huan #define CONFIG_SYS_I2C_MXC 156*c8a7d9daSWang Huan 157*c8a7d9daSWang Huan /* 158*c8a7d9daSWang Huan * MMC 159*c8a7d9daSWang Huan */ 160*c8a7d9daSWang Huan #define CONFIG_MMC 161*c8a7d9daSWang Huan #define CONFIG_CMD_MMC 162*c8a7d9daSWang Huan #define CONFIG_FSL_ESDHC 163*c8a7d9daSWang Huan #define CONFIG_GENERIC_MMC 164*c8a7d9daSWang Huan 165*c8a7d9daSWang Huan /* 166*c8a7d9daSWang Huan * eTSEC 167*c8a7d9daSWang Huan */ 168*c8a7d9daSWang Huan #define CONFIG_TSEC_ENET 169*c8a7d9daSWang Huan 170*c8a7d9daSWang Huan #ifdef CONFIG_TSEC_ENET 171*c8a7d9daSWang Huan #define CONFIG_MII 172*c8a7d9daSWang Huan #define CONFIG_MII_DEFAULT_TSEC 1 173*c8a7d9daSWang Huan #define CONFIG_TSEC1 1 174*c8a7d9daSWang Huan #define CONFIG_TSEC1_NAME "eTSEC1" 175*c8a7d9daSWang Huan #define CONFIG_TSEC2 1 176*c8a7d9daSWang Huan #define CONFIG_TSEC2_NAME "eTSEC2" 177*c8a7d9daSWang Huan #define CONFIG_TSEC3 1 178*c8a7d9daSWang Huan #define CONFIG_TSEC3_NAME "eTSEC3" 179*c8a7d9daSWang Huan 180*c8a7d9daSWang Huan #define TSEC1_PHY_ADDR 2 181*c8a7d9daSWang Huan #define TSEC2_PHY_ADDR 0 182*c8a7d9daSWang Huan #define TSEC3_PHY_ADDR 1 183*c8a7d9daSWang Huan 184*c8a7d9daSWang Huan #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 185*c8a7d9daSWang Huan #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 186*c8a7d9daSWang Huan #define TSEC3_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 187*c8a7d9daSWang Huan 188*c8a7d9daSWang Huan #define TSEC1_PHYIDX 0 189*c8a7d9daSWang Huan #define TSEC2_PHYIDX 0 190*c8a7d9daSWang Huan #define TSEC3_PHYIDX 0 191*c8a7d9daSWang Huan 192*c8a7d9daSWang Huan #define CONFIG_ETHPRIME "eTSEC1" 193*c8a7d9daSWang Huan 194*c8a7d9daSWang Huan #define CONFIG_PHY_GIGE 195*c8a7d9daSWang Huan #define CONFIG_PHYLIB 196*c8a7d9daSWang Huan #define CONFIG_PHY_ATHEROS 197*c8a7d9daSWang Huan 198*c8a7d9daSWang Huan #define CONFIG_HAS_ETH0 199*c8a7d9daSWang Huan #define CONFIG_HAS_ETH1 200*c8a7d9daSWang Huan #define CONFIG_HAS_ETH2 201*c8a7d9daSWang Huan #endif 202*c8a7d9daSWang Huan 203*c8a7d9daSWang Huan #define CONFIG_CMD_PING 204*c8a7d9daSWang Huan #define CONFIG_CMD_DHCP 205*c8a7d9daSWang Huan #define CONFIG_CMD_MII 206*c8a7d9daSWang Huan #define CONFIG_CMD_NET 207*c8a7d9daSWang Huan 208*c8a7d9daSWang Huan #define CONFIG_CMDLINE_TAG 209*c8a7d9daSWang Huan #define CONFIG_CMDLINE_EDITING 210*c8a7d9daSWang Huan #define CONFIG_CMD_IMLS 211*c8a7d9daSWang Huan 212*c8a7d9daSWang Huan #define CONFIG_HWCONFIG 213*c8a7d9daSWang Huan #define HWCONFIG_BUFFER_SIZE 128 214*c8a7d9daSWang Huan 215*c8a7d9daSWang Huan #define CONFIG_BOOTDELAY 3 216*c8a7d9daSWang Huan 217*c8a7d9daSWang Huan #define CONFIG_EXTRA_ENV_SETTINGS \ 218*c8a7d9daSWang Huan "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \ 219*c8a7d9daSWang Huan "initrd_high=0xcfffffff\0" \ 220*c8a7d9daSWang Huan "fdt_high=0xcfffffff\0" 221*c8a7d9daSWang Huan 222*c8a7d9daSWang Huan /* 223*c8a7d9daSWang Huan * Miscellaneous configurable options 224*c8a7d9daSWang Huan */ 225*c8a7d9daSWang Huan #define CONFIG_SYS_LONGHELP /* undef to save memory */ 226*c8a7d9daSWang Huan #define CONFIG_SYS_HUSH_PARSER /* use "hush" command parser */ 227*c8a7d9daSWang Huan #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 228*c8a7d9daSWang Huan #define CONFIG_SYS_PROMPT "=> " 229*c8a7d9daSWang Huan #define CONFIG_AUTO_COMPLETE 230*c8a7d9daSWang Huan #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 231*c8a7d9daSWang Huan #define CONFIG_SYS_PBSIZE \ 232*c8a7d9daSWang Huan (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 233*c8a7d9daSWang Huan #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 234*c8a7d9daSWang Huan #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 235*c8a7d9daSWang Huan 236*c8a7d9daSWang Huan #define CONFIG_CMD_ENV_EXISTS 237*c8a7d9daSWang Huan #define CONFIG_CMD_GREPENV 238*c8a7d9daSWang Huan #define CONFIG_CMD_MEMINFO 239*c8a7d9daSWang Huan #define CONFIG_CMD_MEMTEST 240*c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_START 0x80000000 241*c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_END 0x9fffffff 242*c8a7d9daSWang Huan 243*c8a7d9daSWang Huan #define CONFIG_SYS_LOAD_ADDR 0x82000000 244*c8a7d9daSWang Huan #define CONFIG_SYS_HZ 1000 245*c8a7d9daSWang Huan 246*c8a7d9daSWang Huan /* 247*c8a7d9daSWang Huan * Stack sizes 248*c8a7d9daSWang Huan * The stack sizes are set up in start.S using the settings below 249*c8a7d9daSWang Huan */ 250*c8a7d9daSWang Huan #define CONFIG_STACKSIZE (30 * 1024) 251*c8a7d9daSWang Huan 252*c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_OFFSET \ 253*c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 254*c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_ADDR \ 255*c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 256*c8a7d9daSWang Huan 257*c8a7d9daSWang Huan #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 258*c8a7d9daSWang Huan 259*c8a7d9daSWang Huan /* 260*c8a7d9daSWang Huan * Environment 261*c8a7d9daSWang Huan */ 262*c8a7d9daSWang Huan #define CONFIG_ENV_OVERWRITE 263*c8a7d9daSWang Huan 264*c8a7d9daSWang Huan #define CONFIG_ENV_IS_IN_FLASH 265*c8a7d9daSWang Huan #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) 266*c8a7d9daSWang Huan #define CONFIG_ENV_SIZE 0x20000 267*c8a7d9daSWang Huan #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) */ 268*c8a7d9daSWang Huan 269*c8a7d9daSWang Huan #define CONFIG_OF_LIBFDT 270*c8a7d9daSWang Huan #define CONFIG_OF_BOARD_SETUP 271*c8a7d9daSWang Huan #define CONFIG_CMD_BOOTZ 272*c8a7d9daSWang Huan 273*c8a7d9daSWang Huan #endif 274