为什么开源如此出色 - 新的 SM750 (Silicon Motion GPU) HDMI 驱动程序
将此卡推向真正的 2048 宽输出或软件缩放的 2560x1080 超宽桌面,具有节省带宽的颜色转换和更新优化以获得更平滑的性能。Linux 显示驱动程序适用于单 HDMI 的 SE-DP750A-HDMI PCIe 卡。实验性:该驱动程序仅适用于某一特定的 SM750 板卡。可选模式可以超过已发布的 GPU 或显示器时钟限制,可能会产生无信号、失真或不稳定显示。在尝试非 EDID 模式时,请保持 SSH 或其他恢复路径可用。我的卡是否受到支持?测试过的板子以 SE-DP750A-HDMI 标记出售,并具有以下所有特征:Silicon Motion SM750G10-AC,版本 A1 PCI ID 126f:0750,Silicon Image/Lattice SiI9024ACNU HDMI 发射器,16 MiB 显示内存,一个 HDMI 输出。仅 PCI ID 不够。其他 SM750 卡可能使用 VGA,不同的发射器或不同的 GPIO 接线,目前不受支持。安装 Ubuntu 24.04 和 Linux Mint 22 用户可以本地构建 DKMS 包:sudo apt update sudo apt install build-essential dkms linux-headers- $( uname -r ) libdrm-dev git git clone https://github.com/KodeMunkie/sm750hdmifb.git cd sm750hdmifb make check ./build-package.sh sudo apt install ./dist/sm750hdmifb_0.5.5_all.deb sudo reboot 重启很重要:它允许软件包在声明卡之前将 Linux 的旧 sm750fb 驱动程序加入黑名单。该包名为 sm750hdmifb;内核模块为 sm750hdmidrm.ko,因此无法与 sm750fb.ko 混淆。内核兼容性:该驱动程序旨在支持 Linux 6.17 及更高版本。DKMS 刻意不支持旧版内核,因为所需的 DRM 接口不被该项目支持。源代码具有对 Linux 6.17 到 6.x 系列和 Linux 7.0 及更高版本的兼容路径。它当前构建并通过了针对 6.17 和 7.0 Ubuntu 内核的完整测试套件;手动 CI 工作流程还针对 Ubuntu 24.04 的 6.17 内核头文件构建。没有固定的上限版本约束,但未来的内核可能会更改内部 DRM API。由于这是一个脱树驱动程序,即使它属于预期的 6.17+ 范围,新的内核版本也可能需要源代码更新。预构建的包(如可用)会在 GitHub Releases 中发布。建议本地构建,因为 DKMS 是针对安装的内核头文件进行编译的。正常使用:默认情况下,驱动程序:使用显示器 EDID 模式;使用抖动的 16 位 RGB565 扫描输出;使用硬件光标;在后台合并更新;使用 DMA 上传八行批量。如果 DMA 失败,则安全回退。应用程序仍然以 32 位颜色渲染。在上传之前,驱动程序将更改的屏幕区域转换为 RGB565,并应用 KodeMunkie 的有序抖动,绿色通道校正为 94%。这是默认设置,因为 SM750 帧缓冲区通过 PCIe 1.1 x1 链接访问。在更高的分辨率下,该链路无法提供响应灵敏的全屏 32 位更新:XRGB8888 每个输出像素发送四个字节,而 RGB565 发送两个。因此,抖动后的 RGB565 将设备绑定的像素流量减少了一半,同时保持了很多明显的颜色细节。常见内核或 GRUB 选项是:该表省略了常见的 sm750hdmidrm 前缀以保持可读性。例如,在 GRUB 中输入 enable_dma=0,即 sm750hdmidrm.enable_dma=0。关于选项和默认值的说明:何时指定其作用和权衡。scanout_format=rgb565-bbdither,默认:rgb565-bbdither,无需指定;这是推荐的默认设置,通过绿色校正进行抖动的 16 位扫描输出。scanout_format=xrgb8888,默认:rgb565-bbdither,仅适用于 32 位扫描输出;禁用 RGB565、抖动和绿色校正;使上传流量翻倍,并且在高分辨率下可能会滞后。scanout_format=rgb565,默认:rgb565-bbdither,仅适用于普通 RGB565;禁用抖动和绿色校正,减少颜色质量。dither_green_gain=94,默认:94,默认启用;开启抖动时的调校绿色校正。dither_green_gain=100,默认:94,关闭绿色校正;保留抖动,但可能会产生更绿色的色彩平衡。enable_dma=1,默认:1,无需;默认为启用 DMA:经过验证的八行 DMA 上传,自动 CPU 回退。enable_dma=0,默认:1;禁用 DMA,强制 CPU 上传,通常更新性能较低。disable_hardware_cursor=1,默认:0,适用于软件光标回退;禁用硬件光标,可能降低光标响应速度。edid_only=0,默认:1,驱动程序目录和超宽模式所需。危险:停止 EDID 限制的模式和显示器可能不支持的时钟。softscale_wide=1,默认:0,2464x1080 和 2560x1080 所需;还需设置 edid_only=0。危险/实验性:启用宽压缩并要求显示器拉伸。sharpen=1,默认:0,推荐与超宽模式一起使用;在压缩后增加固定 8% 对比度增强。double_shadow=1,默认:0,建议避免冗余上传;添加源和输出比较快照;跳过未改变的像素,但使用更多系统内存。这不是前后页面翻转。async_updates=1,默认:
本站免费、广告极少。如果觉得有帮助,可以请我们喝杯咖啡 —— 任何金额都对持续运营有实际帮助。
☕请我喝杯咖啡