1
0
Fork 0
alistair23-linux/arch/arm/mach-footbridge
Mike Frysinger 6287e73198 ARM: footbridge: fix overlapping PCI mappings
Commit 8ef6e6201b (ARM: footbridge: use
fixed PCI i/o mapping) broke booting on my netwinder.  Before that,
everything boots fine.  Since then, it crashes on boot.

With earlyprintk, I see it BUG-ing like so:
kernel BUG at lib/ioremap.c:27!
Internal error: Oops - BUG: 0 [#1] ARM
...
[<c0139b54>] (ioremap_page_range+0x128/0x154) from [<c02e6a6c>] (dc21285_setup+0xd0/0x114)
[<c02e6a6c>] (dc21285_setup+0xd0/0x114) from [<c02e4874>] (pci_common_init+0xa0/0x298)
[<c02e4874>] (pci_common_init+0xa0/0x298) from [<c02e793c>] (netwinder_pci_init+0xc/0x18)
[<c02e793c>] (netwinder_pci_init+0xc/0x18) from [<c02e27d0>] (do_one_initcall+0xb4/0x180)
...

Russell points out it's because of overlapping PCI mappings that was
added with the aforementioned commit.  Rob thought the code would re-use
the static mapping, but that turns out to not be the case and instead
hits the BUG further down.

After deleting this hunk as suggested by Russel, the system boots up fine
again and all my PCI devices work (IDE, ethernet, the DC21285).

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Acked-by: Rob Herring <rob.herring@calxeda.com>
Cc: stable@vger.kernel.org	# v3.5+
Signed-off-by: Olof Johansson <olof@lixom.net>
2013-07-22 20:00:47 -07:00
..
include/mach ARM: remove unused arch_decomp_wdog() 2013-01-11 10:54:03 +08:00
Kconfig ARM: fix CONFIG_VIRT_TO_BUS handling 2013-03-18 13:49:57 +00:00
Makefile ARM: mach-footbridge: retire custom LED code 2012-08-01 11:22:10 +08:00
Makefile.boot ARM: 7022/1: allow to detect conflicting zreladdrs 2011-10-17 09:12:40 +01:00
cats-hw.c reboot: arm: prepare reboot_mode for moving to generic kernel code 2013-07-09 10:33:29 -07:00
cats-pci.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
common.c reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
common.h reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
dc21285-timer.c Merge branch 'clocksource/cleanup' into next/cleanup 2013-01-14 10:20:02 -08:00
dc21285.c ARM: footbridge: fix overlapping PCI mappings 2013-07-22 20:00:47 -07:00
dma.c Merge branch 'dma' into devel 2009-02-21 21:42:50 +00:00
ebsa285-pci.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
ebsa285.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
isa-irq.c arm: Fold irq_set_chip/irq_set_handler 2011-03-29 14:47:58 +02:00
isa-rtc.c ARM: footbridge: trim down old ISA rtc setup 2009-12-24 13:39:18 +00:00
isa-timer.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00
isa.c ARM: footbridge: trim down old ISA rtc setup 2009-12-24 13:39:18 +00:00
netwinder-hw.c reboot: arm: change reboot_mode to use enum reboot_mode 2013-07-09 10:33:29 -07:00
netwinder-pci.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
personal-pci.c ARM: PCI: provide a default bus scan implementation 2012-05-13 17:12:17 +01:00
personal.c ARM: delete struct sys_timer 2012-12-24 09:36:38 -07:00