]> git.baikalelectronics.ru Git - kernel.git/commit
PCI/cardbus: Add a fixup hook and fix powerpc
authorBenjamin Herrenschmidt <benh@kernel.crashing.org>
Wed, 9 Dec 2009 06:52:13 +0000 (17:52 +1100)
committerJesse Barnes <jbarnes@virtuousgeek.org>
Thu, 17 Dec 2009 02:55:51 +0000 (18:55 -0800)
commite8bc3b60d9d0d45c138641b056ea0f83d3cd05f3
tree2ed80140487cd68e539c55876ba361199a4b92c1
parent3c6eb4ba232e42db83c647e5a0ee356004e032ac
PCI/cardbus: Add a fixup hook and fix powerpc

The cardbus code creates PCI devices without ever going through the
necessary fixup bits and pieces that normal PCI devices go through.

There's in fact a commented out call to pcibios_fixup_bus() in there,
it's commented because ... it doesn't work.

I could make pcibios_fixup_bus() do the right thing on powerpc easily
but I felt it cleaner instead to provide a specific hook pci_fixup_cardbus
for which a weak empty implementation is provided by the PCI core.

This fixes cardbus on powerbooks and probably all other PowerPC
platforms which was broken completely for ever on some platforms and
since 2.6.31 on others such as PowerBooks when we made the DMA ops
mandatory (since those are setup by the fixups).

Acked-by: Dominik Brodowski <linux@dominikbrodowski.net>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
arch/powerpc/kernel/pci-common.c
drivers/pci/pci.c
drivers/pcmcia/cardbus.c
include/linux/pci.h