I try implement trustzone on collage-mx6q board, now there is a simple secure kernel and secure os can work.
after secure parts startup, it will switch to non-secure status to run uboot and kernel.
now the uboot can work, but the kernel can work only without SMP setting , it means I can only use one processor.
part log:
Linux version 3.0.35-2026-geaaf30e-g679aa00-dirty
......
Calibrating delay loop... 1581.05 BogoMIPS (lpj=7905280)
pid_max: default: 32768 minimum: 301
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
hw perfevents: enabled with ARMv7 Cortex-A9 PMU driver, 7 counters available
CPU1: failed to come online
CPU1: failed to come online
I setting some parts what need to do in my opinion.
1. CSU all reg setting 0x00ff00ff
2. SCU SCU Access Control Register is 0xf, SCU Non-secure Access Control Register is 0xfff
3. GIC-v1 ICDISR0-n reg, PPI and SGI all setting non-secure,, SPI almost setting non-secure(except some need secure)
4. some reg in cp15 and PL310 can not setting in non-secure, i have use smc to fix it.
but i have no idea about "CPU1: failed to come online"
is there any suggestion about smp kernel can not work?
Please refer to Chapter 3 (Multicore Startup) of “iMX6_Firmware_Guide.pdf” in the Platform SDK
regarding details of multicore using.
In particular, please check SRC accessibility for normal world.
Have a great day,
Yuri
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi:Yuri
The SRC accessibility for normal world is ok,I try it long time ago,
because the datasheet has nothing about it's access permission secure or non-secure
so i think it doesn't matter about my question.
thank you for your response
let's keep on discussing it
Best Regards
steven-shen