Introduce pcim_alloc_irq_vectors(), a device-managed version of
pci_alloc_irq_vectors(), In some i2c drivers, If pcim_enable_device()
has been called before, then pci_alloc_irq_vectors() is actually a
device-managed function. It is used as a device-managed function, So
replace it with pcim_alloc_irq_vectors().

Changelog
---------
v4 -> v5:
        - Remove the check of enable device in pcim_alloc_irq_vectors()
          and make it as a static line function.
        - Modify the subject name in patch 3 and patch 4.
v3 -> v4:
        - add some commit comments for patch 3
v2 -> v3:
        - Add some commit comments for replace some codes in
          pcim_release() by pci_free_irq_vectors().
        - Simplify the error handling path in i2c designware
          driver.
v1 -> v2:
        - Use pci_free_irq_vectors() to replace some code in
          pcim_release().
        - Modify some commit messages.

Dejin Zheng (4):
  PCI: Introduce pcim_alloc_irq_vectors()
  Documentation: devres: Add pcim_alloc_irq_vectors()
  i2c: designware: Use pcim_alloc_irq_vectors() to allocate IRQ vectors
  i2c: thunderx: Use pcim_alloc_irq_vectors() to allocate IRQ vectors

 .../driver-api/driver-model/devres.rst        |  1 +
 drivers/i2c/busses/i2c-designware-pcidrv.c    | 15 ++++--------
 drivers/i2c/busses/i2c-thunderx-pcidrv.c      |  2 +-
 drivers/pci/pci.c                             |  5 +---
 include/linux/pci.h                           | 24 +++++++++++++++++++
 5 files changed, 31 insertions(+), 16 deletions(-)

-- 
2.25.0

Reply via email to