浏览代码

PCI: Increase resource array mask bit size in pcim_iomap_regions()

DEVICE_COUNT_RESOURCE will be bigger than 16 when SRIOV supported is enabled.

Let them pass with int just like pci_enable_resources().

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
Yinghai Lu 13 年之前
父节点
当前提交
fb7ebfe410
共有 2 个文件被更改,包括 6 次插入6 次删除
  1. 3 3
      include/linux/pci.h
  2. 3 3
      lib/devres.c

+ 3 - 3
include/linux/pci.h

@@ -1432,10 +1432,10 @@ static inline void pci_fixup_device(enum pci_fixup_pass pass,
 void __iomem *pcim_iomap(struct pci_dev *pdev, int bar, unsigned long maxlen);
 void __iomem *pcim_iomap(struct pci_dev *pdev, int bar, unsigned long maxlen);
 void pcim_iounmap(struct pci_dev *pdev, void __iomem *addr);
 void pcim_iounmap(struct pci_dev *pdev, void __iomem *addr);
 void __iomem * const *pcim_iomap_table(struct pci_dev *pdev);
 void __iomem * const *pcim_iomap_table(struct pci_dev *pdev);
-int pcim_iomap_regions(struct pci_dev *pdev, u16 mask, const char *name);
-int pcim_iomap_regions_request_all(struct pci_dev *pdev, u16 mask,
+int pcim_iomap_regions(struct pci_dev *pdev, int mask, const char *name);
+int pcim_iomap_regions_request_all(struct pci_dev *pdev, int mask,
 				   const char *name);
 				   const char *name);
-void pcim_iounmap_regions(struct pci_dev *pdev, u16 mask);
+void pcim_iounmap_regions(struct pci_dev *pdev, int mask);
 
 
 extern int pci_pci_problems;
 extern int pci_pci_problems;
 #define PCIPCI_FAIL		1	/* No PCI PCI DMA */
 #define PCIPCI_FAIL		1	/* No PCI PCI DMA */

+ 3 - 3
lib/devres.c

@@ -253,7 +253,7 @@ EXPORT_SYMBOL(pcim_iounmap);
  *
  *
  * Request and iomap regions specified by @mask.
  * Request and iomap regions specified by @mask.
  */
  */
-int pcim_iomap_regions(struct pci_dev *pdev, u16 mask, const char *name)
+int pcim_iomap_regions(struct pci_dev *pdev, int mask, const char *name)
 {
 {
 	void __iomem * const *iomap;
 	void __iomem * const *iomap;
 	int i, rc;
 	int i, rc;
@@ -306,7 +306,7 @@ EXPORT_SYMBOL(pcim_iomap_regions);
  *
  *
  * Request all PCI BARs and iomap regions specified by @mask.
  * Request all PCI BARs and iomap regions specified by @mask.
  */
  */
-int pcim_iomap_regions_request_all(struct pci_dev *pdev, u16 mask,
+int pcim_iomap_regions_request_all(struct pci_dev *pdev, int mask,
 				   const char *name)
 				   const char *name)
 {
 {
 	int request_mask = ((1 << 6) - 1) & ~mask;
 	int request_mask = ((1 << 6) - 1) & ~mask;
@@ -330,7 +330,7 @@ EXPORT_SYMBOL(pcim_iomap_regions_request_all);
  *
  *
  * Unmap and release regions specified by @mask.
  * Unmap and release regions specified by @mask.
  */
  */
-void pcim_iounmap_regions(struct pci_dev *pdev, u16 mask)
+void pcim_iounmap_regions(struct pci_dev *pdev, int mask)
 {
 {
 	void __iomem * const *iomap;
 	void __iomem * const *iomap;
 	int i;
 	int i;