这些年我踩过的显卡的坑
记录下我用各种显卡HDMI输出遇到的坑NVDIA显卡1.EDID读取问题问题描述有些型号的N卡在接收端hpd动作之后会读几次edid有的间隔更是只有丧心病狂的几微秒如果接收端edid是512的话读完一次会产生segment来不及清的话第二次edid读取就会出错解决方案最好有硬件功能检测到写offset 0的时候自动清除segment硬件没做且无中断的话只能用高精度定时器去polling edid读取位置副作用极大2.EDID内容问题问题描述有些N卡升级驱动之后读到edid name为某些厂商的时候开始各种奇怪的行为如下1.不送信号2.送信号但是丢失部分高刷分辨率3.选择的分辨率和实际发送的分辨率不对应4.FRL模式下写0xffff降速功能不生效,降完又给升回去5.不响应edid内容改变哪怕接收端声明支持能力变化也按照最高的发解决方案1.重装驱动2.接收端修改name3.显卡行为FRL 始终按照edid声明的MAX FRL RATE来发送TX输出的clk应该有限制DSC模式哪怕是高刷也会压缩的特别厉害FRL training代码应该是个死循环有概率失败就无信号只能重启电脑MAC M系列显卡1.EDID切换DSC和非DSC模式切到DSC的时候M显卡会乱送信号问题问题描述EDID切换DSC和非DSC模式切到DSC的时候M显卡会乱送信号明明是非压缩的码流却连着CVTEM包一起发且无hsync导致接收端无法解码问题必现解决方案检测到码流和包不对应拉一次hpd恢复AMD显卡1.DSC模式下信号切换重新training,发送的dsc码流不遵守协议问题描述DSC模式下切换发送的码流概率会把GB放到video后面部分接收端无法解码解决方案hdcp下没有解决方案只能接收端芯片支持处理这种非标准场景2.有segment的时候training概率失败问题描述512 edid FRL模式segment未清除重新training会卡死解决方案接收端检测到源端读完edid后清除segment