Loading arch/sparc64/kernel/pci.c +16 −0 Original line number Diff line number Diff line Loading @@ -1275,4 +1275,20 @@ int pci_dma_supported(struct pci_dev *pdev, u64 device_mask) return (device_mask & dma_addr_mask) == dma_addr_mask; } void pci_resource_to_user(const struct pci_dev *pdev, int bar, const struct resource *rp, resource_size_t *start, resource_size_t *end) { struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller; unsigned long offset; if (rp->flags & IORESOURCE_IO) offset = pbm->io_space.start; else offset = pbm->mem_space.start; *start = rp->start - offset; *end = rp->end - offset; } #endif /* !(CONFIG_PCI) */ include/asm-sparc64/pci.h +4 −0 Original line number Diff line number Diff line Loading @@ -200,6 +200,10 @@ static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel) struct device_node; extern struct device_node *pci_device_to_OF_node(struct pci_dev *pdev); #define HAVE_ARCH_PCI_RESOURCE_TO_USER extern void pci_resource_to_user(const struct pci_dev *dev, int bar, const struct resource *rsrc, resource_size_t *start, resource_size_t *end); #endif /* __KERNEL__ */ #endif /* __SPARC64_PCI_H */ Loading
arch/sparc64/kernel/pci.c +16 −0 Original line number Diff line number Diff line Loading @@ -1275,4 +1275,20 @@ int pci_dma_supported(struct pci_dev *pdev, u64 device_mask) return (device_mask & dma_addr_mask) == dma_addr_mask; } void pci_resource_to_user(const struct pci_dev *pdev, int bar, const struct resource *rp, resource_size_t *start, resource_size_t *end) { struct pci_pbm_info *pbm = pdev->dev.archdata.host_controller; unsigned long offset; if (rp->flags & IORESOURCE_IO) offset = pbm->io_space.start; else offset = pbm->mem_space.start; *start = rp->start - offset; *end = rp->end - offset; } #endif /* !(CONFIG_PCI) */
include/asm-sparc64/pci.h +4 −0 Original line number Diff line number Diff line Loading @@ -200,6 +200,10 @@ static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel) struct device_node; extern struct device_node *pci_device_to_OF_node(struct pci_dev *pdev); #define HAVE_ARCH_PCI_RESOURCE_TO_USER extern void pci_resource_to_user(const struct pci_dev *dev, int bar, const struct resource *rsrc, resource_size_t *start, resource_size_t *end); #endif /* __KERNEL__ */ #endif /* __SPARC64_PCI_H */