displayport 1.4 tx subsystem core的最简pipeline就是如它的linux driver wiki page里的figure-4那样,framebuffer_read+dp+video_phy。zcu102板卡没有pl dp的专用接口,所以要用到一个fmc子卡来扩展pl dp接口。为了增加系统灵活性,也可以在framebuffer_read core和dp core之间加入mixer core。本例为了增加xorg server的支持,在mixer core里增加了一层ar24 format的plane,并在设备数里把它这一层设置为primary layer。
在petalinux 2023.1版本里,有一些问题需要用到一些patch来解决。比如device tree generator的问题需要用到下面这些patch以及system-user.dtsi里的一些特殊设定,
001-dptxss-common_proc.patch
001-dptxss-ddrpsv.patch
001-dptxss-dp_tx.patch
001-vid_phy_ctrl.patch
kernel driver的问题需要用到0001_dp_hdcp_property_check.patch,
另外需要增加kernel-module-dp,就是在project-spec/meta-user/conf/user-rootfsconfig里增加config_kernel-module-dp,然后在rootfs menuconfig里enable这个user module。
如果需要在板上使用xorg、ffplay、modetest来测试,需要在rootfs里使能一些package, 比如,
libmali-xlnx
packagegroup-core-x11 packagegroup-core-x11-base packagegroup-core-x11-xserver v4l-utils libv4l media-ctl v4l-utils-dbg v4l-utils-dev libv4l-dev
libdrm
libdrm-tests libdrm-drivers xserver-xorg xserver-xorg-extension-dri xserver-xorg-extension-glx xserver-xorg-utils ffmpeg
petalinux image在zcu102板卡加载到linux之后,可以在/dev/dri/by-path/里看到dri card0和dri card1,分别代码ps displayport和pl displayport两条pipeline,可以使用modetest或者ffplay+xorg来测试。
1.命令modetest -d a0010000.v_mix可以显示pl dp这个pipeline上的设备,可以看到connector的id是40,命令modetest -d a0010000.v_mix -s 40:1920x1080-60@ar24可以通过pl dp在显示器上显示color bar。
2.另一种测试方式是ffplay+xorg,首先在启动xorg前,配置etc/x11/xorg.conf,让它使用pl dp通道,可以参考附件xorg.conf。然后可以使用下面命令启动xorg并用ffplay命令显示usb camera设备/dev/video0的视频流。
sudo xorg &
export display=:0.0
ffplay /dev/video0
九正无线充电新技术新闻发布会隆重召开!开启无线充电新时代
关于简单精确的双向电流源的相关设计
低功耗PN8360电源IC的5V/2.4A电源方案介绍
Tecno在印度正式发布了Spark 6 Air智能手机
设备远程运维管理平台在智能制造业中的重要作用
如何在zcu102板卡上创建pipeline呢?
新型磁驱形状记忆高分子复合材料支持3D打印技术
会说话科学计算器帮助盲人学生克服学习障碍
思科和EMC不惜反目成仇 意欲为何?
Imagination和Intercede展示Trust Continuum确保IoT安全性的强大功能
ZigBee的应用领域有哪些,在我国的应用情况如何
罗永浩:小米6差强人意,最后还得看我的坚果Pro
激光焊接机激光束的能量特性
停车场加入rfid技术会怎样
cbb81电容能代替cbb22吗
电子听诊器密封性检测是怎么做的
AM收音机整机电路原理图的分析方法
压力变送器的介绍及原理
超时逻辑在OpenHarmony中的实现
iPhone 15和iPhone 14有什么不同?