Lenovo Legion 7: Cannot Control Display Brightness
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux (Ubuntu) |
Confirmed
|
Undecided
|
Unassigned |
Bug Description
The device is Lenovo Legion 7. This laptop has a mux switch to switch between dynamic/hybrid or discrete graphics mode. This laptop has a high resolution with high pixel density than the other displays out there, but I don't know the exact number. Additionally, this laptop can adjust the display refresh rate between 60 and 165 Hz.
---
There were 1 problem I encountered in dynamic/hybrid graphics mode:
- The widgets shown were too small.
Details:
The resolution was correct, at 2560x1600, but all widgets shown were too small. I suspected this was due to the laptop screen high pixel density and the widget size calculation didn't make use of physical dimension, but in terms of pixel.
I thought installing NVIDIA driver would fix this, but no; this worked in OpenSUSE Leap with KDE Plasma and I think it was because of the inclusion of NVIDIA OpenGL driver.
The current workaround was to scale by 200% in "Display Settings", although the login screen isn't affected by the scaling at all.
---
There were 3 problems I encountered in discrete graphics mode:
- The widgets were are too small, like the hybrid graphics mode issue.
- The DE seemed to use wrong screen refresh rate.
The refresh rate was fixed at 93 Hz in the "Display Settings".
Changing the refresh rate between 60 Hz and 165 Hz by Fn keys didn't update the 93 Hz in the "Display Settings".
This didn't happen in the hybrid graphics mode.
OpenSUSE Leap with KDE Plasma properly detected 60 and 165 Hz, so I think it may be either GNOME DE or xorg misconfigurations.
- Screen brightness was fixed at 100%.
Details:
Screen brightness could be adjusted by the keyboard Fn keys, but the brightness was fixed at 100%.
This didn't happen in the hybrid graphics mode.
This is the most annoying problem and have forced me to use the hybrid graphics mode which I don't like.
My first thought was either a specific NVIDIA issue or xorg misconfigurations.
So I tried adding "acpi_backlight
---
In discrete graphics mode, a quick "sudo journalctl -p3 -b0" showed below:
Okt 29 18:48:04 jiazhang-
Okt 29 18:48:04 jiazhang-
Okt 29 18:48:04 jiazhang-
Okt 29 18:48:04 jiazhang-
Okt 29 18:48:04 jiazhang-
In hybrid graphics mode, "sudo journalctl -p3 -b0" output like above except that there was no:
Okt 29 18:48:04 jiazhang-
Okt 29 18:48:04 jiazhang-
ProblemType: Bug
DistroRelease: Ubuntu 22.04
Package: xorg 1:7.7+23ubuntu2
ProcVersionSign
Uname: Linux 5.15.0-52-generic x86_64
.proc.driver.
.proc.driver.
.proc.driver.
.proc.driver.
.proc.driver.
.proc.driver.
.proc.driver.
NVRM version: NVIDIA UNIX Open Kernel Module for x86_64 520.56.06 Release Build (dvs-builder@
GCC version: gcc version 11.3.0 (Ubuntu 11.3.0-
ApportVersion: 2.20.11-0ubuntu82.1
Architecture: amd64
BootLog: Error: [Errno 13] Permission denied: '/var/log/boot.log'
CasperMD5CheckR
CompositorRunning: None
CurrentDesktop: ubuntu:GNOME
Date: Sat Oct 29 18:50:17 2022
DistUpgraded: Fresh install
DistroCodename: jammy
DistroVariant: ubuntu
DkmsStatus: nvidia/520.56.06, 5.15.0-52-generic, x86_64: installed
ExtraDebuggingI
GraphicsCard:
NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] [10de:2560] (rev a1) (prog-if 00 [VGA controller])
Subsystem: Lenovo GA106M [GeForce RTX 3060 Mobile / Max-Q] [17aa:3aa6]
InstallationDate: Installed on 2022-10-29 (0 days ago)
InstallationMedia: Ubuntu 22.04.1 LTS "Jammy Jellyfish" - Release amd64 (20220809.1)
MachineType: LENOVO 82N6
ProcKernelCmdLine: BOOT_IMAGE=
SourcePackage: xorg
Symptom: display
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 06/16/2022
dmi.bios.release: 1.57
dmi.bios.vendor: LENOVO
dmi.bios.version: GKCN57WW
dmi.board.
dmi.board.name: LNVNB161216
dmi.board.vendor: LENOVO
dmi.board.version: SDK0R32862 WIN
dmi.chassis.
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.
dmi.ec.
dmi.modalias: dmi:bvnLENOVO:
dmi.product.family: Legion 7 16ACHg6
dmi.product.name: 82N6
dmi.product.sku: LENOVO_
dmi.product.
dmi.sys.vendor: LENOVO
nvidia-settings: ERROR: A supplied argument is invalid
version.compiz: compiz N/A
version.libdrm2: libdrm2 2.4.110-1ubuntu1
version.
version.
version.
version.
version.
version.
version.
version.
description: | updated |
description: | updated |
affects: | xorg (Ubuntu) → nvidia-graphics-drivers-520 (Ubuntu) |
The latest Ubuntu update fully fixed the refresh rate and partially fixed the brightness issue in the discrete graphics mode. This is a critical improvement.
Now, I can choose the 60Hz and 165Hz screen refresh rate from the DE settings.
The brightness issue is partially fixed because when the brightness level indicator is at about 0%, 5%, and 10 %, the actual screen brightness is at about 50%, 75%, and 100%. So the brightness level indicator at 100-20% maps to the actual brightness 100-20%, but the brightness level indicator at 10-0% seems to map to the actual screen brightness of 100%, 75%, and 50%.
I believe the small widgets issue can just be resolved by the DE feature of 2x scaling.
So, the brightness issue is the last problem to be fixed in this bug issue.