Farewell, drm-current-kmod and drm-devel-kmod – welcome, graphics/drm-54-kmod and graphics/drm-510-kmod; multiple ports and flavours for GPU firmware


… please use drm-510-kmod

For the DRM stack (graphics), from <https://gitter.im/FreeBSDDesktop/Lobby/archives/2022/02/18?at=620fda5f4164105ab0a48254>:

[irc] <manu> brief plan is 5.10, move most things to base (i.e. no linuxkpi_gplv2.ko)
[irc] <manu> then have a dma-buf implem in base and if it's good enough perf-wise import everything
I tried graphics/drm-510-kmod for 13.1. It works for the console, but it didn't work for the desktop.

My XDM login screen and window manager didn't display properly. The outer shapes show correctly, and cursor prompts show. Text is missing, and some colors are completely different. Also, the shadows stay up after making menus and other displays show up. Here's a screen shot of how it looks on my window manager:

It's difficult to get the user name and password entered to log in on XDM.

Uninstalling drm-510-kmod was easy. Attempting to uninstall libdrm tried to uninstall every graphical port, but that might be necessary.

I'll try it again, then try, drm-54-kmod. If that doesn't work, I'll go back to the one I was using before for now.

I'll update this in a bit.
Intel i915kms. Not sure of the card, but its an older one that loaded automatically to this after everything was compiled with the previous kmod.

The problem could have been that, I needed to recompile libdrm.
Ok, that's all it needed. drm-510-kmod worked on 13.1-RC5.

I don't know if it's just me, but there seems to be less dependencies on some ports that were uninstalled and reinstalled. qt5 especially. I don't want to reinstall everything else to be sure of xorg. It seems like some dependencies aren't hardwired like they were before.
I'm not sure what happened. This stopped working.

As it was, it was working, but periodically logged out of the windowmanger to xdm. This is the error:
Xconnection to :0 broken (explicit kill or server shutdown).
xterm: xterm: xterm: fatal IO error 35 (resource temporarily unavailable) or KillClient on X server ":0"
Some of these errors showed up a few times.

Then, when reinstalling some ports, the errors got worse.

ATTENTION: default value of option mesa_glthread overriden by environment.
Exiting due to channel error.
Crash Annotation GraphicCriticalError: I[C0][GFX-]: Receive IPC close with reason=AbnormalShutdown (t=12.4294) Exiting due to channel error.
This is summarized, some errors were the same as from the previous error. Don't remember the exact sequence after which this error occurred.

After saving this message, and after doing more port reinstalling, the XDM screen kept flashing. It didnt show correctly, and I couldn't get to the console, without logging into single user mode.

What it looks like here, is dependency chains uninstalled drm-510-kmod (which obviously I didnt intend), and that messed things up. Checking later, modules in /boot were uninstalled, as could have been expected. Similar error messages showed up. I'm not going to troubleshoot this one now. I'm going to try kmod 54. If that doesn't work, I'll use Vesa. Right now, I just need a desktop.

Don't tell me not to mix packages and ports. This could have happened anyway with the port dependency chains, after hours of compiling. This is a lesser case of what dependency hell is. I want to get a system up fast, and not spend hours compiling. The point here, is that there's compatibility issues, and dependency requirements of uninstalled/reinstalled things. Before that was an issue, it automatically logs out to XDM. This lets people know what to expect, and to plan accordingly. Also the error messages can help with troubleshooting.

There's a package for drm-54-kmod, and not for drm-510-kmod, so this package may work and be compatible, without needing compiling.

UPDATE: I'm in the process of trying the available package drm-54-kmod on 13.1-RC5. It worked well on kldload-ing and starting my desktop. This package leaves the /boot/modules/ directory simplified.

Couldn't start Firefox with a mesa_glthread error (same error in code from previous post above), so, maybe recompiling and addressing that elsewhere.
I found a more comprehensive explanation:

Changes in drm ports

– other ports that were added on 1st May include:

If you pkg delete graphics/gpu-firmware-kmod 20211014,1 or later, you should also either:
  1. pkg autoremove then (if removals are allowed) install what's required; or
  2. individually delete the eighty-something packages that are not required, and set the required packages to non-automatic.

Side note

If you have multimedia/gstreamer1-plugins-all, beware of unwanted findings in response to pkg autoremove (bug 263949 (fixed in latest)).