xref: /pciutils/ChangeLog (revision c7ddfa3e)
11c5cc9b5SMartin Mares2006-07-30  Martin Mares  <[email protected]>
21c5cc9b5SMartin Mares
3*c7ddfa3eSMartin Mares	* lspci.c, lib/header.h: Added support for MSI per-vector masking.
4*c7ddfa3eSMartin Mares	Contributed by Petr Vandrovec.
5*c7ddfa3eSMartin Mares
6248a04f8SMartin Mares	* lspci.c, lib/header.h: Added support for the `bridge subsystem ID'
7248a04f8SMartin Mares	capability. Contributed by Petr Vandrovec.
8248a04f8SMartin Mares
9f29dcc87SMartin Mares	* lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable
10f29dcc87SMartin Mares	memory windows. Fix by Petr Vandrovec.
11f29dcc87SMartin Mares
128eab3bffSMartin Mares	* maint/release.pm: Exclude .git directory from releases.
138eab3bffSMartin Mares
14d305d704SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Report failures during port access
15d305d704SMartin Mares	initialization by a->warn() instead of calling printf() or perror()
16d305d704SMartin Mares	directly.
17d305d704SMartin Mares
189007a292SMartin Mares	* lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of
199007a292SMartin Mares	the port access state to generic code.
209007a292SMartin Mares
21bd20d5b5SMartin Mares	* lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately.
22bd20d5b5SMartin Mares	Contributed by Thomas Schwinge and Samuel Thibault.
23bd20d5b5SMartin Mares
2473750606SMartin Mares	* lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module.
2573750606SMartin Mares
26d71daa45SMartin Mares	* lib/header.h: Whitespace cleanups.
27d71daa45SMartin Mares
281c5cc9b5SMartin Mares	* lib/i386-io-windows.h: Fixed indentation and spelling.
291c5cc9b5SMartin Mares
301c5cc9b5SMartin Mares	* README.Windows: Mention that WinIO.dll is needed and where to get it.
311c5cc9b5SMartin Mares
32c2b144efSMartin Mares2006-06-27  Martin Mares  <[email protected]>
33c2b144efSMartin Mares
3414d4f989SMartin Mares	* lib/Makefile, Makefile: Added rules for building and cleaning the example.
3514d4f989SMartin Mares
3614d4f989SMartin Mares	* lib/example.c: Show how to use PCI_FILL_CLASS and used another register
3714d4f989SMartin Mares	for demonstrating the config space accesses. The example is still very
3814d4f989SMartin Mares	incomplete, though.
3914d4f989SMartin Mares
40c2b144efSMartin Mares	* lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS.
41c2b144efSMartin Mares
42c2b144efSMartin Mares	* lib/sysfs.c: Fetch device ID and class from sysfs, because they can
43c2b144efSMartin Mares	be modified by kernel fixups.
44c2b144efSMartin Mares
45c2b144efSMartin Mares	* lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch.
46c2b144efSMartin Mares
47bc2eed2dSMartin Mares2006-06-03  Martin Mares  <[email protected]>
48bc2eed2dSMartin Mares
49bc2eed2dSMartin Mares	* lspci.c: Introduced the -nn switch. Thanks to David N. Welton
50bc2eed2dSMartin Mares	for the idea.
51bc2eed2dSMartin Mares
52bc2eed2dSMartin Mares	* lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and
53bc2eed2dSMartin Mares	cleaned up the name selection code.
54bc2eed2dSMartin Mares
55c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given,
56c72eeddeSMartin Mares	pci_access->numeric_ids is ignored.
57c72eeddeSMartin Mares
58c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): When class is identified and
59c72eeddeSMartin Mares	subclass isn't, display class name and subclass number.
60c72eeddeSMartin Mares
612f294d4bSMartin Mares2006-05-31  Martin Mares  <[email protected]>
622f294d4bSMartin Mares
632f294d4bSMartin Mares	* setpci.c (main): Don't crash when an invalid width is specified.
642f294d4bSMartin Mares
6581afa98cSMartin Mares	* lspci.c, setpci.c, common.c: die() now uses the right program
6681afa98cSMartin Mares	name when printing an error message.
6781afa98cSMartin Mares
680ac282f2SMartin Mares2006-05-19  Martin Mares  <[email protected]>
690ac282f2SMartin Mares
700ac282f2SMartin Mares	* README: Mention the public GIT tree.
710ac282f2SMartin Mares
720ac282f2SMartin Mares	* README: Updated the list of ports.
730ac282f2SMartin Mares
74d1058e9dSMartin Mares2006-05-10  Martin Mares  <[email protected]>
75d1058e9dSMartin Mares
76d1058e9dSMartin Mares	* lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD.
77d1058e9dSMartin Mares	Thanks to Petr Salinger for the patch.
78d1058e9dSMartin Mares
79abf8d505SMartin Mares2006-05-05  Martin Mares  <[email protected]>
80abf8d505SMartin Mares
812ae2d1aeSMartin Mares	* Released as 2.2.3.
822ae2d1aeSMartin Mares
832ae2d1aeSMartin Mares	* lspci.c (scan_device): The -D switch didn't work as intended
842ae2d1aeSMartin Mares	in -m mode.
852ae2d1aeSMartin Mares
862ae2d1aeSMartin Mares2006-05-05  Martin Mares  <[email protected]>
872ae2d1aeSMartin Mares
881d5cf727SMartin Mares	* Released as 2.2.2.
891d5cf727SMartin Mares
908a830168SMartin Mares	* pci.ids: Updated to the current database snapshot.
918a830168SMartin Mares
92b6359063SMartin Mares	* lib/obsd-device.c (and other files in lib/*): Added OpenBSD
93b6359063SMartin Mares	interface by Matthieu Herrb <[email protected]>, based on
94b6359063SMartin Mares	the existing FreeBSD interface.
95b6359063SMartin Mares
96abf8d505SMartin Mares	* Moved pciutils to a GIT repository, which now contains merged
97abf8d505SMartin Mares	history from both CVS and Arch. Good bye, TLA!
98abf8d505SMartin Mares
996ac70402SMartin Mares2006-03-21  Martin Mares  <[email protected]>
1006ac70402SMartin Mares
1012a124daeSMartin Mares	* lspci.c (show_slot_name): Avoid the previous changes in default
1022a124daeSMartin Mares	display of domain name when in machine-readable mode. However, `-D'
1032a124daeSMartin Mares	forces domain display even there.
1042a124daeSMartin Mares
1056ac70402SMartin Mares	* lspci.man: Added a warning on -m being the only format, which is
1066ac70402SMartin Mares	guaranteed to be stable between lspci versions.
1076ac70402SMartin Mares
1081bbdea17SMartin Mares2006-03-13  Martin Mares  <[email protected]>
1091bbdea17SMartin Mares
110af61eb25SMartin Mares	* lspci.man: Documented the -D switch.
111af61eb25SMartin Mares
112af61eb25SMartin Mares	* lspci.c (show_slot_name, scan_device): If there are multiple PCI
113af61eb25SMartin Mares	domains or if the `-D' switch is used, show the domain number for
114af61eb25SMartin Mares	all devices.
115af61eb25SMartin Mares
1167a61b93cSMartin Mares	* lspci.c (show_verbose): Report cache line size in bytes.
1177a61b93cSMartin Mares
1181bbdea17SMartin Mares	* update-pciids.sh: Use curl if available. Patch by Matthew Wilcox.
1191bbdea17SMartin Mares
1200e78ef8aSMartin Mares2006-01-04  Martin Mares  <[email protected]>
1210e78ef8aSMartin Mares
1220e78ef8aSMartin Mares	* lspci.c (show_express_link): Fixed decoding of link status register.
1230e78ef8aSMartin Mares	Thanks to Roland Dreier for his report.
1240e78ef8aSMartin Mares
125e6859953SMartin Mares2005-12-12  Martin Mares  <[email protected]>
126e6859953SMartin Mares
127e6859953SMartin Mares	* lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow
128e6859953SMartin Mares	at least read-only access. Patch by Pavel Celeda <[email protected]>.
129e6859953SMartin Mares
130e6859953SMartin Mares	* Makefile: Corrected library path on NetBSD.
131e6859953SMartin Mares
132a99c0d69SMartin Mares2005-11-26  Martin Mares  <[email protected]>
133a99c0d69SMartin Mares
134e4af70c6SMartin Mares	* Released as 2.2.1.
135e4af70c6SMartin Mares
136a99c0d69SMartin Mares	* lspci.c (show_machine): Subsystem vendors were printed incorrectly
137a99c0d69SMartin Mares	in machine-readable modes. Thanks to Pavel Celeda for a bug report.
138a99c0d69SMartin Mares
139f23fd3fcSMartin Mares2005-10-11  Martin Mares  <[email protected]>
140f23fd3fcSMartin Mares
141f23fd3fcSMartin Mares	* lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it.
142f23fd3fcSMartin Mares
14315296723SMartin Mares2005-09-21  Martin Mares  <[email protected]>
14415296723SMartin Mares
14515296723SMartin Mares	* Released as 2.2.0.
14615296723SMartin Mares
14740b6d93fSMartin Mares	* pci.ids: Updated copyright header.
14840b6d93fSMartin Mares
14915296723SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported
15015296723SMartin Mares	64-bit addresses, they are now always supported.
15115296723SMartin Mares
15215296723SMartin Mares	* lspci.c (show_bases): Corrected printing of 64-bit addresses
15315296723SMartin Mares	in bus-centric mode.
15415296723SMartin Mares
15515296723SMartin Mares	* lib/configure: Enable 64-bit addresses on all Linux systems.
15615296723SMartin Mares
15715296723SMartin Mares	* lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they
15815296723SMartin Mares	are shorter.
15915296723SMartin Mares
160224707baSMartin Mares2005-09-11  Martin Mares  <[email protected]>
161224707baSMartin Mares
162224707baSMartin Mares	* Released as 2.1.99-test11.
163224707baSMartin Mares
164224707baSMartin Mares	* lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls.
165224707baSMartin Mares
166aeaca5d3SMartin Mares2005-09-10  Martin Mares  <[email protected]>
167aeaca5d3SMartin Mares
168224707baSMartin Mares	* Released as 2.1.99-test10.
169224707baSMartin Mares
17063e6f2e0SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
17163e6f2e0SMartin Mares
172043ebdeeSMartin Mares	* update-pciids.sh: Changed the default URL for downloading pci.ids
173043ebdeeSMartin Mares	to http://pciids.sourceforge.net/v2.2/pci.ids.
174043ebdeeSMartin Mares
175043ebdeeSMartin Mares	* lib/pci.h (PCI_LIB_VERSION): Added version identifier.
176043ebdeeSMartin Mares
177aeaca5d3SMartin Mares	* lib/names.c: Rewritten the name database module almost from scratch.
178aeaca5d3SMartin Mares	Everything is much cleaner and there are hopefully no more memory leaks;
179aeaca5d3SMartin Mares	pci_lookup_name() now uses varargs in a backward compatible fashion.
180aeaca5d3SMartin Mares	Introduced PCI_LOOKUP_NO_NUMBERS.
181aeaca5d3SMartin Mares
182aeaca5d3SMartin Mares	The new code supports subsystem entries not tied to a specific device.
183aeaca5d3SMartin Mares	I had to extend the format of pci.ids in order to support it, so I have
184aeaca5d3SMartin Mares	extended the idea of the "C" (class) blocks and introduced "S" blocks
185aeaca5d3SMartin Mares	for subsystems. To avoid doing more incompatible changes in the future,
186aeaca5d3SMartin Mares	the parser skips unknown single-letter blocks without reporting errors.
187aeaca5d3SMartin Mares
188121c76c9SMartin Mares2005-08-23  Martin Mares  <[email protected]>
189121c76c9SMartin Mares
19054e13765SMartin Mares	* Released as 2.1.99-test9.
19154e13765SMartin Mares
19254e13765SMartin Mares	* Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent
19354e13765SMartin Mares	gcc versions when optimizing anyway.
19454e13765SMartin Mares
19554e13765SMartin Mares	* Made the path to pci.ids customizable and independent on the SHAREDIR.
19654e13765SMartin Mares	Just override IDSDIR in the top-level Makefile.
19754e13765SMartin Mares
19854e13765SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
19954e13765SMartin Mares
20084d437d6SMartin Mares	* lspci.man, setpci.man: Improved the man pages. Documented all access
20184d437d6SMartin Mares	methods and which operations are privileged.
20284d437d6SMartin Mares
20384d437d6SMartin Mares	* lspci.c: Another rewrite of config register caching, now also including
20484d437d6SMartin Mares	lots of internal checks. It should be now perfectly able to cope with
20584d437d6SMartin Mares	portions of the configuration space being inaccessible, for example
20684d437d6SMartin Mares	due to insufficient access rights.
20784d437d6SMartin Mares
2083b8bf739SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X
2093b8bf739SMartin Mares	capabilities. Includes partial support for PCI-X 2.0 (probably incomplete
2103b8bf739SMartin Mares	as I haven't seen the spec).
2113b8bf739SMartin Mares
2123b8bf739SMartin Mares	* lspci.c: Quell warnings about unused parameters.
2133b8bf739SMartin Mares
21484d437d6SMartin Mares	* lspci.c: Removed C++ comments.
21584d437d6SMartin Mares
2163b8bf739SMartin Mares	* lib/header.h: Merged definitions of extended capabilities and some new
2173b8bf739SMartin Mares	PCI-X capability bits from linux-2.6.11/include/pci.h.
2183b8bf739SMartin Mares
2193b8bf739SMartin Mares	* lspci.c (show_caps): Try to scan extended capabilities only if the
2203b8bf739SMartin Mares	device has either PCI-X or PCI Express capability in its normal capability
2213b8bf739SMartin Mares	list.
2223b8bf739SMartin Mares
223f7821e53SMartin Mares	* lib/dump.c (dump_init): Reading of dumps works again. The dump reader
224f7821e53SMartin Mares	now also remembers how much data it has read and refuses attempts to
225f7821e53SMartin Mares	access more than that.
226ea4e5f5dSMartin Mares
22746ea554dSMartin Mares	* setpci.man, lspci.c, README: prefer spelling "buses" over "busses".
22846ea554dSMartin Mares
2298afaab22SMartin Mares	* lspci.c: If alloca() is not available, use xmalloc(), not malloc().
2308afaab22SMartin Mares
231121c76c9SMartin Mares	* lib/configure: Added x86_64 on Linux.
232121c76c9SMartin Mares
233c1c2c30eSMartin Mares2005-08-22  Martin Mares  <[email protected]>
234c1c2c30eSMartin Mares
235b9ca9147SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters.
236b9ca9147SMartin Mares	Thanks to Matthew Wilcox for bug report.
237b9ca9147SMartin Mares
238c1c2c30eSMartin Mares	* lspci.c: Corrected spelling of "Hz" (it was "hz" at several places).
239b9ca9147SMartin Mares	Thanks to Krzysztof Oledzki for pointing that out.
240c1c2c30eSMartin Mares
24126542a0bSMartin Mares2004-08-19  Martin Mares  <[email protected]>
24226542a0bSMartin Mares
24326542a0bSMartin Mares	* pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism,
24426542a0bSMartin Mares	because pciutils by default install to /usr/sbin. Update.
24526542a0bSMartin Mares
2466aa54f1bSMartin Mares2004-08-13  Martin Mares  <[email protected]>
2476aa54f1bSMartin Mares
248aabb0a92SMartin Mares	* Released as 2.1.99-test8.
249aabb0a92SMartin Mares
250f31412d1SMartin Mares	* lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are
251f31412d1SMartin Mares	no longer exported to the outside world.
252f31412d1SMartin Mares
253ee7d8384SMartin Mares	* README.Windows: Updated.
254ee7d8384SMartin Mares
255ee7d8384SMartin Mares	* maint/release: Substitute version number in win32/config.h.
256ee7d8384SMartin Mares
257ee7d8384SMartin Mares	* win32/config.h: Added.
258ee7d8384SMartin Mares
259ee7d8384SMartin Mares	* lib/sysdep.h (bzero, strcasecmp): are macros on Windows.
260ee7d8384SMartin Mares
261ee7d8384SMartin Mares	* compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU
262ee7d8384SMartin Mares	C library for use on systems where the default libraries lack
263ee7d8384SMartin Mares	proper getopt. Currently used by the Windows port.
264ee7d8384SMartin Mares
265ee7d8384SMartin Mares	* lib/sysdep.h, lib/types.h: Updates of the Windows port from
266ee7d8384SMartin Mares	Alexander Stock.
267ee7d8384SMartin Mares
268489233b4SMartin Mares	* lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define
269489233b4SMartin Mares	its own u8, u16, u32, byte and word types and uses what the user
270489233b4SMartin Mares	has supplied instead. With this change, all namespace clashes should
271489233b4SMartin Mares	be gone.
272489233b4SMartin Mares
273489233b4SMartin Mares	* Makefile, lib/Makefile: Updated dependencies.
274489233b4SMartin Mares
275489233b4SMartin Mares	* pciutils.h: Include lib/sysdep.h and move NONRET et al. there.
276489233b4SMartin Mares
277489233b4SMartin Mares	* lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because
278489233b4SMartin Mares	it is included unconditionally in lib/types.h.
279489233b4SMartin Mares
280489233b4SMartin Mares	* Moved system-dependent stuff from lib/internal.h to lib/sysdep.h,
281489233b4SMartin Mares	which is also used by the utilities. Also moved type declarations
282489233b4SMartin Mares	from lib/pci.h to lib/types.h.
283489233b4SMartin Mares
284489233b4SMartin Mares	* All files: Prepend a "PCI_" prefix in front of all configuration
285489233b4SMartin Mares	defines to avoid namespace clashes. CAVEAT: If there is any libpci
286489233b4SMartin Mares	application using the (undocumented) defines, it has to be updated.
287489233b4SMartin Mares
288489233b4SMartin Mares	* lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing
289489233b4SMartin Mares	headers with the kernel a couple of years ago.
290489233b4SMartin Mares
2919bb4b4eaSMartin Mares	* lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6.
2929bb4b4eaSMartin Mares
2936aa54f1bSMartin Mares	* lspci.c (show_rom): Use the same logic for printing disabled
2946aa54f1bSMartin Mares	or unassigned ROM's as we do in show_bases() for the other BAR's.
2956aa54f1bSMartin Mares
2966aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Better reaction to
2976aa54f1bSMartin Mares	invalid 64-bit addresses. Also d->hdrtype should not include
2986aa54f1bSMartin Mares	bit 7, which caused mysterious errors on multi-function devices.
2996aa54f1bSMartin Mares
3006aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Fill in base addresses
3016aa54f1bSMartin Mares	even if the regions are known to be disabled. It is the client's
3026aa54f1bSMartin Mares	job to interpret them. (And it is not a trivial job if you want
3036aa54f1bSMartin Mares	to do it correctly, since you need to check I/O and memory enables
3046aa54f1bSMartin Mares	on all upstream bridges, too.) However, it could be interesting to
3056aa54f1bSMartin Mares	introduce functions for interpreting the addresses and even for
3066aa54f1bSMartin Mares	mapping the regions and doing I/O on them.
3076aa54f1bSMartin Mares
30880e6c636SMartin Mares2004-07-30  Martin Mares  <[email protected]>
30980e6c636SMartin Mares
31080e6c636SMartin Mares	* lspci.c: HyperTransport improvements from Maciej.
31180e6c636SMartin Mares
312d6324891SMartin Mares2004-07-11  Martin Mares  <[email protected]>
313d6324891SMartin Mares
314d6324891SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Arguments now correspond
315d6324891SMartin Mares	to the format string. [Patch by Bill Nottingham]
316d6324891SMartin Mares
317ec25b52dSMartin Mares2004-07-05  Martin Mares  <[email protected]>
318ec25b52dSMartin Mares
319362be683SMartin Mares	* Released as 2.1.99-test7.
320362be683SMartin Mares
321ec25b52dSMartin Mares	* lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but
322ec25b52dSMartin Mares	ended up with rewriting the fetching mechanism to be fully dynamic,
323ec25b52dSMartin Mares	but avoid reading config space registers not explicitly requested.
324ec25b52dSMartin Mares
325ec25b52dSMartin Mares2004-06-29  Matthew Wilcox <[email protected]>
326ec25b52dSMartin Mares
327ec25b52dSMartin Mares	* lspci.c: More work on PCI Express dumping.
328ec25b52dSMartin Mares
329ec25b52dSMartin Mares	* lib/header.h: Updated PCI Express capability definitions.
330ec25b52dSMartin Mares
331ec25b52dSMartin Mares	* lib/proc.c (proc_read): Removed bogus warning.
332ec25b52dSMartin Mares
333ec25b52dSMartin Mares	* common.c (xrealloc): Introduced.
334ec25b52dSMartin Mares
335ec25b52dSMartin Mares	* lspci.man: Added -xxxx.
336ec25b52dSMartin Mares
33709817437SMartin Mares2004-06-27  Martin Mares  <[email protected]>
33809817437SMartin Mares
339d1fa27ebSMartin Mares	* Released as 2.1.99-test6.
340d1fa27ebSMartin Mares
3414d67aa89SMartin Mares	* lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap.
3424d67aa89SMartin Mares	Patch by Roland Dreier <[email protected]>, cleaned up by me.
3434d67aa89SMartin Mares
3444d67aa89SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch()
3454d67aa89SMartin Mares	failures.
3464d67aa89SMartin Mares
3474d67aa89SMartin Mares	* lib/header.h: Added PCI Express extended capabilities. Again by Matthew.
3484d67aa89SMartin Mares
3494d67aa89SMartin Mares	* lspci.c (show_express): Added dumping of PCI Express cap.
3504d67aa89SMartin Mares	Patch by Matthew Wilcox.
3514d67aa89SMartin Mares
3524d67aa89SMartin Mares	* lib/header.h: Added a list of PCI 3.0 capabilities and also details
3534d67aa89SMartin Mares	on PCI Express caps. Patch by Matthew Wilcox <[email protected]>.
3544d67aa89SMartin Mares
35509817437SMartin Mares	* lspci.c (check_root): Gone. No explicit checks for root are needed,
35609817437SMartin Mares	report correct errors reported by the libpci instead.
35709817437SMartin Mares
35809817437SMartin Mares	* lspci.c: Added dumping of the extended config space on "-xxxx".
35909817437SMartin Mares	Better caching of config registers.
36009817437SMartin Mares
36109817437SMartin Mares	* setpci.c (main): Allow access to whole 4096 bytes of the config space.
36209817437SMartin Mares
36309817437SMartin Mares	* lib/sysfs.c, lib/proc.c: Don't print error messages on short reads,
36409817437SMartin Mares	just return the appropriate error code.
36509817437SMartin Mares
36609817437SMartin Mares	* lib: Added support for extended (4096-byte) configuration space,
36709817437SMartin Mares	currently implemented only in Linux proc and sysfs access methods
36809817437SMartin Mares	and of course in the dump reader.
36909817437SMartin Mares
3700d656226SMartin Mares2004-05-29  Martin Mares  <[email protected]>
3710d656226SMartin Mares
372c0eece92SMartin Mares	* Released as 2.1.99-test5.
373c0eece92SMartin Mares
374a2413560SMartin Mares	* lib/pci.h: Windows don't have the standard u_int* types.
375a2413560SMartin Mares
376a2413560SMartin Mares	* lib/internal.h: <sys/param.h> required on Windows for endianity
377a2413560SMartin Mares	macros.
378a2413560SMartin Mares
379a2413560SMartin Mares	* lib/i386-ports.c: Connected i386-io-windows.h.
380a2413560SMartin Mares
381a2413560SMartin Mares	* lspci.c (check_root): geteuid() is not available on Windows.
382a2413560SMartin Mares
383a2413560SMartin Mares	* lib/i386-io-windows.h: Added Windows port contributed by Alexander
384a2413560SMartin Mares	Stock <[email protected]>.
385a2413560SMartin Mares
386a2413560SMartin Mares	* lib/configure: Hopefully fixed SunOS port broken by various
387a2413560SMartin Mares	changes to the configure script.
388a2413560SMartin Mares
3890d656226SMartin Mares	* Makefile, lib/configure: Cross-compilation support, patch by Maciej.
3900d656226SMartin Mares
391138c0385SMartin Mares2004-05-28  Martin Mares  <[email protected]>
392138c0385SMartin Mares
3939f490382SMartin Mares	* Released as 2.1.99-test4.
3949f490382SMartin Mares
395cce2caacSMartin Mares	* lspci.c (show_verbose): Header type 1 is probably legal for all
396cce2caacSMartin Mares	types of bridges, not only for PCI-to-PCI bridges.
397cce2caacSMartin Mares
398b569ef09SMartin Mares	* lspci.c (format_agp_rate): Write "x16", not "x@".
399b569ef09SMartin Mares	(show_agp): rate[] could overflow.
400b569ef09SMartin Mares	Bugs reported by Jakub Bogusz <[email protected]>.
401b569ef09SMartin Mares
402bfc4fe7aSMartin Mares	* lspci.c (show_ht_*): Show HyperTransport capability with all its
403bfc4fe7aSMartin Mares	details. Once again code by Maciej simplified (i.e., possibly broken)
404bfc4fe7aSMartin Mares	by me.
405bfc4fe7aSMartin Mares
406bfc4fe7aSMartin Mares	* lib/header.h: Added declarations of HyperTransport capability.
407bfc4fe7aSMartin Mares	Again thanks to Maciej.
408bfc4fe7aSMartin Mares
409138c0385SMartin Mares	* lspci.c: Decode all bits of the secondary status word in type 1 headers.
410138c0385SMartin Mares	Thanks to Maciej W. Rozycki <[email protected]> for the patch.
411138c0385SMartin Mares
4128fc75dbcSMartin Mares2003-12-27  Martin Mares  <[email protected]>
4138fc75dbcSMartin Mares
41481abd2a7SMartin Mares	* Released as 2.1.99-test3.
41581abd2a7SMartin Mares
4161f7c91ccSMartin Mares	* lspci.man, setpci.man: Document domains and correct spelling.
4171f7c91ccSMartin Mares
4181f7c91ccSMartin Mares	* lib/dump.c (dump_init): Added ability to read domain numbers.
4191f7c91ccSMartin Mares
42084c8d1bbSMartin Mares	* lspci.c: Devices in domains different from 0 have their slot number
4211f7c91ccSMartin Mares	printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains
4221f7c91ccSMartin Mares	as well.
42384c8d1bbSMartin Mares
42484c8d1bbSMartin Mares	* lib/filter.c: Slot filters understand domains.
42584c8d1bbSMartin Mares
42684c8d1bbSMartin Mares	* lib/generic.c: Mention the domain in slot numbers in all error messages.
42784c8d1bbSMartin Mares
42884c8d1bbSMartin Mares	* lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong.
42984c8d1bbSMartin Mares
43084c8d1bbSMartin Mares	* lib/access.c (pci_get_dev): Added support for domains.
43184c8d1bbSMartin Mares
43284c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config
43384c8d1bbSMartin Mares	registers (or to be precise, leave it for the generic parts of the pcilib
43484c8d1bbSMartin Mares	to do so) instead of reading them from the sysfs. It's faster this way.
43584c8d1bbSMartin Mares
43684c8d1bbSMartin Mares	* lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal
43784c8d1bbSMartin Mares	variable. Better read it from the config registers (it's cached anyway).
43884c8d1bbSMartin Mares
43984c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype.
44084c8d1bbSMartin Mares	  lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it.
44184c8d1bbSMartin Mares	  Saves lots of unnecessary file accesses.
44284c8d1bbSMartin Mares
44311f7b31bSMartin Mares	* lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter
44411f7b31bSMartin Mares	is not supported by all C libraries.
44511f7b31bSMartin Mares
44611f7b31bSMartin Mares	* Makefile: Always enter the lib directory (remember that we don't have
44711f7b31bSMartin Mares	full dependecies for the library in the top-level Makefile; hmmm, another
44811f7b31bSMartin Mares	thing to rewrite some day).
44911f7b31bSMartin Mares
45011f7b31bSMartin Mares	* lib/sysfs.c: Added Linux sysfs access method based on the patch
45111f7b31bSMartin Mares	written by Matthew Wilcox <[email protected]>.
45211f7b31bSMartin Mares
45311f7b31bSMartin Mares	* lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc".
45411f7b31bSMartin Mares
45511f7b31bSMartin Mares	* lib/pread.h: The hacks to support pread on various versions
45611f7b31bSMartin Mares	of Linux libc moved there.
45711f7b31bSMartin Mares
45811f7b31bSMartin Mares	* lib/proc.c (proc_setup): The return value of snprintf() varies
45911f7b31bSMartin Mares	between glibc versions, so we need to check both for a negative
46011f7b31bSMartin Mares	values and for too large values.
46111f7b31bSMartin Mares
4624284af58SMartin Mares	* Removed last few references to the "Linux PCI Utilities", the
4634284af58SMartin Mares	package is pretty cross-platform now :)
4644284af58SMartin Mares
4654284af58SMartin Mares2003-12-27  Martin Mares  <[email protected]>
4664284af58SMartin Mares
467ab12277eSMartin Mares	* Released as 2.1.99-test2.
468ab12277eSMartin Mares
469ab12277eSMartin Mares	* README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the
470ab12277eSMartin Mares	release scripts insert the current version. "make release" is gone.
471ab12277eSMartin Mares
472ab12277eSMartin Mares	* maint/release, maint/release.pm: Added a new system of scripts for
473ab12277eSMartin Mares	making releases including inter-version diffs etc.
474ab12277eSMartin Mares
475ab12277eSMartin Mares	* Makefile: Cleaned up.
476ab12277eSMartin Mares
477ab12277eSMartin Mares	* lib/fbsd-device.c: I patched another copy of this file by mistake,
478ab12277eSMartin Mares	this time the version checks should be right.
479ab12277eSMartin Mares
480ab12277eSMartin Mares2003-12-27  Martin Mares  <[email protected]>
481ab12277eSMartin Mares
4826d722cd6SMartin Mares	* Released as 2.1.99-test1.
4836d722cd6SMartin Mares
484dd33246aSMartin Mares	* pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h:
485dd33246aSMartin Mares	Remove shadows of the syscall access method which was never
486dd33246aSMartin Mares	implemented.
487dd33246aSMartin Mares
48880b3121aSMartin Mares	* update-pciids.sh: Try to preserve permissions of the old file
48980b3121aSMartin Mares	if chmod supports --reference. Should close Debian Bug #223740.
49080b3121aSMartin Mares
4916aea909aSMartin Mares	* lib/proc.c (proc_setup): Increased path name length limit to 1024.
4926aea909aSMartin Mares	Thanks for Redhat and Mandrake for inspiration.
4936aea909aSMartin Mares
4946aea909aSMartin Mares	* lib/configure: Recognize ppc and ppc64, both have 64-bit addresses.
4956aea909aSMartin Mares	Grabbed from Redhat (Fedora) patches.
4966aea909aSMartin Mares
4976aea909aSMartin Mares2003-12-27  Martin Mares  <[email protected]>
4986aea909aSMartin Mares
499f701ff47SMartin Mares	Merged bug fixes from Debian patches:
500f701ff47SMartin Mares
501f701ff47SMartin Mares	* lspci.c (show_verbose): "Cache Line Size" should be capitalized.
502f701ff47SMartin Mares
503f701ff47SMartin Mares	* lspci.c (show_pcix_nobridge): Added a missing newline.
504f701ff47SMartin Mares
5052240db8cSMartin Mares	* lib/proc.c (proc_scan): When reading the header type, don't
5062240db8cSMartin Mares	forget to clear the topmost bit indicating that the device has
507f701ff47SMartin Mares	multiple functions.
5082240db8cSMartin Mares
5092240db8cSMartin Mares2003-12-27  Martin Mares  <[email protected]>
5102240db8cSMartin Mares
51145902995SMartin Mares	Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]>
51245902995SMartin Mares	for the patches:
51345902995SMartin Mares
51445902995SMartin Mares	* lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined.
51545902995SMartin Mares	* lib/fbsd-device.c: Select the right set of system includes according
51645902995SMartin Mares	to __FreeBSD_version.
51745902995SMartin Mares
51845902995SMartin Mares2003-12-27  Martin Mares  <[email protected]>
51945902995SMartin Mares
5208fc75dbcSMartin Mares	Merged support for Solaris on i386 by Bill Moore <[email protected]>
5218fc75dbcSMartin Mares	and cleaned up:
5228fc75dbcSMartin Mares
5238fc75dbcSMartin Mares	* lib/configure: Recognize SunOS.
5248fc75dbcSMartin Mares	* lib/internal.h: Learn how to recognize byte order on SunOS.
5258fc75dbcSMartin Mares	* lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c.
5268fc75dbcSMartin Mares	* lib/i386-io-linux.h: Linux specific part.
5278fc75dbcSMartin Mares	* lib/i386-io-hurd.h: GNU/Hurd specific part.
5288fc75dbcSMartin Mares	* lib/i386-io-sunos.h: SunOS specific part.
5298fc75dbcSMartin Mares
5309739916eSMartin Mares2003-12-26  Martin Mares  <[email protected]>
5319739916eSMartin Mares
5329739916eSMartin Mares	* lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly.
5339739916eSMartin Mares
5349739916eSMartin Mares	* lib/pci.h: Types declared in <sys/types.h> should be usable on all
5359739916eSMartin Mares	platforms we currently support, so kill the forest of #ifdef's and
5369739916eSMartin Mares	use them in all cases.
5379739916eSMartin Mares
5389739916eSMartin Mares	* lib/pci.h: Use ULONG_MASK to decide whether we should use long
5399739916eSMartin Mares	or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS.
5409739916eSMartin Mares	Define format strings for addresses, port numbers and IRQ numbers
5419739916eSMartin Mares	directly in pci.h.
5429739916eSMartin Mares
5439739916eSMartin Mares	* lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses.
5449739916eSMartin Mares
54580459c65SMartin Mares2003-12-26  Marco Gerards  <[email protected]>
54680459c65SMartin Mares
54780459c65SMartin Mares	Added support for the GNU Hurd (cleaned up by Martin Mares):
54880459c65SMartin Mares
54980459c65SMartin Mares	* lib/configure [GNU]: Use the i386 ports for configuration access.
55080459c65SMartin Mares	* lib/i386-ports.c: Don't call iopl() on the Hurd.
55180459c65SMartin Mares	* lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining
55280459c65SMartin Mares	u8 to u32.
55380459c65SMartin Mares
554a85769a8SMartin Mares2003-12-26  Martin Mares  <[email protected]>
555a85769a8SMartin Mares
5567dacd9c8SMartin Mares	* lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call
5577dacd9c8SMartin Mares	config_fetch() to ensure that the registers have been read. Thanks to
5587dacd9c8SMartin Mares	Bill Wood <[email protected]> for the patch.
5597dacd9c8SMartin Mares
5607dacd9c8SMartin Mares	* lspci.c: Ensure that failure of config_fetch() is handled correctly
5617dacd9c8SMartin Mares	at all places.
5627dacd9c8SMartin Mares
5634063c31cSMartin Mares	* lspci.man: There was one more explicit reference to /usr/share/pci.ids.
5644063c31cSMartin Mares	Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>.
5654063c31cSMartin Mares
5663fe8a38dSMartin Mares	* setpci.c (main): Better error messages.
5673fe8a38dSMartin Mares
5685f5b1a7bSMartin Mares	* setpci.c (ex_op): The demo mode should disable only writing, not reading.
5695f5b1a7bSMartin Mares
5705f5b1a7bSMartin Mares	* setpci.man: The documentation was inconsistent on what should -D do.
5715f5b1a7bSMartin Mares	Document the new behaviour.
572b251f40bSMartin Mares
57391e37a49SMartin Mares	* pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating
57491e37a49SMartin Mares	the GCC specific __attribute__((noreturn)) and killed the hack with
57591e37a49SMartin Mares	redefining __attribute__ on non-GCC compilers.
57691e37a49SMartin Mares
5774afd29d3SMartin Mares	* Makefile: Added missing dependencies. Parallel builds work now.
5784afd29d3SMartin Mares	Problem reported by Andreas Haumer <[email protected]>, but I chose
5794afd29d3SMartin Mares	a different fix.
5804afd29d3SMartin Mares
581b0f1a03bSMartin Mares	* Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell
582b0f1a03bSMartin Mares	command every time $(MANDIR) is referenced.
583b0f1a03bSMartin Mares
584b7fd8e19SMartin Mares	* lspci.c (main): The error message for `lspci -s' incorrectly mentioned
585b7fd8e19SMartin Mares	a `-f' switch. Reported by Steve Finney <[email protected]>.
586b7fd8e19SMartin Mares
58705bb10a2SMartin Mares	* lib/generic.c: Removed memory leak in pci_generic_bus_scan().
58805bb10a2SMartin Mares	Reported by Gary Parnes <[email protected]>.
58905bb10a2SMartin Mares
590a832f6f1SMartin Mares	* Replaced obsolete syntax of __attribute__((unused)) in the middle of
591a832f6f1SMartin Mares	parameter declarations (which is no longer supported by GCC 3.1) by the
592a832f6f1SMartin Mares	current syntax (attribute at the end). Thanks to [email protected]
593a832f6f1SMartin Mares	for reporting this problem.
594a832f6f1SMartin Mares
595a85769a8SMartin Mares	* Removed CVS $Id$ tags from all files.
596a85769a8SMartin Mares
597a85769a8SMartin Mares	* Makefile: Added some more warnings.
598a85769a8SMartin Mares
599b7351143SMartin Mares	* setpci.c: Cleaned up mask/value code.
600b7351143SMartin Mares
601b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]>
602b7351143SMartin Mares
603b7351143SMartin Mares	* setpci.c: Individual bits to be set can be specified as <value>:<mask>.
604b7351143SMartin Mares
6052a5d5cf9SMartin Mares2003-11-29  Martin Mares  <[email protected]>
6062a5d5cf9SMartin Mares
6072a5d5cf9SMartin Mares	* Imported the pciutils sources to my Arch repository. Good-bye, CVS.
6082a5d5cf9SMartin Mares
609d772ef15SMartin Mares2003-01-04  Martin Mares  <[email protected]>
610d772ef15SMartin Mares
6111b95f396SMartin Mares	* Released as 2.1.11.
6121b95f396SMartin Mares
613c83293ebSMartin Mares	* Makefile: Changed configuration of installation directories --
614c83293ebSMartin Mares	all paths are now set at the top of the Makefile instead of being
615c83293ebSMartin Mares	scattered between the installation rules. The default installation
616c83293ebSMartin Mares	now goes always to /usr/local regardless of the OS as most distributions
617c83293ebSMartin Mares	already contain some version of pciutils and we don't want custom
618c83293ebSMartin Mares	installations to interfere with the default ones.
619c83293ebSMartin Mares
620c83293ebSMartin Mares	* Makefile: Removed a couple of ancient install hacks: we no longer
621c83293ebSMartin Mares	try to avoid overwriting a newer pci.ids file (users are now expected
622c83293ebSMartin Mares	to use update-ids) and we don't try to remove /etc/pci.ids (a long time
623c83293ebSMartin Mares	has passed since the last version which used it).
624c83293ebSMartin Mares
625e2875dcdSMartin Mares	* Makefile: Paths to pci.ids in man pages automatically get the right path.
626e2875dcdSMartin Mares
6271b95f396SMartin Mares	* Added the update-ids utility.
6280138a2a7SMartin Mares
629d772ef15SMartin Mares	* lib: Removed partially implemented "syscall" access method which will
630d772ef15SMartin Mares	probably never be needed.
631d772ef15SMartin Mares
632eb620239SMartin Mares2002-12-27  Martin Mares  <[email protected]>
633eb620239SMartin Mares
634130090bdSMartin Mares	* lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe.
635130090bdSMartin Mares
636eb620239SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Added work-around for devices with
637eb620239SMartin Mares	discontiguous numbering of functions. This is already present in the Linux
638eb620239SMartin Mares	kernel for several years, but I forgot to update pciutils as well.
639eb620239SMartin Mares
640848b4347SMartin Mares2002-12-26  Martin Mares  <[email protected]>
641848b4347SMartin Mares
642579b19ffSMartin Mares	* lib/header.h, lspci.c: Dump AGP3 flags and speeds.
643579b19ffSMartin Mares
644579b19ffSMartin Mares	* lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header,
645579b19ffSMartin Mares	there is no reason to prefer the kernel version.
646579b19ffSMartin Mares
647579b19ffSMartin Mares	* lib/proc.c (proc_scan): Don't forget to initialize hdrtype.
648579b19ffSMartin Mares
649848b4347SMartin Mares	* Added preliminary version of NetBSD support by Quentin Garnier
650848b4347SMartin Mares	<[email protected]>.
651848b4347SMartin Mares
652f0952474SMartin Mares2002-04-06  Martin Mares  <[email protected]>
653f0952474SMartin Mares
654f0952474SMartin Mares	* lspci.c: Mention "-xxx" in the help.
655f0952474SMartin Mares
656d2f666f1SMartin Mares2002-03-30  Martin Mares  <[email protected]>
657d2f666f1SMartin Mares
6589bd44bb0SMartin Mares	* Released as 2.1.10.
6599bd44bb0SMartin Mares
660a33d0eb7SMartin Mares	* Removed pci.ids from the CVS as they are now maintained separately.
661a33d0eb7SMartin Mares	They are still included in the tarball, but if you are building	pciutils
662a33d0eb7SMartin Mares	from CVS sources or you want to get a newer ID file than the one distributed,
663a33d0eb7SMartin Mares	just use "make update-ids" to download the most recent snapshot from
664a33d0eb7SMartin Mares	pciids.sf.net.
665a33d0eb7SMartin Mares
666a33d0eb7SMartin Mares	* Makefile, README: Updated accordingly.
667a33d0eb7SMartin Mares
668a33d0eb7SMartin Mares	* Makefile: Added a couple of maintenance targets.
669a33d0eb7SMartin Mares
670a33d0eb7SMartin Mares	* maint/*: Maintainer's utilities now reside here (present only in CVS,
671a33d0eb7SMartin Mares	not in the tarball).
672a33d0eb7SMartin Mares
673d2f666f1SMartin Mares	* lib/names.c (parse_name_list): End-of-line comments are no longer
674d2f666f1SMartin Mares	supported. Hashes are now perfectly valid in all names and they start
675d2f666f1SMartin Mares	a comment only at the start of the line.
676d2f666f1SMartin Mares
677ee551b73SMartin Mares2002-03-26  Martin Mares  <[email protected]>
678ee551b73SMartin Mares
67907159913SMartin Mares	* README: Rewritten.
68007159913SMartin Mares
681ee551b73SMartin Mares	* Makefile: When the currently installed pci.ids file is newer than
682ee551b73SMartin Mares	the version to be installed, don't overwrite it. Suggested by
683ee551b73SMartin Mares	Jean Delvare <[email protected]>.
684ee551b73SMartin Mares
685bc7b1d62SMartin Mares2002-03-24  Martin Mares  <[email protected]>
686bc7b1d62SMartin Mares
6875f5e6f64SMartin Mares	* lspci.c (show_pcix_bridge): Added PCI-X capability display.
6885f5e6f64SMartin Mares	Contributed by Jeff Garzik <[email protected]>.
6895f5e6f64SMartin Mares
6905f5e6f64SMartin Mares	* lib/header.h: Added PCI-X stuff. Again by Jeff.
6915f5e6f64SMartin Mares
6925f5e6f64SMartin Mares	* Makefile (CFLAGS): -Werror is gone.
6935f5e6f64SMartin Mares
694a1052f16SMartin Mares	* lspci.c (format_agp_rate): Fixed AGP rate reporting.
695a1052f16SMartin Mares
696bc7b1d62SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and
697bc7b1d62SMartin Mares	function 7.
698bc7b1d62SMartin Mares
699bc7b1d62SMartin Mares	* lib/names.c (pci_lookup_name): When printing unknown subsystem vendor
700bc7b1d62SMartin Mares	or device hexadecimally, don't confuse it with chip vendor/device ID.
701bc7b1d62SMartin Mares	First reported by Marc Boucher <[email protected]>.
702bc7b1d62SMartin Mares
703f793990cSMartin Mares2001-11-04  Martin Mares  <[email protected]>
704f793990cSMartin Mares
705ee551b73SMartin Mares	* Released as 2.1.9.
706ee551b73SMartin Mares
707f793990cSMartin Mares	* pci.ids: Synced with the PCI ID Repository at SourceForge
708f793990cSMartin Mares	(http://pciids.sourceforge.net/).
709f793990cSMartin Mares
7101d174e56SMartin Mares2000-08-25  Martin Mares  <[email protected]>
7111d174e56SMartin Mares
7121d174e56SMartin Mares	* pci.ids: Updated ID's, synced with kernel 2.4.0-test7.
7131d174e56SMartin Mares
71465b4327eSMartin Mares2000-06-13  Martin Mares  <[email protected]>
71565b4327eSMartin Mares
71665b4327eSMartin Mares	* Makefile (uninstall): Fixed.
71765b4327eSMartin Mares
71865b4327eSMartin Mares	* pci.ids: ID updates.
71965b4327eSMartin Mares
7204a219d5fSMartin Mares2000-05-20  Martin Mares  <[email protected]>
7214a219d5fSMartin Mares
7224a219d5fSMartin Mares	* Released as 2.1.8.
7234a219d5fSMartin Mares
7244a219d5fSMartin Mares	* pci.ids: ID updates.
7254a219d5fSMartin Mares
7264a219d5fSMartin Mares	* lspci.c (show_verbose): Min/max latency is now printed in nanoseconds.
7274a219d5fSMartin Mares
7284a219d5fSMartin Mares2000-05-04  Martin Mares  <[email protected]>
7294a219d5fSMartin Mares
7304a219d5fSMartin Mares	* lspci.c (show_verbose): If the header type doesn't match device
7314a219d5fSMartin Mares	class, just print a warning and still use the header type, assuming
7324a219d5fSMartin Mares	bogus class info.
7334a219d5fSMartin Mares
73410c90662SMartin Mares2000-05-01  Martin Mares  <[email protected]>
73510c90662SMartin Mares
73672b9b690SMartin Mares	* lspci.c (show_pm): Updated according to PCI PM specs 1.1.
73772b9b690SMartin Mares
73810c90662SMartin Mares	* pci.ids: Updated Contemporary Control ARCnet card entries.
73910c90662SMartin Mares
74010c90662SMartin Mares	* pci.ids: Synchronized class list with latest PCI SIG documents.
74110c90662SMartin Mares
742a239ade6SMartin Mares2000-04-29  Martin Mares  <[email protected]>
743a239ade6SMartin Mares
744a239ade6SMartin Mares	* lib/names.c (pci_lookup_name): Fixed the cheat.
745a239ade6SMartin Mares
746a239ade6SMartin Mares	* lib/internal.h: Moved UNUSED/inline hacks above all other declarations.
747a239ade6SMartin Mares
748a239ade6SMartin Mares	* pci.ids: Various ID updates.
749a239ade6SMartin Mares
7502c83b860SMartin Mares2000-04-21  Martin Mares  <[email protected]>
7512c83b860SMartin Mares
7522c83b860SMartin Mares	* Released as 2.1.7.
7532c83b860SMartin Mares
7542c83b860SMartin Mares	* pciutils.spec: Added German description.
7552c83b860SMartin Mares
7562c83b860SMartin Mares	* lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's
7572c83b860SMartin Mares	are the same as device ID and just output subsystem name according to
7582c83b860SMartin Mares	device name.
7592c83b860SMartin Mares
7602c83b860SMartin Mares	* lib/proc.c: Use UNUSED instead of __attribute__((unused)).
7612c83b860SMartin Mares
7622c83b860SMartin Mares	* lib/pci.h: Added the correct typedefs for AIX.
7632c83b860SMartin Mares
7642c83b860SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Export.
7652c83b860SMartin Mares
7662c83b860SMartin Mares	* lib/configure: Detect AIX. Use "echo '...\c'" instead of
7672c83b860SMartin Mares	"echo -n" if the shell isn't bash.
7682c83b860SMartin Mares
7692c83b860SMartin Mares	* lspci.c: Avoid using alloca() if not compiled by GCC.
7702c83b860SMartin Mares	(insert_dev): Avoid returning a void value.
7712c83b860SMartin Mares
7722c83b860SMartin Mares	* Makefile: Choose which install utility to use according to
7732c83b860SMartin Mares	OS type. Also use `-o' instead of `-or' in find arguments.
7742c83b860SMartin Mares	Part of the AIX port.
7752c83b860SMartin Mares
7762c83b860SMartin Mares	* lib/aix-device.c: Added AIX low-level interface. Contributed
7772c83b860SMartin Mares	by Dave Johnson <[email protected]>, thanks a lot!
7782c83b860SMartin Mares
7792c83b860SMartin Mares	* pci.ids: Few new ID's.
7802c83b860SMartin Mares
7812c83b860SMartin Mares	* pciutils.h, lib/internal.h: Redefine __attribute__ and inline
7822c83b860SMartin Mares	when not compiled by GCC.
7832c83b860SMartin Mares
784c1a828daSMartin Mares2000-04-17  Martin Mares  <[email protected]>
785c1a828daSMartin Mares
786c1a828daSMartin Mares	* Released as 2.1.6.
787c1a828daSMartin Mares
788c1a828daSMartin Mares	* pci.ids: Added a large batch of ID's contributed by Gunther
789c1a828daSMartin Mares	Mayer <[email protected]> and synced the
790c1a828daSMartin Mares	list with the 2.3.99pre6 kernel.
791c1a828daSMartin Mares
792e91dd3abSMartin MaresThu Mar  9 13:11:39 2000  Martin Mares  <[email protected]>
793e91dd3abSMartin Mares
794a80b79a9SMartin Mares	* lib/example.c: Added a simple example of how to use
795a80b79a9SMartin Mares	the library.
796a80b79a9SMartin Mares
79789984232SMartin Mares	* lspci.man, setpci.man: Revealed --version. Well spotted
79889984232SMartin Mares	by Adam Sulmicki.
79989984232SMartin Mares
800e91dd3abSMartin Mares	* pci.ids: Added lots of new ID's and synced with 2.3.50.
801e91dd3abSMartin Mares
80278d9c5e2SMartin MaresTue Feb 15 00:16:21 2000  Martin Mares  <[email protected]>
80378d9c5e2SMartin Mares
80478d9c5e2SMartin Mares	* Released as 2.1.5.
80578d9c5e2SMartin Mares
80678d9c5e2SMartin Mares	* pciutils.spec: Updated spec file from Andreas Jaeger. Now using
80778d9c5e2SMartin Mares	%{_mandir} to find the right location to install manual pages to.
80878d9c5e2SMartin Mares
80978d9c5e2SMartin Mares	* pci.ids: New ID's.
81078d9c5e2SMartin Mares
81178d9c5e2SMartin Mares	* setpci.c (main): Don't crash when `-s' or `-d' is given with
81278d9c5e2SMartin Mares	no argument.
81378d9c5e2SMartin Mares
814f8141ae2SMartin MaresMon Jan 24 20:04:11 2000  Andreas Jaeger  <[email protected]>
815f8141ae2SMartin Mares
816f8141ae2SMartin Mares	* lib/i386-ports.c: Include <asm/io.h> only on systems without
817f8141ae2SMartin Mares	glibc.
818f8141ae2SMartin Mares
819f8141ae2SMartin MaresMon Jan 24 11:24:43 2000  Martin Mares  <[email protected]>
820f8141ae2SMartin Mares
821f8141ae2SMartin Mares	* Makefile: Modified to work with the Linux FHS brain-damaged idea
822f8141ae2SMartin Mares	of putting man pages to /usr/share/man. Now we choose either /usr/man
823f8141ae2SMartin Mares	or /usr/share/man depending on which one exists.
824f8141ae2SMartin Mares
82559e76e8bSMartin MaresSun Jan 23 10:52:34 2000  Martin Mares  <[email protected]>
82659e76e8bSMartin Mares
82759e76e8bSMartin Mares	* pci.ids: Synced with Linux 2.3.40.
82859e76e8bSMartin Mares
82959e76e8bSMartin Mares	* Released as version 2.1.4.
83059e76e8bSMartin Mares
8312dfd48cdSMartin MaresThu Jan 20 11:08:32 2000  Martin Mares  <[email protected]>
8322dfd48cdSMartin Mares
8332715403fSMartin Mares	* lspci.c (scan_device): Fixed bug in reading of cardbus extensions.
8342715403fSMartin Mares
83581077814SMartin Mares	* lib/proc.c: pread/pwrite fixed again, this time on libc5 :(
83681077814SMartin Mares
83781077814SMartin Mares	* lspci.c (format_agp_rate): Better formatting of AGP rates.
83881077814SMartin Mares
83981077814SMartin Mares	* pci.ids: New ID's.
84081077814SMartin Mares
8412dfd48cdSMartin Mares	* lib/configure: Added configuration for ia64 (the same as for Alpha).
8422dfd48cdSMartin Mares	Patch from Stephane Eranian <[email protected]>.
8432dfd48cdSMartin Mares
8445a258860SMartin MaresThu Jan 13 23:01:52 2000  Martin Mares  <[email protected]>
8455a258860SMartin Mares
8465a258860SMartin Mares	* Released as version 2.1.3.
8475a258860SMartin Mares
8485a258860SMartin Mares	* pci.ids: New ID's.
8495a258860SMartin Mares
8505a258860SMartin Mares	* lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli.
8515a258860SMartin Mares
8525a258860SMartin Mares	* lib/access.c: Corrected order of access methods -- it's wonderful how
8535a258860SMartin Mares	long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff.
8545a258860SMartin Mares
8550c047bbeSMartin MaresSat Dec 11 23:34:48 1999  Martin Mares  <[email protected]>
8560c047bbeSMartin Mares
8570c047bbeSMartin Mares	* Released as version 2.1.2.
8580c047bbeSMartin Mares
8590c047bbeSMartin Mares	* lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's.
8600c047bbeSMartin Mares
86133bc28a5SMartin MaresSat Dec  4 13:11:03 1999  Martin Mares  <[email protected]>
86233bc28a5SMartin Mares
86339231205SMartin Mares	* Released as version 2.1.1.
86439231205SMartin Mares
86533bc28a5SMartin Mares	* pci.ids: Several new ID's.
86633bc28a5SMartin Mares
86733bc28a5SMartin Mares	* setpci.c (exec_op): Don't forget to increment address after writing
86833bc28a5SMartin Mares	single value, so that `30.b=12,34,56,78' works as expected. Reported
86933bc28a5SMartin Mares	by Petr Soucek <[email protected]>.
87033bc28a5SMartin Mares
8718d047897SMartin MaresWed Nov  3 10:24:38 1999  Martin Mares  <[email protected]>
8728d047897SMartin Mares
8738d047897SMartin Mares	* lspci.c (show_terse): If prog-if is zero, but it's present in the
8748d047897SMartin Mares	ID list, show it.
8758d047897SMartin Mares
8766afc6538SMartin MaresSat Oct 30 11:06:35 1999  Martin Mares  <[email protected]>
8776afc6538SMartin Mares
8786afc6538SMartin Mares	* Released as version 2.1.
8796afc6538SMartin Mares
8806afc6538SMartin Mares	* pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in
8816afc6538SMartin Mares	lots of contributed entries.
8826afc6538SMartin Mares
8838f756113SMartin MaresThu Oct 14 10:40:12 1999  Dave Jones    <[email protected]>
8848f756113SMartin Mares
8858f756113SMartin Mares	* pci.ids: Added lots of subsystem definitions.
8868f756113SMartin Mares
887d4798a32SMartin MaresSat Oct  9 14:32:28 1999  Martin Mares  <[email protected]>
888d4798a32SMartin Mares
889d4798a32SMartin Mares	* setpci.man: Better example.
890d4798a32SMartin Mares
891d4798a32SMartin Mares	* lspci.c: Resolve prog-if names.
892d4798a32SMartin Mares
893d4798a32SMartin Mares	* lib/names.c: Adapted to new pci.ids syntax.
894d4798a32SMartin Mares
895d4798a32SMartin Mares	* pci.ids: Reorganized the pci.ids file. Subsystems are listed
896d4798a32SMartin Mares	under devices, classes can optionally contain prog-if information.
897d4798a32SMartin Mares	New ID's, as usually.
898d4798a32SMartin Mares
899e306e911SMartin MaresWed Sep 22 09:45:24 1999  Martin Mares  <[email protected]>
900e306e911SMartin Mares
901e306e911SMartin Mares	* pci.ids: New ID's. As usually.
902e306e911SMartin Mares
903e306e911SMartin Mares	* lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows
904e306e911SMartin Mares	unless we're vvvery verbose.
905e306e911SMartin Mares
906e306e911SMartin MaresMon Sep 20 11:22:54 1999  Martin Mares  <[email protected]>
907e306e911SMartin Mares
908e306e911SMartin Mares	* lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line.
909e306e911SMartin Mares
910e64a576cSMartin MaresTue Sep 14 09:31:01 1999  Martin Mares  <[email protected]>
911e64a576cSMartin Mares
912e64a576cSMartin Mares	* pci.ids: New ID's. Again.
913e64a576cSMartin Mares
914c36c0862SMartin MaresThu Aug  5 17:45:42 1999  Martin Mares  <[email protected]>
915c36c0862SMartin Mares
916c36c0862SMartin Mares	* lspci.c (show_size): Don't show size if it's zero (usually
917c36c0862SMartin Mares	due to bus-centric mode being enabled).
918c36c0862SMartin Mares
9191ca42433SMartin MaresTue Jul 20 13:25:09 1999  Martin Mares  <[email protected]>
9201ca42433SMartin Mares
921168b4f46SMartin Mares	* lib/pci.h: Types are OS dependent.
922168b4f46SMartin Mares
923168b4f46SMartin Mares	* lib/internal.h: Byte order hacks are OS dependent.
924168b4f46SMartin Mares
925168b4f46SMartin Mares	* lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS.
926168b4f46SMartin Mares
927168b4f46SMartin Mares	* lib/Makefile, lib/access.c: Added fbsd-device target.
928168b4f46SMartin Mares
929168b4f46SMartin Mares	* pci.ids: Added an entry for PLX 9080 bridges with subsystem ID
930168b4f46SMartin Mares	incorrectly set to device ID.
931168b4f46SMartin Mares
932168b4f46SMartin Mares	* README: Added a note that we support FreeBSD.
933168b4f46SMartin Mares
934168b4f46SMartin Mares	* Makefile (PREFIX, ROOT): Set it depending on the OS.
935168b4f46SMartin Mares	(%.8): Grrr, BSD date is not able to convert date formats the same way
936168b4f46SMartin Mares	as GNU date does. Use sed instead.
937168b4f46SMartin Mares	(install): Use `-c' when calling install.
938168b4f46SMartin Mares
939168b4f46SMartin Mares	* lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed
940168b4f46SMartin Mares	by Jari Kirma <[email protected]>.
941168b4f46SMartin Mares
942bc6346dfSMartin Mares	* lib/proc.c: Rewrote the pread/pwrite things once again. Use pread
943bc6346dfSMartin Mares	and pwrite only when we are certain it's safe (i.e., glibc 2.1
944bc6346dfSMartin Mares	on all architectures or any libc on a i386 where we really know
945bc6346dfSMartin Mares	how to use syscalls directly). In all other cases, emulate it
946bc6346dfSMartin Mares	with lseek/read/write.
947bc6346dfSMartin Mares
9481ca42433SMartin Mares	* pci.ids: Some more IDs.
9491ca42433SMartin Mares
9501ca42433SMartin MaresMon Jul 19 14:10:36 1999  Martin Mares  <[email protected]>
9511ca42433SMartin Mares
9521ca42433SMartin Mares	* pci.ids: Added IDs of parallel port controller cards as sent
9531ca42433SMartin Mares	by Tim Waugh <[email protected]>.
9541ca42433SMartin Mares
955e95c8373SMartin MaresWed Jul  7 00:55:48 1999  Martin Mares  <[email protected]>
956e95c8373SMartin Mares
957e95c8373SMartin Mares	* lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS.
958e95c8373SMartin Mares
959e95c8373SMartin Mares	* lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and
960e95c8373SMartin Mares	HAVE_LONG_ADDRESS.
961e95c8373SMartin Mares
962e95c8373SMartin Mares	* lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses
963e95c8373SMartin Mares	are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS
964e95c8373SMartin Mares	to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS
965e95c8373SMartin Mares	and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS
966e95c8373SMartin Mares	on Alpha.
967e95c8373SMartin Mares
968e95c8373SMartin Mares	* lspci.c (show_msi): Added dumping of the MSI capability.
969e95c8373SMartin Mares	(show_slotid): The same for SlotID capability.
970e95c8373SMartin Mares	(show_caps): Seperated capability dumping, because it should
971e95c8373SMartin Mares	be used for both htype0 and htype1. Even PCI 2.2 doesn't mention
972e95c8373SMartin Mares	layout of htype2, so I'm a bit unsure about it wrt capabilities
973e95c8373SMartin Mares	-- they at least have to live somewhere else since address 0x34
974e95c8373SMartin Mares	is already defined differently in htype2.
975e95c8373SMartin Mares
976e95c8373SMartin Mares	* lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2).
977e95c8373SMartin Mares	(PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto.
978e95c8373SMartin Mares	(PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2.
979e95c8373SMartin Mares
980e95c8373SMartin Mares	* lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers
981e95c8373SMartin Mares	(required by the PCI 2.2 specs).
982e95c8373SMartin Mares
983e95c8373SMartin MaresMon Jul  5 12:45:19 1999  Martin Mares  <[email protected]>
984e95c8373SMartin Mares
985e95c8373SMartin Mares	* lspci.c (show_size): Added new function for dumping of region sizes.
986e95c8373SMartin Mares	(show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled
987e95c8373SMartin Mares	ROMs et cetera.
988e95c8373SMartin Mares
989e95c8373SMartin Mares	* lib/pci.h (struct pci_dev): known_fields moved to the public part
990e95c8373SMartin Mares	of the structure.
991e95c8373SMartin Mares
992e95c8373SMartin Mares	* Added support for region sizes. Needs support in the kernel, because
993e95c8373SMartin Mares	sizes have to be scanned before drivers initialize yourself. pci_fill_info()
994e95c8373SMartin Mares	now returns a bitmask of what fields were really read.
995e95c8373SMartin Mares
99682ce97c9SMartin MaresMon Jun 28 18:37:51 1999  Dave Jones    <[email protected]>
99782ce97c9SMartin Mares
99882ce97c9SMartin Mares	* Makefile:
99982ce97c9SMartin Mares	  Added `uninstall' target - removes all traces of pciutils.
100082ce97c9SMartin Mares	* pci.ids:
100182ce97c9SMartin Mares	  - Lots of cleanups in the ATI, S3, Adaptec vendors.
100282ce97c9SMartin Mares	  - Changed Compaq QVision 1280/p definitions, as it's not possible
100382ce97c9SMartin Mares	    to determine the revision from the device ID.
100482ce97c9SMartin Mares	  - Same for the Tseng ET4000.
100582ce97c9SMartin Mares	    The id's said I had a rev C, when it was actually a rev B.
100682ce97c9SMartin Mares	  - Removed some unnecessary strings
100782ce97c9SMartin Mares	    `PCI'. Unless it's an AGP card, it should be obvious that it's PCI.
100882ce97c9SMartin Mares	    `Ethernet card'. This should be determined from config space.
100982ce97c9SMartin Mares	  - Lots of other new vendors & devices
101082ce97c9SMartin Mares	  - Other additional small cleanups.
101182ce97c9SMartin Mares
10127bed2d83SMartin MaresMon Jun 21 22:11:10 1999  Martin Mares  <[email protected]>
10137bed2d83SMartin Mares
10147bed2d83SMartin Mares	* lib/names.c (pci_lookup_name): When device ID lookup
10157bed2d83SMartin Mares	fails, return hexadecimal device ID instead of vendor ID.
10167bed2d83SMartin Mares	Well spotted by Axel Bodemann <[email protected]>,
10177bed2d83SMartin Mares	I've just extended the fix to subsystem ID's.
10187bed2d83SMartin Mares
10195ba3a475SMartin MaresThu Jun 17 19:48:21 1999  Martin Mares  <[email protected]>
10205ba3a475SMartin Mares
10215ba3a475SMartin Mares	* lspci.c (show_agp): Bug fix from Petr Vandrovec
10225ba3a475SMartin Mares	<[email protected]>. The command register was displayed
10235ba3a475SMartin Mares	incorrectly.
10245ba3a475SMartin Mares
10255ba3a475SMartin MaresWed Jun  2 22:42:44 1999  Martin Mares  <[email protected]>
10265ba3a475SMartin Mares
10275ba3a475SMartin Mares	* lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded
10285ba3a475SMartin Mares	numbers if not supplied by the libc.
10295ba3a475SMartin Mares
103055c815b5SMartin MaresWed May 19 13:24:39 1999  Martin Mares  <[email protected]>
103155c815b5SMartin Mares
103255c815b5SMartin Mares	* Released the whole package as version 2.0.
103355c815b5SMartin Mares
103455c815b5SMartin MaresFri May 14 22:42:02 1999  Martin Mares  <[email protected]>
103555c815b5SMartin Mares
103655c815b5SMartin Mares	* pci.ids: Added several new ID's contributed by people
103755c815b5SMartin Mares	on the linux-pci list.
103855c815b5SMartin Mares
1039dec16943SMartin MaresMon Apr 19 15:21:08 1999  Jakub Jelinek  <[email protected]>
1040dec16943SMartin Mares
1041dec16943SMartin Mares	* lspci.c: Display I/O addresses correctly on sparc64.
1042dec16943SMartin Mares	* lib/header.h: Ditto.
1043dec16943SMartin Mares
1044dec16943SMartin Mares	* lib/configure: On sparc set HAVE_64BIT* as well, we want
1045dec16943SMartin Mares	a binary which works on both 32bit and 64bit SPARCs.
1046dec16943SMartin Mares
1047e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999  Martin Mares  <[email protected]>
1048e33c9c7aSMartin Mares
1049e33c9c7aSMartin Mares	* lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob
1050e33c9c7aSMartin Mares	<[email protected]>.
1051e33c9c7aSMartin Mares
1052e33c9c7aSMartin Mares	* pci.ids: A lot of updates from Adam J. Richter <[email protected]>.
1053e33c9c7aSMartin Mares
1054f3395cc5SMartin MaresSun Feb 28 22:26:21 1999  Martin Mares  <[email protected]>
1055f3395cc5SMartin Mares
1056f3395cc5SMartin Mares	* lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged
1057f3395cc5SMartin Mares	as a multi-function device, because several single-function devices
1058f3395cc5SMartin Mares	don't decode the function bits at all.
1059f3395cc5SMartin Mares
1060f3395cc5SMartin MaresSun Feb 14 23:48:22 1999  Martin Mares  <[email protected]>
1061f3395cc5SMartin Mares
1062f3395cc5SMartin Mares	* Makefile (install): Don't use "-o root -g root" for installation
1063f3395cc5SMartin Mares	since it breaks on machines where programs are not installed by root.
1064f3395cc5SMartin Mares	Reported by Richard Gooch <[email protected]>
1065f3395cc5SMartin Mares
1066f3395cc5SMartin MaresTue Feb  9 15:54:39 1999  Martin Mares  <[email protected]>
1067f3395cc5SMartin Mares
1068f3395cc5SMartin Mares	* lspci.c (show_bases): Use new address masking macros and pciaddr_t.
1069f3395cc5SMartin Mares
1070f3395cc5SMartin Mares	* lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit
1071f3395cc5SMartin Mares	or 64-bit depending on CPU.
1072f3395cc5SMartin Mares
1073f3395cc5SMartin Mares	* lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks
1074f3395cc5SMartin Mares	according to bus address width.
1075f3395cc5SMartin Mares
10761c31d620SMartin MaresThu Jan 28 20:54:16 1999  Martin Mares  <[email protected]>
10771c31d620SMartin Mares
10781c31d620SMartin Mares	* Released as 1.99.4.
10791c31d620SMartin Mares
10801c31d620SMartin Mares	* lspci.c: Capability list parser now recognizes both AGP
10811c31d620SMartin Mares	registers and PCI Power Management registers (the latter
10821c31d620SMartin Mares	is mainly guesswork based on DEC/Intel 21153 bridge specs
10831c31d620SMartin Mares	since I don't have the PCI Power Management document).
10841c31d620SMartin Mares
10851c31d620SMartin Mares	* lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-'
10861c31d620SMartin Mares	by FLAG macro.
10871c31d620SMartin Mares
10881c31d620SMartin Mares	* lspci.c: Added bridge checks to bus mapping code.
10891c31d620SMartin Mares
10901812a795SMartin MaresWed Jan 27 14:59:16 1999  Martin Mares  <[email protected]>
10911812a795SMartin Mares
10921812a795SMartin Mares	* lspci.c: Implemented bus mapping mode (-M).
10931812a795SMartin Mares
10941812a795SMartin Mares	* lspci.c (scan_devices): Split to scan_devices() and scan_device().
10951812a795SMartin Mares	(show): Split to show() and show_device().
10961812a795SMartin Mares
10971812a795SMartin Mares	* lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO,
10981812a795SMartin Mares	set it to the real access method afterwards.
10991812a795SMartin Mares
11001812a795SMartin MaresMon Jan 25 23:46:13 1999  Martin Mares  <[email protected]>
11011812a795SMartin Mares
11021812a795SMartin Mares	* lib/generic.c (pci_generic_fill_info): If in buscentric mode,
11031812a795SMartin Mares	don't check PCI_COMMAND for I/O and memory enables.
11041812a795SMartin Mares
1105f6c86928SMartin MaresMon Jan 25 21:28:49 1999  Martin Mares  <[email protected]>
1106f6c86928SMartin Mares
1107f6c86928SMartin Mares	* Makefile: Added target `release' which substitutes new version
1108f6c86928SMartin Mares	number to .spec, .lsm and README. Also rewrote target `dist'.
1109f6c86928SMartin Mares
1110f6c86928SMartin Mares	* Released as 1.99.3.
1111f6c86928SMartin Mares
1112b5137411SMartin MaresSun Jan 24 22:10:36 1999  Martin Mares  <[email protected]>
1113b5137411SMartin Mares
1114d6b297d0SMartin Mares	* lib/header.h: Until kernel adopts new layout of PCI
1115d6b297d0SMartin Mares	includes (i.e., separate declaration of header structure,
1116d6b297d0SMartin Mares	functions and device IDs), which is not going to happen
1117d6b297d0SMartin Mares	before 2.3, we'll use our own definiton of the header.
1118d6b297d0SMartin Mares
1119b5137411SMartin Mares	* lspci.c (show_verbose): Display `Cap' flag in device status.
1120b5137411SMartin Mares
1121b5137411SMartin Mares	* lspci.c (show_htype0): Display capability lists whereever
1122b5137411SMartin Mares	available. The only capability name we recognize now is `AGP'.
1123b5137411SMartin Mares	Unfortunately, capabilities are stored in device-dependent
1124b5137411SMartin Mares	portion of the configuration space and are thus available
1125b5137411SMartin Mares	only to root unless you read a dump.
1126b5137411SMartin Mares
1127b5137411SMartin Mares	* lspci.c (scan_devices): Use cache instead of buffering.
1128b5137411SMartin Mares
1129b5137411SMartin Mares	* lib/buffer.c: Removed (obsoleted by the cache).
1130b5137411SMartin Mares
1131b5137411SMartin Mares	* lib/access.c: Added general caching mechanism.
1132b5137411SMartin Mares
113381ce358dSMartin MaresSat Jan 23 21:30:54 1999  Martin Mares  <[email protected]>
113481ce358dSMartin Mares
113581ce358dSMartin Mares	* pci.ids: Added few devices.
113681ce358dSMartin Mares
1137727ce158SMartin MaresFri Jan 22 19:29:31 1999  Martin Mares  <[email protected]>
1138727ce158SMartin Mares
1139727ce158SMartin Mares	* Version string is now defined in top-level Makefile, exported
1140727ce158SMartin Mares	to the configure script and also substituted to man pages.
1141727ce158SMartin Mares
1142727ce158SMartin Mares	* lspci.c (show_bases): Rewrote displaying of 64-bit addresses.
1143727ce158SMartin Mares	(show_verbose): Rewrote interrupt display logic.
1144727ce158SMartin Mares
1145727ce158SMartin Mares	* lib/i386-ports.c: Include sys/io.h only on glibc systems.
1146727ce158SMartin Mares
1147727ce158SMartin Mares	* lib/configure: Rewrote detection of Linux versions. Now it
1148727ce158SMartin Mares	works on 2.0 kernels (only with direct/dump access, of course).
1149727ce158SMartin Mares
1150727ce158SMartin Mares	* lib/internal.h: New bytesex macros using <asm/byteorder.h>
1151727ce158SMartin Mares	whenever available.
1152727ce158SMartin Mares
1153727ce158SMartin Mares	* lib/proc.c (proc_read, proc_write): Distinguish between short
1154727ce158SMartin Mares	read/write and real errors.
1155727ce158SMartin Mares
1156727ce158SMartin Mares	* lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since
1157727ce158SMartin Mares	libpci respects buscentric mode automatically.
1158727ce158SMartin Mares
1159727ce158SMartin Mares	* lspci.c (show_hex_dump): For CardBus bridges, print out 128
1160727ce158SMartin Mares	bytes of header (the whole standard part).
1161727ce158SMartin Mares
1162727ce158SMartin Mares	* common.c: pcilib options are now all uppercase. Also moved
1163727ce158SMartin Mares	PCI access debugging option here.
1164727ce158SMartin Mares
1165727ce158SMartin Mares	* Released as 1.99.2.
1166727ce158SMartin Mares
1167727ce158SMartin MaresWed Jan 20 22:50:35 1999  Martin Mares  <[email protected]>
1168727ce158SMartin Mares
1169727ce158SMartin Mares	* Wrote configure script and rewrote Makefiles.
1170727ce158SMartin Mares
1171727ce158SMartin Mares	* Removed few unused variables.
1172727ce158SMartin Mares
1173727ce158SMartin MaresWed Jan 20 12:21:56 1999  Martin Mares  <[email protected]>
1174727ce158SMartin Mares
1175727ce158SMartin Mares	* common.c: Moved several functions used in both setpci and lspci
1176727ce158SMartin Mares	here. This includes parsing of libpci-related options.
1177727ce158SMartin Mares
1178727ce158SMartin Mares	* More library tweaks.
1179727ce158SMartin Mares
1180727ce158SMartin Mares	* filter.c, names.c: Moved to library.
1181727ce158SMartin Mares
1182727ce158SMartin Mares	* setpci: Rewritten to use the library.
1183727ce158SMartin Mares
1184727ce158SMartin Mares	* Released as 1.99.1.
1185727ce158SMartin Mares
1186727ce158SMartin MaresTue Jan 19 23:00:12 1999  Martin Mares  <[email protected]>
1187727ce158SMartin Mares
1188727ce158SMartin Mares	* lspci.c (scan_devices): For cardbus bridges, read first 128
1189727ce158SMartin Mares	bytes of config space to get full standard header.
1190727ce158SMartin Mares
1191727ce158SMartin Mares	* Makefile (CFLAGS): Removed "-Wno-unused".
1192727ce158SMartin Mares
1193727ce158SMartin Mares	* Started the "New Generation" branch and introduced the
1194727ce158SMartin Mares	PCI library.
1195727ce158SMartin Mares
1196727ce158SMartin Mares	* lspci: Rewritten to use the library.
1197727ce158SMartin Mares
11986ece6bc6SMartin MaresTue Jan 19 22:24:08 1999  Martin Mares  <[email protected]>
11996ece6bc6SMartin Mares
12006ece6bc6SMartin Mares	* Released as version 1.10.
12016ece6bc6SMartin Mares
12026ece6bc6SMartin MaresMon Jan 18 08:51:17 1999  Martin Mares  <[email protected]>
12036ece6bc6SMartin Mares
12046ece6bc6SMartin Mares	* lspci.8, setpci.8: Miscellaneous fixes as suggested by
12056ece6bc6SMartin Mares	Dag Wieers <[email protected]>.
12066ece6bc6SMartin Mares
12071212dd6dSMartin MaresSun Nov 29 20:05:56 1998  Martin Mares  <[email protected]>
12081212dd6dSMartin Mares
12091212dd6dSMartin Mares	* pciutils.spec (Name): Update from Krzysztof G. Baranowski.
12101212dd6dSMartin Mares
1211d38471fdSMartin MaresSun Nov 22 10:49:56 1998  Martin Mares  <[email protected]>
1212d38471fdSMartin Mares
1213d38471fdSMartin Mares	* Makefile, pciutils.h: Moved pci.ids to /usr/share.
1214d38471fdSMartin Mares
1215d38471fdSMartin Mares	* Released as version 1.09.
1216d38471fdSMartin Mares
1217371f605bSMartin MaresWed Nov 18 15:47:05 1998  Martin Mares  <[email protected]>
1218371f605bSMartin Mares
1219371f605bSMartin Mares	* lspci.c (show_htype1): Fixed displaying of prefetchable memory behind
1220371f605bSMartin Mares	bridge. Thanks to Petr Vandrovec <[email protected]> for bug report.
1221371f605bSMartin Mares
122210be47abSMartin MaresFri Oct 23 18:59:19 1998  Martin Mares  <[email protected]>
122310be47abSMartin Mares
122410be47abSMartin Mares	* setpci.c: Don't include <syscall-list.h> with glibc >= 2.1.
122510be47abSMartin Mares
1226472bd340SMartin MaresMon Oct 19 21:53:30 1998  Martin Mares  <[email protected]>
1227472bd340SMartin Mares
1228472bd340SMartin Mares	* Released as version 1.08.
1229472bd340SMartin Mares
1230472bd340SMartin Mares	* setpci.c: glibc 2.1.x already defines pread() and pwrite().
1231472bd340SMartin Mares
1232472bd340SMartin Mares	* lspci.8: Changed warning about lspci -xxx.
1233472bd340SMartin Mares
1234472bd340SMartin Mares	* lspci.c: Require "-xxx" for full configuration space dump, so that
1235472bd340SMartin Mares	it's impossible to crash the machine by single typo.
1236472bd340SMartin Mares
1237472bd340SMartin Mares	* specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>).
1238472bd340SMartin Mares
1239072c77e5SMartin MaresWed Sep  9 12:03:24 1998  Martin Mares  <[email protected]>
1240072c77e5SMartin Mares
1241072c77e5SMartin Mares	* lspci.c (show_bases): Better displaying of unassigned and
1242072c77e5SMartin Mares	disabled bases. Thanks to Gabriel Paubert <[email protected]>
1243072c77e5SMartin Mares	for an idea.
1244072c77e5SMartin Mares
1245b7554856SMartin MaresWed Sep  2 10:58:01 1998  Martin Mares  <[email protected]>
1246b7554856SMartin Mares
1247b7554856SMartin Mares	* setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC.
1248b7554856SMartin Mares	(thanks to Geert Uytterhoeven for finding this out)
1249b7554856SMartin Mares
1250ce503b7fSMartin MaresFri Jul 17 10:43:30 1998  Martin Mares  <[email protected]>
1251ce503b7fSMartin Mares
1252ce503b7fSMartin Mares	* lspci.c (show_verbose): Print subsystem ID using the new resolver.
1253ce503b7fSMartin Mares	(show_machine): Print subsystem ID.
1254ce503b7fSMartin Mares
1255ce503b7fSMartin Mares	* names.c: New name resolution engine supporting subsystem IDs.
1256ce503b7fSMartin Mares
1257ce503b7fSMartin Mares	* Released as version 1.07.
1258ce503b7fSMartin Mares
125996e4f295SMartin MaresWed Jul 15 15:37:21 1998  Martin Mares  <[email protected]>
126096e4f295SMartin Mares
126196e4f295SMartin Mares	* lspci.c (show_htype2 etc.): Displaying of CardBus headers.
126296e4f295SMartin Mares	(show_bases): Honor the `cnt' argument.
126396e4f295SMartin Mares	(grow_tree): Parse CardBus headers in tree mode as well.
126496e4f295SMartin Mares
126596e4f295SMartin Mares	* pci.h: Updated CardBus header field description. I still don't
126696e4f295SMartin Mares	have the CardBus standard available, but OZ6832 specs contain
126796e4f295SMartin Mares	full description of all header fields supported by the chip.
126896e4f295SMartin Mares
12696ae3650aSMartin MaresTue Jun  9 22:53:59 1998  Martin Mares  <[email protected]>
12706ae3650aSMartin Mares
1271304f9a0bSMartin Mares	* Released as 1.06.
1272304f9a0bSMartin Mares
12736ae3650aSMartin Mares	* names.c (parse_name_list): Killed an unused variable.
12746ae3650aSMartin Mares
12756ae3650aSMartin Mares	* setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1
12766ae3650aSMartin Mares	if they are not defined by glibc (needed for glibc built on older
12776ae3650aSMartin Mares	kernels). Ugly.
12786ae3650aSMartin Mares
12796ae3650aSMartin Mares	* setpci.c (exec_op): Fixed error messages. Thanks, Steve!
12806ae3650aSMartin Mares
12814b88a6b8SMartin MaresMon Jun  8 10:59:22 1998  Martin Mares  <[email protected]>
12824b88a6b8SMartin Mares
12834b88a6b8SMartin Mares	* Released as 1.05.
12844b88a6b8SMartin Mares
12854b88a6b8SMartin Mares	* setpci.c: Problems with pread()/pwrite() with glibc on Alpha
12864b88a6b8SMartin Mares	should be gone. Again thanks to Steve for bug report.
12874b88a6b8SMartin Mares
12884b88a6b8SMartin Mares	* filter.c (filter_parse_slot): Fixed ":x" type filters.
12894b88a6b8SMartin Mares
12904b88a6b8SMartin Mares	* pci.ids: Killed duplicate entry. Thanks to Stephen Williams
12914b88a6b8SMartin Mares	<[email protected]> for reporting this.
12924b88a6b8SMartin Mares
12934b88a6b8SMartin MaresSun Jun  7 19:27:51 1998  Martin Mares  <[email protected]>
12944b88a6b8SMartin Mares
12954b88a6b8SMartin Mares	* lspci.c (main), setpci.c (main): Implemented "--version".
12964b88a6b8SMartin Mares
12974b88a6b8SMartin Mares	* Released as 1.04.
12984b88a6b8SMartin Mares
12994b88a6b8SMartin Mares	* pciutils.h (PCIUTILS_VERSION): Added version string.
13004b88a6b8SMartin Mares
13014b88a6b8SMartin Mares	* filter.c, names.c: Extraneous #include <linux/pci.h> removed.
13024b88a6b8SMartin Mares	Thanks to Geert Uytterhoeven <[email protected]>
13034b88a6b8SMartin Mares	for bug report.
13044b88a6b8SMartin Mares
13059b306998SMartin MaresThu May 28 14:45:58 1998  Martin Mares  <[email protected]>
13069b306998SMartin Mares
13079b306998SMartin Mares	* pci.ids: More updates from Jens Maurer.
13089b306998SMartin Mares
1309b372672fSMartin MaresWed Apr 22 10:00:39 1998  Martin Mares  <[email protected]>
1310b372672fSMartin Mares
1311b372672fSMartin Mares	* pci.ids: Updates from Jens Maurer.
1312b372672fSMartin Mares
1313b2c9b373SMartin MaresSun Apr 19 11:14:25 1998  Martin Mares  <[email protected]>
1314b2c9b373SMartin Mares
1315b372672fSMartin Mares	* Released as 1.03.
1316b372672fSMartin Mares
1317b2c9b373SMartin Mares	* setpci.8: Written.
1318b2c9b373SMartin Mares
1319b2c9b373SMartin Mares	* setpci.c: Finished.
1320b2c9b373SMartin Mares
1321b2c9b373SMartin Mares	* lspci.c: Now able to fetch expansion ROM base from kernel device list
1322b2c9b373SMartin Mares	and print it if not in buscentric mode.
1323b2c9b373SMartin Mares
1324e4842ff3SMartin MaresTue Mar 31 23:11:57 1998  Martin Mares  <[email protected]>
1325e4842ff3SMartin Mares
1326e4842ff3SMartin Mares	* setpci.c: Added.
1327e4842ff3SMartin Mares
1328e4842ff3SMartin MaresSun Mar 22 15:39:08 1998  Martin Mares  <[email protected]>
1329e4842ff3SMartin Mares
1330e4842ff3SMartin Mares	* lspci.8: Updated the documentation.
1331e4842ff3SMartin Mares
1332e4842ff3SMartin Mares	* lspci.c: Modified to use the new filtering mechanism (options -f and -d).
1333e4842ff3SMartin Mares
1334e4842ff3SMartin Mares	* filter.c: Introduced new generic device filter.
1335e4842ff3SMartin Mares
1336008407bdSMartin MaresThu Mar 19 17:03:48 1998  Martin Mares  <[email protected]>
1337008407bdSMartin Mares
1338008407bdSMartin Mares	* lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying
1339008407bdSMartin Mares	of PCI-to-PCI bridges in the tree format.
1340008407bdSMartin Mares
13410a33d0ecSMartin MaresSun Feb 15 10:12:25 1998  Martin Mares  <[email protected]>
13420a33d0ecSMartin Mares
13430a33d0ecSMartin Mares	* lspci.c (show_machine): Added non-verbose mode of machine-readable
13440a33d0ecSMartin Mares	dump.
13450a33d0ecSMartin Mares
13460a33d0ecSMartin Mares	* pci.ids: Updates from Jens Maurer.
13470a33d0ecSMartin Mares
13480a33d0ecSMartin Mares	* Released as version 1.02.
13490a33d0ecSMartin Mares
13500a33d0ecSMartin MaresThu Feb 12 16:53:28 1998  Martin Mares  <[email protected]>
13510a33d0ecSMartin Mares
13520a33d0ecSMartin Mares	* lspci.c: Added a "-m" switch for dumping machine-readable
13530a33d0ecSMartin Mares	configuration data (requested by Bjoern Kriews <[email protected]>).
13540a33d0ecSMartin Mares
1355fb38eee8SMartin MaresMon Feb  9 13:17:43 1998  Martin Mares  <[email protected]>
1356fb38eee8SMartin Mares
1357fb38eee8SMartin Mares	* Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h>
1358fb38eee8SMartin Mares	if available. This should avoid all problems with official kernel
1359fb38eee8SMartin Mares	not synchronized to newer PCI code in CVS -- standard distribution
1360fb38eee8SMartin Mares	of pciutils now contains pci.h from current CVS kernel, pciutils
1361fb38eee8SMartin Mares	in CVS contain no pci.h and use the correct kernel include.
1362fb38eee8SMartin Mares
1363fb38eee8SMartin Mares	* Makefile: Fixed installation path for man pages.
1364fb38eee8SMartin Mares
13652f48f637SMartin MaresSat Feb  7 15:15:46 1998  Martin Mares  <[email protected]>
13662f48f637SMartin Mares
13672f48f637SMartin Mares	* README: Updated.
13682f48f637SMartin Mares
13692f48f637SMartin Mares	* lspci.8: Created a man page.
13702f48f637SMartin Mares
13712f48f637SMartin Mares	* Releasing as version 1.0.
13722f48f637SMartin Mares
13732f48f637SMartin MaresTue Feb  3 20:56:00 1998  Martin Mares  <[email protected]>
13742f48f637SMartin Mares
13752f48f637SMartin Mares	* Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx
13762f48f637SMartin Mares	to all the C sources. This should eliminate problems with 32-bit compilers
13772f48f637SMartin Mares	on sparc64.
13782f48f637SMartin Mares
13792f48f637SMartin Mares	* lspci.c (show_verbose): Recognize CardBus bridge header type.
13802f48f637SMartin Mares	(show_htype2): Stub routine.
13812f48f637SMartin Mares	(scan_config): Write sensible error message if the kernel denies reading of
13822f48f637SMartin Mares	upper part of the PCI config space.
1383