Lenovo legion 7 16ACHg6 (2021) Проблема с регулировкой яркости подсветки

У меня есть Lenovo Legion 7 16ACHg6 (2021), который был выпущен совсем недавно. У него AMD 5800H с графическим процессором NVIDIA RTX 3060. Одна из обнаруженных мной проблем заключается в том, что не работает регулировка яркости подсветки. Т.е. сочетания клавиш на клавиатуре вызывают виджет управления яркостью, и значение яркости в этом виджете настраивается, поэтому я предполагаю, что сочетания клавиш / кнопки в порядке. Но подсветка не контролируется. Когда я пытаюсь управлять подсветкой через sysfs, я нахожу папку nvidia и при входе в файл actual_brightness настраивает это значение, но ничего не происходит.

Я настроил BIOS для использования ДИСКРЕТНОЙ ГРАФИКИ. Я пробовал использовать как проприетарные, так и драйверы с открытым исходным кодом (Nouveau), но безуспешно. Я пытался установить более новые драйверы от NVIDIA (версия 465, загруженная с их сайта), но это не помогло. Я пробовал запустить основной инструмент для обновления до ядра 5.12, но это тоже не помогло. Я также пробовал добавить Option "RegistryDwords" "EnableBrightnessControl = 1" в конфигурацию xorg, но безуспешно. Я пробовал с acpi_backlight = vendor ] kernel arg, в этом случае настройка яркости полностью отключает дисплей, и мне нужно перезагрузить компьютер, чтобы вернуть его. Установка аргумента ядра amdgpu.brightness = 0 не влияет. Я испортил разные live-cd (Fedora 34, Garuda, Ubuntu 20.04 LTS), но он не работал ни с одним из них. В Windows очевидно, что он работает.

Использование xrandr работает, но это не влияет на яркость подсветки.

На данный момент у меня закончились варианты, которые я мог найти в Интернете. Думаю, необходимо провести более глубокий анализ. Однако я понятия не имею, с чего начать. Во-первых, яркость регулируется с помощью сигнала ШИМ. На встроенных устройствах ARM для этого в основном используется специальный вывод SOC, но я не уверен, как это происходит на x86.Может ли процессор AMD делать это напрямую? Это под контролем GPU? Есть ли какой-то промежуточный контроллер дисплея, который управляется через I2C?

РЕДАКТИРОВАТЬ: Я добавил некоторые ключевые части вывода dmesg:

[    0.000000] Linux version 5.12.1-051201-generic (kernel@gloin) (gcc (Ubuntu 10.3.0-1ubuntu1) 10.3.0, GNU ld (GNU Binutils for Ubuntu) 2.36.1) #202105021030 SMP Sun May 2 10:34:08 UTC 2021
[    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-5.12.1-051201-generic root=UUID=99416551-f8bc-413e-a118-d9c4845e7fa6 ro quiet splash vt.handoff=7
...
[    0.000000] efi: EFI v2.70 by INSYDE Corp.
[    0.000000] efi: ACPI=0xceffe000 ACPI 2.0=0xceffe014 TPMFinalLog=0xcef3f000 SMBIOS=0xcc70a000 SMBIOS 3.0=0xcc708000 MEMATTR=0xb65fc018 ESRT=0xb65e8418 MOKvar=0xcc6d0000 RNG=0xcc705d18 TPMEventLog=0xb652c018 
[    0.000000] efi: seeding entropy pool
[    0.000000] random: fast init done
[    0.000000] SMBIOS 3.3.0 present.
[    0.000000] DMI: LENOVO 82N6/LNVNB161216, BIOS GKCN24WW 02/03/2021
[    0.000000] tsc: Fast TSC calibration using PIT
[    0.000000] tsc: Detected 3193.968 MHz processor
...
[    0.311851] ACPI: EC: interrupt unblocked
[    0.311852] ACPI: EC: event unblocked
[    0.313133] ACPI: EC: EC_CMD/EC_SC=0x66, EC_DATA=0x62
[    0.313133] ACPI: EC: GPE=0x3
[    0.313133] ACPI: \_SB_.PCI0.LPC0.EC0_: Boot DSDT EC initialization complete
[    0.313133] ACPI: \_SB_.PCI0.LPC0.EC0_: EC: Used to handle transactions and events
[    0.313169] iommu: Default domain type: Translated 
[    0.313169] pci 0000:01:00.0: vgaarb: VGA device added: decodes=io+mem,owns=none,locks=none
[    0.313169] pci 0000:01:00.0: vgaarb: bridge control possible
[    0.313169] pci 0000:01:00.0: vgaarb: setting as boot device
[    0.313169] vgaarb: loaded
...
[    0.534844] shpchp: Standard Hot Plug PCI Controller Driver version: 0.4
[    0.534871] efifb: probing for efifb
[    0.534882] efifb: showing boot graphics
[    0.537785] efifb: framebuffer at 0xfa00000000, using 25600k, total 25600k
[    0.537787] efifb: mode is 2560x1600x32, linelength=16384, pages=1
[    0.537788] efifb: scrolling: redraw
[    0.537788] efifb: Truecolor: size=8:8:8:8, shift=24:16:8:0
[    0.537845] Console: switching to colour frame buffer device 160x50
[    0.541740] fb0: EFI VGA frame buffer device
[    0.543342] ACPI: AC: AC Adapter [ADP0] (off-line)
[    0.543378] input: Power Button as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00/input/input0
[    0.543390] ACPI: button: Power Button [PWRB]
[    0.543409] input: Lid Switch as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0D:00/input/input1
[    0.543417] ACPI: button: Lid Switch [LID0]
[    0.543430] input: Power Button as /devices/LNXSYSTM:00/LNXPWRBN:00/input/input2
[    0.543457] ACPI: button: Power Button [PWRF]
[    0.543508] Monitor-Mwait will be used to enter C-1 state
...
[    0.806995] acpi device:01: registered as cooling_device16
[    0.807027] acpi PNP0C14:03: duplicate WMI GUID 05901221-D566-11D1-B2F0-00A0C9062910 (first instance was on PNP0C14:00)
[    0.807067] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:00/LNXVIDEO:00/input/input4
[    0.807191] ACPI: video: Video Device [VGA] (multi-head: yes  rom: no  post: no)
[    0.807316] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.GP17.VGA.LCD._BCM.AFN7], AE_NOT_FOUND (20210105/psargs-330)

[    0.807499] 
               Initialized Local Variables for Method [_BCM]:
[    0.807500]   Local0: 0000000038713046 <Obj>           Integer 00000000000000FF
[    0.807505]   Local1: 0000000029383804 <Obj>           Integer 0000000000000000

[    0.807508] Initialized Arguments for Method [_BCM]:  (1 arguments defined for method invocation)
[    0.807508]   Arg0:   00000000ceb92cb1 <Obj>           Integer 0000000000000064

[    0.807513] ACPI Error: Aborting method \_SB.PCI0.GP17.VGA.LCD._BCM due to previous error (AE_NOT_FOUND) (20210105/psparse-529)
[    0.807609] ACPI: \_SB_.PCI0.GP17.VGA_.LCD_: _BCM evaluation failed
[    0.807641] input: Video Bus as /devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A08:00/device:13/LNXVIDEO:01/input/input5
...
[    2.692008] input: Ideapad extra buttons as /devices/pci0000:00/0000:00:14.3/PNP0C09:00/VPC2004:00/input/input11
[    2.692077] ideapad_acpi VPC2004:00: Keyboard backlight control not available
[    2.698741] ccp 0000:05:00.2: enabling device (0000 -> 0002)
[    2.699039] ccp 0000:05:00.2: ccp: unable to access the device: you might be running a broken BIOS.
[    2.703452] ideapad_acpi VPC2004:00: DYTC interface is not available
...
[    4.424514] input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:01.1/0000:01:00.1/sound/card0/input16
[    4.424562] input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:01.1/0000:01:00.1/sound/card0/input17
[    4.424591] input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:01.1/0000:01:00.1/sound/card0/input18
[    4.424619] input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:01.1/0000:01:00.1/sound/card0/input19
[    4.424646] input: HDA NVidia HDMI/DP,pcm=10 as /devices/pci0000:00/0000:00:01.1/0000:01:00.1/sound/card0/input20
[    4.424676] input: HDA NVidia HDMI/DP,pcm=11 as /devices/pci0000:00/0000:00:01.1/0000:01:00.1/sound/card0/input21
[    4.466797] input: HD-Audio Generic Mic as /devices/pci0000:00/0000:00:08.1/0000:05:00.6/sound/card1/input22
[    4.466857] input: HD-Audio Generic Headphone as /devices/pci0000:00/0000:00:08.1/0000:05:00.6/sound/card1/input23
[    4.498362] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  460.73.01  Thu Apr  1 21:40:36 UTC 2021
[    4.504877] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  460.73.01  Thu Apr  1 21:32:31 UTC 2021
[    4.537322] r8169 0000:03:00.0 eno1: Link is Down
[    4.599300] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[    4.599303] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 0
[    4.607340] nvidia_uvm: module uses symbols from proprietary module nvidia, inheriting taint.
[    4.609244] nvidia-uvm: Loaded the UVM driver, major device number 507.
[    4.781539] ACPI: \: failed to evaluate _DSM (0x1001)
[    4.781546] ACPI: \: failed to evaluate _DSM (0x1001)
[    4.850308] ACPI Warning: \_SB.PCI0.GPP0.PEGP._DSM: Argument #4 type mismatch - Found [Buffer], ACPI requires [Package] (20210105/nsarguments-61)
...
0
задан 5 May 2021 в 22:09

1 ответ

Обращаем внимание на ошибки ACPI в выводе dmesg, в частности на следующую строку: Ошибка ACPI BIOS (ошибка): не удалось разрешить символ [ \ _SB.PCI0.GP17.VGA.LCD._BCM.AFN7] , я наткнулся на еще одну тему , в которой сообщалось об ошибке такого же типа. Как Колин Ян Кинг говорит:

Драйвер ACPI попытался оценить (выполнить) метод управления яркостью ACPI для экрана, но это не удалось, потому что байтовый код ACPI AML в вашей прошивке не имел объекта _SB .PCI0.GP17.VGA.LCD._BCM.AFN7 определен по какой-то причине. Результатом всего этого является то, что регулировка яркости ACPI не работает. Это проблема с прошивкой, я не знаю никаких обходных путей, кроме проверки, можно ли получить обновленную прошивку BIOS, которая может это исправить.

0
ответ дан 7 May 2021 в 17:39

Другие вопросы по тегам:

Похожие вопросы: