14 Nov, 2005

3 commits

  • Missing include.

    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • drivers/pci/hotplug/pciehp_hpc.c:221: parse error before "pcie_isr"
    drivers/pci/hotplug/pciehp_hpc.c:221: warning: type defaults to `int' in declaration of `pcie_isr'
    drivers/pci/hotplug/pciehp_hpc.c:221: warning: data definition has no type or storage class
    drivers/pci/hotplug/pciehp_hpc.c: In function `hpc_release_ctlr':
    drivers/pci/hotplug/pciehp_hpc.c:715: implicit declaration of function `free_irq'
    drivers/pci/hotplug/pciehp_hpc.c: At top level:
    drivers/pci/hotplug/pciehp_hpc.c:839: parse error before "pcie_isr"
    drivers/pci/hotplug/pciehp_hpc.c:840: warning: return type defaults to `int'
    drivers/pci/hotplug/pciehp_hpc.c: In function `pcie_isr':
    drivers/pci/hotplug/pciehp_hpc.c:850: `IRQ_NONE' undeclared (first use in this function)
    drivers/pci/hotplug/pciehp_hpc.c:850: (Each undeclared identifier is reported only once
    drivers/pci/hotplug/pciehp_hpc.c:850: for each function it appears in.)
    drivers/pci/hotplug/pciehp_hpc.c:979: `IRQ_HANDLED' undeclared (first use in this function)
    drivers/pci/hotplug/pciehp_hpc.c: In function `pcie_init':
    drivers/pci/hotplug/pciehp_hpc.c:1362: implicit declaration of function `request_irq'

    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • (akpm: _machine is some ppc64 thing - this is a powerpc-only driver)

    Signed-off-by: Serge Hallyn
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    akpm@osdl.org
     

11 Nov, 2005

17 commits

  • Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    Rajesh Shah
     
  • MSI hardcoded delivery mode to use logical delivery mode. Recently
    x86_64 moved to use physical mode addressing to support physflat mode.
    With this mode enabled noticed that my eth with MSI werent working.

    msi_address_init() was hardcoded to use logical mode for i386 and x86_64.
    So when we switch to use physical mode, things stopped working.

    Since anyway we dont use lowest priority delivery with MSI, its always
    directed to just a single CPU. Its safe and simpler to use
    physical mode always, even when we use logical delivery mode for IPI's
    or other ioapic RTE's.

    Signed-off-by: Ashok Raj
    Signed-off-by: Greg Kroah-Hartman

    Ashok Raj
     
  • This patch contains the following cleanups:
    - access.c should #include "pci.h" for getting the prototypes of it's
    global functions
    - hotplug/shpchp_pci.c: make the needlessly global function
    program_fw_provided_values() static

    Signed-off-by: Adrian Bunk
    Signed-off-by: Greg Kroah-Hartman

    Adrian Bunk
     
  • This patch contains the driver bits for enabling DLPAR and PCI Hotplug
    for the new OF-based PCI probe. This functionality was regressed when
    the new PCI approach was introduced. Please apply if appropriate.

    Signed-off-by: John Rose
    Signed-off-by: Greg Kroah-Hartman

    John Rose
     
  • A nice feature of sysfs is that it can create the symlink from the
    driver to the module that is contained in it.

    It requires that the device_driver.owner is set, what is not the
    case for many PCI drivers.

    This patch allows pci_register_driver to set automatically the
    device_driver.owner for any PCI driver.

    Credits to Al Viro who suggested the method.

    Signed-off-by: Laurent Riffard
    Signed-off-by: Greg Kroah-Hartman
    --

    drivers/ide/setup-pci.c | 12 +++++++-----
    drivers/pci/pci-driver.c | 9 +++++----
    include/linux/ide.h | 3 ++-
    include/linux/pci.h | 10 ++++++++--
    4 files changed, 22 insertions(+), 12 deletions(-)

    Laurent riffard
     
  • store_new_id() should not be (and cannot be) inline;
    the function pointer is stored in a device_attribute table.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Greg Kroah-Hartman

    Randy Dunlap
     
  • Move the PPC fixup for old NCR 810 controllers to generic quirks -
    it's needed for Alpha, x86 and other architectures that use
    setup-bus.c.

    Thanks to Jay Estabrook for pointing out the issue.

    Signed-off-by: Ivan Kokshaysky
    Signed-off-by: Greg Kroah-Hartman

    Ivan Kokshaysky
     
  • The quirk names for VIA 686 are mistyped in 2.6.14 (686 vs 868). S3 868
    influence? :) Here is a patch to correct them.

    Signed-off-by: Meelis Roos
    Signed-off-by: Greg Kroah-Hartman

    Meelis Roos
     
  • The current pciehp implementation reports a power-fail error
    even if the condition has cleared by the time the corresponding
    interrupt handling code gets a chance to run. This patch
    fixes this problem.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • This patch further tweaks how we request control of hotplug
    controller hardware from BIOS. We first search the ACPI namespace
    corresponding to a specific hotplug controller looking for an
    _OSC or OSHP method. On failure, we successively move to the
    ACPI parent object, till we hit the highest level host bridge
    in the hierarchy. This allows for different types of BIOS's
    which place the _OSC/OSHP methods at various places in the acpi
    namespace, while still not encroaching on the namespace of
    some other root level host bridge.

    This patch also introduces a new load time option (pciehp_force)
    that allows us to bypass all _OSC/OSHP checking. Not supporting
    these methods seems to be be the most common ACPI firmware problem
    we've run into. This will still _not_ allow the pciehp driver to
    work correctly if the BIOS really doesn't support pciehp (i.e. if
    it doesn't generate a hotplug interrupt). Use this option with
    caution. Some BIOS's may deliberately not build any _OSC/OSHP
    methods to make sure it retains control the hotplug hardware.
    Using the pciehp_force parameter for such systems can lead to
    two separate entities trying to control the same hardware.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • This patch tweaks the way pciehp requests control of the hotplug
    hardware from BIOS. It now tries to invoke the ACPI _OSC method
    for a specific hotplug controller only, rather than walking the
    entire acpi namespace invoking all possible _OSC methods under
    all host bridges. This allows us to gain control of each hotplug
    controller individually, even if BIOS fails to give us control of
    some other hotplug controller in the system.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Reduce the number of debug messages generated if pciehp debug is
    enabled. I tried to restrict this to removing debug messages that
    are either early-driver-debug type messages, or print information
    that can be inferred through other debug prints.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Remove un-necessary header includes, remove dead code, remove
    some hardcoded constants...

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • State information is currently stored in per-slot as well as
    per-pci-function data structures in pciehp. There's a lot of
    overlap in the information kept, and some of it is never used.
    This patch consolidates the state information to per-slot and
    eliminates unused data structures. The biggest change is to
    eliminate the pci_func structure and the code around managing
    its lists.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Reduce the PCI Express hotplug driver's dependence on ACPI.
    We don't walk the acpi namespace anymore to build a list of
    bridges and devices. We go to ACPI only to run the _OSC or
    _OSHP methods to transition control of hotplug hardware from
    system BIOS to the hotplug driver, and to run the _HPP
    method to get hotplug device parameters like cache line size,
    latency timer and SERR/PERR enable from BIOS.

    Note that one of the side effects of this patch is that pciehp
    does not automatically enable the hot-added device or its DMA
    bus mastering capability now. It expects the device driver to
    do that. This may break some drivers and we will have to fix
    them as they are reported.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • This patch converts the pci express hotplug controller driver
    to use the PCI core for resource management. This eliminates a
    lot of duplicated code and integrates pciehp with the system's
    normal PCI handling code.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Some devices have more than one capability of the same type. For
    example, the PCI header for the PathScale InfiniPath looks like:

    04:01.0 InfiniBand: Unknown device 1fc1:000d (rev 02)
    Subsystem: Unknown device 1fc1:000d
    Flags: bus master, fast devsel, latency 0, IRQ 193
    Memory at fea00000 (64-bit, non-prefetchable) [size=2M]
    Capabilities: [c0] HyperTransport: Slave or Primary Interface
    Capabilities: [f8] HyperTransport: Interrupt Discovery and Configuration

    There are _two_ HyperTransport capabilities, and the PathScale driver
    wants to look at both of them.

    The current pci_find_capability() API doesn't work for this, since it
    only allows us to get to the first capability of a given type. The
    patch below introduces a new pci_find_next_capability(), which can be
    used in a loop like

    for (pos = pci_find_capability(pdev, );
    pos;
    pos = pci_find_next_capability(pdev, pos, )) {
    /* ... */
    }

    Signed-off-by: Roland Dreier
    Signed-off-by: Matthew Wilcox
    Signed-off-by: Greg Kroah-Hartman

    Roland Dreier
     

10 Nov, 2005

1 commit

  • 19-rpaphp-crashing.patch

    This patch fixes a bug related to dlpar PHB add, after a PHB removal.

    -- The crash was due to the PHB not having a pci_dn structure yet,
    when the phb is being added.

    This code survived testing, of adding and removeig the PHB and all slots
    underneath it, 17 times so far, as of this writing.

    Signed-off-by: Linas Vepstas
    Signed-off-by: Paul Mackerras

    Linas Vepstas
     

07 Nov, 2005

2 commits

  • This is the remaining misc drivers/ part of the big kfree cleanup patch.

    Remove pointless checks for NULL prior to calling kfree() in misc files in
    drivers/.

    Signed-off-by: Jesper Juhl
    Acked-by: Aristeu Sergio Rozanski Filho
    Acked-by: Roland Dreier
    Acked-by: Pierre Ossman
    Acked-by: Jean Delvare
    Acked-by: Greg Kroah-Hartman
    Acked-by: Len Brown
    Acked-by: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesper Juhl
     
  • Fix more include file problems that surfaced since I submitted the previous
    fix-missing-includes.patch. This should now allow not to include sched.h
    from module.h, which is done by a followup patch.

    Signed-off-by: Tim Schmielau
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     

31 Oct, 2005

4 commits

  • I recently picked up my older work to remove unnecessary #includes of
    sched.h, starting from a patch by Dave Jones to not include sched.h
    from module.h. This reduces the number of indirect includes of sched.h
    by ~300. Another ~400 pointless direct includes can be removed after
    this disentangling (patch to follow later).
    However, quite a few indirect includes need to be fixed up for this.

    In order to feed the patches through -mm with as little disturbance as
    possible, I've split out the fixes I accumulated up to now (complete for
    i386 and x86_64, more archs to follow later) and post them before the real
    patch. This way this large part of the patch is kept simple with only
    adding #includes, and all hunks are independent of each other. So if any
    hunk rejects or gets in the way of other patches, just drop it. My scripts
    will pick it up again in the next round.

    Signed-off-by: Tim Schmielau
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Tim Schmielau
     
  • Typo fix: dots appearing after a newline in printk strings.

    Signed-off-by: Jean Delvare
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jean Delvare
     
  • Add CONFIG_X86_32 for i386. This allows selecting options that only apply
    to 32-bit systems.

    (X86 && !X86_64) becomes X86_32
    (X86 || X86_64) becomes X86

    Signed-off-by: Brian Gerst
    Cc: Sam Ravnborg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Brian Gerst
     
  • Petr Vandrovec correctly points out that the SMB region of the PIIX4 is
    just 16 bytes, not 32.

    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

29 Oct, 2005

13 commits

  • This moves the PCI quirk handling for USB host controllers from the
    PCI directory to the USB directory. Follow-on patches will need to:

    (a) merge these copies with the originals in the HCD reset methods.
    they don't wholly agree, despite doing the very same thing; and

    (b) eventually change it so "usb-handoff" is the default, to help
    get more robust USB/BIOS/input/... interactions.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    drivers/Makefile | 2
    drivers/pci/quirks.c | 253 ---------------------------------------
    drivers/usb/Makefile | 1
    drivers/usb/host/Makefile | 5
    drivers/usb/host/pci-quirks.c | 272 ++++++++++++++++++++++++++++++++++++++++++
    5 files changed, 280 insertions(+), 253 deletions(-)

    David Brownell
     
  • PCI: add descriptions for missing function parameters.
    Eliminate all kernel-doc warnings here.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Greg Kroah-Hartman

    Randy Dunlap
     
  • Allocate resources for adapters with bridges on them.

    Signed-off-by: Kristen Carlson Accardi
    Signed-off-by: Greg Kroah-Hartman

    Kristen Accardi
     
  • Add a warning to pci driver registration code so that we know
    whether we have drivers using the obsolete driver shutdown
    method.

    Signed-off-by: Russell King
    Signed-off-by: Greg Kroah-Hartman

    Russell King
     
  • At unload time, the shpchp driver does not remove sysfs files
    it had created in the driver's probe entry point. This patch
    fixes this problem.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Reduce the number of debug messages generated if shpchp debug is
    enabled. I tried to restrict this to removing debug messages that
    are either early-driver-debug type messages, or print information
    that can be inferred through other debug prints.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Remove un-necessary header includes, remove dead code, remove
    some type casts, receive function return in the correct data
    type...

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • State information is currently stored in per-slot as well as
    per-pci-function data structures in shpchp. There's a lot of
    overlap in the information kept, and some of it is never used.
    This patch consolidates the state information to per-slot and
    eliminates unused data structures. The biggest change is to
    eliminate the pci_func structure and the code around managing
    its lists.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • This patch eliminates saving the PCI config header for devices
    in hotplug capable slots. We now use the PCI core to get the
    specific parts of the config header as required.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • The shpc driver registers its probe function for all pci-pci
    bridges in the system. Not all of them will be shpc capable, so
    look for this capability early in the probe function and return
    if there's no work to do on this bridge. The old shpc driver
    did some initialization work on all bridges before detecting
    that shpc is not supported and unwinds the work it's already done
    in that case.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Reduce the SHPC hotplug driver's dependence on ACPI. We don't
    walk the acpi namespace anymore to build a list of bridges and
    devices. The remaining interaction with ACPI is to run the
    _OSHP method to transition control of hotplug hardware from
    system BIOS to the shpc hotplug driver, and to run the _HPP
    method to get hotplug device parameters like cache line size,
    latency timer and SERR/PERR enable from BIOS.

    Note that one of the side effects of this patch is that shpchp
    does not enable the hot-added device or its DMA bus mastering
    automatically now. It expects the device driver to do that.
    This may break some drivers and we will have to fix them as
    they are reported.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • Info about resources assigned to PCI devices is already available
    through sysfs and pci utilities. There's no need for shpchp to
    create another sysfs file to display the same information.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com
     
  • This patch converts the standard hotplug controller driver to use
    the PCI core for resource management. This eliminates a whole lot
    of duplicated code, and integrates shpchp in the system's normal
    PCI handling code.

    Signed-off-by: Rajesh Shah
    Signed-off-by: Greg Kroah-Hartman

    rajesh.shah@intel.com