1f3a8e2b7SMingkai Hu /* 2f3a8e2b7SMingkai Hu * Copyright (C) 2015 Freescale Semiconductor 3f3a8e2b7SMingkai Hu * 4f3a8e2b7SMingkai Hu * SPDX-License-Identifier: GPL-2.0+ 5f3a8e2b7SMingkai Hu */ 6f3a8e2b7SMingkai Hu 7f3a8e2b7SMingkai Hu #ifndef __LS1043A_COMMON_H 8f3a8e2b7SMingkai Hu #define __LS1043A_COMMON_H 9f3a8e2b7SMingkai Hu 104139b170SSumit Garg /* SPL build */ 114139b170SSumit Garg #ifdef CONFIG_SPL_BUILD 124139b170SSumit Garg #define SPL_NO_FMAN 134139b170SSumit Garg #define SPL_NO_DSPI 144139b170SSumit Garg #define SPL_NO_PCIE 154139b170SSumit Garg #define SPL_NO_ENV 164139b170SSumit Garg #define SPL_NO_MISC 174139b170SSumit Garg #define SPL_NO_USB 184139b170SSumit Garg #define SPL_NO_SATA 194139b170SSumit Garg #define SPL_NO_QE 204139b170SSumit Garg #define SPL_NO_EEPROM 214139b170SSumit Garg #endif 224139b170SSumit Garg #if (defined(CONFIG_SPL_BUILD) && defined(CONFIG_NAND_BOOT)) 234139b170SSumit Garg #define SPL_NO_MMC 244139b170SSumit Garg #endif 254139b170SSumit Garg #if (defined(CONFIG_SPL_BUILD) && defined(CONFIG_SD_BOOT)) 264139b170SSumit Garg #define SPL_NO_IFC 274139b170SSumit Garg #endif 284139b170SSumit Garg 29f3a8e2b7SMingkai Hu #define CONFIG_REMAKE_ELF 30f3a8e2b7SMingkai Hu #define CONFIG_FSL_LAYERSCAPE 31831c068fSHou Zhiqiang #define CONFIG_MP 32f3a8e2b7SMingkai Hu #define CONFIG_GICV2 33f3a8e2b7SMingkai Hu 345344c7b7SBharat Bhushan #include <asm/arch/stream_id_lsch2.h> 35f3a8e2b7SMingkai Hu #include <asm/arch/config.h> 36f3a8e2b7SMingkai Hu 37f3a8e2b7SMingkai Hu /* Link Definitions */ 38f3a8e2b7SMingkai Hu #define CONFIG_SYS_INIT_SP_ADDR (CONFIG_SYS_FSL_OCRAM_BASE + 0xfff0) 39f3a8e2b7SMingkai Hu 40f3a8e2b7SMingkai Hu #define CONFIG_SUPPORT_RAW_INITRD 41f3a8e2b7SMingkai Hu 42f3a8e2b7SMingkai Hu #define CONFIG_SKIP_LOWLEVEL_INIT 43f3a8e2b7SMingkai Hu 44f3a8e2b7SMingkai Hu #define CONFIG_VERY_BIG_RAM 45f3a8e2b7SMingkai Hu #define CONFIG_SYS_DDR_SDRAM_BASE 0x80000000 46f3a8e2b7SMingkai Hu #define CONFIG_SYS_FSL_DDR_SDRAM_BASE_PHY 0 47f3a8e2b7SMingkai Hu #define CONFIG_SYS_SDRAM_BASE CONFIG_SYS_DDR_SDRAM_BASE 48e994dddbSShaohui Xie #define CONFIG_SYS_DDR_BLOCK2_BASE 0x880000000ULL 49f3a8e2b7SMingkai Hu 50831c068fSHou Zhiqiang #define CPU_RELEASE_ADDR secondary_boot_func 51831c068fSHou Zhiqiang 52f3a8e2b7SMingkai Hu /* Generic Timer Definitions */ 53f3a8e2b7SMingkai Hu #define COUNTER_FREQUENCY 25000000 /* 25MHz */ 54f3a8e2b7SMingkai Hu 55f3a8e2b7SMingkai Hu /* Size of malloc() pool */ 56f3a8e2b7SMingkai Hu #define CONFIG_SYS_MALLOC_LEN (CONFIG_ENV_SIZE + 1024 * 1024) 57f3a8e2b7SMingkai Hu 58f3a8e2b7SMingkai Hu /* Serial Port */ 59f3a8e2b7SMingkai Hu #define CONFIG_CONS_INDEX 1 60f3a8e2b7SMingkai Hu #define CONFIG_SYS_NS16550_SERIAL 61f3a8e2b7SMingkai Hu #define CONFIG_SYS_NS16550_REG_SIZE 1 62904110c7SHou Zhiqiang #define CONFIG_SYS_NS16550_CLK (get_serial_clock()) 63f3a8e2b7SMingkai Hu 64f3a8e2b7SMingkai Hu #define CONFIG_SYS_BAUDRATE_TABLE { 9600, 19200, 38400, 57600, 115200 } 65f3a8e2b7SMingkai Hu 66c7ca8b07SGong Qianyu /* SD boot SPL */ 67c7ca8b07SGong Qianyu #ifdef CONFIG_SD_BOOT 68c7ca8b07SGong Qianyu #define CONFIG_SPL_FRAMEWORK 69c7ca8b07SGong Qianyu #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" 70c7ca8b07SGong Qianyu 71c7ca8b07SGong Qianyu #define CONFIG_SPL_TEXT_BASE 0x10000000 7270f9661cSRuchika Gupta #define CONFIG_SPL_MAX_SIZE 0x17000 73c7ca8b07SGong Qianyu #define CONFIG_SPL_STACK 0x1001e000 74c7ca8b07SGong Qianyu #define CONFIG_SPL_PAD_TO 0x1d000 75c7ca8b07SGong Qianyu 76c7ca8b07SGong Qianyu #define CONFIG_SYS_SPL_MALLOC_START (CONFIG_SYS_TEXT_BASE + \ 77c7ca8b07SGong Qianyu CONFIG_SYS_MONITOR_LEN) 78c7ca8b07SGong Qianyu #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 79c7ca8b07SGong Qianyu #define CONFIG_SPL_BSS_START_ADDR 0x80100000 80c7ca8b07SGong Qianyu #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 8170f9661cSRuchika Gupta 8270f9661cSRuchika Gupta #ifdef CONFIG_SECURE_BOOT 8370f9661cSRuchika Gupta #define CONFIG_U_BOOT_HDR_SIZE (16 << 10) 8470f9661cSRuchika Gupta /* 8570f9661cSRuchika Gupta * HDR would be appended at end of image and copied to DDR along 8670f9661cSRuchika Gupta * with U-Boot image. Here u-boot max. size is 512K. So if binary 8770f9661cSRuchika Gupta * size increases then increase this size in case of secure boot as 8870f9661cSRuchika Gupta * it uses raw u-boot image instead of fit image. 8970f9661cSRuchika Gupta */ 9070f9661cSRuchika Gupta #define CONFIG_SYS_MONITOR_LEN (0x100000 + CONFIG_U_BOOT_HDR_SIZE) 9170f9661cSRuchika Gupta #else 9270f9661cSRuchika Gupta #define CONFIG_SYS_MONITOR_LEN 0x100000 9370f9661cSRuchika Gupta #endif /* ifdef CONFIG_SECURE_BOOT */ 94c7ca8b07SGong Qianyu #endif 95c7ca8b07SGong Qianyu 963ad44729SGong Qianyu /* NAND SPL */ 973ad44729SGong Qianyu #ifdef CONFIG_NAND_BOOT 983ad44729SGong Qianyu #define CONFIG_SPL_PBL_PAD 993ad44729SGong Qianyu #define CONFIG_SPL_FRAMEWORK 1003ad44729SGong Qianyu #define CONFIG_SPL_TARGET "u-boot-with-spl.bin" 1013ad44729SGong Qianyu #define CONFIG_SPL_TEXT_BASE 0x10000000 1023ad44729SGong Qianyu #define CONFIG_SPL_MAX_SIZE 0x1a000 1033ad44729SGong Qianyu #define CONFIG_SPL_STACK 0x1001d000 1043ad44729SGong Qianyu #define CONFIG_SYS_NAND_U_BOOT_DST CONFIG_SYS_TEXT_BASE 1053ad44729SGong Qianyu #define CONFIG_SYS_NAND_U_BOOT_START CONFIG_SYS_TEXT_BASE 1063ad44729SGong Qianyu #define CONFIG_SYS_SPL_MALLOC_START 0x80200000 1073ad44729SGong Qianyu #define CONFIG_SPL_BSS_START_ADDR 0x80100000 1083ad44729SGong Qianyu #define CONFIG_SYS_SPL_MALLOC_SIZE 0x100000 1093ad44729SGong Qianyu #define CONFIG_SPL_BSS_MAX_SIZE 0x80000 110762f92a6SRuchika Gupta 111762f92a6SRuchika Gupta #ifdef CONFIG_SECURE_BOOT 112762f92a6SRuchika Gupta #define CONFIG_U_BOOT_HDR_SIZE (16 << 10) 113762f92a6SRuchika Gupta #endif /* ifdef CONFIG_SECURE_BOOT */ 114762f92a6SRuchika Gupta 115762f92a6SRuchika Gupta #ifdef CONFIG_U_BOOT_HDR_SIZE 116762f92a6SRuchika Gupta /* 117762f92a6SRuchika Gupta * HDR would be appended at end of image and copied to DDR along 118762f92a6SRuchika Gupta * with U-Boot image. Here u-boot max. size is 512K. So if binary 119762f92a6SRuchika Gupta * size increases then increase this size in case of secure boot as 120762f92a6SRuchika Gupta * it uses raw u-boot image instead of fit image. 121762f92a6SRuchika Gupta */ 122762f92a6SRuchika Gupta #define CONFIG_SYS_MONITOR_LEN (0x100000 + CONFIG_U_BOOT_HDR_SIZE) 123762f92a6SRuchika Gupta #else 124762f92a6SRuchika Gupta #define CONFIG_SYS_MONITOR_LEN 0x100000 125762f92a6SRuchika Gupta #endif /* ifdef CONFIG_U_BOOT_HDR_SIZE */ 126762f92a6SRuchika Gupta 1273ad44729SGong Qianyu #endif 1283ad44729SGong Qianyu 129f3a8e2b7SMingkai Hu /* IFC */ 1304139b170SSumit Garg #ifndef SPL_NO_IFC 131b0f20cafSQianyu Gong #if !defined(CONFIG_QSPI_BOOT) && !defined(CONFIG_SD_BOOT_QSPI) 132f3a8e2b7SMingkai Hu #define CONFIG_FSL_IFC 133f3a8e2b7SMingkai Hu /* 134f3a8e2b7SMingkai Hu * CONFIG_SYS_FLASH_BASE has the final address (core view) 135f3a8e2b7SMingkai Hu * CONFIG_SYS_FLASH_BASE_PHYS has the final address (IFC view) 136f3a8e2b7SMingkai Hu * CONFIG_SYS_FLASH_BASE_PHYS_EARLY has the temporary IFC address 137f3a8e2b7SMingkai Hu * CONFIG_SYS_TEXT_BASE is linked to 0x60000000 for booting 138f3a8e2b7SMingkai Hu */ 139f3a8e2b7SMingkai Hu #define CONFIG_SYS_FLASH_BASE 0x60000000 140f3a8e2b7SMingkai Hu #define CONFIG_SYS_FLASH_BASE_PHYS CONFIG_SYS_FLASH_BASE 141f3a8e2b7SMingkai Hu #define CONFIG_SYS_FLASH_BASE_PHYS_EARLY 0x00000000 142f3a8e2b7SMingkai Hu 143e856bdcfSMasahiro Yamada #ifdef CONFIG_MTD_NOR_FLASH 144f3a8e2b7SMingkai Hu #define CONFIG_FLASH_CFI_DRIVER 145f3a8e2b7SMingkai Hu #define CONFIG_SYS_FLASH_CFI 146f3a8e2b7SMingkai Hu #define CONFIG_SYS_FLASH_USE_BUFFER_WRITE 147f3a8e2b7SMingkai Hu #define CONFIG_SYS_FLASH_QUIET_TEST 148f3a8e2b7SMingkai Hu #define CONFIG_FLASH_SHOW_PROGRESS 45 /* count down from 45/5: 9..1 */ 149f3a8e2b7SMingkai Hu #endif 150166ef1e9SGong Qianyu #endif 1514139b170SSumit Garg #endif 152f3a8e2b7SMingkai Hu 153f3a8e2b7SMingkai Hu /* I2C */ 154f3a8e2b7SMingkai Hu #define CONFIG_SYS_I2C 155f3a8e2b7SMingkai Hu #define CONFIG_SYS_I2C_MXC 156f3a8e2b7SMingkai Hu #define CONFIG_SYS_I2C_MXC_I2C1 157f3a8e2b7SMingkai Hu #define CONFIG_SYS_I2C_MXC_I2C2 158f3a8e2b7SMingkai Hu #define CONFIG_SYS_I2C_MXC_I2C3 159f3a8e2b7SMingkai Hu #define CONFIG_SYS_I2C_MXC_I2C4 160f3a8e2b7SMingkai Hu 161f3a8e2b7SMingkai Hu /* PCIe */ 1624139b170SSumit Garg #ifndef SPL_NO_PCIE 163f3a8e2b7SMingkai Hu #define CONFIG_PCIE1 /* PCIE controller 1 */ 164f3a8e2b7SMingkai Hu #define CONFIG_PCIE2 /* PCIE controller 2 */ 165f3a8e2b7SMingkai Hu #define CONFIG_PCIE3 /* PCIE controller 3 */ 166f3a8e2b7SMingkai Hu 167f3a8e2b7SMingkai Hu #ifdef CONFIG_PCI 168f3a8e2b7SMingkai Hu #define CONFIG_NET_MULTI 169f3a8e2b7SMingkai Hu #define CONFIG_PCI_SCAN_SHOW 170f3a8e2b7SMingkai Hu #endif 1714139b170SSumit Garg #endif 172f3a8e2b7SMingkai Hu 173f3a8e2b7SMingkai Hu /* Command line configuration */ 174f3a8e2b7SMingkai Hu 1758ef0d5c4SYangbo Lu /* MMC */ 1764139b170SSumit Garg #ifndef SPL_NO_MMC 1778ef0d5c4SYangbo Lu #ifdef CONFIG_MMC 1788ef0d5c4SYangbo Lu #define CONFIG_FSL_ESDHC 1798ef0d5c4SYangbo Lu #define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33 1808ef0d5c4SYangbo Lu #endif 1814139b170SSumit Garg #endif 1828ef0d5c4SYangbo Lu 183e0579a58SGong Qianyu /* DSPI */ 1844139b170SSumit Garg #ifndef SPL_NO_DSPI 185e0579a58SGong Qianyu #define CONFIG_FSL_DSPI 186e0579a58SGong Qianyu #ifdef CONFIG_FSL_DSPI 187e0579a58SGong Qianyu #define CONFIG_DM_SPI_FLASH 188e0579a58SGong Qianyu #define CONFIG_SPI_FLASH_STMICRO /* cs0 */ 189e0579a58SGong Qianyu #define CONFIG_SPI_FLASH_SST /* cs1 */ 190e0579a58SGong Qianyu #define CONFIG_SPI_FLASH_EON /* cs2 */ 191b0f20cafSQianyu Gong #if !defined(CONFIG_QSPI_BOOT) && !defined(CONFIG_SD_BOOT_QSPI) 192e0579a58SGong Qianyu #define CONFIG_SF_DEFAULT_BUS 1 193e0579a58SGong Qianyu #define CONFIG_SF_DEFAULT_CS 0 194e0579a58SGong Qianyu #endif 195166ef1e9SGong Qianyu #endif 1964139b170SSumit Garg #endif 197e0579a58SGong Qianyu 198e8297341SShaohui Xie /* FMan ucode */ 1994139b170SSumit Garg #ifndef SPL_NO_FMAN 200e8297341SShaohui Xie #define CONFIG_SYS_DPAA_FMAN 201e8297341SShaohui Xie #ifdef CONFIG_SYS_DPAA_FMAN 202e8297341SShaohui Xie #define CONFIG_SYS_FM_MURAM_SIZE 0x60000 203e8297341SShaohui Xie 204fd1b147cSQianyu Gong #ifdef CONFIG_NAND_BOOT 205a9a5cef3SAlison Wang /* Store Fman ucode at offeset 0x900000(72 blocks). */ 206fd1b147cSQianyu Gong #define CONFIG_SYS_QE_FMAN_FW_IN_NAND 207a9a5cef3SAlison Wang #define CONFIG_SYS_FMAN_FW_ADDR (72 * CONFIG_SYS_NAND_BLOCK_SIZE) 2082a555839SQianyu Gong #elif defined(CONFIG_SD_BOOT) 2092a555839SQianyu Gong /* 2102a555839SQianyu Gong * PBL SD boot image should stored at 0x1000(8 blocks), the size of the image is 2112a555839SQianyu Gong * about 1MB (2040 blocks), Env is stored after the image, and the env size is 212a9a5cef3SAlison Wang * 0x2000 (16 blocks), 8 + 2040 + 16 = 2064, enlarge it to 18432(0x4800). 2132a555839SQianyu Gong */ 2142a555839SQianyu Gong #define CONFIG_SYS_QE_FMAN_FW_IN_MMC 215a9a5cef3SAlison Wang #define CONFIG_SYS_FMAN_FW_ADDR (512 * 0x4800) 2165aa03dddSZhao Qiang #define CONFIG_SYS_QE_FW_ADDR (512 * 0x4a08) 2172a555839SQianyu Gong #elif defined(CONFIG_QSPI_BOOT) 218166ef1e9SGong Qianyu #define CONFIG_SYS_QE_FW_IN_SPIFLASH 219a9a5cef3SAlison Wang #define CONFIG_SYS_FMAN_FW_ADDR 0x40900000 220166ef1e9SGong Qianyu #define CONFIG_ENV_SPI_BUS 0 221166ef1e9SGong Qianyu #define CONFIG_ENV_SPI_CS 0 222166ef1e9SGong Qianyu #define CONFIG_ENV_SPI_MAX_HZ 1000000 223166ef1e9SGong Qianyu #define CONFIG_ENV_SPI_MODE 0x03 224166ef1e9SGong Qianyu #else 225e8297341SShaohui Xie #define CONFIG_SYS_QE_FMAN_FW_IN_NOR 226e8297341SShaohui Xie /* FMan fireware Pre-load address */ 227a9a5cef3SAlison Wang #define CONFIG_SYS_FMAN_FW_ADDR 0x60900000 2285aa03dddSZhao Qiang #define CONFIG_SYS_QE_FW_ADDR 0x60940000 229166ef1e9SGong Qianyu #endif 230e8297341SShaohui Xie #define CONFIG_SYS_QE_FMAN_FW_LENGTH 0x10000 231e8297341SShaohui Xie #define CONFIG_SYS_FDT_PAD (0x3000 + CONFIG_SYS_QE_FMAN_FW_LENGTH) 232e8297341SShaohui Xie #endif 2334139b170SSumit Garg #endif 234e8297341SShaohui Xie 235f3a8e2b7SMingkai Hu /* Miscellaneous configurable options */ 236f3a8e2b7SMingkai Hu #define CONFIG_SYS_LOAD_ADDR (CONFIG_SYS_DDR_SDRAM_BASE + 0x10000000) 237f3a8e2b7SMingkai Hu 238f3a8e2b7SMingkai Hu #define CONFIG_HWCONFIG 239f3a8e2b7SMingkai Hu #define HWCONFIG_BUFFER_SIZE 128 240f3a8e2b7SMingkai Hu 2414139b170SSumit Garg #ifndef SPL_NO_MISC 242dbe18f16SWenbin Song #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 243dbe18f16SWenbin Song #define MTDPARTS_DEFAULT "mtdparts=spi0.0:1m(uboot)," \ 244dbe18f16SWenbin Song "5m(kernel),1m(dtb),9m(file_system)" 245dbe18f16SWenbin Song #else 2467f339632SWenbin Song #define MTDPARTS_DEFAULT "mtdparts=60000000.nor:" \ 2477f339632SWenbin Song "2m@0x100000(nor_bank0_uboot),"\ 2487f339632SWenbin Song "40m@0x1100000(nor_bank0_fit)," \ 2497f339632SWenbin Song "7m(nor_bank0_user)," \ 2507f339632SWenbin Song "2m@0x4100000(nor_bank4_uboot)," \ 2517f339632SWenbin Song "40m@0x5100000(nor_bank4_fit),"\ 2527f339632SWenbin Song "-(nor_bank4_user);" \ 2537f339632SWenbin Song "7e800000.flash:" \ 254dbe18f16SWenbin Song "1m(nand_uboot),1m(nand_uboot_env)," \ 255dbe18f16SWenbin Song "20m(nand_fit);spi0.0:1m(uboot)," \ 256dbe18f16SWenbin Song "5m(kernel),1m(dtb),9m(file_system)" 257dbe18f16SWenbin Song #endif 258dbe18f16SWenbin Song 2595ba909f4SShengzhou Liu #include <config_distro_defaults.h> 2605ba909f4SShengzhou Liu #ifndef CONFIG_SPL_BUILD 2615ba909f4SShengzhou Liu #define BOOT_TARGET_DEVICES(func) \ 2625ba909f4SShengzhou Liu func(MMC, mmc, 0) \ 2635ba909f4SShengzhou Liu func(USB, usb, 0) 2645ba909f4SShengzhou Liu #include <config_distro_bootcmd.h> 2655ba909f4SShengzhou Liu #endif 2665ba909f4SShengzhou Liu 267f3a8e2b7SMingkai Hu /* Initial environment variables */ 268f3a8e2b7SMingkai Hu #define CONFIG_EXTRA_ENV_SETTINGS \ 269f3a8e2b7SMingkai Hu "hwconfig=fsl_ddr:bank_intlv=auto\0" \ 270f3a8e2b7SMingkai Hu "fdt_high=0xffffffffffffffff\0" \ 271f3a8e2b7SMingkai Hu "initrd_high=0xffffffffffffffff\0" \ 2725ba909f4SShengzhou Liu "fdt_addr=0x64f00000\0" \ 2735ba909f4SShengzhou Liu "kernel_addr=0x65000000\0" \ 2745ba909f4SShengzhou Liu "scriptaddr=0x80000000\0" \ 275*76bbf1c6SSumit Garg "scripthdraddr=0x80080000\0" \ 2765ba909f4SShengzhou Liu "fdtheader_addr_r=0x80100000\0" \ 2775ba909f4SShengzhou Liu "kernelheader_addr_r=0x80200000\0" \ 2785ba909f4SShengzhou Liu "kernel_addr_r=0x81000000\0" \ 2795ba909f4SShengzhou Liu "fdt_addr_r=0x90000000\0" \ 2805ba909f4SShengzhou Liu "load_addr=0xa0000000\0" \ 281ad6767b6SQianyu Gong "kernel_size=0x2800000\0" \ 282dbe18f16SWenbin Song "console=ttyS0,115200\0" \ 2835ba909f4SShengzhou Liu "mtdparts=" MTDPARTS_DEFAULT "\0" \ 2845ba909f4SShengzhou Liu BOOTENV \ 2855ba909f4SShengzhou Liu "boot_scripts=ls1043ardb_boot.scr\0" \ 286*76bbf1c6SSumit Garg "boot_script_hdr=hdr_ls1043ardb_bs.out\0" \ 2875ba909f4SShengzhou Liu "scan_dev_for_boot_part=" \ 2885ba909f4SShengzhou Liu "part list ${devtype} ${devnum} devplist; " \ 2895ba909f4SShengzhou Liu "env exists devplist || setenv devplist 1; " \ 2905ba909f4SShengzhou Liu "for distro_bootpart in ${devplist}; do " \ 2915ba909f4SShengzhou Liu "if fstype ${devtype} " \ 2925ba909f4SShengzhou Liu "${devnum}:${distro_bootpart} " \ 2935ba909f4SShengzhou Liu "bootfstype; then " \ 2945ba909f4SShengzhou Liu "run scan_dev_for_boot; " \ 2955ba909f4SShengzhou Liu "fi; " \ 2965ba909f4SShengzhou Liu "done\0" \ 297*76bbf1c6SSumit Garg "scan_dev_for_boot=" \ 298*76bbf1c6SSumit Garg "echo Scanning ${devtype} " \ 299*76bbf1c6SSumit Garg "${devnum}:${distro_bootpart}...; " \ 300*76bbf1c6SSumit Garg "for prefix in ${boot_prefixes}; do " \ 301*76bbf1c6SSumit Garg "run scan_dev_for_scripts; " \ 302*76bbf1c6SSumit Garg "done;\0" \ 303*76bbf1c6SSumit Garg "boot_a_script=" \ 304*76bbf1c6SSumit Garg "load ${devtype} ${devnum}:${distro_bootpart} " \ 305*76bbf1c6SSumit Garg "${scriptaddr} ${prefix}${script}; " \ 306*76bbf1c6SSumit Garg "env exists secureboot && load ${devtype} " \ 307*76bbf1c6SSumit Garg "${devnum}:${distro_bootpart} " \ 308*76bbf1c6SSumit Garg "${scripthdraddr} ${prefix}${boot_script_hdr} " \ 309*76bbf1c6SSumit Garg "&& esbc_validate ${scripthdraddr};" \ 310*76bbf1c6SSumit Garg "source ${scriptaddr}\0" \ 3115ba909f4SShengzhou Liu "installer=load mmc 0:2 $load_addr " \ 3125ba909f4SShengzhou Liu "/flex_installer_arm64.itb; " \ 3135ba909f4SShengzhou Liu "bootm $load_addr#ls1043ardb\0" \ 3145ba909f4SShengzhou Liu "qspi_bootcmd=echo Trying load from qspi..;" \ 3155ba909f4SShengzhou Liu "sf probe && sf read $load_addr " \ 3165ba909f4SShengzhou Liu "$kernel_addr $kernel_size && bootm $load_addr#$board\0" \ 3175ba909f4SShengzhou Liu "nor_bootcmd=echo Trying load from nor..;" \ 3185ba909f4SShengzhou Liu "cp.b $kernel_addr $load_addr " \ 3195ba909f4SShengzhou Liu "$kernel_size && bootm $load_addr#$board\0" 3205ba909f4SShengzhou Liu 3215ba909f4SShengzhou Liu #undef CONFIG_BOOTCOMMAND 3225ba909f4SShengzhou Liu #if defined(CONFIG_QSPI_BOOT) || defined(CONFIG_SD_BOOT_QSPI) 323*76bbf1c6SSumit Garg #define CONFIG_BOOTCOMMAND "run distro_bootcmd; env exists secureboot" \ 324*76bbf1c6SSumit Garg "&& esbc_halt; run qspi_bootcmd;" 3255ba909f4SShengzhou Liu #else 326*76bbf1c6SSumit Garg #define CONFIG_BOOTCOMMAND "run distro_bootcmd; env exists secureboot" \ 327*76bbf1c6SSumit Garg "&& esbc_halt; run nor_bootcmd;" 3285ba909f4SShengzhou Liu #endif 3294139b170SSumit Garg #endif 330f3a8e2b7SMingkai Hu 331f3a8e2b7SMingkai Hu /* Monitor Command Prompt */ 332f3a8e2b7SMingkai Hu #define CONFIG_SYS_CBSIZE 512 /* Console I/O Buffer Size */ 333f3a8e2b7SMingkai Hu #define CONFIG_SYS_LONGHELP 3344139b170SSumit Garg 3354139b170SSumit Garg #ifndef SPL_NO_MISC 3365ba909f4SShengzhou Liu #ifndef CONFIG_CMDLINE_EDITING 337f3a8e2b7SMingkai Hu #define CONFIG_CMDLINE_EDITING 1 3384139b170SSumit Garg #endif 3395ba909f4SShengzhou Liu #endif 3404139b170SSumit Garg 341f3a8e2b7SMingkai Hu #define CONFIG_AUTO_COMPLETE 342f3a8e2b7SMingkai Hu #define CONFIG_SYS_MAXARGS 64 /* max command args */ 343f3a8e2b7SMingkai Hu 344f3a8e2b7SMingkai Hu #define CONFIG_SYS_BOOTM_LEN (64 << 20) /* Increase max gunzip size */ 345f3a8e2b7SMingkai Hu 346457e51cfSSimon Glass #include <asm/arch/soc.h> 347457e51cfSSimon Glass 348f3a8e2b7SMingkai Hu #endif /* __LS1043A_COMMON_H */ 349