瑞芯微RV1126配置BT1120输出

瑞芯微RV1126配置BT1120输出 Dazai 2023-08-08 14:48:01 1808

文章目录

BT1120基础概念

BT.656 和 BT.1120 分别定义了 SDTV 和 HDTV 的接口协议,通过在消隐期传输 EAV、SAV 的定位基准码作为嵌入式同步信号,传输的数据格式为 YCbCr 4 : 2 : 2。BT.656 和 BT.1120 在一些文档和手册上也会被称为视频信号或者 YUV 信号,目前 RK 平台输出的 BT.656/BT.1120 图像数据和定位基准码的位深均为 8bit。

详情参考文档:Rockchip BT.656 TX 和 BT.1120 TX 开发指南

RV1126支持情况 RV1109/RV1126 不支持BT656 支持BT1120 只支持逐行扫描

BT1120配置步骤

1.打开BT1120 对接的设备在发送端不需要软件驱动(即不需要注册 DRM connector 的),这种可以在 dts 文件中的 panel 节点配置:

panel {
……
        bus-format = MEDIA_BUS_FMT_YUYV8_1X16; //or
        MEDIA_BUS_FMT_YUYV8_1X16/MEDIA_BUS_FMT_UYVY8_1X16
……
}
timing_1080p: timing4 {
                clock-frequency = <148500000>;
                hactive = <1920>;
                vactive = <1080>;
                hback-porch = <88>;
                hfront-porch = <148>;
                vback-porch = <36>;
                vfront-porch = <4>;
                hsync-len = <44>;
                vsync-len = <5>;
                hsync-active = <0>;
                vsync-active = <0>;
                de-active = <0>;
                pixelclk-active = <0>;
            };

具体配置参考文件中的dts_demo

2.对接的设备在发送端需要软件驱动(即需要注册 DRM connector 的),这种除了可以参考第一点在 dts 中适配,也可以考虑在对应 connector 驱动的 drm_connector_helper_funcs -> get_modes 函数中设 定,可以参考 drivers/gpu/drm/bridge/sii902x.c 中的实现:

3.uboot配置

diff --git a/drivers/video/drm/rockchip_display.h b/drivers/video/drm/rockchip_display.h
index 5e89157..48555c0 100644
--- a/drivers/video/drm/rockchip_display.h
+++ b/drivers/video/drm/rockchip_display.h
@@ -45,8 +45,10 @@ enum rockchip_mcu_cmd {
  * display output interface supported by rockchip lcdc
  */
 #define ROCKCHIP_OUT_MODE_P888 0
+#define ROCKCHIP_OUT_MODE_BT1120 0
 #define ROCKCHIP_OUT_MODE_P666 1
 #define ROCKCHIP_OUT_MODE_P565 2
+#define ROCKCHIP_OUT_MODE_BT656 5
 #define ROCKCHIP_OUT_MODE_S888     8
 #define ROCKCHIP_OUT_MODE_S888_DUMMY   12
 #define ROCKCHIP_OUT_MODE_YUV420   14
diff --git a/drivers/video/drm/rockchip_rgb.c b/drivers/video/drm/rockchip_rgb.c
old mode 100644
new mode 100755
index 5f63ab2..f48290f
--- a/drivers/video/drm/rockchip_rgb.c
+++ b/drivers/video/drm/rockchip_rgb.c
@@ -129,6 +129,12 @@ static int rockchip_rgb_connector_init(struct display_state *state)
    case MEDIA_BUS_FMT_SRBG888_DUMMY_4X8:
        conn_state->output_mode = ROCKCHIP_OUT_MODE_S888_DUMMY;
        break;
+   case MEDIA_BUS_FMT_YUYV8_2X8:
+       conn_state->output_mode = ROCKCHIP_OUT_MODE_BT656;
+       break;
+   case MEDIA_BUS_FMT_YUYV8_1X16:
+       conn_state->output_mode = ROCKCHIP_OUT_MODE_BT1120;
+       break;  
    case MEDIA_BUS_FMT_RGB888_1X24:
    case MEDIA_BUS_FMT_RGB666_1X24_CPADHI:
    default:

具体配置参考文件中的patch

4.在文件中加入最后两行,否则最后会识别不到输出格式

如何判断此时已经配置好BT1120输出

答:cat /sys/kernel/debug/dri/0/summary 可以看到对应 VOP/VP 节点下的 bus_format 值 示例:

声明:本文内容由易百纳平台入驻作者撰写,文章观点仅代表作者本人,不代表易百纳立场。如有内容侵权或者其他问题,请联系本站进行删除。
Dazai
红包 点赞 收藏 评论 打赏
评论
2个
内容存在敏感词
手气红包
  • 2023-09-14 22:41:11
    回复
    楼主 内核的 BT1120 调通了吗,公司做了个地板用的 ADV7513 ,用的 BT1120 转hdmi。 还不知道怎么弄,
  • Dazai 2023-08-08 14:05:59
    回复
    详细资料在我的主页下载
相关专栏
置顶时间设置
结束时间
删除原因
  • 广告/SPAM
  • 恶意灌水
  • 违规内容
  • 文不对题
  • 重复发帖
打赏作者
易百纳技术社区
Dazai
您的支持将鼓励我继续创作!
打赏金额:
¥1易百纳技术社区
¥5易百纳技术社区
¥10易百纳技术社区
¥50易百纳技术社区
¥100易百纳技术社区
支付方式:
微信支付
支付宝支付
易百纳技术社区微信支付
易百纳技术社区
打赏成功!

感谢您的打赏,如若您也想被打赏,可前往 发表专栏 哦~

举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

审核成功

发布时间设置
发布时间:
是否关联周任务-专栏模块

审核失败

失败原因
备注
拼手气红包 红包规则
祝福语
恭喜发财,大吉大利!
红包金额
红包最小金额不能低于5元
红包数量
红包数量范围10~50个
余额支付
当前余额:
可前往问答、专栏板块获取收益 去获取
取 消 确 定

小包子的红包

恭喜发财,大吉大利

已领取20/40,共1.6元 红包规则

    易百纳技术社区