(toppers-users 3553) Re: Issues on SafeG/NT-/T-ASP/IDEA6410 execution

Daniel Sangorrin daniel.sangorrin @ gmail.com
2011年 10月 7日 (金) 16:59:51 JST


Dear Roman,

Thanks for your reply and feedback about SafeG.

> your proposed changes are working but have a "strange" side effect.
> Depending on the length (number of chars) of the output the execution is
> running properly or not. From my point of view it has something to do

Please, could you provide a simple example code so I can reproduce the problem?

> with the scheduling of the RTOS on the secure world and switches between
> the two worlds. Could you provide me some information about the
> scheduling of the RTOS and especially how the "jump" is done from the
> nt-rtos to the t-rtos? In the source code I only see the call inside the
> btask towards the secure monitor/non-secure world.

T -> NT: as you said, through the btask, which has the lowest priority.
NT -> T: whenever a FIQ interrupt occurs, SafeG switches to the T RTOS.

You can see a graphic in the slide number 9 here:
http://www.artist-embedded.org/docs/Events/2010/OSPERT/slides/1-1_NU_OSPERT2010.pdf

That switch is labeled as path number 2.

> Could you also explain the changes (idea6410nt.h) in more detail?
There was a problem with the interrupt priority settings that caused
the timer interrupt to be masked.

> A further question is if you could provide a short instruction to run a
> native linux kernel on the nt-side? The available instruction describes
> patching the linux kernel but unfortunately the
> safeg-linux-XXXXX-all.patch is not included for the IDEA 6410 board.
> Using the provided patches in the idea 6410 folder, a large number of
> errors occur while executing the patch on the android linux kernel sources.

You have to apply the idea 6410 patches in order (0001, 0002 ...) to a
vanilla kernel (kernel 2.6.29 in this case). You cannot apply it to
other kernel versions.

Best regards
Daniel