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 13dbf38aabSChen-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 127*e7e720c2SSumit Garg 128*e7e720c2SSumit Garg #ifdef CONFIG_SECURE_BOOT 129*e7e720c2SSumit Garg #define CONFIG_U_BOOT_HDR_SIZE (16 << 10) 130*e7e720c2SSumit Garg /* 131*e7e720c2SSumit Garg * HDR would be appended at end of image and copied to DDR along 132*e7e720c2SSumit Garg * with U-Boot image. 133*e7e720c2SSumit Garg */ 134*e7e720c2SSumit Garg #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS (0x400 + \ 135*e7e720c2SSumit Garg (CONFIG_U_BOOT_HDR_SIZE / 512) 136*e7e720c2SSumit Garg #else 1378415bb68SAlison Wang #define CONFIG_SYS_U_BOOT_MAX_SIZE_SECTORS 0x400 138*e7e720c2SSumit Garg #endif /* ifdef CONFIG_SECURE_BOOT */ 1398415bb68SAlison Wang 1408415bb68SAlison Wang #define CONFIG_SPL_TEXT_BASE 0x10000000 1418415bb68SAlison Wang #define CONFIG_SPL_MAX_SIZE 0x1a000 1428415bb68SAlison Wang #define CONFIG_SPL_STACK 0x1001d000 1438415bb68SAlison Wang #define CONFIG_SPL_PAD_TO 0x1c000 1448415bb68SAlison Wang #define CONFIG_SYS_TEXT_BASE 0x82000000 1458415bb68SAlison Wang 14699e1bd42STang Yuantian #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE + \ 14799e1bd42STang Yuantian CONFIG_SYS_MONITOR_LEN) 1488415bb68SAlison Wang #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 1498415bb68SAlison Wang #define CONFIG_SPL_BSS_START_ADDR 0x80100000 1508415bb68SAlison Wang #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 151*e7e720c2SSumit Garg 152*e7e720c2SSumit Garg #ifdef CONFIG_U_BOOT_HDR_SIZE 153*e7e720c2SSumit Garg /* 154*e7e720c2SSumit Garg * HDR would be appended at end of image and copied to DDR along 155*e7e720c2SSumit Garg * with U-Boot image. Here u-boot max. size is 512K. So if binary 156*e7e720c2SSumit Garg * size increases then increase this size in case of secure boot as 157*e7e720c2SSumit Garg * it uses raw u-boot image instead of fit image. 158*e7e720c2SSumit Garg */ 159*e7e720c2SSumit Garg #define CONFIG_SYS_MONITOR_LEN (0x80000 + CONFIG_U_BOOT_HDR_SIZE) 160*e7e720c2SSumit Garg #else 1618415bb68SAlison Wang #define CONFIG_SYS_MONITOR_LEN 0x80000 162*e7e720c2SSumit Garg #endif /* ifdef CONFIG_U_BOOT_HDR_SIZE */ 1638415bb68SAlison Wang #endif 1648415bb68SAlison Wang 165d612f0abSAlison Wang #ifdef CONFIG_QSPI_BOOT 166d612f0abSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x40010000 167947cee11SAlison Wang #endif 168947cee11SAlison Wang 169947cee11SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 170d612f0abSAlison Wang #define CONFIG_SYS_NO_FLASH 171d612f0abSAlison Wang #endif 172d612f0abSAlison Wang 173c8a7d9daSWang Huan #ifndef CONFIG_SYS_TEXT_BASE 1741c69a51cSAlison Wang #define CONFIG_SYS_TEXT_BASE 0x60100000 175c8a7d9daSWang Huan #endif 176c8a7d9daSWang Huan 177c8a7d9daSWang Huan #define CONFIG_NR_DRAM_BANKS 1 178c8a7d9daSWang Huan #define PHYS_SDRAM 0x80000000 179c8a7d9daSWang Huan #define PHYS_SDRAM_SIZE (1u * 1024 * 1024 * 1024) 180c8a7d9daSWang Huan 181c8a7d9daSWang Huan #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000UL 182c8a7d9daSWang Huan #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 183c8a7d9daSWang Huan 184c8a7d9daSWang Huan #define CONFIG_SYS_HAS_SERDES 185c8a7d9daSWang Huan 1864ba4a095SRuchika Gupta #define CONFIG_FSL_CAAM /* Enable CAAM */ 1874ba4a095SRuchika Gupta 1884c59ab9cSAlison Wang #if !defined(CONFIG_SD_BOOT) && !defined(CONFIG_NAND_BOOT) && \ 1894c59ab9cSAlison Wang !defined(CONFIG_QSPI_BOOT) 190eaa859e7SZhao Qiang #define CONFIG_U_QE 191eaa859e7SZhao Qiang #endif 192eaa859e7SZhao Qiang 193c8a7d9daSWang Huan /* 194c8a7d9daSWang Huan * IFC Definitions 195c8a7d9daSWang Huan */ 196947cee11SAlison Wang #if !defined(CONFIG_QSPI_BOOT) && !defined(CONFIG_SD_BOOT_QSPI) 197c8a7d9daSWang Huan #define CONFIG_FSL_IFC 198c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE 0x60000000 199c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE 200c8a7d9daSWang Huan 201c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR_EXT (0x0) 202c8a7d9daSWang Huan #define CONFIG_SYS_NOR0_CSPR (CSPR_PHYS_ADDR(CONFIG_SYS_FLASH_BASE_PHYS) | \ 203c8a7d9daSWang Huan CSPR_PORT_SIZE_16 | \ 204c8a7d9daSWang Huan CSPR_MSEL_NOR | \ 205c8a7d9daSWang Huan CSPR_V) 206c8a7d9daSWang Huan #define CONFIG_SYS_NOR_AMASK IFC_AMASK(128 * 1024 * 1024) 207c8a7d9daSWang Huan 208c8a7d9daSWang Huan /* NOR Flash Timing Params */ 209c8a7d9daSWang Huan #define CONFIG_SYS_NOR_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 210c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 211c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM0 (FTIM0_NOR_TACSE(0x4) | \ 212c8a7d9daSWang Huan FTIM0_NOR_TEADC(0x5) | \ 213c8a7d9daSWang Huan FTIM0_NOR_TAVDS(0x0) | \ 214c8a7d9daSWang Huan FTIM0_NOR_TEAHC(0x5)) 215c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM1 (FTIM1_NOR_TACO(0x35) | \ 216c8a7d9daSWang Huan FTIM1_NOR_TRAD_NOR(0x1A) | \ 217c8a7d9daSWang Huan FTIM1_NOR_TSEQRAD_NOR(0x13)) 218c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM2 (FTIM2_NOR_TCS(0x4) | \ 219c8a7d9daSWang Huan FTIM2_NOR_TCH(0x4) | \ 220c8a7d9daSWang Huan FTIM2_NOR_TWP(0x1c) | \ 221c8a7d9daSWang Huan FTIM2_NOR_TWPH(0x0e)) 222c8a7d9daSWang Huan #define CONFIG_SYS_NOR_FTIM3 0 223c8a7d9daSWang Huan 224c8a7d9daSWang Huan #define CONFIG_FLASH_CFI_DRIVER 225c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_CFI 226c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 227c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_QUIET_TEST 228c8a7d9daSWang Huan #define CONFIG_FLASH_SHOW_PROGRESS 45 /* count down from 45/5: 9..1 */ 229c8a7d9daSWang Huan 230c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* number of banks */ 231c8a7d9daSWang Huan #define CONFIG_SYS_MAX_FLASH_SECT 1024 /* sectors per device */ 232c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_ERASE_TOUT 60000 /* Flash Erase Timeout (ms) */ 233c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_WRITE_TOUT 500 /* Flash Write Timeout (ms) */ 234c8a7d9daSWang Huan 235c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_EMPTY_INFO 236c8a7d9daSWang Huan #define CONFIG_SYS_FLASH_BANKS_LIST { CONFIG_SYS_FLASH_BASE_PHYS } 237c8a7d9daSWang Huan 238c8a7d9daSWang Huan #define CONFIG_CFI_FLASH_USE_WEAK_ACCESSORS 239272c5265SYuan Yao #define CONFIG_SYS_WRITE_SWAPPED_DATA 240d612f0abSAlison Wang #endif 241c8a7d9daSWang Huan 242c8a7d9daSWang Huan /* CPLD */ 243c8a7d9daSWang Huan 244c8a7d9daSWang Huan #define CONFIG_SYS_CPLD_BASE 0x7fb00000 245c8a7d9daSWang Huan #define CPLD_BASE_PHYS CONFIG_SYS_CPLD_BASE 246c8a7d9daSWang Huan 247c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR_EXT (0x0) 248c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSPR (CSPR_PHYS_ADDR(CPLD_BASE_PHYS) | \ 249c8a7d9daSWang Huan CSPR_PORT_SIZE_8 | \ 250c8a7d9daSWang Huan CSPR_MSEL_GPCM | \ 251c8a7d9daSWang Huan CSPR_V) 252c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_AMASK IFC_AMASK(64 * 1024) 253c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_CSOR (CSOR_NOR_ADM_SHIFT(4) | \ 254c8a7d9daSWang Huan CSOR_NOR_NOR_MODE_AVD_NOR | \ 255c8a7d9daSWang Huan CSOR_NOR_TRHZ_80) 256c8a7d9daSWang Huan 257c8a7d9daSWang Huan /* CPLD Timing parameters for IFC GPCM */ 258c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM0 (FTIM0_GPCM_TACSE(0xf) | \ 259c8a7d9daSWang Huan FTIM0_GPCM_TEADC(0xf) | \ 260c8a7d9daSWang Huan FTIM0_GPCM_TEAHC(0xf)) 261c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM1 (FTIM1_GPCM_TACO(0xff) | \ 262c8a7d9daSWang Huan FTIM1_GPCM_TRAD(0x3f)) 263c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM2 (FTIM2_GPCM_TCS(0xf) | \ 264c8a7d9daSWang Huan FTIM2_GPCM_TCH(0xf) | \ 265c8a7d9daSWang Huan FTIM2_GPCM_TWP(0xff)) 266c8a7d9daSWang Huan #define CONFIG_SYS_FPGA_FTIM3 0x0 267c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0_EXT CONFIG_SYS_NOR0_CSPR_EXT 268c8a7d9daSWang Huan #define CONFIG_SYS_CSPR0 CONFIG_SYS_NOR0_CSPR 269c8a7d9daSWang Huan #define CONFIG_SYS_AMASK0 CONFIG_SYS_NOR_AMASK 270c8a7d9daSWang Huan #define CONFIG_SYS_CSOR0 CONFIG_SYS_NOR_CSOR 271c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM0 CONFIG_SYS_NOR_FTIM0 272c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM1 CONFIG_SYS_NOR_FTIM1 273c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM2 CONFIG_SYS_NOR_FTIM2 274c8a7d9daSWang Huan #define CONFIG_SYS_CS0_FTIM3 CONFIG_SYS_NOR_FTIM3 275c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1_EXT CONFIG_SYS_FPGA_CSPR_EXT 276c8a7d9daSWang Huan #define CONFIG_SYS_CSPR1 CONFIG_SYS_FPGA_CSPR 277c8a7d9daSWang Huan #define CONFIG_SYS_AMASK1 CONFIG_SYS_FPGA_AMASK 278c8a7d9daSWang Huan #define CONFIG_SYS_CSOR1 CONFIG_SYS_FPGA_CSOR 279c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM0 CONFIG_SYS_FPGA_FTIM0 280c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM1 CONFIG_SYS_FPGA_FTIM1 281c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM2 CONFIG_SYS_FPGA_FTIM2 282c8a7d9daSWang Huan #define CONFIG_SYS_CS1_FTIM3 CONFIG_SYS_FPGA_FTIM3 283c8a7d9daSWang Huan 284c8a7d9daSWang Huan /* 285c8a7d9daSWang Huan * Serial Port 286c8a7d9daSWang Huan */ 28755d53ab4SAlison Wang #ifdef CONFIG_LPUART 28855d53ab4SAlison Wang #define CONFIG_LPUART_32B_REG 28955d53ab4SAlison Wang #else 290c8a7d9daSWang Huan #define CONFIG_CONS_INDEX 1 291c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_SERIAL 292f833cd62SBin Meng #ifndef CONFIG_DM_SERIAL 293c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_REG_SIZE 1 294f833cd62SBin Meng #endif 295c8a7d9daSWang Huan #define CONFIG_SYS_NS16550_CLK get_serial_clock() 29655d53ab4SAlison Wang #endif 297c8a7d9daSWang Huan 298c8a7d9daSWang Huan #define CONFIG_BAUDRATE 115200 299c8a7d9daSWang Huan 300c8a7d9daSWang Huan /* 301c8a7d9daSWang Huan * I2C 302c8a7d9daSWang Huan */ 303c8a7d9daSWang Huan #define CONFIG_SYS_I2C 304c8a7d9daSWang Huan #define CONFIG_SYS_I2C_MXC 30503544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 30603544c66SAlbert ARIBAUD \\(3ADEV\\) #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 307f8cb101eSYork Sun #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ 308c8a7d9daSWang Huan 3095175a288SAlison Wang /* EEPROM */ 3105175a288SAlison Wang #define CONFIG_ID_EEPROM 3115175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_NXID 3125175a288SAlison Wang #define CONFIG_SYS_EEPROM_BUS_NUM 1 3135175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_ADDR 0x53 3145175a288SAlison Wang #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 1 3155175a288SAlison Wang #define CONFIG_SYS_EEPROM_PAGE_WRITE_BITS 3 3165175a288SAlison Wang #define CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS 5 3175175a288SAlison Wang 318c8a7d9daSWang Huan /* 319c8a7d9daSWang Huan * MMC 320c8a7d9daSWang Huan */ 321c8a7d9daSWang Huan #define CONFIG_MMC 322c8a7d9daSWang Huan #define CONFIG_FSL_ESDHC 323c8a7d9daSWang Huan #define CONFIG_GENERIC_MMC 324c8a7d9daSWang Huan 3258251ed23SAlison Wang #define CONFIG_DOS_PARTITION 3268251ed23SAlison Wang 3279dd3d3c0SHaikun Wang /* SPI */ 328947cee11SAlison Wang #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 3299dd3d3c0SHaikun Wang /* QSPI */ 330d612f0abSAlison Wang #define QSPI0_AMBA_BASE 0x40000000 331d612f0abSAlison Wang #define FSL_QSPI_FLASH_SIZE (1 << 24) 332d612f0abSAlison Wang #define FSL_QSPI_FLASH_NUM 2 3339dd3d3c0SHaikun Wang 33403d1d568SYao Yuan /* DSPI */ 33503d1d568SYao Yuan #endif 33603d1d568SYao Yuan 3379dd3d3c0SHaikun Wang /* DM SPI */ 3389dd3d3c0SHaikun Wang #if defined(CONFIG_FSL_DSPI) || defined(CONFIG_FSL_QSPI) 3399dd3d3c0SHaikun Wang #define CONFIG_DM_SPI_FLASH 3409dd3d3c0SHaikun Wang #endif 341d612f0abSAlison Wang 342c8a7d9daSWang Huan /* 343b4ecc8c6SWang Huan * Video 344b4ecc8c6SWang Huan */ 345b4ecc8c6SWang Huan #define CONFIG_FSL_DCU_FB 346b4ecc8c6SWang Huan 347b4ecc8c6SWang Huan #ifdef CONFIG_FSL_DCU_FB 348b4ecc8c6SWang Huan #define CONFIG_VIDEO 349b4ecc8c6SWang Huan #define CONFIG_CMD_BMP 350b4ecc8c6SWang Huan #define CONFIG_CFB_CONSOLE 351b4ecc8c6SWang Huan #define CONFIG_VGA_AS_SINGLE_DEVICE 352b4ecc8c6SWang Huan #define CONFIG_VIDEO_LOGO 353b4ecc8c6SWang Huan #define CONFIG_VIDEO_BMP_LOGO 354f8008f14SAlison Wang #define CONFIG_SYS_CONSOLE_IS_IN_ENV 355b4ecc8c6SWang Huan 356b4ecc8c6SWang Huan #define CONFIG_FSL_DCU_SII9022A 357b4ecc8c6SWang Huan #define CONFIG_SYS_I2C_DVI_BUS_NUM 1 358b4ecc8c6SWang Huan #define CONFIG_SYS_I2C_DVI_ADDR 0x39 359b4ecc8c6SWang Huan #endif 360b4ecc8c6SWang Huan 361b4ecc8c6SWang Huan /* 362c8a7d9daSWang Huan * eTSEC 363c8a7d9daSWang Huan */ 364c8a7d9daSWang Huan #define CONFIG_TSEC_ENET 365c8a7d9daSWang Huan 366c8a7d9daSWang Huan #ifdef CONFIG_TSEC_ENET 367c8a7d9daSWang Huan #define CONFIG_MII 368c8a7d9daSWang Huan #define CONFIG_MII_DEFAULT_TSEC 1 369c8a7d9daSWang Huan #define CONFIG_TSEC1 1 370c8a7d9daSWang Huan #define CONFIG_TSEC1_NAME "eTSEC1" 371c8a7d9daSWang Huan #define CONFIG_TSEC2 1 372c8a7d9daSWang Huan #define CONFIG_TSEC2_NAME "eTSEC2" 373c8a7d9daSWang Huan #define CONFIG_TSEC3 1 374c8a7d9daSWang Huan #define CONFIG_TSEC3_NAME "eTSEC3" 375c8a7d9daSWang Huan 376c8a7d9daSWang Huan #define TSEC1_PHY_ADDR 2 377c8a7d9daSWang Huan #define TSEC2_PHY_ADDR 0 378c8a7d9daSWang Huan #define TSEC3_PHY_ADDR 1 379c8a7d9daSWang Huan 380c8a7d9daSWang Huan #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 381c8a7d9daSWang Huan #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 382c8a7d9daSWang Huan #define TSEC3_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 383c8a7d9daSWang Huan 384c8a7d9daSWang Huan #define TSEC1_PHYIDX 0 385c8a7d9daSWang Huan #define TSEC2_PHYIDX 0 386c8a7d9daSWang Huan #define TSEC3_PHYIDX 0 387c8a7d9daSWang Huan 388c8a7d9daSWang Huan #define CONFIG_ETHPRIME "eTSEC1" 389c8a7d9daSWang Huan 390c8a7d9daSWang Huan #define CONFIG_PHY_GIGE 391c8a7d9daSWang Huan #define CONFIG_PHYLIB 392c8a7d9daSWang Huan #define CONFIG_PHY_ATHEROS 393c8a7d9daSWang Huan 394c8a7d9daSWang Huan #define CONFIG_HAS_ETH0 395c8a7d9daSWang Huan #define CONFIG_HAS_ETH1 396c8a7d9daSWang Huan #define CONFIG_HAS_ETH2 397c8a7d9daSWang Huan #endif 398c8a7d9daSWang Huan 399da419027SMinghuan Lian /* PCIe */ 400da419027SMinghuan Lian #define CONFIG_PCI /* Enable PCI/PCIE */ 401b38eaec5SRobert P. J. Day #define CONFIG_PCIE1 /* PCIE controller 1 */ 402b38eaec5SRobert P. J. Day #define CONFIG_PCIE2 /* PCIE controller 2 */ 403da419027SMinghuan Lian #define CONFIG_PCIE_LAYERSCAPE /* Use common FSL Layerscape PCIe code */ 404da419027SMinghuan Lian #define FSL_PCIE_COMPAT "fsl,ls1021a-pcie" 405da419027SMinghuan Lian 406180b8688SMinghuan Lian #define CONFIG_SYS_PCI_64BIT 407180b8688SMinghuan Lian 408180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG0_PHYS_OFF 0x00000000 409180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG0_SIZE 0x00001000 /* 4k */ 410180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG1_PHYS_OFF 0x00001000 411180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_CFG1_SIZE 0x00001000 /* 4k */ 412180b8688SMinghuan Lian 413180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_BUS 0x00000000 414180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_PHYS_OFF 0x00010000 415180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_IO_SIZE 0x00010000 /* 64k */ 416180b8688SMinghuan Lian 417180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_BUS 0x08000000 418180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_PHYS_OFF 0x04000000 419180b8688SMinghuan Lian #define CONFIG_SYS_PCIE_MEM_SIZE 0x08000000 /* 128M */ 420180b8688SMinghuan Lian 421180b8688SMinghuan Lian #ifdef CONFIG_PCI 422180b8688SMinghuan Lian #define CONFIG_PCI_PNP 423180b8688SMinghuan Lian #define CONFIG_PCI_SCAN_SHOW 424180b8688SMinghuan Lian #define CONFIG_CMD_PCI 425180b8688SMinghuan Lian #endif 426180b8688SMinghuan Lian 427c8a7d9daSWang Huan #define CONFIG_CMDLINE_TAG 428c8a7d9daSWang Huan #define CONFIG_CMDLINE_EDITING 4298415bb68SAlison Wang 4301a2826f6SXiubo Li #define CONFIG_ARMV7_NONSEC 4311a2826f6SXiubo Li #define CONFIG_ARMV7_VIRT 4321a2826f6SXiubo Li #define CONFIG_PEN_ADDR_BIG_ENDIAN 433435acd83SMingkai Hu #define CONFIG_LAYERSCAPE_NS_ACCESS 4341a2826f6SXiubo Li #define CONFIG_SMP_PEN_ADDR 0x01ee0200 4351a2826f6SXiubo Li #define CONFIG_TIMER_CLK_FREQ 12500000 4361a2826f6SXiubo Li 437c8a7d9daSWang Huan #define CONFIG_HWCONFIG 43803c22449SZhuoyu Zhang #define HWCONFIG_BUFFER_SIZE 256 43903c22449SZhuoyu Zhang 44003c22449SZhuoyu Zhang #define CONFIG_FSL_DEVICE_DISABLE 441c8a7d9daSWang Huan 442c8a7d9daSWang Huan 44355d53ab4SAlison Wang #ifdef CONFIG_LPUART 44455d53ab4SAlison Wang #define CONFIG_EXTRA_ENV_SETTINGS \ 44555d53ab4SAlison Wang "bootargs=root=/dev/ram0 rw console=ttyLP0,115200\0" \ 4467ff7166cSAlison Wang "initrd_high=0xffffffff\0" \ 4477ff7166cSAlison Wang "fdt_high=0xffffffff\0" 44855d53ab4SAlison Wang #else 449c8a7d9daSWang Huan #define CONFIG_EXTRA_ENV_SETTINGS \ 450c8a7d9daSWang Huan "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \ 4517ff7166cSAlison Wang "initrd_high=0xffffffff\0" \ 4527ff7166cSAlison Wang "fdt_high=0xffffffff\0" 45355d53ab4SAlison Wang #endif 454c8a7d9daSWang Huan 455c8a7d9daSWang Huan /* 456c8a7d9daSWang Huan * Miscellaneous configurable options 457c8a7d9daSWang Huan */ 458c8a7d9daSWang Huan #define CONFIG_SYS_LONGHELP /* undef to save memory */ 459c8a7d9daSWang Huan #define CONFIG_AUTO_COMPLETE 460c8a7d9daSWang Huan #define CONFIG_SYS_CBSIZE 256 /* Console I/O Buffer Size */ 461c8a7d9daSWang Huan #define CONFIG_SYS_PBSIZE \ 462c8a7d9daSWang Huan (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 463c8a7d9daSWang Huan #define CONFIG_SYS_MAXARGS 16 /* max number of command args */ 464c8a7d9daSWang Huan #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 465c8a7d9daSWang Huan 466c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_START 0x80000000 467c8a7d9daSWang Huan #define CONFIG_SYS_MEMTEST_END 0x9fffffff 468c8a7d9daSWang Huan 469c8a7d9daSWang Huan #define CONFIG_SYS_LOAD_ADDR 0x82000000 470c8a7d9daSWang Huan 471660673afSXiubo Li #define CONFIG_LS102XA_STREAM_ID 472660673afSXiubo Li 473c8a7d9daSWang Huan /* 474c8a7d9daSWang Huan * Stack sizes 475c8a7d9daSWang Huan * The stack sizes are set up in start.S using the settings below 476c8a7d9daSWang Huan */ 477c8a7d9daSWang Huan #define CONFIG_STACKSIZE (30 * 1024) 478c8a7d9daSWang Huan 479c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_OFFSET \ 480c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 481c8a7d9daSWang Huan #define CONFIG_SYS_INIT_SP_ADDR \ 482c8a7d9daSWang Huan (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 483c8a7d9daSWang Huan 4848415bb68SAlison Wang #ifdef CONFIG_SPL_BUILD 4858415bb68SAlison Wang #define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE 4868415bb68SAlison Wang #else 487c8a7d9daSWang Huan #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE /* start of monitor */ 4888415bb68SAlison Wang #endif 489c8a7d9daSWang Huan 490713bf94fSZhao Qiang #define CONFIG_SYS_QE_FW_ADDR 0x600c0000 491eaa859e7SZhao Qiang 492c8a7d9daSWang Huan /* 493c8a7d9daSWang Huan * Environment 494c8a7d9daSWang Huan */ 495c8a7d9daSWang Huan #define CONFIG_ENV_OVERWRITE 496c8a7d9daSWang Huan 4978415bb68SAlison Wang #if defined(CONFIG_SD_BOOT) 4988415bb68SAlison Wang #define CONFIG_ENV_OFFSET 0x100000 4998415bb68SAlison Wang #define CONFIG_ENV_IS_IN_MMC 5008415bb68SAlison Wang #define CONFIG_SYS_MMC_ENV_DEV 0 5018415bb68SAlison Wang #define CONFIG_ENV_SIZE 0x20000 502d612f0abSAlison Wang #elif defined(CONFIG_QSPI_BOOT) 503d612f0abSAlison Wang #define CONFIG_ENV_IS_IN_SPI_FLASH 504d612f0abSAlison Wang #define CONFIG_ENV_SIZE 0x2000 505d612f0abSAlison Wang #define CONFIG_ENV_OFFSET 0x100000 506d612f0abSAlison Wang #define CONFIG_ENV_SECT_SIZE 0x10000 5078415bb68SAlison Wang #else 508c8a7d9daSWang Huan #define CONFIG_ENV_IS_IN_FLASH 509c8a7d9daSWang Huan #define CONFIG_ENV_ADDR (CONFIG_SYS_MONITOR_BASE - CONFIG_ENV_SECT_SIZE) 510c8a7d9daSWang Huan #define CONFIG_ENV_SIZE 0x20000 511c8a7d9daSWang Huan #define CONFIG_ENV_SECT_SIZE 0x20000 /* 128K (one sector) */ 5128415bb68SAlison Wang #endif 513c8a7d9daSWang Huan 5144ba4a095SRuchika Gupta #define CONFIG_MISC_INIT_R 5154ba4a095SRuchika Gupta 5164ba4a095SRuchika Gupta /* Hash command with SHA acceleration supported in hardware */ 517ef6c55a2SAneesh Bansal #ifdef CONFIG_FSL_CAAM 5184ba4a095SRuchika Gupta #define CONFIG_CMD_HASH 5194ba4a095SRuchika Gupta #define CONFIG_SHA_HW_ACCEL 520ef6c55a2SAneesh Bansal #endif 521ef6c55a2SAneesh Bansal 522ef6c55a2SAneesh Bansal #include <asm/fsl_secure_boot.h> 523cc7b8b9aSAlison Wang #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 5244ba4a095SRuchika Gupta 525c8a7d9daSWang Huan #endif 526