[PATCH 2/6] ARM: add Highbank core platform support
From: arnd@arndb.de (Arnd Bergmann)
Date: 2011-08-19 13:45:53
On Friday 19 August 2011, Dave Martin wrote:
quoted
quoted
+static void __init highbank_map_io(void) +{ + unsigned long base; + + /* Get SCU base */ + asm("mrc p15, 4, %0, c15, c0, 0" : "=r" (base)); + + highbank_io_desc[0].pfn = __phys_to_pfn(base); + iotable_init(highbank_io_desc, ARRAY_SIZE(highbank_io_desc)); +} +It's a great demo that we can get this base address from CA9 itself. However I'm wondering if we have to do so, since this address should be known for given SoC. Can we put this known base into device tree and map it when needed? In that case, we can save another static mapping.Since device tree is mainly about providing data to describe system components that are not discoverable, maybe it is better after all not to put this address in the device tree. Discovery feels like the best approach, where possible.
It's a bit silly to leave it out of the device tree when you otherwise describe all major components. However, I agree that if you can probe the value from hardware, there is no need to read it from there. Arnd