177fa0457SPeng Fan /* 277fa0457SPeng Fan * Copyright (C) 2016 Freescale Semiconductor, Inc. 377fa0457SPeng Fan * 477fa0457SPeng Fan * Configuration settings for the Freescale i.MX7ULP EVK board. 577fa0457SPeng Fan * 677fa0457SPeng Fan * SPDX-License-Identifier: GPL-2.0+ 777fa0457SPeng Fan */ 877fa0457SPeng Fan 977fa0457SPeng Fan #ifndef __MX7ULP_EVK_CONFIG_H 1077fa0457SPeng Fan #define __MX7ULP_EVK_CONFIG_H 1177fa0457SPeng Fan 1277fa0457SPeng Fan #include <linux/sizes.h> 1377fa0457SPeng Fan #include <asm/arch/imx-regs.h> 1477fa0457SPeng Fan 1577fa0457SPeng Fan /*Uncomment it to use secure boot*/ 1677fa0457SPeng Fan /*#define CONFIG_SECURE_BOOT*/ 1777fa0457SPeng Fan 1877fa0457SPeng Fan #ifdef CONFIG_SECURE_BOOT 1977fa0457SPeng Fan #ifndef CONFIG_CSF_SIZE 2077fa0457SPeng Fan #define CONFIG_CSF_SIZE 0x4000 2177fa0457SPeng Fan #endif 2277fa0457SPeng Fan #endif 2377fa0457SPeng Fan 2477fa0457SPeng Fan #define CONFIG_BOARD_POSTCLK_INIT 2577fa0457SPeng Fan #define CONFIG_SYS_BOOTM_LEN 0x1000000 2677fa0457SPeng Fan 2777fa0457SPeng Fan #define SRC_BASE_ADDR CMC1_RBASE 2877fa0457SPeng Fan #define IRAM_BASE_ADDR OCRAM_0_BASE 2977fa0457SPeng Fan #define IOMUXC_BASE_ADDR IOMUXC1_RBASE 3077fa0457SPeng Fan 31*04cb0d3eSPeng Fan #define CONFIG_BOUNCE_BUFFER 32*04cb0d3eSPeng Fan #define CONFIG_FSL_ESDHC 33*04cb0d3eSPeng Fan #define CONFIG_FSL_USDHC 34*04cb0d3eSPeng Fan #define CONFIG_SUPPORT_EMMC_BOOT /* eMMC specific */ 35*04cb0d3eSPeng Fan 36*04cb0d3eSPeng Fan #define CONFIG_SYS_FSL_USDHC_NUM 1 37*04cb0d3eSPeng Fan 38*04cb0d3eSPeng Fan #define CONFIG_SYS_FSL_ESDHC_ADDR 0 39*04cb0d3eSPeng Fan #define CONFIG_SYS_MMC_ENV_DEV 0 /* USDHC1 */ 40*04cb0d3eSPeng Fan #define CONFIG_SYS_MMC_ENV_PART 0 /* user area */ 41*04cb0d3eSPeng Fan #define CONFIG_MMCROOT "/dev/mmcblk0p2" /* USDHC1 */ 42*04cb0d3eSPeng Fan #define CONFIG_SYS_MMC_IMG_LOAD_PART 1 43*04cb0d3eSPeng Fan 44*04cb0d3eSPeng Fan #define CONFIG_ENV_OFFSET (12 * SZ_64K) 45*04cb0d3eSPeng Fan #define CONFIG_ENV_IS_IN_MMC 4677fa0457SPeng Fan #define CONFIG_ENV_SIZE SZ_8K 4777fa0457SPeng Fan 4877fa0457SPeng Fan #define CONFIG_CMD_FAT 4977fa0457SPeng Fan #define CONFIG_DOS_PARTITION 5077fa0457SPeng Fan 5177fa0457SPeng Fan /* Using ULP WDOG for reset */ 5277fa0457SPeng Fan #define WDOG_BASE_ADDR WDG1_RBASE 5377fa0457SPeng Fan 5477fa0457SPeng Fan #define CONFIG_SYS_ARCH_TIMER 5577fa0457SPeng Fan #define CONFIG_SYS_HZ_CLOCK 1000000 /* Fixed at 1Mhz from TSTMR */ 5677fa0457SPeng Fan 5777fa0457SPeng Fan #define CONFIG_INITRD_TAG 5877fa0457SPeng Fan #define CONFIG_CMDLINE_TAG 5977fa0457SPeng Fan #define CONFIG_SETUP_MEMORY_TAGS 6077fa0457SPeng Fan /*#define CONFIG_REVISION_TAG*/ 6177fa0457SPeng Fan 6277fa0457SPeng Fan /* Size of malloc() pool */ 6377fa0457SPeng Fan #define CONFIG_SYS_MALLOC_LEN (8 * SZ_1M) 6477fa0457SPeng Fan 6577fa0457SPeng Fan #define CONFIG_BOARD_EARLY_INIT_F 6677fa0457SPeng Fan 6777fa0457SPeng Fan /* UART */ 6877fa0457SPeng Fan #define LPUART_BASE LPUART4_RBASE 6977fa0457SPeng Fan 7077fa0457SPeng Fan /* allow to overwrite serial and ethaddr */ 7177fa0457SPeng Fan #define CONFIG_ENV_OVERWRITE 7277fa0457SPeng Fan #define CONFIG_CONS_INDEX 1 7377fa0457SPeng Fan #define CONFIG_BAUDRATE 115200 7477fa0457SPeng Fan 7577fa0457SPeng Fan #undef CONFIG_CMD_IMLS 7677fa0457SPeng Fan #define CONFIG_SYS_LONGHELP 7777fa0457SPeng Fan #define CONFIG_AUTO_COMPLETE 7877fa0457SPeng Fan 7977fa0457SPeng Fan #define CONFIG_SYS_CACHELINE_SIZE 64 8077fa0457SPeng Fan 8177fa0457SPeng Fan /* Miscellaneous configurable options */ 8277fa0457SPeng Fan #define CONFIG_SYS_PROMPT "=> " 8377fa0457SPeng Fan #define CONFIG_SYS_CBSIZE 512 8477fa0457SPeng Fan 8577fa0457SPeng Fan /* Print Buffer Size */ 8677fa0457SPeng Fan #define CONFIG_SYS_MAXARGS 256 8777fa0457SPeng Fan #define CONFIG_SYS_BARGSIZE CONFIG_SYS_CBSIZE 8877fa0457SPeng Fan #define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16) 8977fa0457SPeng Fan 9077fa0457SPeng Fan #define CONFIG_CMDLINE_EDITING 9177fa0457SPeng Fan #define CONFIG_STACKSIZE SZ_8K 9277fa0457SPeng Fan 9377fa0457SPeng Fan /* Physical Memory Map */ 9477fa0457SPeng Fan #define CONFIG_NR_DRAM_BANKS 1 9577fa0457SPeng Fan 9677fa0457SPeng Fan #define CONFIG_SYS_TEXT_BASE 0x67800000 9777fa0457SPeng Fan #define PHYS_SDRAM 0x60000000 9877fa0457SPeng Fan #define PHYS_SDRAM_SIZE SZ_1G 9977fa0457SPeng Fan #define CONFIG_SYS_MEMTEST_START PHYS_SDRAM 10077fa0457SPeng Fan #define CONFIG_SYS_SDRAM_BASE PHYS_SDRAM 10177fa0457SPeng Fan #define CONFIG_CMD_BOOTZ 10277fa0457SPeng Fan 10377fa0457SPeng Fan #define CONFIG_LOADADDR 0x60800000 10477fa0457SPeng Fan 10577fa0457SPeng Fan #define CONFIG_CMD_MEMTEST 10677fa0457SPeng Fan #define CONFIG_SYS_MEMTEST_END 0x9E000000 10777fa0457SPeng Fan 108*04cb0d3eSPeng Fan #define CONFIG_EXTRA_ENV_SETTINGS \ 109*04cb0d3eSPeng Fan "script=boot.scr\0" \ 110*04cb0d3eSPeng Fan "image=zImage\0" \ 111*04cb0d3eSPeng Fan "console=ttyLP0\0" \ 112*04cb0d3eSPeng Fan "fdt_high=0xffffffff\0" \ 113*04cb0d3eSPeng Fan "initrd_high=0xffffffff\0" \ 114*04cb0d3eSPeng Fan "fdt_file=imx7ulp-evk.dtb\0" \ 115*04cb0d3eSPeng Fan "fdt_addr=0x63000000\0" \ 116*04cb0d3eSPeng Fan "boot_fdt=try\0" \ 117*04cb0d3eSPeng Fan "earlycon=lpuart32,0x402D0010\0" \ 118*04cb0d3eSPeng Fan "ip_dyn=yes\0" \ 119*04cb0d3eSPeng Fan "mmcdev="__stringify(CONFIG_SYS_MMC_ENV_DEV)"\0" \ 120*04cb0d3eSPeng Fan "mmcpart=" __stringify(CONFIG_SYS_MMC_IMG_LOAD_PART) "\0" \ 121*04cb0d3eSPeng Fan "mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \ 122*04cb0d3eSPeng Fan "mmcautodetect=yes\0" \ 123*04cb0d3eSPeng Fan "mmcargs=setenv bootargs console=${console},${baudrate} " \ 124*04cb0d3eSPeng Fan "root=${mmcroot}\0" \ 125*04cb0d3eSPeng Fan "loadbootscript=" \ 126*04cb0d3eSPeng Fan "fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \ 127*04cb0d3eSPeng Fan "bootscript=echo Running bootscript from mmc ...; " \ 128*04cb0d3eSPeng Fan "source\0" \ 129*04cb0d3eSPeng Fan "loadimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${image}\0" \ 130*04cb0d3eSPeng Fan "loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \ 131*04cb0d3eSPeng Fan "mmcboot=echo Booting from mmc ...; " \ 132*04cb0d3eSPeng Fan "run mmcargs; " \ 133*04cb0d3eSPeng Fan "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 134*04cb0d3eSPeng Fan "if run loadfdt; then " \ 135*04cb0d3eSPeng Fan "bootz ${loadaddr} - ${fdt_addr}; " \ 136*04cb0d3eSPeng Fan "else " \ 137*04cb0d3eSPeng Fan "if test ${boot_fdt} = try; then " \ 138*04cb0d3eSPeng Fan "bootz; " \ 139*04cb0d3eSPeng Fan "else " \ 140*04cb0d3eSPeng Fan "echo WARN: Cannot load the DT; " \ 141*04cb0d3eSPeng Fan "fi; " \ 142*04cb0d3eSPeng Fan "fi; " \ 143*04cb0d3eSPeng Fan "else " \ 144*04cb0d3eSPeng Fan "bootz; " \ 145*04cb0d3eSPeng Fan "fi;\0" \ 146*04cb0d3eSPeng Fan "netargs=setenv bootargs console=${console},${baudrate} " \ 147*04cb0d3eSPeng Fan "root=/dev/nfs " \ 148*04cb0d3eSPeng Fan "ip=:::::eth0:dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \ 149*04cb0d3eSPeng Fan "netboot=echo Booting from net ...; " \ 150*04cb0d3eSPeng Fan "run netargs; " \ 151*04cb0d3eSPeng Fan "if test ${ip_dyn} = yes; then " \ 152*04cb0d3eSPeng Fan "setenv get_cmd dhcp; " \ 153*04cb0d3eSPeng Fan "else " \ 154*04cb0d3eSPeng Fan "setenv get_cmd tftp; " \ 155*04cb0d3eSPeng Fan "fi; " \ 156*04cb0d3eSPeng Fan "usb start; "\ 157*04cb0d3eSPeng Fan "${get_cmd} ${image}; " \ 158*04cb0d3eSPeng Fan "if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \ 159*04cb0d3eSPeng Fan "if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \ 160*04cb0d3eSPeng Fan "bootz ${loadaddr} - ${fdt_addr}; " \ 161*04cb0d3eSPeng Fan "else " \ 162*04cb0d3eSPeng Fan "if test ${boot_fdt} = try; then " \ 163*04cb0d3eSPeng Fan "bootz; " \ 164*04cb0d3eSPeng Fan "else " \ 165*04cb0d3eSPeng Fan "echo WARN: Cannot load the DT; " \ 166*04cb0d3eSPeng Fan "fi; " \ 167*04cb0d3eSPeng Fan "fi; " \ 168*04cb0d3eSPeng Fan "else " \ 169*04cb0d3eSPeng Fan "bootz; " \ 170*04cb0d3eSPeng Fan "fi;\0" \ 171*04cb0d3eSPeng Fan 172*04cb0d3eSPeng Fan #define CONFIG_BOOTCOMMAND \ 173*04cb0d3eSPeng Fan "mmc dev ${mmcdev}; if mmc rescan; then " \ 174*04cb0d3eSPeng Fan "if run loadbootscript; then " \ 175*04cb0d3eSPeng Fan "run bootscript; " \ 176*04cb0d3eSPeng Fan "else " \ 177*04cb0d3eSPeng Fan "if run loadimage; then " \ 178*04cb0d3eSPeng Fan "run mmcboot; " \ 179*04cb0d3eSPeng Fan "fi; " \ 180*04cb0d3eSPeng Fan "fi; " \ 181*04cb0d3eSPeng Fan "fi" 182*04cb0d3eSPeng Fan 18377fa0457SPeng Fan #define CONFIG_SYS_HZ 1000 18477fa0457SPeng Fan #define CONFIG_SYS_LOAD_ADDR CONFIG_LOADADDR 18577fa0457SPeng Fan 18677fa0457SPeng Fan #define CONFIG_SYS_INIT_RAM_ADDR IRAM_BASE_ADDR 18777fa0457SPeng Fan #define CONFIG_SYS_INIT_RAM_SIZE SZ_256K 18877fa0457SPeng Fan 18977fa0457SPeng Fan #define CONFIG_SYS_INIT_SP_OFFSET \ 19077fa0457SPeng Fan (CONFIG_SYS_INIT_RAM_SIZE - GENERATED_GBL_DATA_SIZE) 19177fa0457SPeng Fan #define CONFIG_SYS_INIT_SP_ADDR \ 19277fa0457SPeng Fan (CONFIG_SYS_INIT_RAM_ADDR + CONFIG_SYS_INIT_SP_OFFSET) 19377fa0457SPeng Fan 19477fa0457SPeng Fan #ifndef CONFIG_SYS_DCACHE_OFF 19577fa0457SPeng Fan #define CONFIG_CMD_CACHE 19677fa0457SPeng Fan #endif 19777fa0457SPeng Fan 19877fa0457SPeng Fan #endif /* __CONFIG_H */ 199