search for: nvkm_pcie_force_aspm_off

Displaying 9 results from an estimated 9 matches for "nvkm_pcie_force_aspm_off".

2019 Sep 17
1
[PATCH 1/3] pci: force disable ASPM before changing the link speed
...bdev/pci/pcie.c b/drm/nouveau/nvkm/subdev/pci/pcie.c > index d71e5db50..354ac4c85 100644 > --- a/drm/nouveau/nvkm/subdev/pci/pcie.c > +++ b/drm/nouveau/nvkm/subdev/pci/pcie.c > @@ -111,6 +111,14 @@ nvkm_pcie_init(struct nvkm_pci *pci) > return 0; > } > > +void > +nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > +{ > + if (!pci->func->pcie.force_aspm_off) > + return; > + pci->func->pcie.force_aspm_off(pci, status); > +} > + > int > nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_speed speed, u8 widt...
2019 Sep 12
5
[PATCH 0/3] PCIe link change improvements
everything was taken from nvgpu. Main reason for adding is to improve stability of the PCIe link changing code as we might want to depend on it for a workaround fixing our infamous runpm issues on recent laptops Karol Herbst (3): pci: force disable ASPM before changing the link speed pci/gk104: enable dl_mgr safe mode pci/gk104: wait for ltssm idle before changing the link
2019 Sep 12
0
[PATCH 1/3] pci: force disable ASPM before changing the link speed
..._off, }; int diff --git a/drm/nouveau/nvkm/subdev/pci/pcie.c b/drm/nouveau/nvkm/subdev/pci/pcie.c index d71e5db50..354ac4c85 100644 --- a/drm/nouveau/nvkm/subdev/pci/pcie.c +++ b/drm/nouveau/nvkm/subdev/pci/pcie.c @@ -111,6 +111,14 @@ nvkm_pcie_init(struct nvkm_pci *pci) return 0; } +void +nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) +{ + if (!pci->func->pcie.force_aspm_off) + return; + pci->func->pcie.force_aspm_off(pci, status); +} + int nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_speed speed, u8 width) { @@ -157,9 +165,15 @@ nvkm_pcie_set_link(struct nvkm_pci *pc...
2019 Sep 17
2
[PATCH v4 3/4] pci: set the pcie link speed to 8.0 when suspending
...>has_runpm || !suspend) > + return 0; > + > + if (!nvkm_boolopt(device->cfgopt, "NvRunpmWorkaround", true)) > + return 0; > + > + return nvkm_pcie_set_link(pci, NVKM_PCIE_SPEED_8_0, 16, false); > +} > + > void > nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > { > @@ -120,7 +136,8 @@ nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > } > > int > -nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_speed speed, u8 width) > +nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_s...
2019 Sep 17
2
[PATCH v4 3/4] pci: set the pcie link speed to 8.0 when suspending
...+ if (!nvkm_boolopt(device->cfgopt, "NvRunpmWorkaround", true)) > > > + return 0; > > > + > > > + return nvkm_pcie_set_link(pci, NVKM_PCIE_SPEED_8_0, 16, false); > > > +} > > > + > > > void > > > nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > > > { > > > @@ -120,7 +136,8 @@ nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > > > } > > > > > > int > > > -nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_speed speed, u8 width) &gt...
2019 Sep 13
8
[PATCH v4 0/4] add PCIe workaround to fix runpm on laptops
not much changed since the last time I sent those patches out, but there are a couple of annoying bug fixes, which users would probably never hit unless they do rmmod/modprobe nouveau cycles. Biggest change is that I force the link to a 8.0 speed rather than the speed the GPU came up with. Also this series depends on the PCIe improvement patches I sent out recently. Karol Herbst (4): pci:
2019 Sep 13
0
[PATCH v4 3/4] pci: set the pcie link speed to 8.0 when suspending
...i, bool suspend) +{ + struct nvkm_device *device = pci->subdev.device; + if (!device->has_runpm || !suspend) + return 0; + + if (!nvkm_boolopt(device->cfgopt, "NvRunpmWorkaround", true)) + return 0; + + return nvkm_pcie_set_link(pci, NVKM_PCIE_SPEED_8_0, 16, false); +} + void nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) { @@ -120,7 +136,8 @@ nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) } int -nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_speed speed, u8 width) +nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_speed speed, u8 width, +...
2019 Sep 17
0
[PATCH v4 3/4] pci: set the pcie link speed to 8.0 when suspending
...return 0; > > + > > + if (!nvkm_boolopt(device->cfgopt, "NvRunpmWorkaround", true)) > > + return 0; > > + > > + return nvkm_pcie_set_link(pci, NVKM_PCIE_SPEED_8_0, 16, false); > > +} > > + > > void > > nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > > { > > @@ -120,7 +136,8 @@ nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > > } > > > > int > > -nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_pcie_speed speed, u8 width) > > +nvkm_pcie_set_link(str...
2019 Sep 17
0
[PATCH v4 3/4] pci: set the pcie link speed to 8.0 when suspending
...t;cfgopt, "NvRunpmWorkaround", true)) > > > > + return 0; > > > > + > > > > + return nvkm_pcie_set_link(pci, NVKM_PCIE_SPEED_8_0, 16, false); > > > > +} > > > > + > > > > void > > > > nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > > > > { > > > > @@ -120,7 +136,8 @@ nvkm_pcie_force_aspm_off(struct nvkm_pci *pci, bool status) > > > > } > > > > > > > > int > > > > -nvkm_pcie_set_link(struct nvkm_pci *pci, enum nvkm_p...