dear exports,
I am porting optee to imx6solo processor, I have three questions here.
1. in imx6.h, there are the following code:
#if defined(CFG_MX6QP) || defined(CFG_MX6Q) || defined(CFG_MX6DL) || \
defined(CFG_MX6D)
#define TZASC2_BASE 0x21D4000
#define TZASC2_SIZE 0x4000
#endif
I see in the i.MX6solo/6duallite reference manual that there are two TZASCs, do I need to add the following line:
#elif defined(CFG_MX6S)
#define TRUSTZONE_OCRAM_START 0x918000
before the line #else to the following code?
#if defined(CFG_MX6QP) || defined(CFG_MX6Q) || defined(CFG_MX6DL) || \
defined(CFG_MX6D)||(CFG_MX6S) because there are two TZASCs?
2. For 6solo, there are only 128k OSCRAM, do I need to modify the following code:
if defined(CFG_MX6UL) || defined(CFG_MX6ULL)
/* 128K OCRAM */
#define TRUSTZONE_OCRAM_START 0x918000
#elif defined(CFG_MX6DL)
#define TRUSTZONE_OCRAM_START 0x918000
#elif defined(CFG_MX6QP)
#define TRUSTZONE_OCRAM_START 0x938000
#elif defined(CFG_MX6SX)
#define TRUSTZONE_OCRAM_START 0x8f8000
#elif defined(CFG_MX6SL)
#define TRUSTZONE_OCRAM_START 0x918000
#elif defined(CFG_MX6SLL)
#define TRUSTZONE_OCRAM_START 0x918000
#else
/* 256K OCRAM */
#define TRUSTZONE_OCRAM_START 0x938000
#endif
3. in driver/tzc380.c, do I need to add ||IS_ENABLED(CFG_MX6S) to the following line?
if (IS_ENABLED(CFG_MX6Q) || IS_ENABLED(CFG_MX6D) ||
IS_ENABLED(CFG_MX6DL))
4. Do I need to add $(call force,CFG_TZC380,y) to the following code in conf.mk?
else ifneq (,$(filter $(PLATFORM_FLAVOR),$(mx6s-flavorlist)))
$(call force,CFG_MX6,y)
$(call force,CFG_MX6S,y)
$(call force,CFG_TEE_CORE_NB_CORE,1)
thank you all!
Hai
I found the problem, when compiling OP-TEE, the first character in MACHINE is dropped. for an example, imx6solosabresd is changed to mx6solosabresd. so to support the imx6solosabresd board, use mx6solosabresd instead of imx6solosabresd in conf.mk