Difference between revisions of "IoTGateway/BSP/Android/Gettingstarted/How to set LCD backlight using PWM"
(Created page with "<span style="font-size:large;">'''1. How to set the pwm-backlight?'''</span> pwm-backlight bindings Required properties:<br/> - compatible: "pwm-backlight"<br/> ...") |
|||
Line 36: | Line 36: | ||
</pre> | </pre> | ||
− | + | ||
<span style="font-size:large;">'''2. How to check the pwm-backlight path for Android'''</span> | <span style="font-size:large;">'''2. How to check the pwm-backlight path for Android'''</span> | ||
Line 57: | Line 57: | ||
+ | |||
+ | '''<span style="font-size:large;"></span>''' | ||
'''<span style="font-size:large;">3. How to control pwm-backlight from Android setting</span>''' | '''<span style="font-size:large;">3. How to control pwm-backlight from Android setting</span>''' | ||
Line 64: | Line 66: | ||
− | 4. How to control pwm-backlight in command line | + | |
+ | |||
+ | <span style="font-size:large;">'''4. How to control pwm-backlight in command line'''</span> | ||
<pre>#cd /sys/class/backlight/backlight</pre> | <pre>#cd /sys/class/backlight/backlight</pre> | ||
Line 70: | Line 74: | ||
<pre># cat brightness</pre> | <pre># cat brightness</pre> | ||
− | b. change the brightness level | + | '''b. change the brightness level''' |
<pre>#echo 3 > brightness</pre> | <pre>#echo 3 > brightness</pre> | ||
− | c. check the max brightness | + | '''c. check the max brightness''' |
<pre>#cat max_brightness | <pre>#cat max_brightness | ||
</pre> | </pre> | ||
+ | '''d. turn off pwm backlight power''' | ||
+ | <pre>#echo 1 > bl_power</pre> | ||
− | + | '''e. turn on pwm backlight power''' | |
− | '''< | + | <pre># echo 0 > bl_power</pre> |
Latest revision as of 09:53, 2 February 2017
1. How to set the pwm-backlight?
pwm-backlight bindings
Required properties:
- compatible: "pwm-backlight"
- pwms: OF device-tree PWM specification (see PWM binding[0])
- brightness-levels: Array of distinct brightness levels. Typically these
are in the range from 0 to 255, but any range starting at 0 will do.
The actual brightness level (PWM duty cycle) will be interpolated
from these values. 0 means a 0% duty cycle (darkest/off), while the
last value in the array represents a 100% duty cycle (brightest).
- default-brightness-level: the default brightness level (index into the
array defined by the "brightness-levels" property)
- power-supply: regulator for supply voltage
Optional properties:
- pwm-names: a list of names for the PWM devices specified in the
"pwms" property (see PWM binding[0])
- enable-gpios: contains a single GPIO specifier for the GPIO which enables
and disables the backlight (see GPIO binding[1])
[0]: Documentation/devicetree/bindings/pwm/pwm.txt
[1]: Documentation/devicetree/bindings/gpio/gpio.txt
Example:
backlight { compatible = "pwm-backlight"; pwms = <&pwm 0 5000000>; brightness-levels = <0 4 8 16 32 64 128 255>; default-brightness-level = <6>; power-supply = <&vdd_bl_reg>; enable-gpios = <&gpio 58 0>; };
In ELAA, you can set it in kernel_imx/arch/arm/boot/dts/imx6qdl-advantech.dtsi
... bkl: backlight { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_lvds_bkl_1 &pinctrl_lvds_vcc_1>; compatible = "pwm-backlight"; brightness-levels = <0 4 8 16 32 64 128 255>; default-brightness-level = <7>; status = "disabled"; }; ...
2. How to check the pwm-backlight path for Android
The pwm-backlight path is at /sys/class/backlight/backlight
We must make sure the pwm-backlight path is correct for Android.
For ROM 7421, the related file is device/fsl/rom_7421_a1/init.rc
For ROM 3420, the related file is device/fsl/rom_3420_a1/init.rc
.... # Default backlight device setprop hw.backlight.dev "backlight" # Chmod/chown FSL specific sys entry chown system system /sys/class/backlight/backlight/brightness chmod 0660 /sys/class/backlight/backlight/brightness ...
3. How to control pwm-backlight from Android setting
Go to Android (Settings--> Display--> Brightness level), to adjust the pwm-backlight bar, then check whether the backlight is changed as adjusting the control bar.
4. How to control pwm-backlight in command line
#cd /sys/class/backlight/backlight
a. check current brightness level
# cat brightness
b. change the brightness level
#echo 3 > brightness
c. check the max brightness
#cat max_brightness
d. turn off pwm backlight power
#echo 1 > bl_power
e. turn on pwm backlight power
# echo 0 > bl_power