linux: Set MMU page size for ARC processors
authorAlexey Brodkin <Alexey.Brodkin@synopsys.com>
Tue, 17 Dec 2019 13:15:28 +0000 (16:15 +0300)
committerYann E. MORIN <yann.morin.1998@free.fr>
Sun, 22 Dec 2019 20:55:36 +0000 (21:55 +0100)
commitd7a771816d938f9d8d04b24fd07d2f3f52e73f99
tree49283338b7640af7197906b9b15907df091962ff
parent8f1ab93f3c35c0945d170eed178fa18b8332b5bd
linux: Set MMU page size for ARC processors

ARC processors have configurable size of MMU page. This configuration
happens during ASIC design and couldn't be changed in final silicone
not to mention runtime changes.

Given PAGE_SIZE macro is used a lot throughout the Linux kernel sources
we just hardcode a required value during the kernel configuration.

We used to support different MMU page sizes for ARC in Buildroot for
quite some time now but so far we only tweaked uClibc on the matter.
That left us with the kernel configured with whatever was in used defconfig.

In most of real cases that's OK because typically we're building firmware
for a particular ASIC which is supposed to have a unique kernel defconfig.
But if we're dealing with FPGA-based boards or even simlators like
Synopsys DesignWare nSIM or QEMU it's possible to have dfferent MMU page
size configured in that target mostly for the sake of testing.

And so we're trying to solve 2 problems here:
 1. Make sure both user-space (via libc settings) and the Linux kernel
    are "on the same page", i.e. expect to use the same MMU page size.
 2. Simplify process of testing different page sizes.
    As now we first need to set page size in Buildroot and then in the
    kernel via "make linux-configure" or via Kconfig fragment.

Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com>
[yann.morin.1998@free.fr: simplify the conditions]
Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
linux/linux.mk