FreeBSD 15 und die Suche nach der Grafikbeschleunigung

darktrym

Fahnenträger
Ich versuche hier verzweifelt DRM Beschleunigung zu aktivieren, claude und chatgpt können dazu leider nix sinnvolles beitragen.
Basis ist ein altes Xiaomi Laptop mit Intel CPU/GPU 'Skylake-Y GT2 [HD Graphics 515]' und ein FreeBSD 15 frisch vom Server.
Was ich sehe, es wird kein DRM geladen und es existiert kein DRI Knoten.
Hab jetzt schon diverse Pakete installiert(drm-66-kmod-6.6.25.1500506_8 ), boot loader config und rc.conf mit Werten zu geballert, aber es ändert sich qualitativ nix.

Das gibt pciconf aus:
dark@fish ~> pciconf -lv | grep -B4 VGA
vgapci0@pci0:0:2:0: class=0x030000 rev=0x07 hdr=0x00 vendor=0x8086 device=0x191e subvendor=0x1d72 subdevice=0x1501
vendor = 'Intel Corporation'
device = 'Skylake-Y GT2 [HD Graphics 515]'
class = display
subclass = VGA
dmesg ist hat kein drm Eintrag, nur VGA Eintrag:
VT(vga): resolution 640x480
vtvga0: <VT VGA driver>
vgapci0: <VGA-compatible display> port 0x3000-0x303f mem 0xb0000000-0xb0ffffff,0xa0000000-0xafffffff irq 16 at device 2.0 on pci0
vgapci0: Boot video device
 
Was ich sehe, es wird kein DRM geladen und es existiert kein DRI Knoten.
Du kannst den auch an der Kommandozeile manuell laden.
Je nachdem, welche Grafik Du hast.
Bei Intel (was ja für Dich zuzutreffen scheint) meist: kldload i915kms
Siehe dazu auch:

Jedenfalls das sollte funktionieren und ggf. auch was auf der Konsole ausgeben.
Mit kldstat kann man dann auch nachgucken, ob der Treiber tatsächlich geladen ist.

Um das dann als User tatsächlich auch benutzen zu können (z.B. via Xorg), sollte man in der Benutzergruppe video sein.

Noch kleine Anmerkung wegen kldload usw.:
Es empfiehlt sich generell Grafiktreiber erst mal auf diesem Weg zu testen statt sie gleich in die /etc/rc.conf einzutragen. Weil es kann unter Umständen passieren, das ein falscher Grafiktreiber ein Systemhänger auslöst. Und wenn das dann auch noch automatisch beim Systemstart passiert, dann ist das eher doof. Das kriegt man zwar wieder gerade gezogen aber das spart man sich einfach, wenn man den Grafiktreiber vorher via kldload testet.

und es existiert kein DRI Knoten
Mit anderen Worten: ls -ahl /dev/dr* gibt nichts aus?

boot loader config und rc.conf mit Werten zu geballert
Wäre übrigens super, wenn Du konkret schreiben würdest, was da drin steht. Dann sieht man auch gleich, ob es ggf. falsch ist.
 
Nach der 4. Installation habe ich wohl den Fehler gefunden und neue eingebaut, dazu vielleicht später weitere Threads.
Das Problem ist dass das Kernel Modul nicht zum Kernel passte.
Wie kam es dazu, nun, beim Ausführen von desktop-installer, fragt dieser ob man nicht aktuellere Paketquellen nutzen will, Standard ist nein.
Wählt man ja, passiert erstmal nix, erst wenn wirklich neue Pakete installiert werden, überschreibt er das Kernel Modul mit ein nicht passenden.
Dabei prüft pkg nicht ob die sich eigentlich vertragen.
Schwer den Fehler zu finden und verstehen war auch, das FreeBSD erstmal kein Gerät sucht.
In NetBSD wird das unbekannte Gerät erkannt und wenn ein Treiber dafür existiert auch geladen.
FreeBSD loggt da nix für dmesg und kldload zeigt eine Meldung die wenig hilfreich ist, sinngemäß Treiber entweder bereits im Kernel oder falsche Version.
Mir fällt leider erst jetzt auf, dass man das hätte in dmesg suchen können.
Ich hatte aber nach i915kms und drm gesucht, da stand nix drin.
 
Das Problem ist dass das Kernel Modul nicht zum Kernel passte.
Wundert mich erstmal, weil zumindest bei einem frisch installierten System hat man das normalerweise nicht.

Wie kam es dazu, nun, beim Ausführen von desktop-installer,
Ich hab noch nie ernsthaft was mit dem desktop-installer gemacht.
Ich kann aber sagen, wenn man nach Handbuch vorgeht, bekommt man in den meisten Fällen ein funktionstüchtigen Desktop heraus. :-)

Ganz generell kann man sagen: Manpages und das Handbuch sind bei FreeBSD so The source of truth.
Weil die sind gut gepflegt und auch haben die Informationen auch gut aufbereitet. Und alles was da drin steht, trifft dann auch wirklich aufs System zu und funktioniert dann eben auch und geben einem zudem nützliche Hintergrundinformationen in die Hand.

In NetBSD wird das unbekannte Gerät erkannt und wenn ein Treiber dafür existiert auch geladen
Das macht im Grunde auch FreeBSD.
Das Problem ist, Grafiktreiber gehören nicht zum eigentlichen FreeBSD-System, sondern ist quasi externe Software. Deswegen muss man die auch getrennt installieren.
Es gibt immer mal wieder Diskussionen unter den Entwicklern, Grafiktreiber ins System reinzuholen. Damit solche und ähnliche Problematiken vermieden werden.
Immerhin gibts inzwischen wenigstens ein eigenes Repository um zumindest diese "passt nicht zum Kernel"-Probleme (die gerne bei Minor-Updates auftreten) abzumildern.

kldload zeigt eine Meldung die wenig hilfreich ist, sinngemäß Treiber entweder bereits im Kernel oder falsche Version.
Die Fehlermeldung könnte sicher besser sein. Aber zumindest "im Kernel" kann man ja schon mal ausschließen bei einem Third-Party-Module.
 
Eine Sache noch, nachdem ich gestern alle offene Baustellen auf den Rechner, Integration der 2. M.2 SSD in den ZPool, Wifi und fehlende Grafikkarten Firmware gelöst hatte, gibt's da vielleicht noch ein Fehler neben den bekannten bei iwlwifi?
Ich musste nämlich die Grafikkarten Firmware manuell in den Ordner kopieren, hab die von einen FreeBSD pkg rauskopiert, also die skl_dmc_ver1_27.bin aus gpu-firmware-intel-kmod-skylake-20250109.1500068.pkg. Paket ist installiert.
 
eben den bekannten bei iwlwifi?
Welche bekannten Fehler bei iwlwifi ?

Ich musste nämlich die Grafikkarten Firmware manuell in den Ordner kopieren, hab die von einen FreeBSD pkg rauskopiert
Normalerweise muss man nix manuell kopieren.
Ich muss aber zugeben, es ist schwer Dir zu folgen wenn Du immer so vage bleibst und gar nicht sagst, was Du zuvor gemacht und in welchen Ordner Du dann reinkopiert hast und solche Sachen.

also die skl_dmc_ver1_27.bin
Die liegt bei mir im Verzeichnis /boot/modules/
Und zwar ohne weiteres zutun. Allerdings heißt sie bei mir
i915_skl_dmc_ver1_27_bin.ko
Ich hab aber auch noch ein FreeBSD 14.3 (möglicherweise liegts daran; würde mich aber wundern)

Ich hab gpu-firmware-kmod mit
pkg install gpu-firmware-kmod
installiert, welches ein Meta-Package ist und dann auch in Abhängigkeit Packages wie gpu-firmware-intel-kmod-skylake mit installiert.

Mit
pkg info -l gpu-firmware-intel-kmod-skylake
lässt sich auch nachschauen, welche Dateien zu dem (installierten) Paket gehören und wo die liegen (sollten).
Code:
gpu-firmware-intel-kmod-skylake-20250109.1403000:
        /boot/modules/i915_skl_dmc_ver1_27_bin.ko
        /boot/modules/i915_skl_guc_33_0_0_bin.ko
        /boot/modules/i915_skl_guc_62_0_0_bin.ko
        /boot/modules/i915_skl_huc_2_0_0_bin.ko
        /usr/local/share/licenses/gpu-firmware-intel-kmod-skylake-20250109.1403000/INTEL
        /usr/local/share/licenses/gpu-firmware-intel-kmod-skylake-20250109.1403000/LICENSE
        /usr/local/share/licenses/gpu-firmware-intel-kmod-skylake-20250109.1403000/catalog.mk
Details zum Befehl: pkg-info(8)
 
Hab gerade den Bugreport nicht zu Hand, nur den Eintrag aus dem Forum, sprich Typo beim Namen führt dazu das die Firmware nicht gefunden wird.
Wie gesagt, aus dem Package hab ich die Datei gezogen, hab auch gleiche Ausgabe, die anderen muss er da geschafft haben zu kopieren.
Die Meta Package habe ich mir geschenkt, der installiert das halbe Internet.
 
Damit solche und ähnliche Problematiken vermieden werden.
Immerhin gibts inzwischen wenigstens ein eigenes Repository um zumindest diese "passt nicht zum Kernel"-Probleme (die gerne bei Minor-Updates auftreten) abzumildern.
"Verwirrungsmodus an", denn mit diesem Thread hat meine Anmerkung nun wirklich nichts zu tun.
Für meine NVIDIA-Grafik gilt das ja auch und trotzdem die genau richtigen Module aus dem Repo gefischt wurden, funktionierten sie mehrfach bei mir schon nicht und ich habe kurzerhand den NVIDIA-Kram (Treiber, drm-kmod ...) aus den Ports gebaut und damit Erfolg gehabt. Warum, weiß ich nicht. Mir ist bei einfachem Hinsehen gar kein Unterschied zu den Binärpakten aufgefallen, außer die letzteren einfach nicht funktionierten (beim Start einer Wayland-Situng).

Für meine Intel GPU gilt das nicht!
Das funktionierte bisher (14.3) direkt und zuverlässig binär.

Ich musste nämlich die Grafikkarten Firmware manuell in den Ordner kopieren, hab die von einen FreeBSD pkg rauskopiert, also die skl_dmc_ver1_27.bin aus gpu-firmware-intel-kmod-skylake-20250109.1500068.pkg.
Wie gesagt, aus dem Package hab ich die Datei gezogen, hab auch gleiche Ausgabe, die anderen muss er da geschafft haben zu kopieren.
GPU != WIFI
Und ich seh auch nicht (vielleicht nicht genau genug hingeschaut), dass man ein Modul aus einem Paket extrahieren und benutzen musste.

Vielleicht solltest du nochmal von vorne beginnen und ganz langsam und Schritt für Schritt hier besprechen, was geht und was nicht und was man da vielleicht tun kann oder sollte?
 
Für meine NVIDIA-Grafik gilt das ja auch und trotzdem die genau richtigen Module aus dem Repo gefischt wurden
Wie hast Du das denn sichergestellt?

Also unter der Annahme das das kmods-Repository wie im Handbuch konfiguriert ist.

Nachschauen, wie das nvidia-kmod-Package genau heißt:
Code:
# freebsd-version
14.3-RELEASE-p8

# pkg search --repository FreeBSD-kmods nvidia
nvidia-kmod-580.126.09.1403000 kmod part of NVidia graphics card binary drivers for hardware OpenGL rendering
siehe auch pkg-search(8)

Installation demzufolge mit:
pkg install --repository FreeBSD-kmods nvidia-kmod
siehe dazu auch: pkg-install(8)
 
Wie hast Du das denn sichergestellt?
nur, weil ich darauf antworten möchte, lasse ich mich verleiten. Denn eigentlich ist das OT.
"Aus Erfahrung" habe ich einfach neu gebaut und nicht erst die alten Module entfernt. Dann gibt es einen Fehler, dass Modul xyz bereits in Version abc vorhanden ist und ich das Löschen erst bestätigen muss, um die Neuinstallation aus den Port zuzulassen.
Die neu gebauten Module hatten aber genau die gleiche Versions-Nummern. Funktionierten aber.
Zuvor, bevor es das extra Modul-Repo gab, war das fast genauso, nur dass man da oft Unterschiede in den Versionsnummern sehen konnte.
Ich nutze 14.3 und altmodischen Update und eben wayland.
Aber bitte nicht weiter diesen Thread verwirren, er verwirrt mich gerade schon so genug!
 
Die neu gebauten Module hatten aber genau die gleiche Versions-Nummern. Funktionierten aber.
Wo wir gerade bei Verwirrung sind:
Ich finde es immer schwierig jemanden zu folgen, wenn irgendwie ein Vorgang beschrieben wird aber dabei gleichzeitig immer vage bleibt, so das viele Fragen offen bleiben.

Einfach die Befehle hinschreiben
und ggf. was die ausgegeben haben
und dann ist die Sache glasklar. :-)
 
Wo wir gerade bei Verwirrung sind:
Ich finde es immer schwierig jemanden zu folgen, wenn irgendwie ein Vorgang beschrieben wird aber dabei gleichzeitig immer vage bleibt, so das viele Fragen offen bleiben.

Einfach die Befehle hinschreiben
und ggf. was die ausgegeben haben
und dann ist die Sache glasklar. :-)
ja, aber das genau gleiche Verhalten hatte ich ja schon in einem sehr viel früheren Thread bezüglich meiner Wanderung zu Wayland detailliert beschrieben und wollte nun wirklich nicht ein neues Fass deswegen aufmachen.

Nur als generelle Bemerkung: bevor ich selbst irgendwas aus Paketen kopiere und als zusätzliches Modul irgendwo ablege...
 
Zurück
Oben