xrandr 切换crtc只能切换到已存在的crtc上

本文介绍了xrandr工具如何实现CRTC(CRT控制器)的切换,并详细解释了为何无法将显示设备切换到一个没有内容的CRTC上。通过具体的步骤说明,帮助读者理解xrandr的工作原理。
 

xrandr 切换crtc只能切换到已存在的crtc上。

如果使用xrandr命令 xrandr --output <device> --crtc <crtc>,只能切换一次。比如,目前板子连接了两个设备,CRT和DVI, CRT在IGA1上,DVI在IGA2上。如果使用命令 xrandr --output CRT --crtc 1, 则CRT 将被分配到 IGA2 上,但是如果在使用命令 xrandr --output CRT --crtc 0,则xrandr会提示错误,CRT没有合适的crtc.这是因为,在使用xrandr进行crtc的切换的时候,设备分配的那个crtc上必须有内容。
xrandr进行crtc切换的步骤是:
1.首先遍历当前所有的crtc,调用 crtc_disable()函数把crtc给关掉。
2.然后调用crtc_apply()函数,把crtc给打开。在crtc_apply()函数中,会判断当前分配的crtc有没有内容,
   if (!crtc->changing || !crtc->mode_info)
 return RRSetConfigSuccess;
   如果没有内容,这个函数会直接返回,而不会对当前的device进行重新设置,所以device是点不亮的。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值