Many ARM SoCs have memory as MMIO. However, I have seen other ARM processors that support (like x86, et. al.) the ability to program the memory controller and move this mapping.
Is this a SoC-dependent feature? Or is the ability linked with a particular ARM core IP? The the ability linked with a certain ARM core tier and above (for instance, all Cortex-A)? Or is it up to the SoC vendor to decide if remapping is supported in their Memory Controller?
Specifically, because I am working with A series:
- Is memory remapping supported on Cortex-A and later?
I want to run some firmware that has memory mapped into a location that is not supported by the specific SoC I have, so I was curious to see if it can be moved.
Edit:
Fundamentally, I think the question I am asking is whether or not the presence of an MMU/Memory Controller implies the ability to remap the physical addresses of DRAM like you can on x86 hardware.