search for: pci_pm_init

Displaying 6 results from an estimated 6 matches for "pci_pm_init".

2008 Sep 27
2
[PATCH 3/6 v3] PCI: support ARI capability
...3 +++ include/linux/pci.h | 1 + include/linux/pci_regs.h | 14 ++++++++++++++ 5 files changed, 61 insertions(+), 0 deletions(-) diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 400d3b3..fe9efc4 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -1260,6 +1260,37 @@ void pci_pm_init(struct pci_dev *dev) } } +/** + * pci_ari_init - turn on ARI forwarding if it's supported + * @dev: the PCI device + */ +void pci_ari_init(struct pci_dev *dev) +{ + int pos; + u32 cap; + u16 ctrl; + + if (!dev->is_pcie || (dev->pcie_type != PCI_EXP_TYPE_R...
2008 Sep 27
2
[PATCH 3/6 v3] PCI: support ARI capability
...3 +++ include/linux/pci.h | 1 + include/linux/pci_regs.h | 14 ++++++++++++++ 5 files changed, 61 insertions(+), 0 deletions(-) diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c index 400d3b3..fe9efc4 100644 --- a/drivers/pci/pci.c +++ b/drivers/pci/pci.c @@ -1260,6 +1260,37 @@ void pci_pm_init(struct pci_dev *dev) } } +/** + * pci_ari_init - turn on ARI forwarding if it's supported + * @dev: the PCI device + */ +void pci_ari_init(struct pci_dev *dev) +{ + int pos; + u32 cap; + u16 ctrl; + + if (!dev->is_pcie || (dev->pcie_type != PCI_EXP_TYPE_R...
2008 Sep 27
1
[PATCH 2/6 v3] PCI: add new general functions
...vice(struct pci_bus *bus, int devfn) return NULL; } - pci_vpd_pci22_init(dev); - return dev; } +static void pci_init_capabilities(struct pci_dev *dev) +{ + /* MSI/MSI-X list */ + pci_msi_init_pci_dev(dev); + + /* Power Management */ + pci_pm_init(dev); + + /* Vital Product Data */ + pci_vpd_pci22_init(dev); +} + void pci_device_add(struct pci_dev *dev, struct pci_bus *bus) { device_initialize(&dev->dev); @@ -1024,8 +1037,8 @@ void pci_device_add(struct pci_dev *dev, struct pci_bus *bus) /* Fix up broken...
2008 Sep 27
1
[PATCH 2/6 v3] PCI: add new general functions
...vice(struct pci_bus *bus, int devfn) return NULL; } - pci_vpd_pci22_init(dev); - return dev; } +static void pci_init_capabilities(struct pci_dev *dev) +{ + /* MSI/MSI-X list */ + pci_msi_init_pci_dev(dev); + + /* Power Management */ + pci_pm_init(dev); + + /* Vital Product Data */ + pci_vpd_pci22_init(dev); +} + void pci_device_add(struct pci_dev *dev, struct pci_bus *bus) { device_initialize(&dev->dev); @@ -1024,8 +1037,8 @@ void pci_device_add(struct pci_dev *dev, struct pci_bus *bus) /* Fix up broken...
2016 May 24
5
[PATCH 0/9] Fix runtime pm ref leaks
In preparation for runtime pm on muxed dual GPU laptops, I've fixed all runtime pm ref leaks I could find in nouveau, radeon and amdgpu. To ease reviewing, I've pushed this series to GitHub: https://github.com/l1k/linux/commits/drm_runpm_fixes_v1 @Alex Deucher: I do not have an AMD GPU so couldn't test this beyond verifying that it compiles. Please double-check the patches and test
2016 Jun 08
8
[PATCH v2 00/15] Runtime pm ref leak bonanza
Second iteration of my endeavour to rid nouveau, radeon and amdgpu of runtime pm ref leaks. Patches 1 to 8 are identical to v1. Patch 9 of v1 modified the DRM core to turn off all CRTCs on driver unload. Based on feedback by Daniel Vetter, I've replaced this with a helper to turn off all CRTCs, which is called by nouveau, radeon and amdgpu on unload. In other words, this is now opt-in. So