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 > -- > 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