120c700f8SFeng Li /* 220c700f8SFeng Li * Copyright 2016 Freescale Semiconductor, Inc. 320c700f8SFeng Li * 420c700f8SFeng Li * SPDX-License-Identifier: GPL-2.0+ 520c700f8SFeng Li */ 620c700f8SFeng Li 720c700f8SFeng Li #ifndef __CONFIG_H 820c700f8SFeng Li #define __CONFIG_H 920c700f8SFeng Li 1020c700f8SFeng Li #define CONFIG_ARMV7_SECURE_BASE OCRAM_BASE_S_ADDR 1120c700f8SFeng Li 1220c700f8SFeng Li #define CONFIG_SYS_FSL_CLK 1320c700f8SFeng Li 1420c700f8SFeng Li /* 1520c700f8SFeng Li * Size of malloc() pool 1620c700f8SFeng Li */ 1720c700f8SFeng Li #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 16 * 1024 * 1024) 1820c700f8SFeng Li 1920c700f8SFeng Li #define CONFIG_SYS_INIT_RAM_ADDR OCRAM_BASE_ADDR 2020c700f8SFeng Li #define CONFIG_SYS_INIT_RAM_SIZE OCRAM_SIZE 2120c700f8SFeng Li 2220c700f8SFeng Li /* XHCI Support - enabled by default */ 2320c700f8SFeng Li #define CONFIG_HAS_FSL_XHCI_USB 2420c700f8SFeng Li 2520c700f8SFeng Li #ifdef CONFIG_HAS_FSL_XHCI_USB 2620c700f8SFeng Li #define CONFIG_USB_XHCI_FSL 2720c700f8SFeng Li #define CONFIG_USB_MAX_CONTROLLER_COUNT 1 2820c700f8SFeng Li #endif 2920c700f8SFeng Li 3020c700f8SFeng Li #define CONFIG_SYS_CLK_FREQ 100000000 3120c700f8SFeng Li #define CONFIG_DDR_CLK_FREQ 100000000 3220c700f8SFeng Li 3320c700f8SFeng Li /* 3420c700f8SFeng Li * DDR: 800 MHz ( 1600 MT/s data rate ) 3520c700f8SFeng Li */ 3620c700f8SFeng Li 3720c700f8SFeng Li #define DDR_SDRAM_CFG 0x470c0008 3820c700f8SFeng Li #define DDR_CS0_BNDS 0x008000bf 3920c700f8SFeng Li #define DDR_CS0_CONFIG 0x80014302 4020c700f8SFeng Li #define DDR_TIMING_CFG_0 0x50550004 4120c700f8SFeng Li #define DDR_TIMING_CFG_1 0xbcb38c56 4220c700f8SFeng Li #define DDR_TIMING_CFG_2 0x0040d120 4320c700f8SFeng Li #define DDR_TIMING_CFG_3 0x010e1000 4420c700f8SFeng Li #define DDR_TIMING_CFG_4 0x00000001 4520c700f8SFeng Li #define DDR_TIMING_CFG_5 0x03401400 4620c700f8SFeng Li #define DDR_SDRAM_CFG_2 0x00401010 4720c700f8SFeng Li #define DDR_SDRAM_MODE 0x00061c60 4820c700f8SFeng Li #define DDR_SDRAM_MODE_2 0x00180000 4920c700f8SFeng Li #define DDR_SDRAM_INTERVAL 0x18600618 5020c700f8SFeng Li #define DDR_DDR_WRLVL_CNTL 0x8655f605 5120c700f8SFeng Li #define DDR_DDR_WRLVL_CNTL_2 0x05060607 5220c700f8SFeng Li #define DDR_DDR_WRLVL_CNTL_3 0x05050505 5320c700f8SFeng Li #define DDR_DDR_CDR1 0x80040000 5420c700f8SFeng Li #define DDR_DDR_CDR2 0x00000001 5520c700f8SFeng Li #define DDR_SDRAM_CLK_CNTL 0x02000000 5620c700f8SFeng Li #define DDR_DDR_ZQ_CNTL 0x89080600 5720c700f8SFeng Li #define DDR_CS0_CONFIG_2 0 5820c700f8SFeng Li #define DDR_SDRAM_CFG_MEM_EN 0x80000000 5920c700f8SFeng Li #define SDRAM_CFG2_D_INIT 0x00000010 6020c700f8SFeng Li #define DDR_CDR2_VREF_TRAIN_EN 0x00000080 6120c700f8SFeng Li #define SDRAM_CFG2_FRC_SR 0x80000000 6220c700f8SFeng Li #define SDRAM_CFG_BI 0x00000001 6320c700f8SFeng Li 6420c700f8SFeng Li #ifdef CONFIG_RAMBOOT_PBL 6520c700f8SFeng Li #define CONFIG_SYS_FSL_PBL_PBI \ 6620c700f8SFeng Li board/freescale/ls1021aiot/ls102xa_pbi.cfg 6720c700f8SFeng Li #endif 6820c700f8SFeng Li 6920c700f8SFeng Li #ifdef CONFIG_SD_BOOT 7020c700f8SFeng Li #define CONFIG_SYS_FSL_PBL_RCW \ 7120c700f8SFeng Li board/freescale/ls1021aiot/ls102xa_rcw_sd.cfg 7220c700f8SFeng Li #define CONFIG_SPL_FRAMEWORK 7320c700f8SFeng Li #define CONFIG_SPL_LIBCOMMON_SUPPORT 7420c700f8SFeng Li #define CONFIG_SPL_LIBGENERIC_SUPPORT 7520c700f8SFeng Li #define CONFIG_SPL_ENV_SUPPORT 7620c700f8SFeng Li #define CONFIG_SPL_MPC8XXX_INIT_DDR_SUPPORT 7720c700f8SFeng Li #define CONFIG_SPL_I2C_SUPPORT 7820c700f8SFeng Li #define CONFIG_SPL_WATCHDOG_SUPPORT 7920c700f8SFeng Li #define CONFIG_SPL_SERIAL_SUPPORT 8020c700f8SFeng Li #define CONFIG_SPL_MMC_SUPPORT 8120c700f8SFeng Li #define CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR 0xe8 8220c700f8SFeng Li 8320c700f8SFeng Li #define CONFIG_SPL_TEXT_BASE 0x10000000 8420c700f8SFeng Li #define CONFIG_SPL_MAX_SIZE 0x1a000 8520c700f8SFeng Li #define CONFIG_SPL_STACK 0x1001d000 8620c700f8SFeng Li #define CONFIG_SPL_PAD_TO 0x1c000 8720c700f8SFeng Li #define CONFIG_SYS_TEXT_BASE 0x82000000 8820c700f8SFeng Li 8920c700f8SFeng Li #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE + \ 9020c700f8SFeng Li CONFIG_SYS_MONITOR_LEN) 9120c700f8SFeng Li #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 9220c700f8SFeng Li #define CONFIG_SPL_BSS_START_ADDR 0x80100000 9320c700f8SFeng Li #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 9420c700f8SFeng Li #define CONFIG_SYS_MONITOR_LEN 0x80000 9520c700f8SFeng Li #endif 9620c700f8SFeng Li 9720c700f8SFeng Li #ifdef CONFIG_QSPI_BOOT 9820c700f8SFeng Li #define CONFIG_SYS_TEXT_BASE 0x40010000 9920c700f8SFeng Li #endif 10020c700f8SFeng Li 10120c700f8SFeng Li #define CONFIG_NR_DRAM_BANKS 1 10220c700f8SFeng Li 10320c700f8SFeng Li #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000UL 10420c700f8SFeng Li #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 10520c700f8SFeng Li 10620c700f8SFeng Li /* 10720c700f8SFeng Li * Serial Port 10820c700f8SFeng Li */ 10920c700f8SFeng Li #define CONFIG_CONS_INDEX 1 11020c700f8SFeng Li #define CONFIG_SYS_NS16550_SERIAL 11120c700f8SFeng Li #define CONFIG_SYS_NS16550_REG_SIZE 1 11220c700f8SFeng Li #define CONFIG_SYS_NS16550_CLK get_serial_clock() 11320c700f8SFeng Li 11420c700f8SFeng Li /* 11520c700f8SFeng Li * I2C 11620c700f8SFeng Li */ 11720c700f8SFeng Li #define CONFIG_CMD_I2C 11820c700f8SFeng Li #define CONFIG_SYS_I2C 11920c700f8SFeng Li #define CONFIG_SYS_I2C_MXC 12020c700f8SFeng Li #define CONFIG_SYS_I2C_MXC_I2C1 /* enable I2C bus 1 */ 12120c700f8SFeng Li #define CONFIG_SYS_I2C_MXC_I2C2 /* enable I2C bus 2 */ 12220c700f8SFeng Li #define CONFIG_SYS_I2C_MXC_I2C3 /* enable I2C bus 3 */ 12320c700f8SFeng Li 12420c700f8SFeng Li /* EEPROM */ 12520c700f8SFeng Li #define CONFIG_ID_EEPROM 12620c700f8SFeng Li #define CONFIG_SYS_I2C_EEPROM_NXID 12720c700f8SFeng Li #define CONFIG_SYS_EEPROM_BUS_NUM 0 12820c700f8SFeng Li #define CONFIG_SYS_I2C_EEPROM_ADDR 0x51 12920c700f8SFeng Li #define CONFIG_SYS_I2C_EEPROM_ADDR_LEN 2 13020c700f8SFeng Li 13120c700f8SFeng Li /* 13220c700f8SFeng Li * MMC 13320c700f8SFeng Li */ 13420c700f8SFeng Li #define CONFIG_CMD_MMC 13520c700f8SFeng Li #define CONFIG_FSL_ESDHC 13620c700f8SFeng Li 13720c700f8SFeng Li /* SATA */ 13820c700f8SFeng Li #define CONFIG_LIBATA 13920c700f8SFeng Li #define CONFIG_SCSI_AHCI 14020c700f8SFeng Li #define CONFIG_SCSI_AHCI_PLAT 14120c700f8SFeng Li #ifndef PCI_DEVICE_ID_FREESCALE_AHCI 14220c700f8SFeng Li #define PCI_DEVICE_ID_FREESCALE_AHCI 0x0440 14320c700f8SFeng Li #endif 14420c700f8SFeng Li #define CONFIG_SCSI_DEV_LIST {PCI_VENDOR_ID_FREESCALE, \ 14520c700f8SFeng Li PCI_DEVICE_ID_FREESCALE_AHCI} 14620c700f8SFeng Li 14720c700f8SFeng Li #define CONFIG_SYS_SCSI_MAX_SCSI_ID 1 14820c700f8SFeng Li #define CONFIG_SYS_SCSI_MAX_LUN 1 14920c700f8SFeng Li #define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \ 15020c700f8SFeng Li CONFIG_SYS_SCSI_MAX_LUN) 15120c700f8SFeng Li 15220c700f8SFeng Li /* SPI */ 15320c700f8SFeng Li #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 15420c700f8SFeng Li #define CONFIG_SPI_FLASH_SPANSION 15520c700f8SFeng Li 15620c700f8SFeng Li /* QSPI */ 15720c700f8SFeng Li #define QSPI0_AMBA_BASE 0x40000000 15820c700f8SFeng Li #define FSL_QSPI_FLASH_SIZE (1 << 24) 15920c700f8SFeng Li #define FSL_QSPI_FLASH_NUM 2 16020c700f8SFeng Li #define CONFIG_SPI_FLASH_BAR 16120c700f8SFeng Li #define CONFIG_SPI_FLASH_SPANSION 16220c700f8SFeng Li #endif 16320c700f8SFeng Li 16420c700f8SFeng Li /* DM SPI */ 16520c700f8SFeng Li #if defined(CONFIG_FSL_DSPI) || defined(CONFIG_FSL_QSPI) 16620c700f8SFeng Li #define CONFIG_CMD_SF 16720c700f8SFeng Li #define CONFIG_DM_SPI_FLASH 16820c700f8SFeng Li #endif 16920c700f8SFeng Li 17020c700f8SFeng Li /* 17120c700f8SFeng Li * eTSEC 17220c700f8SFeng Li */ 17320c700f8SFeng Li #define CONFIG_TSEC_ENET 17420c700f8SFeng Li 17520c700f8SFeng Li #ifdef CONFIG_TSEC_ENET 17620c700f8SFeng Li #define CONFIG_MII 17720c700f8SFeng Li #define CONFIG_MII_DEFAULT_TSEC 1 17820c700f8SFeng Li #define CONFIG_TSEC1 1 17920c700f8SFeng Li #define CONFIG_TSEC1_NAME "eTSEC1" 18020c700f8SFeng Li #define CONFIG_TSEC2 1 18120c700f8SFeng Li #define CONFIG_TSEC2_NAME "eTSEC2" 18220c700f8SFeng Li 18320c700f8SFeng Li #define TSEC1_PHY_ADDR 1 18420c700f8SFeng Li #define TSEC2_PHY_ADDR 3 18520c700f8SFeng Li 18620c700f8SFeng Li #define TSEC1_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 18720c700f8SFeng Li #define TSEC2_FLAGS (TSEC_GIGABIT | TSEC_REDUCED) 18820c700f8SFeng Li 18920c700f8SFeng Li #define TSEC1_PHYIDX 0 19020c700f8SFeng Li #define TSEC2_PHYIDX 0 19120c700f8SFeng Li 19220c700f8SFeng Li #define CONFIG_ETHPRIME "eTSEC2" 19320c700f8SFeng Li 19420c700f8SFeng Li #define CONFIG_PHY_ATHEROS 19520c700f8SFeng Li 19620c700f8SFeng Li #define CONFIG_HAS_ETH0 19720c700f8SFeng Li #define CONFIG_HAS_ETH1 19820c700f8SFeng Li #define CONFIG_HAS_ETH2 19920c700f8SFeng Li #endif 20020c700f8SFeng Li 20120c700f8SFeng Li /* PCIe */ 20220c700f8SFeng Li #define CONFIG_PCIE1 /* PCIE controler 1 */ 20320c700f8SFeng Li #define CONFIG_PCIE2 /* PCIE controler 2 */ 20420c700f8SFeng Li 20520c700f8SFeng Li #define FSL_PCIE_COMPAT "fsl,ls1021a-pcie" 20620c700f8SFeng Li 20720c700f8SFeng Li #ifdef CONFIG_PCI 20820c700f8SFeng Li #define CONFIG_PCI_SCAN_SHOW 20920c700f8SFeng Li #endif 21020c700f8SFeng Li 21120c700f8SFeng Li #define CONFIG_CMD_PING 21220c700f8SFeng Li #define CONFIG_CMD_DHCP 21320c700f8SFeng Li #define CONFIG_CMD_MII 21420c700f8SFeng Li 21520c700f8SFeng Li #define CONFIG_CMDLINE_TAG 21620c700f8SFeng Li #define CONFIG_CMDLINE_EDITING 21720c700f8SFeng Li 21820c700f8SFeng Li #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT) 21920c700f8SFeng Li #undef CONFIG_CMD_IMLS 22020c700f8SFeng Li #endif 22120c700f8SFeng Li 22220c700f8SFeng Li #define CONFIG_PEN_ADDR_BIG_ENDIAN 22320c700f8SFeng Li #define CONFIG_LAYERSCAPE_NS_ACCESS 22420c700f8SFeng Li #define CONFIG_SMP_PEN_ADDR 0x01ee0200 225*e4916e85SAndre Przywara #define COUNTER_FREQUENCY 12500000 22620c700f8SFeng Li 22720c700f8SFeng Li #define CONFIG_HWCONFIG 22820c700f8SFeng Li #define HWCONFIG_BUFFER_SIZE 256 22920c700f8SFeng Li 23020c700f8SFeng Li #define CONFIG_FSL_DEVICE_DISABLE 23120c700f8SFeng Li 23220c700f8SFeng Li #define CONFIG_EXTRA_ENV_SETTINGS \ 23320c700f8SFeng Li "bootargs=root=/dev/ram0 rw console=ttyS0,115200\0" \ 23420c700f8SFeng Li "initrd_high=0xffffffff\0" \ 23520c700f8SFeng Li "fdt_high=0xffffffff\0" 23620c700f8SFeng Li 23720c700f8SFeng Li /* 23820c700f8SFeng Li * Miscellaneous configurable options 23920c700f8SFeng Li */ 24020c700f8SFeng Li #define CONFIG_SYS_LONGHELP /* undef to save memory */ 24120c700f8SFeng Li #define CONFIG_SYS_PROMPT_HUSH_PS2 "> " 24220c700f8SFeng Li #define CONFIG_AUTO_COMPLETE 24320c700f8SFeng Li 24420c700f8SFeng Li #define CONFIG_CMD_GREPENV 24520c700f8SFeng Li #define CONFIG_CMD_MEMINFO 24620c700f8SFeng Li 24720c700f8SFeng Li #define CONFIG_SYS_LOAD_ADDR 0x82000000 24820c700f8SFeng Li 24920c700f8SFeng Li #define CONFIG_LS102XA_STREAM_ID 25020c700f8SFeng Li 25120c700f8SFeng Li #define CONFIG_SYS_INIT_SP_OFFSET \ 25220c700f8SFeng Li (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 25320c700f8SFeng Li #define CONFIG_SYS_INIT_SP_ADDR \ 25420c700f8SFeng Li (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 25520c700f8SFeng Li 25620c700f8SFeng Li #ifdef CONFIG_SPL_BUILD 25720c700f8SFeng Li #define CONFIG_SYS_MONITOR_BASE CONFIG_SPL_TEXT_BASE 25820c700f8SFeng Li #else 25920c700f8SFeng Li /* start of monitor */ 26020c700f8SFeng Li #define CONFIG_SYS_MONITOR_BASE CONFIG_SYS_TEXT_BASE 26120c700f8SFeng Li #endif 26220c700f8SFeng Li 26320c700f8SFeng Li #define CONFIG_SYS_QE_FW_ADDR 0x67f40000 26420c700f8SFeng Li 26520c700f8SFeng Li /* 26620c700f8SFeng Li * Environment 26720c700f8SFeng Li */ 26820c700f8SFeng Li 26920c700f8SFeng Li #define CONFIG_ENV_OVERWRITE 27020c700f8SFeng Li 27120c700f8SFeng Li #if defined(CONFIG_SD_BOOT) 27220c700f8SFeng Li #define CONFIG_ENV_OFFSET 0x100000 27320c700f8SFeng Li #define CONFIG_SYS_MMC_ENV_DEV 0 27420c700f8SFeng Li #define CONFIG_ENV_SIZE 0x2000 27520c700f8SFeng Li #elif defined(CONFIG_QSPI_BOOT) 27620c700f8SFeng Li #define CONFIG_ENV_SIZE 0x2000 27720c700f8SFeng Li #define CONFIG_ENV_OFFSET 0x100000 27820c700f8SFeng Li #define CONFIG_ENV_SECT_SIZE 0x10000 27920c700f8SFeng Li #endif 28020c700f8SFeng Li 28120c700f8SFeng Li #define CONFIG_OF_BOARD_SETUP 28220c700f8SFeng Li #define CONFIG_OF_STDOUT_VIA_ALIAS 28320c700f8SFeng Li #define CONFIG_CMD_BOOTZ 28420c700f8SFeng Li 28520c700f8SFeng Li #define CONFIG_MISC_INIT_R 28620c700f8SFeng Li 28720c700f8SFeng Li #include <asm/fsl_secure_boot.h> 28820c700f8SFeng Li 28920c700f8SFeng Li #endif 290