1. 02 May, 2007 7 commits
    • Jean Delvare's avatar
      PCI: Cleanup the includes of <linux/pci.h> · 6473d160
      Jean Delvare authored
      I noticed that many source files include <linux/pci.h> while they do
      not appear to need it. Here is an attempt to clean it all up.
      
      In order to find all possibly affected files, I searched for all
      files including <linux/pci.h> but without any other occurence of "pci"
      or "PCI". I removed the include statement from all of these, then I
      compiled an allmodconfig kernel on both i386 and x86_64 and fixed the
      false positives manually.
      
      My tests covered 66% of the affected files, so there could be false
      positives remaining. Untested files are:
      
      arch/alpha/kernel/err_common.c
      arch/alpha/kernel/err_ev6.c
      arch/alpha/kernel/err_ev7.c
      arch/ia64/sn/kernel/huberror.c
      arch/ia64/sn/kernel/xpnet.c
      arch/m68knommu/kernel/dma.c
      arch/mips/lib/iomap.c
      arch/powerpc/platforms/pseries/ras.c
      arch/ppc/8260_io/enet.c
      arch/ppc/8260_io/fcc_enet.c
      arch/ppc/8xx_io/enet.c
      arch/ppc/syslib/ppc4xx_sgdma.c
      arch/sh64/mach-cayman/iomap.c
      arch/xtensa/kernel/xtensa_ksyms.c
      arch/xtensa/platform-iss/setup.c
      drivers/i2c/busses/i2c-at91.c
      drivers/i2c/busses/i2c-mpc.c
      drivers/media/video/saa711x.c
      drivers/misc/hdpuftrs/hdpu_cpustate.c
      drivers/misc/hdpuftrs/hdpu_nexus.c
      drivers/net/au1000_eth.c
      drivers/net/fec_8xx/fec_main.c
      drivers/net/fec_8xx/fec_mii.c
      drivers/net/fs_enet/fs_enet-main.c
      drivers/net/fs_enet/mac-fcc.c
      drivers/net/fs_enet/mac-fec.c
      drivers/net/fs_enet/mac-scc.c
      drivers/net/fs_enet/mii-bitbang.c
      drivers/net/fs_enet/mii-fec.c
      drivers/net/ibm_emac/ibm_emac_core.c
      drivers/net/lasi_82596.c
      drivers/parisc/hppb.c
      drivers/sbus/sbus.c
      drivers/video/g364fb.c
      drivers/video/platinumfb.c
      drivers/video/stifb.c
      drivers/video/valkyriefb.c
      include/asm-arm/arch-ixp4xx/dma.h
      sound/oss/au1550_ac97.c
      
      I would welcome test reports for these files. I am fine with removing
      the untested files from the patch if the general opinion is that these
      changes aren't safe. The tested part would still be nice to have.
      
      Note that this patch depends on another header fixup patch I submitted
      to LKML yesterday:
        [PATCH] scatterlist.h needs types.h
        http://lkml.org/lkml/2007/3/01/141
      
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      Cc: Badari Pulavarty <pbadari@us.ibm.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      6473d160
    • Jean Delvare's avatar
      PCI: scatterlist.h needs types.h · a9dfd281
      Jean Delvare authored
      
      
      Most architectures' scatterlist.h use the type dma_addr_t, but omit to
      include <asm/types.h> which defines it.  This could lead to build failures,
      so let's add the missing includes.
      Signed-off-by: default avatarJean Delvare <khali@linux-fr.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      a9dfd281
    • Kristen Carlson Accardi's avatar
      PCI: fix multiple definition of `queue_pushbutton_work' · e325e1f0
      Kristen Carlson Accardi authored
      
      
      Fix duplicate names in shpchp and pciehp.
      Signed-off-by: default avatarKristen Carlson Accardi <kristen.c.accardi@intel.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      
      e325e1f0
    • Kenji Kaneshige's avatar
      pciehp: Adapt to device driver model · 92333526
      Kenji Kaneshige authored
      
      
      This patch adapts PCIEHP driver to PCI device driver model.
      Signed-off-by: default avatarKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
      Signed-off-by: default avatarKristen Carlson Accardi <kristen.c.accardi@intel.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      92333526
    • Kenji Kaneshige's avatar
      pciehp: Event handling rework · 5d386e1a
      Kenji Kaneshige authored
      
      
      The event handler of PCIEHP driver is unnecessarily very complex. In
      addition, current event handler can only a fixed number of events at
      the same time, and some of events would be lost if several number of
      events happened at the same time.
      
      This patch simplify the event handler using 'work queue', and it also
      fix the above-mentioned issue.
      Signed-off-by: default avatarKenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
      Signed-off-by: default avatarKristen Carlson Accardi <kristen.c.accardi@intel.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      5d386e1a
    • Brian King's avatar
      pci: New PCI-E reset API · f7bdd12d
      Brian King authored
      
      
      Adds a new API which can be used to issue various types
      of PCI-E reset, including PCI-E warm reset and PCI-E hot reset.
      This is needed for an ipr PCI-E adapter which does not properly
      implement BIST. Running BIST on this adapter results in PCI-E
      errors. The only reliable reset mechanism that exists on this
      hardware is PCI Fundamental reset (warm reset). Since driving
      this type of reset is architecture unique, this provides the
      necessary hooks for architectures to add this support.
      Signed-off-by: default avatarBrian King <brking@linux.vnet.ibm.com>
      Acked-by: default avatarLinas Vepstas <linas@austin.ibm.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      f7bdd12d
    • Mitch Williams's avatar
      PCI: Flush MSI-X table writes · 988cbb15
      Mitch Williams authored
      
      
      This patch fixes a kernel bug which is triggered when using the
      irqbalance daemon with MSI-X hardware.
      
      Because both MSI-X interrupt messages and MSI-X table writes are posted,
      it's possible for them to cross while in-flight.  This results in
      interrupts being received long after the kernel thinks they're disabled,
      and in interrupts being sent to stale vectors after rebalancing.
      
      This patch performs a read flush after writes to the MSI-X table for
      mask and unmask operations.  Since the SMP affinity is set while
      the interrupt is masked, and since it's unmasked immediately after,
      no additional flushes are required in the various affinity setting
      routines.
      
      This patch has been validated with (unreleased) network hardware which
      uses MSI-X.
      
      Revised with input from Eric Biederman.
      Signed-off-by: default avatarMitch Williams <mitch.a.williams@intel.com>
      Acked-by: default avatar"Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      988cbb15
  2. 30 Apr, 2007 33 commits