freeRTOS for cortex-A7

niti19 wrote on Wednesday, April 06, 2016:


Currently I am using i.MUX6Ul evk board. I want to run RTOS on it. It is having cortex-A7 architecture. Does freeRTOS available for the same?

rtel wrote on Wednesday, April 06, 2016:

How easy this will be depends on the interrupt controller used. If its a standard ARM GIC then you can follow the information on this page:

and you can use the Zynq demo as an example (doesn’t matter that the Zynq is A9 rather than A7):

If your chip has a proprietary interrupt controller then you can follow the information on this page:

and use something like the SAMA5 demo as an example:

First of all I am a newbie to RTOSes. Sorry if i ask any silly questions.
I am using i.MX 7D SOM from toradex which has i.MX 7Dual Processors from NXP. I want to start development on it for Free RTOS to understand better and eventually develop a solution with it.
I want to understand the process of porting and running FreeRtos on my Hardware’s Cortex®-A7 core not cortex M core.
My final case could be a single core processor also in future.
Can anyone guide me how to proceed on this?

First, I am fairly sure there are ports based on the Cortex-A7 core that would be better starting points then a Cortex-M core. One big difference is that the Cortex-M cores had enough resources built into the core processor that one port could work as a baseline for an entire system of cores, but in the A series, some parts, like the timer and interrupt controller aren’t as bundled with the core, and so different A7 processors may need somewhat different port layers to handle those devices.

Can you please guide me to any port which will be a good starting point for me?

There are several official ports to Cortex-A9 and A7 chips. The A9 instructions are also relevant to A7 cores. The thing to watch out for is the interrupt controller - if it is a standard ARM GIC then you probably don’t need to do much, but many A7 chips have propitiatory interrupt controllers.: