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 13aeb901f2SHongbo Zhang #define CONFIG_ARMV7_PSCI_1_0 14dbf38aabSChen-Yu Tsai #define CONFIG_ARMV7_PSCI_NR_CPUS CONFIG_MAX_CPUS 15340848b1SWang Dongsheng 16*3288628aSHongbo Zhang #define CONFIG_ARMV7_SECURE_BASE OCRAM_BASE_S_ADDR 17*3288628aSHongbo Zhang 1818fb0e3cSGong Qianyu #define CONFIG_SYS_FSL_CLK 19c8a7d9daSWang Huan 20c8a7d9daSWang Huan #define CONFIG_DISPLAY_CPUINFO 21c8a7d9daSWang Huan #define CONFIG_DISPLAY_BOARDINFO 22c8a7d9daSWang Huan 23c8a7d9daSWang Huan #define CONFIG_SKIP_LOWLEVEL_INIT 24c8a7d9daSWang Huan #define CONFIG_BOARD_EARLY_INIT_F 2599e1bd42STang Yuantian #define CONFIG_DEEP_SLEEP 2699e1bd42STang Yuantian #ifdef CONFIG_DEEP_SLEEP 2799e1bd42STang Yuantian #define CONFIG_SILENT_CONSOLE 2899e1bd42STang Yuantian #endif 29c8a7d9daSWang Huan 30c8a7d9daSWang Huan /* 31c8a7d9daSWang Huan * Size of malloc() pool 32c8a7d9daSWang Huan */ 33c8a7d9daSWang Huan #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 16 * 1024 * 1024) 34c8a7d9daSWang Huan 35c8a7d9daSWang Huan #define CONFIG_SYS_INIT_RAM_ADDR OCRAM_BASE_ADDR 36c8a7d9daSWang Huan #define CONFIG_SYS_INIT_RAM_SIZE OCRAM_SIZE 37c8a7d9daSWang Huan 38c8a7d9daSWang Huan /* 3910a28644SRamneek Mehresh * USB 4010a28644SRamneek Mehresh */ 4110a28644SRamneek Mehresh 4210a28644SRamneek Mehresh /* 4310a28644SRamneek Mehresh * EHCI Support - disbaled by default as 4410a28644SRamneek Mehresh * there is no signal coming out of soc on 4510a28644SRamneek Mehresh * this board for this controller. However, 4610a28644SRamneek Mehresh * the silicon still has this controller, 4710a28644SRamneek Mehresh * and anyone can use this controller by 4810a28644SRamneek Mehresh * taking signals out on their board. 4910a28644SRamneek Mehresh */ 5010a28644SRamneek Mehresh 5110a28644SRamneek Mehresh /*#define CONFIG_HAS_FSL_DR_USB*/ 5210a28644SRamneek Mehresh 5310a28644SRamneek Mehresh #ifdef CONFIG_HAS_FSL_DR_USB 5410a28644SRamneek Mehresh #define CONFIG_USB_EHCI 5510a28644SRamneek Mehresh #define CONFIG_USB_EHCI_FSL 5610a28644SRamneek Mehresh #define CONFIG_EHCI_HCD_INIT_AFTER_RESET 5710a28644SRamneek Mehresh #endif 5810a28644SRamneek Mehresh 5910a28644SRamneek Mehresh /* XHCI Support - enabled by default */ 6010a28644SRamneek Mehresh #define CONFIG_HAS_FSL_XHCI_USB 6110a28644SRamneek Mehresh 6210a28644SRamneek Mehresh #ifdef CONFIG_HAS_FSL_XHCI_USB 6310a28644SRamneek Mehresh #define CONFIG_USB_XHCI_FSL 6410a28644SRamneek Mehresh #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 6510a28644SRamneek Mehresh #define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2 6610a28644SRamneek Mehresh #endif 6710a28644SRamneek Mehresh 6810a28644SRamneek Mehresh #if defined(CONFIG_HAS_FSL_DR_USB) || defined(CONFIG_HAS_FSL_XHCI_USB) 6910a28644SRamneek Mehresh #define CONFIG_USB_STORAGE 7010a28644SRamneek Mehresh #endif 7110a28644SRamneek Mehresh 7210a28644SRamneek Mehresh /* 73c8a7d9daSWang Huan * Generic Timer Definitions 74c8a7d9daSWang Huan */ 75c8a7d9daSWang Huan #define GENERIC_TIMER_CLK 12500000 76c8a7d9daSWang Huan 77c8a7d9daSWang Huan #define CONFIG_SYS_CLK_FREQ 100000000 78c8a7d9daSWang Huan #define CONFIG_DDR_CLK_FREQ 100000000 79c8a7d9daSWang Huan 80a88cc3bdSYork Sun #define DDR_SDRAM_CFG 0x470c0008 81a88cc3bdSYork Sun #define DDR_CS0_BNDS 0x008000bf 82a88cc3bdSYork Sun #define DDR_CS0_CONFIG 0x80014302 83a88cc3bdSYork Sun #define DDR_TIMING_CFG_0 0x50550004 84a88cc3bdSYork Sun #define DDR_TIMING_CFG_1 0xbcb38c56 85a88cc3bdSYork Sun #define DDR_TIMING_CFG_2 0x0040d120 86a88cc3bdSYork Sun #define DDR_TIMING_CFG_3 0x010e1000 87a88cc3bdSYork Sun #define DDR_TIMING_CFG_4 0x00000001 88a88cc3bdSYork Sun #define DDR_TIMING_CFG_5 0x03401400 89a88cc3bdSYork Sun #define DDR_SDRAM_CFG_2 0x00401010 90a88cc3bdSYork Sun #define DDR_SDRAM_MODE 0x00061c60 91a88cc3bdSYork Sun #define DDR_SDRAM_MODE_2 0x00180000 92a88cc3bdSYork Sun #define DDR_SDRAM_INTERVAL 0x18600618 93a88cc3bdSYork Sun #define DDR_DDR_WRLVL_CNTL 0x8655f605 94a88cc3bdSYork Sun #define DDR_DDR_WRLVL_CNTL_2 0x05060607 95a88cc3bdSYork Sun #define DDR_DDR_WRLVL_CNTL_3 0x05050505 96a88cc3bdSYork Sun #define DDR_DDR_CDR1 0x80040000 97a88cc3bdSYork Sun #define DDR_DDR_CDR2 0x00000001 98a88cc3bdSYork Sun #define DDR_SDRAM_CLK_CNTL 0x02000000 99a88cc3bdSYork Sun #define DDR_DDR_ZQ_CNTL 0x89080600 100a88cc3bdSYork Sun #define DDR_CS0_CONFIG_2 0 101a88cc3bdSYork Sun #define DDR_SDRAM_CFG_MEM_EN 0x80000000 10299e1bd42STang Yuantian #define SDRAM_CFG2_D_INIT 0x00000010 10399e1bd42STang Yuantian #define DDR_CDR2_VREF_TRAIN_EN 0x00000080 10499e1bd42STang Yuantian #define SDRAM_CFG2_FRC_SR 0x80000000 10599e1bd42STang Yuantian #define SDRAM_CFG_BI 0x00000001 106a88cc3bdSYork Sun 1078415bb68SAlison Wang #ifdef CONFIG_RAMBOOT_PBL 1088415bb68SAlison Wang #define CONFIG_SYS_FSL_PBL_PBI board/freescale/ls1021atwr/ls102xa_pbi.cfg 1098415bb68SAlison Wang #endif 1108415bb68SAlison Wang 1118415bb68SAlison Wang #ifdef CONFIG_SD_BOOT 112947cee11SAlison Wang #ifdef CONFIG_SD_BOOT_QSPI 113947cee11SAlison Wang #define CONFIG_SYS_FSL_PBL_RCW \ 114947cee11SAlison Wang board/freescale/ls1021atwr/ls102xa_rcw_sd_qspi.cfg 115947cee11SAlison Wang #else 116947cee11SAlison Wang #define CONFIG_SYS_FSL_PBL_RCW \ 117947cee11SAlison Wang board/freescale/ls1021atwr/ls102xa_rcw_sd_ifc.cfg 118947cee11SAlison Wang #endif 1198415bb68SAlison Wang #define CONFIG_SPL_FRAMEWORK 1208415bb68SAlison Wang #define CONFIG_SPL_LDSCRIPT "arch/$(ARCH)/cpu/u-boot-spl.lds" 1218415bb68SAlison Wang #define CONFIG_SPL_LIBCOMMON_SUPPORT 1228415bb68SAlison Wang #define CONFIG_SPL_LIBGENERIC_SUPPORT 1238415bb68SAlison Wang #define CONFIG_SPL_ENV_SUPPORT 1248415bb68SAlison Wang #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT 1258415bb68SAlison Wang #define CONFIG_SPL_I2C_SUPPORT 1268415bb68SAlison Wang #define CONFIG_SPL_WATCHDOG_SUPPORT 1278415bb68SAlison Wang #define CONFIG_SPL_SERIAL_SUPPORT 1288415bb68SAlison Wang #define CONFIG_SPL_MMC_SUPPORT 1298415bb68SAlison Wang #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0xe8 130e7e720c2SSumit Garg 131e7e720c2SSumit Garg #ifdef CONFIG_SECURE_BOOT 132e7e720c2SSumit Garg #define CONFIG_U_BOOT_HDR_SIZE (16 << 10) 133e7e720c2SSumit Garg /* 134e7e720c2SSumit Garg * HDR would be appended at end of image and copied to DDR along 135e7e720c2SSumit Garg * with U-Boot image. 136e7e720c2SSumit Garg */ 137e7e720c2SSumit Garg #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS (0x400 + \ 138e7e720c2SSumit Garg (CONFIG_U_BOOT_HDR_SIZE / 512) 139e7e720c2SSumit Garg #else 1408415bb68SAlison Wang #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 141e7e720c2SSumit Garg #endif /* ifdef CONFIG_SECURE_BOOT */ 1428415bb68SAlison Wang 1438415bb68SAlison Wang #define CONFIG_SPL_TEXT_BASE 0x10000000 1448415bb68SAlison Wang #define CONFIG_SPL_MAX_SIZE 0x1a000 1458415bb68SAlison Wang #define CONFIG_SPL_STACK 0x1001d000 1468415bb68SAlison Wang #define CONFIG_SPL_PAD_TO 0x1c000 1478415bb68SAlison Wang #define CONFIG_SYS_TEXT_BASE 0x82000000 1488415bb68SAlison Wang 14999e1bd42STang Yuantian #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE + \ 15099e1bd42STang Yuantian CONFIG_SYS_MONITOR_LEN) 1518415bb68SAlison Wang #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 1528415bb68SAlison Wang #define CONFIG_SPL_BSS_START_ADDR 0x80100000 1538415bb68SAlison Wang #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 154e7e720c2SSumit Garg 155e7e720c2SSumit Garg #ifdef CONFIG_U_BOOT_HDR_SIZE 156e7e720c2SSumit Garg /* 157e7e720c2SSumit Garg * HDR would be appended at end of image and copied to DDR along 158e7e720c2SSumit Garg * with U-Boot image. Here u-boot max. size is 512K. So if binary 159e7e720c2SSumit Garg * size increases then increase this size in case of secure boot as 160e7e720c2SSumit Garg * it uses raw u-boot image instead of fit image. 161e7e720c2SSumit Garg */ 162e7e720c2SSumit Garg #define CONFIG_SYS_MONITOR_LEN (0x80000 + CONFIG_U_BOOT_HDR_SIZE) 163e7e720c2SSumit Garg #else 1648415bb68SAlison Wang #define CONFIG_SYS_MONITOR_LEN 0x80000 165e7e720c2SSumit Garg #endif /* ifdef CONFIG_U_BOOT_HDR_SIZE */ 1668415bb68SAlison Wang #endif 1678415bb68SAlison Wang 168d612f0abSAlison Wang #ifdef CONFIG_QSPI_BOOT 169d612f0abSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x40010000 170947cee11SAlison Wang #endif 171947cee11SAlison Wang 172947cee11SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 173d612f0abSAlison Wang #define CONFIG_SYS_NO_FLASH 174d612f0abSAlison Wang #endif 175d612f0abSAlison Wang 176c8a7d9daSWang Huan #ifndef CONFIG_SYS_TEXT_BASE 1771c69a51cSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x60100000 178c8a7d9daSWang Huan #endif 179c8a7d9daSWang Huan 180c8a7d9daSWang Huan #define CONFIG_NR_DRAM_BANKS 1 181c8a7d9daSWang Huan #define PHYS_SDRAM 0x80000000 182c8a7d9daSWang Huan #define PHYS_SDRAM_SIZE (1u * 1024 * 1024 * 1024) 183c8a7d9daSWang Huan 184c8a7d9daSWang Huan #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000UL 185c8a7d9daSWang Huan #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 186c8a7d9daSWang Huan 187c8a7d9daSWang Huan #define CONFIG_SYS_HAS_SERDES 188c8a7d9daSWang Huan 1894ba4a095SRuchika Gupta #define CONFIG_FSL_CAAM /* Enable CAAM */ 1904ba4a095SRuchika Gupta 1914c59ab9cSAlison Wang #if !defined(CONFIG_SD_BOOT) && !defined(CONFIG_NAND_BOOT) && \ 1924c59ab9cSAlison Wang !defined(CONFIG_QSPI_BOOT) 193eaa859e7SZhao Qiang #define CONFIG_U_QE 194eaa859e7SZhao Qiang #endif 195eaa859e7SZhao Qiang 196c8a7d9daSWang Huan /* 197c8a7d9daSWang Huan * IFC Definitions 198c8a7d9daSWang Huan */ 199947cee11SAlison Wang #if !defined(CONFIG_QSPI_BOOT) && !defined(CONFIG_SD_BOOT_QSPI) 200c8a7d9daSWang Huan #define CONFIG_FSL_IFC 201c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE 0x60000000 202c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE 203c8a7d9daSWang Huan 204c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR_EXT (0x0) 205c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ 206c8a7d9daSWang Huan CSPR_PORT_SIZE_16 | \ 207c8a7d9daSWang Huan CSPR_MSEL_NOR | \ 208c8a7d9daSWang Huan CSPR_V) 209c8a7d9daSWang Huan #define CONFIG_SYS_NOR_AMASK IFC_AMASK(128 * 1024 * 1024) 210c8a7d9daSWang Huan 211c8a7d9daSWang Huan /* NOR Flash Timing Params */ 212c8a7d9daSWang Huan #define CONFIG_SYS_NOR_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 213c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 214c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM0 (FTIM0_NOR_TACSE(0x4) | \ 215c8a7d9daSWang Huan FTIM0_NOR_TEADC(0x5) | \ 216c8a7d9daSWang Huan FTIM0_NOR_TAVDS(0x0) | \ 217c8a7d9daSWang Huan FTIM0_NOR_TEAHC(0x5)) 218c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM1 (FTIM1_NOR_TACO(0x35) | \ 219c8a7d9daSWang Huan FTIM1_NOR_TRAD_NOR(0x1A) | \ 220c8a7d9daSWang Huan FTIM1_NOR_TSEQRAD_NOR(0x13)) 221c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM2 (FTIM2_NOR_TCS(0x4) | \ 222c8a7d9daSWang Huan FTIM2_NOR_TCH(0x4) | \ 223c8a7d9daSWang Huan FTIM2_NOR_TWP(0x1c) | \ 224c8a7d9daSWang Huan FTIM2_NOR_TWPH(0x0e)) 225c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM3 0 226c8a7d9daSWang Huan 227c8a7d9daSWang Huan #define CONFIG_FLASH_CFI_DRIVER 228c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_CFI 229c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 230c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_QUIET_TEST 231c8a7d9daSWang Huan #define CONFIG_FLASH_SHOW_PROGRESS 45 /* count down from 45/5: 9..1 */ 232c8a7d9daSWang Huan 233c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 234c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_SECT 1024 /* sectors per device */ 235c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 236c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 237c8a7d9daSWang Huan 238c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_EMPTY_INFO 239c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE_PHYS } 240c8a7d9daSWang Huan 241c8a7d9daSWang Huan #define CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS 242272c5265SYuan Yao #define CONFIG_SYS_WRITE_SWAPPED_DATA 243d612f0abSAlison Wang #endif 244c8a7d9daSWang Huan 245c8a7d9daSWang Huan /* CPLD */ 246c8a7d9daSWang Huan 247c8a7d9daSWang Huan #define CONFIG_SYS_CPLD_BASE 0x7fb00000 248c8a7d9daSWang Huan #define CPLD_BASE_PHYS CONFIG_SYS_CPLD_BASE 249c8a7d9daSWang Huan 250c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR_EXT (0x0) 251c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR (CSPR_PHYS_ADDR(CPLD_BASE_PHYS) | \ 252c8a7d9daSWang Huan CSPR_PORT_SIZE_8 | \ 253c8a7d9daSWang Huan CSPR_MSEL_GPCM | \ 254c8a7d9daSWang Huan CSPR_V) 255c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_AMASK IFC_AMASK(64 * 1024) 256c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 257c8a7d9daSWang Huan CSOR_NOR_NOR_MODE_AVD_NOR | \ 258c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 259c8a7d9daSWang Huan 260c8a7d9daSWang Huan /* CPLD Timing parameters for IFC GPCM */ 261c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM0 (FTIM0_GPCM_TACSE(0xf) | \ 262c8a7d9daSWang Huan FTIM0_GPCM_TEADC(0xf) | \ 263c8a7d9daSWang Huan FTIM0_GPCM_TEAHC(0xf)) 264c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM1 (FTIM1_GPCM_TACO(0xff) | \ 265c8a7d9daSWang Huan FTIM1_GPCM_TRAD(0x3f)) 266c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM2 (FTIM2_GPCM_TCS(0xf) | \ 267c8a7d9daSWang Huan FTIM2_GPCM_TCH(0xf) | \ 268c8a7d9daSWang Huan FTIM2_GPCM_TWP(0xff)) 269c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM3 0x0 270c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NOR0_CSPR_EXT 271c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0 CONFIG_SYS_NOR0_CSPR 272c8a7d9daSWang Huan #define CONFIG_SYS_AMASK0 CONFIG_SYS_NOR_AMASK 273c8a7d9daSWang Huan #define CONFIG_SYS_CSOR0 CONFIG_SYS_NOR_CSOR 274c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NOR_FTIM0 275c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NOR_FTIM1 276c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NOR_FTIM2 277c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NOR_FTIM3 278c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_FPGA_CSPR_EXT 279c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1 CONFIG_SYS_FPGA_CSPR 280c8a7d9daSWang Huan #define CONFIG_SYS_AMASK1 CONFIG_SYS_FPGA_AMASK 281c8a7d9daSWang Huan #define CONFIG_SYS_CSOR1 CONFIG_SYS_FPGA_CSOR 282c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_FPGA_FTIM0 283c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_FPGA_FTIM1 284c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_FPGA_FTIM2 285c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_FPGA_FTIM3 286c8a7d9daSWang Huan 287c8a7d9daSWang Huan /* 288c8a7d9daSWang Huan * Serial Port 289c8a7d9daSWang Huan */ 29055d53ab4SAlison Wang #ifdef CONFIG_LPUART 29155d53ab4SAlison Wang #define CONFIG_LPUART_32B_REG 29255d53ab4SAlison Wang #else 293c8a7d9daSWang Huan #define CONFIG_CONS_INDEX 1 294c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_SERIAL 295f833cd62SBin Meng #ifndef CONFIG_DM_SERIAL 296c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_REG_SIZE 1 297f833cd62SBin Meng #endif 298c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_CLK get_serial_clock() 29955d53ab4SAlison Wang #endif 300c8a7d9daSWang Huan 301c8a7d9daSWang Huan #define CONFIG_BAUDRATE 115200 302c8a7d9daSWang Huan 303c8a7d9daSWang Huan /* 304c8a7d9daSWang Huan * I2C 305c8a7d9daSWang Huan */ 306c8a7d9daSWang Huan #define CONFIG_SYS_I2C 307c8a7d9daSWang Huan #define CONFIG_SYS_I2C_MXC 30803544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 30903544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 310f8cb101eSYork Sun #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ 311c8a7d9daSWang Huan 3125175a288SAlison Wang /* EEPROM */ 3135175a288SAlison Wang #define CONFIG_ID_EEPROM 3145175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_NXID 3155175a288SAlison Wang #define CONFIG_SYS_EEPROM_BUS_NUM 1 3165175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_ADDR 0x53 3175175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 3185175a288SAlison Wang #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 3195175a288SAlison Wang #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5 3205175a288SAlison Wang 321c8a7d9daSWang Huan /* 322c8a7d9daSWang Huan * MMC 323c8a7d9daSWang Huan */ 324c8a7d9daSWang Huan #define CONFIG_MMC 325c8a7d9daSWang Huan #define CONFIG_FSL_ESDHC 326c8a7d9daSWang Huan #define CONFIG_GENERIC_MMC 327c8a7d9daSWang Huan 3288251ed23SAlison Wang #define CONFIG_DOS_PARTITION 3298251ed23SAlison Wang 3309dd3d3c0SHaikun Wang /* SPI */ 331947cee11SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 3329dd3d3c0SHaikun Wang /* QSPI */ 333d612f0abSAlison Wang #define QSPI0_AMBA_BASE 0x40000000 334d612f0abSAlison Wang #define FSL_QSPI_FLASH_SIZE (1 << 24) 335d612f0abSAlison Wang #define FSL_QSPI_FLASH_NUM 2 3369dd3d3c0SHaikun Wang 33703d1d568SYao Yuan /* DSPI */ 33803d1d568SYao Yuan #endif 33903d1d568SYao Yuan 3409dd3d3c0SHaikun Wang /* DM SPI */ 3419dd3d3c0SHaikun Wang #if defined(CONFIG_FSL_DSPI) || defined(CONFIG_FSL_QSPI) 3429dd3d3c0SHaikun Wang #define CONFIG_DM_SPI_FLASH 3439dd3d3c0SHaikun Wang #endif 344d612f0abSAlison Wang 345c8a7d9daSWang Huan /* 346b4ecc8c6SWang Huan * Video 347b4ecc8c6SWang Huan */ 348b4ecc8c6SWang Huan #define CONFIG_FSL_DCU_FB 349b4ecc8c6SWang Huan 350b4ecc8c6SWang Huan #ifdef CONFIG_FSL_DCU_FB 351b4ecc8c6SWang Huan #define CONFIG_VIDEO 352b4ecc8c6SWang Huan #define CONFIG_CMD_BMP 353b4ecc8c6SWang Huan #define CONFIG_CFB_CONSOLE 354b4ecc8c6SWang Huan #define CONFIG_VGA_AS_SINGLE_DEVICE 355b4ecc8c6SWang Huan #define CONFIG_VIDEO_LOGO 356b4ecc8c6SWang Huan #define CONFIG_VIDEO_BMP_LOGO 357f8008f14SAlison Wang #define CONFIG_SYS_CONSOLE_IS_IN_ENV 358b4ecc8c6SWang Huan 359b4ecc8c6SWang Huan #define CONFIG_FSL_DCU_SII9022A 360b4ecc8c6SWang Huan #define CONFIG_SYS_I2C_DVI_BUS_NUM 1 361b4ecc8c6SWang Huan #define CONFIG_SYS_I2C_DVI_ADDR 0x39 362b4ecc8c6SWang Huan #endif 363b4ecc8c6SWang Huan 364b4ecc8c6SWang Huan /* 365c8a7d9daSWang Huan * eTSEC 366c8a7d9daSWang Huan */ 367c8a7d9daSWang Huan #define CONFIG_TSEC_ENET 368c8a7d9daSWang Huan 369c8a7d9daSWang Huan #ifdef CONFIG_TSEC_ENET 370c8a7d9daSWang Huan #define CONFIG_MII 371c8a7d9daSWang Huan #define CONFIG_MII_DEFAULT_TSEC 1 372c8a7d9daSWang Huan #define CONFIG_TSEC1 1 373c8a7d9daSWang Huan #define CONFIG_TSEC1_NAME "eTSEC1" 374c8a7d9daSWang Huan #define CONFIG_TSEC2 1 375c8a7d9daSWang Huan #define CONFIG_TSEC2_NAME "eTSEC2" 376c8a7d9daSWang Huan #define CONFIG_TSEC3 1 377c8a7d9daSWang Huan #define CONFIG_TSEC3_NAME "eTSEC3" 378c8a7d9daSWang Huan 379c8a7d9daSWang Huan #define TSEC1_PHY_ADDR 2 380c8a7d9daSWang Huan #define TSEC2_PHY_ADDR 0 381c8a7d9daSWang Huan #define TSEC3_PHY_ADDR 1 382c8a7d9daSWang Huan 383c8a7d9daSWang Huan #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 384c8a7d9daSWang Huan #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 385c8a7d9daSWang Huan #define TSEC3_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 386c8a7d9daSWang Huan 387c8a7d9daSWang Huan #define TSEC1_PHYIDX 0 388c8a7d9daSWang Huan #define TSEC2_PHYIDX 0 389c8a7d9daSWang Huan #define TSEC3_PHYIDX 0 390c8a7d9daSWang Huan 391c8a7d9daSWang Huan #define CONFIG_ETHPRIME "eTSEC1" 392c8a7d9daSWang Huan 393c8a7d9daSWang Huan #define CONFIG_PHY_GIGE 394c8a7d9daSWang Huan #define CONFIG_PHYLIB 395c8a7d9daSWang Huan #define CONFIG_PHY_ATHEROS 396c8a7d9daSWang Huan 397c8a7d9daSWang Huan #define CONFIG_HAS_ETH0 398c8a7d9daSWang Huan #define CONFIG_HAS_ETH1 399c8a7d9daSWang Huan #define CONFIG_HAS_ETH2 400c8a7d9daSWang Huan #endif 401c8a7d9daSWang Huan 402da419027SMinghuan Lian /* PCIe */ 403da419027SMinghuan Lian #define CONFIG_PCI /* Enable PCI/PCIE */ 404b38eaec5SRobert P. J. Day #define CONFIG_PCIE1 /* PCIE controller 1 */ 405b38eaec5SRobert P. J. Day #define CONFIG_PCIE2 /* PCIE controller 2 */ 406da419027SMinghuan Lian #define CONFIG_PCIE_LAYERSCAPE /* Use common FSL Layerscape PCIe code */ 407da419027SMinghuan Lian #define FSL_PCIE_COMPAT "fsl,ls1021a-pcie" 408da419027SMinghuan Lian 409180b8688SMinghuan Lian #define CONFIG_SYS_PCI_64BIT 410180b8688SMinghuan Lian 411180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG0_PHYS_OFF 0x00000000 412180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG0_SIZE 0x00001000 /* 4k */ 413180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG1_PHYS_OFF 0x00001000 414180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG1_SIZE 0x00001000 /* 4k */ 415180b8688SMinghuan Lian 416180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_BUS 0x00000000 417180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_PHYS_OFF 0x00010000 418180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_SIZE 0x00010000 /* 64k */ 419180b8688SMinghuan Lian 420180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_BUS 0x08000000 421180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_PHYS_OFF 0x04000000 422180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_SIZE 0x08000000 /* 128M */ 423180b8688SMinghuan Lian 424180b8688SMinghuan Lian #ifdef CONFIG_PCI 425180b8688SMinghuan Lian #define CONFIG_PCI_PNP 426180b8688SMinghuan Lian #define CONFIG_PCI_SCAN_SHOW 427180b8688SMinghuan Lian #define CONFIG_CMD_PCI 428180b8688SMinghuan Lian #endif 429180b8688SMinghuan Lian 430c8a7d9daSWang Huan #define CONFIG_CMDLINE_TAG 431c8a7d9daSWang Huan #define CONFIG_CMDLINE_EDITING 4328415bb68SAlison Wang 4331a2826f6SXiubo Li #define CONFIG_ARMV7_NONSEC 4341a2826f6SXiubo Li #define CONFIG_ARMV7_VIRT 4351a2826f6SXiubo Li #define CONFIG_PEN_ADDR_BIG_ENDIAN 436435acd83SMingkai Hu #define CONFIG_LAYERSCAPE_NS_ACCESS 4371a2826f6SXiubo Li #define CONFIG_SMP_PEN_ADDR 0x01ee0200 4381a2826f6SXiubo Li #define CONFIG_TIMER_CLK_FREQ 12500000 4391a2826f6SXiubo Li 440c8a7d9daSWang Huan #define CONFIG_HWCONFIG 44103c22449SZhuoyu Zhang #define HWCONFIG_BUFFER_SIZE 256 44203c22449SZhuoyu Zhang 44303c22449SZhuoyu Zhang #define CONFIG_FSL_DEVICE_DISABLE 444c8a7d9daSWang Huan 445c8a7d9daSWang Huan 44655d53ab4SAlison Wang #ifdef CONFIG_LPUART 44755d53ab4SAlison Wang #define CONFIG_EXTRA_ENV_SETTINGS \ 44855d53ab4SAlison Wang "bootargs=root=/dev/ram0 rw console=ttyLP0,115200\0" \ 4497ff7166cSAlison Wang "initrd_high=0xffffffff\0" \ 4507ff7166cSAlison Wang "fdt_high=0xffffffff\0" 45155d53ab4SAlison Wang #else 452c8a7d9daSWang Huan #define CONFIG_EXTRA_ENV_SETTINGS \ 453c8a7d9daSWang Huan "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \ 4547ff7166cSAlison Wang "initrd_high=0xffffffff\0" \ 4557ff7166cSAlison Wang "fdt_high=0xffffffff\0" 45655d53ab4SAlison Wang #endif 457c8a7d9daSWang Huan 458c8a7d9daSWang Huan /* 459c8a7d9daSWang Huan * Miscellaneous configurable options 460c8a7d9daSWang Huan */ 461c8a7d9daSWang Huan #define CONFIG_SYS_LONGHELP /* undef to save memory */ 462c8a7d9daSWang Huan #define CONFIG_AUTO_COMPLETE 463c8a7d9daSWang Huan #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 464c8a7d9daSWang Huan #define CONFIG_SYS_PBSIZE \ 465c8a7d9daSWang Huan (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 466c8a7d9daSWang Huan #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 467c8a7d9daSWang Huan #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 468c8a7d9daSWang Huan 469c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_START 0x80000000 470c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_END 0x9fffffff 471c8a7d9daSWang Huan 472c8a7d9daSWang Huan #define CONFIG_SYS_LOAD_ADDR 0x82000000 473c8a7d9daSWang Huan 474660673afSXiubo Li #define CONFIG_LS102XA_STREAM_ID 475660673afSXiubo Li 476c8a7d9daSWang Huan /* 477c8a7d9daSWang Huan * Stack sizes 478c8a7d9daSWang Huan * The stack sizes are set up in start.S using the settings below 479c8a7d9daSWang Huan */ 480c8a7d9daSWang Huan #define CONFIG_STACKSIZE (30 * 1024) 481c8a7d9daSWang Huan 482c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_OFFSET \ 483c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 484c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_ADDR \ 485c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 486c8a7d9daSWang Huan 4878415bb68SAlison Wang #ifdef CONFIG_SPL_BUILD 4888415bb68SAlison Wang #define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE 4898415bb68SAlison Wang #else 490c8a7d9daSWang Huan #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 4918415bb68SAlison Wang #endif 492c8a7d9daSWang Huan 493713bf94fSZhao Qiang #define CONFIG_SYS_QE_FW_ADDR 0x600c0000 494eaa859e7SZhao Qiang 495c8a7d9daSWang Huan /* 496c8a7d9daSWang Huan * Environment 497c8a7d9daSWang Huan */ 498c8a7d9daSWang Huan #define CONFIG_ENV_OVERWRITE 499c8a7d9daSWang Huan 5008415bb68SAlison Wang #if defined(CONFIG_SD_BOOT) 5018415bb68SAlison Wang #define CONFIG_ENV_OFFSET 0x100000 5028415bb68SAlison Wang #define CONFIG_ENV_IS_IN_MMC 5038415bb68SAlison Wang #define CONFIG_SYS_MMC_ENV_DEV 0 5048415bb68SAlison Wang #define CONFIG_ENV_SIZE 0x20000 505d612f0abSAlison Wang #elif defined(CONFIG_QSPI_BOOT) 506d612f0abSAlison Wang #define CONFIG_ENV_IS_IN_SPI_FLASH 507d612f0abSAlison Wang #define CONFIG_ENV_SIZE 0x2000 508d612f0abSAlison Wang #define CONFIG_ENV_OFFSET 0x100000 509d612f0abSAlison Wang #define CONFIG_ENV_SECT_SIZE 0x10000 5108415bb68SAlison Wang #else 511c8a7d9daSWang Huan #define CONFIG_ENV_IS_IN_FLASH 512c8a7d9daSWang Huan #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) 513c8a7d9daSWang Huan #define CONFIG_ENV_SIZE 0x20000 514c8a7d9daSWang Huan #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) */ 5158415bb68SAlison Wang #endif 516c8a7d9daSWang Huan 5174ba4a095SRuchika Gupta #define CONFIG_MISC_INIT_R 5184ba4a095SRuchika Gupta 5194ba4a095SRuchika Gupta /* Hash command with SHA acceleration supported in hardware */ 520ef6c55a2SAneesh Bansal #ifdef CONFIG_FSL_CAAM 5214ba4a095SRuchika Gupta #define CONFIG_CMD_HASH 5224ba4a095SRuchika Gupta #define CONFIG_SHA_HW_ACCEL 523ef6c55a2SAneesh Bansal #endif 524ef6c55a2SAneesh Bansal 525ef6c55a2SAneesh Bansal #include <asm/fsl_secure_boot.h> 526cc7b8b9aSAlison Wang #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 5274ba4a095SRuchika Gupta 528c8a7d9daSWang Huan #endif 529