ramips: mt7621: add support for memory detection
authorChuanhong Guo <gch981213@gmail.com>
Wed, 10 Jul 2019 03:05:41 +0000 (11:05 +0800)
committerChuanhong Guo <gch981213@gmail.com>
Thu, 11 Jul 2019 14:11:21 +0000 (22:11 +0800)
commit6d91ddf5175d2eac3c4bc4a404cc0f5dd44cf25b
tree16eb15416091742ef88a4d8727fd89b4a7e8d4af
parent98d04dc4cf8b7ca9183a75566b299e0ccfac5a68
ramips: mt7621: add support for memory detection

mt7621 has the following memory map:
0x0-0x1c000000: lower 448m memory
0x1c000000-0x2000000: peripheral registers
0x20000000-0x2400000: higher 64m memory

detect_memory_region in arch/mips/kernel/setup.c only add the first
memory region and isn't suitable for 512m memory detection because
it may accidentally read the memory area for peripheral registers.

This commit adds memory detection capability for mt7621:
1. add the highmem area when 512m is detected.
2. guard memcmp from accessing peripheral registers:
     This only happens when some weird user decided to change
     kernel load address to 256m or higher address. Since this
     is a quite unusual case, we just skip 512m testing and return
     256m as memory size.

Signed-off-by: Chuanhong Guo <gch981213@gmail.com>
target/linux/ramips/patches-4.14/105-mt7621-memory-detect.patch [new file with mode: 0644]