1PLATFORM_FLAVOR ?= mx6ulevk 2 3# Get SoC associated with the PLATFORM_FLAVOR 4mx6ul-flavorlist = \ 5 mx6ulevk \ 6 7mx6ull-flavorlist = \ 8 mx6ullevk \ 9 10mx6q-flavorlist = \ 11 mx6qsabrelite \ 12 mx6qsabresd \ 13 14mx6sx-flavorlist = \ 15 mx6sxsabreauto \ 16 17mx6d-flavorlist = \ 18 19mx6dl-flavorlist = \ 20 mx6dlsabresd \ 21 22mx6s-flavorlist = \ 23 24mx7-flavorlist = \ 25 mx7dsabresd \ 26 mx7swarp7 \ 27 28ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6ul-flavorlist))) 29$(call force,CFG_MX6UL,y) 30else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6ull-flavorlist))) 31$(call force,CFG_MX6ULL,y) 32else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6q-flavorlist))) 33$(call force,CFG_MX6Q,y) 34else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6d-flavorlist))) 35$(call force,CFG_MX6D,y) 36else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6dl-flavorlist))) 37$(call force,CFG_MX6DL,y) 38else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6s-flavorlist))) 39$(call force,CFG_MX6S,y) 40else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6sx-flavorlist))) 41$(call force,CFG_MX6,y) 42$(call force,CFG_MX6SX,y) 43$(call force,CFG_IMX_UART,y) 44else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx7-flavorlist))) 45$(call force,CFG_MX7,y) 46else 47$(error Unsupported PLATFORM_FLAVOR "$(PLATFORM_FLAVOR)") 48endif 49 50ifneq (,$(filter $(PLATFORM_FLAVOR),mx7dsabresd)) 51CFG_DDR_SIZE ?= 0x40000000 52CFG_DT ?= y 53CFG_NS_ENTRY_ADDR ?= 0x80800000 54CFG_PSCI_ARM32 ?= y 55$(call force,CFG_TEE_CORE_NB_CORE,2) 56endif 57 58ifneq (,$(filter $(PLATFORM_FLAVOR),mx7swarp7)) 59CFG_DDR_SIZE ?= 0x20000000 60CFG_DT ?= y 61CFG_NS_ENTRY_ADDR ?= 0x80800000 62CFG_PSCI_ARM32 ?= y 63$(call force,CFG_TEE_CORE_NB_CORE,1) 64endif 65 66# Common i.MX6 config 67$(call force,CFG_GENERIC_BOOT,y) 68$(call force,CFG_GIC,y) 69$(call force,CFG_IMX_UART,y) 70$(call force,CFG_PM_STUBS,y) 71$(call force,CFG_WITH_SOFTWARE_PRNG,y) 72 73CFG_CRYPTO_SIZE_OPTIMIZATION ?= n 74CFG_WITH_STACK_CANARIES ?= y 75 76 77# i.MX6UL/ULL specific config 78ifneq (,$(filter y, $(CFG_MX6UL) $(CFG_MX6ULL))) 79include core/arch/arm/cpu/cortex-a7.mk 80 81$(call force,CFG_MX6,y) 82$(call force,CFG_SECURE_TIME_SOURCE_REE,y) 83 84CFG_DDR_TEETZ_RESERVED_START ?= 0x9E000000 85CFG_TZDRAM_START ?= $(CFG_DDR_TEETZ_RESERVED_START) 86CFG_TZDRAM_SIZE ?= 0x01E00000 87CFG_SHMEM_START ?= ($(CFG_TZDRAM_START) + $(CFG_TZDRAM_SIZE)) 88CFG_SHMEM_SIZE ?= 0x00200000 89endif 90 91 92# i.MX6 Solo/SoloX/DualLite/Dual/Quad specific config 93ifeq ($(filter y, $(CFG_MX6Q) $(CFG_MX6D) $(CFG_MX6DL) $(CFG_MX6S) \ 94 $(CFG_MX6SX)), y) 95include core/arch/arm/cpu/cortex-a9.mk 96 97$(call force,CFG_MX6,y) 98$(call force,CFG_PL310,y) 99$(call force,CFG_SECURE_TIME_SOURCE_REE,y) 100 101CFG_PL310_LOCKED ?= y 102CFG_BOOT_SYNC_CPU ?= y 103CFG_BOOT_SECONDARY_REQUEST ?= y 104CFG_ENABLE_SCTLR_RR ?= y 105endif 106 107# i.MX6 Solo/DualLite/Dual/Quad specific config 108ifeq ($(filter y, $(CFG_MX6Q) $(CFG_MX6D) $(CFG_MX6DL) $(CFG_MX6S)), y) 109CFG_TZDRAM_START ?= 0x4E000000 110CFG_TZDRAM_SIZE ?= 0x01F00000 111CFG_SHMEM_START ?= ($(CFG_TZDRAM_START) + $(CFG_TZDRAM_SIZE)) 112CFG_SHMEM_SIZE ?= 0x00100000 113endif 114 115# i.MX6 SoloX specific config 116ifeq ($(filter y, $(CFG_MX6SX)), y) 117CFG_TZDRAM_START ?= (0x80000000 + $(CFG_DDR_SIZE) - 0x02000000) 118CFG_TZDRAM_SIZE ?= 0x01e00000 119CFG_SHMEM_START ?= ($(CFG_TZDRAM_START) + $(CFG_TZDRAM_SIZE)) 120CFG_SHMEM_SIZE ?= 0x00200000 121endif 122 123ifeq ($(filter y, $(CFG_MX7)), y) 124include core/arch/arm/cpu/cortex-a7.mk 125 126$(call force,CFG_SECURE_TIME_SOURCE_REE,y) 127CFG_BOOT_SECONDARY_REQUEST ?= y 128CFG_INIT_CNTVOFF ?= y 129 130CFG_TZDRAM_START ?= (0x80000000 + $(CFG_DDR_SIZE) - 0x02000000) 131CFG_TZDRAM_SIZE ?= 0x01e00000 132CFG_SHMEM_START ?= ($(CFG_TZDRAM_START) + $(CFG_TZDRAM_SIZE)) 133CFG_SHMEM_SIZE ?= 0x00200000 134endif 135 136ifneq (,$(filter $(PLATFORM_FLAVOR),mx6sxsabreauto)) 137CFG_PAGEABLE_ADDR ?= 0 138CFG_DDR_SIZE ?= 0x80000000 139CFG_DT ?= y 140CFG_NS_ENTRY_ADDR ?= 0x80800000 141CFG_PSCI_ARM32 ?= y 142CFG_BOOT_SYNC_CPU = n 143CFG_BOOT_SECONDARY_REQUEST = n 144$(call force,CFG_TEE_CORE_NB_CORE,1) 145endif 146 147ifeq ($(filter y, $(CFG_PSCI_ARM32)), y) 148CFG_HWSUPP_MEM_PERM_WXN = n 149CFG_IMX_WDOG ?= y 150endif 151 152CFG_MMAP_REGIONS ?= 24 153 154ta-targets = ta_arm32 155