Hi all,
I am trying to enable TrustZone for imx6 processor. As earlier, I have modified Genode for imx6 and it was successfully running. And I am able to run Genode in secure world as well as in Normal world on imx6 tablet.
Now i am trying to run Linux (3.10 without dtb) in the Normal world. I tried the follow the following steps:
1) I simply followed the steps mentioned on the following link http://boundarydevices.com/cross-compile-i-mx6-kernel-using-ltib-toolchain/ which generate uImage which is successfully running on imx6 with LOADADDR=30008000.
2) I simply copied this uImage as "linux" in <Genode>/<Build_Dir>/bin/ folder
3) run the modified tz_vmm script and build the uImage.
I run the uImage on the imx6 board.Following is the generated output:
9928768 bytes read in 523 ms (18.1 MiB/s) ## Booting kernel from Legacy Image at 10800000 ... Image Name: Image Type: ARM Linux Kernel Image (uncompressed) Data Size: 9928704 Bytes = 9.5 MiB Load Address: 10001000 Entry Point: 10001000 Verifying Checksum ... OK Loading Kernel Image ... OK
Starting kernel ...
kernel initialized Genode 14.11 int main(): --- create local services --- int main(): --- start init --- int main(): transferred 246 MB to init int main(): --- init created, waiting for exit condition --- [init] parent provides [init] service "ROM" [init] service "RAM" [init] service "IRQ" [init] service "IO_MEM" [init] service "CAP" [init] service "PD" [init] service "RM" [init] service "CPU" [init] service "LOG" [init] service "SIGNAL" [init] service "VM" [init] child "tz_vmm" [init] RAM quota: 3932160 [init] ELF binary: tz_vmm [init] priority: 0 [init -> tz_vmm] Start virtual machine ...
I am using Genode-14.11 and u-boot 14.07 to run this image. I set the NONSECURE_RAM_BASE=0x30000000 and kernel_offset=8000. I know i haven't modified linux according to the normal world but at least kernel should start in normal world.
What could be the reason or some thing wrong in the steps due to which Linux is not able to start in Normal world ?
Thanks in advance. Regards
Chirag Garg IIT Madras , Rise Lab