SMP questions (CPU core assign & interrupt Management)

Thomas Kim thomas73.kim at gmail.com
Fri Apr 21 08:47:28 UTC 2017


Dear Sir,

After I completed to test SMP on ZynQ, I am testing SMP on i.MX6Q(Cortex-A9
quad core).

I attached my bspsmp.c code. It is from FreeBSD v11 source
tree(sys/arm/freescale/imx/imx6_mp.c)
I hope that the attached code is useful for everyone.

On referencing, I am beginner about SMP RTEMS. please understand my status.

As I check in rtems example and rtems-libbsd sample code, I guess that CPU
ID assignment is done by RTEMS MPD scheduler automatically according to CPU
load usage. Is it correct ?

At this time, my testing device drivers is manged
using rtems_interrupt_handler_install().
But, I think that rtems_interrupt_handler_install() function have interrupt
handler intializing feature for cpu id 0 only. Is it correct ?

There is senario exmaple in bleow;

CPU ID 0 : task A and Task B is started.
 - task A installed interrupt handler for device A.
 - task B installed interrupt handler for device B.
CPU ID 1 : task C and Task D is started.
 - task C installed interrupt handler for device C.
 - task D installed interrupt handler for device D.
CPU ID 2 : task E is started.
 - task E installed interrupt handler for device E.
CPU ID 3 : task F is started.
 - task F installed interrupt handler for device F.

I guess that even though each tasks install interrupt handler on each core
id, the registered interrupt handlers are managed by core id 0 only.
Is it correct ?

I am confusing that how to manage interrupt handler on each cores ?

Can I use printf() and/or printk() on each cores ?

Please advise me.

Best Regards,
Thomas Kim
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/users/attachments/20170421/164938ab/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bspsmp.c
Type: text/x-csrc
Size: 1280 bytes
Desc: not available
URL: <http://lists.rtems.org/pipermail/users/attachments/20170421/164938ab/attachment.bin>


More information about the users mailing list