LCD进入睡眠
echo "0" > /sys/class/graphics/fb0/blank
LCD显示退出睡眠模式方法
1、 echo -e "\033[9;0]" > /dev/tty0
2、echo 1 > /sys/class/graphics/fb0/blank
如果想屏幕永不休眠,在UBOOT启动参数bootargs中增加 consoleblank=0
在/sys/class/graphics/fbx/ 下的属性文件可以显示当前显示的一些属性。
比如root@sabresd_6dq:/sys/class/graphics/fb0 # ls
bits_per_pixel
blank
console
cursor
dev
device
fsl_disp_dev_property
fsl_disp_property
mode
modes
name
pan
power
rotate
state
stride
subsystem
uevent
virtual_size
root@sabresd_6dq:/sys/class/graphics/fb0 # cat fsl_disp_dev_property
lcd
表示当前显示设备为 LCD
root@sabresd_6dq:/sys/class/graphics/fb0 # cat mode
U:1024x768p-59
表示当前显示分辨率
# cat fsl_disp_property
2-layer-fb-bg
2-layer-fb-bg,表示fb0使用MEM_BG_SYNC通道,在IPU 的Display Process模块和MEM_FG_SYNC通道来的数据合并,再送入DC。
# ioctl -l 16 -r /dev/graphics/fb0 0x4600 //0x4600 在linux/fb.h头文件定义的 FBIOGET_VSCREENINFO
它使用的结构体为:
struct fb_var_screeninfo{
__u32 xres;
__u32 yres;
__u32 xres_virtual;
__u32 yres_virtual;
};
sending ioctl 0x4600 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
return buf: 00 04 00 00 00 03 00 00 00 04 00 00 00 09 00 00
可见屏幕高为 1024(0x400), 768(0x300) , 虚拟高为1024, 宽为2304(0x900)
其它操作后续再研究。