0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

技术分享 | RK3568 buildroot文件系统下的三屏显示调试

启扬ARM嵌入式开发 2023-04-10 11:14 次阅读

IAC-RK3568-Kit

IAC-RK3568-Kit开发板基于瑞芯微RK3568四核Cortex-A55处理器,支持HDMI、LVDS、MIPI、EDP四种显示接口,能够实现三屏同显,三屏异显,满足智能广告机、智能终端、游戏设备、多屏互动、多媒体设备等多样化的显示需求。

9598dd3e-d4c9-11ed-ad0d-dac502259ad0.png

三屏显示内核

显示子系统是 Rockchip 平台显⽰输出相关软硬件系统的统称,它包括 VOP 和 RGB、BT1120、BT656、I8080(MCU 显示接口),LVDS、MIPI DSI、EDP、DP、HDMI 等显示信号输出模块以及与之对应的软件驱动。

整个显示系统的硬件框架如下图所⽰:

95d78b2e-d4c9-11ed-ad0d-dac502259ad0.png

RK3568 拥有三个VOP的输出通道,所以支持三屏显示。

下图描述了VOP的硬件资源,展示了RK3568的显示通路连接关系。

95fa3d40-d4c9-11ed-ad0d-dac502259ad0.png

接下来的内容将展示启扬RK3568开发板三屏异显的调试过程

硬件准备

IAC-RK3568-Kit开发板

LVDS显示屏

HDMI显示屏

EDP显示屏

9630b3c0-d4c9-11ed-ad0d-dac502259ad0.jpg

本次准备的三个屏幕分别为LVDS、EDP和HDMI,通过上面的VOP硬件资源描述,给三个屏幕分别分配一个VOP通道。

其中EDP屏幕分配为 vp0 通道,

HDMI屏幕分配为 vp1 通道,

LVDS屏幕分配为 vp2 通道。

设备树部分配置如下所示:

&vop { status = "okay";};
&edp_phy { status = "okay";};
&edp_in_vp0 { status = "okay";};
&route_edp{ status = "okay"; connect = <&vp0_out_edp>;};
&hdmi { status = "okay";};
&hdmi_in_vp0 { status = "disabled";};
&hdmi_in_vp1 { status = "okay";};
&lvds { status = "okay";
ports { port@1 { reg = <1>;
lvds_out_panel: endpoint { remote-endpoint = <&panel_in_lvds>; }; };
};};
&lvds_in_vp2 { status = "okay";};

在这里我们给三个屏幕分配了VOP通道,这样就能够在三个屏幕上同时显示。

9662c018-d4c9-11ed-ad0d-dac502259ad0.svg

weston配置

Weston是Wayland开源显示协议的官⽅参考实现,Rockchip Buildroot SDK的显示服务默认使⽤Weston 10.0.0 drm后端。

Buildroot SDK的Weston⽀持多屏镜像同显、多屏异显、屏幕位置配置及热拔插等功能。

镜像模式缩放时,如果硬件VOP显示模块不⽀持缩放,则需要依赖RGA处理。

相关配置通过环境变量设置,如:

# /etc/profile.d/weston.shexport WESTON_DRM_PRIMARY=HDMI-A-1 # 指定主显为HDMI-A-1export WESTON_DRM_SINGLE_HEAD=1 # 强制单显export WESTON_DRM_MIRROR=1 # 使⽤镜像模式(多屏同显),不设置此环境变量即为异显export WESTON_DRM_KEEP_RATIO=1 # 镜像模式下缩放保持纵横⽐,不设置此变量即为强制全屏export WESTON_DRM_HEAD_MODE=primary # 只使能主显export WESTON_DRM_HEAD_MODE=internal # 只使能内置显⽰器export WESTON_DRM_HEAD_MODE=external # 只使能外置显⽰器export WESTON_DRM_HEAD_MODE=external-dual # 使能所有显⽰器,优先外置显⽰器export WESTON_DRM_HEAD_FALLBACK=1 # 未匹配到显⽰器时,使能任意⼀个有效显⽰器export WESTON_OUTPUT_FLOW=horizontal # 默认⽔平排列export WESTON_OUTPUT_FLOW=vertical # 默认垂直排列export WESTON_OUTPUT_FLOW=same-as # 所有显⽰器默认位置(0,0)

也⽀持在weston.ini的output段单独禁⽤指定屏幕:

# /etc/xdg/weston/weston.ini[output]name=LVDS-1mode=off# off|current|preferred|

多屏同显

在weston的默认配置中,即为多屏同显。此时的weston.sh的WESTON_DRM_MIRROR属性等于1。

多屏同显的效果如下图所示:

多屏异显

修改/etc/profile.d/weston.sh,注释 export WESTON_DRM_MIRROR=1 字段,如下图所示:

96c5d1c6-d4c9-11ed-ad0d-dac502259ad0.png

此时重启后就是多屏异显,屏幕以扩展的方式显示。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4982

    文章

    18281

    浏览量

    288465
  • 开发板
    +关注

    关注

    25

    文章

    4429

    浏览量

    93999
收藏 人收藏

    评论

    相关推荐

    RK3568开发板源码编译过程

    ~/rk3568 2. 拷贝源码 将RK3568用户资料中的源码文件OK3568-linux-source.tar.bz2.a*拷贝到虚拟机~/
    发表于 04-18 15:30

    RK3568-GDB程序调试方法说明

    RK3568-GDB程序调试方法说明
    的头像 发表于 01-19 16:16 909次阅读
    <b class='flag-5'>RK3568</b>-GDB程序<b class='flag-5'>调试</b>方法说明

    RK3568--系统启动阶段LOGO显示

    RK3568--系统启动阶段LOGO显示
    的头像 发表于 01-19 14:44 261次阅读
    <b class='flag-5'>RK3568</b>--<b class='flag-5'>系统</b>启动阶段LOGO<b class='flag-5'>显示</b>

    瑞芯微RK3568|SDK开发之Buildroot编译

    Buildroot查询帮助查看buildroot的详细编译命令,如下所示。图1.1编译文件系统以上命令为,配置buildroot对应的默认配置defconfig,然后编译。注:
    的头像 发表于 10-08 10:38 609次阅读
    瑞芯微<b class='flag-5'>RK3568</b>|SDK开发之<b class='flag-5'>Buildroot</b>编译

    RK3568 EDP接口调试

    RK3568支持多种接口,本文主要介绍通过edp显示接口驱动edp显示屏的具体操作方法以及调试记录。
    的头像 发表于 09-20 09:57 1574次阅读
    <b class='flag-5'>RK3568</b> EDP接口<b class='flag-5'>调试</b>

    瑞芯微RK3568开发板多屏同显方案

    HD-RK3568核心板基于瑞芯微RK3568设计,支持HDMI、MIPI、eDP、LVDS四种显示接口,适配多种显示方案,满足医疗电子、电力电子、工业自动化、车载中控等多种行业应用。
    的头像 发表于 09-14 14:03 747次阅读
    瑞芯微<b class='flag-5'>RK3568</b>开发板多屏同显方案

    rk3568是什么架构的?

    RK3568是什么架构的? 中国领先的无晶圆厂半导体公司Rockchip Electronics推出了一款专门为人工智能应用设计的新型片上系统(SoC)。这种新型SoC被称为RK3568,构建
    的头像 发表于 08-15 17:25 1632次阅读

    rk3568有多少引脚?

    rk3568有多少引脚? 首先,让我们来了解一下什么是rk3568rk3568是由瑞芯微推出的一款高性能、低功耗的嵌入式处理器,它是rk3566的升级版本,采用了更加先进的
    的头像 发表于 08-15 17:25 1008次阅读

    RK35683568J的区别

    RK35683568J的区别 在当前处理器市场中,以小而美形象闻名的瑞克微电子旗下产品RK3568/J也引起了广泛关注,其中RK35683568
    的头像 发表于 08-15 17:25 5075次阅读

    瑞芯微RK3568核心板PET_RK3568_CORE简述

    瑞芯微RK3568核心板PET_RK3568_CORE简述
    的头像 发表于 08-08 11:44 2106次阅读
    瑞芯微<b class='flag-5'>RK3568</b>核心板PET_<b class='flag-5'>RK3568</b>_CORE简述

    瑞芯微RK3568主板开发板PET_RK3568_P01简述

    瑞芯微RK3568主板开发板PET_RK3568_P01简述
    的头像 发表于 08-08 11:41 1769次阅读
    瑞芯微<b class='flag-5'>RK3568</b>主板开发板PET_<b class='flag-5'>RK3568</b>_P01简述

    瑞芯微RK3568核心板/评估板/开发板/工控板用户手册

    最新版本瑞芯微RK3568核心板/评估板/开发板/工控板用户手册,HD-RK3568-IOT工控板用户手册资料下载产品介绍产品快速使用说明命令行功能测试Linux应用程序开发QT编程SDK开发Linux内核文件系统
    发表于 08-01 14:00 52次下载

    技术分享 | RK3568开发板 buildroot配置文件

    中呢?其实这里的话已经为大家考虑到了这种情况。RK3568提供成熟的配置环境,适配多种大型配置工程,如Yocto、Buildroot、Debian10等。今天,就以
    的头像 发表于 07-31 16:49 993次阅读
    <b class='flag-5'>技术</b>分享 | <b class='flag-5'>RK3568</b>开发板 <b class='flag-5'>buildroot</b>配置<b class='flag-5'>文件</b>

    迅为RK3568开发板Buildroot 系统设置屏幕旋转

    RK3568开发板教程,本文档将 buildroot 系统不同屏幕如何旋转屏幕。Buildroot 系统启动的过程中,屏幕会依次
    的头像 发表于 06-05 10:12 2803次阅读
    迅为<b class='flag-5'>RK3568</b>开发板<b class='flag-5'>Buildroot</b> <b class='flag-5'>系统</b>设置屏幕旋转

    技术分享 | RK3568开发板 buildroot编译配置

    启扬智能RK3568开发板提供两种文件系统,一种是Debian,另外一种是BuildRoot。在使用过程中,有些客户需要添加属于自己的软件包,所以在此分享启扬RK3568关于
    发表于 05-12 08:59