# stack is allocated below CONFIG_SYS_TEXT_BASE
-CONFIG_SYS_TEXT_BASE := 0x27800000
-#CONFIG_SYS_TEXT_BASE := 0x17800000
-#CONFIG_SPL_TEXT_BASE := 0x00000000
+ifeq ($(CONFIG_SOC_MX6SX)$(CONFIG_SOC_MX6SL)$(CONFIG_SOC_MX6UL),)
+ CONFIG_SYS_TEXT_BASE := 0x100ff000
+else
+ CONFIG_SYS_TEXT_BASE := 0x800ff000
+endif
+
+OBJCOPYFLAGS += -j .pad
LOGO_BMP = logos/karo.bmp
#PLATFORM_CPPFLAGS += -DDEBUG
#PLATFORM_CPPFLAGS += -Wno-unused-but-set-variable
PLATFORM_CPPFLAGS += -Werror
-ifeq ($(CONFIG_TX6_V2),)
-# calculate U_BOOT_IMG_SIZE to be at least 3 eraseblocks larger than the maximum expected image size
+ifneq ($(CONFIG_SECURE_BOOT),)
+ # promote config variable to linker script
+ PLATFORM_CPPFLAGS += -DCONFIG_SECURE_BOOT
+endif
+
+ifeq ($(CONFIG_TX6_NAND),y)
CONFIG_SYS_NAND_BLOCK_SIZE := 131072
ifeq ($(CONFIG_SYS_NAND_BLOCKS),)
CONFIG_SYS_NAND_BLOCKS := 1024
endif
ifneq ($(CONFIG_SYS_NAND_BLOCK_SIZE),)
-CONFIG_U_BOOT_IMG_SIZE = $(shell echo 'e=$(CONFIG_SYS_NAND_BLOCK_SIZE);s=640*1024;s + (e - s % e) % e + 3*e' | bc)
-CONFIG_SYS_USERFS_SIZE = $(shell expr \( $(CONFIG_SYS_NAND_BLOCKS) - 12 \) \* $(CONFIG_SYS_NAND_BLOCK_SIZE) - $(CONFIG_U_BOOT_IMG_SIZE) - 36 \* 1048576)
-CONFIG_SYS_USERFS_SIZE2 = $(shell expr \( $(CONFIG_SYS_NAND_BLOCKS) - 15 \) \* $(CONFIG_SYS_NAND_BLOCK_SIZE) - $(CONFIG_U_BOOT_IMG_SIZE) - 36 \* 1048576)
+# calculate U_BOOT_IMG_SIZE to be at least 3 eraseblocks larger than the maximum expected image size
+CONFIG_U_BOOT_IMG_SIZE := $(shell echo 'e=$(CONFIG_SYS_NAND_BLOCK_SIZE);s=640*1024;s + (e - s % e) % e + 3*e' | bc)
+CONFIG_SYS_USERFS_SIZE := $(shell expr \( $(CONFIG_SYS_NAND_BLOCKS) - 12 \) \* $(CONFIG_SYS_NAND_BLOCK_SIZE) - $(CONFIG_U_BOOT_IMG_SIZE) - 38 \* 1048576)
+CONFIG_SYS_USERFS_SIZE2 := $(shell expr \( $(CONFIG_SYS_NAND_BLOCKS) - 15 \) \* $(CONFIG_SYS_NAND_BLOCK_SIZE) - $(CONFIG_U_BOOT_IMG_SIZE) - 38 \* 1048576)
CONFIG_SYS_NAND_BBT_BLOCKS := 4
CONFIG_SYS_NAND_DTB_BLOCKS := 4
PLATFORM_CPPFLAGS += -DCONFIG_SYS_NAND_BBT_OFFSET=$(shell printf "0x%x" `expr \( $(CONFIG_SYS_NAND_BLOCKS) - $(CONFIG_SYS_NAND_BBT_BLOCKS) \) \* $(CONFIG_SYS_NAND_BLOCK_SIZE)`)
endif # CONFIG_SYS_NAND_BLOCK_SIZE
else
-CONFIG_SYS_MMC_BOOT_PART_SIZE = $(shell expr 4096 \* 1024)
-CONFIG_U_BOOT_IMG_SIZE = $(shell expr 1 \* 1048576)
-CONFIG_MAX_DTB_SIZE = $(shell expr 64 \* 1024)
-CONFIG_ENV_SIZE = $(shell expr 128 \* 1024)
-CONFIG_ENV_OFFSET = $(shell expr $(CONFIG_SYS_MMC_BOOT_PART_SIZE) - $(CONFIG_ENV_SIZE))
-CONFIG_SYS_DTB_OFFSET=$(shell expr $(CONFIG_ENV_OFFSET) - $(CONFIG_MAX_DTB_SIZE))
+ifneq ($(CONFIG_MMC_BOOT_SIZE),)
+ CONFIG_SYS_MMC_BOOT_PART_SIZE := $(shell expr $(CONFIG_MMC_BOOT_SIZE) \* 1024)
+else
+ CONFIG_SYS_MMC_BOOT_PART_SIZE := $(shell expr 4096 \* 1024)
+endif
+CONFIG_U_BOOT_IMG_SIZE := $(shell expr 1 \* 1048576)
+CONFIG_MAX_DTB_SIZE := $(shell expr 64 \* 1024)
+CONFIG_ENV_SIZE := $(shell expr 128 \* 1024)
+CONFIG_ENV_OFFSET := $(shell expr $(CONFIG_SYS_MMC_BOOT_PART_SIZE) - $(CONFIG_ENV_SIZE))
+CONFIG_SYS_DTB_OFFSET := $(shell expr $(CONFIG_ENV_OFFSET) - $(CONFIG_MAX_DTB_SIZE))
PLATFORM_CPPFLAGS += -DCONFIG_ENV_SIZE=$(CONFIG_ENV_SIZE)
PLATFORM_CPPFLAGS += -DCONFIG_U_BOOT_IMG_SIZE=$(CONFIG_U_BOOT_IMG_SIZE)
PLATFORM_CPPFLAGS += -DCONFIG_ENV_OFFSET=$(shell printf "0x%x" $(CONFIG_ENV_OFFSET))
PLATFORM_CPPFLAGS += -DCONFIG_SYS_DTB_OFFSET=$(shell printf "0x%x" $(CONFIG_SYS_DTB_OFFSET))
PLATFORM_CPPFLAGS += -DCONFIG_SYS_DTB_BLKNO=$(shell printf "0x%x" `expr $(CONFIG_SYS_DTB_OFFSET) / 512`)
-#PLATFORM_CPPFLAGS += -D
-endif # CONFIG_TX6_V2
+endif # CONFIG_TX6_NAND