我有一台运行 Debian Stretch RC2 的 Supermicro X11SBA-LN4F。
该板具有 AST2400 BMC 和 N3700 处理器。因此,主板有两张显卡 - 一张通过 ast,一张通过 i915。这会导致为帧缓冲区 (fb0) 加载 ast 驱动程序,并为帧缓冲区 (fb1) 加载 i915 驱动程序。
启动时主 ast 的屏幕变为空白。这会在 fsck 发出引导消息后立即发生。
我使用IPMI(BMC)来连接到机器,这确实是需要的。我得到了一个空白的远程控制台。可以用键盘输入,但显示为空白。
我尝试了各种带有模式集、acpi 等的内核命令行,但没有任何帮助。当我执行 acpi=off 或 i915.modeset=0 时,不会加载 i915 的帧缓冲区。 (acpi=off 无法启动,模式集可以工作,但 fb1 没有帧缓冲区。)
我可以使用命令“vbetool dpms on”重新激活该 ast 远程控制台,同时 ast 和 i915 fb 都已加载,但只持续几秒钟!然后它又神奇地变空白了。这里发生了什么?如果我能够找到在后台逆转“dpms off”的原因,这可能是一个解决方案。我还尝试了一个小脚本,每隔几秒发送一次“dpms off”,但这不会“刷新”再次使屏幕空白的超时,因此屏幕会空白几秒钟。
有人在该板上的 HDMI 端口上设置了 IPMI 和显示器吗?
谁能告诉我什么可以在后台反转 vbetool dpmi 命令,或者如何使“dpmi on”持续存在? dpmi on 是我能看到的唯一有帮助的东西。也许还有其他方法...
我想要什么结果? i915 的显示器仅需要显示系统日志内容。也许还有另一种方法可以实现这一点,即 i915 没有帧缓冲区,因为这样,ast 帧缓冲区就可以工作,并且 lspci 可以看到 Intel 图形控制器(但没有 fb)。
我感谢您的帮助!
-RVT-
答案1
好吧,我找到了办法。这不是解决方案。我不明白为什么这有效。但它有效。我确信它不会永远有效。
我摆弄了一下,发现以下序列可以满足我的要求: vbetool dpms on con2fbmap 2 1 con2fbmap 2 0 vbetool dpms on
现在我尝试在启动时运行它。但通常情况下,它不会运行(意味着什么也不做)。我相信这是 systemd 的结果 - 我在其他启动脚本中也遇到过很多次(例如 DCF77 硬件上的 ntpd)。即使 cron 中的 @reboot 也不起作用。在 systemd 中有背光设置(在 /lib/systemd/system 中)。我刚刚用我的脚本替换了他们的程序并且有效 - 而且它处于启动序列的早期。
这很尴尬。我知道。
所以,如果有人知道更好的方法 - 真正的解决方案 - 请告诉我。
答案2
更新了我的 BIOS 和 IPMI 固件。然后编辑“/etc/default/grub”并设置以下参数: GRUB_CMDLINE_LINUX_DEFAULT="quiet i915.modeset=0" GRUB_GFXMODE=1024x768
希望能帮助到你。