]>
Commit | Line | Data |
---|---|---|
ab12277e | 1 | This package contains the PCI Utilities, version @VERSION@. |
2f48f637 | 2 | |
14b85d7c | 3 | Copyright (c) 1997--2008 Martin Mares <mj@ucw.cz> |
2f48f637 MM |
4 | |
5 | All files in this package can be freely distributed and used according | |
6 | to the terms of the GNU General Public License, either version 2 or | |
deaad187 | 7 | (at your opinion) any newer version. See http://www.gnu.org/ for details. |
2f48f637 | 8 | |
727ce158 | 9 | |
07159913 MM |
10 | 1. What's that? |
11 | ~~~~~~~~~~~~~~~ | |
12 | The PCI Utilities package contains a library for portable access to PCI bus | |
13 | configuration registers and several utilities based on this library. | |
727ce158 | 14 | |
0ac282f2 MM |
15 | In runs on the following systems: |
16 | ||
17 | Linux (via /sys/bus/pci, /proc/bus/pci or i386 ports) | |
18 | FreeBSD (via /dev/pci) | |
19 | NetBSD (via libpci) | |
20 | OpenBSD (via /dev/pci) | |
21 | GNU/kFreeBSD (via /dev/pci) | |
22 | Solaris/i386 (direct port access) | |
23 | Aix (via /dev/pci and odmget) | |
24 | GNU Hurd (direct port access) | |
25 | Windows (direct port access) | |
550d67d1 | 26 | CYGWIN (direct port access) |
0ac282f2 | 27 | |
81abd2a7 MM |
28 | It should be very easy to add support for other systems as well (volunteers |
29 | wanted; if you want to try that, I'll be very glad to see the patches and | |
30 | include them in the next version). | |
b2c9b373 | 31 | |
07159913 | 32 | The utilities include: (See manual pages for more details) |
b2c9b373 | 33 | |
46ea554d | 34 | - lspci: displays detailed information about all PCI buses and devices. |
b2c9b373 | 35 | |
07159913 MM |
36 | - setpci: allows to read from and write to PCI device configuration |
37 | registers. For example, you can adjust the latency timers with it. | |
38 | CAUTION: There is a couple of dangerous points and caveats, please read | |
39 | the manual page first! | |
2f48f637 | 40 | |
1b95f396 MM |
41 | - update-pciids: download the current version of the pci.ids file. |
42 | ||
f3395cc5 | 43 | |
07159913 MM |
44 | 2. Compiling and (un)installing |
45 | ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ | |
46 | Just run "make" to compile the package and then "make install" to install it. | |
d7ea742c | 47 | Please note that GNU make is needed on most platforms. |
2f48f637 | 48 | |
07159913 | 49 | If you want to change the default installation location, please override |
f4ddb8d3 MM |
50 | the PREFIX variable specified in the Makefile -- e.g., you can use |
51 | "make PREFIX=/opt/pciutils install" to create a separate installation | |
52 | not interfering with the rest of your system. Setting the DESTDIR variable | |
53 | will allow you to install to a different directory from the one you intend | |
54 | to eventually run it from. This is useful for people who are packaging | |
55 | pciutils to install on other computers. | |
07159913 | 56 | |
d7ea742c MM |
57 | There are several options which can be set in the Makefile or overridden |
58 | when running make: | |
59 | ||
60 | ZLIB=yes/no Enable support for compressed pci.ids (requires zlib). | |
61 | If it is enabled, pciutils will use pci.ids.gz in preference to | |
62 | pci.ids, even if the pci.ids file is newer. If the pci.ids.gz | |
63 | file is missing, it will use pci.ids instead. If you do not | |
64 | specify this option, the configure script will try to guess | |
65 | automatically based on the presence of zlib. | |
66 | ||
67 | DNS=yes/no Enable support for querying the central database of PCI ID's | |
68 | using DNS. Requires libresolv (which is available on most | |
69 | systems as a part of the standard libraries) and tries to | |
70 | autodetect its presence if the option is not specified. | |
71 | ||
2f421184 | 72 | SHARED=yes/ Build libpci as a shared library. Requires GCC 4.0 or newer. |
d7ea742c MM |
73 | no/local The ABI of the shared library is intended to remain backward |
74 | compatible for a long time (we use symbol versioning to achieve | |
75 | that, like GNU libc does). The value `local' includes the | |
76 | right directory name in the binaries, so the utilities can be | |
77 | run without installation. This is not recommended for any | |
78 | production builds. | |
79 | ||
80 | "make install-lib" installs the library together with its header files | |
81 | for use by other programs. | |
cc062b4a | 82 | |
07159913 MM |
83 | When you are bored of dumping PCI registers, just use "make uninstall". |
84 | ||
85 | ||
86 | 3. Getting new ID's | |
87 | ~~~~~~~~~~~~~~~~~~~ | |
88 | The database of PCI ID's (the pci.ids file) gets out of date much faster | |
89 | than I release new versions of this package. | |
90 | ||
91 | If you are missing names for any of your devices or you just want to stay | |
92 | on the bleeding edge, download the most recent pci.ids file from | |
1b95f396 | 93 | http://pciids.sf.net/ (e.g., by running the update-ids utility). |
a33d0eb7 | 94 | |
14b85d7c MM |
95 | Alternatively, you can use `lspci -q' to query the central database |
96 | for new entries via network. | |
97 | ||
a33d0eb7 MM |
98 | If your devices still appear as unknown, please send us their ID's and |
99 | names, the detailed instructions for submissions are listed on the | |
100 | sf.net web page. | |
07159913 MM |
101 | |
102 | ||
0ac282f2 MM |
103 | 4. Getting new versions |
104 | ~~~~~~~~~~~~~~~~~~~~~~~ | |
105 | New versions of pciutils are available at the following places: | |
106 | ||
107 | ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/ | |
108 | ftp://ftp.kernel.org/pub/software/utils/pciutils/ (expect a couple of hours delay) | |
109 | ftp://metalab.unc.edu/pub/Linux/hardware/ (expect a couple of days delay) | |
110 | ||
111 | There is also a public GIT tree at: | |
112 | ||
113 | git://git.kernel.org/pub/scm/utils/pciutils/pciutils.git | |
07159913 MM |
114 | |
115 | ||
116 | 5. Using the library | |
117 | ~~~~~~~~~~~~~~~~~~~~ | |
14b85d7c MM |
118 | So far, there is only a little documentation for the library except for the |
119 | general introduction in the pcilib(7) man page. If you want to use the | |
120 | library in your programs, please follow the comments in lib/pci.h and in | |
bc46bc39 | 121 | the example program example.c. |
07159913 MM |
122 | |
123 | ||
124 | 6. Feedback | |
125 | ~~~~~~~~~~~ | |
126 | If you have any bug reports or suggestions, send them to the author. | |
127 | ||
128 | If you have any new ID's, I'll be very glad to add them to the database, but | |
129 | please take a look at http://pciids.sf.net/ first and follow the instructions. | |
130 | ||
c9d7a90b MM |
131 | If you want, subscribe to linux-pci@vger.kernel.org (take a look at |
132 | http://vger.kernel.org/ for instructions). | |
2f48f637 MM |
133 | Release notes about new versions will be send to the list and problems with |
134 | the Linux PCI support will be probably discussed there, too. | |
135 | ||
2f48f637 | 136 | |
07159913 MM |
137 | 7. Miscellanea |
138 | ~~~~~~~~~~~~~~ | |
139 | You also might want to look at the pciutils web page containing release | |
13463566 | 140 | notes and other news: http://mj.ucw.cz/pciutils.shtml . |
783ed67d | 141 | |
07159913 | 142 | There also exists a utility called PowerTweak which is able to fine tune |
2bea6231 | 143 | parameters of many chipsets much better than the Bridge Optimization code |
783ed67d | 144 | in Linux kernel (already removed in 2.3.x). See http://powertweak.sf.net/ |
2bea6231 MM |
145 | for more information. |
146 | ||
55c815b5 MM |
147 | Have fun |
148 | Martin |