[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAJZ5v0gqywy7o69fD4F4Snjb5Oh1Z44GD=C_WfkiSyW7NrxsGw@mail.gmail.com>
Date: Tue, 3 Oct 2023 20:36:07 +0200
From: "Rafael J. Wysocki" <rafael@...nel.org>
To: Ondrej Zary <linux@...y.sk>
Cc: "Rafael J . Wysocki" <rafael@...nel.org>,
Len Brown <lenb@...nel.org>, linux-acpi@...r.kernel.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] ACPI: video: Add acpi_backlight=vendor quirk for Toshiba Portégé R100
On Fri, Sep 29, 2023 at 10:21 PM Ondrej Zary <linux@...y.sk> wrote:
>
> Toshiba Portégé R100 has both acpi_video and toshiba_acpi vendor
> backlight driver working. But none of them gets activated as it has
> a VGA with no kernel driver (Trident CyberBlade XP4m32).
>
> The DMI strings are very generic ("Portable PC") so add a custom
> callback function to check for Trident CyberBlade XP4m32 PCI device
> before enabling the vendor backlight driver (better than acpi_video
> as it has more brightness steps).
>
> Fixes: 5aa9d943e9b6 ("ACPI: video: Don't enable fallback path for creating ACPI backlight by default")
> Signed-off-by: Ondrej Zary <linux@...y.sk>
> ---
> drivers/acpi/video_detect.c | 26 ++++++++++++++++++++++++++
> 1 file changed, 26 insertions(+)
>
> diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c
> index 442396f6ed1f..31205fee59d4 100644
> --- a/drivers/acpi/video_detect.c
> +++ b/drivers/acpi/video_detect.c
> @@ -130,6 +130,16 @@ static int video_detect_force_native(const struct dmi_system_id *d)
> return 0;
> }
>
> +static int video_detect_portege_r100(const struct dmi_system_id *d)
> +{
> + struct pci_dev *dev;
> + /* Search for Trident CyberBlade XP4m32 to confirm Portégé R100 */
> + dev = pci_get_device(PCI_VENDOR_ID_TRIDENT, 0x2100, NULL);
> + if (dev)
> + acpi_backlight_dmi = acpi_backlight_vendor;
> + return 0;
> +}
> +
> static const struct dmi_system_id video_detect_dmi_table[] = {
> /*
> * Models which should use the vendor backlight interface,
> @@ -270,6 +280,22 @@ static const struct dmi_system_id video_detect_dmi_table[] = {
> },
> },
>
> + /*
> + * Toshiba Portégé R100 has working both acpi_video and toshiba_acpi
> + * vendor driver. But none of them gets activated as it has a VGA with
> + * no kernel driver (Trident CyberBlade XP4m32).
> + * The DMI strings are generic so check for the VGA chip in callback.
> + */
> + {
> + .callback = video_detect_portege_r100,
> + .matches = {
> + DMI_MATCH(DMI_SYS_VENDOR, "TOSHIBA"),
> + DMI_MATCH(DMI_PRODUCT_NAME, "Portable PC"),
> + DMI_MATCH(DMI_PRODUCT_VERSION, "Version 1.0"),
> + DMI_MATCH(DMI_BOARD_NAME, "Portable PC")
> + },
> + },
> +
> /*
> * Models which need acpi_video backlight control where the GPU drivers
> * do not call acpi_video_register_backlight() because no internal panel
> --
Applied as 6.7 material, thanks!
Powered by blists - more mailing lists