1. 15 Dec, 2020 7 commits
    • Bjorn Helgaas's avatar
      Merge branch 'pci/pm' · ff163da9
      Bjorn Helgaas authored
      - Add sysfs attribute for device power state (Maximilian Luz)
      
      - Rename pci_wakeup_bus() to pci_resume_bus() (Mika Westerberg)
      
      - Do not generate wakeup event when runtime resuming bus (Mika Westerberg)
      
      * pci/pm:
        PCI/PM: Do not generate wakeup event when runtime resuming device
        PCI/PM: Rename pci_wakeup_bus() to pci_resume_bus()
        PCI: Add sysfs attribute for device power state
      ff163da9
    • Bjorn Helgaas's avatar
      Merge branch 'pci/msi' · a48e486b
      Bjorn Helgaas authored
      - Disable MSI for broken Pericom PCIe-USB adapter (Andy Shevchenko)
      
      - Move MSI/MSI-X init to msi.c (Bjorn Helgaas)
      
      - Move MSI/MSI-X flags updaters to msi.c (Bjorn Helgaas)
      
      - Warn if we assign 64-bit MSI address to device that only supports 32-bit
        MSI (Vidya Sagar)
      
      * pci/msi:
        PCI/MSI: Set device flag indicating only 32-bit MSI support
        PCI/MSI: Move MSI/MSI-X flags updaters to msi.c
        PCI/MSI: Move MSI/MSI-X init to msi.c
        PCI: Use predefined Pericom Vendor ID
        PCI: Disable MSI for Pericom PCIe-USB adapter
      a48e486b
    • Bjorn Helgaas's avatar
      Merge branch 'pci/misc' · 6db645f9
      Bjorn Helgaas authored
      - Update kernel-doc to match function prototypes (Mauro Carvalho Chehab)
      
      - Bounds-check "pci=resource_alignment=" requests (Bjorn Helgaas)
      
      - Fix integer overflow in "pci=resource_alignment=" requests (Colin Ian
        King)
      
      - Remove unused HAVE_PCI_SET_MWI definition (Heiner Kallweit)
      
      - Reduce pci_set_cacheline_size() message to debug level (Heiner Kallweit)
      
      * pci/misc:
        PCI: Reduce pci_set_cacheline_size() message to debug level
        PCI: Remove unused HAVE_PCI_SET_MWI
        PCI: Fix overflow in command-line resource alignment requests
        PCI: Bounds-check command-line resource alignment requests
        PCI: Fix kernel-doc markup
      
      # Conflicts:
      #	drivers/pci/pci-driver.c
      6db645f9
    • Bjorn Helgaas's avatar
      Merge branch 'pci/hotplug' · 1a76dcea
      Bjorn Helgaas authored
      - Remove unneeded break in ibmphp (Bjorn Helgaas)
      
      - Fix pci_slot_release() NULL pointer dereference (Jubin Zhong)
      
      * pci/hotplug:
        PCI: Fix pci_slot_release() NULL pointer dereference
        PCI: ibmphp: Remove unneeded break
      1a76dcea
    • Bjorn Helgaas's avatar
      Merge branch 'pci/err' · 6a94785f
      Bjorn Helgaas authored
      - Stop writing AER Capability when we don't own it (Sean V Kelley)
      
      - Bind RCEC devices to the Port driver (Qiuxu Zhuo)
      
      - Cache the RCEC RA Capability offset (Sean V Kelley)
      
      - Add pci_walk_bridge() (Sean V Kelley)
      
      - Clear AER status only when we control AER (Sean V Kelley)
      
      - Recover from RCEC AER errors (Sean V Kelley)
      
      - Add pcie_link_rcec() to associate RCiEPs with RCECs (Sean V Kelley)
      
      - Recover from RCiEP AER errors (Sean V Kelley)
      
      - Add pcie_walk_rcec() for RCEC AER handling (Sean V Kelley)
      
      - Add pcie_walk_rcec() for RCEC PME handling (Sean V Kelley)
      
      - Add RCEC AER error injection support (Qiuxu Zhuo)
      
      * pci/err:
        PCI/AER: Add RCEC AER error injection support
        PCI/PME: Add pcie_walk_rcec() to RCEC PME handling
        PCI/AER: Add pcie_walk_rcec() to RCEC AER handling
        PCI/ERR: Recover from RCiEP AER errors
        PCI/ERR: Add pcie_link_rcec() to associate RCiEPs
        PCI/ERR: Recover from RCEC AER errors
        PCI/ERR: Clear AER status only when we control AER
        PCI/ERR: Add pci_walk_bridge() to pcie_do_recovery()
        PCI/ERR: Avoid negated conditional for clarity
        PCI/ERR: Use "bridge" for clarity in pcie_do_recovery()
        PCI/ERR: Simplify by computing pci_pcie_type() once
        PCI/ERR: Simplify by using pci_upstream_bridge()
        PCI/ERR: Rename reset_link() to reset_subordinates()
        PCI/ERR: Cache RCEC EA Capability offset in pci_init_capabilities()
        PCI/ERR: Bind RCEC devices to the Root Port driver
        PCI/AER: Write AER Capability only when we control it
      6a94785f
    • Bjorn Helgaas's avatar
      Merge branch 'pci/enumeration' · e8722508
      Bjorn Helgaas authored
      - Decode PCIe 64 GT/s link speed (Gustavo Pimentel)
      
      - De-duplicate Device IDs in the driver dynamic IDs list (Zhenzhong Duan)
      
      - Return u8 from pci_find_capability() and similar (Puranjay Mohan)
      
      - Return u16 from pci_find_ext_capability() and similar (Bjorn Helgaas)
      
      - Include both device and resource name in config space resources
        (Alexander Lobakin)
      
      - Fix ACPI companion lookup for device 0 on the root bus (Rafael J.
        Wysocki)
      
      * pci/enumeration:
        PCI/ACPI: Fix companion lookup for device 0 on the root bus
        PCI: Keep both device and resource name for config space remaps
        PCI: Return u16 from pci_find_ext_capability() and similar
        PCI: Return u8 from pci_find_capability() and similar
        PCI: Avoid duplicate IDs in driver dynamic IDs list
        PCI: Move pci_match_device() ahead of new_id_store()
        PCI: Decode PCIe 64 GT/s link speed
      e8722508
    • Bjorn Helgaas's avatar
      Merge branch 'pci/aspm' · 1559c4b5
      Bjorn Helgaas authored
      - Save/restore ASPM L1SS Capability for suspend/resume (Vidya Sagar)
      
      * pci/aspm:
        PCI/ASPM: Save/restore L1SS Capability for suspend/resume
      1559c4b5
  2. 11 Dec, 2020 1 commit
  3. 10 Dec, 2020 1 commit
  4. 08 Dec, 2020 2 commits
  5. 05 Dec, 2020 6 commits
  6. 04 Dec, 2020 18 commits
  7. 02 Dec, 2020 1 commit
  8. 30 Nov, 2020 3 commits
  9. 20 Nov, 2020 1 commit
    • Zhenzhong Duan's avatar
      PCI: Avoid duplicate IDs in driver dynamic IDs list · 3853f912
      Zhenzhong Duan authored
      When a device ID is written to /sys/bus/pci/drivers/.../new_id, we
      previously only checked the driver's static ID table for duplicates.
      Writing the same ID several times added it to the dynamic IDs list several
      times.
      
      This doesn't cause user-visible broken behavior, but remove_id_store() only
      removes one of the duplicate IDs, so if we add an ID several times, we
      would have to remove it the same number of times before it's completely
      gone.
      
      Fix it by calling pci_match_device(), which checks both dynamic and static
      IDs to avoid inserting duplicate IDs in dynamic IDs list.
      
      After fix, attempts to add an ID more than once cause an error:
      
        # echo "1af4 1041" > /sys/bus/pci/drivers/vfio-pci/new_id
        # echo "1af4 1041" > /sys/bus/pci/drivers/vfio-pci/new_id
        bash: echo: write error: File exists
      
      Link: https://lore.kernel.org/r/20201117054409.3428-3-zhenzhong.duan@gmail.comSigned-off-by: default avatarZhenzhong Duan <zhenzhong.duan@gmail.com>
      Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
      3853f912