Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] ampere optimus laptops pcie power management not working #290

Closed
bsherman opened this issue Oct 28, 2024 · 1 comment · Fixed by #292 · May be fixed by #252
Closed

[BUG] ampere optimus laptops pcie power management not working #290

bsherman opened this issue Oct 28, 2024 · 1 comment · Fixed by #292 · May be fixed by #252

Comments

@bsherman
Copy link
Contributor

After seeing issues on my 3050ti mobile (G107/G107M) Ampere Optimus system, I did a bunch of testing.

I found that in our initramfs we set options nvidia NVreg_DynamicPowerManagement=0x02 in modprobe.d/nvidia.conf

This seems like it SHOULD do the same as the default behavior for ampere+ systems, but it doesn't... they actually default to options nvidia NVreg_DynamicPowerManagement=0x03 .

https://download.nvidia.com/XFree86/Linux-x86_64/565.57.01/README/dynamicpowermanagement.html

We should remove the line:

options nvidia NVreg_DynamicPowerManagement=0x02

And let the driver do it's default.

@bsherman bsherman moved this to Todo in Project Goals Oct 28, 2024
bsherman added a commit that referenced this issue Oct 28, 2024
This fixes power management on optimus laptops, specifically for Ampere+
where the specified config was preventing D3cold state.

Upstream negativo17 should be notified of this change, too.

Fix: #290
@bsherman
Copy link
Contributor Author

Fixed by #292

@github-project-automation github-project-automation bot moved this from Todo to Done in Project Goals Oct 29, 2024
bsherman added a commit to bsherman/nvidia-kmod-common that referenced this issue Oct 29, 2024
Recently discovered that forcibly setting
NVreg_DynamicPowerManagement=0x02 caused Ampere Optimus GPUs to be
stuck in D0 state causing them to drain much more battery than desired.

At least as of nvidia driver 560/565, the default value of 0x03 should
put supported cards into the correct power management mode.

I was able to confirm removing this one setting fixed RTD3 PM on at
least 3050ti mobile systems.

I hope this patch is helpful. In the meantime Universal Blue has applied
the patch in our downstream use of the negativo17 nvidia driver
packages.

ublue-os/hwe#290
scaronni pushed a commit to negativo17/nvidia-kmod-common that referenced this issue Oct 29, 2024
Recently discovered that forcibly setting
NVreg_DynamicPowerManagement=0x02 caused Ampere Optimus GPUs to be
stuck in D0 state causing them to drain much more battery than desired.

At least as of nvidia driver 560/565, the default value of 0x03 should
put supported cards into the correct power management mode.

I was able to confirm removing this one setting fixed RTD3 PM on at
least 3050ti mobile systems.

I hope this patch is helpful. In the meantime Universal Blue has applied
the patch in our downstream use of the negativo17 nvidia driver
packages.

ublue-os/hwe#290
scaronni pushed a commit to negativo17/nvidia-kmod-common that referenced this issue Oct 29, 2024
Recently discovered that forcibly setting
NVreg_DynamicPowerManagement=0x02 caused Ampere Optimus GPUs to be
stuck in D0 state causing them to drain much more battery than desired.

At least as of nvidia driver 560/565, the default value of 0x03 should
put supported cards into the correct power management mode.

I was able to confirm removing this one setting fixed RTD3 PM on at
least 3050ti mobile systems.

I hope this patch is helpful. In the meantime Universal Blue has applied
the patch in our downstream use of the negativo17 nvidia driver
packages.

ublue-os/hwe#290
bsherman added a commit that referenced this issue Oct 29, 2024
* fix: chromium browser use of hw accel on hybrid laptops

Fixes: #285

* fix: use default nvidia driver power management

This fixes power management on optimus laptops, specifically for Ampere+
where the specified config was preventing D3cold state.

Upstream negativo17 should be notified of this change, too.

Fix: #290
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

1 participant