libhardware is a very small static library used in many utilities that are part of the "Bad Penguin" distribution. It provides functions to access information about your system hardware, to detect the hardware, and to handle kernel modules automatically. It is able to enumerate all PCI devices, enumerate all EIDE disks and CDROMs, enumerate all SCSI disks and CDROMs, enumerate all EIDE/SCSI disk partitions, and check if a detected device is supported in the Linux kernel using a custom PCI database. It can also handle USB devices. The included shell scripts 'probedisk' and 'probepart' detect disks, CDROMs, and partitions. The included 'scanmodule' utility allows you to detect devices and load their kernel modules automatically.
Release Notes: This release adds a new shell script (temporarily) called "no_kudzu_please" that detects PCI and USB devices very quickly.
Release Notes: Probed devices can now be automatically loaded. The detection of modules that are already running was fixed. Probepart was enhanced to display the partition size in different formats. All of the assert calls were removed, and support for compilation with dietlibc was added.
Release Notes: The problem with extended partitions on LBA disks was solved. Some devices were added into the database. The calculation of the device ID hex value was fixed. A patch to query configured network interfaces was applied. A patch for detecting libbadpenguin in configure.in was applied. A patch for making easy scsi.c was applied. A patch for re-linking example when the library is changed was applied. /proc/modules is now checked to see if a particular module has been loaded. The directory structure was changed. Support was added for other types of devices, including PCMCIA, USB, and sound cards.
Release Notes: 'probedisk' added to display all HDs and CDROMs. 'probepart' added to display all available partitions. 'scanmodule' added to display all detected hardware. Database of working devices was heavily updated.