1. 05 12月, 2009 1 次提交
  2. 21 3月, 2009 1 次提交
  3. 20 3月, 2009 3 次提交
    • R
      PCI/PCIe portdrv: Fix allocation of interrupts · b43d4513
      Rafael J. Wysocki 提交于
      If MSI-X interrupt mode is used by the PCI Express port driver, too
      many vectors are allocated and it is not ensured that the right
      vectors will be used for the right services.  Namely, the PCI Express
      specification states that both PCI Express native PME and PCI Express
      hotplug will always use the same MSI or MSI-X message for signalling
      interrupts, which implies that the same vector will be used by both
      of them.  Also, the VC service does not use interrupts at all.
      Moreover, is not clear which of the vectors allocated by
      pci_enable_msix() in the current code will be used for PME and
      hotplug and which of them will be used for AER if all of these
      services are configured.
      
      For these reasons, rework the allocation of interrupts for PCI
      Express ports so that if MSI-X are enabled, the right vectors will be
      used for the right purposes.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Reviewed-by: NHidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      b43d4513
    • R
      PCI: PCIe portdrv: Remove struct pcie_port_service_id · 22106368
      Rafael J. Wysocki 提交于
      The PCI Express port driver uses 'struct pcie_port_service_id' for
      matching port service devices and drivers, but this structure
      contains fields that duplicate information from the port device
      itself (vendor, device, subvendor, subdevice) and fields that are not
      used by any existing port service driver (class, class_mask,
      drvier_data).  Also, both existing port service drivers (AER and
      PCIe HP) don't even use the vendor and device fields for device
      matching.  Therefore 'struct pcie_port_service_id' can be removed
      altogether and the only useful members of it (port_type, service) can
      be introduced directly into the port service device and port service
      driver structures.  That simplifies the code quite a bit and reduces
      its size.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      22106368
    • R
      PCI: PCIe portdrv: Use driver data to simplify code · 1bf83e55
      Rafael J. Wysocki 提交于
      PCI Express port driver extension, as defined by struct
      pcie_port_device_ext in portdrv.h, is allocated and initialized, but
      never used (it also is never freed).  Extend it to hold the PCI Express
      port type as well as the port interrupt mode, change its name and use it
      to simplify the code in portdrv_core.c .
      
      Additionally, remove the redundant interrupt_mode member of struct
      pcie_device defined in include/linux/pcieport_if.h .
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org>
      1bf83e55
  4. 21 10月, 2008 1 次提交
  5. 19 10月, 2006 1 次提交
  6. 27 9月, 2006 1 次提交
  7. 24 3月, 2006 1 次提交
  8. 02 7月, 2005 1 次提交
  9. 17 4月, 2005 2 次提交