lkml.org 
[lkml]   [2012]   [Jun]   [26]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/7] acpi: add a way to promote/demote vendor backlight drivers
Hi Corentin,

On Wed, Jun 13, 2012 at 09:32:01AM +0200, Corentin Chary wrote:
...
> +/* Promote the vendor interface instead of the generic video module.
> + * This function allow DMI blacklists to be implemented by externals
> + * platform drivers instead of putting a big blacklist in video_detect.c
> + * After calling this function you will probably want to call
> + * acpi_video_unregister() to make sure the video module is not loaded
> + */
> +void acpi_video_dmi_promote_vendor(void)
> +{
> + acpi_video_caps_check();
> + acpi_video_support |= ACPI_VIDEO_BACKLIGHT_DMI_VENDOR;
> +}
> +EXPORT_SYMBOL(acpi_video_dmi_promote_vendor);

I think having the promote_vendor() function do the sanity check on the
acpi_backlight parameter and the unregistering of the acpi_video device
may make the code cleaner and more acpi_video-agnostic in the drivers.
I.e. (untested sample code):

bool acpi_video_promote_vendor(void)
{
if (acpi_video_backlight_support())
return false;

acpi_video_support |= ACPI_VIDEO_BACKLIGHT_DMI_VENDOR;
pr_info("Disabling ACPI video driver\n");
acpi_video_unregister();
return true;
}
EXPORT_SYMBOL(acpi_video_promote_vendor);

and in the drivers you do

if (my_drv->broken_acpi_video) {
if (acpi_video_promote_vendor())
do_backlight_init();
} else if (!acpi_video_backlight_support())
do_backlight_init();

or something along these lines.
If you give a boolean parameter to acpi_video_promote_vendor to force
vendor backlight we could make the drivers' code even simpler but that
would change the semantics of the "promotion" to something more of a
"take-over".

PS: I will need to promote backlight control in sony-laptop.ko
eventually as well but I don't have a DMI based list but rather I should
look at a specific handle (or say Method) presence in the SNC Device.
I guess I'm just bothered by the function naming here but not a big
deal. :)
--
mattia
:wq!


\
 
 \ /
  Last update: 2012-06-27 01:01    [W:0.057 / U:0.644 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site