android_kernel_google_msm/arch/arm/mach-footbridge
Russell King 0045ba1113 ARM: footbridge: fix VGA initialisation
commit 43659222e7 upstream.

It's no good setting vga_base after the VGA console has been
initialised, because if we do that we get this:

Unable to handle kernel paging request at virtual address 000b8000
pgd = c0004000
[000b8000] *pgd=07ffc831, *pte=00000000, *ppte=00000000
0Internal error: Oops: 5017 [#1] ARM
Modules linked in:
CPU: 0 PID: 0 Comm: swapper Not tainted 3.12.0+ #49
task: c03e2974 ti: c03d8000 task.ti: c03d8000
PC is at vgacon_startup+0x258/0x39c
LR is at request_resource+0x10/0x1c
pc : [<c01725d0>]    lr : [<c0022b50>]    psr: 60000053
sp : c03d9f68  ip : 000b8000  fp : c03d9f8c
r10: 000055aa  r9 : 4401a103  r8 : ffffaa55
r7 : c03e357c  r6 : c051b460  r5 : 000000ff  r4 : 000c0000
r3 : 000b8000  r2 : c03e0514  r1 : 00000000  r0 : c0304971
Flags: nZCv  IRQs on  FIQs off  Mode SVC_32  ISA ARM  Segment kernel

which is an access to the 0xb8000 without the PCI offset required to
make it work.

Fixes: cc22b4c185 ("ARM: set vga memory base at run-time")
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
[bwh: Backported to 3.2: adjust context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Cc: Yang Yingliang <yangyingliang@huawei.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2014-04-14 06:44:20 -07:00
..
include/mach ARM: kill off __mem_pci 2012-03-06 21:34:45 -06:00
cats-hw.c ARM: restart: footbridge: use new restart hook 2012-01-05 12:57:12 +00:00
cats-pci.c PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. 2011-07-22 08:26:06 -07:00
common.c ARM: footbridge: fix VGA initialisation 2014-04-14 06:44:20 -07:00
common.h ARM: restart: footbridge: use new restart hook 2012-01-05 12:57:12 +00:00
dc21285-timer.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
dc21285.c ARM: footbridge: fix VGA initialisation 2014-04-14 06:44:20 -07:00
dma.c
ebsa285-leds.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
ebsa285-pci.c PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. 2011-07-22 08:26:06 -07:00
ebsa285.c ARM: restart: footbridge: use new restart hook 2012-01-05 12:57:12 +00:00
isa-irq.c arm: Fold irq_set_chip/irq_set_handler 2011-03-29 14:47:58 +02:00
isa-rtc.c
isa-timer.c arm: Footbridge: Use common i8253 clockevent 2011-07-01 10:37:14 +02:00
isa.c
Kconfig ARM: 7078/1: Footbridge: Sort KConfig Options alphabetically 2011-10-17 09:12:42 +01:00
Makefile
Makefile.boot ARM: 7022/1: allow to detect conflicting zreladdrs 2011-10-17 09:12:40 +01:00
netwinder-hw.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
netwinder-leds.c Disintegrate asm/system.h for ARM 2012-03-28 18:30:01 +01:00
netwinder-pci.c PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. 2011-07-22 08:26:06 -07:00
personal-pci.c PCI: Make the struct pci_dev * argument of pci_fixup_irqs const. 2011-07-22 08:26:06 -07:00
personal.c ARM: restart: footbridge: use new restart hook 2012-01-05 12:57:12 +00:00