Hardware-interface (Arch Linux)

Uit De Vliegende Brigade
Ga naar: navigatie, zoeken
Apparaten & stuurprogramma's. Nog vragen?

Dit artikel heeft vooral betrekking op Arch Linux, en in het bijzonder op draadloze netwerkkaarten.

In Linux, stuurprogramma's of device drivers bevinden zich in de kernel, hetzij als voorgecompileerde onderdelen, of als modules. Module zijn loadable. Arch Linux werkt standaard met modules. Tijdens het opstarten van de computer neemt udev inventaris van de aanwezige hardware, en probeert daar de bijbehorende stuurprogramma's voor te regelen. Die worden vervolgens door de kernel geladen. Vervolgens wordt door udeb de bijbehorende interfaces aangemaakt.

Er bestaan diverse user-space tools voor het werken met netwerkdevices, vooral bij storingen.

Hardware & stuurprogramma's weergeven

Hulpprogramma's om hardware & stuurprogramma's in kaart te brengen:

  • hwinfo
  • lshw
  • lspci
  • lsusb

hwinfo

Installeer hwinfo middels:

pacman -S hwinfo

hwinfo geeft heel veel informatie. Misschien handiger om met lspci of dmesg te beginnen!

lspci

Gebruik lspci om PCI-bussen en bijbehorende apparaten weer te geven. Voorbeeld:

strompf@Katwijk ~ $ lspci
00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 02)
00:02.0 VGA compatible controller: Intel Corporation Core Processor Integrated Graphics Controller (rev 02)
00:16.0 Communication controller: Intel Corporation 5 Series/3400 Series Chipset HECI Controller (rev 06)
00:19.0 Ethernet controller: Intel Corporation 82577LC Gigabit Network Connection (rev 05)
00:1a.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset High Definition Audio (rev 05)
00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 1 (rev 05)
00:1c.1 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 2 (rev 05)
00:1c.2 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 3 (rev 05)
00:1c.3 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI Express Root Port 4 (rev 05)
00:1d.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset USB2 Enhanced Host Controller (rev 05)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a5)
00:1f.0 ISA bridge: Intel Corporation Mobile 5 Series Chipset LPC Interface Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series Chipset 6 port SATA AHCI Controller (rev 05)
00:1f.6 Signal processing controller: Intel Corporation 5 Series/3400 Series Chipset Thermal Subsystem (rev 05)
43:00.0 SD Host controller: Ricoh Co Ltd MMC/SD Host Controller (rev 01)
43:00.1 System peripheral: Ricoh Co Ltd R5U2xx (R5U230 / R5U231 / R5U241) [Memory Stick Host Controller] (rev 01)
43:00.2 System peripheral: Ricoh Co Ltd PCIe xD-Picture Card Controller (rev 01)
43:00.3 FireWire (IEEE 1394): Ricoh Co Ltd R5C832 PCIe IEEE 1394 Controller (rev 01)
44:00.0 Network controller: Broadcom Corporation BCM4313 802.11bgn Wireless Network Adapter (rev 01)
ff:00.0 Host bridge: Intel Corporation Core Processor QuickPath Architecture Generic Non-core Registers (rev 02)
ff:00.1 Host bridge: Intel Corporation Core Processor QuickPath Architecture System Address Decoder (rev 02)
ff:02.0 Host bridge: Intel Corporation Core Processor QPI Link 0 (rev 02)
ff:02.1 Host bridge: Intel Corporation Core Processor QPI Physical 0 (rev 02)
ff:02.2 Host bridge: Intel Corporation Core Processor Reserved (rev 02)
ff:02.3 Host bridge: Intel Corporation Core Processor Reserved (rev 02)

Het commando

lspci -k

Geeft aan welke kernel-modules in gebruik zijn per apparaat. De flag -k is toevallig hetzelfde als -v (verbose). Voorbeeld van de deel van de input van lspci -k:

44:00.0 Network controller: Broadcom Corporation BCM4313 802.11bgn Wireless Network Adapter (rev 01)
	Subsystem: Hewlett-Packard Company Device 145c
	Kernel driver in use: brcmsmac
	Kernel modules: bcma, brcmsmac

lsusb

Voor USB-apparaten, gebruik:

lsusb -v

Video-stuurprogramma (voorbeeld april 2014)

Voorafgaand aan de installatie van X moet ik de bijbehorende video-driver bijwerken.

Hardware identificeren

lspci | grep VGA

Dit levert op:

00:02.0 VGA compatible controller: Intel Corporation Mobile 915GM/GMS/910GML Express Graphics Controller (rev 03)

Stuurprogramma achterhalen

Dit tabelletje laat al zien dat er eigenlijk maar één optie is, maar ik ben toch benieuwd of ik dat ook op andere manieren kan achterhalen.

Commando

pacman -Ss xf86-video

geeft het volgende overzicht van stuurprogramma's:

extra/xf86-video-apm 1.2.5-4
    X.org Alliance ProMotion video driver
extra/xf86-video-ark 0.7.5-4 (xorg-drivers xorg)
    X.org ark video driver
extra/xf86-video-ast 0.97.0-4 (xorg-drivers xorg)
    X.org ASPEED AST Graphics video driver
extra/xf86-video-ati 1:7.3.0-1 (xorg-drivers xorg)
    X.org ati video driver
extra/xf86-video-chips 1.2.5-4
    X.org Chips and Technologies video driver
extra/xf86-video-cirrus 1.5.2-3 (xorg-drivers xorg)
    X.org Cirrus Logic video driver
extra/xf86-video-dummy 0.3.7-2 (xorg-drivers xorg)
    X.org dummy video driver
extra/xf86-video-fbdev 0.4.4-2 (xorg-drivers xorg)
    X.org framebuffer video driver
extra/xf86-video-geode 2.11.15-2 (xorg-drivers xorg)
    X.org AMD/Geode LX & NX video driver
extra/xf86-video-glint 1.2.8-4 (xorg-drivers xorg)
    X.org GLINT/Permedia video driver
extra/xf86-video-i128 1.3.6-4 (xorg-drivers xorg)
    X.org Number 9 I128 video driver
extra/xf86-video-i740 1.3.4-4
    X.org Intel i740 video driver
extra/xf86-video-intel 2.99.911-2 (xorg-drivers xorg)
    X.org Intel i810/i830/i915/945G/G965+ video drivers
extra/xf86-video-mach64 6.9.4-3 (xorg-drivers xorg)
    X.org mach64 video driver
extra/xf86-video-mga 1.6.3-2 (xorg-drivers xorg)
    X.org mga video driver
extra/xf86-video-modesetting 0.8.1-2 (xorg-drivers xorg)
    X.org generic modesetting video driver
extra/xf86-video-neomagic 1.2.8-2 (xorg-drivers xorg)
    X.org neomagic video driver
extra/xf86-video-nouveau 1.0.10-2 (xorg-drivers xorg)
    Open Source 2D acceleration driver for nVidia cards
extra/xf86-video-nv 2.1.20-4 (xorg-drivers xorg)
    X.org nv video driver
extra/xf86-video-openchrome 0.3.3-3 (xorg-drivers xorg)
    X.Org Openchrome drivers
extra/xf86-video-r128 6.9.2-2 (xorg-drivers xorg)
    X.org ati Rage128 video driver
extra/xf86-video-rendition 4.2.5-4
    X.org Rendition video driver
extra/xf86-video-s3 0.6.5-4
    X.org S3 video driver
extra/xf86-video-s3virge 1.10.6-4
    X.org S3 Virge video driver
extra/xf86-video-savage 2.3.7-2 (xorg-drivers xorg)
    X.org savage video driver
extra/xf86-video-siliconmotion 1.7.7-4 (xorg-drivers xorg)
    X.org siliconmotion video driver
extra/xf86-video-sis 0.10.7-5 (xorg-drivers xorg)
    X.org SiS video driver
extra/xf86-video-sisimedia 0.9.1-8
    X.org SiS 671 video driver
extra/xf86-video-sisusb 0.9.6-4
    X.org SiS USB video driver
extra/xf86-video-tdfx 1.4.5-4 (xorg-drivers xorg)
    X.org tdfx video driver
extra/xf86-video-trident 1.3.6-5 (xorg-drivers xorg)
    X.org Trident video driver
extra/xf86-video-tseng 1.2.5-4
    X.org tseng video driver
extra/xf86-video-v4l 0.2.0-13 (xorg-drivers xorg)
    X.org v4l video driver
extra/xf86-video-vesa 2.3.2-4 (xorg-drivers xorg)
    X.org vesa video driver
extra/xf86-video-vmware 13.0.2-1 (xorg-drivers xorg)
    X.org vmware video driver
extra/xf86-video-voodoo 1.2.5-4 (xorg-drivers xorg)
    X.org 3dfx Voodoo1/Voodoo2 2D video driver

en hier zit ook maar één relevante driver bij:

extra/xf86-video-intel 2.99.911-2 (xorg-drivers xorg)
    X.org Intel i810/i830/i915/945G/G965+ video drivers

Ik denk dat dit de naam is van het stuurprogramma of betreffende pakket:

xf86-video-intel

en daarmee is het circeltje rond.

Stuurprogramma installeren

pacman -S xf86-video-intel

Bronnen

Zie ook

Bronnen

Arch Linux-wiki

Overig