From 0da41e90bb7d44317c32b78aec73e96951e14826 Mon Sep 17 00:00:00 2001 From: Bryan O'Donoghue Date: Mon, 19 Nov 2018 15:30:28 +0000 Subject: [PATCH] arm: imx: add iMX7S WaARP7 MBL board definition This patch adds an OP-TEE port for the i.MX7S WaRP7 for the MBED Linux OS boot flow. BootROM -> ATF/BL2 ATF -> FIP {u-boot, OPTEE} OPTEE -> {populates DTB overlay} u-boot -> FIT {DTB, Kernel, initramfs} Merges DTB and OPTEE DTB-overlay Linux The current warp7 port looks like BootROM -> u-boot u-boot -> Load {Kernel, OPTEE, DTB} OPTEE Linux In order to support the ATF bootflow a new port of OP-TEE with slightly tweaked parameters is added here. CFG_NS_ENTRY_ADDR = 0x87800000 is the entry point of u-boot CFG_DT_OVERLAY = y adds DTB overlay fragments to the passed DTB make PLATFORM=imx-mx7swarp7_mbl Signed-off-by: Bryan O'Donoghue Reviewed-by: Peng Fan --- README.md | 1 + core/arch/arm/plat-imx/conf.mk | 11 +++++++++++ 2 files changed, 12 insertions(+) diff --git a/README.md b/README.md index 1a89b624a..56ca7eea8 100644 --- a/README.md +++ b/README.md @@ -75,6 +75,7 @@ The **Maintained?** column shows: | [FSL i.MX6 UltraLite EVK Board](http://www.freescale.com/products/arm-processors/i.mx-applications-processors-based-on-arm-cores/i.mx-6-processors/i.mx6qp/i.mx6ultralite-evaluation-kit:MCIMX6UL-EVK) |`PLATFORM=imx-mx6ulevk`| Yes | ![Actively Maintained](documentation/images/green.svg) | | [NXP i.MX7Dual SabreSD Board](http://www.nxp.com/products/software-and-tools/hardware-development-tools/sabre-development-system/sabre-board-for-smart-devices-based-on-the-i.mx-7dual-applications-processors:MCIMX7SABRE) |`PLATFORM=imx-mx7dsabresd`| Yes | ![Actively Maintained](documentation/images/green.svg) | | [NXP i.MX7Solo WaRP7 Board](http://www.nxp.com/products/developer-resources/reference-designs/warp7-next-generation-iot-and-wearable-development-platform:WARP7) |`PLATFORM=imx-mx7swarp7`| Yes | ![Actively Maintained](documentation/images/green.svg) | +| [NXP i.MX7Solo WaRP7 Board - Mbed Linux OS](https://os.mbed.com/platforms/WaRP7) |`PLATFORM=imx-mx7swarp7_mbl`| Yes | ![Actively Maintained](documentation/images/green.svg) | | [NXP i.MX8MQEVK Board](https://www.nxp.com/support/developer-resources/run-time-software/i.mx-developer-resources/evaluation-kit-for-the-i.mx-8m-applications-processor:MCIMX8M-EVK) |`PLATFORM=imx-imx8mqevk`| Yes | ![Actively Maintained](documentation/images/green.svg) | | [NXP i.MX8MMEVK Board](https://www.nxp.com/products/processors-and-microcontrollers/arm-based-processors-and-mcus/i.mx-applications-processors/i.mx-8-processors/i.mx-8m-mini-family-arm-cortex-a53-cortex-m4-audio-voice-video:i.MX8MMINI?lang=en&lang_cd=en&) |`PLATFORM=imx-imx8mmevk`| Yes | ![Actively Maintained](documentation/images/green.svg) | | [ARM Foundation FVP](https://developer.arm.com/products/system-design/fixed-virtual-platforms) |`PLATFORM=vexpress-fvp`| Yes | ![Actively Maintained](documentation/images/green.svg) | diff --git a/core/arch/arm/plat-imx/conf.mk b/core/arch/arm/plat-imx/conf.mk index 1b7178ac5..88fd7382a 100644 --- a/core/arch/arm/plat-imx/conf.mk +++ b/core/arch/arm/plat-imx/conf.mk @@ -29,6 +29,7 @@ mx6s-flavorlist = \ mx7-flavorlist = \ mx7dsabresd \ mx7swarp7 \ + mx7swarp7_mbl \ mx7dclsom \ imx8mq-flavorlist = \ @@ -105,6 +106,16 @@ CFG_BOOT_SECONDARY_REQUEST ?= n $(call force,CFG_TEE_CORE_NB_CORE,1) endif +ifneq (,$(filter $(PLATFORM_FLAVOR),mx7swarp7_mbl)) +CFG_DDR_SIZE ?= 0x20000000 +CFG_NS_ENTRY_ADDR ?= 0x87800000 +CFG_DT_ADDR ?= 0x83100000 +CFG_BOOT_SECONDARY_REQUEST ?= n +CFG_EXTERNAL_DTB_OVERLAY = y +CFG_IMX_WDOG_EXT_RESET = y +$(call force,CFG_TEE_CORE_NB_CORE,1) +endif + ifneq (,$(filter $(PLATFORM_FLAVOR),mx6qsabresd mx6dlsabresd \ mx6dlsabrelite mx6dhmbedge mx6dlhmbedge)) CFG_DDR_SIZE ?= 0x40000000