Lines Matching refs:pdev

75 	struct pci_dev *pdev = to_pci_dev(dev);  in pcim_addr_resource_release()  local
80 pci_release_region(pdev, res->bar); in pcim_addr_resource_release()
83 pci_iounmap(pdev, res->baseaddr); in pcim_addr_resource_release()
84 pci_release_region(pdev, res->bar); in pcim_addr_resource_release()
87 pci_iounmap(pdev, res->baseaddr); in pcim_addr_resource_release()
94 static struct pcim_addr_devres *pcim_addr_devres_alloc(struct pci_dev *pdev) in pcim_addr_devres_alloc() argument
99 GFP_KERNEL, dev_to_node(&pdev->dev)); in pcim_addr_devres_alloc()
265 struct pci_dev *pdev = pdev_raw; in __pcim_clear_mwi() local
267 pci_clear_mwi(pdev); in __pcim_clear_mwi()
278 int pcim_set_mwi(struct pci_dev *pdev) in pcim_set_mwi() argument
282 ret = devm_add_action(&pdev->dev, __pcim_clear_mwi, pdev); in pcim_set_mwi()
286 ret = pci_set_mwi(pdev); in pcim_set_mwi()
288 devm_remove_action(&pdev->dev, __pcim_clear_mwi, pdev); in pcim_set_mwi()
301 struct pci_dev *pdev = to_pci_dev(dev); in pcim_intx_restore() local
304 pci_intx(pdev, res->orig_intx); in pcim_intx_restore()
307 static void save_orig_intx(struct pci_dev *pdev, struct pcim_intx_devres *res) in save_orig_intx() argument
311 pci_read_config_word(pdev, PCI_COMMAND, &pci_command); in save_orig_intx()
325 int pcim_intx(struct pci_dev *pdev, int enable) in pcim_intx() argument
328 struct device *dev = &pdev->dev; in pcim_intx()
341 save_orig_intx(pdev, res); in pcim_intx()
345 pci_intx(pdev, enable); in pcim_intx()
353 struct pci_dev *pdev = pdev_raw; in pcim_disable_device() local
355 if (!pdev->pinned) in pcim_disable_device()
356 pci_disable_device(pdev); in pcim_disable_device()
358 pdev->is_managed = false; in pcim_disable_device()
370 int pcim_enable_device(struct pci_dev *pdev) in pcim_enable_device() argument
374 ret = devm_add_action(&pdev->dev, pcim_disable_device, pdev); in pcim_enable_device()
383 ret = pci_enable_device(pdev); in pcim_enable_device()
385 devm_remove_action(&pdev->dev, pcim_disable_device, pdev); in pcim_enable_device()
389 pdev->is_managed = true; in pcim_enable_device()
402 void pcim_pin_device(struct pci_dev *pdev) in pcim_pin_device() argument
404 pdev->pinned = true; in pcim_pin_device()
439 void __iomem * const *pcim_iomap_table(struct pci_dev *pdev) in pcim_iomap_table() argument
443 dr = devres_find(&pdev->dev, pcim_iomap_release, NULL, NULL); in pcim_iomap_table()
448 dev_to_node(&pdev->dev)); in pcim_iomap_table()
451 dr = devres_get(&pdev->dev, new_dr, NULL, NULL); in pcim_iomap_table()
460 static int pcim_add_mapping_to_legacy_table(struct pci_dev *pdev, in pcim_add_mapping_to_legacy_table() argument
468 legacy_iomap_table = (void __iomem **)pcim_iomap_table(pdev); in pcim_add_mapping_to_legacy_table()
484 static void pcim_remove_mapping_from_legacy_table(struct pci_dev *pdev, in pcim_remove_mapping_from_legacy_table() argument
490 legacy_iomap_table = (void __iomem **)pcim_iomap_table(pdev); in pcim_remove_mapping_from_legacy_table()
506 static void pcim_remove_bar_from_legacy_table(struct pci_dev *pdev, int bar) in pcim_remove_bar_from_legacy_table() argument
513 legacy_iomap_table = (void __iomem **)pcim_iomap_table(pdev); in pcim_remove_bar_from_legacy_table()
538 void __iomem *pcim_iomap(struct pci_dev *pdev, int bar, unsigned long maxlen) in pcim_iomap() argument
546 res = pcim_addr_devres_alloc(pdev); in pcim_iomap()
551 mapping = pci_iomap(pdev, bar, maxlen); in pcim_iomap()
556 if (pcim_add_mapping_to_legacy_table(pdev, mapping, bar) != 0) in pcim_iomap()
559 devres_add(&pdev->dev, res); in pcim_iomap()
563 pci_iounmap(pdev, mapping); in pcim_iomap()
578 void pcim_iounmap(struct pci_dev *pdev, void __iomem *addr) in pcim_iounmap() argument
586 if (devres_release(&pdev->dev, pcim_addr_resource_release, in pcim_iounmap()
592 pcim_remove_mapping_from_legacy_table(pdev, addr); in pcim_iounmap()
607 void __iomem *pcim_iomap_region(struct pci_dev *pdev, int bar, in pcim_iomap_region() argument
616 res = pcim_addr_devres_alloc(pdev); in pcim_iomap_region()
623 ret = pci_request_region(pdev, bar, name); in pcim_iomap_region()
627 res->baseaddr = pci_iomap(pdev, bar, 0); in pcim_iomap_region()
633 devres_add(&pdev->dev, res); in pcim_iomap_region()
637 pci_release_region(pdev, bar); in pcim_iomap_region()
653 void pcim_iounmap_region(struct pci_dev *pdev, int bar) in pcim_iounmap_region() argument
661 devres_release(&pdev->dev, pcim_addr_resource_release, in pcim_iounmap_region()
679 int pcim_iomap_regions(struct pci_dev *pdev, int mask, const char *name) in pcim_iomap_regions() argument
689 mapping = pcim_iomap_region(pdev, bar, name); in pcim_iomap_regions()
694 ret = pcim_add_mapping_to_legacy_table(pdev, mapping, bar); in pcim_iomap_regions()
703 pcim_iounmap_region(pdev, bar); in pcim_iomap_regions()
704 pcim_remove_bar_from_legacy_table(pdev, bar); in pcim_iomap_regions()
724 int pcim_request_region(struct pci_dev *pdev, int bar, const char *name) in pcim_request_region() argument
732 res = pcim_addr_devres_alloc(pdev); in pcim_request_region()
738 ret = pci_request_region(pdev, bar, name); in pcim_request_region()
744 devres_add(&pdev->dev, res); in pcim_request_region()
757 static void pcim_release_region(struct pci_dev *pdev, int bar) in pcim_release_region() argument
765 devres_release(&pdev->dev, pcim_addr_resource_release, in pcim_release_region()
780 static void pcim_release_all_regions(struct pci_dev *pdev) in pcim_release_all_regions() argument
785 pcim_release_region(pdev, bar); in pcim_release_all_regions()
799 int pcim_request_all_regions(struct pci_dev *pdev, const char *name) in pcim_request_all_regions() argument
805 ret = pcim_request_region(pdev, bar, name); in pcim_request_all_regions()
813 pcim_release_all_regions(pdev); in pcim_request_all_regions()
834 void __iomem *pcim_iomap_range(struct pci_dev *pdev, int bar, in pcim_iomap_range() argument
843 res = pcim_addr_devres_alloc(pdev); in pcim_iomap_range()
847 mapping = pci_iomap_range(pdev, bar, offset, len); in pcim_iomap_range()
861 devres_add(&pdev->dev, res); in pcim_iomap_range()