检查Linux DRM显示设备ID的脚本

嵌入式技术

1372人已加入

描述

不同设计里,Linux DRM子系统里设备ID不一样。每次修改,费时费力,也容易出错。

因此写了以下脚本,自动查找encoder_id,crtc_id,connector_id等。然后在后续命令和脚本中,可以直接引用。

每次使用的时候,需要根据情况,更改display_device。display_device一般是类似a0070000.v_mix的格式,可以通过“dmesg | grep v_mix”查到。

ls -l /dev/me*
ls -l /dev/vide* 
ls /dev/dri/by-path/

dmesg | grep v_proc_ss
dmesg | grep v_mix


# modetest -D a0070000.v_mix -s 39:3840x2160-60@BG24
export display_device=a00c0000.v_mix
echo "display device: $display_device"

# modetest -D $display_device
 
export encoder_id=`modetest -D $display_device | grep -i TMDS | cut -f 1`
echo "encoder_id: $encoder_id"

export crtc_id=`modetest -D $display_device | grep -i  TMDS | cut -f 2`
echo "crtc_id: $crtc_id"

# check display connectors
export connector_id=`modetest -D $display_device | grep -i  connected | cut -f 1`
echo "connector_id: $connector_id"

# check display planes
modetest -D $display_device | grep -B 2 -A 2  "0,0"
plane_id=`modetest -D $display_device | grep "0,0" | grep 0x00000001 | cut -f 1`
echo "plane_id: $plane_id"
overlay_plane_id=`echo $plane_id | cut -d " " -f 1`
echo "overlay_plane_id: $overlay_plane_id"
prime_plane_id=`echo $plane_id | cut -d " " -f 2`
echo "prime_plane_id: $prime_plane_id"

  审核编辑:汤梓红
打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分