xref: /pciutils/README (revision 13463566)
1ab12277eSMartin MaresThis package contains the PCI Utilities, version @VERSION@.
22f48f637SMartin Mares
3*13463566SMartin MaresCopyright (c) 1997--2007 Martin Mares <[email protected]>
42f48f637SMartin Mares
52f48f637SMartin MaresAll files in this package can be freely distributed and used according
62f48f637SMartin Maresto the terms of the GNU General Public License, either version 2 or
7deaad187SMartin Mares(at your opinion) any newer version. See http://www.gnu.org/ for details.
82f48f637SMartin Mares
9727ce158SMartin Mares
1007159913SMartin Mares1. What's that?
1107159913SMartin Mares~~~~~~~~~~~~~~~
1255c815b5SMartin MaresThe PCI Utilities package contains a library for portable access to PCI bus
1307159913SMartin Maresconfiguration registers and several utilities based on this library.
1407159913SMartin Mares
150ac282f2SMartin MaresIn runs on the following systems:
160ac282f2SMartin Mares
170ac282f2SMartin Mares	Linux		(via /sys/bus/pci, /proc/bus/pci or i386 ports)
180ac282f2SMartin Mares	FreeBSD		(via /dev/pci)
190ac282f2SMartin Mares	NetBSD		(via libpci)
200ac282f2SMartin Mares	OpenBSD		(via /dev/pci)
210ac282f2SMartin Mares	GNU/kFreeBSD	(via /dev/pci)
220ac282f2SMartin Mares	Solaris/i386	(direct port access)
230ac282f2SMartin Mares	Aix		(via /dev/pci and odmget)
240ac282f2SMartin Mares	GNU Hurd	(direct port access)
250ac282f2SMartin Mares	Windows		(direct port access)
260ac282f2SMartin Mares
2781abd2a7SMartin MaresIt should be very easy to add support for other systems as well (volunteers
2881abd2a7SMartin Mareswanted; if you want to try that, I'll be very glad to see the patches and
2981abd2a7SMartin Maresinclude them in the next version).
30727ce158SMartin Mares
3155c815b5SMartin MaresThe utilities include:  (See manual pages for more details)
32b2c9b373SMartin Mares
3346ea554dSMartin Mares  - lspci: displays detailed information about all PCI buses and devices.
34b2c9b373SMartin Mares
35b2c9b373SMartin Mares  - setpci: allows to read from and write to PCI device configuration
36b2c9b373SMartin Mares    registers. For example, you can adjust the latency timers with it.
3707159913SMartin Mares    CAUTION: There is a couple of dangerous points and caveats, please read
3807159913SMartin Mares    the manual page first!
39b2c9b373SMartin Mares
401b95f396SMartin Mares  - update-pciids: download the current version of the pci.ids file.
411b95f396SMartin Mares
422f48f637SMartin Mares
4307159913SMartin Mares2. Compiling and (un)installing
4407159913SMartin Mares~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4507159913SMartin MaresJust run "make" to compile the package and then "make install" to install it.
46f3395cc5SMartin Mares
4707159913SMartin MaresIf you want to change the default installation location, please override
48f4ddb8d3SMartin Maresthe PREFIX variable specified in the Makefile -- e.g., you can use
49f4ddb8d3SMartin Mares"make PREFIX=/opt/pciutils install" to create a separate installation
50f4ddb8d3SMartin Maresnot interfering with the rest of your system.  Setting the DESTDIR variable
51f4ddb8d3SMartin Mareswill allow you to install to a different directory from the one you intend
52f4ddb8d3SMartin Maresto eventually run it from.  This is useful for people who are packaging
53f4ddb8d3SMartin Marespciutils to install on other computers.
5407159913SMartin Mares
55cc062b4aSMartin MaresThe configure script will automatically enable support for a compressed
56cc062b4aSMartin Marespci.ids if you have zlib installed.  You can override its guess by using
57cc062b4aSMartin Mares"make ZLIB=no" or "make ZLIB=yes".  If compressed support is enabled,
58cc062b4aSMartin Marespciutils will use pci.ids.gz in preference to pci.ids, even if the
59cc062b4aSMartin Marespci.ids file is newer.  If the pci.ids.gz file is missing, it will use
60cc062b4aSMartin Marespci.ids instead.
61cc062b4aSMartin Mares
6207159913SMartin MaresWhen you are bored of dumping PCI registers, just use "make uninstall".
6307159913SMartin Mares
6407159913SMartin Mares
6507159913SMartin Mares3. Getting new ID's
6607159913SMartin Mares~~~~~~~~~~~~~~~~~~~
6707159913SMartin MaresThe database of PCI ID's (the pci.ids file) gets out of date much faster
6807159913SMartin Maresthan I release new versions of this package.
6907159913SMartin Mares
7007159913SMartin MaresIf you are missing names for any of your devices or you just want to stay
7107159913SMartin Mareson the bleeding edge, download the most recent pci.ids file from
721b95f396SMartin Mareshttp://pciids.sf.net/ (e.g., by running the update-ids utility).
73a33d0eb7SMartin Mares
74a33d0eb7SMartin MaresIf your devices still appear as unknown, please send us their ID's and
75a33d0eb7SMartin Maresnames, the detailed instructions for submissions are listed on the
76a33d0eb7SMartin Maressf.net web page.
7707159913SMartin Mares
7807159913SMartin Mares
790ac282f2SMartin Mares4. Getting new versions
800ac282f2SMartin Mares~~~~~~~~~~~~~~~~~~~~~~~
810ac282f2SMartin MaresNew versions of pciutils are available at the following places:
8207159913SMartin Mares
830ac282f2SMartin Mares	ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/
840ac282f2SMartin Mares	ftp://ftp.kernel.org/pub/software/utils/pciutils/ (expect a couple of hours delay)
850ac282f2SMartin Mares	ftp://metalab.unc.edu/pub/Linux/hardware/ (expect a couple of days delay)
860ac282f2SMartin Mares
870ac282f2SMartin MaresThere is also a public GIT tree at:
880ac282f2SMartin Mares
890ac282f2SMartin Mares	git://git.kernel.org/pub/scm/utils/pciutils/pciutils.git
9007159913SMartin Mares
9107159913SMartin Mares
9207159913SMartin Mares5. Using the library
9307159913SMartin Mares~~~~~~~~~~~~~~~~~~~~
9407159913SMartin MaresThere is still no documentation for the library, if you want to use it
9507159913SMartin Maresin your programs, please follow the comments in lib/pci.h and in the
9607159913SMartin Maresexample program lib/example.c.
9707159913SMartin Mares
9807159913SMartin Mares
9907159913SMartin Mares6. Feedback
10007159913SMartin Mares~~~~~~~~~~~
1012f48f637SMartin MaresIf you have any bug reports or suggestions, send them to the author.
1022f48f637SMartin Mares
10307159913SMartin MaresIf you have any new ID's, I'll be very glad to add them to the database, but
10407159913SMartin Maresplease take a look at http://pciids.sf.net/ first and follow the instructions.
10507159913SMartin Mares
1062f48f637SMartin MaresIf you want, subscribe to [email protected] (send
107783ed67dSMartin Mares"subscribe linux-pci" to [email protected]).
1082f48f637SMartin MaresRelease notes about new versions will be send to the list and problems with
1092f48f637SMartin Maresthe Linux PCI support will be probably discussed there, too.
1102f48f637SMartin Mares
11107159913SMartin Mares
11207159913SMartin Mares7. Miscellanea
11307159913SMartin Mares~~~~~~~~~~~~~~
114e4842ff3SMartin MaresYou also might want to look at the pciutils web page containing release
115*13463566SMartin Maresnotes and other news: http://mj.ucw.cz/pciutils.shtml .
116e4842ff3SMartin Mares
1172bea6231SMartin MaresThere also exists a utility called PowerTweak which is able to fine tune
1182bea6231SMartin Maresparameters of many chipsets much better than the Bridge Optimization code
119783ed67dSMartin Maresin Linux kernel (already removed in 2.3.x). See http://powertweak.sf.net/
1202bea6231SMartin Maresfor more information.
1212bea6231SMartin Mares
12255c815b5SMartin Mares					Have fun
12355c815b5SMartin Mares							Martin
124