Bug 204251

Summary: intel_backlight brightness ACPI BIOS Error (bug) on Dell Precision 5540 (CoffeeLake)
Product: ACPI Reporter: Arcadiy Ivanov (arcadiy)
Component: BIOSAssignee: acpi_bios
Status: CLOSED DOCUMENTED    
Severity: high CC: anarsoul, deon, ivanramello, jonathon.padfield, kai.heng.feng, kenbell, madcamel, perry_yuan, r.sharadh, rui.zhang, scottjbarr, superm1, swat.artur
Priority: P1    
Hardware: Intel   
OS: Linux   
See Also: https://bugs.freedesktop.org/show_bug.cgi?id=111179
Kernel Version: 5.1.18-300.fc30.x86_64 Subsystem:
Regression: Yes Bisected commit-id:
Attachments: ACPI dump
custom dsdt for brt6

Description Arcadiy Ivanov 2019-07-21 04:47:19 UTC
It's completely impossible to change the backlight brightness on Dell Precision 5540. The intel_backlight driver seems to be working correctly, however the ACPI BIOS seems to be broken. While the brightness values do change, the actual backlight brightness is unaffected except to turn the screen completely off.

Example:

$ pwd
/sys/class/backlight/intel_backlight

$ ls -la
total 0
drwxr-xr-x 3 root root    0 Jul 21 00:29 .
drwxr-xr-x 6 root root    0 Jul 21 00:29 ..
-r--r--r-- 1 root root 4096 Jul 21 00:29 actual_brightness
-rw-r--r-- 1 root root 4096 Jul 21 00:29 bl_power
-rw-rw-rw- 1 root root 4096 Jul 20 16:50 brightness
lrwxrwxrwx 1 root root    0 Jul 21 00:29 device -> ../../card0-eDP-1
-r--r--r-- 1 root root 4096 Jul 21 00:29 max_brightness
drwxr-xr-x 2 root root    0 Jul 21 00:29 power
lrwxrwxrwx 1 root root    0 Jul 21 00:29 subsystem -> ../../../../../../../class/backlight
-r--r--r-- 1 root root 4096 Jul 21 00:29 type
-rw-r--r-- 1 root root 4096 Jul 21 00:29 uevent

$ echo $(cat brightness) $(cat actual_brightness) $(cat max_brightness)
65535 65535 65535

[28007.115439] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PEG0.PEGP.BRT6.LCD], AE_NOT_FOUND (20190215/psargs-330)
[28007.115463] ACPI Error: Aborting method \_SB.PCI0.PEG0.PEGP.BRT6 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28007.115851] ACPI Error: Aborting method \EV5 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28007.116101] ACPI Error: Aborting method \SMEE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28007.116249] ACPI Error: Aborting method \SMIE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28007.116391] ACPI Error: Aborting method \NEVT due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28007.116528] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)

$ echo $(cat brightness) $(cat actual_brightness) $(cat max_brightness)
62258 62258 65535

[28012.948074] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PEG0.PEGP.BRT6.LCD], AE_NOT_FOUND (20190215/psargs-330)
[28012.948098] ACPI Error: Aborting method \_SB.PCI0.PEG0.PEGP.BRT6 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28012.948251] ACPI Error: Aborting method \EV5 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28012.948387] ACPI Error: Aborting method \SMEE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28012.948515] ACPI Error: Aborting method \SMIE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28012.948642] ACPI Error: Aborting method \NEVT due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28012.948770] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)

$ echo $(cat brightness) $(cat actual_brightness) $(cat max_brightness)
58982 58982 65535

[28016.564461] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PEG0.PEGP.BRT6.LCD], AE_NOT_FOUND (20190215/psargs-330)
[28016.564481] ACPI Error: Aborting method \_SB.PCI0.PEG0.PEGP.BRT6 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28016.564781] ACPI Error: Aborting method \EV5 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28016.565136] ACPI Error: Aborting method \SMEE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28016.565378] ACPI Error: Aborting method \SMIE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28016.565804] ACPI Error: Aborting method \NEVT due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[28016.566054] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)

$ echo $(cat brightness) $(cat actual_brightness) $(cat max_brightness)
55705 55705 65535
Comment 1 Mario Limonciello 2019-07-22 14:16:54 UTC
To make sure I'm following properly - you're saying that when changing the brightness using sysfs in the intel_backlight driver is when those ACPI errors show up in the system logs?

A few things that will be needed to investigate these further:
1) What kernel?  Is this happening with mainline?
2) Do you have the binary NVIDIA driver installed as well?
3) Can you please check if you have switchable graphics turned on or off in BIOS setup?  This can cause ACPI tables to be populated differently on Dell systems.
4) Can you please share an ACPI dump for this system (please note whether switchable graphics is on or off in this dump too).
Comment 2 Arcadiy Ivanov 2019-07-22 14:28:11 UTC
I'm saying:
a. The intel_brightness values change, but the brightness doesn't except to turn off.
a. The ACPI errors occur every time the brightness is changed via keyboard combo.

I just edited brightness directly by writing to it - it didn't change, but ACPI errors also didn't appear. So the ACPI errors are artifacts of pressing the key combination.

To answer your questions:
1. Kernel is 5.1.18-300.fc30.x86_64. I'll be trying the drm-tip for https://bugs.freedesktop.org/show_bug.cgi?id=111179 anyway.

2. Yes, but (a) it's not active as no NVidia Linux driver supports T2000 in 5540 (b) it's Bumblebee'd anyway, so the device is off.

3. I believe switchable graphics is ON but I'll recheck.

4. Any particular ACPI tables you want or all of them?
Comment 3 Arcadiy Ivanov 2019-07-22 14:29:53 UTC
> I just edited brightness directly by writing to it - it didn't change, but
> ACPI errors also didn't appear.

Let me rephrase it :)

I just edited `brightness` in /sys/class/backlight/intel_backlight. The value changed, the monitor observed brightness didn't, but ACPI errors also did not appear.
Comment 4 Arcadiy Ivanov 2019-07-22 15:02:30 UTC
(In reply to Mario Limonciello from comment #1)
> 3) Can you please check if you have switchable graphics turned on or off in
> BIOS setup?  This can cause ACPI tables to be populated differently on Dell
> systems.

The "switchable graphics" option is completely absent from Dell Precision 5540 BIOS 1.1.1! I have no idea if I have it on or off.
Comment 5 Arcadiy Ivanov 2019-07-22 15:20:23 UTC
DRM i915 debug logs. The driver seems to be functioning but the brightness isn't being set. 

Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=65535/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 65535
Jul 22 11:10:09 hostname kernel: [drm:edp_panel_vdd_on [i915]] Turning eDP port A VDD on
Jul 22 11:10:09 hostname kernel: [drm:edp_panel_vdd_on [i915]] PP_STATUS: 0x80000008 PP_CONTROL: 0x0000006f
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=65508/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 65508
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=65427/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 65427
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=65293/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 65293
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=65105/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 65105
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=64863/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 64863
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=64568/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 64568
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=64195/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 64195
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=63818/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 63818
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=63436/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 63436
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=63107/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 63107
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=62816/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 62816
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=62610/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 62610
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=62442/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 62442
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=62328/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 62328
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=62268/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 62268
Jul 22 11:10:09 hostname kernel: [drm:intel_backlight_device_update_status [i915]] updating intel_backlight, brightness=62258/65535
Jul 22 11:10:09 hostname kernel: [drm:intel_panel_actually_set_backlight [i915]] set backlight PWM = 62258
Comment 6 Arcadiy Ivanov 2019-07-22 15:22:47 UTC
Created attachment 283919 [details]
ACPI dump
Comment 7 Mario Limonciello 2019-07-22 15:25:22 UTC
I do recall that this design has changed graphics - the HDMI port is wired directly to NVIDIA graphics and hence wouldn't work when NVIDIA is disabled (a'la bumblebee).  This part of the design might not be working well with bumblebee.

> [28007.115439] ACPI BIOS Error (bug): Could not resolve symbol
> [\_SB.PCI0.PEG0.PEGP.BRT6.LCD], AE_NOT_FOUND (20190215/psargs-330)

IIRC \_SB.PCI0.PEG0.PEGP.BRT6 is referring to the discrete graphics.
Can you please check that if you un-bumblebee your system if this still happens?
Comment 8 Kai-Heng Feng 2019-07-23 06:23:42 UTC
Arcadiy, please attach output of `find /sys -name edid | grep eDP | xargs cat | xxd`.
Comment 9 Scott Barr 2019-07-23 11:40:01 UTC
I see exactly the same issue with a Dell XPS 15 7590

- changing the values in /sys/class/backlight/intel_backlight/backlight doesn't result in a change to screen brightness
- using the fn+f11 (reduce screen brightness) and fn+f12 (increase screen brightness) results in ACPI errors in dmesg output (shown here for fn+f11)

[ 1067.475776] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PEG0.PEGP.BRT6.LCD], AE_NOT_FOUND (20190215/psargs-330)
[ 1067.475796] ACPI Error: Aborting method \_SB.PCI0.PEG0.PEGP.BRT6 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[ 1067.475940] ACPI Error: Aborting method \EV5 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[ 1067.476078] ACPI Error: Aborting method \SMEE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[ 1067.476213] ACPI Error: Aborting method \SMIE due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[ 1067.476340] ACPI Error: Aborting method \NEVT due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
[ 1067.476691] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_NOT_FOUND) (20190215/psparse-529)
Comment 10 Arcadiy Ivanov 2019-07-23 11:50:25 UTC
(In reply to Kai-Heng Feng from comment #8)
> Arcadiy, please attach output of `find /sys -name edid | grep eDP | xargs
> cat | xxd`.

# find /sys -name edid | grep eDP | xargs cat | xxd
00000000: 00ff ffff ffff ff00 4d10 ba14 0000 0000  ........M.......
00000010: 161d 0104 a522 1378 0ede 50a3 544c 9926  .....".x..P.TL.&
00000020: 0f50 5400 0000 0101 0101 0101 0101 0101  .PT.............
00000030: 0101 0101 0101 ac37 80a0 7038 3e40 3020  .......7..p8>@0 
00000040: 3500 58c2 1000 0018 0000 0000 0000 0000  5.X.............
00000050: 0000 0000 0000 0000 0000 0000 00fe 004d  ...............M
00000060: 5750 3154 804c 5131 3536 4d31 0000 0000  WP1T.LQ156M1....
00000070: 0002 4103 3200 1200 000a 010a 2020 00d3  ..A.2.......  ..
Comment 11 Arcadiy Ivanov 2019-07-23 16:32:13 UTC
Same story with drm-tip (5.3.0rc1+). I'll be filing a i915 DRM bug for brightness control.
Comment 12 Arcadiy Ivanov 2019-07-23 17:10:41 UTC
DRM i915 upstream filed for backlight: https://bugs.freedesktop.org/show_bug.cgi?id=111202
Comment 13 Kai-Heng Feng 2019-07-23 18:26:24 UTC
This means your panel is a WLED one, so I think it's pretty similar to the OLED one I am working on.

We'll need to decide to control the backlight from kernel or userspace first.
Comment 14 Arcadiy Ivanov 2019-07-23 19:45:45 UTC
(In reply to Kai-Heng Feng from comment #13)
> This means your panel is a WLED one, so I think it's pretty similar to the
> OLED one I am working on.

According to Dell it's IGZO4, I'm fairly certain tech-wise it's not even close to OLED, although I have no idea about brightness control signalling.
Comment 15 Arcadiy Ivanov 2019-07-31 04:49:31 UTC
I can confirm that removing `i915.enable_dpcd_backlight=1` fixes the brightness issue.
Comment 16 Mario Limonciello 2019-07-31 19:03:09 UTC
@Arcadiy,

The question I'd have is why did you have that on your kernel command line in the first place rather than taking the kernel default behavior?
Comment 17 Arcadiy Ivanov 2019-07-31 21:08:09 UTC
That would be a good question. This OS has been moving from machine to machine for years and I think it was due to a brightness control issue in previous hardware (7510?).

At any rate, while brightness control is restored, the ACPI error spam continues regardless.
Comment 18 Arcadiy Ivanov 2019-08-01 01:24:56 UTC
Ha! I "remembered" why it was turned on. Without `enable_dpcd_backlight=1` external monitors fail to go to "energy saving" mode. So eDP1 goes to sleep but external monitors via TB hub don't.
Comment 19 Mario Limonciello 2019-08-01 18:53:33 UTC
I think that is worth bringing back up with the i915 guys.  There should be a happy medium; or at least a way to enable that on a per-display basis.

@KH

can you repro the ACPI errors though?  I do think we should get those cleaned up, even if brightness is working properly when not using enable_dpcd_backlight=1.
Comment 20 Kai-Heng Feng 2019-08-02 08:54:09 UTC
I can't reproduce the errors on latest BIOS (1.2.3) and Linux v5.13-rc2.
Comment 21 Arcadiy Ivanov 2019-08-02 21:23:32 UTC
I will test on 1.2.3.
Comment 22 Arcadiy Ivanov 2019-08-02 21:44:53 UTC
On 1.2.3 with 5.1.20-300.fc30 the ACPI errors are still there.
Comment 23 Ken Bell 2019-08-14 02:58:48 UTC
I'm seeing this also on a Dell Precision 7530 running CentOS 7.6.1810 with kernel 5.2.8-1.el7.elrepo.x86_64.

The errors appear whether the BIOS video options "Enable Switchable Graphics" and/or "Discrete Graphics Controller Direct Output Mode" (to bypass the Intel integrated graphics adapter) are enabled or disabled.

If I boot instead the 3.10.0-957.27.2.el7.x86_64 kernel then the above errors do not appear.
Comment 24 Zhang Rui 2019-09-03 12:31:50 UTC
acpiexec dsdt.dat:
- find BRT6
             \_SB.PCI0.GFX0.BRT6 Method       0x55e9480d0200 001 Args 2 Len 001A Aml 0x7f26bbc23cd9
        \_SB.PCI0.PEG0.PEGP.BRT6 Method       0x55e9480d2640 001 Args 2 Len 0022 Aml 0x7f26bbc2401b
- find LCD
              \_SB.PCI0.GFX0.LCD Device       0x55e9480cdf50 001 

so we have two BRT6 method, they share similar code.
it is okay for \_SB.PCI0.GFX0.BRT6 to use relative path LCD, but it is not okay for 
\_SB.PCI0.PEG0.PEGP.BRT6 to do so.

        Method (BRT6, 2, NotSerialized)
        {
            If ((EVD5 == One))
            {
                If ((Arg0 == One))
                {
                    Notify (LCD, 0x86) // Device-Specific
                }

                If ((Arg0 & 0x02))
                {
                    Notify (LCD, 0x87) // Device-Specific
                }
            }
        }
I guess the ACPI errors will go away if we replace LCD with \_SB.PCI0.GFX0.LCD.
Comment 25 Perry_Yuan 2019-12-25 06:59:34 UTC
(In reply to Arcadiy Ivanov from comment #15)
> I can confirm that removing `i915.enable_dpcd_backlight=1` fixes the
> brightness issue.

Because the Panel use the DPCD Aux channel to control the PWM of the backlight module.

You can try the latest i915 backlight patch from Lyude.
It can be patched into v5.5 rc2 kernel

https://patchwork.freedesktop.org/series/69914/

maybe you still need to add i915.enable_dpcd_backlight=1 to your grub to force the i915 work under dpcd backlight control mode.
Comment 26 Sharadh Rajaraman 2019-12-29 11:57:40 UTC
On my notebook, a Dell Precision 7530 running Arch Linux with kernel 5.4.6.arch3-1, pressing the brightness up/down keys (Fn + up/down arrows) throws precisely the same seven lines of ACPI errors. 

However, writing values directly to /sys/class/intel_backlight/brightness *works* (as described in the Arch wiki: https://wiki.archlinux.org/index.php/Backlight#ACPI ) and the internal LCD brightness changes. 

I haven’t tried using the kernel parameter i915.enable_dpcd_backlight=1 yet, but I shall as soon as I get back to my notebook. 

That said, I’m more interested in patching the SSDT method if possible, to keep the native functionality, as mentioned in the comment:

(In reply to Zhang Rui from comment #24)
> acpiexec dsdt.dat:
> - find BRT6
>              \_SB.PCI0.GFX0.BRT6 Method       0x55e9480d0200 001 Args 2 Len
> 001A Aml 0x7f26bbc23cd9
>         \_SB.PCI0.PEG0.PEGP.BRT6 Method       0x55e9480d2640 001 Args 2 Len
> 0022 Aml 0x7f26bbc2401b
> - find LCD
>               \_SB.PCI0.GFX0.LCD Device       0x55e9480cdf50 001 
> 
> so we have two BRT6 method, they share similar code.
> it is okay for \_SB.PCI0.GFX0.BRT6 to use relative path LCD, but it is not
> okay for 
> \_SB.PCI0.PEG0.PEGP.BRT6 to do so.
> 
>         Method (BRT6, 2, NotSerialized)
>         {
>             If ((EVD5 == One))
>             {
>                 If ((Arg0 == One))
>                 {
>                     Notify (LCD, 0x86) // Device-Specific
>                 }
> 
>                 If ((Arg0 & 0x02))
>                 {
>                     Notify (LCD, 0x87) // Device-Specific
>                 }
>             }
>         }
> I guess the ACPI errors will go away if we replace LCD with
> \_SB.PCI0.GFX0.LCD.
Comment 27 Zhang Rui 2019-12-30 09:56:18 UTC
so anyone can try patch the ACPI table and check if the ACPI errors are gone or not?
Comment 28 Perry_Yuan 2020-01-06 05:33:42 UTC
(In reply to Zhang Rui from comment #27)
> so anyone can try patch the ACPI table and check if the ACPI errors are gone
> or not?

Hi Rui.
I could help to try your patch if you can tell me what steps i need to follow.
Comment 29 Zhang Rui 2020-01-06 06:21:40 UTC
Created attachment 286641 [details]
custom dsdt for brt6

please make sure your kernel is built with CONFIG_ACPI_CUSTOM_METHOD set.
and then run "cat brt6.aml > /sys/kernel/debug/acpi/custom_method", and then check if the ACPI error messages can be reproduced or not.
Comment 30 madcamel 2020-01-15 03:04:10 UTC
I can confirm this bug with a Precision 5540 with vanilla 5.4.11. 

In kernel 5.1.x I was able to adjust my backlight by poking intel_backlight in sysfs. After updating to 5.3.x I lost this ability. I believe there is a regression here.

The ACPI messages appear to be an independent issue from the backlight control issue. I've always gotten the ACPI messages, even when backlight control used to work correctly.

I have tried building a kernel with CONFIG_ACPI_CUSTOM_METHOD and following Zhang's instructions. There was no change in behavior.
Comment 31 Zhang Rui 2020-01-15 03:21:56 UTC
(In reply to madcamel from comment #30)
> I can confirm this bug with a Precision 5540 with vanilla 5.4.11. 
> 
> In kernel 5.1.x I was able to adjust my backlight by poking intel_backlight
> in sysfs. After updating to 5.3.x I lost this ability. I believe there is a
> regression here.
> 
for this particular problem, please report a graphics bug instead
Comment 32 Artur 2020-01-26 15:58:28 UTC
Same problem on Dell Precision 7730 (UHD screen, integrated GPU). Brightness does not change pressing below keys, there are similar errors instead.

Fn+Up
Jan 26 08:52:38 P7730 kernel: [ 2740.582555] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PEG0.NHDA], AE_NOT_FOUND (20190816/psargs-330)
Jan 26 08:52:38 P7730 kernel: [ 2740.582575] ACPI Error: Aborting method \NEVT due to previous error (AE_NOT_FOUND) (20190816/psparse-529)
Jan 26 08:52:38 P7730 kernel: [ 2740.582588] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_NOT_FOUND) (20190816/psparse-529)

Fn+Down
Jan 26 08:52:46 P7730 kernel: [ 2748.592444] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PEG0.NHDA], AE_NOT_FOUND (20190816/psargs-330)
Jan 26 08:52:46 P7730 kernel: [ 2748.592461] ACPI Error: Aborting method \NEVT due to previous error (AE_NOT_FOUND) (20190816/psparse-529)
Jan 26 08:52:46 P7730 kernel: [ 2748.592474] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_NOT_FOUND) (20190816/psparse-529)

Dell firmware is newest:
root@P7730:~# fwupdmgr get-updates
No upgrades for Thunderbolt Controller: current version is 41.00: 41.00=same, 36.00=older
No upgrades for System Firmware: current version is 1.12.1: 1.12.1=same, 1.11.0=older, 1.10.1=older, 1.9.0=older, 1.8.2=older

I tried downgrade BIOS to 1.10.1 a few weeks ago, it restored brightness control, AFAIR there were no errors in syslog.

On the other hand I restored Ubuntu 16.04 image (shipped with this machine) - brightness control worked here, whichever BIOS version was: 10,11,12. After dist-upgrade to 18.04 then 19.10 brightness control was lost again, same errors.

Current kernel in Debian testing:
$ uname -a
Linux P7730 5.4.0-3-amd64 #1 SMP Debian 5.4.13-1 (2020-01-19) x86_64 GNU/Linux

Tried also this option:
# systool -vm i915 | grep dpcd
    enable_dpcd_backlight= "1"
But it didn't help.

And grub parameters "acpi_osi=Linux acpi_backlight=vendor", all to no avail.
Comment 33 Zhang Rui 2020-06-29 09:51:46 UTC
So we have two problems here.
One is the ACPI errors.
Another one is a kernel regression which breaks backlight control.

For the second one, please report a bug to the graphics experts.

For the first one, I'd prefer to close it as it seems harmless (according to comment #30), and they're caused by buggy AML code IMO (according to comment #32).
Comment 34 Artur 2020-06-29 16:51:25 UTC
Dell released a new BIOS version 1.13.1 a few weeks ago. I made an upgrade, above ACPI BIOS errors do not occur anymore, but brightness control using default shortcuts (Fn+Up|Down) still does not work. Kernel version 5.6.0-2-amd64, video driver i915.

I'll try to find these graphics experts, wherever they exist ;-)
Comment 35 Vasily Khoruzhick 2020-07-12 00:42:55 UTC
I have the same issue with XPS 15 7590. I patched DSDT with suggested fix and I'm loading it using initrd and it fixes the issue for me.
Comment 36 Zhang Rui 2020-07-13 00:34:06 UTC
@Artur, please check this page https://bugs.freedesktop.org/ first.

You probably can raise your problem to https://gitlab.freedesktop.org/drm
Comment 37 TechGliTcH 2022-09-30 15:37:13 UTC
September of 2022, I'm on Ubuntu 22.04 using 5.19.0-12.1-liquorix-amd64 kernel and I can confirm I see the same problem still when adjusting the brightness on a Dell Precision 5540 with OLED panel and Nvidia+Intel graphics card, profile is set to "NVIDIA On-Demand" so Intel CoffeeLake-H GT2 (UHD Graphics 630) is the main driver and nvidia quadro t2000 just boosts when needed, which isn't often.

------------
[163874.296179] ACPI BIOS Error (bug): Could not resolve symbol [\_SB.PCI0.PEG0.PEGP.BRT6.LCD], AE_NOT_FOUND (20220331/psargs-330)
[163874.296190] ACPI Error: Aborting method \_SB.PCI0.PEG0.PEGP.BRT6 due to previous error (AE_NOT_FOUND) (20220331/psparse-529)
[163874.296240] ACPI Error: Aborting method \EV5 due to previous error (AE_NOT_FOUND) (20220331/psparse-529)
[163874.296288] ACPI Error: Aborting method \SMEE due to previous error (AE_NOT_FOUND) (20220331/psparse-529)
[163874.296337] ACPI Error: Aborting method \SMIE due to previous error (AE_NOT_FOUND) (20220331/psparse-529)
[163874.296386] ACPI Error: Aborting method \NEVT due to previous error (AE_NOT_FOUND) (20220331/psparse-529)
[163874.296434] ACPI Error: Aborting method \_SB.PCI0.LPCB.ECDV._Q66 due to previous error (AE_NOT_FOUND) (20220331/psparse-529)
------------

I have not yet tried i915.enable_dpcd_backlight=1 ;  but the brightness control does seem to work, but it gets a little funny around 85%, like up to 85% it's adjusting the brighness but 90/95/100 it's instead playing with the contrast.