MPU definition for SC000

My controller (SC000) allows you to use the MPU. To do this, I have to select the region number in one register, and then write the settings (size, properties) into another register.
Please, advise me how to link (convert) these settings with the settings in FreeRTOS-MPU?

Looking at this document, the programmer’s model for SC000 is same as Cortex-M0. If you want to statically program the MPU, then you can do that after boot up either by directly accessing the MPU registers or using CMSIS APIs. If you are looking for a FreeRTOS MPU port where you can have per task MPU regions, we do not have that for Cortex-M0. What do you want to achieve using MPU?

If you use the first option (static definition), how in this case link the MPU region and the space allocated for the task?

First of all, you need to define what you want to achieve. An example is -

  1. Mark all the data region as not executable to prevent code injection attacks.
  2. Mark all the code region as read only.

You can then program 2 MPU regions achieve the above.

If you want to have separate MPU regions for each task, then you need MPU support in the FreeRTOS port so that the MPU is programmed on every context switch.

What problem are you trying to solve?