Subject: [PATCH] ARM: OMAP: Fix map_io for Amstrad E3

From: [email-masked] (Tony Lindgren)
Date: Wed, 9 Nov 2011 16:04:22 -0800

* Aaro Koskinen <[email-masked]> [111109 15:25]:
> Hi,
> 
> On 10.11.2011, at 1.39, Russell King - ARM Linux wrote:
> >On Wed, Nov 09, 2011 at 03:25:25PM -0800, Tony Lindgren wrote:
> >>Commit 7b88e62f5d219a86d81bdf4388012c97dc42e8f8 (ARM: OMAP1: Use
> >>generic
> >>map_io, init_early and init_irq) changed omap1 to use generic map_io.
> >>
> >>Looks like I missed one board though. Fix this by adding a custom
> >>map_io for Amstrad E3.
> >>
> >>Reported-by: Aaro Koskinen <[email-masked]>
> >>Signed-off-by: Tony Lindgren <[email-masked]>
> >>
> >>---
> >>Untested, does this help?
> >>--- a/arch/arm/mach-omap1/board-ams-delta.c
> >>+++ b/arch/arm/mach-omap1/board-ams-delta.c
> >>@@ -302,8 +302,6 @@ static void __init ams_delta_init(void)
> >> 	omap_cfg_reg(J19_1610_CAM_D6);
> >> 	omap_cfg_reg(J18_1610_CAM_D7);
> >>
> >>-	iotable_init(ams_delta_io_desc, ARRAY_SIZE(ams_delta_io_desc));
> >>-
> >
> >This is definitely wrong.  Using iotable_init() after map_io has
> >returned
> >has (and remains) a serious bug - doing so may _appear_ to work
> >but as it
> >doesn't obtain its memory from the standard kernel memory
> >allocators, it
> >will lead to duplicate usage of that memory.
> 
> Also, the patch did not help. It still hangs like before.

Hmm that patch is needed for sure but sounds like there's also
something else wrong.. Can you try to git bisect it?

Tony