Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Kernelmodul explizit für Gerät laden

0 views
Skip to first unread message

Marco Moock

unread,
Nov 16, 2022, 8:20:05 AM11/16/22
to
Hallo zusammen,

ich will ein Kernelmodul (vesa) für eine XGI-GraKa laden. Das Modul
selbst kann ich laden, aber es wird dann nicht für die Karte genutzt.
Gibt es eine Möglichkeit, das mit modprobe für ein bestimmtes Gerät
(PCI-ID, Bus-ID etc.) zu erzwingen?

Eine Möglichkeit wäre noch, die xorg.conf zu stellen, das will ich aber
erst tun, wenn das Vorhaben so nicht funktioniert.

--
Gruß
Marco

Sieghard Schicktanz

unread,
Nov 16, 2022, 2:13:05 PM11/16/22
to
Hallo Marco,

Du schriebst am Wed, 16 Nov 2022 14:20:03 +0100:

> ich will ein Kernelmodul (vesa) für eine XGI-GraKa laden. Das Modul
> selbst kann ich laden, aber es wird dann nicht für die Karte genutzt.

Da wird dann wohl noch das schon in Benutzung befindliche benutzt
werden...

> Gibt es eine Möglichkeit, das mit modprobe für ein bestimmtes Gerät
> (PCI-ID, Bus-ID etc.) zu erzwingen?

Wenn Du das Modul _vor_ der Initialisierung der Grafikkarte lädst,
könnte das funktionieren. Doch, das geht, man kann (siehe Kernel-
Dokumentation) bereits den Kernel ein paar solche Sachen durchführen
lassen, und speziell für die "Grafik" (Bildschirmbedienung) gibt es
etliche Möglichkeiten.

> Eine Möglichkeit wäre noch, die xorg.conf zu stellen, das will ich
> aber erst tun, wenn das Vorhaben so nicht funktioniert.

Die "xorg.conf" kommt erst sehr viel später dran - dann sind die
Kermel-Treiber schon aktiv und lassen sich deshalb nicht mehr entfernen.
Dann _kann_ der X-Server keinen Zusatztreiber für eine Karte mehr
laden, die keine benötigte Kernel-Unterstützung hat.
Du mußt das Ding wohl schon von Anfang an um Laufen bringen, dann
sollte auch der X-Server, so er einen entsprechenden Treiber braucht,
den auch automatisch dazunehmen.

Allerdings ist "der" VESA-Treiber _eigentlich_ eher ein "Verlegenheits"-
Modul, das dann benutzt wird, wenn es keinen spezifischen Karten-
Treiber gibt. Deswegen gibt es da sogar spezielle Kernel-Befehlszeilen-
Optionen zum Laden und Konfigurieren - s. Kernel-Dokumentation.
Außer, Du hast einen speziellen VESA-Treiber für Deine Karte.

--
(Weitergabe von Adressdaten, Telefonnummern u.ä. ohne Zustimmung
nicht gestattet, ebenso Zusendung von Werbung oder ähnlichem)
-----------------------------------------------------------
Mit freundlichen Grüßen, S. Schicktanz
-----------------------------------------------------------

Marco Moock

unread,
Nov 16, 2022, 2:23:54 PM11/16/22
to
Am 16.11.2022 um 20:10:15 Uhr schrieb Sieghard Schicktanz:

> Da wird dann wohl noch das schon in Benutzung befindliche benutzt
> werden...

Es wird gar keines geladen, siehe den Thread "XGI Z11/Z11M 18ca:0027
Kernelmodul für Ubuntu" hier in der NG.

> Allerdings ist "der" VESA-Treiber _eigentlich_ eher ein
> "Verlegenheits"- Modul, das dann benutzt wird, wenn es keinen
> spezifischen Karten- Treiber gibt. Deswegen gibt es da sogar
> spezielle Kernel-Befehlszeilen- Optionen zum Laden und Konfigurieren
> - s. Kernel-Dokumentation. Außer, Du hast einen speziellen
> VESA-Treiber für Deine Karte.

Da es keinen anderen gibt würde ich es mit dem versuchen.

Marco Moock

unread,
Nov 17, 2022, 2:02:32 AM11/17/22
to
Am 16.11.2022 um 17:15:12 Uhr schrieb Andreas Kohlbach:

> On Wed, 16 Nov 2022 20:23:52 +0100, Marco Moock wrote:
> >
> > Am 16.11.2022 um 20:10:15 Uhr schrieb Sieghard Schicktanz:
> >
> >> Da wird dann wohl noch das schon in Benutzung befindliche benutzt
> >> werden...
> >
> > Es wird gar keines geladen, siehe den Thread "XGI Z11/Z11M 18ca:0027
> > Kernelmodul für Ubuntu" hier in der NG.
>
> Du hast dann kein X?

Doch, mit der 2. GraKa schon. Die soll aber mittelfristig ersetzt
werden.

Sieghard Schicktanz

unread,
Nov 17, 2022, 6:13:05 PM11/17/22
to
Hallo Marco,

Du schriebst am Wed, 16 Nov 2022 20:23:52 +0100:

[Grafik-Modul]
> Es wird gar keines geladen, siehe den Thread "XGI Z11/Z11M 18ca:0027
> Kernelmodul für Ubuntu" hier in der NG.

"Gar keines" eher nicht - aber möglicherweise benutzt der Kernel dann
den vom grub übernommenen Treiber, mindestens VGA, wahrscheinlicher
VESA.

> > Allerdings ist "der" VESA-Treiber _eigentlich_ eher ein
> > "Verlegenheits"- Modul, das dann benutzt wird, wenn es keinen
...
> Da es keinen anderen gibt würde ich es mit dem versuchen.

Es gibt da sogar wei davon, beides Framebuffer-Treiber, "vesafb" und
"uvesafb". Die Kernel-Dokumentation sagt dazu:
".../Documentation/fb/vesafb.rst"

This is a generic driver for a graphic framebuffer on intel boxes.

The idea is simple: Turn on graphics mode at boot time with the help
of the BIOS, and use this as framebuffer device /dev/fb0, like the m68k
(and other) ports do.

".../Documentation/fb/uvesafb.rst"

uvesafb should work with any video card that has a Video BIOS compliant
with the VBE 2.0 standard.

Unlike other drivers, uvesafb makes use of a userspace helper called
v86d. v86d is used to run the x86 Video BIOS code in a simulated and
controlled environment. This allows uvesafb to function on arches
other than x86. Check the v86d documentation for a list of currently
supported arches.

D.h. der "vesa"-Treiber ist wirklich sousagen "der etzte", den man
benutzen sollte. Du könntest, wenn es da wirklich nichts anderes geben
sollte, wahrscheinlich ein wenig besser mit dem "uvesa" wegkommen.


Du schriebst am Thu, 17 Nov 2022 08:02:31 +0100:

> > > Es wird gar keines geladen, siehe den Thread "XGI Z11/Z11M 18ca:
> > > 0027 Kernelmodul für Ubuntu" hier in der NG.
> >
> > Du hast dann kein X?
>
> Doch, mit der 2. GraKa schon. Die soll aber mittelfristig ersetzt
> werden.

Hast Du dann schonmal mit _nur_ dieser "2." Karte probiert, ob der
Kernel dafür nicht doch was findet? Wenn die "1." schon versorgt ist,
könnte es doch sein, daß die 2. _vom Kernel_ ignoriert wird und dann
_Xorg_ keinen passenden "Anschluß" mehr sieht oder findet?
In der Liste der "pci.ids" (vom 20.5.2022) ist die oder eine ähnliche
jedenfalls gelistet:

18ca XGI Technology Inc. (eXtreme Graphics Innovation)
0027 Z11/Z11M

Allerdings gibt es keinen Video-Treiber der diese Kennungen enthält.
Der einzige der wenigstens den Hersteller kennt ist der "sisfb", aber
der sieht mir eher "unverdächtig" aus...
Bleibt wohl doch nur der "(u)vesafb".
(Du önntest ja mal schauen, ob der Kernel mit "vga=ask" Dir die
möglichen Auflösungen dieser Karte zur Auswahl anbietet. Wenn er das
tut, dann hat er die erkannt und sollte auch den passenden FB-Treiber
automatisch laden. Eine andere Grafikkarte könnte das aber evtl.
stören, deswegen würde ich das mit nur der "2." Karte versuchen.
Jedenfalls ist das schon relativ "low level".)

Marco Moock

unread,
Nov 18, 2022, 1:30:41 AM11/18/22
to
Am 17.11.2022 um 20:48:28 Uhr schrieb Andreas Kohlbach:
> Beende doch mal X und werfe (dann auf einer TTY) seinen Treiber mit
> rmmod raus. Anschließend den anderen mit modprobe laden.

Für dies Problem-GraKa wird gar keiner geladen.
Hier der Ausschnitt aus lspci:

03:00.0 VGA compatible controller [0300]: XGI Technology Inc. (eXtreme Graphics Innovation) Z11/Z11M [18ca:0027]
Subsystem: XGI Technology Inc. (eXtreme Graphics Innovation) Z11/Z11M [18ca:0027]
05:00.0 PCI bridge [0604]: ASMedia Technology Inc. ASM1083/1085 PCIe to
PCI Bridge [1b21:1080] (rev 04)

Ich kann das aber gerne in nem anderen Rechner nur mit der GraKa
testen, mal sehen, was dann geladen wird.

Marco Moock

unread,
Nov 19, 2022, 4:24:58 AM11/19/22
to
Am 17.11.2022 um 22:35:15 Uhr schrieb Sieghard Schicktanz:

> Hast Du dann schonmal mit _nur_ dieser "2." Karte probiert, ob der
> Kernel dafür nicht doch was findet?

Da kommt Bild mit 1024x768@0Hz (wirklich Null laut xrandr).
Ein Treiber wird aber nicht geladen, im lspci kommt kein "Kernel driver
in use: "

Ich vermute, dass diese Karte nicht in Kombination mit anderen Karten
laufen wird, wenn es keinen passenden Treiber im Kernel gibt.

Sieghard Schicktanz

unread,
Nov 19, 2022, 4:13:07 PM11/19/22
to
Hallo Marco,

Du schriebst am Sat, 19 Nov 2022 10:24:57 +0100:

> > Hast Du dann schonmal mit _nur_ dieser "2." Karte probiert, ob der
> > Kernel dafür nicht doch was findet?
>
> Da kommt Bild mit 1024x768@0Hz (wirklich Null laut xrandr).
> Ein Treiber wird aber nicht geladen, im lspci kommt kein "Kernel
> driver in use: "

Und "lsmod" liefert da auch nix von wegen "vesafb" o.ä.? Auch nichts mit
"vga=ask" in der Kernel-Befehlszeile?

> Ich vermute, dass diese Karte nicht in Kombination mit anderen Karten
> laufen wird, wenn es keinen passenden Treiber im Kernel gibt.

Also heutzutage sollte eine halbwegs verwendbare Grafikkarte doch
_wenigstens_ VESA-kompatibel sein und entsprechende Software in ihrem
BIOS enthalten. Das wären sonst ja archaische Zustände...

Marco Moock

unread,
Nov 20, 2022, 1:56:52 PM11/20/22
to
Am 19.11.2022 schrieb Sieghard Schicktanz:

> Und "lsmod" liefert da auch nix von wegen "vesafb" o.ä.? Auch nichts
> mit "vga=ask" in der Kernel-Befehlszeile?

Ohne nicht, die Ausgabe habe ich so kopiert.
Ist das denn einfach eine Bootoption, die man wie nomodeset&Co nutzen
kann?

Der Test war ein Lubuntu 22.04 Live.

Sieghard Schicktanz

unread,
Nov 20, 2022, 4:13:05 PM11/20/22
to
Hallo Marco,

Du schriebst am Sun, 20 Nov 2022 19:56:48 +0100:

> > Und "lsmod" liefert da auch nix von wegen "vesafb" o.ä.? Auch nichts
> > mit "vga=ask" in der Kernel-Befehlszeile?
>
> Ohne nicht, die Ausgabe habe ich so kopiert.

Ohne was was nicht? Welche Ausgabe hast Du kopiert? Mir fehlt der Bezug.

> Ist das denn einfach eine Bootoption, die man wie nomodeset&Co nutzen
> kann?

"vga=ask" ist eine Boot-Option, ja. Hast Du keine Kernel-Dokumentation?
Dort findest Du das alles zusammengestellt und beschrieben, und noch
mehr. Lies' halt nach, wenn Du mir nicht traust.

Und BTW, auch wenn "lsmod" _kein_ "[u]vesafb"-Modul anzeigt, kann das
vorhanden sein., nämlich im Kernel eingebaut. Das stünde dann
in /lib/mosules/<Kernelversion>/modules.builtin.

Marco Moock

unread,
Nov 21, 2022, 2:46:30 AM11/21/22
to
Am 20.11.2022 um 20:39:31 Uhr schrieb Sieghard Schicktanz:

> Hallo Marco,
>
> Du schriebst am Sun, 20 Nov 2022 19:56:48 +0100:
>
> > > Und "lsmod" liefert da auch nix von wegen "vesafb" o.ä.? Auch
> > > nichts mit "vga=ask" in der Kernel-Befehlszeile?
> >
> > Ohne nicht, die Ausgabe habe ich so kopiert.
>
> Ohne was was nicht? Welche Ausgabe hast Du kopiert? Mir fehlt der
> Bezug.

Ohne vga=ask als Bootoption.

> "vga=ask" ist eine Boot-Option, ja. Hast Du keine
> Kernel-Dokumentation? Dort findest Du das alles zusammengestellt und
> beschrieben, und noch mehr. Lies' halt nach, wenn Du mir nicht traust.

Die wird bei mir nicht mehr unterstützt. "Legacy option not supported
anymore" oder so.

> Und BTW, auch wenn "lsmod" _kein_ "[u]vesafb"-Modul anzeigt, kann das
> vorhanden sein., nämlich im Kernel eingebaut. Das stünde dann
> in /lib/mosules/<Kernelversion>/modules.builtin.

Diese Datei ist bei mir leer.
-rw-r--r-- 1 root root 0 Okt 20 19:21
/lib/modules/5.15.0-48-generic/modules.builtin.bin

Sieghard Schicktanz

unread,
Nov 21, 2022, 4:13:05 PM11/21/22
to
Hallo Marco,

Du schriebst am Mon, 21 Nov 2022 08:46:29 +0100:

> > "vga=ask" ist eine Boot-Option, ja. Hast Du keine
> > Kernel-Dokumentation? Dort findest Du das alles zusammengestellt und
...
> Die wird bei mir nicht mehr unterstützt. "Legacy option not supported
> anymore" oder so.

Ungünstig. Da ist anscheinend was undokumentiert umgebaut worden, oder
das stützt sich auf einen "Vorgang", der bei Dir nicht mehr vorhanden
ist. Die Liste der Bootoptionen sagt zu "vga=" am Ende des Abschnitts:

"This is actually a boot loader parameter; the value is
passed to the kernel using a special protocol."

Das legt halt nahe, daß da der Kernel selber nur zum Teil beteiligt
ist. Funktioniert "vga=<Mode-Nummer>"?
Eine andere Möglichkeit wären die "video="-Parameter, beschrieben in
"/usr/src/linux/Documentation/fb/modedb.rst" (oder wo Deine
Kernel-Quellen bei Deinem system liegen). Allerdings ist der [u]vesa.
Treiber nicht in der Liste der kompatiblen Treiber aufgeführt.
Aber irgendwas sollte sich doch finden lassen bei den vielen
Möglichkeiten. Man muß halt mal ein paar probieren. Und auch mal
bisserl in der Dokumentation suchen. "find" und "grep" liefern da viel
Information, der man nachgehen kann.

> > Und BTW, auch wenn "lsmod" _kein_ "[u]vesafb"-Modul anzeigt, kann
> > das vorhanden sein., nämlich im Kernel eingebaut. Das stünde dann
> > in /lib/mosules/<Kernelversion>/modules.builtin.
>
> Diese Datei ist bei mir leer.

Dann kann das immer noch aus der initrd kommen - die vergeß' ich gern,
weil ich vorziehe, keine zu brauchen. (Warum muß da schonmal jede Menge
Zeugs geladen werden, was ich nicht brauche und ggfs. nicht haben will,
wenn gleich drauf die Festplatte sowieso zur Verfügung steht. _Wenn_
initrd, dann nur eine, die gerade mal ausreicht, auf die System-Platte
zugriefen zu können, ist da meine Ansicht.)
0 new messages