1. 23 Nov, 2014 2 commits
  2. 03 Jan, 2014 1 commit
  3. 12 Aug, 2013 1 commit
    • Thomas Petazzoni's avatar
      PCI: remove ARCH_SUPPORTS_MSI kconfig option · ebd97be6
      Thomas Petazzoni authored
      Now that we have weak versions for each of the PCI MSI architecture
      functions, we can actually build the MSI support for all platforms,
      regardless of whether they provide or not architecture-specific
      versions of those functions. For this reason, the ARCH_SUPPORTS_MSI
      hidden kconfig boolean becomes useless, and this patch gets rid of it.
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Acked-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Acked-by: default avatarBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Tested-by: default avatarDaniel Price <daniel.price@gmail.com>
      Tested-by: default avatarThierry Reding <thierry.reding@gmail.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: linuxppc-dev@lists.ozlabs.org
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: linux390@de.ibm.com
      Cc: linux-s390@vger.kernel.org
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: H. Peter Anvin <hpa@zytor.com>
      Cc: x86@kernel.org
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Fenghua Yu <fenghua.yu@intel.com>
      Cc: linux-ia64@vger.kernel.org
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: linux-mips@linux-mips.org
      Cc: David S. Miller <davem@davemloft.net>
      Cc: sparclinux@vger.kernel.org
      Cc: Chris Metcalf <cmetcalf@tilera.com>
      Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
  4. 03 Jun, 2013 1 commit
  5. 20 May, 2013 1 commit
    • Thomas Petazzoni's avatar
      pci: PCIe driver for Marvell Armada 370/XP systems · 45361a4f
      Thomas Petazzoni authored
      This driver implements the support for the PCIe interfaces on the
      Marvell Armada 370/XP ARM SoCs. In the future, it might be extended to
      cover earlier families of Marvell SoCs, such as Dove, Orion and
      The driver implements the hw_pci operations needed by the core ARM PCI
      code to setup PCI devices and get their corresponding IRQs, and the
      pci_ops operations that are used by the PCI core to read/write the
      configuration space of PCI devices.
      Since the PCIe interfaces of Marvell SoCs are completely separate and
      not linked together in a bus, this driver sets up an emulated PCI host
      bridge, with one PCI-to-PCI bridge as child for each hardware PCIe
      In addition, this driver enumerates the different PCIe slots, and for
      those having a device plugged in, it sets up the necessary address
      decoding windows, using the mvebu-mbus driver.
      Signed-off-by: default avatarThomas Petazzoni <thomas.petazzoni@free-electrons.com>
      Acked-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      Signed-off-by: default avatarJason Cooper <jason@lakedaemon.net>
  6. 10 Sep, 2012 1 commit
  7. 24 Feb, 2012 1 commit
  8. 06 Dec, 2011 1 commit
  9. 31 Oct, 2011 2 commits
  10. 14 Oct, 2011 3 commits
  11. 12 Apr, 2011 1 commit
  12. 04 Mar, 2011 1 commit
    • Narendra_K@Dell.com's avatar
      PCI: Export ACPI _DSM provided firmware instance number and string name to sysfs · 6058989b
      Narendra_K@Dell.com authored
      This patch exports ACPI _DSM (Device Specific Method) provided firmware
      instance number and string name of PCI devices as defined by 'PCI
      Firmware Specification Revision 3.1' section 4.6.7.( DSM for Naming a
      PCI or PCI Express Device Under Operating Systems) to sysfs.
      New files created are:
        /sys/bus/pci/devices/.../label which contains the firmware name for
      the device in question, and
        /sys/bus/pci/devices/.../acpi_index which contains the firmware device type
      instance for the given device.
      cat /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/acpi_index
      cat /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0/label
      Embedded Broadcom 5709C NIC 1
      cat /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.1/acpi_index
      cat /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.1/label
      Embedded Broadcom 5709C NIC 2
      The ACPI _DSM provided firmware 'instance number' and 'string name' will
      be given priority if the firmware also provides 'SMBIOS type 41 device
      type instance and string'.
      Signed-off-by: default avatarMatthew Garrett <mjg@redhat.com>
      Signed-off-by: default avatarJordan Hargrave <jordan_hargrave@dell.com>
      Signed-off-by: default avatarNarendra K <narendra_k@dell.com>
      Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
  13. 05 Jan, 2011 1 commit
  14. 18 Oct, 2010 1 commit
  15. 11 May, 2010 1 commit
  16. 23 Feb, 2010 1 commit
  17. 04 Nov, 2009 2 commits
  18. 20 Mar, 2009 1 commit
  19. 07 Jan, 2009 1 commit
    • Chris Wright's avatar
      PCI: pci-stub module to reserve pci device · c70e0d9d
      Chris Wright authored
      When doing device assignment with KVM there's currently nothing to
      protect the device from having a driver in the host as well as the guest.
      This trivial module just binds the pci device on the host to a stub
      driver so that a real host driver can't bind to the device.  It has no
      pci id table, it supports only dynamic ids.
       # echo "8086 10f5" > /sys/bus/pci/drivers/pci-stub/new_id
       # echo -n 0000:00:19.0 > /sys/bus/pci/drivers/e1000e/unbind
       # echo -n 0000:00:19.0 > /sys/bus/pci/drivers/pci-stub/bind
       # ls -l /sys/bus/pci/devices/0000:00:19.0/driver
       lrwxrwxrwx 1 root root 0 2008-11-25 19:10 /sys/bus/pci/devices/0000:00:19.0/driver -> ../../../bus/pci/drivers/pci-stub
      Cc: "Kay, Allen M" <allen.m.kay@intel.com>
      Cc: "Nakajima, Jun" <jun.nakajima@intel.com>
      Signed-off-by: default avatarChris Wright <chrisw@sous-sol.org>
      Acked-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
      Signed-off-by: default avatarJesse Barnes <jbarnes@virtuousgeek.org>
  20. 05 Nov, 2007 1 commit
  21. 03 May, 2007 2 commits
  22. 11 Feb, 2007 1 commit
    • David S. Miller's avatar
      [SPARC64]: Add PCI MSI support on Niagara. · 35a17eb6
      David S. Miller authored
      This is kind of hokey, we could use the hardware provided facilities
      much better.
      MSIs are assosciated with MSI Queues.  MSI Queues generate interrupts
      when any MSI assosciated with it is signalled.  This suggests a
      two-tiered IRQ dispatch scheme:
      	MSI Queue interrupt --> queue interrupt handler
      		MSI dispatch --> driver interrupt handler
      But we just get one-level under Linux currently.  What I'd like to do
      is possibly stick the IRQ actions into a per-MSI-Queue data structure,
      and dispatch them form there, but the generic IRQ layer doesn't
      provide a way to do that right now.
      So, the current kludge is to "ACK" the interrupt by processing the
      MSI Queue data structures and ACK'ing them, then we run the actual
      handler like normal.
      We are wasting a lot of useful information, for example the MSI data
      and address are provided with ever MSI, as well as a system tick if
      available.  If we could pass this into the IRQ handler it could help
      with certain things, in particular for PCI-Express error messages.
      The MSI entries on sparc64 also tell you exactly which bus/device/fn
      sent the MSI, which would be great for error handling when no
      registered IRQ handler can service the interrupt.
      We override the disable/enable IRQ chip methods in sun4v_msi, so we
      have to call {mask,unmask}_msi_irq() directly from there.  This is
      another ugly wart.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
  23. 05 Jan, 2007 1 commit
  24. 01 Dec, 2006 1 commit
  25. 30 Nov, 2006 2 commits
  26. 03 Nov, 2006 1 commit
    • Adrian Bunk's avatar
      PCI: Let PCI_MULTITHREAD_PROBE depend on BROKEN · bb44c308
      Adrian Bunk authored
      PCI_MULTITHREAD_PROBE is an interesting feature, but in its current state
      it seems to be more of a trap for users who accidentally enable it.
      This patch lets PCI_MULTITHREAD_PROBE depend on BROKEN for 2.6.19.
      The intention is to get this patch reversed in -mm as soon as it's in
      Linus' tree, and reverse it for 2.6.20 or 2.6.21 after the fallout of
      in-kernel problems PCI_MULTITHREAD_PROBE causes got fixed.
      (akpm: I get enough bug reports already)
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
  27. 11 Oct, 2006 1 commit
    • Adrian Bunk's avatar
      [PATCH] HT_IRQ must depend on PCI · fbab41cc
      Adrian Bunk authored
      CONFIG_PCI=n, CONFIG_HT_IRQ=y results in the following compile error:
        LD      vmlinux
      arch/i386/mach-generic/built-in.o: In function `apicid_to_node':
      summit.c:(.text+0x53): undefined reference to `apicid_2_node'
      arch/i386/kernel/built-in.o: In function `arch_setup_ht_irq':
      (.text+0xcf79): undefined reference to `write_ht_irq_low'
      arch/i386/kernel/built-in.o: In function `arch_setup_ht_irq':
      (.text+0xcf85): undefined reference to `write_ht_irq_high'
      arch/i386/kernel/built-in.o: In function `k7nops':
      alternative.c:(.data+0x1358): undefined reference to `mask_ht_irq'
      alternative.c:(.data+0x1360): undefined reference to `unmask_ht_irq'
      make[1]: *** [vmlinux] Error 1
      Bug report by Jesper Juhl.
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      Cc: "Eric W. Biederman" <ebiederm@xmission.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
  28. 04 Oct, 2006 2 commits
    • Eric W. Biederman's avatar
      [PATCH] htirq: tidy up the htirq code · 95d77884
      Eric W. Biederman authored
      This moves the declarations for the architecture helpers into
      include/linux/htirq.h from the generic include/linux/pci.h.  Hopefully this
      will make this distinction clearer.
      htirq.h is included where it is needed.
      The dependency on the msi code is fixed and removed.
      The Makefile is tidied up.
      Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
      Cc: Ingo Molnar <mingo@elte.hu>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Andi Kleen <ak@suse.de>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Greg KH <greg@kroah.com>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
    • Eric W. Biederman's avatar
      [PATCH] Initial generic hypertransport interrupt support · 8b955b0d
      Eric W. Biederman authored
      This patch implements two functions ht_create_irq and ht_destroy_irq for
      use by drivers.  Several other functions are implemented as helpers for
      arch specific irq_chip handlers.
      The driver for the card I tested this on isn't yet ready to be merged.
      However this code is and hypertransport irqs are in use in a few other
      places in the kernel.  Not that any of this will get merged before 2.6.19
      Because the ipath-ht400 is slightly out of spec this code will need to be
      generalized to work there.
      I think all of the powerpc uses are for a plain interrupt controller in a
      chipset so support for native hypertransport devices is a little less
      However I think this is a half way decent model on how to separate arch
      specific and generic helper code, and I think this is a functional model of
      how to get the architecture dependencies out of the msi code.
      [akpm@osdl.org: Kconfig fix]
      Signed-off-by: default avatarEric W. Biederman <ebiederm@xmission.com>
      Cc: Greg KH <greg@kroah.com>
      Cc: Andi Kleen <ak@muc.de>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
  29. 26 Sep, 2006 1 commit
    • Greg Kroah-Hartman's avatar
      PCI: enable driver multi-threaded probe · 0f397f86
      Greg Kroah-Hartman authored
      This provides a build and run-time option to turn on multhreaded probe
      for all PCI drivers.  It can cause bad problems on multi-processor
      machines that take a while to find their root disks, and play havoc on
      machines that don't use persistant device names for block or network
      But it can cause speedups on some machines, my tiny laptop's boot goes
      up by 0.4 seconds, and my desktop boots up several seconds faster.
      Use at your own risk!!!
      Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@suse.de>
  30. 23 Mar, 2006 2 commits
  31. 08 Sep, 2005 1 commit