Baremetal multicore execution on T2080 (e6500)

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Baremetal multicore execution on T2080 (e6500)

553 Views
roberto_santall
Contributor I

Hey everyone,

We have are facing some problems trying to achieve multicore execution on baremetal T2080. We are able to do this through the CodeWarrior TAP, but we need a way of doing it programmatically (from the first core) to implement some kind of task scheduling.

I have found some references on E6500RM and T2080RM to a unit called MPIC (Multicore programmable interrupt controller) which should be able to signal other cores to wake them up from the sleep state. Some peeking into the linux kernel also showed up that this is the way of proceeding. However, the unit itself seems very complex to set up, and we could really appreciate some hints or guidelines on how to achieve a basic "Tell Core n to start executing code on address X".

0 Kudos
2 Replies

461 Views
Pavel
NXP Employee
NXP Employee

NXP offers CodeWarrior 10.5.1 for the T2080. This CodeWarrior supports project for multicore baremetal application.

See the Targeting_PA_Processors.pdf file. Evaluation version of CodeWarrior provides full functionality during one month.

 

Use CodeWarrior for your task. See possibility of CodeWarrior on the following page:

https://www.nxp.com/support/developer-resources/software-development-tools/codewarrior-development-t...


Have a great day,
Pavel Chubakov

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos

461 Views
roberto_santall
Contributor I

Hello Pavel,

Thank you very much for your response. However, as I indicated on the first paragraph:

We are able to do this through the CodeWarrior TAP, but we need a way of doing it programmatically (from the first core) to implement some kind of task scheduling.

We're looking at a way of spinning up codes programatically, since we need some sort of a microkernel capable of managing the different cores and threads on the e6500 processor.

0 Kudos