[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <3981bf9d-e721-628e-b88a-c75614a5cc64@redhat.com>
Date: Mon, 30 Mar 2020 23:32:47 +0200
From: Hans de Goede <hdegoede@...hat.com>
To: Randy Dunlap <rdunlap@...radead.org>,
Paul Menzel <pmenzel@...gen.mpg.de>,
Zhang Rui <rui.zhang@...el.com>
Cc: linux-acpi@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: ACPI Video Driver creates backlight on desktop board
Hi,
On 3/30/20 11:25 PM, Randy Dunlap wrote:
> On 3/30/20 1:51 PM, Hans de Goede wrote:
>> Hi,
>>
>> On 3/29/20 11:36 AM, Paul Menzel wrote:
>>> Dear Linux folks,
>>>
>>>
>>> On the MSI desktop board [1]
>>>
>>> [ 0.000000] DMI: Micro-Star International Co., Ltd. MS-7A37/B350M MORTAR (MS-7A37), BIOS 1.MR 12/02/2019
>>>
>>> with an AMD Ryzen 3 2200G with Radeon Vega Graphics, the ACPI Video Driver `video` is loaded and creates a backlight device.
>>>
>>> $ readlink -f /sys/class/backlight/acpi_video0
>>> /sys/devices/pci0000:00/0000:00:08.1/0000:26:00.0/backlight/acpi_video0
>>>
>>> I wonder what the driver is used for as the AMDGPU driver exists for the graphics device.
>>
>> Backlight on x86 hw is a bit of a mess, there is an ACPI standard for accessing it
>> and with older (Windows XP era) laptops that is the interface which usually works,
>> then there are a bunch of vendor specific SMBIOS or WMI backlight interfaces and
>> then there is the option of directly accessing the hardware as the amdgpu driver
>> is doing.
>>
>> We have a bunch of heuristics to avoid the acpi_video driver registering a
>> backlight interface when it should not, either because the direct hw access
>> should be used instead; or because there simply is no builtin LCD panel and thus
>> no backlight to control.
>>
>> These heuristics are failing on your board.
>>
>>> If it’s useful, is there a way to prevent the backlight interface from getting created?
>>
>> You can pass "acpi_backlight=ignore" on the kernel commandline to disable the
>
> Hi Hans,
> Should that be "acpi_backlight=none"? I don't see 'ignore' allowed here:
>
> static void acpi_video_parse_cmdline(void)
> {
> if (!strcmp("vendor", acpi_video_backlight_string))
> acpi_backlight_cmdline = acpi_backlight_vendor;
> if (!strcmp("video", acpi_video_backlight_string))
> acpi_backlight_cmdline = acpi_backlight_video;
> if (!strcmp("native", acpi_video_backlight_string))
> acpi_backlight_cmdline = acpi_backlight_native;
> if (!strcmp("none", acpi_video_backlight_string))
> acpi_backlight_cmdline = acpi_backlight_none;
> }
Yes you are right that should be "acpi_backlight=none".
> and Documentation/admin-guide/kernel-parameters.txt could stand to be updated
> with a few of those options.
Ack, I've put this on my (much too long) TODO list. Feel free to
beat me to it.
Regards,
Hans
>
>
>> interface, this will stop e.g. gnome from showing a non working brightness
>> slider in its top right system menu.
>>
>> If this works you can make this permanent and avoid other users from having to
>> do the same thing by writing a patch adding a quirk for this like this one:
>>
>> https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=d21a91629f4b8e794fc4c0e0c17c85cedf1d806c
>
>
Powered by blists - more mailing lists