xref: /pciutils/ChangeLog (revision cd2f6a34)
1*cd2f6a34SMartin Mares2008-02-20  Martin Mares <[email protected]>
2*cd2f6a34SMartin Mares
3*cd2f6a34SMartin Mares	* Released as 2.99.1-alpha2.
4*cd2f6a34SMartin Mares
5*cd2f6a34SMartin Mares	* Changed the default domain for the DNS resolver.
6*cd2f6a34SMartin Mares
7165a50cbSMartin Mares2008-02-18  Martin Mares <[email protected]>
8165a50cbSMartin Mares
9165a50cbSMartin Mares	* Released as 2.99.1-alpha1.
10623234ecSMartin Mares
11a1fca487SMartin Mares	* The makefile system has been reworked. All configuration settings
12a1fca487SMartin Mares	are now passed to the configure script in environment variables,
13a1fca487SMartin Mares	allowing for easy tweaking in the top-level Makefile. All control
14a1fca487SMartin Mares	knobs are now described in the README.
15a1fca487SMartin Mares
16a1fca487SMartin Mares	* The libpci can be built as a shared library with properly restricted
17a1fca487SMartin Mares	symbol exports. Use `make SHARED=yes' to enable that or `make SHARED=local'
18a1fca487SMartin Mares	for a local testing build (with hardwired paths to the library, so that
19a1fca487SMartin Mares	it does not need installation).
20a1fca487SMartin Mares
21a1fca487SMartin Mares	* The example program has been moved from lib/example.c to the top-level
22a1fca487SMartin Mares	directory, because it should be built exactly as the other utilities
23a1fca487SMartin Mares	are. It has been also improved slightly to educate better.
24a1fca487SMartin Mares
25623234ecSMartin Mares	* The i386-ports method is enabled on Linux/x86_64 as well.
26623234ecSMartin Mares
27ae27e293SMartin Mares2008-02-13  Martin Mares <[email protected]>
28ae27e293SMartin Mares
29ae27e293SMartin Mares	* Released as 2.2.10-net2.
30ae27e293SMartin Mares
31ae27e293SMartin Mares	* Support for resolving of PCI ID's using DNS together with a local
32ae27e293SMartin Mares	cache of resolved entries has been added. See the `-q' and `-Q' options
33ae27e293SMartin Mares	of lspci.
34ae27e293SMartin Mares
35ae27e293SMartin Mares	* The library now has a generic system of settable parameters, which
36ae27e293SMartin Mares	also include settings of the DNS resolver and cache. An `-O' option
37ae27e293SMartin Mares	has been added to lspci and setpci to allow setting of these options.
38ae27e293SMartin Mares
39ae27e293SMartin Mares	* Configuration of the access methods are now specified by the new
40ae27e293SMartin Mares	parameter system, replacing the pci_access->method_params array.
41ae27e293SMartin Mares
42ae27e293SMartin Mares	* Access methods now also have sensible names and help texts and it
43ae27e293SMartin Mares	is possible to look up method ID by a name.
44ae27e293SMartin Mares
45ae27e293SMartin Mares	* An `-A' switch has been added to both lspci and setpci, allowing to
46ae27e293SMartin Mares	select an arbitrary access method. The `-P' switch (configure proc
47ae27e293SMartin Mares	backend) has been removed as it is no longer needed and I do not know
48ae27e293SMartin Mares	any its user.
49ae27e293SMartin Mares
50ae27e293SMartin Mares	* Several source files have been split for better maintainability
51ae27e293SMartin Mares	(most notably the resolving of ID's).
52ae27e293SMartin Mares
53ae27e293SMartin Mares	* Man pages and help texts have been updated. A new man page `pcilib(7)'
54ae27e293SMartin Mares	has been added and description of library options has been moved there.
55ae27e293SMartin Mares
56ae27e293SMartin Mares	* When an unknown device ID is encountered, we print `Device <id>'
57ae27e293SMartin Mares	instead of `Unknown device <id>'. It uses less space and it also
58ae27e293SMartin Mares	should reduce the number of inexperienced users complaining that
59ae27e293SMartin Mares	the device is not supported by the OS. To lookup up OS drivers,
60ae27e293SMartin Mares	use the `-k' option.
61ae27e293SMartin Mares
62ae27e293SMartin Mares	* PCI_LIB_VERSION has been bumped to 0x020299.
63ae27e293SMartin Mares
64ae27e293SMartin Mares	* Makefile: stripping of the binaries during installation can be
65ae27e293SMartin Mares	overridden by the STRIP variable.
66ae27e293SMartin Mares
67ae27e293SMartin Mares	* lib/types.h: We use the integer types from <stdint.h> if the
68ae27e293SMartin Mares	compiler claims C99 support.
69ae27e293SMartin Mares
700fc3bd18SMartin Mares2008-02-11  Martin Mares <[email protected]>
710fc3bd18SMartin Mares
722466b14bSMartin Mares	* Released as 2.2.10.
732466b14bSMartin Mares
746add52f5SMartin Mares	* lspci.c, setpci.c: Cleaned up the list of options.
756add52f5SMartin Mares
760fc3bd18SMartin Mares	* lib/names.c: Fix displaying of errors reported by zlib.
770fc3bd18SMartin Mares	Previously, the buffer containing the error message had
780fc3bd18SMartin Mares	been deallocated by gzclose() before the message was printed.
790fc3bd18SMartin Mares
80d26b5378SMartin Mares2008-01-07  Martin Mares <[email protected]>
81d26b5378SMartin Mares
82d26b5378SMartin Mares	* update-pciids.sh: Added quiet mode (-q). Clean up uncompressed
83d26b5378SMartin Mares	files left by previous versions of the pciutils. Patch by Mike
84d26b5378SMartin Mares	Frysinger.
85d26b5378SMartin Mares
86d26b5378SMartin Mares	* update-pciids.man: Mention the -q switch.
87d26b5378SMartin Mares
88dc01dd60SMartin Mares2007-11-29  Martin Mares <[email protected]>
89dc01dd60SMartin Mares
90dc01dd60SMartin Mares	* lib/dump.c: Squashed compiler warnings about code with
91dc01dd60SMartin Mares	no effect (there really were surplus *'s).
92dc01dd60SMartin Mares
9311339c0dSMartin Mares2007-11-06  Martin Mares <[email protected]>
9411339c0dSMartin Mares
9513463566SMartin Mares	* Released as 2.2.9.
9613463566SMartin Mares
9711339c0dSMartin Mares	* lspci.c: Added a new switch `-k' which requests printing
9811339c0dSMartin Mares	of information on kernel drivers attached to each device
9911339c0dSMartin Mares	and on kernel modules reporting the ability to handle the
10011339c0dSMartin Mares	device. So far, this is supported only on Linux with the
10111339c0dSMartin Mares	sysfs back-end, so it is implemented internally in the lspci
10211339c0dSMartin Mares	instead of the libpci. Thanks to Anicka <[email protected]>
10311339c0dSMartin Mares	for help.
10411339c0dSMartin Mares
1053de798bdSMartin Mares2007-10-19  Martin Mares <[email protected]>
1063de798bdSMartin Mares
1076cdb9d93SMartin Mares	* Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS.
1086cdb9d93SMartin Mares	Also added an explicit pattern rule for linking to make sure
1096cdb9d93SMartin Mares	that LDLIBS is used on all platforms. Thanks to Dan Nicholson
1106cdb9d93SMartin Mares	for the suggestion.
1116cdb9d93SMartin Mares
1126cdb9d93SMartin Mares2007-10-19  Martin Mares <[email protected]>
1136cdb9d93SMartin Mares
114a404b115SMartin Mares	* Released as 2.2.8.
115a404b115SMartin Mares
1163de798bdSMartin Mares	* pci.ids: Revised class codes to match Conventional PCI 3.0 specs.
1173de798bdSMartin Mares	Added a couple of new ones, renumbered `ADMA continuous operation'
1183de798bdSMartin Mares	prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention
1193de798bdSMartin Mares	0x40) and renumbered the satellite communication controllers.
1203de798bdSMartin Mares
1212d2c4810SMartin Mares	* lib/header.h: Include `PCI hot-plug' and `Secure device'
122f7c76ec5SMartin Mares	capabilities from PCI 3.0 specs. Also added `SATA HBA' and
123f7c76ec5SMartin Mares	`Advanced features' caps from various ECN's.
1242d2c4810SMartin Mares
125fa2273caSMartin Mares	* lspci.c: All known capabilities have at least their name displayed
126fa2273caSMartin Mares	now. When we are unable to decode them completely, we signalize it
127fa2273caSMartin Mares	with a `<?>' mark.
128fa2273caSMartin Mares
129fa2273caSMartin Mares	* lspci.man: Document `<?>' and also mention that extended config
130fa2273caSMartin Mares	space is currently available only with the linux_sysfs back-end.
131fa2273caSMartin Mares
13231c9bb28SMartin Mares	* lspci.c: Decode the Debug port capability (per EHCI 0.96 spec).
13331c9bb28SMartin Mares
134a387042eSMartin Mares	* lspci.c: Big code cleanup: re-arranged functions in the code,
135a387042eSMartin Mares	renamed everything related to capabilities to cap_* and
136a387042eSMartin Mares	all options except verbose to opt_*.
137a387042eSMartin Mares
1389c79fcc4SMartin Mares2007-10-14  Martin Mares <[email protected]>
1399c79fcc4SMartin Mares
1409c79fcc4SMartin Mares	* lib/[fno]bsd-*: Removed extraneous braces.
1419c79fcc4SMartin Mares
142d5b4cd14SMartin Mares2007-10-12  Martin Mares <[email protected]>
143d5b4cd14SMartin Mares
144d5b4cd14SMartin Mares	* Capability loop detection introduced 2.2.7 did not work
145d5b4cd14SMartin Mares	  properly with extended capabilities. Fixed.
146d5b4cd14SMartin Mares
147594de878SMartin Mares2007-10-05  Martin Mares <[email protected]>
148594de878SMartin Mares
1498a23eadcSMartin Mares	* Released as 2.2.7.
1508a23eadcSMartin Mares
151594de878SMartin Mares	* lspci.c (show_caps, show_ext_caps): Detect and report loops in
152594de878SMartin Mares	capability lists.
153594de878SMartin Mares
1548a23eadcSMartin Mares	* lspci.c, lib/header.h: Finished decoding of the PCI Express
1558a23eadcSMartin Mares	capability. The extended capabilities remain undecoded for now,
1568a23eadcSMartin Mares	but at least the list of them has been updated to reflect the
1578a23eadcSMartin Mares	current PCI Express 2.0 spec.
1588a23eadcSMartin Mares
1598a23eadcSMartin Mares	* lspci.c, lib/header.h: Decode new bits of traditional registers
1608a23eadcSMartin Mares	as defined by PCIE / PCI-X. This includes discard timers in the bridge
1618a23eadcSMartin Mares	control register and INTx enable/status in device control/status
1628a23eadcSMartin Mares	registers.
1638a23eadcSMartin Mares
1648a23eadcSMartin Mares	* lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed
1658a23eadcSMartin Mares	by Marius Strobl.
1668a23eadcSMartin Mares
16799091df9SMartin Mares2007-09-12  Hasso Tepper <[email protected]>
16899091df9SMartin Mares
16999091df9SMartin Mares	* Extended the fbsd-device backend to run on Dragonfly BSD.
17099091df9SMartin Mares
17199091df9SMartin Mares	* lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>.
17299091df9SMartin Mares
17309156b3bSMartin Mares2007-09-03  Martin Mares <[email protected]>
17409156b3bSMartin Mares
17509156b3bSMartin Mares	* Resurrected the Windows port, including cross-compilation by MinGW.
17609156b3bSMartin Mares	Patch by Samuel Bronson <[email protected]>.
17709156b3bSMartin Mares
178325a3c50SMartin Mares2007-08-31  Martin Mares <[email protected]>
179325a3c50SMartin Mares
180325a3c50SMartin Mares	* Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to allow
181325a3c50SMartin Mares	cross-compilation.
182325a3c50SMartin Mares
183a2322147SMartin Mares2007-08-27  Martin Mares  <[email protected]>
184a2322147SMartin Mares
185a2322147SMartin Mares	* lib/names.c (pci_open): When calling gzopen(), use "rb" file mode
186a2322147SMartin Mares	instead of "r". This is needed on DOS systems, where this function
187a2322147SMartin Mares	somewhat illogically uses the binary flag for the compressed file
188a2322147SMartin Mares	instead of the decompressed stream inside, where binariness really
189a2322147SMartin Mares	matters.
190a2322147SMartin Mares
1914f2c5b94SMartin Mares2007-08-14  Martin Mares  <[email protected]>
1924f2c5b94SMartin Mares
1934f2c5b94SMartin Mares	* lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability,
1944f2c5b94SMartin Mares	based on a patch by Jason Gunthorpe.
1954f2c5b94SMartin Mares
1964f2c5b94SMartin Mares	* tests/cap-MSI-mapping: Added a test case. I plan to add test cases
1974f2c5b94SMartin Mares	(which are dumps of config space) for all new features.
1984f2c5b94SMartin Mares
1990d7f5331SMartin Mares2007-06-20  Martin Mares  <[email protected]>
2000d7f5331SMartin Mares
2017cebe481SMartin Mares	* Released as 2.2.6.
2027cebe481SMartin Mares
2030d7f5331SMartin Mares	* Makefile: Added an "install-lib" target. Thanks to Dan Nicholson
2040d7f5331SMartin Mares	for a patch.
2050d7f5331SMartin Mares
2067cebe481SMartin Mares	* Makefile, lib/Makefile: Generate and install pkg-config file
2077cebe481SMartin Mares	for libpci. Again by Dan Nicholson.
2087cebe481SMartin Mares
2090d7f5331SMartin Mares2007-06-20  Thomas Schwinge  <[email protected]>
2100d7f5331SMartin Mares
2110d7f5331SMartin Mares	* lib/i386-io-hurd.h: Rewritten for new Hurd kernels.
2120d7f5331SMartin Mares
2136e4a45edSMartin Mares2007-05-04  Martin Mares  <[email protected]>
2146e4a45edSMartin Mares
21555c89179SMartin Mares	* Released as 2.2.5.
21655c89179SMartin Mares
2176e4a45edSMartin Mares	* pci.ids: Updated to the current snapshot of the database.
2186e4a45edSMartin Mares
219d0b07542SMartin Mares2007-02-14  Martin Mares  <[email protected]>
220d0b07542SMartin Mares
221d0b07542SMartin Mares	* lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type.
222d0b07542SMartin Mares	Patch by Mark Glines.
223d0b07542SMartin Mares
2243df35926SMartin Mares2007-02-09  Martin Mares  <[email protected]>
2253df35926SMartin Mares
2263df35926SMartin Mares	* pci.ids: Updated to the current snapshot of the database.
2273df35926SMartin Mares
228e49ed044SMartin Mares2007-02-06  Martin Mares  <[email protected]>
229e49ed044SMartin Mares
2301ac3a99dSMartin Mares	* Replaced bzero() by memset() everywhere, it's better to lose a tiny
2311ac3a99dSMartin Mares	bit of readability than maintain hacks to make it work on various systems.
2321ac3a99dSMartin Mares
233b0eb18ccSMartin Mares	* lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]'
234b0eb18ccSMartin Mares	instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise.
235b0eb18ccSMartin Mares
236e49ed044SMartin Mares	* lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise
237e49ed044SMartin Mares	integer types.
238e49ed044SMartin Mares
2399de2768cSMartin Mares2007-02-04  Martin Mares  <[email protected]>
2409de2768cSMartin Mares
2419de2768cSMartin Mares	* lspci.c: alloca() needs <alloca.h>.
2429de2768cSMartin Mares
243d19394dbSMartin Mares2006-09-17  Martin Mares  <[email protected]>
244d19394dbSMartin Mares
245d19394dbSMartin Mares	* lib/dump.c: Fixed a couple of bugs in the dump backend which caused
246d19394dbSMartin Mares	devices with domains or with extended config space to be read incorrectly.
247d19394dbSMartin Mares	Also, dumps with partial lines are allowed now.
248d19394dbSMartin Mares
249934e7e36SMartin Mares2006-09-10  Martin Mares  <[email protected]>
250934e7e36SMartin Mares
251f09856deSMartin Mares	* pci.ids: Updated to the current database snapshot.
252f09856deSMartin Mares
253934e7e36SMartin Mares	* lspci.c (scan_device): If an error occurs when reading the standard config
254934e7e36SMartin Mares	header of a device, report it and ignore the device and return with exit
255934e7e36SMartin Mares	code 2 at the end.
256934e7e36SMartin Mares
257b2055313SMartin Mares2006-09-09  Martin Mares  <[email protected]>
258b2055313SMartin Mares
259fb260653SMartin Mares	* Released as 2.2.4.
260fb260653SMartin Mares
2611865e2ddSMartin Mares	* maint/release: Remind the maintainer about the current PCI_LIB_VERSION.
2621865e2ddSMartin Mares
263028dffb2SMartin Mares	* lib/pci.h: Updated PCI_LIB_VERSION.
264028dffb2SMartin Mares
26513081e57SMartin Mares	* lspci.c (show_machine): In the `-m' mode, do proper shell escaping
26613081e57SMartin Mares	if the fields printed contain quotes or backslashes.
26713081e57SMartin Mares
2683fd6b4d2SMartin Mares	* lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse
2693fd6b4d2SMartin Mares	of the `Device' tag for two different purposes.
2703fd6b4d2SMartin Mares
271840d09aeSMartin Mares	* Makefile: Moved all system-dependent decisions to lib/configure,
272840d09aeSMartin Mares	since config.mk is included in the top-level Makefile anyway.
273840d09aeSMartin Mares
2742100f710SMartin Mares	* lib/configure: When configuring for Linux, ignore the kernel version
2752100f710SMartin Mares	and always build all access methods.
2762100f710SMartin Mares
2773e9c7a18SMartin Mares	* Makefile (CFLAGS): Removed -Winline, it's not needed and triggers
2783e9c7a18SMartin Mares	at many non-interesting places with gcc 3.4.
2793e9c7a18SMartin Mares
28094db5c82SMartin Mares	* Whitespace cleanup of all source files.
28194db5c82SMartin Mares
282cc062b4aSMartin Mares	* The pci.ids file can be stored compressed if zlib is available.
283cc062b4aSMartin Mares	Added transparent decompression to lib/names.c, modified update-pciids.sh
284cc062b4aSMartin Mares	to keep the file compressed if applicable, updated Makefiles.
285cc062b4aSMartin Mares	Based on a patch by Matthew Wilcox, but all the bugs are mine.
286cc062b4aSMartin Mares
287f4ddb8d3SMartin Mares	* Makefile, README: Allow installation to be done to a different directory
288f4ddb8d3SMartin Mares	from the one we will eventually be placed in by setting DESTDIR.
289f4ddb8d3SMartin Mares	Patch by Matthew Wilcox.
290f4ddb8d3SMartin Mares
29116e37012SMartin Mares	* Added .gitignore files.
29216e37012SMartin Mares
293c7f5314dSMartin Mares	* Makefile (clean): Clean *.orig, too.
294c7f5314dSMartin Mares
295afebde01SMartin Mares	* Cleaned up usage of `char' and `byte'.
296afebde01SMartin Mares
297fd54ccebSMartin Mares	* lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01.
298fd54ccebSMartin Mares
299b2055313SMartin Mares	* lib/header.h: Added PCI_CLASS_xxx constants for all classes currently
300b2055313SMartin Mares	defined in the pci.ids file.
301b2055313SMartin Mares
3024254d153SMartin Mares2006-08-01  Martin Mares  <[email protected]>
3034254d153SMartin Mares
3044254d153SMartin Mares	* lib/i386-io-hurd.h: Fixed a silly typo.
3054254d153SMartin Mares
3061c5cc9b5SMartin Mares2006-07-30  Martin Mares  <[email protected]>
3071c5cc9b5SMartin Mares
30838a9e3c3SMartin Mares	* lib/Makefile: Added a missing rule for obsd-device.o.
30938a9e3c3SMartin Mares
310c7ddfa3eSMartin Mares	* lspci.c, lib/header.h: Added support for MSI per-vector masking.
311c7ddfa3eSMartin Mares	Contributed by Petr Vandrovec.
312c7ddfa3eSMartin Mares
313248a04f8SMartin Mares	* lspci.c, lib/header.h: Added support for the `bridge subsystem ID'
314248a04f8SMartin Mares	capability. Contributed by Petr Vandrovec.
315248a04f8SMartin Mares
316f29dcc87SMartin Mares	* lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable
317f29dcc87SMartin Mares	memory windows. Fix by Petr Vandrovec.
318f29dcc87SMartin Mares
3198eab3bffSMartin Mares	* maint/release.pm: Exclude .git directory from releases.
3208eab3bffSMartin Mares
321d305d704SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Report failures during port access
322d305d704SMartin Mares	initialization by a->warn() instead of calling printf() or perror()
323d305d704SMartin Mares	directly.
324d305d704SMartin Mares
3259007a292SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of
3269007a292SMartin Mares	the port access state to generic code.
3279007a292SMartin Mares
328bd20d5b5SMartin Mares	* lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately.
329bd20d5b5SMartin Mares	Contributed by Thomas Schwinge and Samuel Thibault.
330bd20d5b5SMartin Mares
33173750606SMartin Mares	* lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module.
33273750606SMartin Mares
333d71daa45SMartin Mares	* lib/header.h: Whitespace cleanups.
334d71daa45SMartin Mares
3351c5cc9b5SMartin Mares	* lib/i386-io-windows.h: Fixed indentation and spelling.
3361c5cc9b5SMartin Mares
3371c5cc9b5SMartin Mares	* README.Windows: Mention that WinIO.dll is needed and where to get it.
3381c5cc9b5SMartin Mares
339c2b144efSMartin Mares2006-06-27  Martin Mares  <[email protected]>
340c2b144efSMartin Mares
34114d4f989SMartin Mares	* lib/Makefile, Makefile: Added rules for building and cleaning the example.
34214d4f989SMartin Mares
34314d4f989SMartin Mares	* lib/example.c: Show how to use PCI_FILL_CLASS and used another register
34414d4f989SMartin Mares	for demonstrating the config space accesses. The example is still very
34514d4f989SMartin Mares	incomplete, though.
34614d4f989SMartin Mares
347c2b144efSMartin Mares	* lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS.
348c2b144efSMartin Mares
349c2b144efSMartin Mares	* lib/sysfs.c: Fetch device ID and class from sysfs, because they can
350c2b144efSMartin Mares	be modified by kernel fixups.
351c2b144efSMartin Mares
352c2b144efSMartin Mares	* lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch.
353c2b144efSMartin Mares
354bc2eed2dSMartin Mares2006-06-03  Martin Mares  <[email protected]>
355bc2eed2dSMartin Mares
356bc2eed2dSMartin Mares	* lspci.c: Introduced the -nn switch. Thanks to David N. Welton
357bc2eed2dSMartin Mares	for the idea.
358bc2eed2dSMartin Mares
359bc2eed2dSMartin Mares	* lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and
360bc2eed2dSMartin Mares	cleaned up the name selection code.
361bc2eed2dSMartin Mares
362c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given,
363c72eeddeSMartin Mares	pci_access->numeric_ids is ignored.
364c72eeddeSMartin Mares
365c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): When class is identified and
366c72eeddeSMartin Mares	subclass isn't, display class name and subclass number.
367c72eeddeSMartin Mares
3682f294d4bSMartin Mares2006-05-31  Martin Mares  <[email protected]>
3692f294d4bSMartin Mares
3702f294d4bSMartin Mares	* setpci.c (main): Don't crash when an invalid width is specified.
3712f294d4bSMartin Mares
37281afa98cSMartin Mares	* lspci.c, setpci.c, common.c: die() now uses the right program
37381afa98cSMartin Mares	name when printing an error message.
37481afa98cSMartin Mares
3750ac282f2SMartin Mares2006-05-19  Martin Mares  <[email protected]>
3760ac282f2SMartin Mares
3770ac282f2SMartin Mares	* README: Mention the public GIT tree.
3780ac282f2SMartin Mares
3790ac282f2SMartin Mares	* README: Updated the list of ports.
3800ac282f2SMartin Mares
381d1058e9dSMartin Mares2006-05-10  Martin Mares  <[email protected]>
382d1058e9dSMartin Mares
383d1058e9dSMartin Mares	* lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD.
384d1058e9dSMartin Mares	Thanks to Petr Salinger for the patch.
385d1058e9dSMartin Mares
386abf8d505SMartin Mares2006-05-05  Martin Mares  <[email protected]>
387abf8d505SMartin Mares
3882ae2d1aeSMartin Mares	* Released as 2.2.3.
3892ae2d1aeSMartin Mares
3902ae2d1aeSMartin Mares	* lspci.c (scan_device): The -D switch didn't work as intended
3912ae2d1aeSMartin Mares	in -m mode.
3922ae2d1aeSMartin Mares
3932ae2d1aeSMartin Mares2006-05-05  Martin Mares  <[email protected]>
3942ae2d1aeSMartin Mares
3951d5cf727SMartin Mares	* Released as 2.2.2.
3961d5cf727SMartin Mares
3978a830168SMartin Mares	* pci.ids: Updated to the current database snapshot.
3988a830168SMartin Mares
399b6359063SMartin Mares	* lib/obsd-device.c (and other files in lib/*): Added OpenBSD
400b6359063SMartin Mares	interface by Matthieu Herrb <[email protected]>, based on
401b6359063SMartin Mares	the existing FreeBSD interface.
402b6359063SMartin Mares
403abf8d505SMartin Mares	* Moved pciutils to a GIT repository, which now contains merged
404abf8d505SMartin Mares	history from both CVS and Arch. Good bye, TLA!
405abf8d505SMartin Mares
4066ac70402SMartin Mares2006-03-21  Martin Mares  <[email protected]>
4076ac70402SMartin Mares
4082a124daeSMartin Mares	* lspci.c (show_slot_name): Avoid the previous changes in default
4092a124daeSMartin Mares	display of domain name when in machine-readable mode. However, `-D'
4102a124daeSMartin Mares	forces domain display even there.
4112a124daeSMartin Mares
4126ac70402SMartin Mares	* lspci.man: Added a warning on -m being the only format, which is
4136ac70402SMartin Mares	guaranteed to be stable between lspci versions.
4146ac70402SMartin Mares
4151bbdea17SMartin Mares2006-03-13  Martin Mares  <[email protected]>
4161bbdea17SMartin Mares
417af61eb25SMartin Mares	* lspci.man: Documented the -D switch.
418af61eb25SMartin Mares
419af61eb25SMartin Mares	* lspci.c (show_slot_name, scan_device): If there are multiple PCI
420af61eb25SMartin Mares	domains or if the `-D' switch is used, show the domain number for
421af61eb25SMartin Mares	all devices.
422af61eb25SMartin Mares
4237a61b93cSMartin Mares	* lspci.c (show_verbose): Report cache line size in bytes.
4247a61b93cSMartin Mares
4251bbdea17SMartin Mares	* update-pciids.sh: Use curl if available. Patch by Matthew Wilcox.
4261bbdea17SMartin Mares
4270e78ef8aSMartin Mares2006-01-04  Martin Mares  <[email protected]>
4280e78ef8aSMartin Mares
4290e78ef8aSMartin Mares	* lspci.c (show_express_link): Fixed decoding of link status register.
4300e78ef8aSMartin Mares	Thanks to Roland Dreier for his report.
4310e78ef8aSMartin Mares
432e6859953SMartin Mares2005-12-12  Martin Mares  <[email protected]>
433e6859953SMartin Mares
434e6859953SMartin Mares	* lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow
435e6859953SMartin Mares	at least read-only access. Patch by Pavel Celeda <[email protected]>.
436e6859953SMartin Mares
437e6859953SMartin Mares	* Makefile: Corrected library path on NetBSD.
438e6859953SMartin Mares
439a99c0d69SMartin Mares2005-11-26  Martin Mares  <[email protected]>
440a99c0d69SMartin Mares
441e4af70c6SMartin Mares	* Released as 2.2.1.
442e4af70c6SMartin Mares
443a99c0d69SMartin Mares	* lspci.c (show_machine): Subsystem vendors were printed incorrectly
444a99c0d69SMartin Mares	in machine-readable modes. Thanks to Pavel Celeda for a bug report.
445a99c0d69SMartin Mares
446f23fd3fcSMartin Mares2005-10-11  Martin Mares  <[email protected]>
447f23fd3fcSMartin Mares
448f23fd3fcSMartin Mares	* lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it.
449f23fd3fcSMartin Mares
45015296723SMartin Mares2005-09-21  Martin Mares  <[email protected]>
45115296723SMartin Mares
45215296723SMartin Mares	* Released as 2.2.0.
45315296723SMartin Mares
45440b6d93fSMartin Mares	* pci.ids: Updated copyright header.
45540b6d93fSMartin Mares
45615296723SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported
45715296723SMartin Mares	64-bit addresses, they are now always supported.
45815296723SMartin Mares
45915296723SMartin Mares	* lspci.c (show_bases): Corrected printing of 64-bit addresses
46015296723SMartin Mares	in bus-centric mode.
46115296723SMartin Mares
46215296723SMartin Mares	* lib/configure: Enable 64-bit addresses on all Linux systems.
46315296723SMartin Mares
46415296723SMartin Mares	* lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they
46515296723SMartin Mares	are shorter.
46615296723SMartin Mares
467224707baSMartin Mares2005-09-11  Martin Mares  <[email protected]>
468224707baSMartin Mares
469224707baSMartin Mares	* Released as 2.1.99-test11.
470224707baSMartin Mares
471224707baSMartin Mares	* lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls.
472224707baSMartin Mares
473aeaca5d3SMartin Mares2005-09-10  Martin Mares  <[email protected]>
474aeaca5d3SMartin Mares
475224707baSMartin Mares	* Released as 2.1.99-test10.
476224707baSMartin Mares
47763e6f2e0SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
47863e6f2e0SMartin Mares
479043ebdeeSMartin Mares	* update-pciids.sh: Changed the default URL for downloading pci.ids
480043ebdeeSMartin Mares	to http://pciids.sourceforge.net/v2.2/pci.ids.
481043ebdeeSMartin Mares
482043ebdeeSMartin Mares	* lib/pci.h (PCI_LIB_VERSION): Added version identifier.
483043ebdeeSMartin Mares
484aeaca5d3SMartin Mares	* lib/names.c: Rewritten the name database module almost from scratch.
485aeaca5d3SMartin Mares	Everything is much cleaner and there are hopefully no more memory leaks;
486aeaca5d3SMartin Mares	pci_lookup_name() now uses varargs in a backward compatible fashion.
487aeaca5d3SMartin Mares	Introduced PCI_LOOKUP_NO_NUMBERS.
488aeaca5d3SMartin Mares
489aeaca5d3SMartin Mares	The new code supports subsystem entries not tied to a specific device.
490aeaca5d3SMartin Mares	I had to extend the format of pci.ids in order to support it, so I have
491aeaca5d3SMartin Mares	extended the idea of the "C" (class) blocks and introduced "S" blocks
492aeaca5d3SMartin Mares	for subsystems. To avoid doing more incompatible changes in the future,
493aeaca5d3SMartin Mares	the parser skips unknown single-letter blocks without reporting errors.
494aeaca5d3SMartin Mares
495121c76c9SMartin Mares2005-08-23  Martin Mares  <[email protected]>
496121c76c9SMartin Mares
49754e13765SMartin Mares	* Released as 2.1.99-test9.
49854e13765SMartin Mares
49954e13765SMartin Mares	* Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent
50054e13765SMartin Mares	gcc versions when optimizing anyway.
50154e13765SMartin Mares
50254e13765SMartin Mares	* Made the path to pci.ids customizable and independent on the SHAREDIR.
50354e13765SMartin Mares	Just override IDSDIR in the top-level Makefile.
50454e13765SMartin Mares
50554e13765SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
50654e13765SMartin Mares
50784d437d6SMartin Mares	* lspci.man, setpci.man: Improved the man pages. Documented all access
50884d437d6SMartin Mares	methods and which operations are privileged.
50984d437d6SMartin Mares
51084d437d6SMartin Mares	* lspci.c: Another rewrite of config register caching, now also including
51184d437d6SMartin Mares	lots of internal checks. It should be now perfectly able to cope with
51284d437d6SMartin Mares	portions of the configuration space being inaccessible, for example
51384d437d6SMartin Mares	due to insufficient access rights.
51484d437d6SMartin Mares
5153b8bf739SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X
5163b8bf739SMartin Mares	capabilities. Includes partial support for PCI-X 2.0 (probably incomplete
5173b8bf739SMartin Mares	as I haven't seen the spec).
5183b8bf739SMartin Mares
5193b8bf739SMartin Mares	* lspci.c: Quell warnings about unused parameters.
5203b8bf739SMartin Mares
52184d437d6SMartin Mares	* lspci.c: Removed C++ comments.
52284d437d6SMartin Mares
5233b8bf739SMartin Mares	* lib/header.h: Merged definitions of extended capabilities and some new
5243b8bf739SMartin Mares	PCI-X capability bits from linux-2.6.11/include/pci.h.
5253b8bf739SMartin Mares
5263b8bf739SMartin Mares	* lspci.c (show_caps): Try to scan extended capabilities only if the
5273b8bf739SMartin Mares	device has either PCI-X or PCI Express capability in its normal capability
5283b8bf739SMartin Mares	list.
5293b8bf739SMartin Mares
530f7821e53SMartin Mares	* lib/dump.c (dump_init): Reading of dumps works again. The dump reader
531f7821e53SMartin Mares	now also remembers how much data it has read and refuses attempts to
532f7821e53SMartin Mares	access more than that.
533ea4e5f5dSMartin Mares
53446ea554dSMartin Mares	* setpci.man, lspci.c, README: prefer spelling "buses" over "busses".
53546ea554dSMartin Mares
5368afaab22SMartin Mares	* lspci.c: If alloca() is not available, use xmalloc(), not malloc().
5378afaab22SMartin Mares
538121c76c9SMartin Mares	* lib/configure: Added x86_64 on Linux.
539121c76c9SMartin Mares
540c1c2c30eSMartin Mares2005-08-22  Martin Mares  <[email protected]>
541c1c2c30eSMartin Mares
542b9ca9147SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters.
543b9ca9147SMartin Mares	Thanks to Matthew Wilcox for bug report.
544b9ca9147SMartin Mares
545c1c2c30eSMartin Mares	* lspci.c: Corrected spelling of "Hz" (it was "hz" at several places).
546b9ca9147SMartin Mares	Thanks to Krzysztof Oledzki for pointing that out.
547c1c2c30eSMartin Mares
54826542a0bSMartin Mares2004-08-19  Martin Mares  <[email protected]>
54926542a0bSMartin Mares
55026542a0bSMartin Mares	* pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism,
55126542a0bSMartin Mares	because pciutils by default install to /usr/sbin. Update.
55226542a0bSMartin Mares
5536aa54f1bSMartin Mares2004-08-13  Martin Mares  <[email protected]>
5546aa54f1bSMartin Mares
555aabb0a92SMartin Mares	* Released as 2.1.99-test8.
556aabb0a92SMartin Mares
557f31412d1SMartin Mares	* lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are
558f31412d1SMartin Mares	no longer exported to the outside world.
559f31412d1SMartin Mares
560ee7d8384SMartin Mares	* README.Windows: Updated.
561ee7d8384SMartin Mares
562ee7d8384SMartin Mares	* maint/release: Substitute version number in win32/config.h.
563ee7d8384SMartin Mares
564ee7d8384SMartin Mares	* win32/config.h: Added.
565ee7d8384SMartin Mares
566ee7d8384SMartin Mares	* lib/sysdep.h (bzero, strcasecmp): are macros on Windows.
567ee7d8384SMartin Mares
568ee7d8384SMartin Mares	* compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU
569ee7d8384SMartin Mares	C library for use on systems where the default libraries lack
570ee7d8384SMartin Mares	proper getopt. Currently used by the Windows port.
571ee7d8384SMartin Mares
572ee7d8384SMartin Mares	* lib/sysdep.h, lib/types.h: Updates of the Windows port from
573ee7d8384SMartin Mares	Alexander Stock.
574ee7d8384SMartin Mares
575489233b4SMartin Mares	* lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define
576489233b4SMartin Mares	its own u8, u16, u32, byte and word types and uses what the user
577489233b4SMartin Mares	has supplied instead. With this change, all namespace clashes should
578489233b4SMartin Mares	be gone.
579489233b4SMartin Mares
580489233b4SMartin Mares	* Makefile, lib/Makefile: Updated dependencies.
581489233b4SMartin Mares
582489233b4SMartin Mares	* pciutils.h: Include lib/sysdep.h and move NONRET et al. there.
583489233b4SMartin Mares
584489233b4SMartin Mares	* lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because
585489233b4SMartin Mares	it is included unconditionally in lib/types.h.
586489233b4SMartin Mares
587489233b4SMartin Mares	* Moved system-dependent stuff from lib/internal.h to lib/sysdep.h,
588489233b4SMartin Mares	which is also used by the utilities. Also moved type declarations
589489233b4SMartin Mares	from lib/pci.h to lib/types.h.
590489233b4SMartin Mares
591489233b4SMartin Mares	* All files: Prepend a "PCI_" prefix in front of all configuration
592489233b4SMartin Mares	defines to avoid namespace clashes. CAVEAT: If there is any libpci
593489233b4SMartin Mares	application using the (undocumented) defines, it has to be updated.
594489233b4SMartin Mares
595489233b4SMartin Mares	* lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing
596489233b4SMartin Mares	headers with the kernel a couple of years ago.
597489233b4SMartin Mares
5989bb4b4eaSMartin Mares	* lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6.
5999bb4b4eaSMartin Mares
6006aa54f1bSMartin Mares	* lspci.c (show_rom): Use the same logic for printing disabled
6016aa54f1bSMartin Mares	or unassigned ROM's as we do in show_bases() for the other BAR's.
6026aa54f1bSMartin Mares
6036aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Better reaction to
6046aa54f1bSMartin Mares	invalid 64-bit addresses. Also d->hdrtype should not include
6056aa54f1bSMartin Mares	bit 7, which caused mysterious errors on multi-function devices.
6066aa54f1bSMartin Mares
6076aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Fill in base addresses
6086aa54f1bSMartin Mares	even if the regions are known to be disabled. It is the client's
6096aa54f1bSMartin Mares	job to interpret them. (And it is not a trivial job if you want
6106aa54f1bSMartin Mares	to do it correctly, since you need to check I/O and memory enables
6116aa54f1bSMartin Mares	on all upstream bridges, too.) However, it could be interesting to
6126aa54f1bSMartin Mares	introduce functions for interpreting the addresses and even for
6136aa54f1bSMartin Mares	mapping the regions and doing I/O on them.
6146aa54f1bSMartin Mares
61580e6c636SMartin Mares2004-07-30  Martin Mares  <[email protected]>
61680e6c636SMartin Mares
61780e6c636SMartin Mares	* lspci.c: HyperTransport improvements from Maciej.
61880e6c636SMartin Mares
619d6324891SMartin Mares2004-07-11  Martin Mares  <[email protected]>
620d6324891SMartin Mares
621d6324891SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Arguments now correspond
622d6324891SMartin Mares	to the format string. [Patch by Bill Nottingham]
623d6324891SMartin Mares
624ec25b52dSMartin Mares2004-07-05  Martin Mares  <[email protected]>
625ec25b52dSMartin Mares
626362be683SMartin Mares	* Released as 2.1.99-test7.
627362be683SMartin Mares
628ec25b52dSMartin Mares	* lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but
629ec25b52dSMartin Mares	ended up with rewriting the fetching mechanism to be fully dynamic,
630ec25b52dSMartin Mares	but avoid reading config space registers not explicitly requested.
631ec25b52dSMartin Mares
632ec25b52dSMartin Mares2004-06-29  Matthew Wilcox <[email protected]>
633ec25b52dSMartin Mares
634ec25b52dSMartin Mares	* lspci.c: More work on PCI Express dumping.
635ec25b52dSMartin Mares
636ec25b52dSMartin Mares	* lib/header.h: Updated PCI Express capability definitions.
637ec25b52dSMartin Mares
638ec25b52dSMartin Mares	* lib/proc.c (proc_read): Removed bogus warning.
639ec25b52dSMartin Mares
640ec25b52dSMartin Mares	* common.c (xrealloc): Introduced.
641ec25b52dSMartin Mares
642ec25b52dSMartin Mares	* lspci.man: Added -xxxx.
643ec25b52dSMartin Mares
64409817437SMartin Mares2004-06-27  Martin Mares  <[email protected]>
64509817437SMartin Mares
646d1fa27ebSMartin Mares	* Released as 2.1.99-test6.
647d1fa27ebSMartin Mares
6484d67aa89SMartin Mares	* lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap.
6494d67aa89SMartin Mares	Patch by Roland Dreier <[email protected]>, cleaned up by me.
6504d67aa89SMartin Mares
6514d67aa89SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch()
6524d67aa89SMartin Mares	failures.
6534d67aa89SMartin Mares
6544d67aa89SMartin Mares	* lib/header.h: Added PCI Express extended capabilities. Again by Matthew.
6554d67aa89SMartin Mares
6564d67aa89SMartin Mares	* lspci.c (show_express): Added dumping of PCI Express cap.
6574d67aa89SMartin Mares	Patch by Matthew Wilcox.
6584d67aa89SMartin Mares
6594d67aa89SMartin Mares	* lib/header.h: Added a list of PCI 3.0 capabilities and also details
6604d67aa89SMartin Mares	on PCI Express caps. Patch by Matthew Wilcox <[email protected]>.
6614d67aa89SMartin Mares
66209817437SMartin Mares	* lspci.c (check_root): Gone. No explicit checks for root are needed,
66309817437SMartin Mares	report correct errors reported by the libpci instead.
66409817437SMartin Mares
66509817437SMartin Mares	* lspci.c: Added dumping of the extended config space on "-xxxx".
66609817437SMartin Mares	Better caching of config registers.
66709817437SMartin Mares
66809817437SMartin Mares	* setpci.c (main): Allow access to whole 4096 bytes of the config space.
66909817437SMartin Mares
67009817437SMartin Mares	* lib/sysfs.c, lib/proc.c: Don't print error messages on short reads,
67109817437SMartin Mares	just return the appropriate error code.
67209817437SMartin Mares
67309817437SMartin Mares	* lib: Added support for extended (4096-byte) configuration space,
67409817437SMartin Mares	currently implemented only in Linux proc and sysfs access methods
67509817437SMartin Mares	and of course in the dump reader.
67609817437SMartin Mares
6770d656226SMartin Mares2004-05-29  Martin Mares  <[email protected]>
6780d656226SMartin Mares
679c0eece92SMartin Mares	* Released as 2.1.99-test5.
680c0eece92SMartin Mares
681a2413560SMartin Mares	* lib/pci.h: Windows don't have the standard u_int* types.
682a2413560SMartin Mares
683a2413560SMartin Mares	* lib/internal.h: <sys/param.h> required on Windows for endianity
684a2413560SMartin Mares	macros.
685a2413560SMartin Mares
686a2413560SMartin Mares	* lib/i386-ports.c: Connected i386-io-windows.h.
687a2413560SMartin Mares
688a2413560SMartin Mares	* lspci.c (check_root): geteuid() is not available on Windows.
689a2413560SMartin Mares
690a2413560SMartin Mares	* lib/i386-io-windows.h: Added Windows port contributed by Alexander
691a2413560SMartin Mares	Stock <[email protected]>.
692a2413560SMartin Mares
693a2413560SMartin Mares	* lib/configure: Hopefully fixed SunOS port broken by various
694a2413560SMartin Mares	changes to the configure script.
695a2413560SMartin Mares
6960d656226SMartin Mares	* Makefile, lib/configure: Cross-compilation support, patch by Maciej.
6970d656226SMartin Mares
698138c0385SMartin Mares2004-05-28  Martin Mares  <[email protected]>
699138c0385SMartin Mares
7009f490382SMartin Mares	* Released as 2.1.99-test4.
7019f490382SMartin Mares
702cce2caacSMartin Mares	* lspci.c (show_verbose): Header type 1 is probably legal for all
703cce2caacSMartin Mares	types of bridges, not only for PCI-to-PCI bridges.
704cce2caacSMartin Mares
705b569ef09SMartin Mares	* lspci.c (format_agp_rate): Write "x16", not "x@".
706b569ef09SMartin Mares	(show_agp): rate[] could overflow.
707b569ef09SMartin Mares	Bugs reported by Jakub Bogusz <[email protected]>.
708b569ef09SMartin Mares
709bfc4fe7aSMartin Mares	* lspci.c (show_ht_*): Show HyperTransport capability with all its
710bfc4fe7aSMartin Mares	details. Once again code by Maciej simplified (i.e., possibly broken)
711bfc4fe7aSMartin Mares	by me.
712bfc4fe7aSMartin Mares
713bfc4fe7aSMartin Mares	* lib/header.h: Added declarations of HyperTransport capability.
714bfc4fe7aSMartin Mares	Again thanks to Maciej.
715bfc4fe7aSMartin Mares
716138c0385SMartin Mares	* lspci.c: Decode all bits of the secondary status word in type 1 headers.
717138c0385SMartin Mares	Thanks to Maciej W. Rozycki <[email protected]> for the patch.
718138c0385SMartin Mares
7198fc75dbcSMartin Mares2003-12-27  Martin Mares  <[email protected]>
7208fc75dbcSMartin Mares
72181abd2a7SMartin Mares	* Released as 2.1.99-test3.
72281abd2a7SMartin Mares
7231f7c91ccSMartin Mares	* lspci.man, setpci.man: Document domains and correct spelling.
7241f7c91ccSMartin Mares
7251f7c91ccSMartin Mares	* lib/dump.c (dump_init): Added ability to read domain numbers.
7261f7c91ccSMartin Mares
72784c8d1bbSMartin Mares	* lspci.c: Devices in domains different from 0 have their slot number
7281f7c91ccSMartin Mares	printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains
7291f7c91ccSMartin Mares	as well.
73084c8d1bbSMartin Mares
73184c8d1bbSMartin Mares	* lib/filter.c: Slot filters understand domains.
73284c8d1bbSMartin Mares
73384c8d1bbSMartin Mares	* lib/generic.c: Mention the domain in slot numbers in all error messages.
73484c8d1bbSMartin Mares
73584c8d1bbSMartin Mares	* lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong.
73684c8d1bbSMartin Mares
73784c8d1bbSMartin Mares	* lib/access.c (pci_get_dev): Added support for domains.
73884c8d1bbSMartin Mares
73984c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config
74084c8d1bbSMartin Mares	registers (or to be precise, leave it for the generic parts of the pcilib
74184c8d1bbSMartin Mares	to do so) instead of reading them from the sysfs. It's faster this way.
74284c8d1bbSMartin Mares
74384c8d1bbSMartin Mares	* lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal
74484c8d1bbSMartin Mares	variable. Better read it from the config registers (it's cached anyway).
74584c8d1bbSMartin Mares
74684c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype.
74784c8d1bbSMartin Mares	  lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it.
74884c8d1bbSMartin Mares	  Saves lots of unnecessary file accesses.
74984c8d1bbSMartin Mares
75011f7b31bSMartin Mares	* lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter
75111f7b31bSMartin Mares	is not supported by all C libraries.
75211f7b31bSMartin Mares
75311f7b31bSMartin Mares	* Makefile: Always enter the lib directory (remember that we don't have
75411f7b31bSMartin Mares	full dependecies for the library in the top-level Makefile; hmmm, another
75511f7b31bSMartin Mares	thing to rewrite some day).
75611f7b31bSMartin Mares
75711f7b31bSMartin Mares	* lib/sysfs.c: Added Linux sysfs access method based on the patch
75811f7b31bSMartin Mares	written by Matthew Wilcox <[email protected]>.
75911f7b31bSMartin Mares
76011f7b31bSMartin Mares	* lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc".
76111f7b31bSMartin Mares
76211f7b31bSMartin Mares	* lib/pread.h: The hacks to support pread on various versions
76311f7b31bSMartin Mares	of Linux libc moved there.
76411f7b31bSMartin Mares
76511f7b31bSMartin Mares	* lib/proc.c (proc_setup): The return value of snprintf() varies
76611f7b31bSMartin Mares	between glibc versions, so we need to check both for a negative
76711f7b31bSMartin Mares	values and for too large values.
76811f7b31bSMartin Mares
7694284af58SMartin Mares	* Removed last few references to the "Linux PCI Utilities", the
7704284af58SMartin Mares	package is pretty cross-platform now :)
7714284af58SMartin Mares
7724284af58SMartin Mares2003-12-27  Martin Mares  <[email protected]>
7734284af58SMartin Mares
774ab12277eSMartin Mares	* Released as 2.1.99-test2.
775ab12277eSMartin Mares
776ab12277eSMartin Mares	* README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the
777ab12277eSMartin Mares	release scripts insert the current version. "make release" is gone.
778ab12277eSMartin Mares
779ab12277eSMartin Mares	* maint/release, maint/release.pm: Added a new system of scripts for
780ab12277eSMartin Mares	making releases including inter-version diffs etc.
781ab12277eSMartin Mares
782ab12277eSMartin Mares	* Makefile: Cleaned up.
783ab12277eSMartin Mares
784ab12277eSMartin Mares	* lib/fbsd-device.c: I patched another copy of this file by mistake,
785ab12277eSMartin Mares	this time the version checks should be right.
786ab12277eSMartin Mares
787ab12277eSMartin Mares2003-12-27  Martin Mares  <[email protected]>
788ab12277eSMartin Mares
7896d722cd6SMartin Mares	* Released as 2.1.99-test1.
7906d722cd6SMartin Mares
791dd33246aSMartin Mares	* pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h:
792dd33246aSMartin Mares	Remove shadows of the syscall access method which was never
793dd33246aSMartin Mares	implemented.
794dd33246aSMartin Mares
79580b3121aSMartin Mares	* update-pciids.sh: Try to preserve permissions of the old file
79680b3121aSMartin Mares	if chmod supports --reference. Should close Debian Bug #223740.
79780b3121aSMartin Mares
7986aea909aSMartin Mares	* lib/proc.c (proc_setup): Increased path name length limit to 1024.
7996aea909aSMartin Mares	Thanks for Redhat and Mandrake for inspiration.
8006aea909aSMartin Mares
8016aea909aSMartin Mares	* lib/configure: Recognize ppc and ppc64, both have 64-bit addresses.
8026aea909aSMartin Mares	Grabbed from Redhat (Fedora) patches.
8036aea909aSMartin Mares
8046aea909aSMartin Mares2003-12-27  Martin Mares  <[email protected]>
8056aea909aSMartin Mares
806f701ff47SMartin Mares	Merged bug fixes from Debian patches:
807f701ff47SMartin Mares
808f701ff47SMartin Mares	* lspci.c (show_verbose): "Cache Line Size" should be capitalized.
809f701ff47SMartin Mares
810f701ff47SMartin Mares	* lspci.c (show_pcix_nobridge): Added a missing newline.
811f701ff47SMartin Mares
8122240db8cSMartin Mares	* lib/proc.c (proc_scan): When reading the header type, don't
8132240db8cSMartin Mares	forget to clear the topmost bit indicating that the device has
814f701ff47SMartin Mares	multiple functions.
8152240db8cSMartin Mares
8162240db8cSMartin Mares2003-12-27  Martin Mares  <[email protected]>
8172240db8cSMartin Mares
81845902995SMartin Mares	Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]>
81945902995SMartin Mares	for the patches:
82045902995SMartin Mares
82145902995SMartin Mares	* lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined.
82245902995SMartin Mares	* lib/fbsd-device.c: Select the right set of system includes according
82345902995SMartin Mares	to __FreeBSD_version.
82445902995SMartin Mares
82545902995SMartin Mares2003-12-27  Martin Mares  <[email protected]>
82645902995SMartin Mares
8278fc75dbcSMartin Mares	Merged support for Solaris on i386 by Bill Moore <[email protected]>
8288fc75dbcSMartin Mares	and cleaned up:
8298fc75dbcSMartin Mares
8308fc75dbcSMartin Mares	* lib/configure: Recognize SunOS.
8318fc75dbcSMartin Mares	* lib/internal.h: Learn how to recognize byte order on SunOS.
8328fc75dbcSMartin Mares	* lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c.
8338fc75dbcSMartin Mares	* lib/i386-io-linux.h: Linux specific part.
8348fc75dbcSMartin Mares	* lib/i386-io-hurd.h: GNU/Hurd specific part.
8358fc75dbcSMartin Mares	* lib/i386-io-sunos.h: SunOS specific part.
8368fc75dbcSMartin Mares
8379739916eSMartin Mares2003-12-26  Martin Mares  <[email protected]>
8389739916eSMartin Mares
8399739916eSMartin Mares	* lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly.
8409739916eSMartin Mares
8419739916eSMartin Mares	* lib/pci.h: Types declared in <sys/types.h> should be usable on all
8429739916eSMartin Mares	platforms we currently support, so kill the forest of #ifdef's and
8439739916eSMartin Mares	use them in all cases.
8449739916eSMartin Mares
8459739916eSMartin Mares	* lib/pci.h: Use ULONG_MASK to decide whether we should use long
8469739916eSMartin Mares	or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS.
8479739916eSMartin Mares	Define format strings for addresses, port numbers and IRQ numbers
8489739916eSMartin Mares	directly in pci.h.
8499739916eSMartin Mares
8509739916eSMartin Mares	* lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses.
8519739916eSMartin Mares
85280459c65SMartin Mares2003-12-26  Marco Gerards  <[email protected]>
85380459c65SMartin Mares
85480459c65SMartin Mares	Added support for the GNU Hurd (cleaned up by Martin Mares):
85580459c65SMartin Mares
85680459c65SMartin Mares	* lib/configure [GNU]: Use the i386 ports for configuration access.
85780459c65SMartin Mares	* lib/i386-ports.c: Don't call iopl() on the Hurd.
85880459c65SMartin Mares	* lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining
85980459c65SMartin Mares	u8 to u32.
86080459c65SMartin Mares
861a85769a8SMartin Mares2003-12-26  Martin Mares  <[email protected]>
862a85769a8SMartin Mares
8637dacd9c8SMartin Mares	* lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call
8647dacd9c8SMartin Mares	config_fetch() to ensure that the registers have been read. Thanks to
8657dacd9c8SMartin Mares	Bill Wood <[email protected]> for the patch.
8667dacd9c8SMartin Mares
8677dacd9c8SMartin Mares	* lspci.c: Ensure that failure of config_fetch() is handled correctly
8687dacd9c8SMartin Mares	at all places.
8697dacd9c8SMartin Mares
8704063c31cSMartin Mares	* lspci.man: There was one more explicit reference to /usr/share/pci.ids.
8714063c31cSMartin Mares	Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>.
8724063c31cSMartin Mares
8733fe8a38dSMartin Mares	* setpci.c (main): Better error messages.
8743fe8a38dSMartin Mares
8755f5b1a7bSMartin Mares	* setpci.c (ex_op): The demo mode should disable only writing, not reading.
8765f5b1a7bSMartin Mares
8775f5b1a7bSMartin Mares	* setpci.man: The documentation was inconsistent on what should -D do.
8785f5b1a7bSMartin Mares	Document the new behaviour.
879b251f40bSMartin Mares
88091e37a49SMartin Mares	* pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating
88191e37a49SMartin Mares	the GCC specific __attribute__((noreturn)) and killed the hack with
88291e37a49SMartin Mares	redefining __attribute__ on non-GCC compilers.
88391e37a49SMartin Mares
8844afd29d3SMartin Mares	* Makefile: Added missing dependencies. Parallel builds work now.
8854afd29d3SMartin Mares	Problem reported by Andreas Haumer <[email protected]>, but I chose
8864afd29d3SMartin Mares	a different fix.
8874afd29d3SMartin Mares
888b0f1a03bSMartin Mares	* Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell
889b0f1a03bSMartin Mares	command every time $(MANDIR) is referenced.
890b0f1a03bSMartin Mares
891b7fd8e19SMartin Mares	* lspci.c (main): The error message for `lspci -s' incorrectly mentioned
892b7fd8e19SMartin Mares	a `-f' switch. Reported by Steve Finney <[email protected]>.
893b7fd8e19SMartin Mares
89405bb10a2SMartin Mares	* lib/generic.c: Removed memory leak in pci_generic_bus_scan().
89505bb10a2SMartin Mares	Reported by Gary Parnes <[email protected]>.
89605bb10a2SMartin Mares
897a832f6f1SMartin Mares	* Replaced obsolete syntax of __attribute__((unused)) in the middle of
898a832f6f1SMartin Mares	parameter declarations (which is no longer supported by GCC 3.1) by the
899a832f6f1SMartin Mares	current syntax (attribute at the end). Thanks to [email protected]
900a832f6f1SMartin Mares	for reporting this problem.
901a832f6f1SMartin Mares
902a85769a8SMartin Mares	* Removed CVS $Id$ tags from all files.
903a85769a8SMartin Mares
904a85769a8SMartin Mares	* Makefile: Added some more warnings.
905a85769a8SMartin Mares
906b7351143SMartin Mares	* setpci.c: Cleaned up mask/value code.
907b7351143SMartin Mares
908b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]>
909b7351143SMartin Mares
910b7351143SMartin Mares	* setpci.c: Individual bits to be set can be specified as <value>:<mask>.
911b7351143SMartin Mares
9122a5d5cf9SMartin Mares2003-11-29  Martin Mares  <[email protected]>
9132a5d5cf9SMartin Mares
9142a5d5cf9SMartin Mares	* Imported the pciutils sources to my Arch repository. Good-bye, CVS.
9152a5d5cf9SMartin Mares
916d772ef15SMartin Mares2003-01-04  Martin Mares  <[email protected]>
917d772ef15SMartin Mares
9181b95f396SMartin Mares	* Released as 2.1.11.
9191b95f396SMartin Mares
920c83293ebSMartin Mares	* Makefile: Changed configuration of installation directories --
921c83293ebSMartin Mares	all paths are now set at the top of the Makefile instead of being
922c83293ebSMartin Mares	scattered between the installation rules. The default installation
923c83293ebSMartin Mares	now goes always to /usr/local regardless of the OS as most distributions
924c83293ebSMartin Mares	already contain some version of pciutils and we don't want custom
925c83293ebSMartin Mares	installations to interfere with the default ones.
926c83293ebSMartin Mares
927c83293ebSMartin Mares	* Makefile: Removed a couple of ancient install hacks: we no longer
928c83293ebSMartin Mares	try to avoid overwriting a newer pci.ids file (users are now expected
929c83293ebSMartin Mares	to use update-ids) and we don't try to remove /etc/pci.ids (a long time
930c83293ebSMartin Mares	has passed since the last version which used it).
931c83293ebSMartin Mares
932e2875dcdSMartin Mares	* Makefile: Paths to pci.ids in man pages automatically get the right path.
933e2875dcdSMartin Mares
9341b95f396SMartin Mares	* Added the update-ids utility.
9350138a2a7SMartin Mares
936d772ef15SMartin Mares	* lib: Removed partially implemented "syscall" access method which will
937d772ef15SMartin Mares	probably never be needed.
938d772ef15SMartin Mares
939eb620239SMartin Mares2002-12-27  Martin Mares  <[email protected]>
940eb620239SMartin Mares
941130090bdSMartin Mares	* lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe.
942130090bdSMartin Mares
943eb620239SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Added work-around for devices with
944eb620239SMartin Mares	discontiguous numbering of functions. This is already present in the Linux
945eb620239SMartin Mares	kernel for several years, but I forgot to update pciutils as well.
946eb620239SMartin Mares
947848b4347SMartin Mares2002-12-26  Martin Mares  <[email protected]>
948848b4347SMartin Mares
949579b19ffSMartin Mares	* lib/header.h, lspci.c: Dump AGP3 flags and speeds.
950579b19ffSMartin Mares
951579b19ffSMartin Mares	* lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header,
952579b19ffSMartin Mares	there is no reason to prefer the kernel version.
953579b19ffSMartin Mares
954579b19ffSMartin Mares	* lib/proc.c (proc_scan): Don't forget to initialize hdrtype.
955579b19ffSMartin Mares
956848b4347SMartin Mares	* Added preliminary version of NetBSD support by Quentin Garnier
957848b4347SMartin Mares	<[email protected]>.
958848b4347SMartin Mares
959f0952474SMartin Mares2002-04-06  Martin Mares  <[email protected]>
960f0952474SMartin Mares
961f0952474SMartin Mares	* lspci.c: Mention "-xxx" in the help.
962f0952474SMartin Mares
963d2f666f1SMartin Mares2002-03-30  Martin Mares  <[email protected]>
964d2f666f1SMartin Mares
9659bd44bb0SMartin Mares	* Released as 2.1.10.
9669bd44bb0SMartin Mares
967a33d0eb7SMartin Mares	* Removed pci.ids from the CVS as they are now maintained separately.
968a33d0eb7SMartin Mares	They are still included in the tarball, but if you are building	pciutils
969a33d0eb7SMartin Mares	from CVS sources or you want to get a newer ID file than the one distributed,
970a33d0eb7SMartin Mares	just use "make update-ids" to download the most recent snapshot from
971a33d0eb7SMartin Mares	pciids.sf.net.
972a33d0eb7SMartin Mares
973a33d0eb7SMartin Mares	* Makefile, README: Updated accordingly.
974a33d0eb7SMartin Mares
975a33d0eb7SMartin Mares	* Makefile: Added a couple of maintenance targets.
976a33d0eb7SMartin Mares
977a33d0eb7SMartin Mares	* maint/*: Maintainer's utilities now reside here (present only in CVS,
978a33d0eb7SMartin Mares	not in the tarball).
979a33d0eb7SMartin Mares
980d2f666f1SMartin Mares	* lib/names.c (parse_name_list): End-of-line comments are no longer
981d2f666f1SMartin Mares	supported. Hashes are now perfectly valid in all names and they start
982d2f666f1SMartin Mares	a comment only at the start of the line.
983d2f666f1SMartin Mares
984ee551b73SMartin Mares2002-03-26  Martin Mares  <[email protected]>
985ee551b73SMartin Mares
98607159913SMartin Mares	* README: Rewritten.
98707159913SMartin Mares
988ee551b73SMartin Mares	* Makefile: When the currently installed pci.ids file is newer than
989ee551b73SMartin Mares	the version to be installed, don't overwrite it. Suggested by
990ee551b73SMartin Mares	Jean Delvare <[email protected]>.
991ee551b73SMartin Mares
992bc7b1d62SMartin Mares2002-03-24  Martin Mares  <[email protected]>
993bc7b1d62SMartin Mares
9945f5e6f64SMartin Mares	* lspci.c (show_pcix_bridge): Added PCI-X capability display.
9955f5e6f64SMartin Mares	Contributed by Jeff Garzik <[email protected]>.
9965f5e6f64SMartin Mares
9975f5e6f64SMartin Mares	* lib/header.h: Added PCI-X stuff. Again by Jeff.
9985f5e6f64SMartin Mares
9995f5e6f64SMartin Mares	* Makefile (CFLAGS): -Werror is gone.
10005f5e6f64SMartin Mares
1001a1052f16SMartin Mares	* lspci.c (format_agp_rate): Fixed AGP rate reporting.
1002a1052f16SMartin Mares
1003bc7b1d62SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and
1004bc7b1d62SMartin Mares	function 7.
1005bc7b1d62SMartin Mares
1006bc7b1d62SMartin Mares	* lib/names.c (pci_lookup_name): When printing unknown subsystem vendor
1007bc7b1d62SMartin Mares	or device hexadecimally, don't confuse it with chip vendor/device ID.
1008bc7b1d62SMartin Mares	First reported by Marc Boucher <[email protected]>.
1009bc7b1d62SMartin Mares
1010f793990cSMartin Mares2001-11-04  Martin Mares  <[email protected]>
1011f793990cSMartin Mares
1012ee551b73SMartin Mares	* Released as 2.1.9.
1013ee551b73SMartin Mares
1014f793990cSMartin Mares	* pci.ids: Synced with the PCI ID Repository at SourceForge
1015f793990cSMartin Mares	(http://pciids.sourceforge.net/).
1016f793990cSMartin Mares
10171d174e56SMartin Mares2000-08-25  Martin Mares  <[email protected]>
10181d174e56SMartin Mares
10191d174e56SMartin Mares	* pci.ids: Updated ID's, synced with kernel 2.4.0-test7.
10201d174e56SMartin Mares
102165b4327eSMartin Mares2000-06-13  Martin Mares  <[email protected]>
102265b4327eSMartin Mares
102365b4327eSMartin Mares	* Makefile (uninstall): Fixed.
102465b4327eSMartin Mares
102565b4327eSMartin Mares	* pci.ids: ID updates.
102665b4327eSMartin Mares
10274a219d5fSMartin Mares2000-05-20  Martin Mares  <[email protected]>
10284a219d5fSMartin Mares
10294a219d5fSMartin Mares	* Released as 2.1.8.
10304a219d5fSMartin Mares
10314a219d5fSMartin Mares	* pci.ids: ID updates.
10324a219d5fSMartin Mares
10334a219d5fSMartin Mares	* lspci.c (show_verbose): Min/max latency is now printed in nanoseconds.
10344a219d5fSMartin Mares
10354a219d5fSMartin Mares2000-05-04  Martin Mares  <[email protected]>
10364a219d5fSMartin Mares
10374a219d5fSMartin Mares	* lspci.c (show_verbose): If the header type doesn't match device
10384a219d5fSMartin Mares	class, just print a warning and still use the header type, assuming
10394a219d5fSMartin Mares	bogus class info.
10404a219d5fSMartin Mares
104110c90662SMartin Mares2000-05-01  Martin Mares  <[email protected]>
104210c90662SMartin Mares
104372b9b690SMartin Mares	* lspci.c (show_pm): Updated according to PCI PM specs 1.1.
104472b9b690SMartin Mares
104510c90662SMartin Mares	* pci.ids: Updated Contemporary Control ARCnet card entries.
104610c90662SMartin Mares
104710c90662SMartin Mares	* pci.ids: Synchronized class list with latest PCI SIG documents.
104810c90662SMartin Mares
1049a239ade6SMartin Mares2000-04-29  Martin Mares  <[email protected]>
1050a239ade6SMartin Mares
1051a239ade6SMartin Mares	* lib/names.c (pci_lookup_name): Fixed the cheat.
1052a239ade6SMartin Mares
1053a239ade6SMartin Mares	* lib/internal.h: Moved UNUSED/inline hacks above all other declarations.
1054a239ade6SMartin Mares
1055a239ade6SMartin Mares	* pci.ids: Various ID updates.
1056a239ade6SMartin Mares
10572c83b860SMartin Mares2000-04-21  Martin Mares  <[email protected]>
10582c83b860SMartin Mares
10592c83b860SMartin Mares	* Released as 2.1.7.
10602c83b860SMartin Mares
10612c83b860SMartin Mares	* pciutils.spec: Added German description.
10622c83b860SMartin Mares
10632c83b860SMartin Mares	* lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's
10642c83b860SMartin Mares	are the same as device ID and just output subsystem name according to
10652c83b860SMartin Mares	device name.
10662c83b860SMartin Mares
10672c83b860SMartin Mares	* lib/proc.c: Use UNUSED instead of __attribute__((unused)).
10682c83b860SMartin Mares
10692c83b860SMartin Mares	* lib/pci.h: Added the correct typedefs for AIX.
10702c83b860SMartin Mares
10712c83b860SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Export.
10722c83b860SMartin Mares
10732c83b860SMartin Mares	* lib/configure: Detect AIX. Use "echo '...\c'" instead of
10742c83b860SMartin Mares	"echo -n" if the shell isn't bash.
10752c83b860SMartin Mares
10762c83b860SMartin Mares	* lspci.c: Avoid using alloca() if not compiled by GCC.
10772c83b860SMartin Mares	(insert_dev): Avoid returning a void value.
10782c83b860SMartin Mares
10792c83b860SMartin Mares	* Makefile: Choose which install utility to use according to
10802c83b860SMartin Mares	OS type. Also use `-o' instead of `-or' in find arguments.
10812c83b860SMartin Mares	Part of the AIX port.
10822c83b860SMartin Mares
10832c83b860SMartin Mares	* lib/aix-device.c: Added AIX low-level interface. Contributed
10842c83b860SMartin Mares	by Dave Johnson <[email protected]>, thanks a lot!
10852c83b860SMartin Mares
10862c83b860SMartin Mares	* pci.ids: Few new ID's.
10872c83b860SMartin Mares
10882c83b860SMartin Mares	* pciutils.h, lib/internal.h: Redefine __attribute__ and inline
10892c83b860SMartin Mares	when not compiled by GCC.
10902c83b860SMartin Mares
1091c1a828daSMartin Mares2000-04-17  Martin Mares  <[email protected]>
1092c1a828daSMartin Mares
1093c1a828daSMartin Mares	* Released as 2.1.6.
1094c1a828daSMartin Mares
1095c1a828daSMartin Mares	* pci.ids: Added a large batch of ID's contributed by Gunther
1096c1a828daSMartin Mares	Mayer <[email protected]> and synced the
1097c1a828daSMartin Mares	list with the 2.3.99pre6 kernel.
1098c1a828daSMartin Mares
1099e91dd3abSMartin MaresThu Mar  9 13:11:39 2000  Martin Mares  <[email protected]>
1100e91dd3abSMartin Mares
1101a80b79a9SMartin Mares	* lib/example.c: Added a simple example of how to use
1102a80b79a9SMartin Mares	the library.
1103a80b79a9SMartin Mares
110489984232SMartin Mares	* lspci.man, setpci.man: Revealed --version. Well spotted
110589984232SMartin Mares	by Adam Sulmicki.
110689984232SMartin Mares
1107e91dd3abSMartin Mares	* pci.ids: Added lots of new ID's and synced with 2.3.50.
1108e91dd3abSMartin Mares
110978d9c5e2SMartin MaresTue Feb 15 00:16:21 2000  Martin Mares  <[email protected]>
111078d9c5e2SMartin Mares
111178d9c5e2SMartin Mares	* Released as 2.1.5.
111278d9c5e2SMartin Mares
111378d9c5e2SMartin Mares	* pciutils.spec: Updated spec file from Andreas Jaeger. Now using
111478d9c5e2SMartin Mares	%{_mandir} to find the right location to install manual pages to.
111578d9c5e2SMartin Mares
111678d9c5e2SMartin Mares	* pci.ids: New ID's.
111778d9c5e2SMartin Mares
111878d9c5e2SMartin Mares	* setpci.c (main): Don't crash when `-s' or `-d' is given with
111978d9c5e2SMartin Mares	no argument.
112078d9c5e2SMartin Mares
1121f8141ae2SMartin MaresMon Jan 24 20:04:11 2000  Andreas Jaeger  <[email protected]>
1122f8141ae2SMartin Mares
1123f8141ae2SMartin Mares	* lib/i386-ports.c: Include <asm/io.h> only on systems without
1124f8141ae2SMartin Mares	glibc.
1125f8141ae2SMartin Mares
1126f8141ae2SMartin MaresMon Jan 24 11:24:43 2000  Martin Mares  <[email protected]>
1127f8141ae2SMartin Mares
1128f8141ae2SMartin Mares	* Makefile: Modified to work with the Linux FHS brain-damaged idea
1129f8141ae2SMartin Mares	of putting man pages to /usr/share/man. Now we choose either /usr/man
1130f8141ae2SMartin Mares	or /usr/share/man depending on which one exists.
1131f8141ae2SMartin Mares
113259e76e8bSMartin MaresSun Jan 23 10:52:34 2000  Martin Mares  <[email protected]>
113359e76e8bSMartin Mares
113459e76e8bSMartin Mares	* pci.ids: Synced with Linux 2.3.40.
113559e76e8bSMartin Mares
113659e76e8bSMartin Mares	* Released as version 2.1.4.
113759e76e8bSMartin Mares
11382dfd48cdSMartin MaresThu Jan 20 11:08:32 2000  Martin Mares  <[email protected]>
11392dfd48cdSMartin Mares
11402715403fSMartin Mares	* lspci.c (scan_device): Fixed bug in reading of cardbus extensions.
11412715403fSMartin Mares
114281077814SMartin Mares	* lib/proc.c: pread/pwrite fixed again, this time on libc5 :(
114381077814SMartin Mares
114481077814SMartin Mares	* lspci.c (format_agp_rate): Better formatting of AGP rates.
114581077814SMartin Mares
114681077814SMartin Mares	* pci.ids: New ID's.
114781077814SMartin Mares
11482dfd48cdSMartin Mares	* lib/configure: Added configuration for ia64 (the same as for Alpha).
11492dfd48cdSMartin Mares	Patch from Stephane Eranian <[email protected]>.
11502dfd48cdSMartin Mares
11515a258860SMartin MaresThu Jan 13 23:01:52 2000  Martin Mares  <[email protected]>
11525a258860SMartin Mares
11535a258860SMartin Mares	* Released as version 2.1.3.
11545a258860SMartin Mares
11555a258860SMartin Mares	* pci.ids: New ID's.
11565a258860SMartin Mares
11575a258860SMartin Mares	* lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli.
11585a258860SMartin Mares
11595a258860SMartin Mares	* lib/access.c: Corrected order of access methods -- it's wonderful how
11605a258860SMartin Mares	long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff.
11615a258860SMartin Mares
11620c047bbeSMartin MaresSat Dec 11 23:34:48 1999  Martin Mares  <[email protected]>
11630c047bbeSMartin Mares
11640c047bbeSMartin Mares	* Released as version 2.1.2.
11650c047bbeSMartin Mares
11660c047bbeSMartin Mares	* lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's.
11670c047bbeSMartin Mares
116833bc28a5SMartin MaresSat Dec  4 13:11:03 1999  Martin Mares  <[email protected]>
116933bc28a5SMartin Mares
117039231205SMartin Mares	* Released as version 2.1.1.
117139231205SMartin Mares
117233bc28a5SMartin Mares	* pci.ids: Several new ID's.
117333bc28a5SMartin Mares
117433bc28a5SMartin Mares	* setpci.c (exec_op): Don't forget to increment address after writing
117533bc28a5SMartin Mares	single value, so that `30.b=12,34,56,78' works as expected. Reported
117633bc28a5SMartin Mares	by Petr Soucek <[email protected]>.
117733bc28a5SMartin Mares
11788d047897SMartin MaresWed Nov  3 10:24:38 1999  Martin Mares  <[email protected]>
11798d047897SMartin Mares
11808d047897SMartin Mares	* lspci.c (show_terse): If prog-if is zero, but it's present in the
11818d047897SMartin Mares	ID list, show it.
11828d047897SMartin Mares
11836afc6538SMartin MaresSat Oct 30 11:06:35 1999  Martin Mares  <[email protected]>
11846afc6538SMartin Mares
11856afc6538SMartin Mares	* Released as version 2.1.
11866afc6538SMartin Mares
11876afc6538SMartin Mares	* pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in
11886afc6538SMartin Mares	lots of contributed entries.
11896afc6538SMartin Mares
11908f756113SMartin MaresThu Oct 14 10:40:12 1999  Dave Jones    <[email protected]>
11918f756113SMartin Mares
11928f756113SMartin Mares	* pci.ids: Added lots of subsystem definitions.
11938f756113SMartin Mares
1194d4798a32SMartin MaresSat Oct  9 14:32:28 1999  Martin Mares  <[email protected]>
1195d4798a32SMartin Mares
1196d4798a32SMartin Mares	* setpci.man: Better example.
1197d4798a32SMartin Mares
1198d4798a32SMartin Mares	* lspci.c: Resolve prog-if names.
1199d4798a32SMartin Mares
1200d4798a32SMartin Mares	* lib/names.c: Adapted to new pci.ids syntax.
1201d4798a32SMartin Mares
1202d4798a32SMartin Mares	* pci.ids: Reorganized the pci.ids file. Subsystems are listed
1203d4798a32SMartin Mares	under devices, classes can optionally contain prog-if information.
1204d4798a32SMartin Mares	New ID's, as usually.
1205d4798a32SMartin Mares
1206e306e911SMartin MaresWed Sep 22 09:45:24 1999  Martin Mares  <[email protected]>
1207e306e911SMartin Mares
1208e306e911SMartin Mares	* pci.ids: New ID's. As usually.
1209e306e911SMartin Mares
1210e306e911SMartin Mares	* lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows
1211e306e911SMartin Mares	unless we're vvvery verbose.
1212e306e911SMartin Mares
1213e306e911SMartin MaresMon Sep 20 11:22:54 1999  Martin Mares  <[email protected]>
1214e306e911SMartin Mares
1215e306e911SMartin Mares	* lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line.
1216e306e911SMartin Mares
1217e64a576cSMartin MaresTue Sep 14 09:31:01 1999  Martin Mares  <[email protected]>
1218e64a576cSMartin Mares
1219e64a576cSMartin Mares	* pci.ids: New ID's. Again.
1220e64a576cSMartin Mares
1221c36c0862SMartin MaresThu Aug  5 17:45:42 1999  Martin Mares  <[email protected]>
1222c36c0862SMartin Mares
1223c36c0862SMartin Mares	* lspci.c (show_size): Don't show size if it's zero (usually
1224c36c0862SMartin Mares	due to bus-centric mode being enabled).
1225c36c0862SMartin Mares
12261ca42433SMartin MaresTue Jul 20 13:25:09 1999  Martin Mares  <[email protected]>
12271ca42433SMartin Mares
1228168b4f46SMartin Mares	* lib/pci.h: Types are OS dependent.
1229168b4f46SMartin Mares
1230168b4f46SMartin Mares	* lib/internal.h: Byte order hacks are OS dependent.
1231168b4f46SMartin Mares
1232168b4f46SMartin Mares	* lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS.
1233168b4f46SMartin Mares
1234168b4f46SMartin Mares	* lib/Makefile, lib/access.c: Added fbsd-device target.
1235168b4f46SMartin Mares
1236168b4f46SMartin Mares	* pci.ids: Added an entry for PLX 9080 bridges with subsystem ID
1237168b4f46SMartin Mares	incorrectly set to device ID.
1238168b4f46SMartin Mares
1239168b4f46SMartin Mares	* README: Added a note that we support FreeBSD.
1240168b4f46SMartin Mares
1241168b4f46SMartin Mares	* Makefile (PREFIX, ROOT): Set it depending on the OS.
1242168b4f46SMartin Mares	(%.8): Grrr, BSD date is not able to convert date formats the same way
1243168b4f46SMartin Mares	as GNU date does. Use sed instead.
1244168b4f46SMartin Mares	(install): Use `-c' when calling install.
1245168b4f46SMartin Mares
1246168b4f46SMartin Mares	* lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed
1247168b4f46SMartin Mares	by Jari Kirma <[email protected]>.
1248168b4f46SMartin Mares
1249bc6346dfSMartin Mares	* lib/proc.c: Rewrote the pread/pwrite things once again. Use pread
1250bc6346dfSMartin Mares	and pwrite only when we are certain it's safe (i.e., glibc 2.1
1251bc6346dfSMartin Mares	on all architectures or any libc on a i386 where we really know
1252bc6346dfSMartin Mares	how to use syscalls directly). In all other cases, emulate it
1253bc6346dfSMartin Mares	with lseek/read/write.
1254bc6346dfSMartin Mares
12551ca42433SMartin Mares	* pci.ids: Some more IDs.
12561ca42433SMartin Mares
12571ca42433SMartin MaresMon Jul 19 14:10:36 1999  Martin Mares  <[email protected]>
12581ca42433SMartin Mares
12591ca42433SMartin Mares	* pci.ids: Added IDs of parallel port controller cards as sent
12601ca42433SMartin Mares	by Tim Waugh <[email protected]>.
12611ca42433SMartin Mares
1262e95c8373SMartin MaresWed Jul  7 00:55:48 1999  Martin Mares  <[email protected]>
1263e95c8373SMartin Mares
1264e95c8373SMartin Mares	* lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS.
1265e95c8373SMartin Mares
1266e95c8373SMartin Mares	* lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and
1267e95c8373SMartin Mares	HAVE_LONG_ADDRESS.
1268e95c8373SMartin Mares
1269e95c8373SMartin Mares	* lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses
1270e95c8373SMartin Mares	are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS
1271e95c8373SMartin Mares	to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS
1272e95c8373SMartin Mares	and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS
1273e95c8373SMartin Mares	on Alpha.
1274e95c8373SMartin Mares
1275e95c8373SMartin Mares	* lspci.c (show_msi): Added dumping of the MSI capability.
1276e95c8373SMartin Mares	(show_slotid): The same for SlotID capability.
1277e95c8373SMartin Mares	(show_caps): Seperated capability dumping, because it should
1278e95c8373SMartin Mares	be used for both htype0 and htype1. Even PCI 2.2 doesn't mention
1279e95c8373SMartin Mares	layout of htype2, so I'm a bit unsure about it wrt capabilities
1280e95c8373SMartin Mares	-- they at least have to live somewhere else since address 0x34
1281e95c8373SMartin Mares	is already defined differently in htype2.
1282e95c8373SMartin Mares
1283e95c8373SMartin Mares	* lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2).
1284e95c8373SMartin Mares	(PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto.
1285e95c8373SMartin Mares	(PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2.
1286e95c8373SMartin Mares
1287e95c8373SMartin Mares	* lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers
1288e95c8373SMartin Mares	(required by the PCI 2.2 specs).
1289e95c8373SMartin Mares
1290e95c8373SMartin MaresMon Jul  5 12:45:19 1999  Martin Mares  <[email protected]>
1291e95c8373SMartin Mares
1292e95c8373SMartin Mares	* lspci.c (show_size): Added new function for dumping of region sizes.
1293e95c8373SMartin Mares	(show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled
1294e95c8373SMartin Mares	ROMs et cetera.
1295e95c8373SMartin Mares
1296e95c8373SMartin Mares	* lib/pci.h (struct pci_dev): known_fields moved to the public part
1297e95c8373SMartin Mares	of the structure.
1298e95c8373SMartin Mares
1299e95c8373SMartin Mares	* Added support for region sizes. Needs support in the kernel, because
1300e95c8373SMartin Mares	sizes have to be scanned before drivers initialize yourself. pci_fill_info()
1301e95c8373SMartin Mares	now returns a bitmask of what fields were really read.
1302e95c8373SMartin Mares
130382ce97c9SMartin MaresMon Jun 28 18:37:51 1999  Dave Jones    <[email protected]>
130482ce97c9SMartin Mares
130582ce97c9SMartin Mares	* Makefile:
130682ce97c9SMartin Mares	  Added `uninstall' target - removes all traces of pciutils.
130782ce97c9SMartin Mares	* pci.ids:
130882ce97c9SMartin Mares	  - Lots of cleanups in the ATI, S3, Adaptec vendors.
130982ce97c9SMartin Mares	  - Changed Compaq QVision 1280/p definitions, as it's not possible
131082ce97c9SMartin Mares	    to determine the revision from the device ID.
131182ce97c9SMartin Mares	  - Same for the Tseng ET4000.
131282ce97c9SMartin Mares	    The id's said I had a rev C, when it was actually a rev B.
131382ce97c9SMartin Mares	  - Removed some unnecessary strings
131482ce97c9SMartin Mares	    `PCI'. Unless it's an AGP card, it should be obvious that it's PCI.
131582ce97c9SMartin Mares	    `Ethernet card'. This should be determined from config space.
131682ce97c9SMartin Mares	  - Lots of other new vendors & devices
131782ce97c9SMartin Mares	  - Other additional small cleanups.
131882ce97c9SMartin Mares
13197bed2d83SMartin MaresMon Jun 21 22:11:10 1999  Martin Mares  <[email protected]>
13207bed2d83SMartin Mares
13217bed2d83SMartin Mares	* lib/names.c (pci_lookup_name): When device ID lookup
13227bed2d83SMartin Mares	fails, return hexadecimal device ID instead of vendor ID.
13237bed2d83SMartin Mares	Well spotted by Axel Bodemann <[email protected]>,
13247bed2d83SMartin Mares	I've just extended the fix to subsystem ID's.
13257bed2d83SMartin Mares
13265ba3a475SMartin MaresThu Jun 17 19:48:21 1999  Martin Mares  <[email protected]>
13275ba3a475SMartin Mares
13285ba3a475SMartin Mares	* lspci.c (show_agp): Bug fix from Petr Vandrovec
13295ba3a475SMartin Mares	<[email protected]>. The command register was displayed
13305ba3a475SMartin Mares	incorrectly.
13315ba3a475SMartin Mares
13325ba3a475SMartin MaresWed Jun  2 22:42:44 1999  Martin Mares  <[email protected]>
13335ba3a475SMartin Mares
13345ba3a475SMartin Mares	* lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded
13355ba3a475SMartin Mares	numbers if not supplied by the libc.
13365ba3a475SMartin Mares
133755c815b5SMartin MaresWed May 19 13:24:39 1999  Martin Mares  <[email protected]>
133855c815b5SMartin Mares
133955c815b5SMartin Mares	* Released the whole package as version 2.0.
134055c815b5SMartin Mares
134155c815b5SMartin MaresFri May 14 22:42:02 1999  Martin Mares  <[email protected]>
134255c815b5SMartin Mares
134355c815b5SMartin Mares	* pci.ids: Added several new ID's contributed by people
134455c815b5SMartin Mares	on the linux-pci list.
134555c815b5SMartin Mares
1346dec16943SMartin MaresMon Apr 19 15:21:08 1999  Jakub Jelinek  <[email protected]>
1347dec16943SMartin Mares
1348dec16943SMartin Mares	* lspci.c: Display I/O addresses correctly on sparc64.
1349dec16943SMartin Mares	* lib/header.h: Ditto.
1350dec16943SMartin Mares
1351dec16943SMartin Mares	* lib/configure: On sparc set HAVE_64BIT* as well, we want
1352dec16943SMartin Mares	a binary which works on both 32bit and 64bit SPARCs.
1353dec16943SMartin Mares
1354e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999  Martin Mares  <[email protected]>
1355e33c9c7aSMartin Mares
1356e33c9c7aSMartin Mares	* lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob
1357e33c9c7aSMartin Mares	<[email protected]>.
1358e33c9c7aSMartin Mares
1359e33c9c7aSMartin Mares	* pci.ids: A lot of updates from Adam J. Richter <[email protected]>.
1360e33c9c7aSMartin Mares
1361f3395cc5SMartin MaresSun Feb 28 22:26:21 1999  Martin Mares  <[email protected]>
1362f3395cc5SMartin Mares
1363f3395cc5SMartin Mares	* lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged
1364f3395cc5SMartin Mares	as a multi-function device, because several single-function devices
1365f3395cc5SMartin Mares	don't decode the function bits at all.
1366f3395cc5SMartin Mares
1367f3395cc5SMartin MaresSun Feb 14 23:48:22 1999  Martin Mares  <[email protected]>
1368f3395cc5SMartin Mares
1369f3395cc5SMartin Mares	* Makefile (install): Don't use "-o root -g root" for installation
1370f3395cc5SMartin Mares	since it breaks on machines where programs are not installed by root.
1371f3395cc5SMartin Mares	Reported by Richard Gooch <[email protected]>
1372f3395cc5SMartin Mares
1373f3395cc5SMartin MaresTue Feb  9 15:54:39 1999  Martin Mares  <[email protected]>
1374f3395cc5SMartin Mares
1375f3395cc5SMartin Mares	* lspci.c (show_bases): Use new address masking macros and pciaddr_t.
1376f3395cc5SMartin Mares
1377f3395cc5SMartin Mares	* lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit
1378f3395cc5SMartin Mares	or 64-bit depending on CPU.
1379f3395cc5SMartin Mares
1380f3395cc5SMartin Mares	* lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks
1381f3395cc5SMartin Mares	according to bus address width.
1382f3395cc5SMartin Mares
13831c31d620SMartin MaresThu Jan 28 20:54:16 1999  Martin Mares  <[email protected]>
13841c31d620SMartin Mares
13851c31d620SMartin Mares	* Released as 1.99.4.
13861c31d620SMartin Mares
13871c31d620SMartin Mares	* lspci.c: Capability list parser now recognizes both AGP
13881c31d620SMartin Mares	registers and PCI Power Management registers (the latter
13891c31d620SMartin Mares	is mainly guesswork based on DEC/Intel 21153 bridge specs
13901c31d620SMartin Mares	since I don't have the PCI Power Management document).
13911c31d620SMartin Mares
13921c31d620SMartin Mares	* lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-'
13931c31d620SMartin Mares	by FLAG macro.
13941c31d620SMartin Mares
13951c31d620SMartin Mares	* lspci.c: Added bridge checks to bus mapping code.
13961c31d620SMartin Mares
13971812a795SMartin MaresWed Jan 27 14:59:16 1999  Martin Mares  <[email protected]>
13981812a795SMartin Mares
13991812a795SMartin Mares	* lspci.c: Implemented bus mapping mode (-M).
14001812a795SMartin Mares
14011812a795SMartin Mares	* lspci.c (scan_devices): Split to scan_devices() and scan_device().
14021812a795SMartin Mares	(show): Split to show() and show_device().
14031812a795SMartin Mares
14041812a795SMartin Mares	* lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO,
14051812a795SMartin Mares	set it to the real access method afterwards.
14061812a795SMartin Mares
14071812a795SMartin MaresMon Jan 25 23:46:13 1999  Martin Mares  <[email protected]>
14081812a795SMartin Mares
14091812a795SMartin Mares	* lib/generic.c (pci_generic_fill_info): If in buscentric mode,
14101812a795SMartin Mares	don't check PCI_COMMAND for I/O and memory enables.
14111812a795SMartin Mares
1412f6c86928SMartin MaresMon Jan 25 21:28:49 1999  Martin Mares  <[email protected]>
1413f6c86928SMartin Mares
1414f6c86928SMartin Mares	* Makefile: Added target `release' which substitutes new version
1415f6c86928SMartin Mares	number to .spec, .lsm and README. Also rewrote target `dist'.
1416f6c86928SMartin Mares
1417f6c86928SMartin Mares	* Released as 1.99.3.
1418f6c86928SMartin Mares
1419b5137411SMartin MaresSun Jan 24 22:10:36 1999  Martin Mares  <[email protected]>
1420b5137411SMartin Mares
1421d6b297d0SMartin Mares	* lib/header.h: Until kernel adopts new layout of PCI
1422d6b297d0SMartin Mares	includes (i.e., separate declaration of header structure,
1423d6b297d0SMartin Mares	functions and device IDs), which is not going to happen
1424d6b297d0SMartin Mares	before 2.3, we'll use our own definiton of the header.
1425d6b297d0SMartin Mares
1426b5137411SMartin Mares	* lspci.c (show_verbose): Display `Cap' flag in device status.
1427b5137411SMartin Mares
1428b5137411SMartin Mares	* lspci.c (show_htype0): Display capability lists whereever
1429b5137411SMartin Mares	available. The only capability name we recognize now is `AGP'.
1430b5137411SMartin Mares	Unfortunately, capabilities are stored in device-dependent
1431b5137411SMartin Mares	portion of the configuration space and are thus available
1432b5137411SMartin Mares	only to root unless you read a dump.
1433b5137411SMartin Mares
1434b5137411SMartin Mares	* lspci.c (scan_devices): Use cache instead of buffering.
1435b5137411SMartin Mares
1436b5137411SMartin Mares	* lib/buffer.c: Removed (obsoleted by the cache).
1437b5137411SMartin Mares
1438b5137411SMartin Mares	* lib/access.c: Added general caching mechanism.
1439b5137411SMartin Mares
144081ce358dSMartin MaresSat Jan 23 21:30:54 1999  Martin Mares  <[email protected]>
144181ce358dSMartin Mares
144281ce358dSMartin Mares	* pci.ids: Added few devices.
144381ce358dSMartin Mares
1444727ce158SMartin MaresFri Jan 22 19:29:31 1999  Martin Mares  <[email protected]>
1445727ce158SMartin Mares
1446727ce158SMartin Mares	* Version string is now defined in top-level Makefile, exported
1447727ce158SMartin Mares	to the configure script and also substituted to man pages.
1448727ce158SMartin Mares
1449727ce158SMartin Mares	* lspci.c (show_bases): Rewrote displaying of 64-bit addresses.
1450727ce158SMartin Mares	(show_verbose): Rewrote interrupt display logic.
1451727ce158SMartin Mares
1452727ce158SMartin Mares	* lib/i386-ports.c: Include sys/io.h only on glibc systems.
1453727ce158SMartin Mares
1454727ce158SMartin Mares	* lib/configure: Rewrote detection of Linux versions. Now it
1455727ce158SMartin Mares	works on 2.0 kernels (only with direct/dump access, of course).
1456727ce158SMartin Mares
1457727ce158SMartin Mares	* lib/internal.h: New bytesex macros using <asm/byteorder.h>
1458727ce158SMartin Mares	whenever available.
1459727ce158SMartin Mares
1460727ce158SMartin Mares	* lib/proc.c (proc_read, proc_write): Distinguish between short
1461727ce158SMartin Mares	read/write and real errors.
1462727ce158SMartin Mares
1463727ce158SMartin Mares	* lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since
1464727ce158SMartin Mares	libpci respects buscentric mode automatically.
1465727ce158SMartin Mares
1466727ce158SMartin Mares	* lspci.c (show_hex_dump): For CardBus bridges, print out 128
1467727ce158SMartin Mares	bytes of header (the whole standard part).
1468727ce158SMartin Mares
1469727ce158SMartin Mares	* common.c: pcilib options are now all uppercase. Also moved
1470727ce158SMartin Mares	PCI access debugging option here.
1471727ce158SMartin Mares
1472727ce158SMartin Mares	* Released as 1.99.2.
1473727ce158SMartin Mares
1474727ce158SMartin MaresWed Jan 20 22:50:35 1999  Martin Mares  <[email protected]>
1475727ce158SMartin Mares
1476727ce158SMartin Mares	* Wrote configure script and rewrote Makefiles.
1477727ce158SMartin Mares
1478727ce158SMartin Mares	* Removed few unused variables.
1479727ce158SMartin Mares
1480727ce158SMartin MaresWed Jan 20 12:21:56 1999  Martin Mares  <[email protected]>
1481727ce158SMartin Mares
1482727ce158SMartin Mares	* common.c: Moved several functions used in both setpci and lspci
1483727ce158SMartin Mares	here. This includes parsing of libpci-related options.
1484727ce158SMartin Mares
1485727ce158SMartin Mares	* More library tweaks.
1486727ce158SMartin Mares
1487727ce158SMartin Mares	* filter.c, names.c: Moved to library.
1488727ce158SMartin Mares
1489727ce158SMartin Mares	* setpci: Rewritten to use the library.
1490727ce158SMartin Mares
1491727ce158SMartin Mares	* Released as 1.99.1.
1492727ce158SMartin Mares
1493727ce158SMartin MaresTue Jan 19 23:00:12 1999  Martin Mares  <[email protected]>
1494727ce158SMartin Mares
1495727ce158SMartin Mares	* lspci.c (scan_devices): For cardbus bridges, read first 128
1496727ce158SMartin Mares	bytes of config space to get full standard header.
1497727ce158SMartin Mares
1498727ce158SMartin Mares	* Makefile (CFLAGS): Removed "-Wno-unused".
1499727ce158SMartin Mares
1500727ce158SMartin Mares	* Started the "New Generation" branch and introduced the
1501727ce158SMartin Mares	PCI library.
1502727ce158SMartin Mares
1503727ce158SMartin Mares	* lspci: Rewritten to use the library.
1504727ce158SMartin Mares
15056ece6bc6SMartin MaresTue Jan 19 22:24:08 1999  Martin Mares  <[email protected]>
15066ece6bc6SMartin Mares
15076ece6bc6SMartin Mares	* Released as version 1.10.
15086ece6bc6SMartin Mares
15096ece6bc6SMartin MaresMon Jan 18 08:51:17 1999  Martin Mares  <[email protected]>
15106ece6bc6SMartin Mares
15116ece6bc6SMartin Mares	* lspci.8, setpci.8: Miscellaneous fixes as suggested by
15126ece6bc6SMartin Mares	Dag Wieers <[email protected]>.
15136ece6bc6SMartin Mares
15141212dd6dSMartin MaresSun Nov 29 20:05:56 1998  Martin Mares  <[email protected]>
15151212dd6dSMartin Mares
15161212dd6dSMartin Mares	* pciutils.spec (Name): Update from Krzysztof G. Baranowski.
15171212dd6dSMartin Mares
1518d38471fdSMartin MaresSun Nov 22 10:49:56 1998  Martin Mares  <[email protected]>
1519d38471fdSMartin Mares
1520d38471fdSMartin Mares	* Makefile, pciutils.h: Moved pci.ids to /usr/share.
1521d38471fdSMartin Mares
1522d38471fdSMartin Mares	* Released as version 1.09.
1523d38471fdSMartin Mares
1524371f605bSMartin MaresWed Nov 18 15:47:05 1998  Martin Mares  <[email protected]>
1525371f605bSMartin Mares
1526371f605bSMartin Mares	* lspci.c (show_htype1): Fixed displaying of prefetchable memory behind
1527371f605bSMartin Mares	bridge. Thanks to Petr Vandrovec <[email protected]> for bug report.
1528371f605bSMartin Mares
152910be47abSMartin MaresFri Oct 23 18:59:19 1998  Martin Mares  <[email protected]>
153010be47abSMartin Mares
153110be47abSMartin Mares	* setpci.c: Don't include <syscall-list.h> with glibc >= 2.1.
153210be47abSMartin Mares
1533472bd340SMartin MaresMon Oct 19 21:53:30 1998  Martin Mares  <[email protected]>
1534472bd340SMartin Mares
1535472bd340SMartin Mares	* Released as version 1.08.
1536472bd340SMartin Mares
1537472bd340SMartin Mares	* setpci.c: glibc 2.1.x already defines pread() and pwrite().
1538472bd340SMartin Mares
1539472bd340SMartin Mares	* lspci.8: Changed warning about lspci -xxx.
1540472bd340SMartin Mares
1541472bd340SMartin Mares	* lspci.c: Require "-xxx" for full configuration space dump, so that
1542472bd340SMartin Mares	it's impossible to crash the machine by single typo.
1543472bd340SMartin Mares
1544472bd340SMartin Mares	* specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>).
1545472bd340SMartin Mares
1546072c77e5SMartin MaresWed Sep  9 12:03:24 1998  Martin Mares  <[email protected]>
1547072c77e5SMartin Mares
1548072c77e5SMartin Mares	* lspci.c (show_bases): Better displaying of unassigned and
1549072c77e5SMartin Mares	disabled bases. Thanks to Gabriel Paubert <[email protected]>
1550072c77e5SMartin Mares	for an idea.
1551072c77e5SMartin Mares
1552b7554856SMartin MaresWed Sep  2 10:58:01 1998  Martin Mares  <[email protected]>
1553b7554856SMartin Mares
1554b7554856SMartin Mares	* setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC.
1555b7554856SMartin Mares	(thanks to Geert Uytterhoeven for finding this out)
1556b7554856SMartin Mares
1557ce503b7fSMartin MaresFri Jul 17 10:43:30 1998  Martin Mares  <[email protected]>
1558ce503b7fSMartin Mares
1559ce503b7fSMartin Mares	* lspci.c (show_verbose): Print subsystem ID using the new resolver.
1560ce503b7fSMartin Mares	(show_machine): Print subsystem ID.
1561ce503b7fSMartin Mares
1562ce503b7fSMartin Mares	* names.c: New name resolution engine supporting subsystem IDs.
1563ce503b7fSMartin Mares
1564ce503b7fSMartin Mares	* Released as version 1.07.
1565ce503b7fSMartin Mares
156696e4f295SMartin MaresWed Jul 15 15:37:21 1998  Martin Mares  <[email protected]>
156796e4f295SMartin Mares
156896e4f295SMartin Mares	* lspci.c (show_htype2 etc.): Displaying of CardBus headers.
156996e4f295SMartin Mares	(show_bases): Honor the `cnt' argument.
157096e4f295SMartin Mares	(grow_tree): Parse CardBus headers in tree mode as well.
157196e4f295SMartin Mares
157296e4f295SMartin Mares	* pci.h: Updated CardBus header field description. I still don't
157396e4f295SMartin Mares	have the CardBus standard available, but OZ6832 specs contain
157496e4f295SMartin Mares	full description of all header fields supported by the chip.
157596e4f295SMartin Mares
15766ae3650aSMartin MaresTue Jun  9 22:53:59 1998  Martin Mares  <[email protected]>
15776ae3650aSMartin Mares
1578304f9a0bSMartin Mares	* Released as 1.06.
1579304f9a0bSMartin Mares
15806ae3650aSMartin Mares	* names.c (parse_name_list): Killed an unused variable.
15816ae3650aSMartin Mares
15826ae3650aSMartin Mares	* setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1
15836ae3650aSMartin Mares	if they are not defined by glibc (needed for glibc built on older
15846ae3650aSMartin Mares	kernels). Ugly.
15856ae3650aSMartin Mares
15866ae3650aSMartin Mares	* setpci.c (exec_op): Fixed error messages. Thanks, Steve!
15876ae3650aSMartin Mares
15884b88a6b8SMartin MaresMon Jun  8 10:59:22 1998  Martin Mares  <[email protected]>
15894b88a6b8SMartin Mares
15904b88a6b8SMartin Mares	* Released as 1.05.
15914b88a6b8SMartin Mares
15924b88a6b8SMartin Mares	* setpci.c: Problems with pread()/pwrite() with glibc on Alpha
15934b88a6b8SMartin Mares	should be gone. Again thanks to Steve for bug report.
15944b88a6b8SMartin Mares
15954b88a6b8SMartin Mares	* filter.c (filter_parse_slot): Fixed ":x" type filters.
15964b88a6b8SMartin Mares
15974b88a6b8SMartin Mares	* pci.ids: Killed duplicate entry. Thanks to Stephen Williams
15984b88a6b8SMartin Mares	<[email protected]> for reporting this.
15994b88a6b8SMartin Mares
16004b88a6b8SMartin MaresSun Jun  7 19:27:51 1998  Martin Mares  <[email protected]>
16014b88a6b8SMartin Mares
16024b88a6b8SMartin Mares	* lspci.c (main), setpci.c (main): Implemented "--version".
16034b88a6b8SMartin Mares
16044b88a6b8SMartin Mares	* Released as 1.04.
16054b88a6b8SMartin Mares
16064b88a6b8SMartin Mares	* pciutils.h (PCIUTILS_VERSION): Added version string.
16074b88a6b8SMartin Mares
16084b88a6b8SMartin Mares	* filter.c, names.c: Extraneous #include <linux/pci.h> removed.
16094b88a6b8SMartin Mares	Thanks to Geert Uytterhoeven <[email protected]>
16104b88a6b8SMartin Mares	for bug report.
16114b88a6b8SMartin Mares
16129b306998SMartin MaresThu May 28 14:45:58 1998  Martin Mares  <[email protected]>
16139b306998SMartin Mares
16149b306998SMartin Mares	* pci.ids: More updates from Jens Maurer.
16159b306998SMartin Mares
1616b372672fSMartin MaresWed Apr 22 10:00:39 1998  Martin Mares  <[email protected]>
1617b372672fSMartin Mares
1618b372672fSMartin Mares	* pci.ids: Updates from Jens Maurer.
1619b372672fSMartin Mares
1620b2c9b373SMartin MaresSun Apr 19 11:14:25 1998  Martin Mares  <[email protected]>
1621b2c9b373SMartin Mares
1622b372672fSMartin Mares	* Released as 1.03.
1623b372672fSMartin Mares
1624b2c9b373SMartin Mares	* setpci.8: Written.
1625b2c9b373SMartin Mares
1626b2c9b373SMartin Mares	* setpci.c: Finished.
1627b2c9b373SMartin Mares
1628b2c9b373SMartin Mares	* lspci.c: Now able to fetch expansion ROM base from kernel device list
1629b2c9b373SMartin Mares	and print it if not in buscentric mode.
1630b2c9b373SMartin Mares
1631e4842ff3SMartin MaresTue Mar 31 23:11:57 1998  Martin Mares  <[email protected]>
1632e4842ff3SMartin Mares
1633e4842ff3SMartin Mares	* setpci.c: Added.
1634e4842ff3SMartin Mares
1635e4842ff3SMartin MaresSun Mar 22 15:39:08 1998  Martin Mares  <[email protected]>
1636e4842ff3SMartin Mares
1637e4842ff3SMartin Mares	* lspci.8: Updated the documentation.
1638e4842ff3SMartin Mares
1639e4842ff3SMartin Mares	* lspci.c: Modified to use the new filtering mechanism (options -f and -d).
1640e4842ff3SMartin Mares
1641e4842ff3SMartin Mares	* filter.c: Introduced new generic device filter.
1642e4842ff3SMartin Mares
1643008407bdSMartin MaresThu Mar 19 17:03:48 1998  Martin Mares  <[email protected]>
1644008407bdSMartin Mares
1645008407bdSMartin Mares	* lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying
1646008407bdSMartin Mares	of PCI-to-PCI bridges in the tree format.
1647008407bdSMartin Mares
16480a33d0ecSMartin MaresSun Feb 15 10:12:25 1998  Martin Mares  <[email protected]>
16490a33d0ecSMartin Mares
16500a33d0ecSMartin Mares	* lspci.c (show_machine): Added non-verbose mode of machine-readable
16510a33d0ecSMartin Mares	dump.
16520a33d0ecSMartin Mares
16530a33d0ecSMartin Mares	* pci.ids: Updates from Jens Maurer.
16540a33d0ecSMartin Mares
16550a33d0ecSMartin Mares	* Released as version 1.02.
16560a33d0ecSMartin Mares
16570a33d0ecSMartin MaresThu Feb 12 16:53:28 1998  Martin Mares  <[email protected]>
16580a33d0ecSMartin Mares
16590a33d0ecSMartin Mares	* lspci.c: Added a "-m" switch for dumping machine-readable
16600a33d0ecSMartin Mares	configuration data (requested by Bjoern Kriews <[email protected]>).
16610a33d0ecSMartin Mares
1662fb38eee8SMartin MaresMon Feb  9 13:17:43 1998  Martin Mares  <[email protected]>
1663fb38eee8SMartin Mares
1664fb38eee8SMartin Mares	* Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h>
1665fb38eee8SMartin Mares	if available. This should avoid all problems with official kernel
1666fb38eee8SMartin Mares	not synchronized to newer PCI code in CVS -- standard distribution
1667fb38eee8SMartin Mares	of pciutils now contains pci.h from current CVS kernel, pciutils
1668fb38eee8SMartin Mares	in CVS contain no pci.h and use the correct kernel include.
1669fb38eee8SMartin Mares
1670fb38eee8SMartin Mares	* Makefile: Fixed installation path for man pages.
1671fb38eee8SMartin Mares
16722f48f637SMartin MaresSat Feb  7 15:15:46 1998  Martin Mares  <[email protected]>
16732f48f637SMartin Mares
16742f48f637SMartin Mares	* README: Updated.
16752f48f637SMartin Mares
16762f48f637SMartin Mares	* lspci.8: Created a man page.
16772f48f637SMartin Mares
16782f48f637SMartin Mares	* Releasing as version 1.0.
16792f48f637SMartin Mares
16802f48f637SMartin MaresTue Feb  3 20:56:00 1998  Martin Mares  <[email protected]>
16812f48f637SMartin Mares
16822f48f637SMartin Mares	* Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx
16832f48f637SMartin Mares	to all the C sources. This should eliminate problems with 32-bit compilers
16842f48f637SMartin Mares	on sparc64.
16852f48f637SMartin Mares
16862f48f637SMartin Mares	* lspci.c (show_verbose): Recognize CardBus bridge header type.
16872f48f637SMartin Mares	(show_htype2): Stub routine.
16882f48f637SMartin Mares	(scan_config): Write sensible error message if the kernel denies reading of
16892f48f637SMartin Mares	upper part of the PCI config space.
1690