[ARM] Orion: make PCI handling code deal with Cardbus slots
authorLennert Buytenhek <buytenh@wantstofly.org>
Thu, 26 Jun 2008 15:12:50 +0000 (17:12 +0200)
committerNicolas Pitre <nico@cam.org>
Mon, 30 Jun 2008 20:04:44 +0000 (16:04 -0400)
commitda01bba3cb8814b17d809e09c301e1dad86fec87
tree0605379dac7ae8b9de458b2d46230c839b319c34
parent1338760329c586e0141831099e15f5c336dd9c1d
[ARM] Orion: make PCI handling code deal with Cardbus slots

The Cardbus connector does not have an IDSEL signal, and Cardbus
cards are always the intended target of configuration transactions
on their local PCI bus.  This means that if the Orion's PCI bus
signals are hooked up to a Cardbus slot, the same set of PCI
functions will will appear 31 times, for each of the PCI device
IDs 1-31 (ID 0 is the host bridge).

This patch adds a function to the Orion PCI handling code that board
support code can call to enable Cardbus mode.  When Cardbus mode is
enabled, configuration transactions on the PCI local bus are only
allowed to PCI IDs 0 (host bridge) and 1 (cardbus device).

Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
arch/arm/mach-orion5x/common.h
arch/arm/mach-orion5x/pci.c