booting android in normal world: imx53 sabre

rijurekha at ...71... rijurekha at ...71...
Thu Nov 10 23:26:06 CET 2016


Hi,
I am using an IMX53 Sabre tablet, and can run the Genode demo.

I need to reduce the TCB as much as possible, so ran the bare-bone kernel
examples at https://github.com/finallyjustice/imx53qsb-code. for these,
$make gave a kernel.imx which I wrote with dd to SD card. On power up, the
board booted and ran the secure world code, and toggled with normal world,
based on the program logic. There was no separate u-boot for these.

I now need to boot android in NW, from the bare-bone kernel.imx in SW. I
have the android images, the linux kernel uImage and u-boot.bin. Also,
there is an android image in the e-mmc of the tablet, which the genode
demo used.

Can someone explain to me what I need to do - to boot android in NW from
the bare-bone kernel in SW?
(a) According to
http://stackoverflow.com/questions/31589143/boot-linux-in-normal-world,
https://community.nxp.com/thread/308152,
https://community.nxp.com/thread/300696, I need to set some registers. I
can see at
https://github.com/finallyjustice/liboot-tz/blob/master/u-boot/arch/arm/lib/tz-secure.c,
how to do that.

(b) Should I then write the kernel.imx of the compiled bare-bone program
to SD card, followed by the android images, using dd with seek? The i.MX
Android R10.4 User Guide partitioned the SD card into 5 partitions for
data/boot/system/recovery etc. To boot android in NW, will the SD card
need similar formatting and copying of files, and kernel.imx before that?
Is there a way to not put the android image in the SD card, and instead
load it from e-mmc?

(c)
http://stackoverflow.com/questions/29898139/load-two-kernel-images-using-u-boot
uses tftp to copy the image at the specified RAM locations, but how can I
load the android image from the SD card/ emmc to a particular RAM
location? I used ext2load mmc 0:1 0x70800000 image.bin for the genode
demo. So here, will I need u-boot to load the kernel.imx and the android
image to two separate addresses, start the kernel.imx with u-boot go, and
then the "ldr pc, =android address" asm command followed by world switch
will boot android?

Thanks!
Riju




More information about the users mailing list