Difference between revisions of "BackLight"

From ArmadeusWiki
Jump to: navigation, search
m (Introduction)
(Usage)
Line 12: Line 12:
 
==Usage==
 
==Usage==
  
On your APF, load the module:
+
On your APF, load the module (not needed on [[APF6]]):
 
<pre class="apf">
 
<pre class="apf">
 
  # modprobe imx_bl
 
  # modprobe imx_bl
 
  i.MX Backlight driver v0.X initialized.
 
  i.MX Backlight driver v0.X initialized.
 
</pre>
 
</pre>
 +
 +
* Depending on your platform, backlight interface may have a different name, so let's define an envt variable to ease further instructions:
 +
{| border="1" cellpadding="10" cellspacing="0" summary="PWM usage depending on kernel version" class="wikitable"
 +
|- style="background:#efefef;" align="center"
 +
! APF27/51/28 || APF6
 +
|-----
 +
 +
|<pre class="apf">
 +
export BACK_IF=imx-bl
 +
</pre>
 +
 +
||<pre class="apf">
 +
export BACK_IF=backlight_lcd
 +
</pre>
 +
 +
|}
  
 
All backlight controls are done through the ''/sys'' interface:
 
All backlight controls are done through the ''/sys'' interface:
 
<pre class="apf">
 
<pre class="apf">
  # ls /sys/class/backlight/imx-bl/
+
  # ls /sys/class/backlight/$BACK_IF/
 
  actual_brightness  max_brightness    subsystem
 
  actual_brightness  max_brightness    subsystem
 
  brightness        power              uevent
 
  brightness        power              uevent
Line 31: Line 47:
 
* To see the max allowed brightness:
 
* To see the max allowed brightness:
 
<pre class="apf">
 
<pre class="apf">
  # cat /sys/class/backlight/imx-bl/max_brightness
+
  # cat /sys/class/backlight/$BACK_IF/max_brightness
 
</pre>
 
</pre>
 
* To change the brightness:
 
* To change the brightness:
 
<pre class="apf">
 
<pre class="apf">
  # echo 100 > /sys/class/backlight/imx-bl/brightness
+
  # echo 100 > /sys/class/backlight/$BACK_IF/brightness
 
</pre>
 
</pre>
  

Revision as of 18:28, 15 April 2016

This page will explain you how to configure and use the Linux driver controlling the BackLight of your LCD

Introduction

Backlight control is done through the i.MX integrated backlight PWM (inside LCDC module). The output signal of this PWM is redirected to the CONTRAST pin of your LCD connector.

In short the driver is mainly exporting a /sys interface to user space, allowing you to change the Duty Cycle of the PWM output signal and so the backlight intensity of the LCD.

Installation

This driver is now installed by default on the standard Armadeus rootfs.

Usage

On your APF, load the module (not needed on APF6):

 # modprobe imx_bl
 i.MX Backlight driver v0.X initialized.
  • Depending on your platform, backlight interface may have a different name, so let's define an envt variable to ease further instructions:
APF27/51/28 APF6
export BACK_IF=imx-bl
export BACK_IF=backlight_lcd

All backlight controls are done through the /sys interface:

 # ls /sys/class/backlight/$BACK_IF/
 actual_brightness  max_brightness     subsystem
 brightness         power              uevent
  • To see the actual brightness:
 # cat /sys/class/backlight/imx-bl/actual_brightness
  • To see the max allowed brightness:
 # cat /sys/class/backlight/$BACK_IF/max_brightness
  • To change the brightness:
 # echo 100 > /sys/class/backlight/$BACK_IF/brightness

Examples

  • There is a small test script (shell) in target/linux/modules/backlight/test/
  • For a C/SDL example, take a look at target/demos/backlight_control/

Links