xref: /pciutils/ChangeLog (revision ae27e293)
1*ae27e293SMartin Mares2008-02-13  Martin Mares <[email protected]>
2*ae27e293SMartin Mares
3*ae27e293SMartin Mares	* Released as 2.2.10-net2.
4*ae27e293SMartin Mares
5*ae27e293SMartin Mares	* Support for resolving of PCI ID's using DNS together with a local
6*ae27e293SMartin Mares	cache of resolved entries has been added. See the `-q' and `-Q' options
7*ae27e293SMartin Mares	of lspci.
8*ae27e293SMartin Mares
9*ae27e293SMartin Mares	* The library now has a generic system of settable parameters, which
10*ae27e293SMartin Mares	also include settings of the DNS resolver and cache. An `-O' option
11*ae27e293SMartin Mares	has been added to lspci and setpci to allow setting of these options.
12*ae27e293SMartin Mares
13*ae27e293SMartin Mares	* Configuration of the access methods are now specified by the new
14*ae27e293SMartin Mares	parameter system, replacing the pci_access->method_params array.
15*ae27e293SMartin Mares
16*ae27e293SMartin Mares	* Access methods now also have sensible names and help texts and it
17*ae27e293SMartin Mares	is possible to look up method ID by a name.
18*ae27e293SMartin Mares
19*ae27e293SMartin Mares	* An `-A' switch has been added to both lspci and setpci, allowing to
20*ae27e293SMartin Mares	select an arbitrary access method. The `-P' switch (configure proc
21*ae27e293SMartin Mares	backend) has been removed as it is no longer needed and I do not know
22*ae27e293SMartin Mares	any its user.
23*ae27e293SMartin Mares
24*ae27e293SMartin Mares	* Several source files have been split for better maintainability
25*ae27e293SMartin Mares	(most notably the resolving of ID's).
26*ae27e293SMartin Mares
27*ae27e293SMartin Mares	* Man pages and help texts have been updated. A new man page `pcilib(7)'
28*ae27e293SMartin Mares	has been added and description of library options has been moved there.
29*ae27e293SMartin Mares
30*ae27e293SMartin Mares	* When an unknown device ID is encountered, we print `Device <id>'
31*ae27e293SMartin Mares	instead of `Unknown device <id>'. It uses less space and it also
32*ae27e293SMartin Mares	should reduce the number of inexperienced users complaining that
33*ae27e293SMartin Mares	the device is not supported by the OS. To lookup up OS drivers,
34*ae27e293SMartin Mares	use the `-k' option.
35*ae27e293SMartin Mares
36*ae27e293SMartin Mares	* PCI_LIB_VERSION has been bumped to 0x020299.
37*ae27e293SMartin Mares
38*ae27e293SMartin Mares	* Makefile: stripping of the binaries during installation can be
39*ae27e293SMartin Mares	overridden by the STRIP variable.
40*ae27e293SMartin Mares
41*ae27e293SMartin Mares	* lib/types.h: We use the integer types from <stdint.h> if the
42*ae27e293SMartin Mares	compiler claims C99 support.
43*ae27e293SMartin Mares
440fc3bd18SMartin Mares2008-02-11  Martin Mares <[email protected]>
450fc3bd18SMartin Mares
462466b14bSMartin Mares	* Released as 2.2.10.
472466b14bSMartin Mares
486add52f5SMartin Mares	* lspci.c, setpci.c: Cleaned up the list of options.
496add52f5SMartin Mares
500fc3bd18SMartin Mares	* lib/names.c: Fix displaying of errors reported by zlib.
510fc3bd18SMartin Mares	Previously, the buffer containing the error message had
520fc3bd18SMartin Mares	been deallocated by gzclose() before the message was printed.
530fc3bd18SMartin Mares
54d26b5378SMartin Mares2008-01-07  Martin Mares <[email protected]>
55d26b5378SMartin Mares
56d26b5378SMartin Mares	* update-pciids.sh: Added quiet mode (-q). Clean up uncompressed
57d26b5378SMartin Mares	files left by previous versions of the pciutils. Patch by Mike
58d26b5378SMartin Mares	Frysinger.
59d26b5378SMartin Mares
60d26b5378SMartin Mares	* update-pciids.man: Mention the -q switch.
61d26b5378SMartin Mares
62dc01dd60SMartin Mares2007-11-29  Martin Mares <[email protected]>
63dc01dd60SMartin Mares
64dc01dd60SMartin Mares	* lib/dump.c: Squashed compiler warnings about code with
65dc01dd60SMartin Mares	no effect (there really were surplus *'s).
66dc01dd60SMartin Mares
6711339c0dSMartin Mares2007-11-06  Martin Mares <[email protected]>
6811339c0dSMartin Mares
6913463566SMartin Mares	* Released as 2.2.9.
7013463566SMartin Mares
7111339c0dSMartin Mares	* lspci.c: Added a new switch `-k' which requests printing
7211339c0dSMartin Mares	of information on kernel drivers attached to each device
7311339c0dSMartin Mares	and on kernel modules reporting the ability to handle the
7411339c0dSMartin Mares	device. So far, this is supported only on Linux with the
7511339c0dSMartin Mares	sysfs back-end, so it is implemented internally in the lspci
7611339c0dSMartin Mares	instead of the libpci. Thanks to Anicka <[email protected]>
7711339c0dSMartin Mares	for help.
7811339c0dSMartin Mares
793de798bdSMartin Mares2007-10-19  Martin Mares <[email protected]>
803de798bdSMartin Mares
816cdb9d93SMartin Mares	* Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS.
826cdb9d93SMartin Mares	Also added an explicit pattern rule for linking to make sure
836cdb9d93SMartin Mares	that LDLIBS is used on all platforms. Thanks to Dan Nicholson
846cdb9d93SMartin Mares	for the suggestion.
856cdb9d93SMartin Mares
866cdb9d93SMartin Mares2007-10-19  Martin Mares <[email protected]>
876cdb9d93SMartin Mares
88a404b115SMartin Mares	* Released as 2.2.8.
89a404b115SMartin Mares
903de798bdSMartin Mares	* pci.ids: Revised class codes to match Conventional PCI 3.0 specs.
913de798bdSMartin Mares	Added a couple of new ones, renumbered `ADMA continuous operation'
923de798bdSMartin Mares	prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention
933de798bdSMartin Mares	0x40) and renumbered the satellite communication controllers.
943de798bdSMartin Mares
952d2c4810SMartin Mares	* lib/header.h: Include `PCI hot-plug' and `Secure device'
96f7c76ec5SMartin Mares	capabilities from PCI 3.0 specs. Also added `SATA HBA' and
97f7c76ec5SMartin Mares	`Advanced features' caps from various ECN's.
982d2c4810SMartin Mares
99fa2273caSMartin Mares	* lspci.c: All known capabilities have at least their name displayed
100fa2273caSMartin Mares	now. When we are unable to decode them completely, we signalize it
101fa2273caSMartin Mares	with a `<?>' mark.
102fa2273caSMartin Mares
103fa2273caSMartin Mares	* lspci.man: Document `<?>' and also mention that extended config
104fa2273caSMartin Mares	space is currently available only with the linux_sysfs back-end.
105fa2273caSMartin Mares
10631c9bb28SMartin Mares	* lspci.c: Decode the Debug port capability (per EHCI 0.96 spec).
10731c9bb28SMartin Mares
108a387042eSMartin Mares	* lspci.c: Big code cleanup: re-arranged functions in the code,
109a387042eSMartin Mares	renamed everything related to capabilities to cap_* and
110a387042eSMartin Mares	all options except verbose to opt_*.
111a387042eSMartin Mares
1129c79fcc4SMartin Mares2007-10-14  Martin Mares <[email protected]>
1139c79fcc4SMartin Mares
1149c79fcc4SMartin Mares	* lib/[fno]bsd-*: Removed extraneous braces.
1159c79fcc4SMartin Mares
116d5b4cd14SMartin Mares2007-10-12  Martin Mares <[email protected]>
117d5b4cd14SMartin Mares
118d5b4cd14SMartin Mares	* Capability loop detection introduced 2.2.7 did not work
119d5b4cd14SMartin Mares	  properly with extended capabilities. Fixed.
120d5b4cd14SMartin Mares
121594de878SMartin Mares2007-10-05  Martin Mares <[email protected]>
122594de878SMartin Mares
1238a23eadcSMartin Mares	* Released as 2.2.7.
1248a23eadcSMartin Mares
125594de878SMartin Mares	* lspci.c (show_caps, show_ext_caps): Detect and report loops in
126594de878SMartin Mares	capability lists.
127594de878SMartin Mares
1288a23eadcSMartin Mares	* lspci.c, lib/header.h: Finished decoding of the PCI Express
1298a23eadcSMartin Mares	capability. The extended capabilities remain undecoded for now,
1308a23eadcSMartin Mares	but at least the list of them has been updated to reflect the
1318a23eadcSMartin Mares	current PCI Express 2.0 spec.
1328a23eadcSMartin Mares
1338a23eadcSMartin Mares	* lspci.c, lib/header.h: Decode new bits of traditional registers
1348a23eadcSMartin Mares	as defined by PCIE / PCI-X. This includes discard timers in the bridge
1358a23eadcSMartin Mares	control register and INTx enable/status in device control/status
1368a23eadcSMartin Mares	registers.
1378a23eadcSMartin Mares
1388a23eadcSMartin Mares	* lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed
1398a23eadcSMartin Mares	by Marius Strobl.
1408a23eadcSMartin Mares
14199091df9SMartin Mares2007-09-12  Hasso Tepper <[email protected]>
14299091df9SMartin Mares
14399091df9SMartin Mares	* Extended the fbsd-device backend to run on Dragonfly BSD.
14499091df9SMartin Mares
14599091df9SMartin Mares	* lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>.
14699091df9SMartin Mares
14709156b3bSMartin Mares2007-09-03  Martin Mares <[email protected]>
14809156b3bSMartin Mares
14909156b3bSMartin Mares	* Resurrected the Windows port, including cross-compilation by MinGW.
15009156b3bSMartin Mares	Patch by Samuel Bronson <[email protected]>.
15109156b3bSMartin Mares
152325a3c50SMartin Mares2007-08-31  Martin Mares <[email protected]>
153325a3c50SMartin Mares
154325a3c50SMartin Mares	* Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to allow
155325a3c50SMartin Mares	cross-compilation.
156325a3c50SMartin Mares
157a2322147SMartin Mares2007-08-27  Martin Mares  <[email protected]>
158a2322147SMartin Mares
159a2322147SMartin Mares	* lib/names.c (pci_open): When calling gzopen(), use "rb" file mode
160a2322147SMartin Mares	instead of "r". This is needed on DOS systems, where this function
161a2322147SMartin Mares	somewhat illogically uses the binary flag for the compressed file
162a2322147SMartin Mares	instead of the decompressed stream inside, where binariness really
163a2322147SMartin Mares	matters.
164a2322147SMartin Mares
1654f2c5b94SMartin Mares2007-08-14  Martin Mares  <[email protected]>
1664f2c5b94SMartin Mares
1674f2c5b94SMartin Mares	* lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability,
1684f2c5b94SMartin Mares	based on a patch by Jason Gunthorpe.
1694f2c5b94SMartin Mares
1704f2c5b94SMartin Mares	* tests/cap-MSI-mapping: Added a test case. I plan to add test cases
1714f2c5b94SMartin Mares	(which are dumps of config space) for all new features.
1724f2c5b94SMartin Mares
1730d7f5331SMartin Mares2007-06-20  Martin Mares  <[email protected]>
1740d7f5331SMartin Mares
1757cebe481SMartin Mares	* Released as 2.2.6.
1767cebe481SMartin Mares
1770d7f5331SMartin Mares	* Makefile: Added an "install-lib" target. Thanks to Dan Nicholson
1780d7f5331SMartin Mares	for a patch.
1790d7f5331SMartin Mares
1807cebe481SMartin Mares	* Makefile, lib/Makefile: Generate and install pkg-config file
1817cebe481SMartin Mares	for libpci. Again by Dan Nicholson.
1827cebe481SMartin Mares
1830d7f5331SMartin Mares2007-06-20  Thomas Schwinge  <[email protected]>
1840d7f5331SMartin Mares
1850d7f5331SMartin Mares	* lib/i386-io-hurd.h: Rewritten for new Hurd kernels.
1860d7f5331SMartin Mares
1876e4a45edSMartin Mares2007-05-04  Martin Mares  <[email protected]>
1886e4a45edSMartin Mares
18955c89179SMartin Mares	* Released as 2.2.5.
19055c89179SMartin Mares
1916e4a45edSMartin Mares	* pci.ids: Updated to the current snapshot of the database.
1926e4a45edSMartin Mares
193d0b07542SMartin Mares2007-02-14  Martin Mares  <[email protected]>
194d0b07542SMartin Mares
195d0b07542SMartin Mares	* lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type.
196d0b07542SMartin Mares	Patch by Mark Glines.
197d0b07542SMartin Mares
1983df35926SMartin Mares2007-02-09  Martin Mares  <[email protected]>
1993df35926SMartin Mares
2003df35926SMartin Mares	* pci.ids: Updated to the current snapshot of the database.
2013df35926SMartin Mares
202e49ed044SMartin Mares2007-02-06  Martin Mares  <[email protected]>
203e49ed044SMartin Mares
2041ac3a99dSMartin Mares	* Replaced bzero() by memset() everywhere, it's better to lose a tiny
2051ac3a99dSMartin Mares	bit of readability than maintain hacks to make it work on various systems.
2061ac3a99dSMartin Mares
207b0eb18ccSMartin Mares	* lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]'
208b0eb18ccSMartin Mares	instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise.
209b0eb18ccSMartin Mares
210e49ed044SMartin Mares	* lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise
211e49ed044SMartin Mares	integer types.
212e49ed044SMartin Mares
2139de2768cSMartin Mares2007-02-04  Martin Mares  <[email protected]>
2149de2768cSMartin Mares
2159de2768cSMartin Mares	* lspci.c: alloca() needs <alloca.h>.
2169de2768cSMartin Mares
217d19394dbSMartin Mares2006-09-17  Martin Mares  <[email protected]>
218d19394dbSMartin Mares
219d19394dbSMartin Mares	* lib/dump.c: Fixed a couple of bugs in the dump backend which caused
220d19394dbSMartin Mares	devices with domains or with extended config space to be read incorrectly.
221d19394dbSMartin Mares	Also, dumps with partial lines are allowed now.
222d19394dbSMartin Mares
223934e7e36SMartin Mares2006-09-10  Martin Mares  <[email protected]>
224934e7e36SMartin Mares
225f09856deSMartin Mares	* pci.ids: Updated to the current database snapshot.
226f09856deSMartin Mares
227934e7e36SMartin Mares	* lspci.c (scan_device): If an error occurs when reading the standard config
228934e7e36SMartin Mares	header of a device, report it and ignore the device and return with exit
229934e7e36SMartin Mares	code 2 at the end.
230934e7e36SMartin Mares
231b2055313SMartin Mares2006-09-09  Martin Mares  <[email protected]>
232b2055313SMartin Mares
233fb260653SMartin Mares	* Released as 2.2.4.
234fb260653SMartin Mares
2351865e2ddSMartin Mares	* maint/release: Remind the maintainer about the current PCI_LIB_VERSION.
2361865e2ddSMartin Mares
237028dffb2SMartin Mares	* lib/pci.h: Updated PCI_LIB_VERSION.
238028dffb2SMartin Mares
23913081e57SMartin Mares	* lspci.c (show_machine): In the `-m' mode, do proper shell escaping
24013081e57SMartin Mares	if the fields printed contain quotes or backslashes.
24113081e57SMartin Mares
2423fd6b4d2SMartin Mares	* lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse
2433fd6b4d2SMartin Mares	of the `Device' tag for two different purposes.
2443fd6b4d2SMartin Mares
245840d09aeSMartin Mares	* Makefile: Moved all system-dependent decisions to lib/configure,
246840d09aeSMartin Mares	since config.mk is included in the top-level Makefile anyway.
247840d09aeSMartin Mares
2482100f710SMartin Mares	* lib/configure: When configuring for Linux, ignore the kernel version
2492100f710SMartin Mares	and always build all access methods.
2502100f710SMartin Mares
2513e9c7a18SMartin Mares	* Makefile (CFLAGS): Removed -Winline, it's not needed and triggers
2523e9c7a18SMartin Mares	at many non-interesting places with gcc 3.4.
2533e9c7a18SMartin Mares
25494db5c82SMartin Mares	* Whitespace cleanup of all source files.
25594db5c82SMartin Mares
256cc062b4aSMartin Mares	* The pci.ids file can be stored compressed if zlib is available.
257cc062b4aSMartin Mares	Added transparent decompression to lib/names.c, modified update-pciids.sh
258cc062b4aSMartin Mares	to keep the file compressed if applicable, updated Makefiles.
259cc062b4aSMartin Mares	Based on a patch by Matthew Wilcox, but all the bugs are mine.
260cc062b4aSMartin Mares
261f4ddb8d3SMartin Mares	* Makefile, README: Allow installation to be done to a different directory
262f4ddb8d3SMartin Mares	from the one we will eventually be placed in by setting DESTDIR.
263f4ddb8d3SMartin Mares	Patch by Matthew Wilcox.
264f4ddb8d3SMartin Mares
26516e37012SMartin Mares	* Added .gitignore files.
26616e37012SMartin Mares
267c7f5314dSMartin Mares	* Makefile (clean): Clean *.orig, too.
268c7f5314dSMartin Mares
269afebde01SMartin Mares	* Cleaned up usage of `char' and `byte'.
270afebde01SMartin Mares
271fd54ccebSMartin Mares	* lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01.
272fd54ccebSMartin Mares
273b2055313SMartin Mares	* lib/header.h: Added PCI_CLASS_xxx constants for all classes currently
274b2055313SMartin Mares	defined in the pci.ids file.
275b2055313SMartin Mares
2764254d153SMartin Mares2006-08-01  Martin Mares  <[email protected]>
2774254d153SMartin Mares
2784254d153SMartin Mares	* lib/i386-io-hurd.h: Fixed a silly typo.
2794254d153SMartin Mares
2801c5cc9b5SMartin Mares2006-07-30  Martin Mares  <[email protected]>
2811c5cc9b5SMartin Mares
28238a9e3c3SMartin Mares	* lib/Makefile: Added a missing rule for obsd-device.o.
28338a9e3c3SMartin Mares
284c7ddfa3eSMartin Mares	* lspci.c, lib/header.h: Added support for MSI per-vector masking.
285c7ddfa3eSMartin Mares	Contributed by Petr Vandrovec.
286c7ddfa3eSMartin Mares
287248a04f8SMartin Mares	* lspci.c, lib/header.h: Added support for the `bridge subsystem ID'
288248a04f8SMartin Mares	capability. Contributed by Petr Vandrovec.
289248a04f8SMartin Mares
290f29dcc87SMartin Mares	* lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable
291f29dcc87SMartin Mares	memory windows. Fix by Petr Vandrovec.
292f29dcc87SMartin Mares
2938eab3bffSMartin Mares	* maint/release.pm: Exclude .git directory from releases.
2948eab3bffSMartin Mares
295d305d704SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Report failures during port access
296d305d704SMartin Mares	initialization by a->warn() instead of calling printf() or perror()
297d305d704SMartin Mares	directly.
298d305d704SMartin Mares
2999007a292SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of
3009007a292SMartin Mares	the port access state to generic code.
3019007a292SMartin Mares
302bd20d5b5SMartin Mares	* lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately.
303bd20d5b5SMartin Mares	Contributed by Thomas Schwinge and Samuel Thibault.
304bd20d5b5SMartin Mares
30573750606SMartin Mares	* lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module.
30673750606SMartin Mares
307d71daa45SMartin Mares	* lib/header.h: Whitespace cleanups.
308d71daa45SMartin Mares
3091c5cc9b5SMartin Mares	* lib/i386-io-windows.h: Fixed indentation and spelling.
3101c5cc9b5SMartin Mares
3111c5cc9b5SMartin Mares	* README.Windows: Mention that WinIO.dll is needed and where to get it.
3121c5cc9b5SMartin Mares
313c2b144efSMartin Mares2006-06-27  Martin Mares  <[email protected]>
314c2b144efSMartin Mares
31514d4f989SMartin Mares	* lib/Makefile, Makefile: Added rules for building and cleaning the example.
31614d4f989SMartin Mares
31714d4f989SMartin Mares	* lib/example.c: Show how to use PCI_FILL_CLASS and used another register
31814d4f989SMartin Mares	for demonstrating the config space accesses. The example is still very
31914d4f989SMartin Mares	incomplete, though.
32014d4f989SMartin Mares
321c2b144efSMartin Mares	* lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS.
322c2b144efSMartin Mares
323c2b144efSMartin Mares	* lib/sysfs.c: Fetch device ID and class from sysfs, because they can
324c2b144efSMartin Mares	be modified by kernel fixups.
325c2b144efSMartin Mares
326c2b144efSMartin Mares	* lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch.
327c2b144efSMartin Mares
328bc2eed2dSMartin Mares2006-06-03  Martin Mares  <[email protected]>
329bc2eed2dSMartin Mares
330bc2eed2dSMartin Mares	* lspci.c: Introduced the -nn switch. Thanks to David N. Welton
331bc2eed2dSMartin Mares	for the idea.
332bc2eed2dSMartin Mares
333bc2eed2dSMartin Mares	* lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and
334bc2eed2dSMartin Mares	cleaned up the name selection code.
335bc2eed2dSMartin Mares
336c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given,
337c72eeddeSMartin Mares	pci_access->numeric_ids is ignored.
338c72eeddeSMartin Mares
339c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): When class is identified and
340c72eeddeSMartin Mares	subclass isn't, display class name and subclass number.
341c72eeddeSMartin Mares
3422f294d4bSMartin Mares2006-05-31  Martin Mares  <[email protected]>
3432f294d4bSMartin Mares
3442f294d4bSMartin Mares	* setpci.c (main): Don't crash when an invalid width is specified.
3452f294d4bSMartin Mares
34681afa98cSMartin Mares	* lspci.c, setpci.c, common.c: die() now uses the right program
34781afa98cSMartin Mares	name when printing an error message.
34881afa98cSMartin Mares
3490ac282f2SMartin Mares2006-05-19  Martin Mares  <[email protected]>
3500ac282f2SMartin Mares
3510ac282f2SMartin Mares	* README: Mention the public GIT tree.
3520ac282f2SMartin Mares
3530ac282f2SMartin Mares	* README: Updated the list of ports.
3540ac282f2SMartin Mares
355d1058e9dSMartin Mares2006-05-10  Martin Mares  <[email protected]>
356d1058e9dSMartin Mares
357d1058e9dSMartin Mares	* lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD.
358d1058e9dSMartin Mares	Thanks to Petr Salinger for the patch.
359d1058e9dSMartin Mares
360abf8d505SMartin Mares2006-05-05  Martin Mares  <[email protected]>
361abf8d505SMartin Mares
3622ae2d1aeSMartin Mares	* Released as 2.2.3.
3632ae2d1aeSMartin Mares
3642ae2d1aeSMartin Mares	* lspci.c (scan_device): The -D switch didn't work as intended
3652ae2d1aeSMartin Mares	in -m mode.
3662ae2d1aeSMartin Mares
3672ae2d1aeSMartin Mares2006-05-05  Martin Mares  <[email protected]>
3682ae2d1aeSMartin Mares
3691d5cf727SMartin Mares	* Released as 2.2.2.
3701d5cf727SMartin Mares
3718a830168SMartin Mares	* pci.ids: Updated to the current database snapshot.
3728a830168SMartin Mares
373b6359063SMartin Mares	* lib/obsd-device.c (and other files in lib/*): Added OpenBSD
374b6359063SMartin Mares	interface by Matthieu Herrb <[email protected]>, based on
375b6359063SMartin Mares	the existing FreeBSD interface.
376b6359063SMartin Mares
377abf8d505SMartin Mares	* Moved pciutils to a GIT repository, which now contains merged
378abf8d505SMartin Mares	history from both CVS and Arch. Good bye, TLA!
379abf8d505SMartin Mares
3806ac70402SMartin Mares2006-03-21  Martin Mares  <[email protected]>
3816ac70402SMartin Mares
3822a124daeSMartin Mares	* lspci.c (show_slot_name): Avoid the previous changes in default
3832a124daeSMartin Mares	display of domain name when in machine-readable mode. However, `-D'
3842a124daeSMartin Mares	forces domain display even there.
3852a124daeSMartin Mares
3866ac70402SMartin Mares	* lspci.man: Added a warning on -m being the only format, which is
3876ac70402SMartin Mares	guaranteed to be stable between lspci versions.
3886ac70402SMartin Mares
3891bbdea17SMartin Mares2006-03-13  Martin Mares  <[email protected]>
3901bbdea17SMartin Mares
391af61eb25SMartin Mares	* lspci.man: Documented the -D switch.
392af61eb25SMartin Mares
393af61eb25SMartin Mares	* lspci.c (show_slot_name, scan_device): If there are multiple PCI
394af61eb25SMartin Mares	domains or if the `-D' switch is used, show the domain number for
395af61eb25SMartin Mares	all devices.
396af61eb25SMartin Mares
3977a61b93cSMartin Mares	* lspci.c (show_verbose): Report cache line size in bytes.
3987a61b93cSMartin Mares
3991bbdea17SMartin Mares	* update-pciids.sh: Use curl if available. Patch by Matthew Wilcox.
4001bbdea17SMartin Mares
4010e78ef8aSMartin Mares2006-01-04  Martin Mares  <[email protected]>
4020e78ef8aSMartin Mares
4030e78ef8aSMartin Mares	* lspci.c (show_express_link): Fixed decoding of link status register.
4040e78ef8aSMartin Mares	Thanks to Roland Dreier for his report.
4050e78ef8aSMartin Mares
406e6859953SMartin Mares2005-12-12  Martin Mares  <[email protected]>
407e6859953SMartin Mares
408e6859953SMartin Mares	* lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow
409e6859953SMartin Mares	at least read-only access. Patch by Pavel Celeda <[email protected]>.
410e6859953SMartin Mares
411e6859953SMartin Mares	* Makefile: Corrected library path on NetBSD.
412e6859953SMartin Mares
413a99c0d69SMartin Mares2005-11-26  Martin Mares  <[email protected]>
414a99c0d69SMartin Mares
415e4af70c6SMartin Mares	* Released as 2.2.1.
416e4af70c6SMartin Mares
417a99c0d69SMartin Mares	* lspci.c (show_machine): Subsystem vendors were printed incorrectly
418a99c0d69SMartin Mares	in machine-readable modes. Thanks to Pavel Celeda for a bug report.
419a99c0d69SMartin Mares
420f23fd3fcSMartin Mares2005-10-11  Martin Mares  <[email protected]>
421f23fd3fcSMartin Mares
422f23fd3fcSMartin Mares	* lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it.
423f23fd3fcSMartin Mares
42415296723SMartin Mares2005-09-21  Martin Mares  <[email protected]>
42515296723SMartin Mares
42615296723SMartin Mares	* Released as 2.2.0.
42715296723SMartin Mares
42840b6d93fSMartin Mares	* pci.ids: Updated copyright header.
42940b6d93fSMartin Mares
43015296723SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported
43115296723SMartin Mares	64-bit addresses, they are now always supported.
43215296723SMartin Mares
43315296723SMartin Mares	* lspci.c (show_bases): Corrected printing of 64-bit addresses
43415296723SMartin Mares	in bus-centric mode.
43515296723SMartin Mares
43615296723SMartin Mares	* lib/configure: Enable 64-bit addresses on all Linux systems.
43715296723SMartin Mares
43815296723SMartin Mares	* lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they
43915296723SMartin Mares	are shorter.
44015296723SMartin Mares
441224707baSMartin Mares2005-09-11  Martin Mares  <[email protected]>
442224707baSMartin Mares
443224707baSMartin Mares	* Released as 2.1.99-test11.
444224707baSMartin Mares
445224707baSMartin Mares	* lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls.
446224707baSMartin Mares
447aeaca5d3SMartin Mares2005-09-10  Martin Mares  <[email protected]>
448aeaca5d3SMartin Mares
449224707baSMartin Mares	* Released as 2.1.99-test10.
450224707baSMartin Mares
45163e6f2e0SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
45263e6f2e0SMartin Mares
453043ebdeeSMartin Mares	* update-pciids.sh: Changed the default URL for downloading pci.ids
454043ebdeeSMartin Mares	to http://pciids.sourceforge.net/v2.2/pci.ids.
455043ebdeeSMartin Mares
456043ebdeeSMartin Mares	* lib/pci.h (PCI_LIB_VERSION): Added version identifier.
457043ebdeeSMartin Mares
458aeaca5d3SMartin Mares	* lib/names.c: Rewritten the name database module almost from scratch.
459aeaca5d3SMartin Mares	Everything is much cleaner and there are hopefully no more memory leaks;
460aeaca5d3SMartin Mares	pci_lookup_name() now uses varargs in a backward compatible fashion.
461aeaca5d3SMartin Mares	Introduced PCI_LOOKUP_NO_NUMBERS.
462aeaca5d3SMartin Mares
463aeaca5d3SMartin Mares	The new code supports subsystem entries not tied to a specific device.
464aeaca5d3SMartin Mares	I had to extend the format of pci.ids in order to support it, so I have
465aeaca5d3SMartin Mares	extended the idea of the "C" (class) blocks and introduced "S" blocks
466aeaca5d3SMartin Mares	for subsystems. To avoid doing more incompatible changes in the future,
467aeaca5d3SMartin Mares	the parser skips unknown single-letter blocks without reporting errors.
468aeaca5d3SMartin Mares
469121c76c9SMartin Mares2005-08-23  Martin Mares  <[email protected]>
470121c76c9SMartin Mares
47154e13765SMartin Mares	* Released as 2.1.99-test9.
47254e13765SMartin Mares
47354e13765SMartin Mares	* Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent
47454e13765SMartin Mares	gcc versions when optimizing anyway.
47554e13765SMartin Mares
47654e13765SMartin Mares	* Made the path to pci.ids customizable and independent on the SHAREDIR.
47754e13765SMartin Mares	Just override IDSDIR in the top-level Makefile.
47854e13765SMartin Mares
47954e13765SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
48054e13765SMartin Mares
48184d437d6SMartin Mares	* lspci.man, setpci.man: Improved the man pages. Documented all access
48284d437d6SMartin Mares	methods and which operations are privileged.
48384d437d6SMartin Mares
48484d437d6SMartin Mares	* lspci.c: Another rewrite of config register caching, now also including
48584d437d6SMartin Mares	lots of internal checks. It should be now perfectly able to cope with
48684d437d6SMartin Mares	portions of the configuration space being inaccessible, for example
48784d437d6SMartin Mares	due to insufficient access rights.
48884d437d6SMartin Mares
4893b8bf739SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X
4903b8bf739SMartin Mares	capabilities. Includes partial support for PCI-X 2.0 (probably incomplete
4913b8bf739SMartin Mares	as I haven't seen the spec).
4923b8bf739SMartin Mares
4933b8bf739SMartin Mares	* lspci.c: Quell warnings about unused parameters.
4943b8bf739SMartin Mares
49584d437d6SMartin Mares	* lspci.c: Removed C++ comments.
49684d437d6SMartin Mares
4973b8bf739SMartin Mares	* lib/header.h: Merged definitions of extended capabilities and some new
4983b8bf739SMartin Mares	PCI-X capability bits from linux-2.6.11/include/pci.h.
4993b8bf739SMartin Mares
5003b8bf739SMartin Mares	* lspci.c (show_caps): Try to scan extended capabilities only if the
5013b8bf739SMartin Mares	device has either PCI-X or PCI Express capability in its normal capability
5023b8bf739SMartin Mares	list.
5033b8bf739SMartin Mares
504f7821e53SMartin Mares	* lib/dump.c (dump_init): Reading of dumps works again. The dump reader
505f7821e53SMartin Mares	now also remembers how much data it has read and refuses attempts to
506f7821e53SMartin Mares	access more than that.
507ea4e5f5dSMartin Mares
50846ea554dSMartin Mares	* setpci.man, lspci.c, README: prefer spelling "buses" over "busses".
50946ea554dSMartin Mares
5108afaab22SMartin Mares	* lspci.c: If alloca() is not available, use xmalloc(), not malloc().
5118afaab22SMartin Mares
512121c76c9SMartin Mares	* lib/configure: Added x86_64 on Linux.
513121c76c9SMartin Mares
514c1c2c30eSMartin Mares2005-08-22  Martin Mares  <[email protected]>
515c1c2c30eSMartin Mares
516b9ca9147SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters.
517b9ca9147SMartin Mares	Thanks to Matthew Wilcox for bug report.
518b9ca9147SMartin Mares
519c1c2c30eSMartin Mares	* lspci.c: Corrected spelling of "Hz" (it was "hz" at several places).
520b9ca9147SMartin Mares	Thanks to Krzysztof Oledzki for pointing that out.
521c1c2c30eSMartin Mares
52226542a0bSMartin Mares2004-08-19  Martin Mares  <[email protected]>
52326542a0bSMartin Mares
52426542a0bSMartin Mares	* pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism,
52526542a0bSMartin Mares	because pciutils by default install to /usr/sbin. Update.
52626542a0bSMartin Mares
5276aa54f1bSMartin Mares2004-08-13  Martin Mares  <[email protected]>
5286aa54f1bSMartin Mares
529aabb0a92SMartin Mares	* Released as 2.1.99-test8.
530aabb0a92SMartin Mares
531f31412d1SMartin Mares	* lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are
532f31412d1SMartin Mares	no longer exported to the outside world.
533f31412d1SMartin Mares
534ee7d8384SMartin Mares	* README.Windows: Updated.
535ee7d8384SMartin Mares
536ee7d8384SMartin Mares	* maint/release: Substitute version number in win32/config.h.
537ee7d8384SMartin Mares
538ee7d8384SMartin Mares	* win32/config.h: Added.
539ee7d8384SMartin Mares
540ee7d8384SMartin Mares	* lib/sysdep.h (bzero, strcasecmp): are macros on Windows.
541ee7d8384SMartin Mares
542ee7d8384SMartin Mares	* compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU
543ee7d8384SMartin Mares	C library for use on systems where the default libraries lack
544ee7d8384SMartin Mares	proper getopt. Currently used by the Windows port.
545ee7d8384SMartin Mares
546ee7d8384SMartin Mares	* lib/sysdep.h, lib/types.h: Updates of the Windows port from
547ee7d8384SMartin Mares	Alexander Stock.
548ee7d8384SMartin Mares
549489233b4SMartin Mares	* lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define
550489233b4SMartin Mares	its own u8, u16, u32, byte and word types and uses what the user
551489233b4SMartin Mares	has supplied instead. With this change, all namespace clashes should
552489233b4SMartin Mares	be gone.
553489233b4SMartin Mares
554489233b4SMartin Mares	* Makefile, lib/Makefile: Updated dependencies.
555489233b4SMartin Mares
556489233b4SMartin Mares	* pciutils.h: Include lib/sysdep.h and move NONRET et al. there.
557489233b4SMartin Mares
558489233b4SMartin Mares	* lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because
559489233b4SMartin Mares	it is included unconditionally in lib/types.h.
560489233b4SMartin Mares
561489233b4SMartin Mares	* Moved system-dependent stuff from lib/internal.h to lib/sysdep.h,
562489233b4SMartin Mares	which is also used by the utilities. Also moved type declarations
563489233b4SMartin Mares	from lib/pci.h to lib/types.h.
564489233b4SMartin Mares
565489233b4SMartin Mares	* All files: Prepend a "PCI_" prefix in front of all configuration
566489233b4SMartin Mares	defines to avoid namespace clashes. CAVEAT: If there is any libpci
567489233b4SMartin Mares	application using the (undocumented) defines, it has to be updated.
568489233b4SMartin Mares
569489233b4SMartin Mares	* lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing
570489233b4SMartin Mares	headers with the kernel a couple of years ago.
571489233b4SMartin Mares
5729bb4b4eaSMartin Mares	* lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6.
5739bb4b4eaSMartin Mares
5746aa54f1bSMartin Mares	* lspci.c (show_rom): Use the same logic for printing disabled
5756aa54f1bSMartin Mares	or unassigned ROM's as we do in show_bases() for the other BAR's.
5766aa54f1bSMartin Mares
5776aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Better reaction to
5786aa54f1bSMartin Mares	invalid 64-bit addresses. Also d->hdrtype should not include
5796aa54f1bSMartin Mares	bit 7, which caused mysterious errors on multi-function devices.
5806aa54f1bSMartin Mares
5816aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Fill in base addresses
5826aa54f1bSMartin Mares	even if the regions are known to be disabled. It is the client's
5836aa54f1bSMartin Mares	job to interpret them. (And it is not a trivial job if you want
5846aa54f1bSMartin Mares	to do it correctly, since you need to check I/O and memory enables
5856aa54f1bSMartin Mares	on all upstream bridges, too.) However, it could be interesting to
5866aa54f1bSMartin Mares	introduce functions for interpreting the addresses and even for
5876aa54f1bSMartin Mares	mapping the regions and doing I/O on them.
5886aa54f1bSMartin Mares
58980e6c636SMartin Mares2004-07-30  Martin Mares  <[email protected]>
59080e6c636SMartin Mares
59180e6c636SMartin Mares	* lspci.c: HyperTransport improvements from Maciej.
59280e6c636SMartin Mares
593d6324891SMartin Mares2004-07-11  Martin Mares  <[email protected]>
594d6324891SMartin Mares
595d6324891SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Arguments now correspond
596d6324891SMartin Mares	to the format string. [Patch by Bill Nottingham]
597d6324891SMartin Mares
598ec25b52dSMartin Mares2004-07-05  Martin Mares  <[email protected]>
599ec25b52dSMartin Mares
600362be683SMartin Mares	* Released as 2.1.99-test7.
601362be683SMartin Mares
602ec25b52dSMartin Mares	* lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but
603ec25b52dSMartin Mares	ended up with rewriting the fetching mechanism to be fully dynamic,
604ec25b52dSMartin Mares	but avoid reading config space registers not explicitly requested.
605ec25b52dSMartin Mares
606ec25b52dSMartin Mares2004-06-29  Matthew Wilcox <[email protected]>
607ec25b52dSMartin Mares
608ec25b52dSMartin Mares	* lspci.c: More work on PCI Express dumping.
609ec25b52dSMartin Mares
610ec25b52dSMartin Mares	* lib/header.h: Updated PCI Express capability definitions.
611ec25b52dSMartin Mares
612ec25b52dSMartin Mares	* lib/proc.c (proc_read): Removed bogus warning.
613ec25b52dSMartin Mares
614ec25b52dSMartin Mares	* common.c (xrealloc): Introduced.
615ec25b52dSMartin Mares
616ec25b52dSMartin Mares	* lspci.man: Added -xxxx.
617ec25b52dSMartin Mares
61809817437SMartin Mares2004-06-27  Martin Mares  <[email protected]>
61909817437SMartin Mares
620d1fa27ebSMartin Mares	* Released as 2.1.99-test6.
621d1fa27ebSMartin Mares
6224d67aa89SMartin Mares	* lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap.
6234d67aa89SMartin Mares	Patch by Roland Dreier <[email protected]>, cleaned up by me.
6244d67aa89SMartin Mares
6254d67aa89SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch()
6264d67aa89SMartin Mares	failures.
6274d67aa89SMartin Mares
6284d67aa89SMartin Mares	* lib/header.h: Added PCI Express extended capabilities. Again by Matthew.
6294d67aa89SMartin Mares
6304d67aa89SMartin Mares	* lspci.c (show_express): Added dumping of PCI Express cap.
6314d67aa89SMartin Mares	Patch by Matthew Wilcox.
6324d67aa89SMartin Mares
6334d67aa89SMartin Mares	* lib/header.h: Added a list of PCI 3.0 capabilities and also details
6344d67aa89SMartin Mares	on PCI Express caps. Patch by Matthew Wilcox <[email protected]>.
6354d67aa89SMartin Mares
63609817437SMartin Mares	* lspci.c (check_root): Gone. No explicit checks for root are needed,
63709817437SMartin Mares	report correct errors reported by the libpci instead.
63809817437SMartin Mares
63909817437SMartin Mares	* lspci.c: Added dumping of the extended config space on "-xxxx".
64009817437SMartin Mares	Better caching of config registers.
64109817437SMartin Mares
64209817437SMartin Mares	* setpci.c (main): Allow access to whole 4096 bytes of the config space.
64309817437SMartin Mares
64409817437SMartin Mares	* lib/sysfs.c, lib/proc.c: Don't print error messages on short reads,
64509817437SMartin Mares	just return the appropriate error code.
64609817437SMartin Mares
64709817437SMartin Mares	* lib: Added support for extended (4096-byte) configuration space,
64809817437SMartin Mares	currently implemented only in Linux proc and sysfs access methods
64909817437SMartin Mares	and of course in the dump reader.
65009817437SMartin Mares
6510d656226SMartin Mares2004-05-29  Martin Mares  <[email protected]>
6520d656226SMartin Mares
653c0eece92SMartin Mares	* Released as 2.1.99-test5.
654c0eece92SMartin Mares
655a2413560SMartin Mares	* lib/pci.h: Windows don't have the standard u_int* types.
656a2413560SMartin Mares
657a2413560SMartin Mares	* lib/internal.h: <sys/param.h> required on Windows for endianity
658a2413560SMartin Mares	macros.
659a2413560SMartin Mares
660a2413560SMartin Mares	* lib/i386-ports.c: Connected i386-io-windows.h.
661a2413560SMartin Mares
662a2413560SMartin Mares	* lspci.c (check_root): geteuid() is not available on Windows.
663a2413560SMartin Mares
664a2413560SMartin Mares	* lib/i386-io-windows.h: Added Windows port contributed by Alexander
665a2413560SMartin Mares	Stock <[email protected]>.
666a2413560SMartin Mares
667a2413560SMartin Mares	* lib/configure: Hopefully fixed SunOS port broken by various
668a2413560SMartin Mares	changes to the configure script.
669a2413560SMartin Mares
6700d656226SMartin Mares	* Makefile, lib/configure: Cross-compilation support, patch by Maciej.
6710d656226SMartin Mares
672138c0385SMartin Mares2004-05-28  Martin Mares  <[email protected]>
673138c0385SMartin Mares
6749f490382SMartin Mares	* Released as 2.1.99-test4.
6759f490382SMartin Mares
676cce2caacSMartin Mares	* lspci.c (show_verbose): Header type 1 is probably legal for all
677cce2caacSMartin Mares	types of bridges, not only for PCI-to-PCI bridges.
678cce2caacSMartin Mares
679b569ef09SMartin Mares	* lspci.c (format_agp_rate): Write "x16", not "x@".
680b569ef09SMartin Mares	(show_agp): rate[] could overflow.
681b569ef09SMartin Mares	Bugs reported by Jakub Bogusz <[email protected]>.
682b569ef09SMartin Mares
683bfc4fe7aSMartin Mares	* lspci.c (show_ht_*): Show HyperTransport capability with all its
684bfc4fe7aSMartin Mares	details. Once again code by Maciej simplified (i.e., possibly broken)
685bfc4fe7aSMartin Mares	by me.
686bfc4fe7aSMartin Mares
687bfc4fe7aSMartin Mares	* lib/header.h: Added declarations of HyperTransport capability.
688bfc4fe7aSMartin Mares	Again thanks to Maciej.
689bfc4fe7aSMartin Mares
690138c0385SMartin Mares	* lspci.c: Decode all bits of the secondary status word in type 1 headers.
691138c0385SMartin Mares	Thanks to Maciej W. Rozycki <[email protected]> for the patch.
692138c0385SMartin Mares
6938fc75dbcSMartin Mares2003-12-27  Martin Mares  <[email protected]>
6948fc75dbcSMartin Mares
69581abd2a7SMartin Mares	* Released as 2.1.99-test3.
69681abd2a7SMartin Mares
6971f7c91ccSMartin Mares	* lspci.man, setpci.man: Document domains and correct spelling.
6981f7c91ccSMartin Mares
6991f7c91ccSMartin Mares	* lib/dump.c (dump_init): Added ability to read domain numbers.
7001f7c91ccSMartin Mares
70184c8d1bbSMartin Mares	* lspci.c: Devices in domains different from 0 have their slot number
7021f7c91ccSMartin Mares	printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains
7031f7c91ccSMartin Mares	as well.
70484c8d1bbSMartin Mares
70584c8d1bbSMartin Mares	* lib/filter.c: Slot filters understand domains.
70684c8d1bbSMartin Mares
70784c8d1bbSMartin Mares	* lib/generic.c: Mention the domain in slot numbers in all error messages.
70884c8d1bbSMartin Mares
70984c8d1bbSMartin Mares	* lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong.
71084c8d1bbSMartin Mares
71184c8d1bbSMartin Mares	* lib/access.c (pci_get_dev): Added support for domains.
71284c8d1bbSMartin Mares
71384c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config
71484c8d1bbSMartin Mares	registers (or to be precise, leave it for the generic parts of the pcilib
71584c8d1bbSMartin Mares	to do so) instead of reading them from the sysfs. It's faster this way.
71684c8d1bbSMartin Mares
71784c8d1bbSMartin Mares	* lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal
71884c8d1bbSMartin Mares	variable. Better read it from the config registers (it's cached anyway).
71984c8d1bbSMartin Mares
72084c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype.
72184c8d1bbSMartin Mares	  lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it.
72284c8d1bbSMartin Mares	  Saves lots of unnecessary file accesses.
72384c8d1bbSMartin Mares
72411f7b31bSMartin Mares	* lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter
72511f7b31bSMartin Mares	is not supported by all C libraries.
72611f7b31bSMartin Mares
72711f7b31bSMartin Mares	* Makefile: Always enter the lib directory (remember that we don't have
72811f7b31bSMartin Mares	full dependecies for the library in the top-level Makefile; hmmm, another
72911f7b31bSMartin Mares	thing to rewrite some day).
73011f7b31bSMartin Mares
73111f7b31bSMartin Mares	* lib/sysfs.c: Added Linux sysfs access method based on the patch
73211f7b31bSMartin Mares	written by Matthew Wilcox <[email protected]>.
73311f7b31bSMartin Mares
73411f7b31bSMartin Mares	* lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc".
73511f7b31bSMartin Mares
73611f7b31bSMartin Mares	* lib/pread.h: The hacks to support pread on various versions
73711f7b31bSMartin Mares	of Linux libc moved there.
73811f7b31bSMartin Mares
73911f7b31bSMartin Mares	* lib/proc.c (proc_setup): The return value of snprintf() varies
74011f7b31bSMartin Mares	between glibc versions, so we need to check both for a negative
74111f7b31bSMartin Mares	values and for too large values.
74211f7b31bSMartin Mares
7434284af58SMartin Mares	* Removed last few references to the "Linux PCI Utilities", the
7444284af58SMartin Mares	package is pretty cross-platform now :)
7454284af58SMartin Mares
7464284af58SMartin Mares2003-12-27  Martin Mares  <[email protected]>
7474284af58SMartin Mares
748ab12277eSMartin Mares	* Released as 2.1.99-test2.
749ab12277eSMartin Mares
750ab12277eSMartin Mares	* README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the
751ab12277eSMartin Mares	release scripts insert the current version. "make release" is gone.
752ab12277eSMartin Mares
753ab12277eSMartin Mares	* maint/release, maint/release.pm: Added a new system of scripts for
754ab12277eSMartin Mares	making releases including inter-version diffs etc.
755ab12277eSMartin Mares
756ab12277eSMartin Mares	* Makefile: Cleaned up.
757ab12277eSMartin Mares
758ab12277eSMartin Mares	* lib/fbsd-device.c: I patched another copy of this file by mistake,
759ab12277eSMartin Mares	this time the version checks should be right.
760ab12277eSMartin Mares
761ab12277eSMartin Mares2003-12-27  Martin Mares  <[email protected]>
762ab12277eSMartin Mares
7636d722cd6SMartin Mares	* Released as 2.1.99-test1.
7646d722cd6SMartin Mares
765dd33246aSMartin Mares	* pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h:
766dd33246aSMartin Mares	Remove shadows of the syscall access method which was never
767dd33246aSMartin Mares	implemented.
768dd33246aSMartin Mares
76980b3121aSMartin Mares	* update-pciids.sh: Try to preserve permissions of the old file
77080b3121aSMartin Mares	if chmod supports --reference. Should close Debian Bug #223740.
77180b3121aSMartin Mares
7726aea909aSMartin Mares	* lib/proc.c (proc_setup): Increased path name length limit to 1024.
7736aea909aSMartin Mares	Thanks for Redhat and Mandrake for inspiration.
7746aea909aSMartin Mares
7756aea909aSMartin Mares	* lib/configure: Recognize ppc and ppc64, both have 64-bit addresses.
7766aea909aSMartin Mares	Grabbed from Redhat (Fedora) patches.
7776aea909aSMartin Mares
7786aea909aSMartin Mares2003-12-27  Martin Mares  <[email protected]>
7796aea909aSMartin Mares
780f701ff47SMartin Mares	Merged bug fixes from Debian patches:
781f701ff47SMartin Mares
782f701ff47SMartin Mares	* lspci.c (show_verbose): "Cache Line Size" should be capitalized.
783f701ff47SMartin Mares
784f701ff47SMartin Mares	* lspci.c (show_pcix_nobridge): Added a missing newline.
785f701ff47SMartin Mares
7862240db8cSMartin Mares	* lib/proc.c (proc_scan): When reading the header type, don't
7872240db8cSMartin Mares	forget to clear the topmost bit indicating that the device has
788f701ff47SMartin Mares	multiple functions.
7892240db8cSMartin Mares
7902240db8cSMartin Mares2003-12-27  Martin Mares  <[email protected]>
7912240db8cSMartin Mares
79245902995SMartin Mares	Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]>
79345902995SMartin Mares	for the patches:
79445902995SMartin Mares
79545902995SMartin Mares	* lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined.
79645902995SMartin Mares	* lib/fbsd-device.c: Select the right set of system includes according
79745902995SMartin Mares	to __FreeBSD_version.
79845902995SMartin Mares
79945902995SMartin Mares2003-12-27  Martin Mares  <[email protected]>
80045902995SMartin Mares
8018fc75dbcSMartin Mares	Merged support for Solaris on i386 by Bill Moore <[email protected]>
8028fc75dbcSMartin Mares	and cleaned up:
8038fc75dbcSMartin Mares
8048fc75dbcSMartin Mares	* lib/configure: Recognize SunOS.
8058fc75dbcSMartin Mares	* lib/internal.h: Learn how to recognize byte order on SunOS.
8068fc75dbcSMartin Mares	* lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c.
8078fc75dbcSMartin Mares	* lib/i386-io-linux.h: Linux specific part.
8088fc75dbcSMartin Mares	* lib/i386-io-hurd.h: GNU/Hurd specific part.
8098fc75dbcSMartin Mares	* lib/i386-io-sunos.h: SunOS specific part.
8108fc75dbcSMartin Mares
8119739916eSMartin Mares2003-12-26  Martin Mares  <[email protected]>
8129739916eSMartin Mares
8139739916eSMartin Mares	* lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly.
8149739916eSMartin Mares
8159739916eSMartin Mares	* lib/pci.h: Types declared in <sys/types.h> should be usable on all
8169739916eSMartin Mares	platforms we currently support, so kill the forest of #ifdef's and
8179739916eSMartin Mares	use them in all cases.
8189739916eSMartin Mares
8199739916eSMartin Mares	* lib/pci.h: Use ULONG_MASK to decide whether we should use long
8209739916eSMartin Mares	or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS.
8219739916eSMartin Mares	Define format strings for addresses, port numbers and IRQ numbers
8229739916eSMartin Mares	directly in pci.h.
8239739916eSMartin Mares
8249739916eSMartin Mares	* lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses.
8259739916eSMartin Mares
82680459c65SMartin Mares2003-12-26  Marco Gerards  <[email protected]>
82780459c65SMartin Mares
82880459c65SMartin Mares	Added support for the GNU Hurd (cleaned up by Martin Mares):
82980459c65SMartin Mares
83080459c65SMartin Mares	* lib/configure [GNU]: Use the i386 ports for configuration access.
83180459c65SMartin Mares	* lib/i386-ports.c: Don't call iopl() on the Hurd.
83280459c65SMartin Mares	* lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining
83380459c65SMartin Mares	u8 to u32.
83480459c65SMartin Mares
835a85769a8SMartin Mares2003-12-26  Martin Mares  <[email protected]>
836a85769a8SMartin Mares
8377dacd9c8SMartin Mares	* lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call
8387dacd9c8SMartin Mares	config_fetch() to ensure that the registers have been read. Thanks to
8397dacd9c8SMartin Mares	Bill Wood <[email protected]> for the patch.
8407dacd9c8SMartin Mares
8417dacd9c8SMartin Mares	* lspci.c: Ensure that failure of config_fetch() is handled correctly
8427dacd9c8SMartin Mares	at all places.
8437dacd9c8SMartin Mares
8444063c31cSMartin Mares	* lspci.man: There was one more explicit reference to /usr/share/pci.ids.
8454063c31cSMartin Mares	Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>.
8464063c31cSMartin Mares
8473fe8a38dSMartin Mares	* setpci.c (main): Better error messages.
8483fe8a38dSMartin Mares
8495f5b1a7bSMartin Mares	* setpci.c (ex_op): The demo mode should disable only writing, not reading.
8505f5b1a7bSMartin Mares
8515f5b1a7bSMartin Mares	* setpci.man: The documentation was inconsistent on what should -D do.
8525f5b1a7bSMartin Mares	Document the new behaviour.
853b251f40bSMartin Mares
85491e37a49SMartin Mares	* pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating
85591e37a49SMartin Mares	the GCC specific __attribute__((noreturn)) and killed the hack with
85691e37a49SMartin Mares	redefining __attribute__ on non-GCC compilers.
85791e37a49SMartin Mares
8584afd29d3SMartin Mares	* Makefile: Added missing dependencies. Parallel builds work now.
8594afd29d3SMartin Mares	Problem reported by Andreas Haumer <[email protected]>, but I chose
8604afd29d3SMartin Mares	a different fix.
8614afd29d3SMartin Mares
862b0f1a03bSMartin Mares	* Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell
863b0f1a03bSMartin Mares	command every time $(MANDIR) is referenced.
864b0f1a03bSMartin Mares
865b7fd8e19SMartin Mares	* lspci.c (main): The error message for `lspci -s' incorrectly mentioned
866b7fd8e19SMartin Mares	a `-f' switch. Reported by Steve Finney <[email protected]>.
867b7fd8e19SMartin Mares
86805bb10a2SMartin Mares	* lib/generic.c: Removed memory leak in pci_generic_bus_scan().
86905bb10a2SMartin Mares	Reported by Gary Parnes <[email protected]>.
87005bb10a2SMartin Mares
871a832f6f1SMartin Mares	* Replaced obsolete syntax of __attribute__((unused)) in the middle of
872a832f6f1SMartin Mares	parameter declarations (which is no longer supported by GCC 3.1) by the
873a832f6f1SMartin Mares	current syntax (attribute at the end). Thanks to [email protected]
874a832f6f1SMartin Mares	for reporting this problem.
875a832f6f1SMartin Mares
876a85769a8SMartin Mares	* Removed CVS $Id$ tags from all files.
877a85769a8SMartin Mares
878a85769a8SMartin Mares	* Makefile: Added some more warnings.
879a85769a8SMartin Mares
880b7351143SMartin Mares	* setpci.c: Cleaned up mask/value code.
881b7351143SMartin Mares
882b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]>
883b7351143SMartin Mares
884b7351143SMartin Mares	* setpci.c: Individual bits to be set can be specified as <value>:<mask>.
885b7351143SMartin Mares
8862a5d5cf9SMartin Mares2003-11-29  Martin Mares  <[email protected]>
8872a5d5cf9SMartin Mares
8882a5d5cf9SMartin Mares	* Imported the pciutils sources to my Arch repository. Good-bye, CVS.
8892a5d5cf9SMartin Mares
890d772ef15SMartin Mares2003-01-04  Martin Mares  <[email protected]>
891d772ef15SMartin Mares
8921b95f396SMartin Mares	* Released as 2.1.11.
8931b95f396SMartin Mares
894c83293ebSMartin Mares	* Makefile: Changed configuration of installation directories --
895c83293ebSMartin Mares	all paths are now set at the top of the Makefile instead of being
896c83293ebSMartin Mares	scattered between the installation rules. The default installation
897c83293ebSMartin Mares	now goes always to /usr/local regardless of the OS as most distributions
898c83293ebSMartin Mares	already contain some version of pciutils and we don't want custom
899c83293ebSMartin Mares	installations to interfere with the default ones.
900c83293ebSMartin Mares
901c83293ebSMartin Mares	* Makefile: Removed a couple of ancient install hacks: we no longer
902c83293ebSMartin Mares	try to avoid overwriting a newer pci.ids file (users are now expected
903c83293ebSMartin Mares	to use update-ids) and we don't try to remove /etc/pci.ids (a long time
904c83293ebSMartin Mares	has passed since the last version which used it).
905c83293ebSMartin Mares
906e2875dcdSMartin Mares	* Makefile: Paths to pci.ids in man pages automatically get the right path.
907e2875dcdSMartin Mares
9081b95f396SMartin Mares	* Added the update-ids utility.
9090138a2a7SMartin Mares
910d772ef15SMartin Mares	* lib: Removed partially implemented "syscall" access method which will
911d772ef15SMartin Mares	probably never be needed.
912d772ef15SMartin Mares
913eb620239SMartin Mares2002-12-27  Martin Mares  <[email protected]>
914eb620239SMartin Mares
915130090bdSMartin Mares	* lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe.
916130090bdSMartin Mares
917eb620239SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Added work-around for devices with
918eb620239SMartin Mares	discontiguous numbering of functions. This is already present in the Linux
919eb620239SMartin Mares	kernel for several years, but I forgot to update pciutils as well.
920eb620239SMartin Mares
921848b4347SMartin Mares2002-12-26  Martin Mares  <[email protected]>
922848b4347SMartin Mares
923579b19ffSMartin Mares	* lib/header.h, lspci.c: Dump AGP3 flags and speeds.
924579b19ffSMartin Mares
925579b19ffSMartin Mares	* lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header,
926579b19ffSMartin Mares	there is no reason to prefer the kernel version.
927579b19ffSMartin Mares
928579b19ffSMartin Mares	* lib/proc.c (proc_scan): Don't forget to initialize hdrtype.
929579b19ffSMartin Mares
930848b4347SMartin Mares	* Added preliminary version of NetBSD support by Quentin Garnier
931848b4347SMartin Mares	<[email protected]>.
932848b4347SMartin Mares
933f0952474SMartin Mares2002-04-06  Martin Mares  <[email protected]>
934f0952474SMartin Mares
935f0952474SMartin Mares	* lspci.c: Mention "-xxx" in the help.
936f0952474SMartin Mares
937d2f666f1SMartin Mares2002-03-30  Martin Mares  <[email protected]>
938d2f666f1SMartin Mares
9399bd44bb0SMartin Mares	* Released as 2.1.10.
9409bd44bb0SMartin Mares
941a33d0eb7SMartin Mares	* Removed pci.ids from the CVS as they are now maintained separately.
942a33d0eb7SMartin Mares	They are still included in the tarball, but if you are building	pciutils
943a33d0eb7SMartin Mares	from CVS sources or you want to get a newer ID file than the one distributed,
944a33d0eb7SMartin Mares	just use "make update-ids" to download the most recent snapshot from
945a33d0eb7SMartin Mares	pciids.sf.net.
946a33d0eb7SMartin Mares
947a33d0eb7SMartin Mares	* Makefile, README: Updated accordingly.
948a33d0eb7SMartin Mares
949a33d0eb7SMartin Mares	* Makefile: Added a couple of maintenance targets.
950a33d0eb7SMartin Mares
951a33d0eb7SMartin Mares	* maint/*: Maintainer's utilities now reside here (present only in CVS,
952a33d0eb7SMartin Mares	not in the tarball).
953a33d0eb7SMartin Mares
954d2f666f1SMartin Mares	* lib/names.c (parse_name_list): End-of-line comments are no longer
955d2f666f1SMartin Mares	supported. Hashes are now perfectly valid in all names and they start
956d2f666f1SMartin Mares	a comment only at the start of the line.
957d2f666f1SMartin Mares
958ee551b73SMartin Mares2002-03-26  Martin Mares  <[email protected]>
959ee551b73SMartin Mares
96007159913SMartin Mares	* README: Rewritten.
96107159913SMartin Mares
962ee551b73SMartin Mares	* Makefile: When the currently installed pci.ids file is newer than
963ee551b73SMartin Mares	the version to be installed, don't overwrite it. Suggested by
964ee551b73SMartin Mares	Jean Delvare <[email protected]>.
965ee551b73SMartin Mares
966bc7b1d62SMartin Mares2002-03-24  Martin Mares  <[email protected]>
967bc7b1d62SMartin Mares
9685f5e6f64SMartin Mares	* lspci.c (show_pcix_bridge): Added PCI-X capability display.
9695f5e6f64SMartin Mares	Contributed by Jeff Garzik <[email protected]>.
9705f5e6f64SMartin Mares
9715f5e6f64SMartin Mares	* lib/header.h: Added PCI-X stuff. Again by Jeff.
9725f5e6f64SMartin Mares
9735f5e6f64SMartin Mares	* Makefile (CFLAGS): -Werror is gone.
9745f5e6f64SMartin Mares
975a1052f16SMartin Mares	* lspci.c (format_agp_rate): Fixed AGP rate reporting.
976a1052f16SMartin Mares
977bc7b1d62SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and
978bc7b1d62SMartin Mares	function 7.
979bc7b1d62SMartin Mares
980bc7b1d62SMartin Mares	* lib/names.c (pci_lookup_name): When printing unknown subsystem vendor
981bc7b1d62SMartin Mares	or device hexadecimally, don't confuse it with chip vendor/device ID.
982bc7b1d62SMartin Mares	First reported by Marc Boucher <[email protected]>.
983bc7b1d62SMartin Mares
984f793990cSMartin Mares2001-11-04  Martin Mares  <[email protected]>
985f793990cSMartin Mares
986ee551b73SMartin Mares	* Released as 2.1.9.
987ee551b73SMartin Mares
988f793990cSMartin Mares	* pci.ids: Synced with the PCI ID Repository at SourceForge
989f793990cSMartin Mares	(http://pciids.sourceforge.net/).
990f793990cSMartin Mares
9911d174e56SMartin Mares2000-08-25  Martin Mares  <[email protected]>
9921d174e56SMartin Mares
9931d174e56SMartin Mares	* pci.ids: Updated ID's, synced with kernel 2.4.0-test7.
9941d174e56SMartin Mares
99565b4327eSMartin Mares2000-06-13  Martin Mares  <[email protected]>
99665b4327eSMartin Mares
99765b4327eSMartin Mares	* Makefile (uninstall): Fixed.
99865b4327eSMartin Mares
99965b4327eSMartin Mares	* pci.ids: ID updates.
100065b4327eSMartin Mares
10014a219d5fSMartin Mares2000-05-20  Martin Mares  <[email protected]>
10024a219d5fSMartin Mares
10034a219d5fSMartin Mares	* Released as 2.1.8.
10044a219d5fSMartin Mares
10054a219d5fSMartin Mares	* pci.ids: ID updates.
10064a219d5fSMartin Mares
10074a219d5fSMartin Mares	* lspci.c (show_verbose): Min/max latency is now printed in nanoseconds.
10084a219d5fSMartin Mares
10094a219d5fSMartin Mares2000-05-04  Martin Mares  <[email protected]>
10104a219d5fSMartin Mares
10114a219d5fSMartin Mares	* lspci.c (show_verbose): If the header type doesn't match device
10124a219d5fSMartin Mares	class, just print a warning and still use the header type, assuming
10134a219d5fSMartin Mares	bogus class info.
10144a219d5fSMartin Mares
101510c90662SMartin Mares2000-05-01  Martin Mares  <[email protected]>
101610c90662SMartin Mares
101772b9b690SMartin Mares	* lspci.c (show_pm): Updated according to PCI PM specs 1.1.
101872b9b690SMartin Mares
101910c90662SMartin Mares	* pci.ids: Updated Contemporary Control ARCnet card entries.
102010c90662SMartin Mares
102110c90662SMartin Mares	* pci.ids: Synchronized class list with latest PCI SIG documents.
102210c90662SMartin Mares
1023a239ade6SMartin Mares2000-04-29  Martin Mares  <[email protected]>
1024a239ade6SMartin Mares
1025a239ade6SMartin Mares	* lib/names.c (pci_lookup_name): Fixed the cheat.
1026a239ade6SMartin Mares
1027a239ade6SMartin Mares	* lib/internal.h: Moved UNUSED/inline hacks above all other declarations.
1028a239ade6SMartin Mares
1029a239ade6SMartin Mares	* pci.ids: Various ID updates.
1030a239ade6SMartin Mares
10312c83b860SMartin Mares2000-04-21  Martin Mares  <[email protected]>
10322c83b860SMartin Mares
10332c83b860SMartin Mares	* Released as 2.1.7.
10342c83b860SMartin Mares
10352c83b860SMartin Mares	* pciutils.spec: Added German description.
10362c83b860SMartin Mares
10372c83b860SMartin Mares	* lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's
10382c83b860SMartin Mares	are the same as device ID and just output subsystem name according to
10392c83b860SMartin Mares	device name.
10402c83b860SMartin Mares
10412c83b860SMartin Mares	* lib/proc.c: Use UNUSED instead of __attribute__((unused)).
10422c83b860SMartin Mares
10432c83b860SMartin Mares	* lib/pci.h: Added the correct typedefs for AIX.
10442c83b860SMartin Mares
10452c83b860SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Export.
10462c83b860SMartin Mares
10472c83b860SMartin Mares	* lib/configure: Detect AIX. Use "echo '...\c'" instead of
10482c83b860SMartin Mares	"echo -n" if the shell isn't bash.
10492c83b860SMartin Mares
10502c83b860SMartin Mares	* lspci.c: Avoid using alloca() if not compiled by GCC.
10512c83b860SMartin Mares	(insert_dev): Avoid returning a void value.
10522c83b860SMartin Mares
10532c83b860SMartin Mares	* Makefile: Choose which install utility to use according to
10542c83b860SMartin Mares	OS type. Also use `-o' instead of `-or' in find arguments.
10552c83b860SMartin Mares	Part of the AIX port.
10562c83b860SMartin Mares
10572c83b860SMartin Mares	* lib/aix-device.c: Added AIX low-level interface. Contributed
10582c83b860SMartin Mares	by Dave Johnson <[email protected]>, thanks a lot!
10592c83b860SMartin Mares
10602c83b860SMartin Mares	* pci.ids: Few new ID's.
10612c83b860SMartin Mares
10622c83b860SMartin Mares	* pciutils.h, lib/internal.h: Redefine __attribute__ and inline
10632c83b860SMartin Mares	when not compiled by GCC.
10642c83b860SMartin Mares
1065c1a828daSMartin Mares2000-04-17  Martin Mares  <[email protected]>
1066c1a828daSMartin Mares
1067c1a828daSMartin Mares	* Released as 2.1.6.
1068c1a828daSMartin Mares
1069c1a828daSMartin Mares	* pci.ids: Added a large batch of ID's contributed by Gunther
1070c1a828daSMartin Mares	Mayer <[email protected]> and synced the
1071c1a828daSMartin Mares	list with the 2.3.99pre6 kernel.
1072c1a828daSMartin Mares
1073e91dd3abSMartin MaresThu Mar  9 13:11:39 2000  Martin Mares  <[email protected]>
1074e91dd3abSMartin Mares
1075a80b79a9SMartin Mares	* lib/example.c: Added a simple example of how to use
1076a80b79a9SMartin Mares	the library.
1077a80b79a9SMartin Mares
107889984232SMartin Mares	* lspci.man, setpci.man: Revealed --version. Well spotted
107989984232SMartin Mares	by Adam Sulmicki.
108089984232SMartin Mares
1081e91dd3abSMartin Mares	* pci.ids: Added lots of new ID's and synced with 2.3.50.
1082e91dd3abSMartin Mares
108378d9c5e2SMartin MaresTue Feb 15 00:16:21 2000  Martin Mares  <[email protected]>
108478d9c5e2SMartin Mares
108578d9c5e2SMartin Mares	* Released as 2.1.5.
108678d9c5e2SMartin Mares
108778d9c5e2SMartin Mares	* pciutils.spec: Updated spec file from Andreas Jaeger. Now using
108878d9c5e2SMartin Mares	%{_mandir} to find the right location to install manual pages to.
108978d9c5e2SMartin Mares
109078d9c5e2SMartin Mares	* pci.ids: New ID's.
109178d9c5e2SMartin Mares
109278d9c5e2SMartin Mares	* setpci.c (main): Don't crash when `-s' or `-d' is given with
109378d9c5e2SMartin Mares	no argument.
109478d9c5e2SMartin Mares
1095f8141ae2SMartin MaresMon Jan 24 20:04:11 2000  Andreas Jaeger  <[email protected]>
1096f8141ae2SMartin Mares
1097f8141ae2SMartin Mares	* lib/i386-ports.c: Include <asm/io.h> only on systems without
1098f8141ae2SMartin Mares	glibc.
1099f8141ae2SMartin Mares
1100f8141ae2SMartin MaresMon Jan 24 11:24:43 2000  Martin Mares  <[email protected]>
1101f8141ae2SMartin Mares
1102f8141ae2SMartin Mares	* Makefile: Modified to work with the Linux FHS brain-damaged idea
1103f8141ae2SMartin Mares	of putting man pages to /usr/share/man. Now we choose either /usr/man
1104f8141ae2SMartin Mares	or /usr/share/man depending on which one exists.
1105f8141ae2SMartin Mares
110659e76e8bSMartin MaresSun Jan 23 10:52:34 2000  Martin Mares  <[email protected]>
110759e76e8bSMartin Mares
110859e76e8bSMartin Mares	* pci.ids: Synced with Linux 2.3.40.
110959e76e8bSMartin Mares
111059e76e8bSMartin Mares	* Released as version 2.1.4.
111159e76e8bSMartin Mares
11122dfd48cdSMartin MaresThu Jan 20 11:08:32 2000  Martin Mares  <[email protected]>
11132dfd48cdSMartin Mares
11142715403fSMartin Mares	* lspci.c (scan_device): Fixed bug in reading of cardbus extensions.
11152715403fSMartin Mares
111681077814SMartin Mares	* lib/proc.c: pread/pwrite fixed again, this time on libc5 :(
111781077814SMartin Mares
111881077814SMartin Mares	* lspci.c (format_agp_rate): Better formatting of AGP rates.
111981077814SMartin Mares
112081077814SMartin Mares	* pci.ids: New ID's.
112181077814SMartin Mares
11222dfd48cdSMartin Mares	* lib/configure: Added configuration for ia64 (the same as for Alpha).
11232dfd48cdSMartin Mares	Patch from Stephane Eranian <[email protected]>.
11242dfd48cdSMartin Mares
11255a258860SMartin MaresThu Jan 13 23:01:52 2000  Martin Mares  <[email protected]>
11265a258860SMartin Mares
11275a258860SMartin Mares	* Released as version 2.1.3.
11285a258860SMartin Mares
11295a258860SMartin Mares	* pci.ids: New ID's.
11305a258860SMartin Mares
11315a258860SMartin Mares	* lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli.
11325a258860SMartin Mares
11335a258860SMartin Mares	* lib/access.c: Corrected order of access methods -- it's wonderful how
11345a258860SMartin Mares	long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff.
11355a258860SMartin Mares
11360c047bbeSMartin MaresSat Dec 11 23:34:48 1999  Martin Mares  <[email protected]>
11370c047bbeSMartin Mares
11380c047bbeSMartin Mares	* Released as version 2.1.2.
11390c047bbeSMartin Mares
11400c047bbeSMartin Mares	* lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's.
11410c047bbeSMartin Mares
114233bc28a5SMartin MaresSat Dec  4 13:11:03 1999  Martin Mares  <[email protected]>
114333bc28a5SMartin Mares
114439231205SMartin Mares	* Released as version 2.1.1.
114539231205SMartin Mares
114633bc28a5SMartin Mares	* pci.ids: Several new ID's.
114733bc28a5SMartin Mares
114833bc28a5SMartin Mares	* setpci.c (exec_op): Don't forget to increment address after writing
114933bc28a5SMartin Mares	single value, so that `30.b=12,34,56,78' works as expected. Reported
115033bc28a5SMartin Mares	by Petr Soucek <[email protected]>.
115133bc28a5SMartin Mares
11528d047897SMartin MaresWed Nov  3 10:24:38 1999  Martin Mares  <[email protected]>
11538d047897SMartin Mares
11548d047897SMartin Mares	* lspci.c (show_terse): If prog-if is zero, but it's present in the
11558d047897SMartin Mares	ID list, show it.
11568d047897SMartin Mares
11576afc6538SMartin MaresSat Oct 30 11:06:35 1999  Martin Mares  <[email protected]>
11586afc6538SMartin Mares
11596afc6538SMartin Mares	* Released as version 2.1.
11606afc6538SMartin Mares
11616afc6538SMartin Mares	* pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in
11626afc6538SMartin Mares	lots of contributed entries.
11636afc6538SMartin Mares
11648f756113SMartin MaresThu Oct 14 10:40:12 1999  Dave Jones    <[email protected]>
11658f756113SMartin Mares
11668f756113SMartin Mares	* pci.ids: Added lots of subsystem definitions.
11678f756113SMartin Mares
1168d4798a32SMartin MaresSat Oct  9 14:32:28 1999  Martin Mares  <[email protected]>
1169d4798a32SMartin Mares
1170d4798a32SMartin Mares	* setpci.man: Better example.
1171d4798a32SMartin Mares
1172d4798a32SMartin Mares	* lspci.c: Resolve prog-if names.
1173d4798a32SMartin Mares
1174d4798a32SMartin Mares	* lib/names.c: Adapted to new pci.ids syntax.
1175d4798a32SMartin Mares
1176d4798a32SMartin Mares	* pci.ids: Reorganized the pci.ids file. Subsystems are listed
1177d4798a32SMartin Mares	under devices, classes can optionally contain prog-if information.
1178d4798a32SMartin Mares	New ID's, as usually.
1179d4798a32SMartin Mares
1180e306e911SMartin MaresWed Sep 22 09:45:24 1999  Martin Mares  <[email protected]>
1181e306e911SMartin Mares
1182e306e911SMartin Mares	* pci.ids: New ID's. As usually.
1183e306e911SMartin Mares
1184e306e911SMartin Mares	* lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows
1185e306e911SMartin Mares	unless we're vvvery verbose.
1186e306e911SMartin Mares
1187e306e911SMartin MaresMon Sep 20 11:22:54 1999  Martin Mares  <[email protected]>
1188e306e911SMartin Mares
1189e306e911SMartin Mares	* lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line.
1190e306e911SMartin Mares
1191e64a576cSMartin MaresTue Sep 14 09:31:01 1999  Martin Mares  <[email protected]>
1192e64a576cSMartin Mares
1193e64a576cSMartin Mares	* pci.ids: New ID's. Again.
1194e64a576cSMartin Mares
1195c36c0862SMartin MaresThu Aug  5 17:45:42 1999  Martin Mares  <[email protected]>
1196c36c0862SMartin Mares
1197c36c0862SMartin Mares	* lspci.c (show_size): Don't show size if it's zero (usually
1198c36c0862SMartin Mares	due to bus-centric mode being enabled).
1199c36c0862SMartin Mares
12001ca42433SMartin MaresTue Jul 20 13:25:09 1999  Martin Mares  <[email protected]>
12011ca42433SMartin Mares
1202168b4f46SMartin Mares	* lib/pci.h: Types are OS dependent.
1203168b4f46SMartin Mares
1204168b4f46SMartin Mares	* lib/internal.h: Byte order hacks are OS dependent.
1205168b4f46SMartin Mares
1206168b4f46SMartin Mares	* lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS.
1207168b4f46SMartin Mares
1208168b4f46SMartin Mares	* lib/Makefile, lib/access.c: Added fbsd-device target.
1209168b4f46SMartin Mares
1210168b4f46SMartin Mares	* pci.ids: Added an entry for PLX 9080 bridges with subsystem ID
1211168b4f46SMartin Mares	incorrectly set to device ID.
1212168b4f46SMartin Mares
1213168b4f46SMartin Mares	* README: Added a note that we support FreeBSD.
1214168b4f46SMartin Mares
1215168b4f46SMartin Mares	* Makefile (PREFIX, ROOT): Set it depending on the OS.
1216168b4f46SMartin Mares	(%.8): Grrr, BSD date is not able to convert date formats the same way
1217168b4f46SMartin Mares	as GNU date does. Use sed instead.
1218168b4f46SMartin Mares	(install): Use `-c' when calling install.
1219168b4f46SMartin Mares
1220168b4f46SMartin Mares	* lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed
1221168b4f46SMartin Mares	by Jari Kirma <[email protected]>.
1222168b4f46SMartin Mares
1223bc6346dfSMartin Mares	* lib/proc.c: Rewrote the pread/pwrite things once again. Use pread
1224bc6346dfSMartin Mares	and pwrite only when we are certain it's safe (i.e., glibc 2.1
1225bc6346dfSMartin Mares	on all architectures or any libc on a i386 where we really know
1226bc6346dfSMartin Mares	how to use syscalls directly). In all other cases, emulate it
1227bc6346dfSMartin Mares	with lseek/read/write.
1228bc6346dfSMartin Mares
12291ca42433SMartin Mares	* pci.ids: Some more IDs.
12301ca42433SMartin Mares
12311ca42433SMartin MaresMon Jul 19 14:10:36 1999  Martin Mares  <[email protected]>
12321ca42433SMartin Mares
12331ca42433SMartin Mares	* pci.ids: Added IDs of parallel port controller cards as sent
12341ca42433SMartin Mares	by Tim Waugh <[email protected]>.
12351ca42433SMartin Mares
1236e95c8373SMartin MaresWed Jul  7 00:55:48 1999  Martin Mares  <[email protected]>
1237e95c8373SMartin Mares
1238e95c8373SMartin Mares	* lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS.
1239e95c8373SMartin Mares
1240e95c8373SMartin Mares	* lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and
1241e95c8373SMartin Mares	HAVE_LONG_ADDRESS.
1242e95c8373SMartin Mares
1243e95c8373SMartin Mares	* lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses
1244e95c8373SMartin Mares	are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS
1245e95c8373SMartin Mares	to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS
1246e95c8373SMartin Mares	and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS
1247e95c8373SMartin Mares	on Alpha.
1248e95c8373SMartin Mares
1249e95c8373SMartin Mares	* lspci.c (show_msi): Added dumping of the MSI capability.
1250e95c8373SMartin Mares	(show_slotid): The same for SlotID capability.
1251e95c8373SMartin Mares	(show_caps): Seperated capability dumping, because it should
1252e95c8373SMartin Mares	be used for both htype0 and htype1. Even PCI 2.2 doesn't mention
1253e95c8373SMartin Mares	layout of htype2, so I'm a bit unsure about it wrt capabilities
1254e95c8373SMartin Mares	-- they at least have to live somewhere else since address 0x34
1255e95c8373SMartin Mares	is already defined differently in htype2.
1256e95c8373SMartin Mares
1257e95c8373SMartin Mares	* lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2).
1258e95c8373SMartin Mares	(PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto.
1259e95c8373SMartin Mares	(PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2.
1260e95c8373SMartin Mares
1261e95c8373SMartin Mares	* lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers
1262e95c8373SMartin Mares	(required by the PCI 2.2 specs).
1263e95c8373SMartin Mares
1264e95c8373SMartin MaresMon Jul  5 12:45:19 1999  Martin Mares  <[email protected]>
1265e95c8373SMartin Mares
1266e95c8373SMartin Mares	* lspci.c (show_size): Added new function for dumping of region sizes.
1267e95c8373SMartin Mares	(show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled
1268e95c8373SMartin Mares	ROMs et cetera.
1269e95c8373SMartin Mares
1270e95c8373SMartin Mares	* lib/pci.h (struct pci_dev): known_fields moved to the public part
1271e95c8373SMartin Mares	of the structure.
1272e95c8373SMartin Mares
1273e95c8373SMartin Mares	* Added support for region sizes. Needs support in the kernel, because
1274e95c8373SMartin Mares	sizes have to be scanned before drivers initialize yourself. pci_fill_info()
1275e95c8373SMartin Mares	now returns a bitmask of what fields were really read.
1276e95c8373SMartin Mares
127782ce97c9SMartin MaresMon Jun 28 18:37:51 1999  Dave Jones    <[email protected]>
127882ce97c9SMartin Mares
127982ce97c9SMartin Mares	* Makefile:
128082ce97c9SMartin Mares	  Added `uninstall' target - removes all traces of pciutils.
128182ce97c9SMartin Mares	* pci.ids:
128282ce97c9SMartin Mares	  - Lots of cleanups in the ATI, S3, Adaptec vendors.
128382ce97c9SMartin Mares	  - Changed Compaq QVision 1280/p definitions, as it's not possible
128482ce97c9SMartin Mares	    to determine the revision from the device ID.
128582ce97c9SMartin Mares	  - Same for the Tseng ET4000.
128682ce97c9SMartin Mares	    The id's said I had a rev C, when it was actually a rev B.
128782ce97c9SMartin Mares	  - Removed some unnecessary strings
128882ce97c9SMartin Mares	    `PCI'. Unless it's an AGP card, it should be obvious that it's PCI.
128982ce97c9SMartin Mares	    `Ethernet card'. This should be determined from config space.
129082ce97c9SMartin Mares	  - Lots of other new vendors & devices
129182ce97c9SMartin Mares	  - Other additional small cleanups.
129282ce97c9SMartin Mares
12937bed2d83SMartin MaresMon Jun 21 22:11:10 1999  Martin Mares  <[email protected]>
12947bed2d83SMartin Mares
12957bed2d83SMartin Mares	* lib/names.c (pci_lookup_name): When device ID lookup
12967bed2d83SMartin Mares	fails, return hexadecimal device ID instead of vendor ID.
12977bed2d83SMartin Mares	Well spotted by Axel Bodemann <[email protected]>,
12987bed2d83SMartin Mares	I've just extended the fix to subsystem ID's.
12997bed2d83SMartin Mares
13005ba3a475SMartin MaresThu Jun 17 19:48:21 1999  Martin Mares  <[email protected]>
13015ba3a475SMartin Mares
13025ba3a475SMartin Mares	* lspci.c (show_agp): Bug fix from Petr Vandrovec
13035ba3a475SMartin Mares	<[email protected]>. The command register was displayed
13045ba3a475SMartin Mares	incorrectly.
13055ba3a475SMartin Mares
13065ba3a475SMartin MaresWed Jun  2 22:42:44 1999  Martin Mares  <[email protected]>
13075ba3a475SMartin Mares
13085ba3a475SMartin Mares	* lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded
13095ba3a475SMartin Mares	numbers if not supplied by the libc.
13105ba3a475SMartin Mares
131155c815b5SMartin MaresWed May 19 13:24:39 1999  Martin Mares  <[email protected]>
131255c815b5SMartin Mares
131355c815b5SMartin Mares	* Released the whole package as version 2.0.
131455c815b5SMartin Mares
131555c815b5SMartin MaresFri May 14 22:42:02 1999  Martin Mares  <[email protected]>
131655c815b5SMartin Mares
131755c815b5SMartin Mares	* pci.ids: Added several new ID's contributed by people
131855c815b5SMartin Mares	on the linux-pci list.
131955c815b5SMartin Mares
1320dec16943SMartin MaresMon Apr 19 15:21:08 1999  Jakub Jelinek  <[email protected]>
1321dec16943SMartin Mares
1322dec16943SMartin Mares	* lspci.c: Display I/O addresses correctly on sparc64.
1323dec16943SMartin Mares	* lib/header.h: Ditto.
1324dec16943SMartin Mares
1325dec16943SMartin Mares	* lib/configure: On sparc set HAVE_64BIT* as well, we want
1326dec16943SMartin Mares	a binary which works on both 32bit and 64bit SPARCs.
1327dec16943SMartin Mares
1328e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999  Martin Mares  <[email protected]>
1329e33c9c7aSMartin Mares
1330e33c9c7aSMartin Mares	* lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob
1331e33c9c7aSMartin Mares	<[email protected]>.
1332e33c9c7aSMartin Mares
1333e33c9c7aSMartin Mares	* pci.ids: A lot of updates from Adam J. Richter <[email protected]>.
1334e33c9c7aSMartin Mares
1335f3395cc5SMartin MaresSun Feb 28 22:26:21 1999  Martin Mares  <[email protected]>
1336f3395cc5SMartin Mares
1337f3395cc5SMartin Mares	* lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged
1338f3395cc5SMartin Mares	as a multi-function device, because several single-function devices
1339f3395cc5SMartin Mares	don't decode the function bits at all.
1340f3395cc5SMartin Mares
1341f3395cc5SMartin MaresSun Feb 14 23:48:22 1999  Martin Mares  <[email protected]>
1342f3395cc5SMartin Mares
1343f3395cc5SMartin Mares	* Makefile (install): Don't use "-o root -g root" for installation
1344f3395cc5SMartin Mares	since it breaks on machines where programs are not installed by root.
1345f3395cc5SMartin Mares	Reported by Richard Gooch <[email protected]>
1346f3395cc5SMartin Mares
1347f3395cc5SMartin MaresTue Feb  9 15:54:39 1999  Martin Mares  <[email protected]>
1348f3395cc5SMartin Mares
1349f3395cc5SMartin Mares	* lspci.c (show_bases): Use new address masking macros and pciaddr_t.
1350f3395cc5SMartin Mares
1351f3395cc5SMartin Mares	* lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit
1352f3395cc5SMartin Mares	or 64-bit depending on CPU.
1353f3395cc5SMartin Mares
1354f3395cc5SMartin Mares	* lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks
1355f3395cc5SMartin Mares	according to bus address width.
1356f3395cc5SMartin Mares
13571c31d620SMartin MaresThu Jan 28 20:54:16 1999  Martin Mares  <[email protected]>
13581c31d620SMartin Mares
13591c31d620SMartin Mares	* Released as 1.99.4.
13601c31d620SMartin Mares
13611c31d620SMartin Mares	* lspci.c: Capability list parser now recognizes both AGP
13621c31d620SMartin Mares	registers and PCI Power Management registers (the latter
13631c31d620SMartin Mares	is mainly guesswork based on DEC/Intel 21153 bridge specs
13641c31d620SMartin Mares	since I don't have the PCI Power Management document).
13651c31d620SMartin Mares
13661c31d620SMartin Mares	* lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-'
13671c31d620SMartin Mares	by FLAG macro.
13681c31d620SMartin Mares
13691c31d620SMartin Mares	* lspci.c: Added bridge checks to bus mapping code.
13701c31d620SMartin Mares
13711812a795SMartin MaresWed Jan 27 14:59:16 1999  Martin Mares  <[email protected]>
13721812a795SMartin Mares
13731812a795SMartin Mares	* lspci.c: Implemented bus mapping mode (-M).
13741812a795SMartin Mares
13751812a795SMartin Mares	* lspci.c (scan_devices): Split to scan_devices() and scan_device().
13761812a795SMartin Mares	(show): Split to show() and show_device().
13771812a795SMartin Mares
13781812a795SMartin Mares	* lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO,
13791812a795SMartin Mares	set it to the real access method afterwards.
13801812a795SMartin Mares
13811812a795SMartin MaresMon Jan 25 23:46:13 1999  Martin Mares  <[email protected]>
13821812a795SMartin Mares
13831812a795SMartin Mares	* lib/generic.c (pci_generic_fill_info): If in buscentric mode,
13841812a795SMartin Mares	don't check PCI_COMMAND for I/O and memory enables.
13851812a795SMartin Mares
1386f6c86928SMartin MaresMon Jan 25 21:28:49 1999  Martin Mares  <[email protected]>
1387f6c86928SMartin Mares
1388f6c86928SMartin Mares	* Makefile: Added target `release' which substitutes new version
1389f6c86928SMartin Mares	number to .spec, .lsm and README. Also rewrote target `dist'.
1390f6c86928SMartin Mares
1391f6c86928SMartin Mares	* Released as 1.99.3.
1392f6c86928SMartin Mares
1393b5137411SMartin MaresSun Jan 24 22:10:36 1999  Martin Mares  <[email protected]>
1394b5137411SMartin Mares
1395d6b297d0SMartin Mares	* lib/header.h: Until kernel adopts new layout of PCI
1396d6b297d0SMartin Mares	includes (i.e., separate declaration of header structure,
1397d6b297d0SMartin Mares	functions and device IDs), which is not going to happen
1398d6b297d0SMartin Mares	before 2.3, we'll use our own definiton of the header.
1399d6b297d0SMartin Mares
1400b5137411SMartin Mares	* lspci.c (show_verbose): Display `Cap' flag in device status.
1401b5137411SMartin Mares
1402b5137411SMartin Mares	* lspci.c (show_htype0): Display capability lists whereever
1403b5137411SMartin Mares	available. The only capability name we recognize now is `AGP'.
1404b5137411SMartin Mares	Unfortunately, capabilities are stored in device-dependent
1405b5137411SMartin Mares	portion of the configuration space and are thus available
1406b5137411SMartin Mares	only to root unless you read a dump.
1407b5137411SMartin Mares
1408b5137411SMartin Mares	* lspci.c (scan_devices): Use cache instead of buffering.
1409b5137411SMartin Mares
1410b5137411SMartin Mares	* lib/buffer.c: Removed (obsoleted by the cache).
1411b5137411SMartin Mares
1412b5137411SMartin Mares	* lib/access.c: Added general caching mechanism.
1413b5137411SMartin Mares
141481ce358dSMartin MaresSat Jan 23 21:30:54 1999  Martin Mares  <[email protected]>
141581ce358dSMartin Mares
141681ce358dSMartin Mares	* pci.ids: Added few devices.
141781ce358dSMartin Mares
1418727ce158SMartin MaresFri Jan 22 19:29:31 1999  Martin Mares  <[email protected]>
1419727ce158SMartin Mares
1420727ce158SMartin Mares	* Version string is now defined in top-level Makefile, exported
1421727ce158SMartin Mares	to the configure script and also substituted to man pages.
1422727ce158SMartin Mares
1423727ce158SMartin Mares	* lspci.c (show_bases): Rewrote displaying of 64-bit addresses.
1424727ce158SMartin Mares	(show_verbose): Rewrote interrupt display logic.
1425727ce158SMartin Mares
1426727ce158SMartin Mares	* lib/i386-ports.c: Include sys/io.h only on glibc systems.
1427727ce158SMartin Mares
1428727ce158SMartin Mares	* lib/configure: Rewrote detection of Linux versions. Now it
1429727ce158SMartin Mares	works on 2.0 kernels (only with direct/dump access, of course).
1430727ce158SMartin Mares
1431727ce158SMartin Mares	* lib/internal.h: New bytesex macros using <asm/byteorder.h>
1432727ce158SMartin Mares	whenever available.
1433727ce158SMartin Mares
1434727ce158SMartin Mares	* lib/proc.c (proc_read, proc_write): Distinguish between short
1435727ce158SMartin Mares	read/write and real errors.
1436727ce158SMartin Mares
1437727ce158SMartin Mares	* lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since
1438727ce158SMartin Mares	libpci respects buscentric mode automatically.
1439727ce158SMartin Mares
1440727ce158SMartin Mares	* lspci.c (show_hex_dump): For CardBus bridges, print out 128
1441727ce158SMartin Mares	bytes of header (the whole standard part).
1442727ce158SMartin Mares
1443727ce158SMartin Mares	* common.c: pcilib options are now all uppercase. Also moved
1444727ce158SMartin Mares	PCI access debugging option here.
1445727ce158SMartin Mares
1446727ce158SMartin Mares	* Released as 1.99.2.
1447727ce158SMartin Mares
1448727ce158SMartin MaresWed Jan 20 22:50:35 1999  Martin Mares  <[email protected]>
1449727ce158SMartin Mares
1450727ce158SMartin Mares	* Wrote configure script and rewrote Makefiles.
1451727ce158SMartin Mares
1452727ce158SMartin Mares	* Removed few unused variables.
1453727ce158SMartin Mares
1454727ce158SMartin MaresWed Jan 20 12:21:56 1999  Martin Mares  <[email protected]>
1455727ce158SMartin Mares
1456727ce158SMartin Mares	* common.c: Moved several functions used in both setpci and lspci
1457727ce158SMartin Mares	here. This includes parsing of libpci-related options.
1458727ce158SMartin Mares
1459727ce158SMartin Mares	* More library tweaks.
1460727ce158SMartin Mares
1461727ce158SMartin Mares	* filter.c, names.c: Moved to library.
1462727ce158SMartin Mares
1463727ce158SMartin Mares	* setpci: Rewritten to use the library.
1464727ce158SMartin Mares
1465727ce158SMartin Mares	* Released as 1.99.1.
1466727ce158SMartin Mares
1467727ce158SMartin MaresTue Jan 19 23:00:12 1999  Martin Mares  <[email protected]>
1468727ce158SMartin Mares
1469727ce158SMartin Mares	* lspci.c (scan_devices): For cardbus bridges, read first 128
1470727ce158SMartin Mares	bytes of config space to get full standard header.
1471727ce158SMartin Mares
1472727ce158SMartin Mares	* Makefile (CFLAGS): Removed "-Wno-unused".
1473727ce158SMartin Mares
1474727ce158SMartin Mares	* Started the "New Generation" branch and introduced the
1475727ce158SMartin Mares	PCI library.
1476727ce158SMartin Mares
1477727ce158SMartin Mares	* lspci: Rewritten to use the library.
1478727ce158SMartin Mares
14796ece6bc6SMartin MaresTue Jan 19 22:24:08 1999  Martin Mares  <[email protected]>
14806ece6bc6SMartin Mares
14816ece6bc6SMartin Mares	* Released as version 1.10.
14826ece6bc6SMartin Mares
14836ece6bc6SMartin MaresMon Jan 18 08:51:17 1999  Martin Mares  <[email protected]>
14846ece6bc6SMartin Mares
14856ece6bc6SMartin Mares	* lspci.8, setpci.8: Miscellaneous fixes as suggested by
14866ece6bc6SMartin Mares	Dag Wieers <[email protected]>.
14876ece6bc6SMartin Mares
14881212dd6dSMartin MaresSun Nov 29 20:05:56 1998  Martin Mares  <[email protected]>
14891212dd6dSMartin Mares
14901212dd6dSMartin Mares	* pciutils.spec (Name): Update from Krzysztof G. Baranowski.
14911212dd6dSMartin Mares
1492d38471fdSMartin MaresSun Nov 22 10:49:56 1998  Martin Mares  <[email protected]>
1493d38471fdSMartin Mares
1494d38471fdSMartin Mares	* Makefile, pciutils.h: Moved pci.ids to /usr/share.
1495d38471fdSMartin Mares
1496d38471fdSMartin Mares	* Released as version 1.09.
1497d38471fdSMartin Mares
1498371f605bSMartin MaresWed Nov 18 15:47:05 1998  Martin Mares  <[email protected]>
1499371f605bSMartin Mares
1500371f605bSMartin Mares	* lspci.c (show_htype1): Fixed displaying of prefetchable memory behind
1501371f605bSMartin Mares	bridge. Thanks to Petr Vandrovec <[email protected]> for bug report.
1502371f605bSMartin Mares
150310be47abSMartin MaresFri Oct 23 18:59:19 1998  Martin Mares  <[email protected]>
150410be47abSMartin Mares
150510be47abSMartin Mares	* setpci.c: Don't include <syscall-list.h> with glibc >= 2.1.
150610be47abSMartin Mares
1507472bd340SMartin MaresMon Oct 19 21:53:30 1998  Martin Mares  <[email protected]>
1508472bd340SMartin Mares
1509472bd340SMartin Mares	* Released as version 1.08.
1510472bd340SMartin Mares
1511472bd340SMartin Mares	* setpci.c: glibc 2.1.x already defines pread() and pwrite().
1512472bd340SMartin Mares
1513472bd340SMartin Mares	* lspci.8: Changed warning about lspci -xxx.
1514472bd340SMartin Mares
1515472bd340SMartin Mares	* lspci.c: Require "-xxx" for full configuration space dump, so that
1516472bd340SMartin Mares	it's impossible to crash the machine by single typo.
1517472bd340SMartin Mares
1518472bd340SMartin Mares	* specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>).
1519472bd340SMartin Mares
1520072c77e5SMartin MaresWed Sep  9 12:03:24 1998  Martin Mares  <[email protected]>
1521072c77e5SMartin Mares
1522072c77e5SMartin Mares	* lspci.c (show_bases): Better displaying of unassigned and
1523072c77e5SMartin Mares	disabled bases. Thanks to Gabriel Paubert <[email protected]>
1524072c77e5SMartin Mares	for an idea.
1525072c77e5SMartin Mares
1526b7554856SMartin MaresWed Sep  2 10:58:01 1998  Martin Mares  <[email protected]>
1527b7554856SMartin Mares
1528b7554856SMartin Mares	* setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC.
1529b7554856SMartin Mares	(thanks to Geert Uytterhoeven for finding this out)
1530b7554856SMartin Mares
1531ce503b7fSMartin MaresFri Jul 17 10:43:30 1998  Martin Mares  <[email protected]>
1532ce503b7fSMartin Mares
1533ce503b7fSMartin Mares	* lspci.c (show_verbose): Print subsystem ID using the new resolver.
1534ce503b7fSMartin Mares	(show_machine): Print subsystem ID.
1535ce503b7fSMartin Mares
1536ce503b7fSMartin Mares	* names.c: New name resolution engine supporting subsystem IDs.
1537ce503b7fSMartin Mares
1538ce503b7fSMartin Mares	* Released as version 1.07.
1539ce503b7fSMartin Mares
154096e4f295SMartin MaresWed Jul 15 15:37:21 1998  Martin Mares  <[email protected]>
154196e4f295SMartin Mares
154296e4f295SMartin Mares	* lspci.c (show_htype2 etc.): Displaying of CardBus headers.
154396e4f295SMartin Mares	(show_bases): Honor the `cnt' argument.
154496e4f295SMartin Mares	(grow_tree): Parse CardBus headers in tree mode as well.
154596e4f295SMartin Mares
154696e4f295SMartin Mares	* pci.h: Updated CardBus header field description. I still don't
154796e4f295SMartin Mares	have the CardBus standard available, but OZ6832 specs contain
154896e4f295SMartin Mares	full description of all header fields supported by the chip.
154996e4f295SMartin Mares
15506ae3650aSMartin MaresTue Jun  9 22:53:59 1998  Martin Mares  <[email protected]>
15516ae3650aSMartin Mares
1552304f9a0bSMartin Mares	* Released as 1.06.
1553304f9a0bSMartin Mares
15546ae3650aSMartin Mares	* names.c (parse_name_list): Killed an unused variable.
15556ae3650aSMartin Mares
15566ae3650aSMartin Mares	* setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1
15576ae3650aSMartin Mares	if they are not defined by glibc (needed for glibc built on older
15586ae3650aSMartin Mares	kernels). Ugly.
15596ae3650aSMartin Mares
15606ae3650aSMartin Mares	* setpci.c (exec_op): Fixed error messages. Thanks, Steve!
15616ae3650aSMartin Mares
15624b88a6b8SMartin MaresMon Jun  8 10:59:22 1998  Martin Mares  <[email protected]>
15634b88a6b8SMartin Mares
15644b88a6b8SMartin Mares	* Released as 1.05.
15654b88a6b8SMartin Mares
15664b88a6b8SMartin Mares	* setpci.c: Problems with pread()/pwrite() with glibc on Alpha
15674b88a6b8SMartin Mares	should be gone. Again thanks to Steve for bug report.
15684b88a6b8SMartin Mares
15694b88a6b8SMartin Mares	* filter.c (filter_parse_slot): Fixed ":x" type filters.
15704b88a6b8SMartin Mares
15714b88a6b8SMartin Mares	* pci.ids: Killed duplicate entry. Thanks to Stephen Williams
15724b88a6b8SMartin Mares	<[email protected]> for reporting this.
15734b88a6b8SMartin Mares
15744b88a6b8SMartin MaresSun Jun  7 19:27:51 1998  Martin Mares  <[email protected]>
15754b88a6b8SMartin Mares
15764b88a6b8SMartin Mares	* lspci.c (main), setpci.c (main): Implemented "--version".
15774b88a6b8SMartin Mares
15784b88a6b8SMartin Mares	* Released as 1.04.
15794b88a6b8SMartin Mares
15804b88a6b8SMartin Mares	* pciutils.h (PCIUTILS_VERSION): Added version string.
15814b88a6b8SMartin Mares
15824b88a6b8SMartin Mares	* filter.c, names.c: Extraneous #include <linux/pci.h> removed.
15834b88a6b8SMartin Mares	Thanks to Geert Uytterhoeven <[email protected]>
15844b88a6b8SMartin Mares	for bug report.
15854b88a6b8SMartin Mares
15869b306998SMartin MaresThu May 28 14:45:58 1998  Martin Mares  <[email protected]>
15879b306998SMartin Mares
15889b306998SMartin Mares	* pci.ids: More updates from Jens Maurer.
15899b306998SMartin Mares
1590b372672fSMartin MaresWed Apr 22 10:00:39 1998  Martin Mares  <[email protected]>
1591b372672fSMartin Mares
1592b372672fSMartin Mares	* pci.ids: Updates from Jens Maurer.
1593b372672fSMartin Mares
1594b2c9b373SMartin MaresSun Apr 19 11:14:25 1998  Martin Mares  <[email protected]>
1595b2c9b373SMartin Mares
1596b372672fSMartin Mares	* Released as 1.03.
1597b372672fSMartin Mares
1598b2c9b373SMartin Mares	* setpci.8: Written.
1599b2c9b373SMartin Mares
1600b2c9b373SMartin Mares	* setpci.c: Finished.
1601b2c9b373SMartin Mares
1602b2c9b373SMartin Mares	* lspci.c: Now able to fetch expansion ROM base from kernel device list
1603b2c9b373SMartin Mares	and print it if not in buscentric mode.
1604b2c9b373SMartin Mares
1605e4842ff3SMartin MaresTue Mar 31 23:11:57 1998  Martin Mares  <[email protected]>
1606e4842ff3SMartin Mares
1607e4842ff3SMartin Mares	* setpci.c: Added.
1608e4842ff3SMartin Mares
1609e4842ff3SMartin MaresSun Mar 22 15:39:08 1998  Martin Mares  <[email protected]>
1610e4842ff3SMartin Mares
1611e4842ff3SMartin Mares	* lspci.8: Updated the documentation.
1612e4842ff3SMartin Mares
1613e4842ff3SMartin Mares	* lspci.c: Modified to use the new filtering mechanism (options -f and -d).
1614e4842ff3SMartin Mares
1615e4842ff3SMartin Mares	* filter.c: Introduced new generic device filter.
1616e4842ff3SMartin Mares
1617008407bdSMartin MaresThu Mar 19 17:03:48 1998  Martin Mares  <[email protected]>
1618008407bdSMartin Mares
1619008407bdSMartin Mares	* lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying
1620008407bdSMartin Mares	of PCI-to-PCI bridges in the tree format.
1621008407bdSMartin Mares
16220a33d0ecSMartin MaresSun Feb 15 10:12:25 1998  Martin Mares  <[email protected]>
16230a33d0ecSMartin Mares
16240a33d0ecSMartin Mares	* lspci.c (show_machine): Added non-verbose mode of machine-readable
16250a33d0ecSMartin Mares	dump.
16260a33d0ecSMartin Mares
16270a33d0ecSMartin Mares	* pci.ids: Updates from Jens Maurer.
16280a33d0ecSMartin Mares
16290a33d0ecSMartin Mares	* Released as version 1.02.
16300a33d0ecSMartin Mares
16310a33d0ecSMartin MaresThu Feb 12 16:53:28 1998  Martin Mares  <[email protected]>
16320a33d0ecSMartin Mares
16330a33d0ecSMartin Mares	* lspci.c: Added a "-m" switch for dumping machine-readable
16340a33d0ecSMartin Mares	configuration data (requested by Bjoern Kriews <[email protected]>).
16350a33d0ecSMartin Mares
1636fb38eee8SMartin MaresMon Feb  9 13:17:43 1998  Martin Mares  <[email protected]>
1637fb38eee8SMartin Mares
1638fb38eee8SMartin Mares	* Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h>
1639fb38eee8SMartin Mares	if available. This should avoid all problems with official kernel
1640fb38eee8SMartin Mares	not synchronized to newer PCI code in CVS -- standard distribution
1641fb38eee8SMartin Mares	of pciutils now contains pci.h from current CVS kernel, pciutils
1642fb38eee8SMartin Mares	in CVS contain no pci.h and use the correct kernel include.
1643fb38eee8SMartin Mares
1644fb38eee8SMartin Mares	* Makefile: Fixed installation path for man pages.
1645fb38eee8SMartin Mares
16462f48f637SMartin MaresSat Feb  7 15:15:46 1998  Martin Mares  <[email protected]>
16472f48f637SMartin Mares
16482f48f637SMartin Mares	* README: Updated.
16492f48f637SMartin Mares
16502f48f637SMartin Mares	* lspci.8: Created a man page.
16512f48f637SMartin Mares
16522f48f637SMartin Mares	* Releasing as version 1.0.
16532f48f637SMartin Mares
16542f48f637SMartin MaresTue Feb  3 20:56:00 1998  Martin Mares  <[email protected]>
16552f48f637SMartin Mares
16562f48f637SMartin Mares	* Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx
16572f48f637SMartin Mares	to all the C sources. This should eliminate problems with 32-bit compilers
16582f48f637SMartin Mares	on sparc64.
16592f48f637SMartin Mares
16602f48f637SMartin Mares	* lspci.c (show_verbose): Recognize CardBus bridge header type.
16612f48f637SMartin Mares	(show_htype2): Stub routine.
16622f48f637SMartin Mares	(scan_config): Write sensible error message if the kernel denies reading of
16632f48f637SMartin Mares	upper part of the PCI config space.
1664