public inbox for linux-acpi@vger.kernel.org
 help / color / mirror / Atom feed
From: yakui_zhao <yakui.zhao@intel.com>
To: lenb@kernel.org
Cc: linux-acpi@vger.kernel.org, rpurdie@linux.intel.com
Subject: a backlight issue
Date: Thu, 25 Jun 2009 10:09:09 +0800	[thread overview]
Message-ID: <1245895749.7266.70.camel@localhost.localdomain> (raw)

Hi, Len
    
    On some boxes there is neither generic ACPI backlight I/F nor
platform backlight I/F. That means that the backlight brightness can't
be changed by using sys backlight I/F. But the backlight brightness can
be changed by using the driver backlight I/F. For example: on the box
based on intel-integrated graphics card the backlight brightness can
also be changed by using the LBB register in pci device. 
    Can the graphics driver register the sys backlight I/F so that we
can change the backlight by using sys I/F? 
    
    If the graphics driver can also register the backlight I/F, it seems
that we can register three types of backlight I/F.
    a. generic ACPI backlight I/F. This is registered by acpi video
driver.
    b. platform backlight I/F. This is registered by the platform driver
    c. graphics backlight I/F. This can be registered by the graphics
driver.

    As there exist three types of backlight I/F, how can we make the
coordination among the three backlight I/F? In fact only one backlight
I/f is enough for user to change the brightness.

Rui provides a propose that use the backlight manager to choose the
appropriate the backlight I/F. 
    backlight manager only exports one single I/F to users, like:
----|
    |----brightness
    |----actual_brightness
    |----max_brightness
    |----...
    |----mode
and it supports multiple modes, e.g.
1. generic ---ACPI
2. platform---platform drivers
3. legacy-----i915

The sysfs backlight manager always chooses the mode with highest
priority (generic > platform > legacy), and call the respective
callbacks when backlight is changed.
For example, the backlight manager switches to the "generic" mode from
"legacy" mode automatically when ACPI video driver is loaded at runtime.
  
   How about the above propose?

 
BTW: now in the video driver only one of acpi generic backlight I/F and
platform backlight I/F is registered. That means that the acpi generic
backlight I/F is preferred if it exists. Of course we can switch to the
platform backlight I/F by adding the boot option of
"acpi_backlight=vendor".  In summary, the platform driver will check
whether the acpi generic backlight is supported before registering the
platform backlight I/F.


Thanks.

   


             reply	other threads:[~2009-06-25  2:08 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-25  2:09 yakui_zhao [this message]
2009-06-25  9:39 ` a backlight issue Richard Purdie
2009-08-05 12:50 ` Thomas Renninger
2009-08-06 12:55   ` Henrique de Moraes Holschuh
2009-08-06 13:38     ` Thomas Renninger
2009-08-06 19:50       ` Henrique de Moraes Holschuh
2009-08-07  8:25         ` Thomas Renninger
2009-08-23 12:41           ` Henrique de Moraes Holschuh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1245895749.7266.70.camel@localhost.localdomain \
    --to=yakui.zhao@intel.com \
    --cc=lenb@kernel.org \
    --cc=linux-acpi@vger.kernel.org \
    --cc=rpurdie@linux.intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox