Stephen Kitt a70b95c017 agp: ensure GART has an address before enabling it
Some BIOSs (eg.  the AMI BIOS on the Asus P4P800 motherboard) don't
initialise the GART address, and pcibios_assign_resources() can ignore it
because it can be marked as a host bridge (see
https://bugzilla.kernel.org/show_bug.cgi?id=24392#c5 for details).  This
was handled correctly up to 2.6.35, but the pci_enable_device() cleanup in
2.6.36 96576a9e1a0cdb8 ("agp: intel-agp: do not use PCI resources before
pci_enable_device()") means that the kernel tries to enable the GART
before assigning it an address; in such cases the GART overlaps with other
device assignments and ends up being disabled.

This patch fixes https://bugzilla.kernel.org/show_bug.cgi?id=24392

Note that I imagine efficeon-agp.c probably has the same problem, but
I can't test that and I'd like to make sure this patch is suitable for
-stable (since 2.6.36 and 2.6.37 are affected).

Signed-off-by: Stephen Kitt <steve@sk2.org>
Cc: Bjorn Helgaas <bjorn.helgaas@hp.com>
Cc: Maciej Rutecki <maciej.rutecki@gmail.com>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
Cc: Kulikov Vasiliy <segooon@gmail.com>
Cc: Florian Mickler <florian@mickler.org>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Dave Airlie <airlied@redhat.com>
2011-02-04 09:43:57 +10:00
..
2010-10-15 15:53:27 +02:00
2010-08-10 13:47:40 -07:00
2008-07-20 17:12:36 -07:00
2010-08-10 13:47:40 -07:00
2011-01-20 17:02:14 -08:00
2008-02-07 08:42:25 -08:00
2010-10-15 15:53:27 +02:00
2008-04-30 08:29:43 -07:00
2010-10-15 15:53:27 +02:00
2011-01-13 08:03:23 -08:00
2010-12-17 15:18:05 +01:00
2010-08-10 13:47:40 -07:00
2008-07-20 17:12:38 -07:00
2009-02-22 09:23:02 -08:00
2011-01-10 08:51:44 -08:00
2008-07-20 17:12:38 -07:00
2010-10-15 15:53:27 +02:00
2010-10-22 10:20:02 -07:00