MPC5777C MMU configuration for calibration

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

MPC5777C MMU configuration for calibration

Jump to solution
862 Views
darq
Contributor III

Hello,

I'm wondering if the MMU can be reconfigured during runtime by the application or should it only be configured by the startup code of a bootloader? If it is possible to reconfigure it during runtime, what should the process look like? Should the existing entry be deleted and a new one written in the same place or can specific entry just be overwritten?

Best regards

Tags (2)
0 Kudos
Reply
1 Solution
848 Views
petervlna
NXP TechSupport
NXP TechSupport

Hello,

I'm wondering if the MMU can be reconfigured during runtime by the application or should it only be configured by the startup code of a bootloader?

It is application dependent. I recommend to configure MMU at startup, as you need to initialize more than default 4kB of memory for some meaningful execution.

If it is possible to reconfigure it during runtime, what should the process look like?

You should take care not to use the regions you are reconfiguring.

Should the existing entry be deleted and a new one written in the same place or can specific entry just be overwritten?

You can simply overwrite it. Just make sure that code is not executed from such part and also there are no conflicts of regions with your application.

Best regards,

Peter

View solution in original post

0 Kudos
Reply
5 Replies
111 Views
letuanvu
Contributor I

Hi Petervlna,

Is it possible to overwrite 1 entry by others entries with some overlaps

letuanvu_0-1761812433938.png

 

0 Kudos
Reply
87 Views
letuanvu
Contributor I

Sorry Petervlna, pls ignore my previous comment, the picture was not the correct one. pls checkout the below one

Is it possible to partially overwrite 1 entry (e.g 64KB) by 4 others entries ( 16KB each) with different properties

e.g: like this

First:

0x40060000 -> 0x4006FFFF - 64KB - Cache_Inhibit

Then:

0x40060000 -> 0x40064000 - 16KB - Cachable

0x40064000 -> 0x40068000 - 16KB - Cache_Inhibit

0x40068000 -> 0x4006C000 - 16KB - Cache_Inhibit

0x4006C000 -> 0x4006FFFF - 16KB - Cache_Inhibit

 

letuanvu_2-1761814669468.png

 

Thank you

 

0 Kudos
Reply
849 Views
petervlna
NXP TechSupport
NXP TechSupport

Hello,

I'm wondering if the MMU can be reconfigured during runtime by the application or should it only be configured by the startup code of a bootloader?

It is application dependent. I recommend to configure MMU at startup, as you need to initialize more than default 4kB of memory for some meaningful execution.

If it is possible to reconfigure it during runtime, what should the process look like?

You should take care not to use the regions you are reconfiguring.

Should the existing entry be deleted and a new one written in the same place or can specific entry just be overwritten?

You can simply overwrite it. Just make sure that code is not executed from such part and also there are no conflicts of regions with your application.

Best regards,

Peter

0 Kudos
Reply
847 Views
darq
Contributor III

Thank you for your response.

 

The idea was to use MMU for calibration switching during engine testing so it would have to be performed when the engine is running. Do you think this is good idea?

 

Best regards

Tags (2)
0 Kudos
Reply
837 Views
petervlna
NXP TechSupport
NXP TechSupport

Hello,

I see no issue here as long as you will make sure executed code in not running from regions being reconfigured and the changes wont affect code access in case it is requested by your SW.

You cannot change mapping of actively used region by code as you will get exception.

Best regards,

Peter

0 Kudos
Reply