Du bist nicht angemeldet.

#1 17.02.2020 15:43:26

Soth
Mitglied

Richtigen Treiber wählen ohne Internet

Hallo.
Ich habe eine Verständnisfrage zur Treiber Installation.

Ich mache bald die Prüfung für das "LFCS"  Zertifikat. Dabei darf keine Hilfe Verwendet werden.
Kein Browser, kein Block, kein zweites Terminalfenster.

Zur Frage:
Ich kann mir die Hardware anzeigen lassen.
Ich kann module laden,  installieren.

Aber wie kann ich ohne Internet herausfinden welcher Treiber zu welchem Gerät geladen werden muss?

Danke schon mal!
Lg

Offline

#2 17.02.2020 15:53:26

schard
Moderator

Re: Richtigen Treiber wählen ohne Internet

Google würde dir auch nicht viel bringen, wenn du es jetzt schon nicht benutzen kannst:
https://wiki.st.com/stm32mpu/wiki/How_t … o_a_device

Offline

#3 17.02.2020 18:37:27

open-source greg
Mitglied

Re: Richtigen Treiber wählen ohne Internet

Hi Soth,
leider ist mir nicht ganz klar was du genau wissen willst. Folgende Interpretationsmöglichkeiten sehe ich zu deiner Frage:
1) Geht es dir darum welcher Treiber zu einer Gerätedatei in /dev/ gehört ?
2)Oder darum welcher Treiber zu einem Gerät, welches z.B bei lspci auftaucht (die müssen nicht notwendigerweise eine Gerätedatei haben) gehört.
3)Oder darum dass du das passende Modul zu einem Gerät laden willst, für das noch kein Modul geladen wurde

Bei allen drei Punkten ist es erstaunlich schwer das rauszufinden.
Bei 1) Hilft dir ein 'ls -l' in /sys/dev/char und /sys/dev /block weiter

Bei 2) Können lspci und ähnliche Programme (lsusb, etc.) weiterhelfen mit dem -vvv switch wird dir bei lscpi z.B auch der verwendete Kerneltreiber zu einem Gerät angezeigt.

Bei 3) Gehts eigentlich nur mit Raten und Erfahrung. Die Kerneltreiber finden ihre jeweiligen Geräte anhand der pci-ids.
          Udev hat eine riesige Datenbank und weiss deshalb welche Treiber es laden muss (/etc/udev/hwids.bin). Wie die Regeln dafür aufgebaut sind steht in 'man 7 hwdb'.

@schard: Dein link hilft keinem

Beitrag geändert von open-source greg (17.02.2020 18:45:31)

Offline

#4 17.02.2020 18:45:31

schard
Moderator

Re: Richtigen Treiber wählen ohne Internet

@open-source greg
Der Artikel unter dem von mir geposteten Link beantwortet exakt die vom OP gestellte Frage.

Soth schrieb:

Aber wie kann ich ohne Internet herausfinden welcher Treiber zu welchem Gerät geladen werden muss?

Ob dieser Link dem OP hilft, oder nicht, lassen wir am besten ihn entscheiden.

Offline

#5 18.02.2020 10:14:38

Greg
Mitglied

Re: Richtigen Treiber wählen ohne Internet

lspci -vv
zeigt alles an was am pcibus hängt und welcher Treiber benutzt wird.
z.B.

 VGA compatible controller: Intel Corporation 4th Generation Core Processor Family Integrated Graphics Controller (rev 06) (prog-if 00 [VGA controller])
	DeviceName:  Onboard IGD
	Subsystem: ASUSTeK Computer Inc. 4th Generation Core Processor Family Integrated Graphics Controller
	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 27
	Region 0: Memory at f7800000 (64-bit, non-prefetchable) [size=4M]
	Region 2: Memory at e0000000 (64-bit, prefetchable) [size=256M]
	Region 4: I/O ports at f000 [size=64]
	[virtual] Expansion ROM at 000c0000 [disabled] [size=128K]
	Capabilities: <access denied>
	Kernel driver in use: i915
	Kernel modules: i915

Wenn man nicht weiß, mit welchen Optionen der Treiber geladen werden könnte, so kann man per modinfo das heraus bekommen.

modinfo i915
$ modinfo i915
filename:       /lib/modules/5.5.4-arch1-1/kernel/drivers/gpu/drm/i915/i915.ko.xz
license:        GPL and additional rights
description:    Intel Graphics
author:         Intel Corporation
author:         Tungsten Graphics, Inc.
firmware:       i915/bxt_dmc_ver1_07.bin
...
...
parm:           modeset:Use kernel modesetting [KMS] (0=disable, 1=on, -1=force vga console preference [default]) (int)
...

Wenn man nicht weiß ob ein Treiber bereits beim Paket linux vorhanden ist so könnte man per locate das anzeigen lassen.

locate -i i915
$ locate -i i915
/usr/include/libdrm/i915_drm.h
/usr/lib/dri/i915_dri.so
/usr/lib/firmware/i915
...
...
/usr/lib/firmware/i915/tgl_guc_35.2.0.bin
/usr/lib/firmware/i915/tgl_huc_7.0.3.bin
/usr/lib/modules/5.4.20-1-lts/kernel/drivers/gpu/drm/i915
/usr/lib/modules/5.4.20-1-lts/kernel/drivers/gpu/drm/i915/gvt
/usr/lib/modules/5.4.20-1-lts/kernel/drivers/gpu/drm/i915/i915.ko.xz
/usr/lib/modules/5.4.20-1-lts/kernel/drivers/gpu/drm/i915/gvt/kvmgt.ko.xz
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/_sources/gpu/i915.rst.txt
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/gpu/i915.html
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/gpu/i915.rst
/usr/lib/modules/5.5.4-arch1-1/kernel/drivers/gpu/drm/i915
/usr/lib/modules/5.5.4-arch1-1/kernel/drivers/gpu/drm/i915/gvt
/usr/lib/modules/5.5.4-arch1-1/kernel/drivers/gpu/drm/i915/i915.ko.xz
/usr/lib/modules/5.5.4-arch1-1/kernel/drivers/gpu/drm/i915/gvt/kvmgt.ko.xz
/usr/lib32/dri/i915_dri.so
/usr/share/licenses/linux-firmware/LICENSE.i915

i915 ist vorhanden mit nötiger Firmware. Weitere Dokumente sind sogar auch noch vorhanden.
Falls das Modul nicht automatisch geladen wäre, dann könnte man das per modprobe i915 nachholen.

Es mag sein, dass das nicht die eleganteste Art ist um das alles heraus zu bekommen.

Beitrag geändert von Greg (18.02.2020 10:18:10)

Offline

#6 18.02.2020 10:29:25

Soth
Mitglied

Re: Richtigen Treiber wählen ohne Internet

Vielen Dank für die Antworten!

Ich brauch noch ein bissl um mich da durch zu arbeiten.

Greg, ja am ehesten noch Punkt 3, aber ich stehe schon vor den nächsten Fragen.
"Wenn das system aus dem Gerät den Trriber swlbst schließen kann, dann macht meine Fragestellung doch nur Sinn wenn jemand den Treiber manuell entfernt hat"

Ich habe 2 video geräte mit 81:0 und 81:1
/sys/../pci/$plattform/../name steht in beiden fällen "Camera".

Und ein drittes Gerät mit 17:81.
Das habe ich dann auch in /sys/../pci/$plattform gefunden, Heisst auch Intel, finde aber in keiner Datei in dieser Endlosschleife aus Links einen Modulnamen den ich als solchen Erkennen kann.

Ich brauche noch Zeit um den Tipps zu folgen, melde mich bald.

Offline

#7 18.02.2020 11:00:48

Greg
Mitglied

Re: Richtigen Treiber wählen ohne Internet

Soth schrieb:

..Ich habe 2 video geräte mit 81:0 und 81:1
/sys/../pci/$plattform/../name steht in beiden fällen "Camera".
...

Da wird ja noch beistehen, was für eine Kamera. Also Hersteller und Typenbezeichnung.
Per locate danach suchen. Achja, locate funktioniert natürlich nur, wenn man mlocate installiert hat und einmal # updatedb durchgeführt hat.

Nachtrag:
locate -i camera spuckt mögliche Treiber aus:

/usr/lib/modules/5.4.20-1-lts/kernel/drivers/leds/trigger/ledtrig-camera.ko.xz
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/_sources/media/uapi/v4l/ext-ctrls-camera.rst.txt
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/_sources/media/v4l-drivers/omap4_camera.rst.txt
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/_sources/media/v4l-drivers/pxa_camera.rst.txt
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/_sources/media/v4l-drivers/sh_mobile_ceu_camera.rst.txt
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/_sources/media/v4l-drivers/soc-camera.rst.txt
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/devicetree/bindings/media/pxa-camera.txt
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/uapi/v4l/ext-ctrls-camera.html
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/uapi/v4l/ext-ctrls-camera.rst
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/omap4_camera.html
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/omap4_camera.rst
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/pxa_camera.html
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/pxa_camera.rst
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/sh_mobile_ceu_camera.html
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/sh_mobile_ceu_camera.rst
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/soc-camera.html
/usr/lib/modules/5.5.4-arch1-1/build/Documentation/media/v4l-drivers/soc-camera.rst
/usr/lib/modules/5.5.4-arch1-1/kernel/drivers/leds/trigger/ledtrig-camera.ko.xz

Das meiste basiert auf v4l (Video for Linux).
Auch mit lsusb kannst du nach der Kamera suchen. Die Dinger sind meistens nicht am PCI-Bus sondern per USB erreichbar.

Beitrag geändert von Greg (18.02.2020 15:00:38)

Offline

#8 18.02.2020 11:50:53

brikler
Mitglied

Re: Richtigen Treiber wählen ohne Internet

Soth schrieb:

Hallo.
Aber wie kann ich ohne Internet herausfinden welcher Treiber zu welchem Gerät geladen werden muss?

1) in der regel kümmert sich udev um hardware und die nötigen treiber, du hast nichts zu tun, höchstens wenn du einen anderen treiber wünschst.
2) lsmod
3) modinfo <driverName>

Offline

Schnellantwort auf dieses Thema

Schreibe deinen Beitrag und versende ihn
Deine Antwort

Fußzeile des Forums