linux - 没有 X 的 Tegra Mesa GLES

标签 linux linux-kernel embedded-linux mesa tegra

我正在尝试设置基于 Tegra 3 (Toradex Apalis T30) 的系统,该系统将在触摸屏上具有基于 OpenGL ES 的用户界面。不幸的是,标准的 Linux4Tegra 内核已经严重过时,并且提供的图形驱动程序需要 X11 集成。我发现我可以构建 Vanilla Linux 内核并让它在我的板上运行良好(测试 3.18)。这些天我还发现内核中包含一个 DRM Tegra 驱动程序,我在 menuconfig 中启用了它并使用它构建了内核。我还设法让许多发行版与内核一起工作(尽管我还没有真正尝试过让 X 在任何一个上工作)。

我的问题是,超出这一点,我就卡住了。我无法弄清楚下一步该怎么做才能使用 DRM 驱动程序启动和运行 GLES 渲染。我环顾四周,发现 Mesa 可能通过 DRM 支持 GLES,但我不确定这是否允许我在没有 X 的情况下这样做?另外,我究竟如何为 Tegra DRM 驱动程序配置和编译 Mesa?

此外,如何使用此 DRM 驱动程序配置输出显示?我的目标屏幕是一个 24 位并行 RGB 显示器,但我还没有连接它,想先用 HDMI 进行测试。我真的不知道应该如何配置输出显示。我能找到的唯一可能有用的信息涉及 X 和 xorg.conf,我希望不会使用它们。我的设备确实在 HDMI 显示器上正确输出了控制台,它是如何知道这样做的?这个过程可能会以某种方式涉及设备树吗?

附言。我想这个问题有点愚蠢,但我是嵌入式 Linux 的新手,刚刚弄清楚如何构建 vanilla 内核等,除了配置 X 之外,我真的不知道 Linux 显示系统是如何工作的。查找有关此的信息也证明很难。

编辑: 我已经在 Fedora 上使用 OpenTegra 驱动程序在 HDMI 上运行 XFCE(登录不起作用,登录窗口非常小),如果我没记错的话,它使用 DRM 驱动程序,希望这是个好消息?

最佳答案

如果您已经走到这一步,Nvidia 设置通常可以解决问题。通常,如果内核已被赋予正确的 vesa 模式以显示系统启动消息,则该视频将正常工作。这些有点神秘,但它们很容易变成您附加到内核引导参数“vga=###”的参数。

关于linux - 没有 X 的 Tegra Mesa GLES,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29327057/

相关文章:

embedded-linux - 等待注册缺少的类型 :

linux - Zynq 7000 上的嵌入式 Linux,丢弃几乎所有 UDP 数据包

linux - copy_from_user() 运行在用户空间还是内核空间?

linux - 列出进程以有效方式访问的所有文件

linux - 从 Yocto 的主包中删除子包

date - 如何从busybox中的 "date"获取ISO8601秒格式?

linux - 当从 konsole 调用脚本和从另一个脚本调用时,$_ 变量的行为不同

linux - 如何在ggplot中绘制两个尺度的一些数据

opengl - 如何将库添加到 CMakeLists?

linux - 了解 setuid 和 sudo