1PLATFORM_FLAVOR ?= mx6ulevk 2 3# Get SoC associated with the PLATFORM_FLAVOR 4mx6ul-flavorlist = mx6ulevk 5mx6q-flavorlist = mx6qsabrelite mx6qsabresd 6mx6d-flavorlist = 7mx6dl-flavorlist = mx6dlsabresd 8mx6s-flavorlist = 9 10ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6ul-flavorlist))) 11$(call force,CFG_MX6UL,y) 12else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6q-flavorlist))) 13$(call force,CFG_MX6Q,y) 14else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6d-flavorlist))) 15$(call force,CFG_MX6D,y) 16else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6dl-flavorlist))) 17$(call force,CFG_MX6DL,y) 18else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6s-flavorlist))) 19$(call force,CFG_MX6S,y) 20else 21$(error Unsupported PLATFORM_FLAVOR "$(PLATFORM_FLAVOR)") 22endif 23 24 25# Common i.MX6 config 26arm32-platform-cflags += -mcpu=$(arm32-platform-cpuarch) 27arm32-platform-aflags += -mcpu=$(arm32-platform-cpuarch) 28core_arm32-platform-aflags += -mfpu=neon 29 30$(call force,CFG_ARM32_core,y) 31$(call force,CFG_GENERIC_BOOT,y) 32$(call force,CFG_GIC,y) 33$(call force,CFG_IMX_UART,y) 34$(call force,CFG_PM_STUBS,y) 35$(call force,CFG_WITH_SOFTWARE_PRNG,y) 36 37CFG_CRYPTO_SIZE_OPTIMIZATION ?= n 38CFG_WITH_STACK_CANARIES ?= y 39 40 41# i.MX6UL specific config 42ifeq ($(CFG_MX6UL),y) 43arm32-platform-cpuarch := cortex-a7 44 45$(call force,CFG_SECURE_TIME_SOURCE_CNTPCT,y) 46$(call force,CFG_HWSUPP_MEM_PERM_WXN,y) 47endif 48 49 50# i.MX6 Solo/DualLite/Dual/Quad specific config 51ifeq ($(filter y, $(CFG_MX6Q) $(CFG_MX6D) $(CFG_MX6DL) $(CFG_MX6S)), y) 52arm32-platform-cpuarch := cortex-a9 53 54$(call force,CFG_PL310,y) 55$(call force,CFG_PL310_LOCKED,y) 56$(call force,CFG_SECURE_TIME_SOURCE_REE,y) 57$(call force,CFG_HWSUPP_MEM_PERM_WXN,n) 58 59CFG_BOOT_SYNC_CPU ?= y 60CFG_BOOT_SECONDARY_REQUEST ?= y 61endif 62 63 64ta-targets = ta_arm32 65 66