This package contains the PCI Utilities, version @VERSION@.
-Copyright (c) 1997--2008 Martin Mares <mj@ucw.cz>
+Copyright (c) 1997--2018 Martin Mares <mj@ucw.cz>
All files in this package can be freely distributed and used according
to the terms of the GNU General Public License, either version 2 or
-(at your opinion) any newer version. See http://www.gnu.org/ for details.
+(at your opinion) any newer version. See https://www.gnu.org/ for details.
1. What's that?
Solaris/i386 (direct port access)
Aix (via /dev/pci and odmget)
GNU Hurd (direct port access)
- Windows (direct port access)
+ Windows (direct port access, see README.Windows for caveats)
+ CYGWIN (direct port access)
+ BeOS (via syscalls)
+ Haiku (via /dev/misc/poke)
+ Darwin (via IOKit)
+ DOS/DJGPP (via i386 ports)
+ SylixOS (via /proc/pci)
It should be very easy to add support for other systems as well (volunteers
wanted; if you want to try that, I'll be very glad to see the patches and
2. Compiling and (un)installing
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Just run "make" to compile the package and then "make install" to install it.
+Please note that GNU make is needed on most platforms.
If you want to change the default installation location, please override
the PREFIX variable specified in the Makefile -- e.g., you can use
to eventually run it from. This is useful for people who are packaging
pciutils to install on other computers.
-The configure script will automatically enable support for a compressed
-pci.ids if you have zlib installed. You can override its guess by using
-"make ZLIB=no" or "make ZLIB=yes". If compressed support is enabled,
-pciutils will use pci.ids.gz in preference to pci.ids, even if the
-pci.ids file is newer. If the pci.ids.gz file is missing, it will use
-pci.ids instead.
+There are several options which can be set in the Makefile or overridden
+when running make:
+
+ ZLIB=yes/no Enable support for compressed pci.ids (requires zlib).
+ If it is enabled, pciutils will use pci.ids.gz in preference to
+ pci.ids, even if the pci.ids file is newer. If the pci.ids.gz
+ file is missing, it will use pci.ids instead. If you do not
+ specify this option, the configure script will try to guess
+ automatically based on the presence of zlib.
+
+ DNS=yes/no Enable support for querying the central database of PCI IDs
+ using DNS. Requires libresolv (which is available on most
+ systems as a part of the standard libraries) and tries to
+ autodetect its presence if the option is not specified.
+
+ SHARED=yes/ Build libpci as a shared library. Requires GCC 4.0 or newer.
+ no/local The ABI of the shared library is intended to remain backward
+ compatible for a long time (we use symbol versioning to achieve
+ that, like GNU libc does). The value `local' includes the
+ right directory name in the binaries, so the utilities can be
+ run without installation. This is not recommended for any
+ production builds.
+
+"make install-lib" installs the library together with its header files
+for use by other programs.
When you are bored of dumping PCI registers, just use "make uninstall".
-3. Getting new ID's
+3. Getting new IDs
~~~~~~~~~~~~~~~~~~~
-The database of PCI ID's (the pci.ids file) gets out of date much faster
-than I release new versions of this package.
+The database of PCI IDs (the pci.ids file) gets out of date much faster
+than I release new versions of this package, so it is maintained separately.
+
+It lives at https://pci-ids.ucw.cz/, where you can browse the database,
+download the most recent pci.ids file (e.g., by running the update-ids utility)
+and also submit new entries.
+
+Alternatively, you can use `lspci -q' to query the central database
+for new entries via network.
-If you are missing names for any of your devices or you just want to stay
-on the bleeding edge, download the most recent pci.ids file from
-http://pciids.sf.net/ (e.g., by running the update-ids utility).
+The pci.ids file is also mirrored at https://github.com/pciutils/pciids.
-If your devices still appear as unknown, please send us their ID's and
-names, the detailed instructions for submissions are listed on the
-sf.net web page.
+On Linux systems with a recent enough version of libudev, UDEV's HWDB
+database is consulted when pci.ids lacks the device.
4. Getting new versions
~~~~~~~~~~~~~~~~~~~~~~~
-New versions of pciutils are available at the following places:
+The current version of pciutils is available at:
+
+ https://mj.ucw.cz/sw/pciutils/
+
+The tarball can be downloaded at the following places:
ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/
- ftp://ftp.kernel.org/pub/software/utils/pciutils/ (expect a couple of hours delay)
- ftp://metalab.unc.edu/pub/Linux/hardware/ (expect a couple of days delay)
+ https://www.kernel.org/pub/software/utils/pciutils/ (expect a couple of hours delay)
There is also a public GIT tree at:
- git://git.kernel.org/pub/scm/utils/pciutils/pciutils.git
+ https://git.kernel.org/pub/scm/utils/pciutils/pciutils.git
+ https://github.com/pciutils/pciutils
5. Using the library
~~~~~~~~~~~~~~~~~~~~
-There is still no documentation for the library, if you want to use it
-in your programs, please follow the comments in lib/pci.h and in the
-example program lib/example.c.
+So far, there is only a little documentation for the library except for the
+general introduction in the pcilib(7) man page. If you want to use the
+library in your programs, please follow the comments in lib/pci.h and in
+the example program example.c.
6. Feedback
~~~~~~~~~~~
If you have any bug reports or suggestions, send them to the author.
-If you have any new ID's, I'll be very glad to add them to the database, but
-please take a look at http://pciids.sf.net/ first and follow the instructions.
-
-If you want, subscribe to linux-pci@atrey.karlin.mff.cuni.cz (send
-"subscribe linux-pci" to majordomo@atrey.karlin.mff.cuni.cz).
-Release notes about new versions will be send to the list and problems with
-the Linux PCI support will be probably discussed there, too.
-
-
-7. Miscellanea
-~~~~~~~~~~~~~~
-You also might want to look at the pciutils web page containing release
-notes and other news: http://mj.ucw.cz/pciutils.shtml .
+If you have any new IDs, I'll be very glad to add them to the database.
+Just submit them at https://pci-ids.ucw.cz/.
-There also exists a utility called PowerTweak which is able to fine tune
-parameters of many chipsets much better than the Bridge Optimization code
-in Linux kernel (already removed in 2.3.x). See http://powertweak.sf.net/
-for more information.
+Announcements of new versions are sent to linux-pci@vger.kernel.org
+(see http://vger.kernel.org/ for instructions).
Have fun
Martin