1c8a7d9daSWang Huan /* 2c8a7d9daSWang Huan * Copyright 2014 Freescale Semiconductor, Inc. 3c8a7d9daSWang Huan * 4c8a7d9daSWang Huan * SPDX-License-Identifier: GPL-2.0+ 5c8a7d9daSWang Huan */ 6c8a7d9daSWang Huan 7c8a7d9daSWang Huan #ifndef __CONFIG_H 8c8a7d9daSWang Huan #define __CONFIG_H 9c8a7d9daSWang Huan 10c8a7d9daSWang Huan #define CONFIG_LS102XA 11c8a7d9daSWang Huan 12340848b1SWang Dongsheng #define CONFIG_ARMV7_PSCI 13*dbf38aabSChen-Yu Tsai #define CONFIG_ARMV7_PSCI_NR_CPUS CONFIG_MAX_CPUS 14340848b1SWang Dongsheng 1518fb0e3cSGong Qianyu #define CONFIG_SYS_FSL_CLK 16c8a7d9daSWang Huan 17c8a7d9daSWang Huan #define CONFIG_DISPLAY_CPUINFO 18c8a7d9daSWang Huan #define CONFIG_DISPLAY_BOARDINFO 19c8a7d9daSWang Huan 20c8a7d9daSWang Huan #define CONFIG_SKIP_LOWLEVEL_INIT 21c8a7d9daSWang Huan #define CONFIG_BOARD_EARLY_INIT_F 2299e1bd42STang Yuantian #define CONFIG_DEEP_SLEEP 2399e1bd42STang Yuantian #ifdef CONFIG_DEEP_SLEEP 2499e1bd42STang Yuantian #define CONFIG_SILENT_CONSOLE 2599e1bd42STang Yuantian #endif 26c8a7d9daSWang Huan 27c8a7d9daSWang Huan /* 28c8a7d9daSWang Huan * Size of malloc() pool 29c8a7d9daSWang Huan */ 30c8a7d9daSWang Huan #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 16 * 1024 * 1024) 31c8a7d9daSWang Huan 32c8a7d9daSWang Huan #define CONFIG_SYS_INIT_RAM_ADDR OCRAM_BASE_ADDR 33c8a7d9daSWang Huan #define CONFIG_SYS_INIT_RAM_SIZE OCRAM_SIZE 34c8a7d9daSWang Huan 35c8a7d9daSWang Huan /* 3610a28644SRamneek Mehresh * USB 3710a28644SRamneek Mehresh */ 3810a28644SRamneek Mehresh 3910a28644SRamneek Mehresh /* 4010a28644SRamneek Mehresh * EHCI Support - disbaled by default as 4110a28644SRamneek Mehresh * there is no signal coming out of soc on 4210a28644SRamneek Mehresh * this board for this controller. However, 4310a28644SRamneek Mehresh * the silicon still has this controller, 4410a28644SRamneek Mehresh * and anyone can use this controller by 4510a28644SRamneek Mehresh * taking signals out on their board. 4610a28644SRamneek Mehresh */ 4710a28644SRamneek Mehresh 4810a28644SRamneek Mehresh /*#define CONFIG_HAS_FSL_DR_USB*/ 4910a28644SRamneek Mehresh 5010a28644SRamneek Mehresh #ifdef CONFIG_HAS_FSL_DR_USB 5110a28644SRamneek Mehresh #define CONFIG_USB_EHCI 5210a28644SRamneek Mehresh #define CONFIG_USB_EHCI_FSL 5310a28644SRamneek Mehresh #define CONFIG_EHCI_HCD_INIT_AFTER_RESET 5410a28644SRamneek Mehresh #endif 5510a28644SRamneek Mehresh 5610a28644SRamneek Mehresh /* XHCI Support - enabled by default */ 5710a28644SRamneek Mehresh #define CONFIG_HAS_FSL_XHCI_USB 5810a28644SRamneek Mehresh 5910a28644SRamneek Mehresh #ifdef CONFIG_HAS_FSL_XHCI_USB 6010a28644SRamneek Mehresh #define CONFIG_USB_XHCI_FSL 6110a28644SRamneek Mehresh #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 6210a28644SRamneek Mehresh #define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2 6310a28644SRamneek Mehresh #endif 6410a28644SRamneek Mehresh 6510a28644SRamneek Mehresh #if defined(CONFIG_HAS_FSL_DR_USB) || defined(CONFIG_HAS_FSL_XHCI_USB) 6610a28644SRamneek Mehresh #define CONFIG_USB_STORAGE 6710a28644SRamneek Mehresh #endif 6810a28644SRamneek Mehresh 6910a28644SRamneek Mehresh /* 70c8a7d9daSWang Huan * Generic Timer Definitions 71c8a7d9daSWang Huan */ 72c8a7d9daSWang Huan #define GENERIC_TIMER_CLK 12500000 73c8a7d9daSWang Huan 74c8a7d9daSWang Huan #define CONFIG_SYS_CLK_FREQ 100000000 75c8a7d9daSWang Huan #define CONFIG_DDR_CLK_FREQ 100000000 76c8a7d9daSWang Huan 77a88cc3bdSYork Sun #define DDR_SDRAM_CFG 0x470c0008 78a88cc3bdSYork Sun #define DDR_CS0_BNDS 0x008000bf 79a88cc3bdSYork Sun #define DDR_CS0_CONFIG 0x80014302 80a88cc3bdSYork Sun #define DDR_TIMING_CFG_0 0x50550004 81a88cc3bdSYork Sun #define DDR_TIMING_CFG_1 0xbcb38c56 82a88cc3bdSYork Sun #define DDR_TIMING_CFG_2 0x0040d120 83a88cc3bdSYork Sun #define DDR_TIMING_CFG_3 0x010e1000 84a88cc3bdSYork Sun #define DDR_TIMING_CFG_4 0x00000001 85a88cc3bdSYork Sun #define DDR_TIMING_CFG_5 0x03401400 86a88cc3bdSYork Sun #define DDR_SDRAM_CFG_2 0x00401010 87a88cc3bdSYork Sun #define DDR_SDRAM_MODE 0x00061c60 88a88cc3bdSYork Sun #define DDR_SDRAM_MODE_2 0x00180000 89a88cc3bdSYork Sun #define DDR_SDRAM_INTERVAL 0x18600618 90a88cc3bdSYork Sun #define DDR_DDR_WRLVL_CNTL 0x8655f605 91a88cc3bdSYork Sun #define DDR_DDR_WRLVL_CNTL_2 0x05060607 92a88cc3bdSYork Sun #define DDR_DDR_WRLVL_CNTL_3 0x05050505 93a88cc3bdSYork Sun #define DDR_DDR_CDR1 0x80040000 94a88cc3bdSYork Sun #define DDR_DDR_CDR2 0x00000001 95a88cc3bdSYork Sun #define DDR_SDRAM_CLK_CNTL 0x02000000 96a88cc3bdSYork Sun #define DDR_DDR_ZQ_CNTL 0x89080600 97a88cc3bdSYork Sun #define DDR_CS0_CONFIG_2 0 98a88cc3bdSYork Sun #define DDR_SDRAM_CFG_MEM_EN 0x80000000 9999e1bd42STang Yuantian #define SDRAM_CFG2_D_INIT 0x00000010 10099e1bd42STang Yuantian #define DDR_CDR2_VREF_TRAIN_EN 0x00000080 10199e1bd42STang Yuantian #define SDRAM_CFG2_FRC_SR 0x80000000 10299e1bd42STang Yuantian #define SDRAM_CFG_BI 0x00000001 103a88cc3bdSYork Sun 1048415bb68SAlison Wang #ifdef CONFIG_RAMBOOT_PBL 1058415bb68SAlison Wang #define CONFIG_SYS_FSL_PBL_PBI board/freescale/ls1021atwr/ls102xa_pbi.cfg 1068415bb68SAlison Wang #endif 1078415bb68SAlison Wang 1088415bb68SAlison Wang #ifdef CONFIG_SD_BOOT 109947cee11SAlison Wang #ifdef CONFIG_SD_BOOT_QSPI 110947cee11SAlison Wang #define CONFIG_SYS_FSL_PBL_RCW \ 111947cee11SAlison Wang board/freescale/ls1021atwr/ls102xa_rcw_sd_qspi.cfg 112947cee11SAlison Wang #else 113947cee11SAlison Wang #define CONFIG_SYS_FSL_PBL_RCW \ 114947cee11SAlison Wang board/freescale/ls1021atwr/ls102xa_rcw_sd_ifc.cfg 115947cee11SAlison Wang #endif 1168415bb68SAlison Wang #define CONFIG_SPL_FRAMEWORK 1178415bb68SAlison Wang #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" 1188415bb68SAlison Wang #define CONFIG_SPL_LIBCOMMON_SUPPORT 1198415bb68SAlison Wang #define CONFIG_SPL_LIBGENERIC_SUPPORT 1208415bb68SAlison Wang #define CONFIG_SPL_ENV_SUPPORT 1218415bb68SAlison Wang #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT 1228415bb68SAlison Wang #define CONFIG_SPL_I2C_SUPPORT 1238415bb68SAlison Wang #define CONFIG_SPL_WATCHDOG_SUPPORT 1248415bb68SAlison Wang #define CONFIG_SPL_SERIAL_SUPPORT 1258415bb68SAlison Wang #define CONFIG_SPL_MMC_SUPPORT 1268415bb68SAlison Wang #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0xe8 1278415bb68SAlison Wang #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 1288415bb68SAlison Wang 1298415bb68SAlison Wang #define CONFIG_SPL_TEXT_BASE 0x10000000 1308415bb68SAlison Wang #define CONFIG_SPL_MAX_SIZE 0x1a000 1318415bb68SAlison Wang #define CONFIG_SPL_STACK 0x1001d000 1328415bb68SAlison Wang #define CONFIG_SPL_PAD_TO 0x1c000 1338415bb68SAlison Wang #define CONFIG_SYS_TEXT_BASE 0x82000000 1348415bb68SAlison Wang 13599e1bd42STang Yuantian #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE + \ 13699e1bd42STang Yuantian CONFIG_SYS_MONITOR_LEN) 1378415bb68SAlison Wang #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 1388415bb68SAlison Wang #define CONFIG_SPL_BSS_START_ADDR 0x80100000 1398415bb68SAlison Wang #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 1408415bb68SAlison Wang #define CONFIG_SYS_MONITOR_LEN 0x80000 1418415bb68SAlison Wang #endif 1428415bb68SAlison Wang 143d612f0abSAlison Wang #ifdef CONFIG_QSPI_BOOT 144d612f0abSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x40010000 145947cee11SAlison Wang #endif 146947cee11SAlison Wang 147947cee11SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 148d612f0abSAlison Wang #define CONFIG_SYS_NO_FLASH 149d612f0abSAlison Wang #endif 150d612f0abSAlison Wang 151c8a7d9daSWang Huan #ifndef CONFIG_SYS_TEXT_BASE 1521c69a51cSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x60100000 153c8a7d9daSWang Huan #endif 154c8a7d9daSWang Huan 155c8a7d9daSWang Huan #define CONFIG_NR_DRAM_BANKS 1 156c8a7d9daSWang Huan #define PHYS_SDRAM 0x80000000 157c8a7d9daSWang Huan #define PHYS_SDRAM_SIZE (1u * 1024 * 1024 * 1024) 158c8a7d9daSWang Huan 159c8a7d9daSWang Huan #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000UL 160c8a7d9daSWang Huan #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 161c8a7d9daSWang Huan 162c8a7d9daSWang Huan #define CONFIG_SYS_HAS_SERDES 163c8a7d9daSWang Huan 1644ba4a095SRuchika Gupta #define CONFIG_FSL_CAAM /* Enable CAAM */ 1654ba4a095SRuchika Gupta 1664c59ab9cSAlison Wang #if !defined(CONFIG_SD_BOOT) && !defined(CONFIG_NAND_BOOT) && \ 1674c59ab9cSAlison Wang !defined(CONFIG_QSPI_BOOT) 168eaa859e7SZhao Qiang #define CONFIG_U_QE 169eaa859e7SZhao Qiang #endif 170eaa859e7SZhao Qiang 171c8a7d9daSWang Huan /* 172c8a7d9daSWang Huan * IFC Definitions 173c8a7d9daSWang Huan */ 174947cee11SAlison Wang #if !defined(CONFIG_QSPI_BOOT) && !defined(CONFIG_SD_BOOT_QSPI) 175c8a7d9daSWang Huan #define CONFIG_FSL_IFC 176c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE 0x60000000 177c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE 178c8a7d9daSWang Huan 179c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR_EXT (0x0) 180c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ 181c8a7d9daSWang Huan CSPR_PORT_SIZE_16 | \ 182c8a7d9daSWang Huan CSPR_MSEL_NOR | \ 183c8a7d9daSWang Huan CSPR_V) 184c8a7d9daSWang Huan #define CONFIG_SYS_NOR_AMASK IFC_AMASK(128 * 1024 * 1024) 185c8a7d9daSWang Huan 186c8a7d9daSWang Huan /* NOR Flash Timing Params */ 187c8a7d9daSWang Huan #define CONFIG_SYS_NOR_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 188c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 189c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM0 (FTIM0_NOR_TACSE(0x4) | \ 190c8a7d9daSWang Huan FTIM0_NOR_TEADC(0x5) | \ 191c8a7d9daSWang Huan FTIM0_NOR_TAVDS(0x0) | \ 192c8a7d9daSWang Huan FTIM0_NOR_TEAHC(0x5)) 193c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM1 (FTIM1_NOR_TACO(0x35) | \ 194c8a7d9daSWang Huan FTIM1_NOR_TRAD_NOR(0x1A) | \ 195c8a7d9daSWang Huan FTIM1_NOR_TSEQRAD_NOR(0x13)) 196c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM2 (FTIM2_NOR_TCS(0x4) | \ 197c8a7d9daSWang Huan FTIM2_NOR_TCH(0x4) | \ 198c8a7d9daSWang Huan FTIM2_NOR_TWP(0x1c) | \ 199c8a7d9daSWang Huan FTIM2_NOR_TWPH(0x0e)) 200c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM3 0 201c8a7d9daSWang Huan 202c8a7d9daSWang Huan #define CONFIG_FLASH_CFI_DRIVER 203c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_CFI 204c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 205c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_QUIET_TEST 206c8a7d9daSWang Huan #define CONFIG_FLASH_SHOW_PROGRESS 45 /* count down from 45/5: 9..1 */ 207c8a7d9daSWang Huan 208c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 209c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_SECT 1024 /* sectors per device */ 210c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 211c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 212c8a7d9daSWang Huan 213c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_EMPTY_INFO 214c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE_PHYS } 215c8a7d9daSWang Huan 216c8a7d9daSWang Huan #define CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS 217272c5265SYuan Yao #define CONFIG_SYS_WRITE_SWAPPED_DATA 218d612f0abSAlison Wang #endif 219c8a7d9daSWang Huan 220c8a7d9daSWang Huan /* CPLD */ 221c8a7d9daSWang Huan 222c8a7d9daSWang Huan #define CONFIG_SYS_CPLD_BASE 0x7fb00000 223c8a7d9daSWang Huan #define CPLD_BASE_PHYS CONFIG_SYS_CPLD_BASE 224c8a7d9daSWang Huan 225c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR_EXT (0x0) 226c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR (CSPR_PHYS_ADDR(CPLD_BASE_PHYS) | \ 227c8a7d9daSWang Huan CSPR_PORT_SIZE_8 | \ 228c8a7d9daSWang Huan CSPR_MSEL_GPCM | \ 229c8a7d9daSWang Huan CSPR_V) 230c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_AMASK IFC_AMASK(64 * 1024) 231c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 232c8a7d9daSWang Huan CSOR_NOR_NOR_MODE_AVD_NOR | \ 233c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 234c8a7d9daSWang Huan 235c8a7d9daSWang Huan /* CPLD Timing parameters for IFC GPCM */ 236c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM0 (FTIM0_GPCM_TACSE(0xf) | \ 237c8a7d9daSWang Huan FTIM0_GPCM_TEADC(0xf) | \ 238c8a7d9daSWang Huan FTIM0_GPCM_TEAHC(0xf)) 239c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM1 (FTIM1_GPCM_TACO(0xff) | \ 240c8a7d9daSWang Huan FTIM1_GPCM_TRAD(0x3f)) 241c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM2 (FTIM2_GPCM_TCS(0xf) | \ 242c8a7d9daSWang Huan FTIM2_GPCM_TCH(0xf) | \ 243c8a7d9daSWang Huan FTIM2_GPCM_TWP(0xff)) 244c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM3 0x0 245c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NOR0_CSPR_EXT 246c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0 CONFIG_SYS_NOR0_CSPR 247c8a7d9daSWang Huan #define CONFIG_SYS_AMASK0 CONFIG_SYS_NOR_AMASK 248c8a7d9daSWang Huan #define CONFIG_SYS_CSOR0 CONFIG_SYS_NOR_CSOR 249c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NOR_FTIM0 250c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NOR_FTIM1 251c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NOR_FTIM2 252c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NOR_FTIM3 253c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_FPGA_CSPR_EXT 254c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1 CONFIG_SYS_FPGA_CSPR 255c8a7d9daSWang Huan #define CONFIG_SYS_AMASK1 CONFIG_SYS_FPGA_AMASK 256c8a7d9daSWang Huan #define CONFIG_SYS_CSOR1 CONFIG_SYS_FPGA_CSOR 257c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_FPGA_FTIM0 258c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_FPGA_FTIM1 259c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_FPGA_FTIM2 260c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_FPGA_FTIM3 261c8a7d9daSWang Huan 262c8a7d9daSWang Huan /* 263c8a7d9daSWang Huan * Serial Port 264c8a7d9daSWang Huan */ 26555d53ab4SAlison Wang #ifdef CONFIG_LPUART 26655d53ab4SAlison Wang #define CONFIG_LPUART_32B_REG 26755d53ab4SAlison Wang #else 268c8a7d9daSWang Huan #define CONFIG_CONS_INDEX 1 269c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_SERIAL 270f833cd62SBin Meng #ifndef CONFIG_DM_SERIAL 271c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_REG_SIZE 1 272f833cd62SBin Meng #endif 273c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_CLK get_serial_clock() 27455d53ab4SAlison Wang #endif 275c8a7d9daSWang Huan 276c8a7d9daSWang Huan #define CONFIG_BAUDRATE 115200 277c8a7d9daSWang Huan 278c8a7d9daSWang Huan /* 279c8a7d9daSWang Huan * I2C 280c8a7d9daSWang Huan */ 281c8a7d9daSWang Huan #define CONFIG_SYS_I2C 282c8a7d9daSWang Huan #define CONFIG_SYS_I2C_MXC 28303544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 28403544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 285f8cb101eSYork Sun #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ 286c8a7d9daSWang Huan 2875175a288SAlison Wang /* EEPROM */ 2885175a288SAlison Wang #define CONFIG_ID_EEPROM 2895175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_NXID 2905175a288SAlison Wang #define CONFIG_SYS_EEPROM_BUS_NUM 1 2915175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_ADDR 0x53 2925175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 2935175a288SAlison Wang #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 2945175a288SAlison Wang #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5 2955175a288SAlison Wang 296c8a7d9daSWang Huan /* 297c8a7d9daSWang Huan * MMC 298c8a7d9daSWang Huan */ 299c8a7d9daSWang Huan #define CONFIG_MMC 300c8a7d9daSWang Huan #define CONFIG_FSL_ESDHC 301c8a7d9daSWang Huan #define CONFIG_GENERIC_MMC 302c8a7d9daSWang Huan 3038251ed23SAlison Wang #define CONFIG_DOS_PARTITION 3048251ed23SAlison Wang 3059dd3d3c0SHaikun Wang /* SPI */ 306947cee11SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 3079dd3d3c0SHaikun Wang /* QSPI */ 308d612f0abSAlison Wang #define QSPI0_AMBA_BASE 0x40000000 309d612f0abSAlison Wang #define FSL_QSPI_FLASH_SIZE (1 << 24) 310d612f0abSAlison Wang #define FSL_QSPI_FLASH_NUM 2 3119dd3d3c0SHaikun Wang 31203d1d568SYao Yuan /* DSPI */ 31303d1d568SYao Yuan #endif 31403d1d568SYao Yuan 3159dd3d3c0SHaikun Wang /* DM SPI */ 3169dd3d3c0SHaikun Wang #if defined(CONFIG_FSL_DSPI) || defined(CONFIG_FSL_QSPI) 3179dd3d3c0SHaikun Wang #define CONFIG_DM_SPI_FLASH 3189dd3d3c0SHaikun Wang #endif 319d612f0abSAlison Wang 320c8a7d9daSWang Huan /* 321b4ecc8c6SWang Huan * Video 322b4ecc8c6SWang Huan */ 323b4ecc8c6SWang Huan #define CONFIG_FSL_DCU_FB 324b4ecc8c6SWang Huan 325b4ecc8c6SWang Huan #ifdef CONFIG_FSL_DCU_FB 326b4ecc8c6SWang Huan #define CONFIG_VIDEO 327b4ecc8c6SWang Huan #define CONFIG_CMD_BMP 328b4ecc8c6SWang Huan #define CONFIG_CFB_CONSOLE 329b4ecc8c6SWang Huan #define CONFIG_VGA_AS_SINGLE_DEVICE 330b4ecc8c6SWang Huan #define CONFIG_VIDEO_LOGO 331b4ecc8c6SWang Huan #define CONFIG_VIDEO_BMP_LOGO 332f8008f14SAlison Wang #define CONFIG_SYS_CONSOLE_IS_IN_ENV 333b4ecc8c6SWang Huan 334b4ecc8c6SWang Huan #define CONFIG_FSL_DCU_SII9022A 335b4ecc8c6SWang Huan #define CONFIG_SYS_I2C_DVI_BUS_NUM 1 336b4ecc8c6SWang Huan #define CONFIG_SYS_I2C_DVI_ADDR 0x39 337b4ecc8c6SWang Huan #endif 338b4ecc8c6SWang Huan 339b4ecc8c6SWang Huan /* 340c8a7d9daSWang Huan * eTSEC 341c8a7d9daSWang Huan */ 342c8a7d9daSWang Huan #define CONFIG_TSEC_ENET 343c8a7d9daSWang Huan 344c8a7d9daSWang Huan #ifdef CONFIG_TSEC_ENET 345c8a7d9daSWang Huan #define CONFIG_MII 346c8a7d9daSWang Huan #define CONFIG_MII_DEFAULT_TSEC 1 347c8a7d9daSWang Huan #define CONFIG_TSEC1 1 348c8a7d9daSWang Huan #define CONFIG_TSEC1_NAME "eTSEC1" 349c8a7d9daSWang Huan #define CONFIG_TSEC2 1 350c8a7d9daSWang Huan #define CONFIG_TSEC2_NAME "eTSEC2" 351c8a7d9daSWang Huan #define CONFIG_TSEC3 1 352c8a7d9daSWang Huan #define CONFIG_TSEC3_NAME "eTSEC3" 353c8a7d9daSWang Huan 354c8a7d9daSWang Huan #define TSEC1_PHY_ADDR 2 355c8a7d9daSWang Huan #define TSEC2_PHY_ADDR 0 356c8a7d9daSWang Huan #define TSEC3_PHY_ADDR 1 357c8a7d9daSWang Huan 358c8a7d9daSWang Huan #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 359c8a7d9daSWang Huan #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 360c8a7d9daSWang Huan #define TSEC3_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 361c8a7d9daSWang Huan 362c8a7d9daSWang Huan #define TSEC1_PHYIDX 0 363c8a7d9daSWang Huan #define TSEC2_PHYIDX 0 364c8a7d9daSWang Huan #define TSEC3_PHYIDX 0 365c8a7d9daSWang Huan 366c8a7d9daSWang Huan #define CONFIG_ETHPRIME "eTSEC1" 367c8a7d9daSWang Huan 368c8a7d9daSWang Huan #define CONFIG_PHY_GIGE 369c8a7d9daSWang Huan #define CONFIG_PHYLIB 370c8a7d9daSWang Huan #define CONFIG_PHY_ATHEROS 371c8a7d9daSWang Huan 372c8a7d9daSWang Huan #define CONFIG_HAS_ETH0 373c8a7d9daSWang Huan #define CONFIG_HAS_ETH1 374c8a7d9daSWang Huan #define CONFIG_HAS_ETH2 375c8a7d9daSWang Huan #endif 376c8a7d9daSWang Huan 377da419027SMinghuan Lian /* PCIe */ 378da419027SMinghuan Lian #define CONFIG_PCI /* Enable PCI/PCIE */ 379b38eaec5SRobert P. J. Day #define CONFIG_PCIE1 /* PCIE controller 1 */ 380b38eaec5SRobert P. J. Day #define CONFIG_PCIE2 /* PCIE controller 2 */ 381da419027SMinghuan Lian #define CONFIG_PCIE_LAYERSCAPE /* Use common FSL Layerscape PCIe code */ 382da419027SMinghuan Lian #define FSL_PCIE_COMPAT "fsl,ls1021a-pcie" 383da419027SMinghuan Lian 384180b8688SMinghuan Lian #define CONFIG_SYS_PCI_64BIT 385180b8688SMinghuan Lian 386180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG0_PHYS_OFF 0x00000000 387180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG0_SIZE 0x00001000 /* 4k */ 388180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG1_PHYS_OFF 0x00001000 389180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG1_SIZE 0x00001000 /* 4k */ 390180b8688SMinghuan Lian 391180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_BUS 0x00000000 392180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_PHYS_OFF 0x00010000 393180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_SIZE 0x00010000 /* 64k */ 394180b8688SMinghuan Lian 395180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_BUS 0x08000000 396180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_PHYS_OFF 0x04000000 397180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_SIZE 0x08000000 /* 128M */ 398180b8688SMinghuan Lian 399180b8688SMinghuan Lian #ifdef CONFIG_PCI 400180b8688SMinghuan Lian #define CONFIG_PCI_PNP 401180b8688SMinghuan Lian #define CONFIG_PCI_SCAN_SHOW 402180b8688SMinghuan Lian #define CONFIG_CMD_PCI 403180b8688SMinghuan Lian #endif 404180b8688SMinghuan Lian 405c8a7d9daSWang Huan #define CONFIG_CMDLINE_TAG 406c8a7d9daSWang Huan #define CONFIG_CMDLINE_EDITING 4078415bb68SAlison Wang 4081a2826f6SXiubo Li #define CONFIG_ARMV7_NONSEC 4091a2826f6SXiubo Li #define CONFIG_ARMV7_VIRT 4101a2826f6SXiubo Li #define CONFIG_PEN_ADDR_BIG_ENDIAN 411435acd83SMingkai Hu #define CONFIG_LAYERSCAPE_NS_ACCESS 4121a2826f6SXiubo Li #define CONFIG_SMP_PEN_ADDR 0x01ee0200 4131a2826f6SXiubo Li #define CONFIG_TIMER_CLK_FREQ 12500000 4141a2826f6SXiubo Li 415c8a7d9daSWang Huan #define CONFIG_HWCONFIG 41603c22449SZhuoyu Zhang #define HWCONFIG_BUFFER_SIZE 256 41703c22449SZhuoyu Zhang 41803c22449SZhuoyu Zhang #define CONFIG_FSL_DEVICE_DISABLE 419c8a7d9daSWang Huan 420c8a7d9daSWang Huan 42155d53ab4SAlison Wang #ifdef CONFIG_LPUART 42255d53ab4SAlison Wang #define CONFIG_EXTRA_ENV_SETTINGS \ 42355d53ab4SAlison Wang "bootargs=root=/dev/ram0 rw console=ttyLP0,115200\0" \ 4247ff7166cSAlison Wang "initrd_high=0xffffffff\0" \ 4257ff7166cSAlison Wang "fdt_high=0xffffffff\0" 42655d53ab4SAlison Wang #else 427c8a7d9daSWang Huan #define CONFIG_EXTRA_ENV_SETTINGS \ 428c8a7d9daSWang Huan "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \ 4297ff7166cSAlison Wang "initrd_high=0xffffffff\0" \ 4307ff7166cSAlison Wang "fdt_high=0xffffffff\0" 43155d53ab4SAlison Wang #endif 432c8a7d9daSWang Huan 433c8a7d9daSWang Huan /* 434c8a7d9daSWang Huan * Miscellaneous configurable options 435c8a7d9daSWang Huan */ 436c8a7d9daSWang Huan #define CONFIG_SYS_LONGHELP /* undef to save memory */ 437c8a7d9daSWang Huan #define CONFIG_AUTO_COMPLETE 438c8a7d9daSWang Huan #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 439c8a7d9daSWang Huan #define CONFIG_SYS_PBSIZE \ 440c8a7d9daSWang Huan (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 441c8a7d9daSWang Huan #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 442c8a7d9daSWang Huan #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 443c8a7d9daSWang Huan 444c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_START 0x80000000 445c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_END 0x9fffffff 446c8a7d9daSWang Huan 447c8a7d9daSWang Huan #define CONFIG_SYS_LOAD_ADDR 0x82000000 448c8a7d9daSWang Huan 449660673afSXiubo Li #define CONFIG_LS102XA_STREAM_ID 450660673afSXiubo Li 451c8a7d9daSWang Huan /* 452c8a7d9daSWang Huan * Stack sizes 453c8a7d9daSWang Huan * The stack sizes are set up in start.S using the settings below 454c8a7d9daSWang Huan */ 455c8a7d9daSWang Huan #define CONFIG_STACKSIZE (30 * 1024) 456c8a7d9daSWang Huan 457c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_OFFSET \ 458c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 459c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_ADDR \ 460c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 461c8a7d9daSWang Huan 4628415bb68SAlison Wang #ifdef CONFIG_SPL_BUILD 4638415bb68SAlison Wang #define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE 4648415bb68SAlison Wang #else 465c8a7d9daSWang Huan #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 4668415bb68SAlison Wang #endif 467c8a7d9daSWang Huan 468713bf94fSZhao Qiang #define CONFIG_SYS_QE_FW_ADDR 0x600c0000 469eaa859e7SZhao Qiang 470c8a7d9daSWang Huan /* 471c8a7d9daSWang Huan * Environment 472c8a7d9daSWang Huan */ 473c8a7d9daSWang Huan #define CONFIG_ENV_OVERWRITE 474c8a7d9daSWang Huan 4758415bb68SAlison Wang #if defined(CONFIG_SD_BOOT) 4768415bb68SAlison Wang #define CONFIG_ENV_OFFSET 0x100000 4778415bb68SAlison Wang #define CONFIG_ENV_IS_IN_MMC 4788415bb68SAlison Wang #define CONFIG_SYS_MMC_ENV_DEV 0 4798415bb68SAlison Wang #define CONFIG_ENV_SIZE 0x20000 480d612f0abSAlison Wang #elif defined(CONFIG_QSPI_BOOT) 481d612f0abSAlison Wang #define CONFIG_ENV_IS_IN_SPI_FLASH 482d612f0abSAlison Wang #define CONFIG_ENV_SIZE 0x2000 483d612f0abSAlison Wang #define CONFIG_ENV_OFFSET 0x100000 484d612f0abSAlison Wang #define CONFIG_ENV_SECT_SIZE 0x10000 4858415bb68SAlison Wang #else 486c8a7d9daSWang Huan #define CONFIG_ENV_IS_IN_FLASH 487c8a7d9daSWang Huan #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) 488c8a7d9daSWang Huan #define CONFIG_ENV_SIZE 0x20000 489c8a7d9daSWang Huan #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) */ 4908415bb68SAlison Wang #endif 491c8a7d9daSWang Huan 4924ba4a095SRuchika Gupta #define CONFIG_MISC_INIT_R 4934ba4a095SRuchika Gupta 4944ba4a095SRuchika Gupta /* Hash command with SHA acceleration supported in hardware */ 495ef6c55a2SAneesh Bansal #ifdef CONFIG_FSL_CAAM 4964ba4a095SRuchika Gupta #define CONFIG_CMD_HASH 4974ba4a095SRuchika Gupta #define CONFIG_SHA_HW_ACCEL 498ef6c55a2SAneesh Bansal #endif 499ef6c55a2SAneesh Bansal 500ef6c55a2SAneesh Bansal #include <asm/fsl_secure_boot.h> 501cc7b8b9aSAlison Wang #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 5024ba4a095SRuchika Gupta 503c8a7d9daSWang Huan #endif 504