]> mj.ucw.cz Git - pciutils.git/blob - README
Clean up freeing of the ID tables.
[pciutils.git] / README
1 This package contains the PCI Utilities, version @VERSION@.
2
3 Copyright (c) 1997--2008 Martin Mares <mj@ucw.cz>
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
7 (at your opinion) any newer version. See http://www.gnu.org/ for details.
8
9
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.
14
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)
26
27 It should be very easy to add support for other systems as well (volunteers
28 wanted; if you want to try that, I'll be very glad to see the patches and
29 include them in the next version).
30
31 The utilities include:  (See manual pages for more details)
32
33   - lspci: displays detailed information about all PCI buses and devices.
34
35   - setpci: allows to read from and write to PCI device configuration
36     registers. For example, you can adjust the latency timers with it.
37     CAUTION: There is a couple of dangerous points and caveats, please read
38     the manual page first!
39
40   - update-pciids: download the current version of the pci.ids file.
41
42
43 2. Compiling and (un)installing
44 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
45 Just run "make" to compile the package and then "make install" to install it.
46
47 If you want to change the default installation location, please override
48 the PREFIX variable specified in the Makefile -- e.g., you can use
49 "make PREFIX=/opt/pciutils install" to create a separate installation
50 not interfering with the rest of your system.  Setting the DESTDIR variable
51 will allow you to install to a different directory from the one you intend
52 to eventually run it from.  This is useful for people who are packaging
53 pciutils to install on other computers.
54
55 The configure script will automatically enable support for a compressed
56 pci.ids if you have zlib installed.  You can override its guess by using
57 "make ZLIB=no" or "make ZLIB=yes".  If compressed support is enabled,
58 pciutils will use pci.ids.gz in preference to pci.ids, even if the
59 pci.ids file is newer.  If the pci.ids.gz file is missing, it will use
60 pci.ids instead.
61
62 When you are bored of dumping PCI registers, just use "make uninstall".
63
64
65 3. Getting new ID's
66 ~~~~~~~~~~~~~~~~~~~
67 The database of PCI ID's (the pci.ids file) gets out of date much faster
68 than I release new versions of this package.
69
70 If you are missing names for any of your devices or you just want to stay
71 on the bleeding edge, download the most recent pci.ids file from
72 http://pciids.sf.net/ (e.g., by running the update-ids utility).
73
74 Alternatively, you can use `lspci -q' to query the central database
75 for new entries via network.
76
77 If your devices still appear as unknown, please send us their ID's and
78 names, the detailed instructions for submissions are listed on the
79 sf.net web page.
80
81
82 4. Getting new versions
83 ~~~~~~~~~~~~~~~~~~~~~~~
84 New versions of pciutils are available at the following places:
85
86         ftp://atrey.karlin.mff.cuni.cz/pub/linux/pci/
87         ftp://ftp.kernel.org/pub/software/utils/pciutils/ (expect a couple of hours delay)
88         ftp://metalab.unc.edu/pub/Linux/hardware/ (expect a couple of days delay)
89
90 There is also a public GIT tree at:
91
92         git://git.kernel.org/pub/scm/utils/pciutils/pciutils.git
93
94
95 5. Using the library
96 ~~~~~~~~~~~~~~~~~~~~
97 So far, there is only a little documentation for the library except for the
98 general introduction in the pcilib(7) man page. If you want to use the
99 library in your programs, please follow the comments in lib/pci.h and in
100 the example program lib/example.c.
101
102
103 6. Feedback
104 ~~~~~~~~~~~
105 If you have any bug reports or suggestions, send them to the author.
106
107 If you have any new ID's, I'll be very glad to add them to the database, but
108 please take a look at http://pciids.sf.net/ first and follow the instructions.
109
110 If you want, subscribe to linux-pci@atrey.karlin.mff.cuni.cz (send
111 "subscribe linux-pci" to majordomo@atrey.karlin.mff.cuni.cz).
112 Release notes about new versions will be send to the list and problems with
113 the Linux PCI support will be probably discussed there, too.
114
115
116 7. Miscellanea
117 ~~~~~~~~~~~~~~
118 You also might want to look at the pciutils web page containing release
119 notes and other news: http://mj.ucw.cz/pciutils.shtml .
120
121 There also exists a utility called PowerTweak which is able to fine tune
122 parameters of many chipsets much better than the Bridge Optimization code
123 in Linux kernel (already removed in 2.3.x). See http://powertweak.sf.net/
124 for more information.
125
126                                         Have fun
127                                                         Martin