Debian 12 (x86): Mesa-Treiber für Intel 855GM

KDE, Gnome, Windowmanager, X11, Grafiktreiber und alles was dazu notwendig ist. Schau auch in den "Tipps und Tricks"-Bereich.
Antworten
Benutzeravatar
killerbees19
Beiträge: 99
Registriert: 14.12.2010 21:56:45
Wohnort: Wien (Österreich)

Debian 12 (x86): Mesa-Treiber für Intel 855GM

Beitrag von killerbees19 » 01.01.2024 20:47:39

Hi,

ich wollte auf einem uralten JVC MP-XV841 kürzlich die Debian 11 Installation auf Bookworm aktualisieren. Das hat prinzipiell auch geklappt, aber nun fehlt die 3D-Unterstützung. :(

Das funktionierte mit Mesa 20.3.5-1 noch einwandfrei, ich habe die entsprechenden Pakete nun einmal alle downgegraded. Damit ergeben sich folgende Ausgaben unter Debian 12:

Code: Alles auswählen

# lspci -vv -s 00:02.0
00:02.0 VGA compatible controller: Intel Corporation 82852/855GM Integrated Graphics Device (rev 02) (prog-if 00 [VGA controller])
        Subsystem: ASUSTeK Computer Inc. 82852/855GM Integrated Graphics Device
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx+
        Latency: 0
        Interrupt: pin A routed to IRQ 16
        Region 0: Memory at f0000000 (32-bit, prefetchable) [size=128M]
        Region 1: Memory at feb00000 (32-bit, non-prefetchable) [size=512K]
        Region 2: I/O ports at dc00 [size=8]
        Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
        Capabilities: [d0] Power Management version 1
                Flags: PMEClk- DSI+ D1+ D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 NoSoftRst- PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: i915
        Kernel modules: i915

$ glxinfo -B
Xlib: sequence lost (0x1001d > 0x1f) in reply type 0x0!
Xlib: sequence lost (0x10022 > 0x24) in reply type 0x0!
Xlib: sequence lost (0x10027 > 0x29) in reply type 0x0!
Xlib: sequence lost (0x1002c > 0x2e) in reply type 0x0!
Xlib: sequence lost (0x10031 > 0x33) in reply type 0x0!
Xlib: sequence lost (0x10043 > 0x45) in reply type 0x0!
name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Intel Open Source Technology Center (0x8086)
    Device: Mesa DRI Intel(R) 852GM/855GM x86/MMX/SSE2 (0x3582)
    Version: 20.3.5
    Accelerated: yes
    Video memory: 96MB
    Unified memory: yes
    Preferred profile: compat (0x2)
    Max core profile version: 0.0
    Max compat profile version: 1.3
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 0.0
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) 852GM/855GM x86/MMX/SSE2
OpenGL version string: 1.3 Mesa 20.3.5

$ apt-mark showhold
libegl-mesa0
libgbm1
libgl1-mesa-dri
libglapi-mesa
libglx-mesa0
libxatracker2
mesa-va-drivers
mesa-vdpau-drivers
mesa-vulkan-drivers
Mit den Mesa-Paketen in Version 22.3.6-1+deb12u1 sieht es hingegen so aus:

Code: Alles auswählen

$ glxinfo -B

MESA: warning: Driver does not support the 0x3582 PCI ID.
libGL error: glx: failed to create dri2 screen
libGL error: failed to load driver: iris
name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Mesa/X.org (0xffffffff)
    Device: llvmpipe (LLVM 15.0.6, 128 bits) (0xffffffff)
    Version: 22.3.6
    Accelerated: no
    Video memory: 965MB
    Unified memory: yes
    Preferred profile: core (0x1)
    Max core profile version: 4.5
    Max compat profile version: 4.5
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.2
OpenGL vendor string: Mesa/X.org
OpenGL renderer string: llvmpipe (LLVM 15.0.6, 128 bits)
OpenGL core profile version string: 4.5 (Core Profile) Mesa 22.3.6
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.5 (Compatibility Profile) Mesa 22.3.6
OpenGL shading language version string: 4.50
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile

OpenGL ES profile version string: OpenGL ES 3.2 Mesa 22.3.6
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
Ich habe bereits gelesen, dass Mesa einige sehr alte Treiber entfernt und diese nur noch über Amber bereitstellt. Ich bin mir an diesem Punkt aber absolut nicht mehr sicher, wie ich nun weiter vorgehen soll. Ich sehe da vor lauter Wald die Bäume nicht mehr und renne womöglich in eine völlig falsche Richtung. :cry:

Meine bisherigen Versuche mesa-amber anhand dieses Repos selbst zu bauen (das in Ubuntu bereits verwendet wird) bzw. mit MESA_LOADER_DRIVER_OVERRIDE herumzuspielen brachten leider keinen wirklichen Erfolg. Ich habe leider auch nicht alles im Detail notiert, was ich bereits versucht habe. Offenbar führte der i915(g)-Treiber zu einem Konflikt (LP: 2006744), weshalb er im mesa-amber Repo bei Debian deaktiviert wurde? Aber den brauche ich bei meiner Hardware doch zwingend in mesa-amber, oder?

Kann mir irgendjemand auf die Sprünge helfen, was ich als Nächstes versuchen soll? Soll ich Mesa komplett selbst kompilieren bzw. die Debian-Quellpakete patchen? Oder übersehe ich hier irgendeine einfachere Möglichkeit? :)



PS: Nein, ich verwende diese Hardware nicht mehr produktiv. Das ist eher ein Spaßprojekt, die Kiste weiterhin am Leben zu halten. Für einfache Sachen ist sie nämlich tatsächlich noch immer wunderbar verwendbar :lol:

Benutzeravatar
Tintom
Moderator
Beiträge: 3033
Registriert: 14.04.2006 20:55:15
Wohnort: Göttingen

Re: Debian 12 (x86): Mesa-Treiber für Intel 855GM

Beitrag von Tintom » 02.01.2024 07:42:41

Hallo und noch ein frohes, neues Jahr! :-)
Ich habe gerade mal Hersteller und Modellbezeichnung in die Suchmaschine meines Vertrauens geworfen. Angeblich hat dein System 256 MB RAM - ist das korrekt? Wenn ja, dann wird's schwierig mit sinnvoller Benutzung von GUI-Programmen.
Wenn du das System sowieso nicht mehr produktiv nutzt, würde ich in dem Fall einfach die zuletzt funktionierende Mesa-Version nutzen und mir das Kompilieren ersparen.

Benutzeravatar
killerbees19
Beiträge: 99
Registriert: 14.12.2010 21:56:45
Wohnort: Wien (Österreich)

Re: Debian 12 (x86): Mesa-Treiber für Intel 855GM

Beitrag von killerbees19 » 03.01.2024 02:55:23

Tintom hat geschrieben: ↑ zum Beitrag ↑
02.01.2024 07:42:41
Angeblich hat dein System 256 MB RAM - ist das korrekt?
Nein, wurde schon vor Ewigkeiten auf 1 GiB aufgerüstet. Mit ein paar Anpassungen läuft das durchaus brauchbar, solange man keinen Browser braucht. :D

Und kompilieren könnte ich das Zeug sowieso in einer wesentlich stärkeren (x86) VM auf einem anderen System, das wäre kein Problem.

Benutzeravatar
killerbees19
Beiträge: 99
Registriert: 14.12.2010 21:56:45
Wohnort: Wien (Österreich)

Re: Debian 12 (x86): Mesa-Treiber für Intel 855GM

Beitrag von killerbees19 » 03.01.2024 20:52:10

Thema (für mich) vorerst erledigt :)

Ich habe nun das Debianmesa Paket einfach mit einem Patch neu gebaut und das unveröffentlichte Debianmesa-amber ebenfalls mit einem Patch gebaut. Grob gesagt habe ich den neuen i915-Treiber im normalen mesa Paket deaktiviert und stattdessen den alten i915-Treiber in mesa-amber aktiviert. (Falls jemand die fertigen Binärpakete braucht, einfach melden.)

Meine Build-Notizen:

Code: Alles auswählen

git clone https://salsa.debian.org/scc/mesa-amber.git
cd mesa-amber
git checkout fnx/debian-unstable
sudo mk-build-deps --install debian/control
git clean -df
gbp buildpackage --git-ignore-branch --git-upstream-tag=origin/upstream-unstable -us -uc

Code: Alles auswählen

git clone https://salsa.debian.org/scc/mesa.git
cd mesa
git remote add upstream https://github.com/Mesa3D/mesa.git
git fetch upstream
git checkout fnx/debian-bookworm
sudo mk-build-deps --install debian/control
git clean -df
gbp buildpackage --git-ignore-branch -us -uc
Danach einfach die benötigten DEB-Pakete manuell installieren: sudo dpkg -i ...
Und auf HOLD setzen, damit ein Update sie nicht überschreibt: sudo apt-mark hold ...

Damit der i915-Treiber aus dem Amber-Branch auch wirklich genutzt wird, braucht es noch eine Zeile in der Datei /etc/environment:

Code: Alles auswählen

MESA_LOADER_DRIVER_OVERRIDE=i915
Nun hat man wieder eine 3D-Beschleunigung...

Code: Alles auswählen

name of display: :0.0
display: :0  screen: 0
direct rendering: Yes
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Intel Open Source Technology Center (0x8086)
    Device: Mesa DRI Intel(R) 852GM/855GM x86/MMX/SSE2 (0x3582)
    Version: 21.3.9
    Accelerated: yes
    Video memory: 96MB
    Unified memory: yes
    Preferred profile: compat (0x2)
    Max core profile version: 0.0
    Max compat profile version: 1.3
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 0.0
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) 852GM/855GM x86/MMX/SSE2
OpenGL version string: 1.3 Mesa 21.3.9 Amber (git-9b213ab76f)
Schnell getestet mit Supertux, scheint zu funktionieren. :lol:

Bei einem Update der mesa/mesa-amber Pakete durch die Debian-Entwickler muss man erneut patchen, um von den neuesten Updates zu profitieren.

Wer es einfacher haben möchte, nimmt halt die Mesa-Pakete aus Bullseye, mittels APT-Pinning würde man dort sogar noch Updates bekommen.

Antworten