pcimodules
List kernel driver modules available for all currently plugged in PCI devices
see also :
lspci
Synopsis
pcimodules
[--classclass_id]
[--classmaskmask] [--help]
add an example, a script, a trick and tips
examples
pcimodules
lists all modules corresponding to currently plugged in PCI
devices.
pcimodules --class 0x20000 --classmask 0xffff00
lists all modules corresponding to currently plugged in ethernet
PCI devices.
description
pcimodules
lists all driver modules for all currently plugged in PCI
devices. pcimodules should be run at boot time, and
whenever a PCI device is "hot plugged" into the
system. This can be done by the following Bourne shell
syntax:
for module in $(pcimodules) ; do
modprobe -s -k "$module"
done
When a PCI
device is removed from the system, the Linux kernel will
decrement a usage count on PCI driver module. If this count
drops to zero (i.e., there are no PCI drivers), then the
modprobe -r process that is normally configured to
run from cron every few minutes will eventually remove the
unneeded module.
The --class and
--classmask arguments can be used to limit the search to
certain classes of PCI devices. This is useful, for example,
to generate a list of ethernet card drivers to be loaded
when the kernel has indicated that it is trying to resolve
an unknown network interface.
Modules are
listed in the order in which the PCI devices are physically
arranged so that the computer owner can arrange things like
having scsi device 0 be on a controller that is not
alphabetically the first scsi controller.
options
--class
class --classmask mask
--class and
--classmask limit the search to PCI cards in particular
classes. These arguments are always used together. The
arguments to --class and --classmask can be given as
hexadecimal numbers by prefixing a leading "0x".
Note that the classes used by pcimodules are in
"Linux" format, meaning the class value that you
see with lspci would be shifted left eight bits, with the
new low eight bits programming interface ID. An examples of
how to use class and classmask is provided below. --help,
-h Print a help message and exit.
copyright
pcimodules is copyright 2000, Yggdrasil Computing,
Incorporated, and may be copied under the terms and conditions of
version 2 of the GNU General Public License as published by the
Free Software Foundation (Cambridge, Massachusetts, United States
of America).
files
/lib/modules/<kernel-version>/modules.pcimap
This file is automatically generated by depmod, and used
by pcimodules to determine which modules correspond to
which PCI ID’s.
/proc/bus/pci
An interface to PCI bus configuration space provided by the
post-2.1.82 Linux kernels. Contains per-bus subdirectories with
per-card config space files and a devices file containing
a list of all PCI devices.
maintainer
The Linux PCI Utilities are maintained by Martin Mares
<mj[:at:]suse[:dot:]cz>.
see also
lspci
author
pcimodules
was written by Adam J. Richter <adam[:at:]yggdrasil[:dot:]com>,
based on public domain example code by Martin Mares
<mj[:at:]suse[:dot:]cz>.