Re: [PATCH] ACPI / Video: blacklist some samsung laptops

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Feb 20, 2012 at 12:06 PM, David Herrmann
<dh.herrmann@xxxxxxxxxxxxxx> wrote:
> Hi Len
>
> On Sun, Feb 19, 2012 at 8:56 PM, Corentin Chary
> <corentin.chary@xxxxxxxxx> wrote:
>> On Mon, Jan 30, 2012 at 9:26 AM, Corentin Chary
>> <corentin.chary@xxxxxxxxx> wrote:
>>> On Tue, Jan 17, 2012 at 8:08 AM, Corentin Chary <corentincj@xxxxxxxxxx> wrote:
>>>> On these laptops, the ACPI video is not functional, and very unlikely
>>>> to be fixed by the vendor. Note that intel_backlight works for some
>>>> of these laptops, and the backlight from samsung-laptop always work.
>>>>
>>>> The good news is that newer laptops have functional ACPI video device
>>>> and won't end up growing this list.
>>>>
>>>> Signed-off-by: Corentin Chary <corentincj@xxxxxxxxxx>
>>>> ---
>>>>  drivers/acpi/video_detect.c |   49 +++++++++++++++++++++++++++++++++++++++++++
>>>>  1 files changed, 49 insertions(+), 0 deletions(-)
>>>>
>>>> diff --git a/drivers/acpi/video_detect.c b/drivers/acpi/video_detect.c
>>>> index 45d8097..66be45e 100644
>>>> --- a/drivers/acpi/video_detect.c
>>>> +++ b/drivers/acpi/video_detect.c
>>>> @@ -132,6 +132,53 @@ find_video(acpi_handle handle, u32 lvl, void *context, void **rv)
>>>>        return AE_OK;
>>>>  }
>>>>
>>>> +/* Force to use vendor driver when the ACPI device is known to be
>>>> + * buggy */
>>>> +static int video_detect_force_vendor(const struct dmi_system_id *d)
>>>> +{
>>>> +       acpi_video_support |= ACPI_VIDEO_BACKLIGHT_DMI_VENDOR;
>>>> +       return 0;
>>>> +}
>>>> +
>>>> +static struct dmi_system_id video_detect_dmi_table[] = {
>>>> +       {
>>>> +        .callback = video_detect_force_vendor,
>>>> +        .ident = "N150P",
>>>> +        .matches = {
>>>> +               DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
>>>> +               DMI_MATCH(DMI_PRODUCT_NAME, "N150P"),
>>>> +               DMI_MATCH(DMI_BOARD_NAME, "N150P"),
>>>> +               },
>>>> +       },
>>>> +       {
>>>> +        .callback = video_detect_force_vendor,
>>>> +        .ident = "N145P/N250P/N260P",
>>>> +        .matches = {
>>>> +               DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
>>>> +               DMI_MATCH(DMI_PRODUCT_NAME, "N145P/N250P/N260P"),
>>>> +               DMI_MATCH(DMI_BOARD_NAME, "N145P/N250P/N260P"),
>>>> +               },
>>>> +       },
>>>> +       {
>>>> +        .callback = video_detect_force_vendor,
>>>> +        .ident = "N150/N210/N220",
>>>> +        .matches = {
>>>> +               DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
>>>> +               DMI_MATCH(DMI_PRODUCT_NAME, "N150/N210/N220"),
>>>> +               DMI_MATCH(DMI_BOARD_NAME, "N150/N210/N220"),
>>>> +               },
>>>> +       },
>>>> +       {
>>>> +        .callback = video_detect_force_vendor,
>>>> +        .ident = "NF110/NF210/NF310",
>>>> +        .matches = {
>>>> +               DMI_MATCH(DMI_SYS_VENDOR, "SAMSUNG ELECTRONICS CO., LTD."),
>>>> +               DMI_MATCH(DMI_PRODUCT_NAME, "NF110/NF210/NF310"),
>>>> +               DMI_MATCH(DMI_BOARD_NAME, "NF110/NF210/NF310"),
>>>> +               },
>>>> +       },
>>>> +};
>>>> +
>>>>  /*
>>>>  * Returns the video capabilities of a specific ACPI graphics device
>>>>  *
>>>> @@ -164,6 +211,8 @@ long acpi_video_get_capabilities(acpi_handle graphics_handle)
>>>>                 *              ACPI_VIDEO_BACKLIGHT_DMI_VENDOR;
>>>>                 *}
>>>>                 */
>>>> +
>>>> +               dmi_check_system(video_detect_dmi_table);
>>>>        } else {
>>>>                status = acpi_bus_get_device(graphics_handle, &tmp_dev);
>>>>                if (ACPI_FAILURE(status)) {
>>>> --
>>>> 1.7.5.4
>>>>
>>>
>>> Hi Len,
>>>
>>> Maybe this patch should go through your tree and not platform-drivers-x86 ?
>>
>> Ping ?
>
> This is actually a regression on Samsung notebooks as the backlight is
> no longer working with linux-3.2. It would be really nice to see this
> in the stable branch or at least in linux-3.3.
>
> The samsung driver disables its own backlight driver if ACPI core
> handles the backlight since linux-3.2. If you don't want to pickup
> this patch it would be nice to see the samsung driver fixing this
> issue.
>
> Regards
> David

David, please note that non of my changes are merged in 3.2 or 3.3,
they are still in the platform-x86 tree.
But you are right, if they are merged in 3.4 (and I really hope so)
then we will need this patch or there will be a regression.
Anyway, this patch can, and should, be merged as soon as possible
because DE or even xrandr may want to use the non functionnal acpi
backlight instead of others.

Thanks,


-- 
Corentin Chary
http://xf.iksaif.net
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux IBM ACPI]     [Linux Power Management]     [Linux Kernel]     [Linux Laptop]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Samba]     [Video 4 Linux]     [Device Mapper]     [Linux Resources]

  Powered by Linux