xref: /pciutils/ChangeLog (revision 31c9bb28)
13de798bdSMartin Mares2007-10-19  Martin Mares <[email protected]>
23de798bdSMartin Mares
33de798bdSMartin Mares	* pci.ids: Revised class codes to match Conventional PCI 3.0 specs.
43de798bdSMartin Mares	Added a couple of new ones, renumbered `ADMA continuous operation'
53de798bdSMartin Mares	prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention
63de798bdSMartin Mares	0x40) and renumbered the satellite communication controllers.
73de798bdSMartin Mares
82d2c4810SMartin Mares	* lib/header.h: Include `PCI hot-plug' and `Secure device'
92d2c4810SMartin Mares	capabilities from PCI 3.0 specs.
102d2c4810SMartin Mares
11fa2273caSMartin Mares	* lspci.c: All known capabilities have at least their name displayed
12fa2273caSMartin Mares	now. When we are unable to decode them completely, we signalize it
13fa2273caSMartin Mares	with a `<?>' mark.
14fa2273caSMartin Mares
15fa2273caSMartin Mares	* lspci.man: Document `<?>' and also mention that extended config
16fa2273caSMartin Mares	space is currently available only with the linux_sysfs back-end.
17fa2273caSMartin Mares
18*31c9bb28SMartin Mares	* lspci.c: Decode the Debug port capability (per EHCI 0.96 spec).
19*31c9bb28SMartin Mares
209c79fcc4SMartin Mares2007-10-14  Martin Mares <[email protected]>
219c79fcc4SMartin Mares
229c79fcc4SMartin Mares	* lib/[fno]bsd-*: Removed extraneous braces.
239c79fcc4SMartin Mares
24d5b4cd14SMartin Mares2007-10-12  Martin Mares <[email protected]>
25d5b4cd14SMartin Mares
26d5b4cd14SMartin Mares	* Capability loop detection introduced 2.2.7 did not work
27d5b4cd14SMartin Mares	  properly with extended capabilities. Fixed.
28d5b4cd14SMartin Mares
29594de878SMartin Mares2007-10-05  Martin Mares <[email protected]>
30594de878SMartin Mares
318a23eadcSMartin Mares	* Released as 2.2.7.
328a23eadcSMartin Mares
33594de878SMartin Mares	* lspci.c (show_caps, show_ext_caps): Detect and report loops in
34594de878SMartin Mares	capability lists.
35594de878SMartin Mares
368a23eadcSMartin Mares	* lspci.c, lib/header.h: Finished decoding of the PCI Express
378a23eadcSMartin Mares	capability. The extended capabilities remain undecoded for now,
388a23eadcSMartin Mares	but at least the list of them has been updated to reflect the
398a23eadcSMartin Mares	current PCI Express 2.0 spec.
408a23eadcSMartin Mares
418a23eadcSMartin Mares	* lspci.c, lib/header.h: Decode new bits of traditional registers
428a23eadcSMartin Mares	as defined by PCIE / PCI-X. This includes discard timers in the bridge
438a23eadcSMartin Mares	control register and INTx enable/status in device control/status
448a23eadcSMartin Mares	registers.
458a23eadcSMartin Mares
468a23eadcSMartin Mares	* lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed
478a23eadcSMartin Mares	by Marius Strobl.
488a23eadcSMartin Mares
4999091df9SMartin Mares2007-09-12  Hasso Tepper <[email protected]>
5099091df9SMartin Mares
5199091df9SMartin Mares	* Extended the fbsd-device backend to run on Dragonfly BSD.
5299091df9SMartin Mares
5399091df9SMartin Mares	* lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>.
5499091df9SMartin Mares
5509156b3bSMartin Mares2007-09-03  Martin Mares <[email protected]>
5609156b3bSMartin Mares
5709156b3bSMartin Mares	* Resurrected the Windows port, including cross-compilation by MinGW.
5809156b3bSMartin Mares	Patch by Samuel Bronson <[email protected]>.
5909156b3bSMartin Mares
60325a3c50SMartin Mares2007-08-31  Martin Mares <[email protected]>
61325a3c50SMartin Mares
62325a3c50SMartin Mares	* Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to allow
63325a3c50SMartin Mares	cross-compilation.
64325a3c50SMartin Mares
65a2322147SMartin Mares2007-08-27  Martin Mares  <[email protected]>
66a2322147SMartin Mares
67a2322147SMartin Mares	* lib/names.c (pci_open): When calling gzopen(), use "rb" file mode
68a2322147SMartin Mares	instead of "r". This is needed on DOS systems, where this function
69a2322147SMartin Mares	somewhat illogically uses the binary flag for the compressed file
70a2322147SMartin Mares	instead of the decompressed stream inside, where binariness really
71a2322147SMartin Mares	matters.
72a2322147SMartin Mares
734f2c5b94SMartin Mares2007-08-14  Martin Mares  <[email protected]>
744f2c5b94SMartin Mares
754f2c5b94SMartin Mares	* lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability,
764f2c5b94SMartin Mares	based on a patch by Jason Gunthorpe.
774f2c5b94SMartin Mares
784f2c5b94SMartin Mares	* tests/cap-MSI-mapping: Added a test case. I plan to add test cases
794f2c5b94SMartin Mares	(which are dumps of config space) for all new features.
804f2c5b94SMartin Mares
810d7f5331SMartin Mares2007-06-20  Martin Mares  <[email protected]>
820d7f5331SMartin Mares
837cebe481SMartin Mares	* Released as 2.2.6.
847cebe481SMartin Mares
850d7f5331SMartin Mares	* Makefile: Added an "install-lib" target. Thanks to Dan Nicholson
860d7f5331SMartin Mares	for a patch.
870d7f5331SMartin Mares
887cebe481SMartin Mares	* Makefile, lib/Makefile: Generate and install pkg-config file
897cebe481SMartin Mares	for libpci. Again by Dan Nicholson.
907cebe481SMartin Mares
910d7f5331SMartin Mares2007-06-20  Thomas Schwinge  <[email protected]>
920d7f5331SMartin Mares
930d7f5331SMartin Mares	* lib/i386-io-hurd.h: Rewritten for new Hurd kernels.
940d7f5331SMartin Mares
956e4a45edSMartin Mares2007-05-04  Martin Mares  <[email protected]>
966e4a45edSMartin Mares
9755c89179SMartin Mares	* Released as 2.2.5.
9855c89179SMartin Mares
996e4a45edSMartin Mares	* pci.ids: Updated to the current snapshot of the database.
1006e4a45edSMartin Mares
101d0b07542SMartin Mares2007-02-14  Martin Mares  <[email protected]>
102d0b07542SMartin Mares
103d0b07542SMartin Mares	* lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type.
104d0b07542SMartin Mares	Patch by Mark Glines.
105d0b07542SMartin Mares
1063df35926SMartin Mares2007-02-09  Martin Mares  <[email protected]>
1073df35926SMartin Mares
1083df35926SMartin Mares	* pci.ids: Updated to the current snapshot of the database.
1093df35926SMartin Mares
110e49ed044SMartin Mares2007-02-06  Martin Mares  <[email protected]>
111e49ed044SMartin Mares
1121ac3a99dSMartin Mares	* Replaced bzero() by memset() everywhere, it's better to lose a tiny
1131ac3a99dSMartin Mares	bit of readability than maintain hacks to make it work on various systems.
1141ac3a99dSMartin Mares
115b0eb18ccSMartin Mares	* lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]'
116b0eb18ccSMartin Mares	instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise.
117b0eb18ccSMartin Mares
118e49ed044SMartin Mares	* lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise
119e49ed044SMartin Mares	integer types.
120e49ed044SMartin Mares
1219de2768cSMartin Mares2007-02-04  Martin Mares  <[email protected]>
1229de2768cSMartin Mares
1239de2768cSMartin Mares	* lspci.c: alloca() needs <alloca.h>.
1249de2768cSMartin Mares
125d19394dbSMartin Mares2006-09-17  Martin Mares  <[email protected]>
126d19394dbSMartin Mares
127d19394dbSMartin Mares	* lib/dump.c: Fixed a couple of bugs in the dump backend which caused
128d19394dbSMartin Mares	devices with domains or with extended config space to be read incorrectly.
129d19394dbSMartin Mares	Also, dumps with partial lines are allowed now.
130d19394dbSMartin Mares
131934e7e36SMartin Mares2006-09-10  Martin Mares  <[email protected]>
132934e7e36SMartin Mares
133f09856deSMartin Mares	* pci.ids: Updated to the current database snapshot.
134f09856deSMartin Mares
135934e7e36SMartin Mares	* lspci.c (scan_device): If an error occurs when reading the standard config
136934e7e36SMartin Mares	header of a device, report it and ignore the device and return with exit
137934e7e36SMartin Mares	code 2 at the end.
138934e7e36SMartin Mares
139b2055313SMartin Mares2006-09-09  Martin Mares  <[email protected]>
140b2055313SMartin Mares
141fb260653SMartin Mares	* Released as 2.2.4.
142fb260653SMartin Mares
1431865e2ddSMartin Mares	* maint/release: Remind the maintainer about the current PCI_LIB_VERSION.
1441865e2ddSMartin Mares
145028dffb2SMartin Mares	* lib/pci.h: Updated PCI_LIB_VERSION.
146028dffb2SMartin Mares
14713081e57SMartin Mares	* lspci.c (show_machine): In the `-m' mode, do proper shell escaping
14813081e57SMartin Mares	if the fields printed contain quotes or backslashes.
14913081e57SMartin Mares
1503fd6b4d2SMartin Mares	* lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse
1513fd6b4d2SMartin Mares	of the `Device' tag for two different purposes.
1523fd6b4d2SMartin Mares
153840d09aeSMartin Mares	* Makefile: Moved all system-dependent decisions to lib/configure,
154840d09aeSMartin Mares	since config.mk is included in the top-level Makefile anyway.
155840d09aeSMartin Mares
1562100f710SMartin Mares	* lib/configure: When configuring for Linux, ignore the kernel version
1572100f710SMartin Mares	and always build all access methods.
1582100f710SMartin Mares
1593e9c7a18SMartin Mares	* Makefile (CFLAGS): Removed -Winline, it's not needed and triggers
1603e9c7a18SMartin Mares	at many non-interesting places with gcc 3.4.
1613e9c7a18SMartin Mares
16294db5c82SMartin Mares	* Whitespace cleanup of all source files.
16394db5c82SMartin Mares
164cc062b4aSMartin Mares	* The pci.ids file can be stored compressed if zlib is available.
165cc062b4aSMartin Mares	Added transparent decompression to lib/names.c, modified update-pciids.sh
166cc062b4aSMartin Mares	to keep the file compressed if applicable, updated Makefiles.
167cc062b4aSMartin Mares	Based on a patch by Matthew Wilcox, but all the bugs are mine.
168cc062b4aSMartin Mares
169f4ddb8d3SMartin Mares	* Makefile, README: Allow installation to be done to a different directory
170f4ddb8d3SMartin Mares	from the one we will eventually be placed in by setting DESTDIR.
171f4ddb8d3SMartin Mares	Patch by Matthew Wilcox.
172f4ddb8d3SMartin Mares
17316e37012SMartin Mares	* Added .gitignore files.
17416e37012SMartin Mares
175c7f5314dSMartin Mares	* Makefile (clean): Clean *.orig, too.
176c7f5314dSMartin Mares
177afebde01SMartin Mares	* Cleaned up usage of `char' and `byte'.
178afebde01SMartin Mares
179fd54ccebSMartin Mares	* lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01.
180fd54ccebSMartin Mares
181b2055313SMartin Mares	* lib/header.h: Added PCI_CLASS_xxx constants for all classes currently
182b2055313SMartin Mares	defined in the pci.ids file.
183b2055313SMartin Mares
1844254d153SMartin Mares2006-08-01  Martin Mares  <[email protected]>
1854254d153SMartin Mares
1864254d153SMartin Mares	* lib/i386-io-hurd.h: Fixed a silly typo.
1874254d153SMartin Mares
1881c5cc9b5SMartin Mares2006-07-30  Martin Mares  <[email protected]>
1891c5cc9b5SMartin Mares
19038a9e3c3SMartin Mares	* lib/Makefile: Added a missing rule for obsd-device.o.
19138a9e3c3SMartin Mares
192c7ddfa3eSMartin Mares	* lspci.c, lib/header.h: Added support for MSI per-vector masking.
193c7ddfa3eSMartin Mares	Contributed by Petr Vandrovec.
194c7ddfa3eSMartin Mares
195248a04f8SMartin Mares	* lspci.c, lib/header.h: Added support for the `bridge subsystem ID'
196248a04f8SMartin Mares	capability. Contributed by Petr Vandrovec.
197248a04f8SMartin Mares
198f29dcc87SMartin Mares	* lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable
199f29dcc87SMartin Mares	memory windows. Fix by Petr Vandrovec.
200f29dcc87SMartin Mares
2018eab3bffSMartin Mares	* maint/release.pm: Exclude .git directory from releases.
2028eab3bffSMartin Mares
203d305d704SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Report failures during port access
204d305d704SMartin Mares	initialization by a->warn() instead of calling printf() or perror()
205d305d704SMartin Mares	directly.
206d305d704SMartin Mares
2079007a292SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of
2089007a292SMartin Mares	the port access state to generic code.
2099007a292SMartin Mares
210bd20d5b5SMartin Mares	* lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately.
211bd20d5b5SMartin Mares	Contributed by Thomas Schwinge and Samuel Thibault.
212bd20d5b5SMartin Mares
21373750606SMartin Mares	* lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module.
21473750606SMartin Mares
215d71daa45SMartin Mares	* lib/header.h: Whitespace cleanups.
216d71daa45SMartin Mares
2171c5cc9b5SMartin Mares	* lib/i386-io-windows.h: Fixed indentation and spelling.
2181c5cc9b5SMartin Mares
2191c5cc9b5SMartin Mares	* README.Windows: Mention that WinIO.dll is needed and where to get it.
2201c5cc9b5SMartin Mares
221c2b144efSMartin Mares2006-06-27  Martin Mares  <[email protected]>
222c2b144efSMartin Mares
22314d4f989SMartin Mares	* lib/Makefile, Makefile: Added rules for building and cleaning the example.
22414d4f989SMartin Mares
22514d4f989SMartin Mares	* lib/example.c: Show how to use PCI_FILL_CLASS and used another register
22614d4f989SMartin Mares	for demonstrating the config space accesses. The example is still very
22714d4f989SMartin Mares	incomplete, though.
22814d4f989SMartin Mares
229c2b144efSMartin Mares	* lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS.
230c2b144efSMartin Mares
231c2b144efSMartin Mares	* lib/sysfs.c: Fetch device ID and class from sysfs, because they can
232c2b144efSMartin Mares	be modified by kernel fixups.
233c2b144efSMartin Mares
234c2b144efSMartin Mares	* lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch.
235c2b144efSMartin Mares
236bc2eed2dSMartin Mares2006-06-03  Martin Mares  <[email protected]>
237bc2eed2dSMartin Mares
238bc2eed2dSMartin Mares	* lspci.c: Introduced the -nn switch. Thanks to David N. Welton
239bc2eed2dSMartin Mares	for the idea.
240bc2eed2dSMartin Mares
241bc2eed2dSMartin Mares	* lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and
242bc2eed2dSMartin Mares	cleaned up the name selection code.
243bc2eed2dSMartin Mares
244c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given,
245c72eeddeSMartin Mares	pci_access->numeric_ids is ignored.
246c72eeddeSMartin Mares
247c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): When class is identified and
248c72eeddeSMartin Mares	subclass isn't, display class name and subclass number.
249c72eeddeSMartin Mares
2502f294d4bSMartin Mares2006-05-31  Martin Mares  <[email protected]>
2512f294d4bSMartin Mares
2522f294d4bSMartin Mares	* setpci.c (main): Don't crash when an invalid width is specified.
2532f294d4bSMartin Mares
25481afa98cSMartin Mares	* lspci.c, setpci.c, common.c: die() now uses the right program
25581afa98cSMartin Mares	name when printing an error message.
25681afa98cSMartin Mares
2570ac282f2SMartin Mares2006-05-19  Martin Mares  <[email protected]>
2580ac282f2SMartin Mares
2590ac282f2SMartin Mares	* README: Mention the public GIT tree.
2600ac282f2SMartin Mares
2610ac282f2SMartin Mares	* README: Updated the list of ports.
2620ac282f2SMartin Mares
263d1058e9dSMartin Mares2006-05-10  Martin Mares  <[email protected]>
264d1058e9dSMartin Mares
265d1058e9dSMartin Mares	* lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD.
266d1058e9dSMartin Mares	Thanks to Petr Salinger for the patch.
267d1058e9dSMartin Mares
268abf8d505SMartin Mares2006-05-05  Martin Mares  <[email protected]>
269abf8d505SMartin Mares
2702ae2d1aeSMartin Mares	* Released as 2.2.3.
2712ae2d1aeSMartin Mares
2722ae2d1aeSMartin Mares	* lspci.c (scan_device): The -D switch didn't work as intended
2732ae2d1aeSMartin Mares	in -m mode.
2742ae2d1aeSMartin Mares
2752ae2d1aeSMartin Mares2006-05-05  Martin Mares  <[email protected]>
2762ae2d1aeSMartin Mares
2771d5cf727SMartin Mares	* Released as 2.2.2.
2781d5cf727SMartin Mares
2798a830168SMartin Mares	* pci.ids: Updated to the current database snapshot.
2808a830168SMartin Mares
281b6359063SMartin Mares	* lib/obsd-device.c (and other files in lib/*): Added OpenBSD
282b6359063SMartin Mares	interface by Matthieu Herrb <[email protected]>, based on
283b6359063SMartin Mares	the existing FreeBSD interface.
284b6359063SMartin Mares
285abf8d505SMartin Mares	* Moved pciutils to a GIT repository, which now contains merged
286abf8d505SMartin Mares	history from both CVS and Arch. Good bye, TLA!
287abf8d505SMartin Mares
2886ac70402SMartin Mares2006-03-21  Martin Mares  <[email protected]>
2896ac70402SMartin Mares
2902a124daeSMartin Mares	* lspci.c (show_slot_name): Avoid the previous changes in default
2912a124daeSMartin Mares	display of domain name when in machine-readable mode. However, `-D'
2922a124daeSMartin Mares	forces domain display even there.
2932a124daeSMartin Mares
2946ac70402SMartin Mares	* lspci.man: Added a warning on -m being the only format, which is
2956ac70402SMartin Mares	guaranteed to be stable between lspci versions.
2966ac70402SMartin Mares
2971bbdea17SMartin Mares2006-03-13  Martin Mares  <[email protected]>
2981bbdea17SMartin Mares
299af61eb25SMartin Mares	* lspci.man: Documented the -D switch.
300af61eb25SMartin Mares
301af61eb25SMartin Mares	* lspci.c (show_slot_name, scan_device): If there are multiple PCI
302af61eb25SMartin Mares	domains or if the `-D' switch is used, show the domain number for
303af61eb25SMartin Mares	all devices.
304af61eb25SMartin Mares
3057a61b93cSMartin Mares	* lspci.c (show_verbose): Report cache line size in bytes.
3067a61b93cSMartin Mares
3071bbdea17SMartin Mares	* update-pciids.sh: Use curl if available. Patch by Matthew Wilcox.
3081bbdea17SMartin Mares
3090e78ef8aSMartin Mares2006-01-04  Martin Mares  <[email protected]>
3100e78ef8aSMartin Mares
3110e78ef8aSMartin Mares	* lspci.c (show_express_link): Fixed decoding of link status register.
3120e78ef8aSMartin Mares	Thanks to Roland Dreier for his report.
3130e78ef8aSMartin Mares
314e6859953SMartin Mares2005-12-12  Martin Mares  <[email protected]>
315e6859953SMartin Mares
316e6859953SMartin Mares	* lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow
317e6859953SMartin Mares	at least read-only access. Patch by Pavel Celeda <[email protected]>.
318e6859953SMartin Mares
319e6859953SMartin Mares	* Makefile: Corrected library path on NetBSD.
320e6859953SMartin Mares
321a99c0d69SMartin Mares2005-11-26  Martin Mares  <[email protected]>
322a99c0d69SMartin Mares
323e4af70c6SMartin Mares	* Released as 2.2.1.
324e4af70c6SMartin Mares
325a99c0d69SMartin Mares	* lspci.c (show_machine): Subsystem vendors were printed incorrectly
326a99c0d69SMartin Mares	in machine-readable modes. Thanks to Pavel Celeda for a bug report.
327a99c0d69SMartin Mares
328f23fd3fcSMartin Mares2005-10-11  Martin Mares  <[email protected]>
329f23fd3fcSMartin Mares
330f23fd3fcSMartin Mares	* lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it.
331f23fd3fcSMartin Mares
33215296723SMartin Mares2005-09-21  Martin Mares  <[email protected]>
33315296723SMartin Mares
33415296723SMartin Mares	* Released as 2.2.0.
33515296723SMartin Mares
33640b6d93fSMartin Mares	* pci.ids: Updated copyright header.
33740b6d93fSMartin Mares
33815296723SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported
33915296723SMartin Mares	64-bit addresses, they are now always supported.
34015296723SMartin Mares
34115296723SMartin Mares	* lspci.c (show_bases): Corrected printing of 64-bit addresses
34215296723SMartin Mares	in bus-centric mode.
34315296723SMartin Mares
34415296723SMartin Mares	* lib/configure: Enable 64-bit addresses on all Linux systems.
34515296723SMartin Mares
34615296723SMartin Mares	* lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they
34715296723SMartin Mares	are shorter.
34815296723SMartin Mares
349224707baSMartin Mares2005-09-11  Martin Mares  <[email protected]>
350224707baSMartin Mares
351224707baSMartin Mares	* Released as 2.1.99-test11.
352224707baSMartin Mares
353224707baSMartin Mares	* lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls.
354224707baSMartin Mares
355aeaca5d3SMartin Mares2005-09-10  Martin Mares  <[email protected]>
356aeaca5d3SMartin Mares
357224707baSMartin Mares	* Released as 2.1.99-test10.
358224707baSMartin Mares
35963e6f2e0SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
36063e6f2e0SMartin Mares
361043ebdeeSMartin Mares	* update-pciids.sh: Changed the default URL for downloading pci.ids
362043ebdeeSMartin Mares	to http://pciids.sourceforge.net/v2.2/pci.ids.
363043ebdeeSMartin Mares
364043ebdeeSMartin Mares	* lib/pci.h (PCI_LIB_VERSION): Added version identifier.
365043ebdeeSMartin Mares
366aeaca5d3SMartin Mares	* lib/names.c: Rewritten the name database module almost from scratch.
367aeaca5d3SMartin Mares	Everything is much cleaner and there are hopefully no more memory leaks;
368aeaca5d3SMartin Mares	pci_lookup_name() now uses varargs in a backward compatible fashion.
369aeaca5d3SMartin Mares	Introduced PCI_LOOKUP_NO_NUMBERS.
370aeaca5d3SMartin Mares
371aeaca5d3SMartin Mares	The new code supports subsystem entries not tied to a specific device.
372aeaca5d3SMartin Mares	I had to extend the format of pci.ids in order to support it, so I have
373aeaca5d3SMartin Mares	extended the idea of the "C" (class) blocks and introduced "S" blocks
374aeaca5d3SMartin Mares	for subsystems. To avoid doing more incompatible changes in the future,
375aeaca5d3SMartin Mares	the parser skips unknown single-letter blocks without reporting errors.
376aeaca5d3SMartin Mares
377121c76c9SMartin Mares2005-08-23  Martin Mares  <[email protected]>
378121c76c9SMartin Mares
37954e13765SMartin Mares	* Released as 2.1.99-test9.
38054e13765SMartin Mares
38154e13765SMartin Mares	* Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent
38254e13765SMartin Mares	gcc versions when optimizing anyway.
38354e13765SMartin Mares
38454e13765SMartin Mares	* Made the path to pci.ids customizable and independent on the SHAREDIR.
38554e13765SMartin Mares	Just override IDSDIR in the top-level Makefile.
38654e13765SMartin Mares
38754e13765SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
38854e13765SMartin Mares
38984d437d6SMartin Mares	* lspci.man, setpci.man: Improved the man pages. Documented all access
39084d437d6SMartin Mares	methods and which operations are privileged.
39184d437d6SMartin Mares
39284d437d6SMartin Mares	* lspci.c: Another rewrite of config register caching, now also including
39384d437d6SMartin Mares	lots of internal checks. It should be now perfectly able to cope with
39484d437d6SMartin Mares	portions of the configuration space being inaccessible, for example
39584d437d6SMartin Mares	due to insufficient access rights.
39684d437d6SMartin Mares
3973b8bf739SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X
3983b8bf739SMartin Mares	capabilities. Includes partial support for PCI-X 2.0 (probably incomplete
3993b8bf739SMartin Mares	as I haven't seen the spec).
4003b8bf739SMartin Mares
4013b8bf739SMartin Mares	* lspci.c: Quell warnings about unused parameters.
4023b8bf739SMartin Mares
40384d437d6SMartin Mares	* lspci.c: Removed C++ comments.
40484d437d6SMartin Mares
4053b8bf739SMartin Mares	* lib/header.h: Merged definitions of extended capabilities and some new
4063b8bf739SMartin Mares	PCI-X capability bits from linux-2.6.11/include/pci.h.
4073b8bf739SMartin Mares
4083b8bf739SMartin Mares	* lspci.c (show_caps): Try to scan extended capabilities only if the
4093b8bf739SMartin Mares	device has either PCI-X or PCI Express capability in its normal capability
4103b8bf739SMartin Mares	list.
4113b8bf739SMartin Mares
412f7821e53SMartin Mares	* lib/dump.c (dump_init): Reading of dumps works again. The dump reader
413f7821e53SMartin Mares	now also remembers how much data it has read and refuses attempts to
414f7821e53SMartin Mares	access more than that.
415ea4e5f5dSMartin Mares
41646ea554dSMartin Mares	* setpci.man, lspci.c, README: prefer spelling "buses" over "busses".
41746ea554dSMartin Mares
4188afaab22SMartin Mares	* lspci.c: If alloca() is not available, use xmalloc(), not malloc().
4198afaab22SMartin Mares
420121c76c9SMartin Mares	* lib/configure: Added x86_64 on Linux.
421121c76c9SMartin Mares
422c1c2c30eSMartin Mares2005-08-22  Martin Mares  <[email protected]>
423c1c2c30eSMartin Mares
424b9ca9147SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters.
425b9ca9147SMartin Mares	Thanks to Matthew Wilcox for bug report.
426b9ca9147SMartin Mares
427c1c2c30eSMartin Mares	* lspci.c: Corrected spelling of "Hz" (it was "hz" at several places).
428b9ca9147SMartin Mares	Thanks to Krzysztof Oledzki for pointing that out.
429c1c2c30eSMartin Mares
43026542a0bSMartin Mares2004-08-19  Martin Mares  <[email protected]>
43126542a0bSMartin Mares
43226542a0bSMartin Mares	* pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism,
43326542a0bSMartin Mares	because pciutils by default install to /usr/sbin. Update.
43426542a0bSMartin Mares
4356aa54f1bSMartin Mares2004-08-13  Martin Mares  <[email protected]>
4366aa54f1bSMartin Mares
437aabb0a92SMartin Mares	* Released as 2.1.99-test8.
438aabb0a92SMartin Mares
439f31412d1SMartin Mares	* lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are
440f31412d1SMartin Mares	no longer exported to the outside world.
441f31412d1SMartin Mares
442ee7d8384SMartin Mares	* README.Windows: Updated.
443ee7d8384SMartin Mares
444ee7d8384SMartin Mares	* maint/release: Substitute version number in win32/config.h.
445ee7d8384SMartin Mares
446ee7d8384SMartin Mares	* win32/config.h: Added.
447ee7d8384SMartin Mares
448ee7d8384SMartin Mares	* lib/sysdep.h (bzero, strcasecmp): are macros on Windows.
449ee7d8384SMartin Mares
450ee7d8384SMartin Mares	* compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU
451ee7d8384SMartin Mares	C library for use on systems where the default libraries lack
452ee7d8384SMartin Mares	proper getopt. Currently used by the Windows port.
453ee7d8384SMartin Mares
454ee7d8384SMartin Mares	* lib/sysdep.h, lib/types.h: Updates of the Windows port from
455ee7d8384SMartin Mares	Alexander Stock.
456ee7d8384SMartin Mares
457489233b4SMartin Mares	* lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define
458489233b4SMartin Mares	its own u8, u16, u32, byte and word types and uses what the user
459489233b4SMartin Mares	has supplied instead. With this change, all namespace clashes should
460489233b4SMartin Mares	be gone.
461489233b4SMartin Mares
462489233b4SMartin Mares	* Makefile, lib/Makefile: Updated dependencies.
463489233b4SMartin Mares
464489233b4SMartin Mares	* pciutils.h: Include lib/sysdep.h and move NONRET et al. there.
465489233b4SMartin Mares
466489233b4SMartin Mares	* lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because
467489233b4SMartin Mares	it is included unconditionally in lib/types.h.
468489233b4SMartin Mares
469489233b4SMartin Mares	* Moved system-dependent stuff from lib/internal.h to lib/sysdep.h,
470489233b4SMartin Mares	which is also used by the utilities. Also moved type declarations
471489233b4SMartin Mares	from lib/pci.h to lib/types.h.
472489233b4SMartin Mares
473489233b4SMartin Mares	* All files: Prepend a "PCI_" prefix in front of all configuration
474489233b4SMartin Mares	defines to avoid namespace clashes. CAVEAT: If there is any libpci
475489233b4SMartin Mares	application using the (undocumented) defines, it has to be updated.
476489233b4SMartin Mares
477489233b4SMartin Mares	* lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing
478489233b4SMartin Mares	headers with the kernel a couple of years ago.
479489233b4SMartin Mares
4809bb4b4eaSMartin Mares	* lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6.
4819bb4b4eaSMartin Mares
4826aa54f1bSMartin Mares	* lspci.c (show_rom): Use the same logic for printing disabled
4836aa54f1bSMartin Mares	or unassigned ROM's as we do in show_bases() for the other BAR's.
4846aa54f1bSMartin Mares
4856aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Better reaction to
4866aa54f1bSMartin Mares	invalid 64-bit addresses. Also d->hdrtype should not include
4876aa54f1bSMartin Mares	bit 7, which caused mysterious errors on multi-function devices.
4886aa54f1bSMartin Mares
4896aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Fill in base addresses
4906aa54f1bSMartin Mares	even if the regions are known to be disabled. It is the client's
4916aa54f1bSMartin Mares	job to interpret them. (And it is not a trivial job if you want
4926aa54f1bSMartin Mares	to do it correctly, since you need to check I/O and memory enables
4936aa54f1bSMartin Mares	on all upstream bridges, too.) However, it could be interesting to
4946aa54f1bSMartin Mares	introduce functions for interpreting the addresses and even for
4956aa54f1bSMartin Mares	mapping the regions and doing I/O on them.
4966aa54f1bSMartin Mares
49780e6c636SMartin Mares2004-07-30  Martin Mares  <[email protected]>
49880e6c636SMartin Mares
49980e6c636SMartin Mares	* lspci.c: HyperTransport improvements from Maciej.
50080e6c636SMartin Mares
501d6324891SMartin Mares2004-07-11  Martin Mares  <[email protected]>
502d6324891SMartin Mares
503d6324891SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Arguments now correspond
504d6324891SMartin Mares	to the format string. [Patch by Bill Nottingham]
505d6324891SMartin Mares
506ec25b52dSMartin Mares2004-07-05  Martin Mares  <[email protected]>
507ec25b52dSMartin Mares
508362be683SMartin Mares	* Released as 2.1.99-test7.
509362be683SMartin Mares
510ec25b52dSMartin Mares	* lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but
511ec25b52dSMartin Mares	ended up with rewriting the fetching mechanism to be fully dynamic,
512ec25b52dSMartin Mares	but avoid reading config space registers not explicitly requested.
513ec25b52dSMartin Mares
514ec25b52dSMartin Mares2004-06-29  Matthew Wilcox <[email protected]>
515ec25b52dSMartin Mares
516ec25b52dSMartin Mares	* lspci.c: More work on PCI Express dumping.
517ec25b52dSMartin Mares
518ec25b52dSMartin Mares	* lib/header.h: Updated PCI Express capability definitions.
519ec25b52dSMartin Mares
520ec25b52dSMartin Mares	* lib/proc.c (proc_read): Removed bogus warning.
521ec25b52dSMartin Mares
522ec25b52dSMartin Mares	* common.c (xrealloc): Introduced.
523ec25b52dSMartin Mares
524ec25b52dSMartin Mares	* lspci.man: Added -xxxx.
525ec25b52dSMartin Mares
52609817437SMartin Mares2004-06-27  Martin Mares  <[email protected]>
52709817437SMartin Mares
528d1fa27ebSMartin Mares	* Released as 2.1.99-test6.
529d1fa27ebSMartin Mares
5304d67aa89SMartin Mares	* lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap.
5314d67aa89SMartin Mares	Patch by Roland Dreier <[email protected]>, cleaned up by me.
5324d67aa89SMartin Mares
5334d67aa89SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch()
5344d67aa89SMartin Mares	failures.
5354d67aa89SMartin Mares
5364d67aa89SMartin Mares	* lib/header.h: Added PCI Express extended capabilities. Again by Matthew.
5374d67aa89SMartin Mares
5384d67aa89SMartin Mares	* lspci.c (show_express): Added dumping of PCI Express cap.
5394d67aa89SMartin Mares	Patch by Matthew Wilcox.
5404d67aa89SMartin Mares
5414d67aa89SMartin Mares	* lib/header.h: Added a list of PCI 3.0 capabilities and also details
5424d67aa89SMartin Mares	on PCI Express caps. Patch by Matthew Wilcox <[email protected]>.
5434d67aa89SMartin Mares
54409817437SMartin Mares	* lspci.c (check_root): Gone. No explicit checks for root are needed,
54509817437SMartin Mares	report correct errors reported by the libpci instead.
54609817437SMartin Mares
54709817437SMartin Mares	* lspci.c: Added dumping of the extended config space on "-xxxx".
54809817437SMartin Mares	Better caching of config registers.
54909817437SMartin Mares
55009817437SMartin Mares	* setpci.c (main): Allow access to whole 4096 bytes of the config space.
55109817437SMartin Mares
55209817437SMartin Mares	* lib/sysfs.c, lib/proc.c: Don't print error messages on short reads,
55309817437SMartin Mares	just return the appropriate error code.
55409817437SMartin Mares
55509817437SMartin Mares	* lib: Added support for extended (4096-byte) configuration space,
55609817437SMartin Mares	currently implemented only in Linux proc and sysfs access methods
55709817437SMartin Mares	and of course in the dump reader.
55809817437SMartin Mares
5590d656226SMartin Mares2004-05-29  Martin Mares  <[email protected]>
5600d656226SMartin Mares
561c0eece92SMartin Mares	* Released as 2.1.99-test5.
562c0eece92SMartin Mares
563a2413560SMartin Mares	* lib/pci.h: Windows don't have the standard u_int* types.
564a2413560SMartin Mares
565a2413560SMartin Mares	* lib/internal.h: <sys/param.h> required on Windows for endianity
566a2413560SMartin Mares	macros.
567a2413560SMartin Mares
568a2413560SMartin Mares	* lib/i386-ports.c: Connected i386-io-windows.h.
569a2413560SMartin Mares
570a2413560SMartin Mares	* lspci.c (check_root): geteuid() is not available on Windows.
571a2413560SMartin Mares
572a2413560SMartin Mares	* lib/i386-io-windows.h: Added Windows port contributed by Alexander
573a2413560SMartin Mares	Stock <[email protected]>.
574a2413560SMartin Mares
575a2413560SMartin Mares	* lib/configure: Hopefully fixed SunOS port broken by various
576a2413560SMartin Mares	changes to the configure script.
577a2413560SMartin Mares
5780d656226SMartin Mares	* Makefile, lib/configure: Cross-compilation support, patch by Maciej.
5790d656226SMartin Mares
580138c0385SMartin Mares2004-05-28  Martin Mares  <[email protected]>
581138c0385SMartin Mares
5829f490382SMartin Mares	* Released as 2.1.99-test4.
5839f490382SMartin Mares
584cce2caacSMartin Mares	* lspci.c (show_verbose): Header type 1 is probably legal for all
585cce2caacSMartin Mares	types of bridges, not only for PCI-to-PCI bridges.
586cce2caacSMartin Mares
587b569ef09SMartin Mares	* lspci.c (format_agp_rate): Write "x16", not "x@".
588b569ef09SMartin Mares	(show_agp): rate[] could overflow.
589b569ef09SMartin Mares	Bugs reported by Jakub Bogusz <[email protected]>.
590b569ef09SMartin Mares
591bfc4fe7aSMartin Mares	* lspci.c (show_ht_*): Show HyperTransport capability with all its
592bfc4fe7aSMartin Mares	details. Once again code by Maciej simplified (i.e., possibly broken)
593bfc4fe7aSMartin Mares	by me.
594bfc4fe7aSMartin Mares
595bfc4fe7aSMartin Mares	* lib/header.h: Added declarations of HyperTransport capability.
596bfc4fe7aSMartin Mares	Again thanks to Maciej.
597bfc4fe7aSMartin Mares
598138c0385SMartin Mares	* lspci.c: Decode all bits of the secondary status word in type 1 headers.
599138c0385SMartin Mares	Thanks to Maciej W. Rozycki <[email protected]> for the patch.
600138c0385SMartin Mares
6018fc75dbcSMartin Mares2003-12-27  Martin Mares  <[email protected]>
6028fc75dbcSMartin Mares
60381abd2a7SMartin Mares	* Released as 2.1.99-test3.
60481abd2a7SMartin Mares
6051f7c91ccSMartin Mares	* lspci.man, setpci.man: Document domains and correct spelling.
6061f7c91ccSMartin Mares
6071f7c91ccSMartin Mares	* lib/dump.c (dump_init): Added ability to read domain numbers.
6081f7c91ccSMartin Mares
60984c8d1bbSMartin Mares	* lspci.c: Devices in domains different from 0 have their slot number
6101f7c91ccSMartin Mares	printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains
6111f7c91ccSMartin Mares	as well.
61284c8d1bbSMartin Mares
61384c8d1bbSMartin Mares	* lib/filter.c: Slot filters understand domains.
61484c8d1bbSMartin Mares
61584c8d1bbSMartin Mares	* lib/generic.c: Mention the domain in slot numbers in all error messages.
61684c8d1bbSMartin Mares
61784c8d1bbSMartin Mares	* lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong.
61884c8d1bbSMartin Mares
61984c8d1bbSMartin Mares	* lib/access.c (pci_get_dev): Added support for domains.
62084c8d1bbSMartin Mares
62184c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config
62284c8d1bbSMartin Mares	registers (or to be precise, leave it for the generic parts of the pcilib
62384c8d1bbSMartin Mares	to do so) instead of reading them from the sysfs. It's faster this way.
62484c8d1bbSMartin Mares
62584c8d1bbSMartin Mares	* lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal
62684c8d1bbSMartin Mares	variable. Better read it from the config registers (it's cached anyway).
62784c8d1bbSMartin Mares
62884c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype.
62984c8d1bbSMartin Mares	  lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it.
63084c8d1bbSMartin Mares	  Saves lots of unnecessary file accesses.
63184c8d1bbSMartin Mares
63211f7b31bSMartin Mares	* lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter
63311f7b31bSMartin Mares	is not supported by all C libraries.
63411f7b31bSMartin Mares
63511f7b31bSMartin Mares	* Makefile: Always enter the lib directory (remember that we don't have
63611f7b31bSMartin Mares	full dependecies for the library in the top-level Makefile; hmmm, another
63711f7b31bSMartin Mares	thing to rewrite some day).
63811f7b31bSMartin Mares
63911f7b31bSMartin Mares	* lib/sysfs.c: Added Linux sysfs access method based on the patch
64011f7b31bSMartin Mares	written by Matthew Wilcox <[email protected]>.
64111f7b31bSMartin Mares
64211f7b31bSMartin Mares	* lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc".
64311f7b31bSMartin Mares
64411f7b31bSMartin Mares	* lib/pread.h: The hacks to support pread on various versions
64511f7b31bSMartin Mares	of Linux libc moved there.
64611f7b31bSMartin Mares
64711f7b31bSMartin Mares	* lib/proc.c (proc_setup): The return value of snprintf() varies
64811f7b31bSMartin Mares	between glibc versions, so we need to check both for a negative
64911f7b31bSMartin Mares	values and for too large values.
65011f7b31bSMartin Mares
6514284af58SMartin Mares	* Removed last few references to the "Linux PCI Utilities", the
6524284af58SMartin Mares	package is pretty cross-platform now :)
6534284af58SMartin Mares
6544284af58SMartin Mares2003-12-27  Martin Mares  <[email protected]>
6554284af58SMartin Mares
656ab12277eSMartin Mares	* Released as 2.1.99-test2.
657ab12277eSMartin Mares
658ab12277eSMartin Mares	* README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the
659ab12277eSMartin Mares	release scripts insert the current version. "make release" is gone.
660ab12277eSMartin Mares
661ab12277eSMartin Mares	* maint/release, maint/release.pm: Added a new system of scripts for
662ab12277eSMartin Mares	making releases including inter-version diffs etc.
663ab12277eSMartin Mares
664ab12277eSMartin Mares	* Makefile: Cleaned up.
665ab12277eSMartin Mares
666ab12277eSMartin Mares	* lib/fbsd-device.c: I patched another copy of this file by mistake,
667ab12277eSMartin Mares	this time the version checks should be right.
668ab12277eSMartin Mares
669ab12277eSMartin Mares2003-12-27  Martin Mares  <[email protected]>
670ab12277eSMartin Mares
6716d722cd6SMartin Mares	* Released as 2.1.99-test1.
6726d722cd6SMartin Mares
673dd33246aSMartin Mares	* pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h:
674dd33246aSMartin Mares	Remove shadows of the syscall access method which was never
675dd33246aSMartin Mares	implemented.
676dd33246aSMartin Mares
67780b3121aSMartin Mares	* update-pciids.sh: Try to preserve permissions of the old file
67880b3121aSMartin Mares	if chmod supports --reference. Should close Debian Bug #223740.
67980b3121aSMartin Mares
6806aea909aSMartin Mares	* lib/proc.c (proc_setup): Increased path name length limit to 1024.
6816aea909aSMartin Mares	Thanks for Redhat and Mandrake for inspiration.
6826aea909aSMartin Mares
6836aea909aSMartin Mares	* lib/configure: Recognize ppc and ppc64, both have 64-bit addresses.
6846aea909aSMartin Mares	Grabbed from Redhat (Fedora) patches.
6856aea909aSMartin Mares
6866aea909aSMartin Mares2003-12-27  Martin Mares  <[email protected]>
6876aea909aSMartin Mares
688f701ff47SMartin Mares	Merged bug fixes from Debian patches:
689f701ff47SMartin Mares
690f701ff47SMartin Mares	* lspci.c (show_verbose): "Cache Line Size" should be capitalized.
691f701ff47SMartin Mares
692f701ff47SMartin Mares	* lspci.c (show_pcix_nobridge): Added a missing newline.
693f701ff47SMartin Mares
6942240db8cSMartin Mares	* lib/proc.c (proc_scan): When reading the header type, don't
6952240db8cSMartin Mares	forget to clear the topmost bit indicating that the device has
696f701ff47SMartin Mares	multiple functions.
6972240db8cSMartin Mares
6982240db8cSMartin Mares2003-12-27  Martin Mares  <[email protected]>
6992240db8cSMartin Mares
70045902995SMartin Mares	Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]>
70145902995SMartin Mares	for the patches:
70245902995SMartin Mares
70345902995SMartin Mares	* lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined.
70445902995SMartin Mares	* lib/fbsd-device.c: Select the right set of system includes according
70545902995SMartin Mares	to __FreeBSD_version.
70645902995SMartin Mares
70745902995SMartin Mares2003-12-27  Martin Mares  <[email protected]>
70845902995SMartin Mares
7098fc75dbcSMartin Mares	Merged support for Solaris on i386 by Bill Moore <[email protected]>
7108fc75dbcSMartin Mares	and cleaned up:
7118fc75dbcSMartin Mares
7128fc75dbcSMartin Mares	* lib/configure: Recognize SunOS.
7138fc75dbcSMartin Mares	* lib/internal.h: Learn how to recognize byte order on SunOS.
7148fc75dbcSMartin Mares	* lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c.
7158fc75dbcSMartin Mares	* lib/i386-io-linux.h: Linux specific part.
7168fc75dbcSMartin Mares	* lib/i386-io-hurd.h: GNU/Hurd specific part.
7178fc75dbcSMartin Mares	* lib/i386-io-sunos.h: SunOS specific part.
7188fc75dbcSMartin Mares
7199739916eSMartin Mares2003-12-26  Martin Mares  <[email protected]>
7209739916eSMartin Mares
7219739916eSMartin Mares	* lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly.
7229739916eSMartin Mares
7239739916eSMartin Mares	* lib/pci.h: Types declared in <sys/types.h> should be usable on all
7249739916eSMartin Mares	platforms we currently support, so kill the forest of #ifdef's and
7259739916eSMartin Mares	use them in all cases.
7269739916eSMartin Mares
7279739916eSMartin Mares	* lib/pci.h: Use ULONG_MASK to decide whether we should use long
7289739916eSMartin Mares	or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS.
7299739916eSMartin Mares	Define format strings for addresses, port numbers and IRQ numbers
7309739916eSMartin Mares	directly in pci.h.
7319739916eSMartin Mares
7329739916eSMartin Mares	* lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses.
7339739916eSMartin Mares
73480459c65SMartin Mares2003-12-26  Marco Gerards  <[email protected]>
73580459c65SMartin Mares
73680459c65SMartin Mares	Added support for the GNU Hurd (cleaned up by Martin Mares):
73780459c65SMartin Mares
73880459c65SMartin Mares	* lib/configure [GNU]: Use the i386 ports for configuration access.
73980459c65SMartin Mares	* lib/i386-ports.c: Don't call iopl() on the Hurd.
74080459c65SMartin Mares	* lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining
74180459c65SMartin Mares	u8 to u32.
74280459c65SMartin Mares
743a85769a8SMartin Mares2003-12-26  Martin Mares  <[email protected]>
744a85769a8SMartin Mares
7457dacd9c8SMartin Mares	* lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call
7467dacd9c8SMartin Mares	config_fetch() to ensure that the registers have been read. Thanks to
7477dacd9c8SMartin Mares	Bill Wood <[email protected]> for the patch.
7487dacd9c8SMartin Mares
7497dacd9c8SMartin Mares	* lspci.c: Ensure that failure of config_fetch() is handled correctly
7507dacd9c8SMartin Mares	at all places.
7517dacd9c8SMartin Mares
7524063c31cSMartin Mares	* lspci.man: There was one more explicit reference to /usr/share/pci.ids.
7534063c31cSMartin Mares	Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>.
7544063c31cSMartin Mares
7553fe8a38dSMartin Mares	* setpci.c (main): Better error messages.
7563fe8a38dSMartin Mares
7575f5b1a7bSMartin Mares	* setpci.c (ex_op): The demo mode should disable only writing, not reading.
7585f5b1a7bSMartin Mares
7595f5b1a7bSMartin Mares	* setpci.man: The documentation was inconsistent on what should -D do.
7605f5b1a7bSMartin Mares	Document the new behaviour.
761b251f40bSMartin Mares
76291e37a49SMartin Mares	* pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating
76391e37a49SMartin Mares	the GCC specific __attribute__((noreturn)) and killed the hack with
76491e37a49SMartin Mares	redefining __attribute__ on non-GCC compilers.
76591e37a49SMartin Mares
7664afd29d3SMartin Mares	* Makefile: Added missing dependencies. Parallel builds work now.
7674afd29d3SMartin Mares	Problem reported by Andreas Haumer <[email protected]>, but I chose
7684afd29d3SMartin Mares	a different fix.
7694afd29d3SMartin Mares
770b0f1a03bSMartin Mares	* Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell
771b0f1a03bSMartin Mares	command every time $(MANDIR) is referenced.
772b0f1a03bSMartin Mares
773b7fd8e19SMartin Mares	* lspci.c (main): The error message for `lspci -s' incorrectly mentioned
774b7fd8e19SMartin Mares	a `-f' switch. Reported by Steve Finney <[email protected]>.
775b7fd8e19SMartin Mares
77605bb10a2SMartin Mares	* lib/generic.c: Removed memory leak in pci_generic_bus_scan().
77705bb10a2SMartin Mares	Reported by Gary Parnes <[email protected]>.
77805bb10a2SMartin Mares
779a832f6f1SMartin Mares	* Replaced obsolete syntax of __attribute__((unused)) in the middle of
780a832f6f1SMartin Mares	parameter declarations (which is no longer supported by GCC 3.1) by the
781a832f6f1SMartin Mares	current syntax (attribute at the end). Thanks to [email protected]
782a832f6f1SMartin Mares	for reporting this problem.
783a832f6f1SMartin Mares
784a85769a8SMartin Mares	* Removed CVS $Id$ tags from all files.
785a85769a8SMartin Mares
786a85769a8SMartin Mares	* Makefile: Added some more warnings.
787a85769a8SMartin Mares
788b7351143SMartin Mares	* setpci.c: Cleaned up mask/value code.
789b7351143SMartin Mares
790b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]>
791b7351143SMartin Mares
792b7351143SMartin Mares	* setpci.c: Individual bits to be set can be specified as <value>:<mask>.
793b7351143SMartin Mares
7942a5d5cf9SMartin Mares2003-11-29  Martin Mares  <[email protected]>
7952a5d5cf9SMartin Mares
7962a5d5cf9SMartin Mares	* Imported the pciutils sources to my Arch repository. Good-bye, CVS.
7972a5d5cf9SMartin Mares
798d772ef15SMartin Mares2003-01-04  Martin Mares  <[email protected]>
799d772ef15SMartin Mares
8001b95f396SMartin Mares	* Released as 2.1.11.
8011b95f396SMartin Mares
802c83293ebSMartin Mares	* Makefile: Changed configuration of installation directories --
803c83293ebSMartin Mares	all paths are now set at the top of the Makefile instead of being
804c83293ebSMartin Mares	scattered between the installation rules. The default installation
805c83293ebSMartin Mares	now goes always to /usr/local regardless of the OS as most distributions
806c83293ebSMartin Mares	already contain some version of pciutils and we don't want custom
807c83293ebSMartin Mares	installations to interfere with the default ones.
808c83293ebSMartin Mares
809c83293ebSMartin Mares	* Makefile: Removed a couple of ancient install hacks: we no longer
810c83293ebSMartin Mares	try to avoid overwriting a newer pci.ids file (users are now expected
811c83293ebSMartin Mares	to use update-ids) and we don't try to remove /etc/pci.ids (a long time
812c83293ebSMartin Mares	has passed since the last version which used it).
813c83293ebSMartin Mares
814e2875dcdSMartin Mares	* Makefile: Paths to pci.ids in man pages automatically get the right path.
815e2875dcdSMartin Mares
8161b95f396SMartin Mares	* Added the update-ids utility.
8170138a2a7SMartin Mares
818d772ef15SMartin Mares	* lib: Removed partially implemented "syscall" access method which will
819d772ef15SMartin Mares	probably never be needed.
820d772ef15SMartin Mares
821eb620239SMartin Mares2002-12-27  Martin Mares  <[email protected]>
822eb620239SMartin Mares
823130090bdSMartin Mares	* lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe.
824130090bdSMartin Mares
825eb620239SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Added work-around for devices with
826eb620239SMartin Mares	discontiguous numbering of functions. This is already present in the Linux
827eb620239SMartin Mares	kernel for several years, but I forgot to update pciutils as well.
828eb620239SMartin Mares
829848b4347SMartin Mares2002-12-26  Martin Mares  <[email protected]>
830848b4347SMartin Mares
831579b19ffSMartin Mares	* lib/header.h, lspci.c: Dump AGP3 flags and speeds.
832579b19ffSMartin Mares
833579b19ffSMartin Mares	* lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header,
834579b19ffSMartin Mares	there is no reason to prefer the kernel version.
835579b19ffSMartin Mares
836579b19ffSMartin Mares	* lib/proc.c (proc_scan): Don't forget to initialize hdrtype.
837579b19ffSMartin Mares
838848b4347SMartin Mares	* Added preliminary version of NetBSD support by Quentin Garnier
839848b4347SMartin Mares	<[email protected]>.
840848b4347SMartin Mares
841f0952474SMartin Mares2002-04-06  Martin Mares  <[email protected]>
842f0952474SMartin Mares
843f0952474SMartin Mares	* lspci.c: Mention "-xxx" in the help.
844f0952474SMartin Mares
845d2f666f1SMartin Mares2002-03-30  Martin Mares  <[email protected]>
846d2f666f1SMartin Mares
8479bd44bb0SMartin Mares	* Released as 2.1.10.
8489bd44bb0SMartin Mares
849a33d0eb7SMartin Mares	* Removed pci.ids from the CVS as they are now maintained separately.
850a33d0eb7SMartin Mares	They are still included in the tarball, but if you are building	pciutils
851a33d0eb7SMartin Mares	from CVS sources or you want to get a newer ID file than the one distributed,
852a33d0eb7SMartin Mares	just use "make update-ids" to download the most recent snapshot from
853a33d0eb7SMartin Mares	pciids.sf.net.
854a33d0eb7SMartin Mares
855a33d0eb7SMartin Mares	* Makefile, README: Updated accordingly.
856a33d0eb7SMartin Mares
857a33d0eb7SMartin Mares	* Makefile: Added a couple of maintenance targets.
858a33d0eb7SMartin Mares
859a33d0eb7SMartin Mares	* maint/*: Maintainer's utilities now reside here (present only in CVS,
860a33d0eb7SMartin Mares	not in the tarball).
861a33d0eb7SMartin Mares
862d2f666f1SMartin Mares	* lib/names.c (parse_name_list): End-of-line comments are no longer
863d2f666f1SMartin Mares	supported. Hashes are now perfectly valid in all names and they start
864d2f666f1SMartin Mares	a comment only at the start of the line.
865d2f666f1SMartin Mares
866ee551b73SMartin Mares2002-03-26  Martin Mares  <[email protected]>
867ee551b73SMartin Mares
86807159913SMartin Mares	* README: Rewritten.
86907159913SMartin Mares
870ee551b73SMartin Mares	* Makefile: When the currently installed pci.ids file is newer than
871ee551b73SMartin Mares	the version to be installed, don't overwrite it. Suggested by
872ee551b73SMartin Mares	Jean Delvare <[email protected]>.
873ee551b73SMartin Mares
874bc7b1d62SMartin Mares2002-03-24  Martin Mares  <[email protected]>
875bc7b1d62SMartin Mares
8765f5e6f64SMartin Mares	* lspci.c (show_pcix_bridge): Added PCI-X capability display.
8775f5e6f64SMartin Mares	Contributed by Jeff Garzik <[email protected]>.
8785f5e6f64SMartin Mares
8795f5e6f64SMartin Mares	* lib/header.h: Added PCI-X stuff. Again by Jeff.
8805f5e6f64SMartin Mares
8815f5e6f64SMartin Mares	* Makefile (CFLAGS): -Werror is gone.
8825f5e6f64SMartin Mares
883a1052f16SMartin Mares	* lspci.c (format_agp_rate): Fixed AGP rate reporting.
884a1052f16SMartin Mares
885bc7b1d62SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and
886bc7b1d62SMartin Mares	function 7.
887bc7b1d62SMartin Mares
888bc7b1d62SMartin Mares	* lib/names.c (pci_lookup_name): When printing unknown subsystem vendor
889bc7b1d62SMartin Mares	or device hexadecimally, don't confuse it with chip vendor/device ID.
890bc7b1d62SMartin Mares	First reported by Marc Boucher <[email protected]>.
891bc7b1d62SMartin Mares
892f793990cSMartin Mares2001-11-04  Martin Mares  <[email protected]>
893f793990cSMartin Mares
894ee551b73SMartin Mares	* Released as 2.1.9.
895ee551b73SMartin Mares
896f793990cSMartin Mares	* pci.ids: Synced with the PCI ID Repository at SourceForge
897f793990cSMartin Mares	(http://pciids.sourceforge.net/).
898f793990cSMartin Mares
8991d174e56SMartin Mares2000-08-25  Martin Mares  <[email protected]>
9001d174e56SMartin Mares
9011d174e56SMartin Mares	* pci.ids: Updated ID's, synced with kernel 2.4.0-test7.
9021d174e56SMartin Mares
90365b4327eSMartin Mares2000-06-13  Martin Mares  <[email protected]>
90465b4327eSMartin Mares
90565b4327eSMartin Mares	* Makefile (uninstall): Fixed.
90665b4327eSMartin Mares
90765b4327eSMartin Mares	* pci.ids: ID updates.
90865b4327eSMartin Mares
9094a219d5fSMartin Mares2000-05-20  Martin Mares  <[email protected]>
9104a219d5fSMartin Mares
9114a219d5fSMartin Mares	* Released as 2.1.8.
9124a219d5fSMartin Mares
9134a219d5fSMartin Mares	* pci.ids: ID updates.
9144a219d5fSMartin Mares
9154a219d5fSMartin Mares	* lspci.c (show_verbose): Min/max latency is now printed in nanoseconds.
9164a219d5fSMartin Mares
9174a219d5fSMartin Mares2000-05-04  Martin Mares  <[email protected]>
9184a219d5fSMartin Mares
9194a219d5fSMartin Mares	* lspci.c (show_verbose): If the header type doesn't match device
9204a219d5fSMartin Mares	class, just print a warning and still use the header type, assuming
9214a219d5fSMartin Mares	bogus class info.
9224a219d5fSMartin Mares
92310c90662SMartin Mares2000-05-01  Martin Mares  <[email protected]>
92410c90662SMartin Mares
92572b9b690SMartin Mares	* lspci.c (show_pm): Updated according to PCI PM specs 1.1.
92672b9b690SMartin Mares
92710c90662SMartin Mares	* pci.ids: Updated Contemporary Control ARCnet card entries.
92810c90662SMartin Mares
92910c90662SMartin Mares	* pci.ids: Synchronized class list with latest PCI SIG documents.
93010c90662SMartin Mares
931a239ade6SMartin Mares2000-04-29  Martin Mares  <[email protected]>
932a239ade6SMartin Mares
933a239ade6SMartin Mares	* lib/names.c (pci_lookup_name): Fixed the cheat.
934a239ade6SMartin Mares
935a239ade6SMartin Mares	* lib/internal.h: Moved UNUSED/inline hacks above all other declarations.
936a239ade6SMartin Mares
937a239ade6SMartin Mares	* pci.ids: Various ID updates.
938a239ade6SMartin Mares
9392c83b860SMartin Mares2000-04-21  Martin Mares  <[email protected]>
9402c83b860SMartin Mares
9412c83b860SMartin Mares	* Released as 2.1.7.
9422c83b860SMartin Mares
9432c83b860SMartin Mares	* pciutils.spec: Added German description.
9442c83b860SMartin Mares
9452c83b860SMartin Mares	* lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's
9462c83b860SMartin Mares	are the same as device ID and just output subsystem name according to
9472c83b860SMartin Mares	device name.
9482c83b860SMartin Mares
9492c83b860SMartin Mares	* lib/proc.c: Use UNUSED instead of __attribute__((unused)).
9502c83b860SMartin Mares
9512c83b860SMartin Mares	* lib/pci.h: Added the correct typedefs for AIX.
9522c83b860SMartin Mares
9532c83b860SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Export.
9542c83b860SMartin Mares
9552c83b860SMartin Mares	* lib/configure: Detect AIX. Use "echo '...\c'" instead of
9562c83b860SMartin Mares	"echo -n" if the shell isn't bash.
9572c83b860SMartin Mares
9582c83b860SMartin Mares	* lspci.c: Avoid using alloca() if not compiled by GCC.
9592c83b860SMartin Mares	(insert_dev): Avoid returning a void value.
9602c83b860SMartin Mares
9612c83b860SMartin Mares	* Makefile: Choose which install utility to use according to
9622c83b860SMartin Mares	OS type. Also use `-o' instead of `-or' in find arguments.
9632c83b860SMartin Mares	Part of the AIX port.
9642c83b860SMartin Mares
9652c83b860SMartin Mares	* lib/aix-device.c: Added AIX low-level interface. Contributed
9662c83b860SMartin Mares	by Dave Johnson <[email protected]>, thanks a lot!
9672c83b860SMartin Mares
9682c83b860SMartin Mares	* pci.ids: Few new ID's.
9692c83b860SMartin Mares
9702c83b860SMartin Mares	* pciutils.h, lib/internal.h: Redefine __attribute__ and inline
9712c83b860SMartin Mares	when not compiled by GCC.
9722c83b860SMartin Mares
973c1a828daSMartin Mares2000-04-17  Martin Mares  <[email protected]>
974c1a828daSMartin Mares
975c1a828daSMartin Mares	* Released as 2.1.6.
976c1a828daSMartin Mares
977c1a828daSMartin Mares	* pci.ids: Added a large batch of ID's contributed by Gunther
978c1a828daSMartin Mares	Mayer <[email protected]> and synced the
979c1a828daSMartin Mares	list with the 2.3.99pre6 kernel.
980c1a828daSMartin Mares
981e91dd3abSMartin MaresThu Mar  9 13:11:39 2000  Martin Mares  <[email protected]>
982e91dd3abSMartin Mares
983a80b79a9SMartin Mares	* lib/example.c: Added a simple example of how to use
984a80b79a9SMartin Mares	the library.
985a80b79a9SMartin Mares
98689984232SMartin Mares	* lspci.man, setpci.man: Revealed --version. Well spotted
98789984232SMartin Mares	by Adam Sulmicki.
98889984232SMartin Mares
989e91dd3abSMartin Mares	* pci.ids: Added lots of new ID's and synced with 2.3.50.
990e91dd3abSMartin Mares
99178d9c5e2SMartin MaresTue Feb 15 00:16:21 2000  Martin Mares  <[email protected]>
99278d9c5e2SMartin Mares
99378d9c5e2SMartin Mares	* Released as 2.1.5.
99478d9c5e2SMartin Mares
99578d9c5e2SMartin Mares	* pciutils.spec: Updated spec file from Andreas Jaeger. Now using
99678d9c5e2SMartin Mares	%{_mandir} to find the right location to install manual pages to.
99778d9c5e2SMartin Mares
99878d9c5e2SMartin Mares	* pci.ids: New ID's.
99978d9c5e2SMartin Mares
100078d9c5e2SMartin Mares	* setpci.c (main): Don't crash when `-s' or `-d' is given with
100178d9c5e2SMartin Mares	no argument.
100278d9c5e2SMartin Mares
1003f8141ae2SMartin MaresMon Jan 24 20:04:11 2000  Andreas Jaeger  <[email protected]>
1004f8141ae2SMartin Mares
1005f8141ae2SMartin Mares	* lib/i386-ports.c: Include <asm/io.h> only on systems without
1006f8141ae2SMartin Mares	glibc.
1007f8141ae2SMartin Mares
1008f8141ae2SMartin MaresMon Jan 24 11:24:43 2000  Martin Mares  <[email protected]>
1009f8141ae2SMartin Mares
1010f8141ae2SMartin Mares	* Makefile: Modified to work with the Linux FHS brain-damaged idea
1011f8141ae2SMartin Mares	of putting man pages to /usr/share/man. Now we choose either /usr/man
1012f8141ae2SMartin Mares	or /usr/share/man depending on which one exists.
1013f8141ae2SMartin Mares
101459e76e8bSMartin MaresSun Jan 23 10:52:34 2000  Martin Mares  <[email protected]>
101559e76e8bSMartin Mares
101659e76e8bSMartin Mares	* pci.ids: Synced with Linux 2.3.40.
101759e76e8bSMartin Mares
101859e76e8bSMartin Mares	* Released as version 2.1.4.
101959e76e8bSMartin Mares
10202dfd48cdSMartin MaresThu Jan 20 11:08:32 2000  Martin Mares  <[email protected]>
10212dfd48cdSMartin Mares
10222715403fSMartin Mares	* lspci.c (scan_device): Fixed bug in reading of cardbus extensions.
10232715403fSMartin Mares
102481077814SMartin Mares	* lib/proc.c: pread/pwrite fixed again, this time on libc5 :(
102581077814SMartin Mares
102681077814SMartin Mares	* lspci.c (format_agp_rate): Better formatting of AGP rates.
102781077814SMartin Mares
102881077814SMartin Mares	* pci.ids: New ID's.
102981077814SMartin Mares
10302dfd48cdSMartin Mares	* lib/configure: Added configuration for ia64 (the same as for Alpha).
10312dfd48cdSMartin Mares	Patch from Stephane Eranian <[email protected]>.
10322dfd48cdSMartin Mares
10335a258860SMartin MaresThu Jan 13 23:01:52 2000  Martin Mares  <[email protected]>
10345a258860SMartin Mares
10355a258860SMartin Mares	* Released as version 2.1.3.
10365a258860SMartin Mares
10375a258860SMartin Mares	* pci.ids: New ID's.
10385a258860SMartin Mares
10395a258860SMartin Mares	* lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli.
10405a258860SMartin Mares
10415a258860SMartin Mares	* lib/access.c: Corrected order of access methods -- it's wonderful how
10425a258860SMartin Mares	long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff.
10435a258860SMartin Mares
10440c047bbeSMartin MaresSat Dec 11 23:34:48 1999  Martin Mares  <[email protected]>
10450c047bbeSMartin Mares
10460c047bbeSMartin Mares	* Released as version 2.1.2.
10470c047bbeSMartin Mares
10480c047bbeSMartin Mares	* lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's.
10490c047bbeSMartin Mares
105033bc28a5SMartin MaresSat Dec  4 13:11:03 1999  Martin Mares  <[email protected]>
105133bc28a5SMartin Mares
105239231205SMartin Mares	* Released as version 2.1.1.
105339231205SMartin Mares
105433bc28a5SMartin Mares	* pci.ids: Several new ID's.
105533bc28a5SMartin Mares
105633bc28a5SMartin Mares	* setpci.c (exec_op): Don't forget to increment address after writing
105733bc28a5SMartin Mares	single value, so that `30.b=12,34,56,78' works as expected. Reported
105833bc28a5SMartin Mares	by Petr Soucek <[email protected]>.
105933bc28a5SMartin Mares
10608d047897SMartin MaresWed Nov  3 10:24:38 1999  Martin Mares  <[email protected]>
10618d047897SMartin Mares
10628d047897SMartin Mares	* lspci.c (show_terse): If prog-if is zero, but it's present in the
10638d047897SMartin Mares	ID list, show it.
10648d047897SMartin Mares
10656afc6538SMartin MaresSat Oct 30 11:06:35 1999  Martin Mares  <[email protected]>
10666afc6538SMartin Mares
10676afc6538SMartin Mares	* Released as version 2.1.
10686afc6538SMartin Mares
10696afc6538SMartin Mares	* pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in
10706afc6538SMartin Mares	lots of contributed entries.
10716afc6538SMartin Mares
10728f756113SMartin MaresThu Oct 14 10:40:12 1999  Dave Jones    <[email protected]>
10738f756113SMartin Mares
10748f756113SMartin Mares	* pci.ids: Added lots of subsystem definitions.
10758f756113SMartin Mares
1076d4798a32SMartin MaresSat Oct  9 14:32:28 1999  Martin Mares  <[email protected]>
1077d4798a32SMartin Mares
1078d4798a32SMartin Mares	* setpci.man: Better example.
1079d4798a32SMartin Mares
1080d4798a32SMartin Mares	* lspci.c: Resolve prog-if names.
1081d4798a32SMartin Mares
1082d4798a32SMartin Mares	* lib/names.c: Adapted to new pci.ids syntax.
1083d4798a32SMartin Mares
1084d4798a32SMartin Mares	* pci.ids: Reorganized the pci.ids file. Subsystems are listed
1085d4798a32SMartin Mares	under devices, classes can optionally contain prog-if information.
1086d4798a32SMartin Mares	New ID's, as usually.
1087d4798a32SMartin Mares
1088e306e911SMartin MaresWed Sep 22 09:45:24 1999  Martin Mares  <[email protected]>
1089e306e911SMartin Mares
1090e306e911SMartin Mares	* pci.ids: New ID's. As usually.
1091e306e911SMartin Mares
1092e306e911SMartin Mares	* lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows
1093e306e911SMartin Mares	unless we're vvvery verbose.
1094e306e911SMartin Mares
1095e306e911SMartin MaresMon Sep 20 11:22:54 1999  Martin Mares  <[email protected]>
1096e306e911SMartin Mares
1097e306e911SMartin Mares	* lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line.
1098e306e911SMartin Mares
1099e64a576cSMartin MaresTue Sep 14 09:31:01 1999  Martin Mares  <[email protected]>
1100e64a576cSMartin Mares
1101e64a576cSMartin Mares	* pci.ids: New ID's. Again.
1102e64a576cSMartin Mares
1103c36c0862SMartin MaresThu Aug  5 17:45:42 1999  Martin Mares  <[email protected]>
1104c36c0862SMartin Mares
1105c36c0862SMartin Mares	* lspci.c (show_size): Don't show size if it's zero (usually
1106c36c0862SMartin Mares	due to bus-centric mode being enabled).
1107c36c0862SMartin Mares
11081ca42433SMartin MaresTue Jul 20 13:25:09 1999  Martin Mares  <[email protected]>
11091ca42433SMartin Mares
1110168b4f46SMartin Mares	* lib/pci.h: Types are OS dependent.
1111168b4f46SMartin Mares
1112168b4f46SMartin Mares	* lib/internal.h: Byte order hacks are OS dependent.
1113168b4f46SMartin Mares
1114168b4f46SMartin Mares	* lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS.
1115168b4f46SMartin Mares
1116168b4f46SMartin Mares	* lib/Makefile, lib/access.c: Added fbsd-device target.
1117168b4f46SMartin Mares
1118168b4f46SMartin Mares	* pci.ids: Added an entry for PLX 9080 bridges with subsystem ID
1119168b4f46SMartin Mares	incorrectly set to device ID.
1120168b4f46SMartin Mares
1121168b4f46SMartin Mares	* README: Added a note that we support FreeBSD.
1122168b4f46SMartin Mares
1123168b4f46SMartin Mares	* Makefile (PREFIX, ROOT): Set it depending on the OS.
1124168b4f46SMartin Mares	(%.8): Grrr, BSD date is not able to convert date formats the same way
1125168b4f46SMartin Mares	as GNU date does. Use sed instead.
1126168b4f46SMartin Mares	(install): Use `-c' when calling install.
1127168b4f46SMartin Mares
1128168b4f46SMartin Mares	* lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed
1129168b4f46SMartin Mares	by Jari Kirma <[email protected]>.
1130168b4f46SMartin Mares
1131bc6346dfSMartin Mares	* lib/proc.c: Rewrote the pread/pwrite things once again. Use pread
1132bc6346dfSMartin Mares	and pwrite only when we are certain it's safe (i.e., glibc 2.1
1133bc6346dfSMartin Mares	on all architectures or any libc on a i386 where we really know
1134bc6346dfSMartin Mares	how to use syscalls directly). In all other cases, emulate it
1135bc6346dfSMartin Mares	with lseek/read/write.
1136bc6346dfSMartin Mares
11371ca42433SMartin Mares	* pci.ids: Some more IDs.
11381ca42433SMartin Mares
11391ca42433SMartin MaresMon Jul 19 14:10:36 1999  Martin Mares  <[email protected]>
11401ca42433SMartin Mares
11411ca42433SMartin Mares	* pci.ids: Added IDs of parallel port controller cards as sent
11421ca42433SMartin Mares	by Tim Waugh <[email protected]>.
11431ca42433SMartin Mares
1144e95c8373SMartin MaresWed Jul  7 00:55:48 1999  Martin Mares  <[email protected]>
1145e95c8373SMartin Mares
1146e95c8373SMartin Mares	* lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS.
1147e95c8373SMartin Mares
1148e95c8373SMartin Mares	* lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and
1149e95c8373SMartin Mares	HAVE_LONG_ADDRESS.
1150e95c8373SMartin Mares
1151e95c8373SMartin Mares	* lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses
1152e95c8373SMartin Mares	are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS
1153e95c8373SMartin Mares	to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS
1154e95c8373SMartin Mares	and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS
1155e95c8373SMartin Mares	on Alpha.
1156e95c8373SMartin Mares
1157e95c8373SMartin Mares	* lspci.c (show_msi): Added dumping of the MSI capability.
1158e95c8373SMartin Mares	(show_slotid): The same for SlotID capability.
1159e95c8373SMartin Mares	(show_caps): Seperated capability dumping, because it should
1160e95c8373SMartin Mares	be used for both htype0 and htype1. Even PCI 2.2 doesn't mention
1161e95c8373SMartin Mares	layout of htype2, so I'm a bit unsure about it wrt capabilities
1162e95c8373SMartin Mares	-- they at least have to live somewhere else since address 0x34
1163e95c8373SMartin Mares	is already defined differently in htype2.
1164e95c8373SMartin Mares
1165e95c8373SMartin Mares	* lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2).
1166e95c8373SMartin Mares	(PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto.
1167e95c8373SMartin Mares	(PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2.
1168e95c8373SMartin Mares
1169e95c8373SMartin Mares	* lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers
1170e95c8373SMartin Mares	(required by the PCI 2.2 specs).
1171e95c8373SMartin Mares
1172e95c8373SMartin MaresMon Jul  5 12:45:19 1999  Martin Mares  <[email protected]>
1173e95c8373SMartin Mares
1174e95c8373SMartin Mares	* lspci.c (show_size): Added new function for dumping of region sizes.
1175e95c8373SMartin Mares	(show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled
1176e95c8373SMartin Mares	ROMs et cetera.
1177e95c8373SMartin Mares
1178e95c8373SMartin Mares	* lib/pci.h (struct pci_dev): known_fields moved to the public part
1179e95c8373SMartin Mares	of the structure.
1180e95c8373SMartin Mares
1181e95c8373SMartin Mares	* Added support for region sizes. Needs support in the kernel, because
1182e95c8373SMartin Mares	sizes have to be scanned before drivers initialize yourself. pci_fill_info()
1183e95c8373SMartin Mares	now returns a bitmask of what fields were really read.
1184e95c8373SMartin Mares
118582ce97c9SMartin MaresMon Jun 28 18:37:51 1999  Dave Jones    <[email protected]>
118682ce97c9SMartin Mares
118782ce97c9SMartin Mares	* Makefile:
118882ce97c9SMartin Mares	  Added `uninstall' target - removes all traces of pciutils.
118982ce97c9SMartin Mares	* pci.ids:
119082ce97c9SMartin Mares	  - Lots of cleanups in the ATI, S3, Adaptec vendors.
119182ce97c9SMartin Mares	  - Changed Compaq QVision 1280/p definitions, as it's not possible
119282ce97c9SMartin Mares	    to determine the revision from the device ID.
119382ce97c9SMartin Mares	  - Same for the Tseng ET4000.
119482ce97c9SMartin Mares	    The id's said I had a rev C, when it was actually a rev B.
119582ce97c9SMartin Mares	  - Removed some unnecessary strings
119682ce97c9SMartin Mares	    `PCI'. Unless it's an AGP card, it should be obvious that it's PCI.
119782ce97c9SMartin Mares	    `Ethernet card'. This should be determined from config space.
119882ce97c9SMartin Mares	  - Lots of other new vendors & devices
119982ce97c9SMartin Mares	  - Other additional small cleanups.
120082ce97c9SMartin Mares
12017bed2d83SMartin MaresMon Jun 21 22:11:10 1999  Martin Mares  <[email protected]>
12027bed2d83SMartin Mares
12037bed2d83SMartin Mares	* lib/names.c (pci_lookup_name): When device ID lookup
12047bed2d83SMartin Mares	fails, return hexadecimal device ID instead of vendor ID.
12057bed2d83SMartin Mares	Well spotted by Axel Bodemann <[email protected]>,
12067bed2d83SMartin Mares	I've just extended the fix to subsystem ID's.
12077bed2d83SMartin Mares
12085ba3a475SMartin MaresThu Jun 17 19:48:21 1999  Martin Mares  <[email protected]>
12095ba3a475SMartin Mares
12105ba3a475SMartin Mares	* lspci.c (show_agp): Bug fix from Petr Vandrovec
12115ba3a475SMartin Mares	<[email protected]>. The command register was displayed
12125ba3a475SMartin Mares	incorrectly.
12135ba3a475SMartin Mares
12145ba3a475SMartin MaresWed Jun  2 22:42:44 1999  Martin Mares  <[email protected]>
12155ba3a475SMartin Mares
12165ba3a475SMartin Mares	* lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded
12175ba3a475SMartin Mares	numbers if not supplied by the libc.
12185ba3a475SMartin Mares
121955c815b5SMartin MaresWed May 19 13:24:39 1999  Martin Mares  <[email protected]>
122055c815b5SMartin Mares
122155c815b5SMartin Mares	* Released the whole package as version 2.0.
122255c815b5SMartin Mares
122355c815b5SMartin MaresFri May 14 22:42:02 1999  Martin Mares  <[email protected]>
122455c815b5SMartin Mares
122555c815b5SMartin Mares	* pci.ids: Added several new ID's contributed by people
122655c815b5SMartin Mares	on the linux-pci list.
122755c815b5SMartin Mares
1228dec16943SMartin MaresMon Apr 19 15:21:08 1999  Jakub Jelinek  <[email protected]>
1229dec16943SMartin Mares
1230dec16943SMartin Mares	* lspci.c: Display I/O addresses correctly on sparc64.
1231dec16943SMartin Mares	* lib/header.h: Ditto.
1232dec16943SMartin Mares
1233dec16943SMartin Mares	* lib/configure: On sparc set HAVE_64BIT* as well, we want
1234dec16943SMartin Mares	a binary which works on both 32bit and 64bit SPARCs.
1235dec16943SMartin Mares
1236e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999  Martin Mares  <[email protected]>
1237e33c9c7aSMartin Mares
1238e33c9c7aSMartin Mares	* lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob
1239e33c9c7aSMartin Mares	<[email protected]>.
1240e33c9c7aSMartin Mares
1241e33c9c7aSMartin Mares	* pci.ids: A lot of updates from Adam J. Richter <[email protected]>.
1242e33c9c7aSMartin Mares
1243f3395cc5SMartin MaresSun Feb 28 22:26:21 1999  Martin Mares  <[email protected]>
1244f3395cc5SMartin Mares
1245f3395cc5SMartin Mares	* lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged
1246f3395cc5SMartin Mares	as a multi-function device, because several single-function devices
1247f3395cc5SMartin Mares	don't decode the function bits at all.
1248f3395cc5SMartin Mares
1249f3395cc5SMartin MaresSun Feb 14 23:48:22 1999  Martin Mares  <[email protected]>
1250f3395cc5SMartin Mares
1251f3395cc5SMartin Mares	* Makefile (install): Don't use "-o root -g root" for installation
1252f3395cc5SMartin Mares	since it breaks on machines where programs are not installed by root.
1253f3395cc5SMartin Mares	Reported by Richard Gooch <[email protected]>
1254f3395cc5SMartin Mares
1255f3395cc5SMartin MaresTue Feb  9 15:54:39 1999  Martin Mares  <[email protected]>
1256f3395cc5SMartin Mares
1257f3395cc5SMartin Mares	* lspci.c (show_bases): Use new address masking macros and pciaddr_t.
1258f3395cc5SMartin Mares
1259f3395cc5SMartin Mares	* lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit
1260f3395cc5SMartin Mares	or 64-bit depending on CPU.
1261f3395cc5SMartin Mares
1262f3395cc5SMartin Mares	* lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks
1263f3395cc5SMartin Mares	according to bus address width.
1264f3395cc5SMartin Mares
12651c31d620SMartin MaresThu Jan 28 20:54:16 1999  Martin Mares  <[email protected]>
12661c31d620SMartin Mares
12671c31d620SMartin Mares	* Released as 1.99.4.
12681c31d620SMartin Mares
12691c31d620SMartin Mares	* lspci.c: Capability list parser now recognizes both AGP
12701c31d620SMartin Mares	registers and PCI Power Management registers (the latter
12711c31d620SMartin Mares	is mainly guesswork based on DEC/Intel 21153 bridge specs
12721c31d620SMartin Mares	since I don't have the PCI Power Management document).
12731c31d620SMartin Mares
12741c31d620SMartin Mares	* lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-'
12751c31d620SMartin Mares	by FLAG macro.
12761c31d620SMartin Mares
12771c31d620SMartin Mares	* lspci.c: Added bridge checks to bus mapping code.
12781c31d620SMartin Mares
12791812a795SMartin MaresWed Jan 27 14:59:16 1999  Martin Mares  <[email protected]>
12801812a795SMartin Mares
12811812a795SMartin Mares	* lspci.c: Implemented bus mapping mode (-M).
12821812a795SMartin Mares
12831812a795SMartin Mares	* lspci.c (scan_devices): Split to scan_devices() and scan_device().
12841812a795SMartin Mares	(show): Split to show() and show_device().
12851812a795SMartin Mares
12861812a795SMartin Mares	* lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO,
12871812a795SMartin Mares	set it to the real access method afterwards.
12881812a795SMartin Mares
12891812a795SMartin MaresMon Jan 25 23:46:13 1999  Martin Mares  <[email protected]>
12901812a795SMartin Mares
12911812a795SMartin Mares	* lib/generic.c (pci_generic_fill_info): If in buscentric mode,
12921812a795SMartin Mares	don't check PCI_COMMAND for I/O and memory enables.
12931812a795SMartin Mares
1294f6c86928SMartin MaresMon Jan 25 21:28:49 1999  Martin Mares  <[email protected]>
1295f6c86928SMartin Mares
1296f6c86928SMartin Mares	* Makefile: Added target `release' which substitutes new version
1297f6c86928SMartin Mares	number to .spec, .lsm and README. Also rewrote target `dist'.
1298f6c86928SMartin Mares
1299f6c86928SMartin Mares	* Released as 1.99.3.
1300f6c86928SMartin Mares
1301b5137411SMartin MaresSun Jan 24 22:10:36 1999  Martin Mares  <[email protected]>
1302b5137411SMartin Mares
1303d6b297d0SMartin Mares	* lib/header.h: Until kernel adopts new layout of PCI
1304d6b297d0SMartin Mares	includes (i.e., separate declaration of header structure,
1305d6b297d0SMartin Mares	functions and device IDs), which is not going to happen
1306d6b297d0SMartin Mares	before 2.3, we'll use our own definiton of the header.
1307d6b297d0SMartin Mares
1308b5137411SMartin Mares	* lspci.c (show_verbose): Display `Cap' flag in device status.
1309b5137411SMartin Mares
1310b5137411SMartin Mares	* lspci.c (show_htype0): Display capability lists whereever
1311b5137411SMartin Mares	available. The only capability name we recognize now is `AGP'.
1312b5137411SMartin Mares	Unfortunately, capabilities are stored in device-dependent
1313b5137411SMartin Mares	portion of the configuration space and are thus available
1314b5137411SMartin Mares	only to root unless you read a dump.
1315b5137411SMartin Mares
1316b5137411SMartin Mares	* lspci.c (scan_devices): Use cache instead of buffering.
1317b5137411SMartin Mares
1318b5137411SMartin Mares	* lib/buffer.c: Removed (obsoleted by the cache).
1319b5137411SMartin Mares
1320b5137411SMartin Mares	* lib/access.c: Added general caching mechanism.
1321b5137411SMartin Mares
132281ce358dSMartin MaresSat Jan 23 21:30:54 1999  Martin Mares  <[email protected]>
132381ce358dSMartin Mares
132481ce358dSMartin Mares	* pci.ids: Added few devices.
132581ce358dSMartin Mares
1326727ce158SMartin MaresFri Jan 22 19:29:31 1999  Martin Mares  <[email protected]>
1327727ce158SMartin Mares
1328727ce158SMartin Mares	* Version string is now defined in top-level Makefile, exported
1329727ce158SMartin Mares	to the configure script and also substituted to man pages.
1330727ce158SMartin Mares
1331727ce158SMartin Mares	* lspci.c (show_bases): Rewrote displaying of 64-bit addresses.
1332727ce158SMartin Mares	(show_verbose): Rewrote interrupt display logic.
1333727ce158SMartin Mares
1334727ce158SMartin Mares	* lib/i386-ports.c: Include sys/io.h only on glibc systems.
1335727ce158SMartin Mares
1336727ce158SMartin Mares	* lib/configure: Rewrote detection of Linux versions. Now it
1337727ce158SMartin Mares	works on 2.0 kernels (only with direct/dump access, of course).
1338727ce158SMartin Mares
1339727ce158SMartin Mares	* lib/internal.h: New bytesex macros using <asm/byteorder.h>
1340727ce158SMartin Mares	whenever available.
1341727ce158SMartin Mares
1342727ce158SMartin Mares	* lib/proc.c (proc_read, proc_write): Distinguish between short
1343727ce158SMartin Mares	read/write and real errors.
1344727ce158SMartin Mares
1345727ce158SMartin Mares	* lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since
1346727ce158SMartin Mares	libpci respects buscentric mode automatically.
1347727ce158SMartin Mares
1348727ce158SMartin Mares	* lspci.c (show_hex_dump): For CardBus bridges, print out 128
1349727ce158SMartin Mares	bytes of header (the whole standard part).
1350727ce158SMartin Mares
1351727ce158SMartin Mares	* common.c: pcilib options are now all uppercase. Also moved
1352727ce158SMartin Mares	PCI access debugging option here.
1353727ce158SMartin Mares
1354727ce158SMartin Mares	* Released as 1.99.2.
1355727ce158SMartin Mares
1356727ce158SMartin MaresWed Jan 20 22:50:35 1999  Martin Mares  <[email protected]>
1357727ce158SMartin Mares
1358727ce158SMartin Mares	* Wrote configure script and rewrote Makefiles.
1359727ce158SMartin Mares
1360727ce158SMartin Mares	* Removed few unused variables.
1361727ce158SMartin Mares
1362727ce158SMartin MaresWed Jan 20 12:21:56 1999  Martin Mares  <[email protected]>
1363727ce158SMartin Mares
1364727ce158SMartin Mares	* common.c: Moved several functions used in both setpci and lspci
1365727ce158SMartin Mares	here. This includes parsing of libpci-related options.
1366727ce158SMartin Mares
1367727ce158SMartin Mares	* More library tweaks.
1368727ce158SMartin Mares
1369727ce158SMartin Mares	* filter.c, names.c: Moved to library.
1370727ce158SMartin Mares
1371727ce158SMartin Mares	* setpci: Rewritten to use the library.
1372727ce158SMartin Mares
1373727ce158SMartin Mares	* Released as 1.99.1.
1374727ce158SMartin Mares
1375727ce158SMartin MaresTue Jan 19 23:00:12 1999  Martin Mares  <[email protected]>
1376727ce158SMartin Mares
1377727ce158SMartin Mares	* lspci.c (scan_devices): For cardbus bridges, read first 128
1378727ce158SMartin Mares	bytes of config space to get full standard header.
1379727ce158SMartin Mares
1380727ce158SMartin Mares	* Makefile (CFLAGS): Removed "-Wno-unused".
1381727ce158SMartin Mares
1382727ce158SMartin Mares	* Started the "New Generation" branch and introduced the
1383727ce158SMartin Mares	PCI library.
1384727ce158SMartin Mares
1385727ce158SMartin Mares	* lspci: Rewritten to use the library.
1386727ce158SMartin Mares
13876ece6bc6SMartin MaresTue Jan 19 22:24:08 1999  Martin Mares  <[email protected]>
13886ece6bc6SMartin Mares
13896ece6bc6SMartin Mares	* Released as version 1.10.
13906ece6bc6SMartin Mares
13916ece6bc6SMartin MaresMon Jan 18 08:51:17 1999  Martin Mares  <[email protected]>
13926ece6bc6SMartin Mares
13936ece6bc6SMartin Mares	* lspci.8, setpci.8: Miscellaneous fixes as suggested by
13946ece6bc6SMartin Mares	Dag Wieers <[email protected]>.
13956ece6bc6SMartin Mares
13961212dd6dSMartin MaresSun Nov 29 20:05:56 1998  Martin Mares  <[email protected]>
13971212dd6dSMartin Mares
13981212dd6dSMartin Mares	* pciutils.spec (Name): Update from Krzysztof G. Baranowski.
13991212dd6dSMartin Mares
1400d38471fdSMartin MaresSun Nov 22 10:49:56 1998  Martin Mares  <[email protected]>
1401d38471fdSMartin Mares
1402d38471fdSMartin Mares	* Makefile, pciutils.h: Moved pci.ids to /usr/share.
1403d38471fdSMartin Mares
1404d38471fdSMartin Mares	* Released as version 1.09.
1405d38471fdSMartin Mares
1406371f605bSMartin MaresWed Nov 18 15:47:05 1998  Martin Mares  <[email protected]>
1407371f605bSMartin Mares
1408371f605bSMartin Mares	* lspci.c (show_htype1): Fixed displaying of prefetchable memory behind
1409371f605bSMartin Mares	bridge. Thanks to Petr Vandrovec <[email protected]> for bug report.
1410371f605bSMartin Mares
141110be47abSMartin MaresFri Oct 23 18:59:19 1998  Martin Mares  <[email protected]>
141210be47abSMartin Mares
141310be47abSMartin Mares	* setpci.c: Don't include <syscall-list.h> with glibc >= 2.1.
141410be47abSMartin Mares
1415472bd340SMartin MaresMon Oct 19 21:53:30 1998  Martin Mares  <[email protected]>
1416472bd340SMartin Mares
1417472bd340SMartin Mares	* Released as version 1.08.
1418472bd340SMartin Mares
1419472bd340SMartin Mares	* setpci.c: glibc 2.1.x already defines pread() and pwrite().
1420472bd340SMartin Mares
1421472bd340SMartin Mares	* lspci.8: Changed warning about lspci -xxx.
1422472bd340SMartin Mares
1423472bd340SMartin Mares	* lspci.c: Require "-xxx" for full configuration space dump, so that
1424472bd340SMartin Mares	it's impossible to crash the machine by single typo.
1425472bd340SMartin Mares
1426472bd340SMartin Mares	* specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>).
1427472bd340SMartin Mares
1428072c77e5SMartin MaresWed Sep  9 12:03:24 1998  Martin Mares  <[email protected]>
1429072c77e5SMartin Mares
1430072c77e5SMartin Mares	* lspci.c (show_bases): Better displaying of unassigned and
1431072c77e5SMartin Mares	disabled bases. Thanks to Gabriel Paubert <[email protected]>
1432072c77e5SMartin Mares	for an idea.
1433072c77e5SMartin Mares
1434b7554856SMartin MaresWed Sep  2 10:58:01 1998  Martin Mares  <[email protected]>
1435b7554856SMartin Mares
1436b7554856SMartin Mares	* setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC.
1437b7554856SMartin Mares	(thanks to Geert Uytterhoeven for finding this out)
1438b7554856SMartin Mares
1439ce503b7fSMartin MaresFri Jul 17 10:43:30 1998  Martin Mares  <[email protected]>
1440ce503b7fSMartin Mares
1441ce503b7fSMartin Mares	* lspci.c (show_verbose): Print subsystem ID using the new resolver.
1442ce503b7fSMartin Mares	(show_machine): Print subsystem ID.
1443ce503b7fSMartin Mares
1444ce503b7fSMartin Mares	* names.c: New name resolution engine supporting subsystem IDs.
1445ce503b7fSMartin Mares
1446ce503b7fSMartin Mares	* Released as version 1.07.
1447ce503b7fSMartin Mares
144896e4f295SMartin MaresWed Jul 15 15:37:21 1998  Martin Mares  <[email protected]>
144996e4f295SMartin Mares
145096e4f295SMartin Mares	* lspci.c (show_htype2 etc.): Displaying of CardBus headers.
145196e4f295SMartin Mares	(show_bases): Honor the `cnt' argument.
145296e4f295SMartin Mares	(grow_tree): Parse CardBus headers in tree mode as well.
145396e4f295SMartin Mares
145496e4f295SMartin Mares	* pci.h: Updated CardBus header field description. I still don't
145596e4f295SMartin Mares	have the CardBus standard available, but OZ6832 specs contain
145696e4f295SMartin Mares	full description of all header fields supported by the chip.
145796e4f295SMartin Mares
14586ae3650aSMartin MaresTue Jun  9 22:53:59 1998  Martin Mares  <[email protected]>
14596ae3650aSMartin Mares
1460304f9a0bSMartin Mares	* Released as 1.06.
1461304f9a0bSMartin Mares
14626ae3650aSMartin Mares	* names.c (parse_name_list): Killed an unused variable.
14636ae3650aSMartin Mares
14646ae3650aSMartin Mares	* setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1
14656ae3650aSMartin Mares	if they are not defined by glibc (needed for glibc built on older
14666ae3650aSMartin Mares	kernels). Ugly.
14676ae3650aSMartin Mares
14686ae3650aSMartin Mares	* setpci.c (exec_op): Fixed error messages. Thanks, Steve!
14696ae3650aSMartin Mares
14704b88a6b8SMartin MaresMon Jun  8 10:59:22 1998  Martin Mares  <[email protected]>
14714b88a6b8SMartin Mares
14724b88a6b8SMartin Mares	* Released as 1.05.
14734b88a6b8SMartin Mares
14744b88a6b8SMartin Mares	* setpci.c: Problems with pread()/pwrite() with glibc on Alpha
14754b88a6b8SMartin Mares	should be gone. Again thanks to Steve for bug report.
14764b88a6b8SMartin Mares
14774b88a6b8SMartin Mares	* filter.c (filter_parse_slot): Fixed ":x" type filters.
14784b88a6b8SMartin Mares
14794b88a6b8SMartin Mares	* pci.ids: Killed duplicate entry. Thanks to Stephen Williams
14804b88a6b8SMartin Mares	<[email protected]> for reporting this.
14814b88a6b8SMartin Mares
14824b88a6b8SMartin MaresSun Jun  7 19:27:51 1998  Martin Mares  <[email protected]>
14834b88a6b8SMartin Mares
14844b88a6b8SMartin Mares	* lspci.c (main), setpci.c (main): Implemented "--version".
14854b88a6b8SMartin Mares
14864b88a6b8SMartin Mares	* Released as 1.04.
14874b88a6b8SMartin Mares
14884b88a6b8SMartin Mares	* pciutils.h (PCIUTILS_VERSION): Added version string.
14894b88a6b8SMartin Mares
14904b88a6b8SMartin Mares	* filter.c, names.c: Extraneous #include <linux/pci.h> removed.
14914b88a6b8SMartin Mares	Thanks to Geert Uytterhoeven <[email protected]>
14924b88a6b8SMartin Mares	for bug report.
14934b88a6b8SMartin Mares
14949b306998SMartin MaresThu May 28 14:45:58 1998  Martin Mares  <[email protected]>
14959b306998SMartin Mares
14969b306998SMartin Mares	* pci.ids: More updates from Jens Maurer.
14979b306998SMartin Mares
1498b372672fSMartin MaresWed Apr 22 10:00:39 1998  Martin Mares  <[email protected]>
1499b372672fSMartin Mares
1500b372672fSMartin Mares	* pci.ids: Updates from Jens Maurer.
1501b372672fSMartin Mares
1502b2c9b373SMartin MaresSun Apr 19 11:14:25 1998  Martin Mares  <[email protected]>
1503b2c9b373SMartin Mares
1504b372672fSMartin Mares	* Released as 1.03.
1505b372672fSMartin Mares
1506b2c9b373SMartin Mares	* setpci.8: Written.
1507b2c9b373SMartin Mares
1508b2c9b373SMartin Mares	* setpci.c: Finished.
1509b2c9b373SMartin Mares
1510b2c9b373SMartin Mares	* lspci.c: Now able to fetch expansion ROM base from kernel device list
1511b2c9b373SMartin Mares	and print it if not in buscentric mode.
1512b2c9b373SMartin Mares
1513e4842ff3SMartin MaresTue Mar 31 23:11:57 1998  Martin Mares  <[email protected]>
1514e4842ff3SMartin Mares
1515e4842ff3SMartin Mares	* setpci.c: Added.
1516e4842ff3SMartin Mares
1517e4842ff3SMartin MaresSun Mar 22 15:39:08 1998  Martin Mares  <[email protected]>
1518e4842ff3SMartin Mares
1519e4842ff3SMartin Mares	* lspci.8: Updated the documentation.
1520e4842ff3SMartin Mares
1521e4842ff3SMartin Mares	* lspci.c: Modified to use the new filtering mechanism (options -f and -d).
1522e4842ff3SMartin Mares
1523e4842ff3SMartin Mares	* filter.c: Introduced new generic device filter.
1524e4842ff3SMartin Mares
1525008407bdSMartin MaresThu Mar 19 17:03:48 1998  Martin Mares  <[email protected]>
1526008407bdSMartin Mares
1527008407bdSMartin Mares	* lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying
1528008407bdSMartin Mares	of PCI-to-PCI bridges in the tree format.
1529008407bdSMartin Mares
15300a33d0ecSMartin MaresSun Feb 15 10:12:25 1998  Martin Mares  <[email protected]>
15310a33d0ecSMartin Mares
15320a33d0ecSMartin Mares	* lspci.c (show_machine): Added non-verbose mode of machine-readable
15330a33d0ecSMartin Mares	dump.
15340a33d0ecSMartin Mares
15350a33d0ecSMartin Mares	* pci.ids: Updates from Jens Maurer.
15360a33d0ecSMartin Mares
15370a33d0ecSMartin Mares	* Released as version 1.02.
15380a33d0ecSMartin Mares
15390a33d0ecSMartin MaresThu Feb 12 16:53:28 1998  Martin Mares  <[email protected]>
15400a33d0ecSMartin Mares
15410a33d0ecSMartin Mares	* lspci.c: Added a "-m" switch for dumping machine-readable
15420a33d0ecSMartin Mares	configuration data (requested by Bjoern Kriews <[email protected]>).
15430a33d0ecSMartin Mares
1544fb38eee8SMartin MaresMon Feb  9 13:17:43 1998  Martin Mares  <[email protected]>
1545fb38eee8SMartin Mares
1546fb38eee8SMartin Mares	* Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h>
1547fb38eee8SMartin Mares	if available. This should avoid all problems with official kernel
1548fb38eee8SMartin Mares	not synchronized to newer PCI code in CVS -- standard distribution
1549fb38eee8SMartin Mares	of pciutils now contains pci.h from current CVS kernel, pciutils
1550fb38eee8SMartin Mares	in CVS contain no pci.h and use the correct kernel include.
1551fb38eee8SMartin Mares
1552fb38eee8SMartin Mares	* Makefile: Fixed installation path for man pages.
1553fb38eee8SMartin Mares
15542f48f637SMartin MaresSat Feb  7 15:15:46 1998  Martin Mares  <[email protected]>
15552f48f637SMartin Mares
15562f48f637SMartin Mares	* README: Updated.
15572f48f637SMartin Mares
15582f48f637SMartin Mares	* lspci.8: Created a man page.
15592f48f637SMartin Mares
15602f48f637SMartin Mares	* Releasing as version 1.0.
15612f48f637SMartin Mares
15622f48f637SMartin MaresTue Feb  3 20:56:00 1998  Martin Mares  <[email protected]>
15632f48f637SMartin Mares
15642f48f637SMartin Mares	* Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx
15652f48f637SMartin Mares	to all the C sources. This should eliminate problems with 32-bit compilers
15662f48f637SMartin Mares	on sparc64.
15672f48f637SMartin Mares
15682f48f637SMartin Mares	* lspci.c (show_verbose): Recognize CardBus bridge header type.
15692f48f637SMartin Mares	(show_htype2): Stub routine.
15702f48f637SMartin Mares	(scan_config): Write sensible error message if the kernel denies reading of
15712f48f637SMartin Mares	upper part of the PCI config space.
1572