Hi Corentin, 於 三,2012-06-13 於 09:32 +0200,Corentin Chary 提到: > Instead of using directly acpi_video_unregister(), use > acpi_video_dmi_promote_vendor() (and make it call > acpi_video_unregister() if needed) > > Signed-off-by: Corentin Chary <corentin.chary@xxxxxxxxx> > --- > drivers/platform/x86/acer-wmi.c | 16 +++++++++------- > drivers/platform/x86/apple-gmux.c | 6 ++++++ > drivers/platform/x86/samsung-laptop.c | 22 ++++++++++++---------- > 3 files changed, 27 insertions(+), 17 deletions(-) > > diff --git a/drivers/platform/x86/acer-wmi.c b/drivers/platform/x86/acer-wmi.c > index ce875dc..ffc53df 100644 > --- a/drivers/platform/x86/acer-wmi.c > +++ b/drivers/platform/x86/acer-wmi.c > @@ -2060,14 +2060,16 @@ static int __init acer_wmi_init(void) > > set_quirks(); > > + if (dmi_check_system(video_vendor_dmi_table)) > + acpi_video_dmi_promote_vendor(); > if (acpi_video_backlight_support()) { > - if (dmi_check_system(video_vendor_dmi_table)) { > - acpi_video_unregister(); > - } else { > - interface->capability &= ~ACER_CAP_BRIGHTNESS; > - pr_info("Brightness must be controlled by " > - "acpi video driver\n"); > - } > + interface->capability &= ~ACER_CAP_BRIGHTNESS; > + pr_info("Brightness must be controlled by acpi video driver\n"); > + } else { > +#ifdef CONFIG_ACPI_VIDEO The 'ifdef CONFIG_ACPI_VIDEO' didn't work on my machine with v3.4 kernel, the acpi video didn't unregister. My autoconf.h like following: include/generated/autoconf.h:#define CONFIG_ACPI_VIDEO_MODULE 1 Need use: -#ifdef CONFIG_ACPI_VIDEO +#if (defined CONFIG_ACPI_VIDEO || defined CONFIG_ACPI_VIDEO_MODULE) pr_info("Disabling ACPI video driver\n"); acpi_video_unregister(); #endif I tested the above change works to me. Thanks a lot! Joey Lee -- To unsubscribe from this list: send the line "unsubscribe platform-driver-x86" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html