Git pull request: mach/vmalloc.h removal, and ioremap optimizations
From: Rob Herring <hidden>
Date: 2011-09-29 20:26:39
On 09/29/2011 01:42 PM, Nicolas Pitre wrote:
On Thu, 29 Sep 2011, Rob Herring wrote:quoted
On 09/29/2011 12:37 PM, Russell King - ARM Linux wrote:quoted
My guess would be: }, { .virtual = IO_ADDRESS(VERSATILE_SCTL_BASE), .pfn = __phys_to_pfn(VERSATILE_SCTL_BASE), .length = SZ_4K * 9, .type = MT_DEVICE }, #ifdef CONFIG_MACH_VERSATILE_AB { .virtual = IO_ADDRESS(VERSATILE_GPIO0_BASE), .pfn = __phys_to_pfn(VERSATILE_GPIO0_BASE), .length = SZ_4K, .type = MT_DEVICE #define VERSATILE_SCTL_BASE 0x101E0000 /* System controller */ #define VERSATILE_GPIO0_BASE 0x101E4000 /* GPIO port 0 */ I don't see why GPIO0 is explicitly listed here.It works for PB and AB with that removed. Here's a patch:[...] Thanks for testing and the patch. I've inserted it in my patch series and pushed the result out.
So it was really Realview PBX I wanted to test my GIC changes on. Well, turns out it's got a similar problem, too. However, the fix for it should perhaps be a bit different. The problem is that the virtual address of REALVIEW_PBX_TILE_GIC_CPU_BASE is not aligned. Then 0x100 + 4KB length overlaps into the DIST_BASE. So do we fix it in the platform or should the core code mask out the lower bits of the virt addr before doing any size calculations? Rob