linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/8] ARM PCI cleanups
@ 2012-04-26 10:16 Russell King - ARM Linux
  2012-04-26 10:16 ` [PATCH 1/8] ARM: PCI: remove unused sys->hw Russell King
                   ` (7 more replies)
  0 siblings, 8 replies; 14+ messages in thread
From: Russell King - ARM Linux @ 2012-04-26 10:16 UTC (permalink / raw)
  To: linux-arm-kernel

This patch set cleans up some of the ARM PCI support code, mostly
targetting the way the swizzling works.

We used to interpret a NULL swizzle method as meaning "no swizzling".
However, the common case is to use the standard PCI swizzle function.
Lets instead make the default swizzle method (i.e. NULL) mean the PCI
swizzle function, and those cases which really do want no swizzling
have to provide their own function.

Arguably, the 'no swizzle' case is wrong, because the swizzle is there
to deal with PCI cards which themselves have PCI-to-PCI bridges on, and
these won't work without this support.

We also provide sys->private_data for platforms to use.  Some PCIe
support code ignored this and used all kinds of horrid tricks to get
at their private data.  This patch set switches them to use this private
data pointer instead, as they should have done in the first place.

Finally, we provide a standard bus scanning method, with the PCI
configuration ops via our sysdata instead of having every platform
provide a function where the only difference is the 'ops' pointer
provided to pci_scan_root_bus().

While I realize that some platforms touched by this set are going to
be removed, that removal is not in my tree, and avoiding this will
cause those platforms to break.  So they're included in these updates
at the moment.

 arch/arm/common/it8152.c                       |    7 +----
 arch/arm/common/via82c505.c                    |   11 +------
 arch/arm/include/asm/hardware/it8152.h         |    2 +-
 arch/arm/include/asm/mach/pci.h                |   17 ++++-------
 arch/arm/kernel/bios32.c                       |   37 ++++++++++++++++-------
 arch/arm/mach-cns3xxx/pcie.c                   |   12 +------
 arch/arm/mach-dove/pcie.c                      |   24 ++++-----------
 arch/arm/mach-footbridge/cats-pci.c            |    9 ++++-
 arch/arm/mach-footbridge/dc21285.c             |    7 +----
 arch/arm/mach-footbridge/ebsa285-pci.c         |    3 +-
 arch/arm/mach-footbridge/netwinder-pci.c       |    3 +-
 arch/arm/mach-footbridge/personal-pci.c        |    2 +-
 arch/arm/mach-integrator/pci.c                 |   19 ++---------
 arch/arm/mach-integrator/pci_v3.c              |    8 +----
 arch/arm/mach-iop13xx/iq81340mc.c              |    1 -
 arch/arm/mach-iop13xx/iq81340sc.c              |    1 -
 arch/arm/mach-iop32x/em7210.c                  |    3 +-
 arch/arm/mach-iop32x/glantank.c                |    3 +-
 arch/arm/mach-iop32x/iq31244.c                 |    6 +--
 arch/arm/mach-iop32x/iq80321.c                 |    3 +-
 arch/arm/mach-iop32x/n2100.c                   |    3 +-
 arch/arm/mach-iop33x/iq80331.c                 |    3 +-
 arch/arm/mach-iop33x/iq80332.c                 |    3 +-
 arch/arm/mach-ixp2000/enp2611.c                |    9 +-----
 arch/arm/mach-ixp2000/include/mach/platform.h  |    2 +-
 arch/arm/mach-ixp2000/ixdp2400.c               |    2 +-
 arch/arm/mach-ixp2000/ixdp2800.c               |    2 +-
 arch/arm/mach-ixp2000/ixdp2x01.c               |    2 +-
 arch/arm/mach-ixp2000/pci.c                    |    8 +----
 arch/arm/mach-ixp23xx/include/mach/platform.h  |    2 +-
 arch/arm/mach-ixp23xx/ixdp2351.c               |    2 +-
 arch/arm/mach-ixp23xx/pci.c                    |    6 ----
 arch/arm/mach-ixp23xx/roadrunner.c             |    2 +-
 arch/arm/mach-ixp4xx/avila-pci.c               |    3 +-
 arch/arm/mach-ixp4xx/common-pci.c              |    6 ----
 arch/arm/mach-ixp4xx/coyote-pci.c              |    3 +-
 arch/arm/mach-ixp4xx/dsmg600-pci.c             |    3 +-
 arch/arm/mach-ixp4xx/fsg-pci.c                 |    3 +-
 arch/arm/mach-ixp4xx/gateway7001-pci.c         |    3 +-
 arch/arm/mach-ixp4xx/goramo_mlr.c              |    3 +-
 arch/arm/mach-ixp4xx/gtwx5715-pci.c            |    3 +-
 arch/arm/mach-ixp4xx/include/mach/platform.h   |    2 +-
 arch/arm/mach-ixp4xx/ixdp425-pci.c             |    3 +-
 arch/arm/mach-ixp4xx/ixdpg425-pci.c            |    3 +-
 arch/arm/mach-ixp4xx/miccpt-pci.c              |    3 +-
 arch/arm/mach-ixp4xx/nas100d-pci.c             |    3 +-
 arch/arm/mach-ixp4xx/nslu2-pci.c               |    3 +-
 arch/arm/mach-ixp4xx/vulcan-pci.c              |    3 +-
 arch/arm/mach-ixp4xx/wg302v2-pci.c             |    3 +-
 arch/arm/mach-kirkwood/pcie.c                  |   16 ++++------
 arch/arm/mach-ks8695/pci.c                     |    9 +-----
 arch/arm/mach-mv78xx0/pcie.c                   |   24 ++++-----------
 arch/arm/mach-orion5x/db88f5281-setup.c        |    1 -
 arch/arm/mach-orion5x/dns323-setup.c           |    1 -
 arch/arm/mach-orion5x/kurobox_pro-setup.c      |    1 -
 arch/arm/mach-orion5x/mss2-setup.c             |    1 -
 arch/arm/mach-orion5x/rd88f5181l-fxo-setup.c   |    1 -
 arch/arm/mach-orion5x/rd88f5181l-ge-setup.c    |    1 -
 arch/arm/mach-orion5x/rd88f5182-setup.c        |    1 -
 arch/arm/mach-orion5x/rd88f6183ap-ge-setup.c   |    1 -
 arch/arm/mach-orion5x/terastation_pro2-setup.c |    1 -
 arch/arm/mach-orion5x/ts209-setup.c            |    1 -
 arch/arm/mach-orion5x/ts409-setup.c            |    1 -
 arch/arm/mach-orion5x/wnr854t-setup.c          |    1 -
 arch/arm/mach-orion5x/wrt350n-v2-setup.c       |    1 -
 arch/arm/mach-pxa/cm-x2xx-pci.c                |    3 +-
 arch/arm/mach-sa1100/pci-nanoengine.c          |    8 +----
 arch/arm/mach-shark/pci.c                      |    3 +-
 arch/arm/mach-tegra/pcie.c                     |    1 -
 arch/arm/mach-versatile/pci.c                  |   13 +-------
 arch/arm/plat-iop/pci.c                        |    8 +----
 71 files changed, 112 insertions(+), 260 deletions(-)

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2012-05-21 17:29 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-04-26 10:16 [PATCH 0/8] ARM PCI cleanups Russell King - ARM Linux
2012-04-26 10:16 ` [PATCH 1/8] ARM: PCI: remove unused sys->hw Russell King
2012-05-21 14:35   ` Thierry Reding
2012-05-21 14:57     ` Russell King - ARM Linux
2012-05-21 17:29       ` Thierry Reding
2012-04-26 10:17 ` [PATCH 2/8] ARM: PCI: footbridge: provide a 'no swizzle' function for CATS Russell King
2012-04-26 10:17 ` [PATCH 3/8] ARM: PCI: integrator: use common PCI swizzle Russell King
2012-04-26 10:17 ` [PATCH 4/8] ARM: PCI: versatile: fix PCI interrupt setup Russell King
2012-04-26 10:18 ` [PATCH 5/8] ARM: PCI: get rid of pci_std_swizzle() Russell King
2012-04-28 15:21   ` Krzysztof Halasa
2012-04-26 10:18 ` [PATCH 6/8] ARM: PCI: provide a default bus scan implementation Russell King
2012-04-28 15:22   ` Krzysztof Halasa
2012-04-26 10:18 ` [PATCH 7/8] ARM: PCI: dove/kirkwood/mv78xx0: use sys->private_data Russell King
2012-04-26 10:19 ` [PATCH 8/8] ARM: PCI: remove per-pci_hw list of buses Russell King

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).