Genode on IMX6

Vincent Raes raes.vincent at ...9...
Mon Mar 23 00:42:11 CET 2015


Hi,

The problem is that you the file "linux" you're using is an uImage.
For a file to work with the tz_vmm it has to be a pure binary file. This is
due to the wrapper around the uImage. The instruction pointer is set to
30800000 but there are no instructions at that point, instead it finds the
uImage wrapper. And since it has no idea what to do with this, the normal
world never starts executing.

Best regards,
Vincent
Op 22-mrt.-2015 22:00 schreef "chirag garg" <chiragdthinker at ...9...>:

> 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
>
>
> ------------------------------------------------------------------------------
> Dive into the World of Parallel Programming The Go Parallel Website,
> sponsored
> by Intel and developed in partnership with Slashdot Media, is your hub for
> all
> things parallel software development, from weekly thought leadership blogs
> to
> news, videos, case studies, tutorials and more. Take a look and join the
> conversation now. http://goparallel.sourceforge.net/
> _______________________________________________
> genode-main mailing list
> genode-main at lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/genode-main
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20150323/8419d2d5/attachment.html>


More information about the users mailing list