问题
Linux 是否在引导之间存储硬件信息? (例如 EDID)
如果是这样,是否可以配置缓存的内容?
背景
我问的原因是我目前正在尝试配置第二台显示器,并且该显示器有一个 VGA(显示器)到显示端口(显卡)无源转换器(我知道这是一个坏主意,而且不是我自己的) 。据我了解,使用无源转换器需要显卡做一些工作才能将信号正确地发送到显示器。
我可以让显示器工作,但是如果我硬关闭显示器或计算机,一旦重新打开,它将停止工作。到目前为止,我的解决方案非常成功,从显卡上拔下显示端口,重新启动机器,重新插入显示端口,再次重新启动,它就可以正常工作。然而,这是相当乏味的,因为我有很多具有这种配置的计算机。
关闭/打开电源并再次工作后,第二个显示器具有不同的 EDID。
想法
我的第一预感是显卡正在从显示器接收一些信息,并由于无源适配器而做一些额外的工作来生成最终的 EDID。由于卡执行此工作,因此 EDID 在电源周期之间不一致。
我的第二个预感是 Linux(特别是 RHEL 7.0)会缓存硬件信息(因为它通常是静态的),当缓存的 EDID 和当前 EDID 冲突时,监视器将不再工作。
我的解决方法证实了这一点,因为拔掉显示器并启动将是一个足够重大的更改,足以再次检测硬件(显示端口中没有硬件),然后插入显示端口并启动将导致显示被处理作为新硬件并从新检测到。这个解决方法基本上看起来像是一种刷新该显示缓存的方法。