armv7-r: do not allocate MPU region manually
authorHeesub Shin <heesub.shin@samsung.com>
Tue, 14 Mar 2017 08:24:32 +0000 (17:24 +0900)
committerHeesub Shin <heesub.shin@samsung.com>
Mon, 17 Apr 2017 10:08:46 +0000 (19:08 +0900)
commit04ac309ad7cda0258bfe884b6b7f021e8ae27ee8
tree68299474104b3e9c47e1f55ce5dc46b6ca36d918
parent6dc7dc1f028862dd66fb020dc7207024abec311c
armv7-r: do not allocate MPU region manually

MPU region configurations are specific to chipset or boards. This means
that the number of regions supported or how to configure each region
depends on the chipset or board. In other words, common OS layer should
not assume which region would have a specific usage. For this reasons,
current implementation of MPU is completely wrong and broken.

As a preparation step for correcting it, this commit fixes the code that
manually allocates MPU region identifiers. mpu_allocregion() should be
used instead. This change might break the protected build, but it was
already broken and malfunctioning by itself. So, this commit does not
introduce any harm or cause any functional differences at all, though it
seems to alter quite a lot.

It also removes redundant calls to mpu_control().

Change-Id: I747a87c566f671ad198c3e20a97e9f929cb45eb5
Signed-off-by: Heesub Shin <heesub.shin@samsung.com>
os/arch/arm/src/armv7-r/mpu.h
os/arch/arm/src/s5j/s5j_boot.c