RK3588-HDMIRX|环球热门
2023-06-13 11:13:24 来源:jf_30051736
1. 简介
专栏总目录
HDMIIN功能可以通过桥接芯⽚的⽅式实现,将HDMI信号转换成MIPI信号接收,RK3588芯⽚平台⾃带
HDMI RX模块,可以直接接收HDMI信号。
【资料图】
本篇文章主要介绍在RK3588 平台通过HDMI RX模块开发实现HDMI IN功能的⽅法。
2. dts配置
2.1 HDMI RX控制器配置
/* Should work with at least 128MB cma reserved above. */ &hdmirx_ctrler { status = "okay"; /* Effective level used to trigger HPD: 0-low, 1-high */ hpd-trigger-level = < 1 >; hdmirx-det-gpios = < &gpio2 RK_PB5 GPIO_ACTIVE_LOW >; pinctrl-names = "default"; pinctrl-0 = < &hdmim1_rx &hdmirx_det >; }; &pinctrl {hdmirx {hdmirx_det: hdmirx-det {rockchip,pins = < 1 RK_PC6 RK_FUNC_GPIO &pcfg_pull_none >;};};}
2.2 预留内存
RK3588 HDMI RX模块只能使用物理连续内存,需要预留至少128MB的CMA内存:
注:按3840x2160分辨率,RGB888图像格式,4个轮转Buffer计算。
/* If hdmirx node is disabled, deletethe reserved-memory node here. */ reserved-memory { #address-cells = < 2 >; #size-cells = < 2 >; ranges; /* Reserve 128MB memory for hdmirx-controller@fdee0000 */ cma { compatible = "shared-dma-pool"; reusable; reg = < 0x0 (256 * 0x100000) 0x0 (128 * 0x100000) >; linux,cma-default; }; };
3. 调试
HDMI-IN 设备在内核中会被注册为 video 设备,生成的节点如:/dev/video20,可以通过 v4l2-ctl 命令来获取设备信息和抓帧。
查看所有video节点
ls /dev/video*
获取设备信息,查找rk_hdmirx设备对应的是哪个video节点
v4l2-ctl -d /dev/video* -D 例: v4l2-ctl -d /dev/video20 -D
使⽤v4l2-ctl -d参数指定vidoe节点,-D命令查看节点信息,通过Driver name确认哪个是节点是rk_hdmirx 设备:
获取外部设备输入的分辨率信息
v4l2-ctl -d /dev/video20 -V
可以看出此时输入源的像素格式为 " NV24 " 。分辨率为 1920 * 1080
抓图:根据输入源的格式和分辨率设置好抓图命令的格式和分辨率:( 这里像素格式为 " NV24 " 。分辨率为 1920 * 1080 )
v4l2-ctl -d /dev/video20 --set-fmt-video=width=1920,height=1080,pixelformat=NV24 --stream-mmap=3 --stream-skip=100 --stream-to=/oem/NV24.yuv --stream-count=1 --stream-poll
在 PC 端查看抓取到的帧文件将抓取到的NV24.yuv图片可adb pull到PC端,通过7yuv、YUView等⼯具软件查看:
审核编辑:汤梓红
adb pull /oem/NV24.yuv ./
标签:
互联网
HDMIIN功能可以通过桥接芯⽚的⽅式实现,将HDMI信号转换成MIPI信号接收
2023-06-13 11:13:24
微速讯:RK3588-电容触控芯片GT9XX触摸调试笔记
基于RK3588平台,电容触控芯片GT9XX触摸调试总结。触摸芯片:电容触控
2023-06-13 10:59:48
世界快播:Rockchip rk3588 U-Boot详解 (二)
Rockchiprk3588U-Boot详解(二)专栏总目录1 1DMDM(DriverModel)是U-Boot
2023-06-13 11:20:08