博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RK3288 HDMI配置和调试
阅读量:4946 次
发布时间:2019-06-11

本文共 4062 字,大约阅读时间需要 13 分钟。

RK3288 最大输出分辨率为 3840x2160

HDMI 驱动代码位于 kernel/drivers/video/rockchip/hdmi/rockchip-hdmiv2 目录

 

1、设置默认输出分辨率

网上的资源是修改 kernel/drivers/video/rockchip/hdmi/rockchip-hdmiv2 中的 rockchip-hdmi.h 文件,

/* HDMI default vide mode */#define HDMI_VIDEO_DEFAULT_MODE    HDMI_1280X720P_60HZ

官方文档中是修改板级 dts 文件,路径为 kernel\arch\arm\boot\dts\xxx.dts 

在 hdmi 节点中添加 rockchip,defaultmode = <value>,<value>值可以在 rockchip-hdmi.h 的 hdmi_video_infomation_code 中查到相应值。

hdmi_video_infomation_code 是一个枚举数组,从 1 开始,想设置哪个分辨率,value 值就填此分辨率的序号。

设置前首先得支持此分辨率。查看支持的分辨率:cat /sys/class/display/HDMI/modes

例如,设置默认分辨率为1280x720P60Hz输出:

//路径:kernel\arch\arm\boot\dts\xxx.dts&hdmi {    status = "okay";    rockchip,hdmi_video_source = 
; rockchip,defaultmode = <4>;};//路径:kernel\drivers\video\rockchip\hdmi\rockchip-hdmi.h/* HDMI video information code according CEA-861-F */enum hdmi_video_infomation_code { HDMI_640X480P_60HZ = 1, HDMI_720X480P_60HZ_4_3, HDMI_720X480P_60HZ_16_9, HDMI_1280X720P_60HZ, ...}

 

2、调试方法

查看sink设备的EDID信息,含原始数据和解析后信息。

cat /sys/class/display/HDMI/debug

shell@xxx:/ $ cat /sys/class/display/HDMI/debug//EDID状态EDID status:Okay//原始数据Raw Data:0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x05, 0xe3, 0x80, 0x22, 0xfd, 0x05, 0x00, 0x00, 0x0e, 0x1a, 0x01, 0x03, 0xa0, 0x30, 0x1b, 0x78, 0xba, 0x5a, 0x65, 0xa7, 0x56, 0x52, 0x9c, 0x27, 0x0f, 0x50, 0x54, 0xbf, 0xef, 0x00, 0xd1, 0xc0, 0xb3, 0x00, 0x95, 0x00, 0x81, 0x80, 0x81, 0x40, 0x81, 0xc0, 0x01, 0x01, 0x01, 0x01, 0x02, 0x3a, 0x80, 0x18, 0x71, 0x38, 0x2d, 0x40, 0x58, 0x2c, 0x45, 0x00, 0xdd, 0x0c, 0x11, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0xfd, 0x00, 0x32, 0x4c, 0x1e, 0x53, 0x11, 0x00, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x32, 0x32, 0x38, 0x30, 0x57, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x00, 0x00, 0x00, 0xff, 0x00, 0x41, 0x42, 0x38, 0x30, 0x36, 0x31, 0x34, 0x5a, 0x30, 0x31, 0x35, 0x33, 0x33, 0x01, 0xa8, 0x02, 0x03, 0x1b, 0x71, 0x23, 0x09, 0x07, 0x07, 0x83, 0x01, 0x00, 0x00, 0x67, 0x03, 0x0c, 0x00, 0x10, 0x00, 0x80, 0x21, 0x43, 0x01, 0x10, 0x84, 0xe2, 0x00, 0x0f, 0x01, 0x1d, 0x00, 0x72, 0x51, 0xd0, 0x1e, 0x20, 0x6e, 0x28, 0x55, 0x00, 0x81, 0x49, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, ******** Show Sink Info ********//最大tmds通道时钟频率Max tmds clk is 0//支持的分辨率Support video mode:        1920x1080p@60Hz        1280x720p@60Hz//支持的视频颜色模式Support video color mode: RGB YCbCr422 YCbCr444//支持的视频颜色位深Support video color depth: 24bit//支持的音频类型Support audio type: LPCM//支持的最大音频通道Support max audio channel is 2//支持的音频采样速率Support audio sample rate: 32000 44100 48000//支持的音频字长Support audio word lenght: 16bit 20bit 24bit

查看支持的分辨率

$ cat /sys/class/display/HDMI/modes

 

查看当前分辨率

$ cat /sys/class/display/HDMI/mode

 

切换分辨率

$ echo 1920x1080p-60 > /sys/class/display/HDMI/mode

 

查看HDMI是否连接

$ cat /sys/class/display/HDMI/connect

 

查看HDMI使能状态

$ cat /sys/class/display/HDMI/enable

 

设置HDMI使能,<value> 可取0或1,0表示关闭,1表示开启。

$ echo <value> > /sys/class/display/HDMI/enable

 

修改输出颜色

$ echo mode=<value> > /sys/class/display/HDMI/color

mode = 0 是自动模式,优先级为:

YCbCr444[16-235] > YCbCr422[16-235] > RGB[16-235] > RGB[0-255]

mode = 1 是RGB[0-255]

mode = 2 是RGB[16-235]

mode = 3 是YCbCr444[16-235]

mode = 4 是YCbCr422[16-235]

 

查看3D模式

$ cat /sys/class/display/HDMI/3dmode

 

设置3D模式

$ echo <value> > /sys/class/display/HDMI/3dmode

<value>可以取以下值:

0:Frame packing

6:Top and Bottom

8:Side by Side Half

 

在 make menuconfig 中打开内核的 Debug 选项,可以查看更多的Log信息。

Device Drivers --->    Graphics support --->        [*] Rockchip HDMI support --->            [*] Rockchip HDMI Debugging

 

转载于:https://www.cnblogs.com/lialong1st/p/8522240.html

你可能感兴趣的文章
(转载)MySQl数据库-批量添加数据的两种方法
查看>>
漂亮的下落式动画载入视图
查看>>
PAT 1002
查看>>
内置函数:sorted 用法
查看>>
If 条件控制 & while循环语句
查看>>
jcaptcha和kaptcha验证码使用入门【转】
查看>>
9.桶排序
查看>>
[HDU] 2610 Sequence one 非地图求解类的广搜,注意空间复杂度
查看>>
PAT 乙级 1033
查看>>
java的守护线程与非守护线程
查看>>
java排序算法
查看>>
XML 命名空间
查看>>
Selenium和Firefox对应版本及注意事项
查看>>
Linux文件系统基本结构
查看>>
九度oj 题目1438:最小公倍数
查看>>
Sublime Text 由于中文用户名导致无法安装插件
查看>>
Cocos2dx.3x入门三部曲-Hello Game项目解析(三)
查看>>
EL表达式
查看>>
git学习(2)----入门
查看>>
FINS/TCP_OMRON(1)
查看>>