我正在尝试设置一个基于 Tegra 3 (Toradex Apalis T30) 的系统,该系统将在触摸屏上具有基于 OpenGL ES 的用户界面。不幸的是,标准的 Linux4Tegra 内核已经严重过时,并且提供的图形驱动程序需要 X11 集成。我发现我可以构建 Vanilla Linux 内核并让它在我的主板上运行得很好(测试过 3.18)。我还发现这些天内核中包含了 DRM Tegra 驱动程序,我在 menuconfig 中启用了它并使用它构建了内核。我还设法让许多发行版与内核一起工作(尽管我还没有真正尝试过让 X 在任何一个发行版上工作)。
我的问题是,超出这一点,我就陷入困境了。我不知道下一步该怎么做才能启动 GLES 渲染并使用 DRM 驱动程序运行。我环顾四周,发现 Mesa 可能通过 DRM 支持 GLES,但我不确定这是否允许我在没有 X 的情况下这样做?另外,我到底如何为 Tegra DRM 驱动程序配置和编译 Mesa?
另外,如何使用该 DRM 驱动程序配置输出显示?我的目标屏幕是 24 位并行 RGB 显示器,但我还没有连接它,想先用 HDMI 进行测试。我真的不知道应该如何配置输出显示。我能找到的唯一可能有帮助的信息涉及 X 和 xorg.conf,但愿我不会使用它们。我的设备确实在 HDMI 显示器上正确输出控制台,它如何知道要执行此操作?这个过程可能会以某种方式涉及设备树吗?
附言。我想这个问题有点愚蠢,但我对嵌入式 Linux 很陌生,刚刚弄清楚如何构建普通内核等,并且除了配置 X 之外,真的不知道 Linux 显示系统如何工作。查找有关此的信息事实证明也很难。
编辑:我已经在 Fedora 上使用 OpenTegra 驱动程序在 HDMI 上运行了 XFCE(登录不起作用,登录窗口非常小),如果我没有记错的话,该驱动程序实际上使用 DRM 驱动程序,所以希望这是个好消息?