3.1.3 Determining a PC's hardware via Debian
The following commands on a Linux system should give some idea of actual
hardware and configuration.
$ pager /proc/pci
$ pager /proc/interrupts
$ pager /proc/ioports
$ pager /proc/bus/usb/devices
These commands can be run during the install process from the console screen by
pressing Alt-F2.
After the initial installation, with the installation of optional packages such
as pciutils
, usbutils
, and lshw
, you can
obtain more extensive system information.
$ lspci -v |pager
$ lsusb -v |pager
# lshw |pager
Typical uses of interrupts:
-
IRQ0: timer output (8254)
-
IRQ1: keyboard controller
-
IRQ2: cascade to IRQ8–IRQ15 on PC-AT
-
IRQ3: secondary serial port (io-port=0x2F8) (/dev/ttyS1
)
-
IRQ4: primary serial port (io-port=0x3F8) (/dev/ttyS0
)
-
IRQ5: free [sound card (SB16: io-port=0x220, DMA-low=1, DMA-high=5)]
-
IRQ6: floppy disk controller (io-port=0x3F0) (/dev/fd0
,
/dev/fd1
)
-
IRQ7: parport (io-port=0x378) (/dev/lp0
)
-
IRQ8: rtc
-
IRQ9: software interrupt (int 0x0A), redirect to IRQ2
-
IRQ10: free [network interface card (NE2000: io-port=0x300)]
-
IRQ11: free [(SB16-SCSI: io-port=0x340, SB16-IDE: io-port=0x1E8,0x3EE)]
-
IRQ12: PS/2 Mouse
-
IRQ13: free (was 80287 math coprocessor)
-
IRQ14: primary IDE controller (/dev/hda
, /dev/hdb
)
-
IRQ15: secondary IDE controller (/dev/hdc
, /dev/hdd
)
For old non-PnP ISA cards, you may want to set IRQ5, IRQ10, and IRQ11 as
non-PnP from the BIOS.
For USB devices, device classes are listed in
/proc/bus/usb/devices
as Cls=nn:
-
Cls=00 : Unused
-
Cls=01 : Audio (speaker etc.)
-
Cls=02 : Communication (MODEM, NIC, ...)
-
Cls=03 : HID (Human Interface Device: KB, mouse, joystick)
-
Cls=07 : Printer
-
Cls=08 : Mass storage (FDD, CD/DVD drive, HDD, Flash, ...)
-
Cls=09 : Hub (USB hub)
-
Cls=255 : Vendor specific
If the device class of a device is not 255, Linux supports the device.