xref: /pciutils/ChangeLog (revision c72eedde)
1bc2eed2dSMartin Mares2006-06-03  Martin Mares  <[email protected]>
2bc2eed2dSMartin Mares
3bc2eed2dSMartin Mares	* lspci.c: Introduced the -nn switch. Thanks to David N. Welton
4bc2eed2dSMartin Mares	for the idea.
5bc2eed2dSMartin Mares
6bc2eed2dSMartin Mares	* lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and
7bc2eed2dSMartin Mares	cleaned up the name selection code.
8bc2eed2dSMartin Mares
9*c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given,
10*c72eeddeSMartin Mares	pci_access->numeric_ids is ignored.
11*c72eeddeSMartin Mares
12*c72eeddeSMartin Mares	* lib/names.c (pci_lookup_name): When class is identified and
13*c72eeddeSMartin Mares	subclass isn't, display class name and subclass number.
14*c72eeddeSMartin Mares
152f294d4bSMartin Mares2006-05-31  Martin Mares  <[email protected]>
162f294d4bSMartin Mares
172f294d4bSMartin Mares	* setpci.c (main): Don't crash when an invalid width is specified.
182f294d4bSMartin Mares
1981afa98cSMartin Mares	* lspci.c, setpci.c, common.c: die() now uses the right program
2081afa98cSMartin Mares	name when printing an error message.
2181afa98cSMartin Mares
220ac282f2SMartin Mares2006-05-19  Martin Mares  <[email protected]>
230ac282f2SMartin Mares
240ac282f2SMartin Mares	* README: Mention the public GIT tree.
250ac282f2SMartin Mares
260ac282f2SMartin Mares	* README: Updated the list of ports.
270ac282f2SMartin Mares
28d1058e9dSMartin Mares2006-05-10  Martin Mares  <[email protected]>
29d1058e9dSMartin Mares
30d1058e9dSMartin Mares	* lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD.
31d1058e9dSMartin Mares	Thanks to Petr Salinger for the patch.
32d1058e9dSMartin Mares
33abf8d505SMartin Mares2006-05-05  Martin Mares  <[email protected]>
34abf8d505SMartin Mares
352ae2d1aeSMartin Mares	* Released as 2.2.3.
362ae2d1aeSMartin Mares
372ae2d1aeSMartin Mares	* lspci.c (scan_device): The -D switch didn't work as intended
382ae2d1aeSMartin Mares	in -m mode.
392ae2d1aeSMartin Mares
402ae2d1aeSMartin Mares2006-05-05  Martin Mares  <[email protected]>
412ae2d1aeSMartin Mares
421d5cf727SMartin Mares	* Released as 2.2.2.
431d5cf727SMartin Mares
448a830168SMartin Mares	* pci.ids: Updated to the current database snapshot.
458a830168SMartin Mares
46b6359063SMartin Mares	* lib/obsd-device.c (and other files in lib/*): Added OpenBSD
47b6359063SMartin Mares	interface by Matthieu Herrb <[email protected]>, based on
48b6359063SMartin Mares	the existing FreeBSD interface.
49b6359063SMartin Mares
50abf8d505SMartin Mares	* Moved pciutils to a GIT repository, which now contains merged
51abf8d505SMartin Mares	history from both CVS and Arch. Good bye, TLA!
52abf8d505SMartin Mares
536ac70402SMartin Mares2006-03-21  Martin Mares  <[email protected]>
546ac70402SMartin Mares
552a124daeSMartin Mares	* lspci.c (show_slot_name): Avoid the previous changes in default
562a124daeSMartin Mares	display of domain name when in machine-readable mode. However, `-D'
572a124daeSMartin Mares	forces domain display even there.
582a124daeSMartin Mares
596ac70402SMartin Mares	* lspci.man: Added a warning on -m being the only format, which is
606ac70402SMartin Mares	guaranteed to be stable between lspci versions.
616ac70402SMartin Mares
621bbdea17SMartin Mares2006-03-13  Martin Mares  <[email protected]>
631bbdea17SMartin Mares
64af61eb25SMartin Mares	* lspci.man: Documented the -D switch.
65af61eb25SMartin Mares
66af61eb25SMartin Mares	* lspci.c (show_slot_name, scan_device): If there are multiple PCI
67af61eb25SMartin Mares	domains or if the `-D' switch is used, show the domain number for
68af61eb25SMartin Mares	all devices.
69af61eb25SMartin Mares
707a61b93cSMartin Mares	* lspci.c (show_verbose): Report cache line size in bytes.
717a61b93cSMartin Mares
721bbdea17SMartin Mares	* update-pciids.sh: Use curl if available. Patch by Matthew Wilcox.
731bbdea17SMartin Mares
740e78ef8aSMartin Mares2006-01-04  Martin Mares  <[email protected]>
750e78ef8aSMartin Mares
760e78ef8aSMartin Mares	* lspci.c (show_express_link): Fixed decoding of link status register.
770e78ef8aSMartin Mares	Thanks to Roland Dreier for his report.
780e78ef8aSMartin Mares
79e6859953SMartin Mares2005-12-12  Martin Mares  <[email protected]>
80e6859953SMartin Mares
81e6859953SMartin Mares	* lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow
82e6859953SMartin Mares	at least read-only access. Patch by Pavel Celeda <[email protected]>.
83e6859953SMartin Mares
84e6859953SMartin Mares	* Makefile: Corrected library path on NetBSD.
85e6859953SMartin Mares
86a99c0d69SMartin Mares2005-11-26  Martin Mares  <[email protected]>
87a99c0d69SMartin Mares
88e4af70c6SMartin Mares	* Released as 2.2.1.
89e4af70c6SMartin Mares
90a99c0d69SMartin Mares	* lspci.c (show_machine): Subsystem vendors were printed incorrectly
91a99c0d69SMartin Mares	in machine-readable modes. Thanks to Pavel Celeda for a bug report.
92a99c0d69SMartin Mares
93f23fd3fcSMartin Mares2005-10-11  Martin Mares  <[email protected]>
94f23fd3fcSMartin Mares
95f23fd3fcSMartin Mares	* lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it.
96f23fd3fcSMartin Mares
9715296723SMartin Mares2005-09-21  Martin Mares  <[email protected]>
9815296723SMartin Mares
9915296723SMartin Mares	* Released as 2.2.0.
10015296723SMartin Mares
10140b6d93fSMartin Mares	* pci.ids: Updated copyright header.
10240b6d93fSMartin Mares
10315296723SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported
10415296723SMartin Mares	64-bit addresses, they are now always supported.
10515296723SMartin Mares
10615296723SMartin Mares	* lspci.c (show_bases): Corrected printing of 64-bit addresses
10715296723SMartin Mares	in bus-centric mode.
10815296723SMartin Mares
10915296723SMartin Mares	* lib/configure: Enable 64-bit addresses on all Linux systems.
11015296723SMartin Mares
11115296723SMartin Mares	* lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they
11215296723SMartin Mares	are shorter.
11315296723SMartin Mares
114224707baSMartin Mares2005-09-11  Martin Mares  <[email protected]>
115224707baSMartin Mares
116224707baSMartin Mares	* Released as 2.1.99-test11.
117224707baSMartin Mares
118224707baSMartin Mares	* lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls.
119224707baSMartin Mares
120aeaca5d3SMartin Mares2005-09-10  Martin Mares  <[email protected]>
121aeaca5d3SMartin Mares
122224707baSMartin Mares	* Released as 2.1.99-test10.
123224707baSMartin Mares
12463e6f2e0SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
12563e6f2e0SMartin Mares
126043ebdeeSMartin Mares	* update-pciids.sh: Changed the default URL for downloading pci.ids
127043ebdeeSMartin Mares	to http://pciids.sourceforge.net/v2.2/pci.ids.
128043ebdeeSMartin Mares
129043ebdeeSMartin Mares	* lib/pci.h (PCI_LIB_VERSION): Added version identifier.
130043ebdeeSMartin Mares
131aeaca5d3SMartin Mares	* lib/names.c: Rewritten the name database module almost from scratch.
132aeaca5d3SMartin Mares	Everything is much cleaner and there are hopefully no more memory leaks;
133aeaca5d3SMartin Mares	pci_lookup_name() now uses varargs in a backward compatible fashion.
134aeaca5d3SMartin Mares	Introduced PCI_LOOKUP_NO_NUMBERS.
135aeaca5d3SMartin Mares
136aeaca5d3SMartin Mares	The new code supports subsystem entries not tied to a specific device.
137aeaca5d3SMartin Mares	I had to extend the format of pci.ids in order to support it, so I have
138aeaca5d3SMartin Mares	extended the idea of the "C" (class) blocks and introduced "S" blocks
139aeaca5d3SMartin Mares	for subsystems. To avoid doing more incompatible changes in the future,
140aeaca5d3SMartin Mares	the parser skips unknown single-letter blocks without reporting errors.
141aeaca5d3SMartin Mares
142121c76c9SMartin Mares2005-08-23  Martin Mares  <[email protected]>
143121c76c9SMartin Mares
14454e13765SMartin Mares	* Released as 2.1.99-test9.
14554e13765SMartin Mares
14654e13765SMartin Mares	* Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent
14754e13765SMartin Mares	gcc versions when optimizing anyway.
14854e13765SMartin Mares
14954e13765SMartin Mares	* Made the path to pci.ids customizable and independent on the SHAREDIR.
15054e13765SMartin Mares	Just override IDSDIR in the top-level Makefile.
15154e13765SMartin Mares
15254e13765SMartin Mares	* pci.ids: Synchronized with the current database snapshot.
15354e13765SMartin Mares
15484d437d6SMartin Mares	* lspci.man, setpci.man: Improved the man pages. Documented all access
15584d437d6SMartin Mares	methods and which operations are privileged.
15684d437d6SMartin Mares
15784d437d6SMartin Mares	* lspci.c: Another rewrite of config register caching, now also including
15884d437d6SMartin Mares	lots of internal checks. It should be now perfectly able to cope with
15984d437d6SMartin Mares	portions of the configuration space being inaccessible, for example
16084d437d6SMartin Mares	due to insufficient access rights.
16184d437d6SMartin Mares
1623b8bf739SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X
1633b8bf739SMartin Mares	capabilities. Includes partial support for PCI-X 2.0 (probably incomplete
1643b8bf739SMartin Mares	as I haven't seen the spec).
1653b8bf739SMartin Mares
1663b8bf739SMartin Mares	* lspci.c: Quell warnings about unused parameters.
1673b8bf739SMartin Mares
16884d437d6SMartin Mares	* lspci.c: Removed C++ comments.
16984d437d6SMartin Mares
1703b8bf739SMartin Mares	* lib/header.h: Merged definitions of extended capabilities and some new
1713b8bf739SMartin Mares	PCI-X capability bits from linux-2.6.11/include/pci.h.
1723b8bf739SMartin Mares
1733b8bf739SMartin Mares	* lspci.c (show_caps): Try to scan extended capabilities only if the
1743b8bf739SMartin Mares	device has either PCI-X or PCI Express capability in its normal capability
1753b8bf739SMartin Mares	list.
1763b8bf739SMartin Mares
177f7821e53SMartin Mares	* lib/dump.c (dump_init): Reading of dumps works again. The dump reader
178f7821e53SMartin Mares	now also remembers how much data it has read and refuses attempts to
179f7821e53SMartin Mares	access more than that.
180ea4e5f5dSMartin Mares
18146ea554dSMartin Mares	* setpci.man, lspci.c, README: prefer spelling "buses" over "busses".
18246ea554dSMartin Mares
1838afaab22SMartin Mares	* lspci.c: If alloca() is not available, use xmalloc(), not malloc().
1848afaab22SMartin Mares
185121c76c9SMartin Mares	* lib/configure: Added x86_64 on Linux.
186121c76c9SMartin Mares
187c1c2c30eSMartin Mares2005-08-22  Martin Mares  <[email protected]>
188c1c2c30eSMartin Mares
189b9ca9147SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters.
190b9ca9147SMartin Mares	Thanks to Matthew Wilcox for bug report.
191b9ca9147SMartin Mares
192c1c2c30eSMartin Mares	* lspci.c: Corrected spelling of "Hz" (it was "hz" at several places).
193b9ca9147SMartin Mares	Thanks to Krzysztof Oledzki for pointing that out.
194c1c2c30eSMartin Mares
19526542a0bSMartin Mares2004-08-19  Martin Mares  <[email protected]>
19626542a0bSMartin Mares
19726542a0bSMartin Mares	* pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism,
19826542a0bSMartin Mares	because pciutils by default install to /usr/sbin. Update.
19926542a0bSMartin Mares
2006aa54f1bSMartin Mares2004-08-13  Martin Mares  <[email protected]>
2016aa54f1bSMartin Mares
202aabb0a92SMartin Mares	* Released as 2.1.99-test8.
203aabb0a92SMartin Mares
204f31412d1SMartin Mares	* lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are
205f31412d1SMartin Mares	no longer exported to the outside world.
206f31412d1SMartin Mares
207ee7d8384SMartin Mares	* README.Windows: Updated.
208ee7d8384SMartin Mares
209ee7d8384SMartin Mares	* maint/release: Substitute version number in win32/config.h.
210ee7d8384SMartin Mares
211ee7d8384SMartin Mares	* win32/config.h: Added.
212ee7d8384SMartin Mares
213ee7d8384SMartin Mares	* lib/sysdep.h (bzero, strcasecmp): are macros on Windows.
214ee7d8384SMartin Mares
215ee7d8384SMartin Mares	* compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU
216ee7d8384SMartin Mares	C library for use on systems where the default libraries lack
217ee7d8384SMartin Mares	proper getopt. Currently used by the Windows port.
218ee7d8384SMartin Mares
219ee7d8384SMartin Mares	* lib/sysdep.h, lib/types.h: Updates of the Windows port from
220ee7d8384SMartin Mares	Alexander Stock.
221ee7d8384SMartin Mares
222489233b4SMartin Mares	* lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define
223489233b4SMartin Mares	its own u8, u16, u32, byte and word types and uses what the user
224489233b4SMartin Mares	has supplied instead. With this change, all namespace clashes should
225489233b4SMartin Mares	be gone.
226489233b4SMartin Mares
227489233b4SMartin Mares	* Makefile, lib/Makefile: Updated dependencies.
228489233b4SMartin Mares
229489233b4SMartin Mares	* pciutils.h: Include lib/sysdep.h and move NONRET et al. there.
230489233b4SMartin Mares
231489233b4SMartin Mares	* lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because
232489233b4SMartin Mares	it is included unconditionally in lib/types.h.
233489233b4SMartin Mares
234489233b4SMartin Mares	* Moved system-dependent stuff from lib/internal.h to lib/sysdep.h,
235489233b4SMartin Mares	which is also used by the utilities. Also moved type declarations
236489233b4SMartin Mares	from lib/pci.h to lib/types.h.
237489233b4SMartin Mares
238489233b4SMartin Mares	* All files: Prepend a "PCI_" prefix in front of all configuration
239489233b4SMartin Mares	defines to avoid namespace clashes. CAVEAT: If there is any libpci
240489233b4SMartin Mares	application using the (undocumented) defines, it has to be updated.
241489233b4SMartin Mares
242489233b4SMartin Mares	* lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing
243489233b4SMartin Mares	headers with the kernel a couple of years ago.
244489233b4SMartin Mares
2459bb4b4eaSMartin Mares	* lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6.
2469bb4b4eaSMartin Mares
2476aa54f1bSMartin Mares	* lspci.c (show_rom): Use the same logic for printing disabled
2486aa54f1bSMartin Mares	or unassigned ROM's as we do in show_bases() for the other BAR's.
2496aa54f1bSMartin Mares
2506aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Better reaction to
2516aa54f1bSMartin Mares	invalid 64-bit addresses. Also d->hdrtype should not include
2526aa54f1bSMartin Mares	bit 7, which caused mysterious errors on multi-function devices.
2536aa54f1bSMartin Mares
2546aa54f1bSMartin Mares	* lib/generic.c (pci_generic_fill_info): Fill in base addresses
2556aa54f1bSMartin Mares	even if the regions are known to be disabled. It is the client's
2566aa54f1bSMartin Mares	job to interpret them. (And it is not a trivial job if you want
2576aa54f1bSMartin Mares	to do it correctly, since you need to check I/O and memory enables
2586aa54f1bSMartin Mares	on all upstream bridges, too.) However, it could be interesting to
2596aa54f1bSMartin Mares	introduce functions for interpreting the addresses and even for
2606aa54f1bSMartin Mares	mapping the regions and doing I/O on them.
2616aa54f1bSMartin Mares
26280e6c636SMartin Mares2004-07-30  Martin Mares  <[email protected]>
26380e6c636SMartin Mares
26480e6c636SMartin Mares	* lspci.c: HyperTransport improvements from Maciej.
26580e6c636SMartin Mares
266d6324891SMartin Mares2004-07-11  Martin Mares  <[email protected]>
267d6324891SMartin Mares
268d6324891SMartin Mares	* lib/sysfs.c (sysfs_get_resources): Arguments now correspond
269d6324891SMartin Mares	to the format string. [Patch by Bill Nottingham]
270d6324891SMartin Mares
271ec25b52dSMartin Mares2004-07-05  Martin Mares  <[email protected]>
272ec25b52dSMartin Mares
273362be683SMartin Mares	* Released as 2.1.99-test7.
274362be683SMartin Mares
275ec25b52dSMartin Mares	* lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but
276ec25b52dSMartin Mares	ended up with rewriting the fetching mechanism to be fully dynamic,
277ec25b52dSMartin Mares	but avoid reading config space registers not explicitly requested.
278ec25b52dSMartin Mares
279ec25b52dSMartin Mares2004-06-29  Matthew Wilcox <[email protected]>
280ec25b52dSMartin Mares
281ec25b52dSMartin Mares	* lspci.c: More work on PCI Express dumping.
282ec25b52dSMartin Mares
283ec25b52dSMartin Mares	* lib/header.h: Updated PCI Express capability definitions.
284ec25b52dSMartin Mares
285ec25b52dSMartin Mares	* lib/proc.c (proc_read): Removed bogus warning.
286ec25b52dSMartin Mares
287ec25b52dSMartin Mares	* common.c (xrealloc): Introduced.
288ec25b52dSMartin Mares
289ec25b52dSMartin Mares	* lspci.man: Added -xxxx.
290ec25b52dSMartin Mares
29109817437SMartin Mares2004-06-27  Martin Mares  <[email protected]>
29209817437SMartin Mares
293d1fa27ebSMartin Mares	* Released as 2.1.99-test6.
294d1fa27ebSMartin Mares
2954d67aa89SMartin Mares	* lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap.
2964d67aa89SMartin Mares	Patch by Roland Dreier <[email protected]>, cleaned up by me.
2974d67aa89SMartin Mares
2984d67aa89SMartin Mares	* lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch()
2994d67aa89SMartin Mares	failures.
3004d67aa89SMartin Mares
3014d67aa89SMartin Mares	* lib/header.h: Added PCI Express extended capabilities. Again by Matthew.
3024d67aa89SMartin Mares
3034d67aa89SMartin Mares	* lspci.c (show_express): Added dumping of PCI Express cap.
3044d67aa89SMartin Mares	Patch by Matthew Wilcox.
3054d67aa89SMartin Mares
3064d67aa89SMartin Mares	* lib/header.h: Added a list of PCI 3.0 capabilities and also details
3074d67aa89SMartin Mares	on PCI Express caps. Patch by Matthew Wilcox <[email protected]>.
3084d67aa89SMartin Mares
30909817437SMartin Mares	* lspci.c (check_root): Gone. No explicit checks for root are needed,
31009817437SMartin Mares	report correct errors reported by the libpci instead.
31109817437SMartin Mares
31209817437SMartin Mares	* lspci.c: Added dumping of the extended config space on "-xxxx".
31309817437SMartin Mares	Better caching of config registers.
31409817437SMartin Mares
31509817437SMartin Mares	* setpci.c (main): Allow access to whole 4096 bytes of the config space.
31609817437SMartin Mares
31709817437SMartin Mares	* lib/sysfs.c, lib/proc.c: Don't print error messages on short reads,
31809817437SMartin Mares	just return the appropriate error code.
31909817437SMartin Mares
32009817437SMartin Mares	* lib: Added support for extended (4096-byte) configuration space,
32109817437SMartin Mares	currently implemented only in Linux proc and sysfs access methods
32209817437SMartin Mares	and of course in the dump reader.
32309817437SMartin Mares
3240d656226SMartin Mares2004-05-29  Martin Mares  <[email protected]>
3250d656226SMartin Mares
326c0eece92SMartin Mares	* Released as 2.1.99-test5.
327c0eece92SMartin Mares
328a2413560SMartin Mares	* lib/pci.h: Windows don't have the standard u_int* types.
329a2413560SMartin Mares
330a2413560SMartin Mares	* lib/internal.h: <sys/param.h> required on Windows for endianity
331a2413560SMartin Mares	macros.
332a2413560SMartin Mares
333a2413560SMartin Mares	* lib/i386-ports.c: Connected i386-io-windows.h.
334a2413560SMartin Mares
335a2413560SMartin Mares	* lspci.c (check_root): geteuid() is not available on Windows.
336a2413560SMartin Mares
337a2413560SMartin Mares	* lib/i386-io-windows.h: Added Windows port contributed by Alexander
338a2413560SMartin Mares	Stock <[email protected]>.
339a2413560SMartin Mares
340a2413560SMartin Mares	* lib/configure: Hopefully fixed SunOS port broken by various
341a2413560SMartin Mares	changes to the configure script.
342a2413560SMartin Mares
3430d656226SMartin Mares	* Makefile, lib/configure: Cross-compilation support, patch by Maciej.
3440d656226SMartin Mares
345138c0385SMartin Mares2004-05-28  Martin Mares  <[email protected]>
346138c0385SMartin Mares
3479f490382SMartin Mares	* Released as 2.1.99-test4.
3489f490382SMartin Mares
349cce2caacSMartin Mares	* lspci.c (show_verbose): Header type 1 is probably legal for all
350cce2caacSMartin Mares	types of bridges, not only for PCI-to-PCI bridges.
351cce2caacSMartin Mares
352b569ef09SMartin Mares	* lspci.c (format_agp_rate): Write "x16", not "x@".
353b569ef09SMartin Mares	(show_agp): rate[] could overflow.
354b569ef09SMartin Mares	Bugs reported by Jakub Bogusz <[email protected]>.
355b569ef09SMartin Mares
356bfc4fe7aSMartin Mares	* lspci.c (show_ht_*): Show HyperTransport capability with all its
357bfc4fe7aSMartin Mares	details. Once again code by Maciej simplified (i.e., possibly broken)
358bfc4fe7aSMartin Mares	by me.
359bfc4fe7aSMartin Mares
360bfc4fe7aSMartin Mares	* lib/header.h: Added declarations of HyperTransport capability.
361bfc4fe7aSMartin Mares	Again thanks to Maciej.
362bfc4fe7aSMartin Mares
363138c0385SMartin Mares	* lspci.c: Decode all bits of the secondary status word in type 1 headers.
364138c0385SMartin Mares	Thanks to Maciej W. Rozycki <[email protected]> for the patch.
365138c0385SMartin Mares
3668fc75dbcSMartin Mares2003-12-27  Martin Mares  <[email protected]>
3678fc75dbcSMartin Mares
36881abd2a7SMartin Mares	* Released as 2.1.99-test3.
36981abd2a7SMartin Mares
3701f7c91ccSMartin Mares	* lspci.man, setpci.man: Document domains and correct spelling.
3711f7c91ccSMartin Mares
3721f7c91ccSMartin Mares	* lib/dump.c (dump_init): Added ability to read domain numbers.
3731f7c91ccSMartin Mares
37484c8d1bbSMartin Mares	* lspci.c: Devices in domains different from 0 have their slot number
3751f7c91ccSMartin Mares	printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains
3761f7c91ccSMartin Mares	as well.
37784c8d1bbSMartin Mares
37884c8d1bbSMartin Mares	* lib/filter.c: Slot filters understand domains.
37984c8d1bbSMartin Mares
38084c8d1bbSMartin Mares	* lib/generic.c: Mention the domain in slot numbers in all error messages.
38184c8d1bbSMartin Mares
38284c8d1bbSMartin Mares	* lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong.
38384c8d1bbSMartin Mares
38484c8d1bbSMartin Mares	* lib/access.c (pci_get_dev): Added support for domains.
38584c8d1bbSMartin Mares
38684c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config
38784c8d1bbSMartin Mares	registers (or to be precise, leave it for the generic parts of the pcilib
38884c8d1bbSMartin Mares	to do so) instead of reading them from the sysfs. It's faster this way.
38984c8d1bbSMartin Mares
39084c8d1bbSMartin Mares	* lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal
39184c8d1bbSMartin Mares	variable. Better read it from the config registers (it's cached anyway).
39284c8d1bbSMartin Mares
39384c8d1bbSMartin Mares	* lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype.
39484c8d1bbSMartin Mares	  lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it.
39584c8d1bbSMartin Mares	  Saves lots of unnecessary file accesses.
39684c8d1bbSMartin Mares
39711f7b31bSMartin Mares	* lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter
39811f7b31bSMartin Mares	is not supported by all C libraries.
39911f7b31bSMartin Mares
40011f7b31bSMartin Mares	* Makefile: Always enter the lib directory (remember that we don't have
40111f7b31bSMartin Mares	full dependecies for the library in the top-level Makefile; hmmm, another
40211f7b31bSMartin Mares	thing to rewrite some day).
40311f7b31bSMartin Mares
40411f7b31bSMartin Mares	* lib/sysfs.c: Added Linux sysfs access method based on the patch
40511f7b31bSMartin Mares	written by Matthew Wilcox <[email protected]>.
40611f7b31bSMartin Mares
40711f7b31bSMartin Mares	* lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc".
40811f7b31bSMartin Mares
40911f7b31bSMartin Mares	* lib/pread.h: The hacks to support pread on various versions
41011f7b31bSMartin Mares	of Linux libc moved there.
41111f7b31bSMartin Mares
41211f7b31bSMartin Mares	* lib/proc.c (proc_setup): The return value of snprintf() varies
41311f7b31bSMartin Mares	between glibc versions, so we need to check both for a negative
41411f7b31bSMartin Mares	values and for too large values.
41511f7b31bSMartin Mares
4164284af58SMartin Mares	* Removed last few references to the "Linux PCI Utilities", the
4174284af58SMartin Mares	package is pretty cross-platform now :)
4184284af58SMartin Mares
4194284af58SMartin Mares2003-12-27  Martin Mares  <[email protected]>
4204284af58SMartin Mares
421ab12277eSMartin Mares	* Released as 2.1.99-test2.
422ab12277eSMartin Mares
423ab12277eSMartin Mares	* README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the
424ab12277eSMartin Mares	release scripts insert the current version. "make release" is gone.
425ab12277eSMartin Mares
426ab12277eSMartin Mares	* maint/release, maint/release.pm: Added a new system of scripts for
427ab12277eSMartin Mares	making releases including inter-version diffs etc.
428ab12277eSMartin Mares
429ab12277eSMartin Mares	* Makefile: Cleaned up.
430ab12277eSMartin Mares
431ab12277eSMartin Mares	* lib/fbsd-device.c: I patched another copy of this file by mistake,
432ab12277eSMartin Mares	this time the version checks should be right.
433ab12277eSMartin Mares
434ab12277eSMartin Mares2003-12-27  Martin Mares  <[email protected]>
435ab12277eSMartin Mares
4366d722cd6SMartin Mares	* Released as 2.1.99-test1.
4376d722cd6SMartin Mares
438dd33246aSMartin Mares	* pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h:
439dd33246aSMartin Mares	Remove shadows of the syscall access method which was never
440dd33246aSMartin Mares	implemented.
441dd33246aSMartin Mares
44280b3121aSMartin Mares	* update-pciids.sh: Try to preserve permissions of the old file
44380b3121aSMartin Mares	if chmod supports --reference. Should close Debian Bug #223740.
44480b3121aSMartin Mares
4456aea909aSMartin Mares	* lib/proc.c (proc_setup): Increased path name length limit to 1024.
4466aea909aSMartin Mares	Thanks for Redhat and Mandrake for inspiration.
4476aea909aSMartin Mares
4486aea909aSMartin Mares	* lib/configure: Recognize ppc and ppc64, both have 64-bit addresses.
4496aea909aSMartin Mares	Grabbed from Redhat (Fedora) patches.
4506aea909aSMartin Mares
4516aea909aSMartin Mares2003-12-27  Martin Mares  <[email protected]>
4526aea909aSMartin Mares
453f701ff47SMartin Mares	Merged bug fixes from Debian patches:
454f701ff47SMartin Mares
455f701ff47SMartin Mares	* lspci.c (show_verbose): "Cache Line Size" should be capitalized.
456f701ff47SMartin Mares
457f701ff47SMartin Mares	* lspci.c (show_pcix_nobridge): Added a missing newline.
458f701ff47SMartin Mares
4592240db8cSMartin Mares	* lib/proc.c (proc_scan): When reading the header type, don't
4602240db8cSMartin Mares	forget to clear the topmost bit indicating that the device has
461f701ff47SMartin Mares	multiple functions.
4622240db8cSMartin Mares
4632240db8cSMartin Mares2003-12-27  Martin Mares  <[email protected]>
4642240db8cSMartin Mares
46545902995SMartin Mares	Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]>
46645902995SMartin Mares	for the patches:
46745902995SMartin Mares
46845902995SMartin Mares	* lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined.
46945902995SMartin Mares	* lib/fbsd-device.c: Select the right set of system includes according
47045902995SMartin Mares	to __FreeBSD_version.
47145902995SMartin Mares
47245902995SMartin Mares2003-12-27  Martin Mares  <[email protected]>
47345902995SMartin Mares
4748fc75dbcSMartin Mares	Merged support for Solaris on i386 by Bill Moore <[email protected]>
4758fc75dbcSMartin Mares	and cleaned up:
4768fc75dbcSMartin Mares
4778fc75dbcSMartin Mares	* lib/configure: Recognize SunOS.
4788fc75dbcSMartin Mares	* lib/internal.h: Learn how to recognize byte order on SunOS.
4798fc75dbcSMartin Mares	* lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c.
4808fc75dbcSMartin Mares	* lib/i386-io-linux.h: Linux specific part.
4818fc75dbcSMartin Mares	* lib/i386-io-hurd.h: GNU/Hurd specific part.
4828fc75dbcSMartin Mares	* lib/i386-io-sunos.h: SunOS specific part.
4838fc75dbcSMartin Mares
4849739916eSMartin Mares2003-12-26  Martin Mares  <[email protected]>
4859739916eSMartin Mares
4869739916eSMartin Mares	* lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly.
4879739916eSMartin Mares
4889739916eSMartin Mares	* lib/pci.h: Types declared in <sys/types.h> should be usable on all
4899739916eSMartin Mares	platforms we currently support, so kill the forest of #ifdef's and
4909739916eSMartin Mares	use them in all cases.
4919739916eSMartin Mares
4929739916eSMartin Mares	* lib/pci.h: Use ULONG_MASK to decide whether we should use long
4939739916eSMartin Mares	or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS.
4949739916eSMartin Mares	Define format strings for addresses, port numbers and IRQ numbers
4959739916eSMartin Mares	directly in pci.h.
4969739916eSMartin Mares
4979739916eSMartin Mares	* lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses.
4989739916eSMartin Mares
49980459c65SMartin Mares2003-12-26  Marco Gerards  <[email protected]>
50080459c65SMartin Mares
50180459c65SMartin Mares	Added support for the GNU Hurd (cleaned up by Martin Mares):
50280459c65SMartin Mares
50380459c65SMartin Mares	* lib/configure [GNU]: Use the i386 ports for configuration access.
50480459c65SMartin Mares	* lib/i386-ports.c: Don't call iopl() on the Hurd.
50580459c65SMartin Mares	* lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining
50680459c65SMartin Mares	u8 to u32.
50780459c65SMartin Mares
508a85769a8SMartin Mares2003-12-26  Martin Mares  <[email protected]>
509a85769a8SMartin Mares
5107dacd9c8SMartin Mares	* lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call
5117dacd9c8SMartin Mares	config_fetch() to ensure that the registers have been read. Thanks to
5127dacd9c8SMartin Mares	Bill Wood <[email protected]> for the patch.
5137dacd9c8SMartin Mares
5147dacd9c8SMartin Mares	* lspci.c: Ensure that failure of config_fetch() is handled correctly
5157dacd9c8SMartin Mares	at all places.
5167dacd9c8SMartin Mares
5174063c31cSMartin Mares	* lspci.man: There was one more explicit reference to /usr/share/pci.ids.
5184063c31cSMartin Mares	Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>.
5194063c31cSMartin Mares
5203fe8a38dSMartin Mares	* setpci.c (main): Better error messages.
5213fe8a38dSMartin Mares
5225f5b1a7bSMartin Mares	* setpci.c (ex_op): The demo mode should disable only writing, not reading.
5235f5b1a7bSMartin Mares
5245f5b1a7bSMartin Mares	* setpci.man: The documentation was inconsistent on what should -D do.
5255f5b1a7bSMartin Mares	Document the new behaviour.
526b251f40bSMartin Mares
52791e37a49SMartin Mares	* pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating
52891e37a49SMartin Mares	the GCC specific __attribute__((noreturn)) and killed the hack with
52991e37a49SMartin Mares	redefining __attribute__ on non-GCC compilers.
53091e37a49SMartin Mares
5314afd29d3SMartin Mares	* Makefile: Added missing dependencies. Parallel builds work now.
5324afd29d3SMartin Mares	Problem reported by Andreas Haumer <[email protected]>, but I chose
5334afd29d3SMartin Mares	a different fix.
5344afd29d3SMartin Mares
535b0f1a03bSMartin Mares	* Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell
536b0f1a03bSMartin Mares	command every time $(MANDIR) is referenced.
537b0f1a03bSMartin Mares
538b7fd8e19SMartin Mares	* lspci.c (main): The error message for `lspci -s' incorrectly mentioned
539b7fd8e19SMartin Mares	a `-f' switch. Reported by Steve Finney <[email protected]>.
540b7fd8e19SMartin Mares
54105bb10a2SMartin Mares	* lib/generic.c: Removed memory leak in pci_generic_bus_scan().
54205bb10a2SMartin Mares	Reported by Gary Parnes <[email protected]>.
54305bb10a2SMartin Mares
544a832f6f1SMartin Mares	* Replaced obsolete syntax of __attribute__((unused)) in the middle of
545a832f6f1SMartin Mares	parameter declarations (which is no longer supported by GCC 3.1) by the
546a832f6f1SMartin Mares	current syntax (attribute at the end). Thanks to [email protected]
547a832f6f1SMartin Mares	for reporting this problem.
548a832f6f1SMartin Mares
549a85769a8SMartin Mares	* Removed CVS $Id$ tags from all files.
550a85769a8SMartin Mares
551a85769a8SMartin Mares	* Makefile: Added some more warnings.
552a85769a8SMartin Mares
553b7351143SMartin Mares	* setpci.c: Cleaned up mask/value code.
554b7351143SMartin Mares
555b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]>
556b7351143SMartin Mares
557b7351143SMartin Mares	* setpci.c: Individual bits to be set can be specified as <value>:<mask>.
558b7351143SMartin Mares
5592a5d5cf9SMartin Mares2003-11-29  Martin Mares  <[email protected]>
5602a5d5cf9SMartin Mares
5612a5d5cf9SMartin Mares	* Imported the pciutils sources to my Arch repository. Good-bye, CVS.
5622a5d5cf9SMartin Mares
563d772ef15SMartin Mares2003-01-04  Martin Mares  <[email protected]>
564d772ef15SMartin Mares
5651b95f396SMartin Mares	* Released as 2.1.11.
5661b95f396SMartin Mares
567c83293ebSMartin Mares	* Makefile: Changed configuration of installation directories --
568c83293ebSMartin Mares	all paths are now set at the top of the Makefile instead of being
569c83293ebSMartin Mares	scattered between the installation rules. The default installation
570c83293ebSMartin Mares	now goes always to /usr/local regardless of the OS as most distributions
571c83293ebSMartin Mares	already contain some version of pciutils and we don't want custom
572c83293ebSMartin Mares	installations to interfere with the default ones.
573c83293ebSMartin Mares
574c83293ebSMartin Mares	* Makefile: Removed a couple of ancient install hacks: we no longer
575c83293ebSMartin Mares	try to avoid overwriting a newer pci.ids file (users are now expected
576c83293ebSMartin Mares	to use update-ids) and we don't try to remove /etc/pci.ids (a long time
577c83293ebSMartin Mares	has passed since the last version which used it).
578c83293ebSMartin Mares
579e2875dcdSMartin Mares	* Makefile: Paths to pci.ids in man pages automatically get the right path.
580e2875dcdSMartin Mares
5811b95f396SMartin Mares	* Added the update-ids utility.
5820138a2a7SMartin Mares
583d772ef15SMartin Mares	* lib: Removed partially implemented "syscall" access method which will
584d772ef15SMartin Mares	probably never be needed.
585d772ef15SMartin Mares
586eb620239SMartin Mares2002-12-27  Martin Mares  <[email protected]>
587eb620239SMartin Mares
588130090bdSMartin Mares	* lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe.
589130090bdSMartin Mares
590eb620239SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Added work-around for devices with
591eb620239SMartin Mares	discontiguous numbering of functions. This is already present in the Linux
592eb620239SMartin Mares	kernel for several years, but I forgot to update pciutils as well.
593eb620239SMartin Mares
594848b4347SMartin Mares2002-12-26  Martin Mares  <[email protected]>
595848b4347SMartin Mares
596579b19ffSMartin Mares	* lib/header.h, lspci.c: Dump AGP3 flags and speeds.
597579b19ffSMartin Mares
598579b19ffSMartin Mares	* lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header,
599579b19ffSMartin Mares	there is no reason to prefer the kernel version.
600579b19ffSMartin Mares
601579b19ffSMartin Mares	* lib/proc.c (proc_scan): Don't forget to initialize hdrtype.
602579b19ffSMartin Mares
603848b4347SMartin Mares	* Added preliminary version of NetBSD support by Quentin Garnier
604848b4347SMartin Mares	<[email protected]>.
605848b4347SMartin Mares
606f0952474SMartin Mares2002-04-06  Martin Mares  <[email protected]>
607f0952474SMartin Mares
608f0952474SMartin Mares	* lspci.c: Mention "-xxx" in the help.
609f0952474SMartin Mares
610d2f666f1SMartin Mares2002-03-30  Martin Mares  <[email protected]>
611d2f666f1SMartin Mares
6129bd44bb0SMartin Mares	* Released as 2.1.10.
6139bd44bb0SMartin Mares
614a33d0eb7SMartin Mares	* Removed pci.ids from the CVS as they are now maintained separately.
615a33d0eb7SMartin Mares	They are still included in the tarball, but if you are building	pciutils
616a33d0eb7SMartin Mares	from CVS sources or you want to get a newer ID file than the one distributed,
617a33d0eb7SMartin Mares	just use "make update-ids" to download the most recent snapshot from
618a33d0eb7SMartin Mares	pciids.sf.net.
619a33d0eb7SMartin Mares
620a33d0eb7SMartin Mares	* Makefile, README: Updated accordingly.
621a33d0eb7SMartin Mares
622a33d0eb7SMartin Mares	* Makefile: Added a couple of maintenance targets.
623a33d0eb7SMartin Mares
624a33d0eb7SMartin Mares	* maint/*: Maintainer's utilities now reside here (present only in CVS,
625a33d0eb7SMartin Mares	not in the tarball).
626a33d0eb7SMartin Mares
627d2f666f1SMartin Mares	* lib/names.c (parse_name_list): End-of-line comments are no longer
628d2f666f1SMartin Mares	supported. Hashes are now perfectly valid in all names and they start
629d2f666f1SMartin Mares	a comment only at the start of the line.
630d2f666f1SMartin Mares
631ee551b73SMartin Mares2002-03-26  Martin Mares  <[email protected]>
632ee551b73SMartin Mares
63307159913SMartin Mares	* README: Rewritten.
63407159913SMartin Mares
635ee551b73SMartin Mares	* Makefile: When the currently installed pci.ids file is newer than
636ee551b73SMartin Mares	the version to be installed, don't overwrite it. Suggested by
637ee551b73SMartin Mares	Jean Delvare <[email protected]>.
638ee551b73SMartin Mares
639bc7b1d62SMartin Mares2002-03-24  Martin Mares  <[email protected]>
640bc7b1d62SMartin Mares
6415f5e6f64SMartin Mares	* lspci.c (show_pcix_bridge): Added PCI-X capability display.
6425f5e6f64SMartin Mares	Contributed by Jeff Garzik <[email protected]>.
6435f5e6f64SMartin Mares
6445f5e6f64SMartin Mares	* lib/header.h: Added PCI-X stuff. Again by Jeff.
6455f5e6f64SMartin Mares
6465f5e6f64SMartin Mares	* Makefile (CFLAGS): -Werror is gone.
6475f5e6f64SMartin Mares
648a1052f16SMartin Mares	* lspci.c (format_agp_rate): Fixed AGP rate reporting.
649a1052f16SMartin Mares
650bc7b1d62SMartin Mares	* lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and
651bc7b1d62SMartin Mares	function 7.
652bc7b1d62SMartin Mares
653bc7b1d62SMartin Mares	* lib/names.c (pci_lookup_name): When printing unknown subsystem vendor
654bc7b1d62SMartin Mares	or device hexadecimally, don't confuse it with chip vendor/device ID.
655bc7b1d62SMartin Mares	First reported by Marc Boucher <[email protected]>.
656bc7b1d62SMartin Mares
657f793990cSMartin Mares2001-11-04  Martin Mares  <[email protected]>
658f793990cSMartin Mares
659ee551b73SMartin Mares	* Released as 2.1.9.
660ee551b73SMartin Mares
661f793990cSMartin Mares	* pci.ids: Synced with the PCI ID Repository at SourceForge
662f793990cSMartin Mares	(http://pciids.sourceforge.net/).
663f793990cSMartin Mares
6641d174e56SMartin Mares2000-08-25  Martin Mares  <[email protected]>
6651d174e56SMartin Mares
6661d174e56SMartin Mares	* pci.ids: Updated ID's, synced with kernel 2.4.0-test7.
6671d174e56SMartin Mares
66865b4327eSMartin Mares2000-06-13  Martin Mares  <[email protected]>
66965b4327eSMartin Mares
67065b4327eSMartin Mares	* Makefile (uninstall): Fixed.
67165b4327eSMartin Mares
67265b4327eSMartin Mares	* pci.ids: ID updates.
67365b4327eSMartin Mares
6744a219d5fSMartin Mares2000-05-20  Martin Mares  <[email protected]>
6754a219d5fSMartin Mares
6764a219d5fSMartin Mares	* Released as 2.1.8.
6774a219d5fSMartin Mares
6784a219d5fSMartin Mares	* pci.ids: ID updates.
6794a219d5fSMartin Mares
6804a219d5fSMartin Mares	* lspci.c (show_verbose): Min/max latency is now printed in nanoseconds.
6814a219d5fSMartin Mares
6824a219d5fSMartin Mares2000-05-04  Martin Mares  <[email protected]>
6834a219d5fSMartin Mares
6844a219d5fSMartin Mares	* lspci.c (show_verbose): If the header type doesn't match device
6854a219d5fSMartin Mares	class, just print a warning and still use the header type, assuming
6864a219d5fSMartin Mares	bogus class info.
6874a219d5fSMartin Mares
68810c90662SMartin Mares2000-05-01  Martin Mares  <[email protected]>
68910c90662SMartin Mares
69072b9b690SMartin Mares	* lspci.c (show_pm): Updated according to PCI PM specs 1.1.
69172b9b690SMartin Mares
69210c90662SMartin Mares	* pci.ids: Updated Contemporary Control ARCnet card entries.
69310c90662SMartin Mares
69410c90662SMartin Mares	* pci.ids: Synchronized class list with latest PCI SIG documents.
69510c90662SMartin Mares
696a239ade6SMartin Mares2000-04-29  Martin Mares  <[email protected]>
697a239ade6SMartin Mares
698a239ade6SMartin Mares	* lib/names.c (pci_lookup_name): Fixed the cheat.
699a239ade6SMartin Mares
700a239ade6SMartin Mares	* lib/internal.h: Moved UNUSED/inline hacks above all other declarations.
701a239ade6SMartin Mares
702a239ade6SMartin Mares	* pci.ids: Various ID updates.
703a239ade6SMartin Mares
7042c83b860SMartin Mares2000-04-21  Martin Mares  <[email protected]>
7052c83b860SMartin Mares
7062c83b860SMartin Mares	* Released as 2.1.7.
7072c83b860SMartin Mares
7082c83b860SMartin Mares	* pciutils.spec: Added German description.
7092c83b860SMartin Mares
7102c83b860SMartin Mares	* lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's
7112c83b860SMartin Mares	are the same as device ID and just output subsystem name according to
7122c83b860SMartin Mares	device name.
7132c83b860SMartin Mares
7142c83b860SMartin Mares	* lib/proc.c: Use UNUSED instead of __attribute__((unused)).
7152c83b860SMartin Mares
7162c83b860SMartin Mares	* lib/pci.h: Added the correct typedefs for AIX.
7172c83b860SMartin Mares
7182c83b860SMartin Mares	* lib/generic.c (pci_generic_scan_bus): Export.
7192c83b860SMartin Mares
7202c83b860SMartin Mares	* lib/configure: Detect AIX. Use "echo '...\c'" instead of
7212c83b860SMartin Mares	"echo -n" if the shell isn't bash.
7222c83b860SMartin Mares
7232c83b860SMartin Mares	* lspci.c: Avoid using alloca() if not compiled by GCC.
7242c83b860SMartin Mares	(insert_dev): Avoid returning a void value.
7252c83b860SMartin Mares
7262c83b860SMartin Mares	* Makefile: Choose which install utility to use according to
7272c83b860SMartin Mares	OS type. Also use `-o' instead of `-or' in find arguments.
7282c83b860SMartin Mares	Part of the AIX port.
7292c83b860SMartin Mares
7302c83b860SMartin Mares	* lib/aix-device.c: Added AIX low-level interface. Contributed
7312c83b860SMartin Mares	by Dave Johnson <[email protected]>, thanks a lot!
7322c83b860SMartin Mares
7332c83b860SMartin Mares	* pci.ids: Few new ID's.
7342c83b860SMartin Mares
7352c83b860SMartin Mares	* pciutils.h, lib/internal.h: Redefine __attribute__ and inline
7362c83b860SMartin Mares	when not compiled by GCC.
7372c83b860SMartin Mares
738c1a828daSMartin Mares2000-04-17  Martin Mares  <[email protected]>
739c1a828daSMartin Mares
740c1a828daSMartin Mares	* Released as 2.1.6.
741c1a828daSMartin Mares
742c1a828daSMartin Mares	* pci.ids: Added a large batch of ID's contributed by Gunther
743c1a828daSMartin Mares	Mayer <[email protected]> and synced the
744c1a828daSMartin Mares	list with the 2.3.99pre6 kernel.
745c1a828daSMartin Mares
746e91dd3abSMartin MaresThu Mar  9 13:11:39 2000  Martin Mares  <[email protected]>
747e91dd3abSMartin Mares
748a80b79a9SMartin Mares	* lib/example.c: Added a simple example of how to use
749a80b79a9SMartin Mares	the library.
750a80b79a9SMartin Mares
75189984232SMartin Mares	* lspci.man, setpci.man: Revealed --version. Well spotted
75289984232SMartin Mares	by Adam Sulmicki.
75389984232SMartin Mares
754e91dd3abSMartin Mares	* pci.ids: Added lots of new ID's and synced with 2.3.50.
755e91dd3abSMartin Mares
75678d9c5e2SMartin MaresTue Feb 15 00:16:21 2000  Martin Mares  <[email protected]>
75778d9c5e2SMartin Mares
75878d9c5e2SMartin Mares	* Released as 2.1.5.
75978d9c5e2SMartin Mares
76078d9c5e2SMartin Mares	* pciutils.spec: Updated spec file from Andreas Jaeger. Now using
76178d9c5e2SMartin Mares	%{_mandir} to find the right location to install manual pages to.
76278d9c5e2SMartin Mares
76378d9c5e2SMartin Mares	* pci.ids: New ID's.
76478d9c5e2SMartin Mares
76578d9c5e2SMartin Mares	* setpci.c (main): Don't crash when `-s' or `-d' is given with
76678d9c5e2SMartin Mares	no argument.
76778d9c5e2SMartin Mares
768f8141ae2SMartin MaresMon Jan 24 20:04:11 2000  Andreas Jaeger  <[email protected]>
769f8141ae2SMartin Mares
770f8141ae2SMartin Mares	* lib/i386-ports.c: Include <asm/io.h> only on systems without
771f8141ae2SMartin Mares	glibc.
772f8141ae2SMartin Mares
773f8141ae2SMartin MaresMon Jan 24 11:24:43 2000  Martin Mares  <[email protected]>
774f8141ae2SMartin Mares
775f8141ae2SMartin Mares	* Makefile: Modified to work with the Linux FHS brain-damaged idea
776f8141ae2SMartin Mares	of putting man pages to /usr/share/man. Now we choose either /usr/man
777f8141ae2SMartin Mares	or /usr/share/man depending on which one exists.
778f8141ae2SMartin Mares
77959e76e8bSMartin MaresSun Jan 23 10:52:34 2000  Martin Mares  <[email protected]>
78059e76e8bSMartin Mares
78159e76e8bSMartin Mares	* pci.ids: Synced with Linux 2.3.40.
78259e76e8bSMartin Mares
78359e76e8bSMartin Mares	* Released as version 2.1.4.
78459e76e8bSMartin Mares
7852dfd48cdSMartin MaresThu Jan 20 11:08:32 2000  Martin Mares  <[email protected]>
7862dfd48cdSMartin Mares
7872715403fSMartin Mares	* lspci.c (scan_device): Fixed bug in reading of cardbus extensions.
7882715403fSMartin Mares
78981077814SMartin Mares	* lib/proc.c: pread/pwrite fixed again, this time on libc5 :(
79081077814SMartin Mares
79181077814SMartin Mares	* lspci.c (format_agp_rate): Better formatting of AGP rates.
79281077814SMartin Mares
79381077814SMartin Mares	* pci.ids: New ID's.
79481077814SMartin Mares
7952dfd48cdSMartin Mares	* lib/configure: Added configuration for ia64 (the same as for Alpha).
7962dfd48cdSMartin Mares	Patch from Stephane Eranian <[email protected]>.
7972dfd48cdSMartin Mares
7985a258860SMartin MaresThu Jan 13 23:01:52 2000  Martin Mares  <[email protected]>
7995a258860SMartin Mares
8005a258860SMartin Mares	* Released as version 2.1.3.
8015a258860SMartin Mares
8025a258860SMartin Mares	* pci.ids: New ID's.
8035a258860SMartin Mares
8045a258860SMartin Mares	* lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli.
8055a258860SMartin Mares
8065a258860SMartin Mares	* lib/access.c: Corrected order of access methods -- it's wonderful how
8075a258860SMartin Mares	long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff.
8085a258860SMartin Mares
8090c047bbeSMartin MaresSat Dec 11 23:34:48 1999  Martin Mares  <[email protected]>
8100c047bbeSMartin Mares
8110c047bbeSMartin Mares	* Released as version 2.1.2.
8120c047bbeSMartin Mares
8130c047bbeSMartin Mares	* lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's.
8140c047bbeSMartin Mares
81533bc28a5SMartin MaresSat Dec  4 13:11:03 1999  Martin Mares  <[email protected]>
81633bc28a5SMartin Mares
81739231205SMartin Mares	* Released as version 2.1.1.
81839231205SMartin Mares
81933bc28a5SMartin Mares	* pci.ids: Several new ID's.
82033bc28a5SMartin Mares
82133bc28a5SMartin Mares	* setpci.c (exec_op): Don't forget to increment address after writing
82233bc28a5SMartin Mares	single value, so that `30.b=12,34,56,78' works as expected. Reported
82333bc28a5SMartin Mares	by Petr Soucek <[email protected]>.
82433bc28a5SMartin Mares
8258d047897SMartin MaresWed Nov  3 10:24:38 1999  Martin Mares  <[email protected]>
8268d047897SMartin Mares
8278d047897SMartin Mares	* lspci.c (show_terse): If prog-if is zero, but it's present in the
8288d047897SMartin Mares	ID list, show it.
8298d047897SMartin Mares
8306afc6538SMartin MaresSat Oct 30 11:06:35 1999  Martin Mares  <[email protected]>
8316afc6538SMartin Mares
8326afc6538SMartin Mares	* Released as version 2.1.
8336afc6538SMartin Mares
8346afc6538SMartin Mares	* pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in
8356afc6538SMartin Mares	lots of contributed entries.
8366afc6538SMartin Mares
8378f756113SMartin MaresThu Oct 14 10:40:12 1999  Dave Jones    <[email protected]>
8388f756113SMartin Mares
8398f756113SMartin Mares	* pci.ids: Added lots of subsystem definitions.
8408f756113SMartin Mares
841d4798a32SMartin MaresSat Oct  9 14:32:28 1999  Martin Mares  <[email protected]>
842d4798a32SMartin Mares
843d4798a32SMartin Mares	* setpci.man: Better example.
844d4798a32SMartin Mares
845d4798a32SMartin Mares	* lspci.c: Resolve prog-if names.
846d4798a32SMartin Mares
847d4798a32SMartin Mares	* lib/names.c: Adapted to new pci.ids syntax.
848d4798a32SMartin Mares
849d4798a32SMartin Mares	* pci.ids: Reorganized the pci.ids file. Subsystems are listed
850d4798a32SMartin Mares	under devices, classes can optionally contain prog-if information.
851d4798a32SMartin Mares	New ID's, as usually.
852d4798a32SMartin Mares
853e306e911SMartin MaresWed Sep 22 09:45:24 1999  Martin Mares  <[email protected]>
854e306e911SMartin Mares
855e306e911SMartin Mares	* pci.ids: New ID's. As usually.
856e306e911SMartin Mares
857e306e911SMartin Mares	* lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows
858e306e911SMartin Mares	unless we're vvvery verbose.
859e306e911SMartin Mares
860e306e911SMartin MaresMon Sep 20 11:22:54 1999  Martin Mares  <[email protected]>
861e306e911SMartin Mares
862e306e911SMartin Mares	* lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line.
863e306e911SMartin Mares
864e64a576cSMartin MaresTue Sep 14 09:31:01 1999  Martin Mares  <[email protected]>
865e64a576cSMartin Mares
866e64a576cSMartin Mares	* pci.ids: New ID's. Again.
867e64a576cSMartin Mares
868c36c0862SMartin MaresThu Aug  5 17:45:42 1999  Martin Mares  <[email protected]>
869c36c0862SMartin Mares
870c36c0862SMartin Mares	* lspci.c (show_size): Don't show size if it's zero (usually
871c36c0862SMartin Mares	due to bus-centric mode being enabled).
872c36c0862SMartin Mares
8731ca42433SMartin MaresTue Jul 20 13:25:09 1999  Martin Mares  <[email protected]>
8741ca42433SMartin Mares
875168b4f46SMartin Mares	* lib/pci.h: Types are OS dependent.
876168b4f46SMartin Mares
877168b4f46SMartin Mares	* lib/internal.h: Byte order hacks are OS dependent.
878168b4f46SMartin Mares
879168b4f46SMartin Mares	* lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS.
880168b4f46SMartin Mares
881168b4f46SMartin Mares	* lib/Makefile, lib/access.c: Added fbsd-device target.
882168b4f46SMartin Mares
883168b4f46SMartin Mares	* pci.ids: Added an entry for PLX 9080 bridges with subsystem ID
884168b4f46SMartin Mares	incorrectly set to device ID.
885168b4f46SMartin Mares
886168b4f46SMartin Mares	* README: Added a note that we support FreeBSD.
887168b4f46SMartin Mares
888168b4f46SMartin Mares	* Makefile (PREFIX, ROOT): Set it depending on the OS.
889168b4f46SMartin Mares	(%.8): Grrr, BSD date is not able to convert date formats the same way
890168b4f46SMartin Mares	as GNU date does. Use sed instead.
891168b4f46SMartin Mares	(install): Use `-c' when calling install.
892168b4f46SMartin Mares
893168b4f46SMartin Mares	* lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed
894168b4f46SMartin Mares	by Jari Kirma <[email protected]>.
895168b4f46SMartin Mares
896bc6346dfSMartin Mares	* lib/proc.c: Rewrote the pread/pwrite things once again. Use pread
897bc6346dfSMartin Mares	and pwrite only when we are certain it's safe (i.e., glibc 2.1
898bc6346dfSMartin Mares	on all architectures or any libc on a i386 where we really know
899bc6346dfSMartin Mares	how to use syscalls directly). In all other cases, emulate it
900bc6346dfSMartin Mares	with lseek/read/write.
901bc6346dfSMartin Mares
9021ca42433SMartin Mares	* pci.ids: Some more IDs.
9031ca42433SMartin Mares
9041ca42433SMartin MaresMon Jul 19 14:10:36 1999  Martin Mares  <[email protected]>
9051ca42433SMartin Mares
9061ca42433SMartin Mares	* pci.ids: Added IDs of parallel port controller cards as sent
9071ca42433SMartin Mares	by Tim Waugh <[email protected]>.
9081ca42433SMartin Mares
909e95c8373SMartin MaresWed Jul  7 00:55:48 1999  Martin Mares  <[email protected]>
910e95c8373SMartin Mares
911e95c8373SMartin Mares	* lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS.
912e95c8373SMartin Mares
913e95c8373SMartin Mares	* lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and
914e95c8373SMartin Mares	HAVE_LONG_ADDRESS.
915e95c8373SMartin Mares
916e95c8373SMartin Mares	* lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses
917e95c8373SMartin Mares	are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS
918e95c8373SMartin Mares	to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS
919e95c8373SMartin Mares	and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS
920e95c8373SMartin Mares	on Alpha.
921e95c8373SMartin Mares
922e95c8373SMartin Mares	* lspci.c (show_msi): Added dumping of the MSI capability.
923e95c8373SMartin Mares	(show_slotid): The same for SlotID capability.
924e95c8373SMartin Mares	(show_caps): Seperated capability dumping, because it should
925e95c8373SMartin Mares	be used for both htype0 and htype1. Even PCI 2.2 doesn't mention
926e95c8373SMartin Mares	layout of htype2, so I'm a bit unsure about it wrt capabilities
927e95c8373SMartin Mares	-- they at least have to live somewhere else since address 0x34
928e95c8373SMartin Mares	is already defined differently in htype2.
929e95c8373SMartin Mares
930e95c8373SMartin Mares	* lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2).
931e95c8373SMartin Mares	(PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto.
932e95c8373SMartin Mares	(PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2.
933e95c8373SMartin Mares
934e95c8373SMartin Mares	* lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers
935e95c8373SMartin Mares	(required by the PCI 2.2 specs).
936e95c8373SMartin Mares
937e95c8373SMartin MaresMon Jul  5 12:45:19 1999  Martin Mares  <[email protected]>
938e95c8373SMartin Mares
939e95c8373SMartin Mares	* lspci.c (show_size): Added new function for dumping of region sizes.
940e95c8373SMartin Mares	(show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled
941e95c8373SMartin Mares	ROMs et cetera.
942e95c8373SMartin Mares
943e95c8373SMartin Mares	* lib/pci.h (struct pci_dev): known_fields moved to the public part
944e95c8373SMartin Mares	of the structure.
945e95c8373SMartin Mares
946e95c8373SMartin Mares	* Added support for region sizes. Needs support in the kernel, because
947e95c8373SMartin Mares	sizes have to be scanned before drivers initialize yourself. pci_fill_info()
948e95c8373SMartin Mares	now returns a bitmask of what fields were really read.
949e95c8373SMartin Mares
95082ce97c9SMartin MaresMon Jun 28 18:37:51 1999  Dave Jones    <[email protected]>
95182ce97c9SMartin Mares
95282ce97c9SMartin Mares	* Makefile:
95382ce97c9SMartin Mares	  Added `uninstall' target - removes all traces of pciutils.
95482ce97c9SMartin Mares	* pci.ids:
95582ce97c9SMartin Mares	  - Lots of cleanups in the ATI, S3, Adaptec vendors.
95682ce97c9SMartin Mares	  - Changed Compaq QVision 1280/p definitions, as it's not possible
95782ce97c9SMartin Mares	    to determine the revision from the device ID.
95882ce97c9SMartin Mares	  - Same for the Tseng ET4000.
95982ce97c9SMartin Mares	    The id's said I had a rev C, when it was actually a rev B.
96082ce97c9SMartin Mares	  - Removed some unnecessary strings
96182ce97c9SMartin Mares	    `PCI'. Unless it's an AGP card, it should be obvious that it's PCI.
96282ce97c9SMartin Mares	    `Ethernet card'. This should be determined from config space.
96382ce97c9SMartin Mares	  - Lots of other new vendors & devices
96482ce97c9SMartin Mares	  - Other additional small cleanups.
96582ce97c9SMartin Mares
9667bed2d83SMartin MaresMon Jun 21 22:11:10 1999  Martin Mares  <[email protected]>
9677bed2d83SMartin Mares
9687bed2d83SMartin Mares	* lib/names.c (pci_lookup_name): When device ID lookup
9697bed2d83SMartin Mares	fails, return hexadecimal device ID instead of vendor ID.
9707bed2d83SMartin Mares	Well spotted by Axel Bodemann <[email protected]>,
9717bed2d83SMartin Mares	I've just extended the fix to subsystem ID's.
9727bed2d83SMartin Mares
9735ba3a475SMartin MaresThu Jun 17 19:48:21 1999  Martin Mares  <[email protected]>
9745ba3a475SMartin Mares
9755ba3a475SMartin Mares	* lspci.c (show_agp): Bug fix from Petr Vandrovec
9765ba3a475SMartin Mares	<[email protected]>. The command register was displayed
9775ba3a475SMartin Mares	incorrectly.
9785ba3a475SMartin Mares
9795ba3a475SMartin MaresWed Jun  2 22:42:44 1999  Martin Mares  <[email protected]>
9805ba3a475SMartin Mares
9815ba3a475SMartin Mares	* lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded
9825ba3a475SMartin Mares	numbers if not supplied by the libc.
9835ba3a475SMartin Mares
98455c815b5SMartin MaresWed May 19 13:24:39 1999  Martin Mares  <[email protected]>
98555c815b5SMartin Mares
98655c815b5SMartin Mares	* Released the whole package as version 2.0.
98755c815b5SMartin Mares
98855c815b5SMartin MaresFri May 14 22:42:02 1999  Martin Mares  <[email protected]>
98955c815b5SMartin Mares
99055c815b5SMartin Mares	* pci.ids: Added several new ID's contributed by people
99155c815b5SMartin Mares	on the linux-pci list.
99255c815b5SMartin Mares
993dec16943SMartin MaresMon Apr 19 15:21:08 1999  Jakub Jelinek  <[email protected]>
994dec16943SMartin Mares
995dec16943SMartin Mares	* lspci.c: Display I/O addresses correctly on sparc64.
996dec16943SMartin Mares	* lib/header.h: Ditto.
997dec16943SMartin Mares
998dec16943SMartin Mares	* lib/configure: On sparc set HAVE_64BIT* as well, we want
999dec16943SMartin Mares	a binary which works on both 32bit and 64bit SPARCs.
1000dec16943SMartin Mares
1001e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999  Martin Mares  <[email protected]>
1002e33c9c7aSMartin Mares
1003e33c9c7aSMartin Mares	* lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob
1004e33c9c7aSMartin Mares	<[email protected]>.
1005e33c9c7aSMartin Mares
1006e33c9c7aSMartin Mares	* pci.ids: A lot of updates from Adam J. Richter <[email protected]>.
1007e33c9c7aSMartin Mares
1008f3395cc5SMartin MaresSun Feb 28 22:26:21 1999  Martin Mares  <[email protected]>
1009f3395cc5SMartin Mares
1010f3395cc5SMartin Mares	* lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged
1011f3395cc5SMartin Mares	as a multi-function device, because several single-function devices
1012f3395cc5SMartin Mares	don't decode the function bits at all.
1013f3395cc5SMartin Mares
1014f3395cc5SMartin MaresSun Feb 14 23:48:22 1999  Martin Mares  <[email protected]>
1015f3395cc5SMartin Mares
1016f3395cc5SMartin Mares	* Makefile (install): Don't use "-o root -g root" for installation
1017f3395cc5SMartin Mares	since it breaks on machines where programs are not installed by root.
1018f3395cc5SMartin Mares	Reported by Richard Gooch <[email protected]>
1019f3395cc5SMartin Mares
1020f3395cc5SMartin MaresTue Feb  9 15:54:39 1999  Martin Mares  <[email protected]>
1021f3395cc5SMartin Mares
1022f3395cc5SMartin Mares	* lspci.c (show_bases): Use new address masking macros and pciaddr_t.
1023f3395cc5SMartin Mares
1024f3395cc5SMartin Mares	* lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit
1025f3395cc5SMartin Mares	or 64-bit depending on CPU.
1026f3395cc5SMartin Mares
1027f3395cc5SMartin Mares	* lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks
1028f3395cc5SMartin Mares	according to bus address width.
1029f3395cc5SMartin Mares
10301c31d620SMartin MaresThu Jan 28 20:54:16 1999  Martin Mares  <[email protected]>
10311c31d620SMartin Mares
10321c31d620SMartin Mares	* Released as 1.99.4.
10331c31d620SMartin Mares
10341c31d620SMartin Mares	* lspci.c: Capability list parser now recognizes both AGP
10351c31d620SMartin Mares	registers and PCI Power Management registers (the latter
10361c31d620SMartin Mares	is mainly guesswork based on DEC/Intel 21153 bridge specs
10371c31d620SMartin Mares	since I don't have the PCI Power Management document).
10381c31d620SMartin Mares
10391c31d620SMartin Mares	* lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-'
10401c31d620SMartin Mares	by FLAG macro.
10411c31d620SMartin Mares
10421c31d620SMartin Mares	* lspci.c: Added bridge checks to bus mapping code.
10431c31d620SMartin Mares
10441812a795SMartin MaresWed Jan 27 14:59:16 1999  Martin Mares  <[email protected]>
10451812a795SMartin Mares
10461812a795SMartin Mares	* lspci.c: Implemented bus mapping mode (-M).
10471812a795SMartin Mares
10481812a795SMartin Mares	* lspci.c (scan_devices): Split to scan_devices() and scan_device().
10491812a795SMartin Mares	(show): Split to show() and show_device().
10501812a795SMartin Mares
10511812a795SMartin Mares	* lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO,
10521812a795SMartin Mares	set it to the real access method afterwards.
10531812a795SMartin Mares
10541812a795SMartin MaresMon Jan 25 23:46:13 1999  Martin Mares  <[email protected]>
10551812a795SMartin Mares
10561812a795SMartin Mares	* lib/generic.c (pci_generic_fill_info): If in buscentric mode,
10571812a795SMartin Mares	don't check PCI_COMMAND for I/O and memory enables.
10581812a795SMartin Mares
1059f6c86928SMartin MaresMon Jan 25 21:28:49 1999  Martin Mares  <[email protected]>
1060f6c86928SMartin Mares
1061f6c86928SMartin Mares	* Makefile: Added target `release' which substitutes new version
1062f6c86928SMartin Mares	number to .spec, .lsm and README. Also rewrote target `dist'.
1063f6c86928SMartin Mares
1064f6c86928SMartin Mares	* Released as 1.99.3.
1065f6c86928SMartin Mares
1066b5137411SMartin MaresSun Jan 24 22:10:36 1999  Martin Mares  <[email protected]>
1067b5137411SMartin Mares
1068d6b297d0SMartin Mares	* lib/header.h: Until kernel adopts new layout of PCI
1069d6b297d0SMartin Mares	includes (i.e., separate declaration of header structure,
1070d6b297d0SMartin Mares	functions and device IDs), which is not going to happen
1071d6b297d0SMartin Mares	before 2.3, we'll use our own definiton of the header.
1072d6b297d0SMartin Mares
1073b5137411SMartin Mares	* lspci.c (show_verbose): Display `Cap' flag in device status.
1074b5137411SMartin Mares
1075b5137411SMartin Mares	* lspci.c (show_htype0): Display capability lists whereever
1076b5137411SMartin Mares	available. The only capability name we recognize now is `AGP'.
1077b5137411SMartin Mares	Unfortunately, capabilities are stored in device-dependent
1078b5137411SMartin Mares	portion of the configuration space and are thus available
1079b5137411SMartin Mares	only to root unless you read a dump.
1080b5137411SMartin Mares
1081b5137411SMartin Mares	* lspci.c (scan_devices): Use cache instead of buffering.
1082b5137411SMartin Mares
1083b5137411SMartin Mares	* lib/buffer.c: Removed (obsoleted by the cache).
1084b5137411SMartin Mares
1085b5137411SMartin Mares	* lib/access.c: Added general caching mechanism.
1086b5137411SMartin Mares
108781ce358dSMartin MaresSat Jan 23 21:30:54 1999  Martin Mares  <[email protected]>
108881ce358dSMartin Mares
108981ce358dSMartin Mares	* pci.ids: Added few devices.
109081ce358dSMartin Mares
1091727ce158SMartin MaresFri Jan 22 19:29:31 1999  Martin Mares  <[email protected]>
1092727ce158SMartin Mares
1093727ce158SMartin Mares	* Version string is now defined in top-level Makefile, exported
1094727ce158SMartin Mares	to the configure script and also substituted to man pages.
1095727ce158SMartin Mares
1096727ce158SMartin Mares	* lspci.c (show_bases): Rewrote displaying of 64-bit addresses.
1097727ce158SMartin Mares	(show_verbose): Rewrote interrupt display logic.
1098727ce158SMartin Mares
1099727ce158SMartin Mares	* lib/i386-ports.c: Include sys/io.h only on glibc systems.
1100727ce158SMartin Mares
1101727ce158SMartin Mares	* lib/configure: Rewrote detection of Linux versions. Now it
1102727ce158SMartin Mares	works on 2.0 kernels (only with direct/dump access, of course).
1103727ce158SMartin Mares
1104727ce158SMartin Mares	* lib/internal.h: New bytesex macros using <asm/byteorder.h>
1105727ce158SMartin Mares	whenever available.
1106727ce158SMartin Mares
1107727ce158SMartin Mares	* lib/proc.c (proc_read, proc_write): Distinguish between short
1108727ce158SMartin Mares	read/write and real errors.
1109727ce158SMartin Mares
1110727ce158SMartin Mares	* lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since
1111727ce158SMartin Mares	libpci respects buscentric mode automatically.
1112727ce158SMartin Mares
1113727ce158SMartin Mares	* lspci.c (show_hex_dump): For CardBus bridges, print out 128
1114727ce158SMartin Mares	bytes of header (the whole standard part).
1115727ce158SMartin Mares
1116727ce158SMartin Mares	* common.c: pcilib options are now all uppercase. Also moved
1117727ce158SMartin Mares	PCI access debugging option here.
1118727ce158SMartin Mares
1119727ce158SMartin Mares	* Released as 1.99.2.
1120727ce158SMartin Mares
1121727ce158SMartin MaresWed Jan 20 22:50:35 1999  Martin Mares  <[email protected]>
1122727ce158SMartin Mares
1123727ce158SMartin Mares	* Wrote configure script and rewrote Makefiles.
1124727ce158SMartin Mares
1125727ce158SMartin Mares	* Removed few unused variables.
1126727ce158SMartin Mares
1127727ce158SMartin MaresWed Jan 20 12:21:56 1999  Martin Mares  <[email protected]>
1128727ce158SMartin Mares
1129727ce158SMartin Mares	* common.c: Moved several functions used in both setpci and lspci
1130727ce158SMartin Mares	here. This includes parsing of libpci-related options.
1131727ce158SMartin Mares
1132727ce158SMartin Mares	* More library tweaks.
1133727ce158SMartin Mares
1134727ce158SMartin Mares	* filter.c, names.c: Moved to library.
1135727ce158SMartin Mares
1136727ce158SMartin Mares	* setpci: Rewritten to use the library.
1137727ce158SMartin Mares
1138727ce158SMartin Mares	* Released as 1.99.1.
1139727ce158SMartin Mares
1140727ce158SMartin MaresTue Jan 19 23:00:12 1999  Martin Mares  <[email protected]>
1141727ce158SMartin Mares
1142727ce158SMartin Mares	* lspci.c (scan_devices): For cardbus bridges, read first 128
1143727ce158SMartin Mares	bytes of config space to get full standard header.
1144727ce158SMartin Mares
1145727ce158SMartin Mares	* Makefile (CFLAGS): Removed "-Wno-unused".
1146727ce158SMartin Mares
1147727ce158SMartin Mares	* Started the "New Generation" branch and introduced the
1148727ce158SMartin Mares	PCI library.
1149727ce158SMartin Mares
1150727ce158SMartin Mares	* lspci: Rewritten to use the library.
1151727ce158SMartin Mares
11526ece6bc6SMartin MaresTue Jan 19 22:24:08 1999  Martin Mares  <[email protected]>
11536ece6bc6SMartin Mares
11546ece6bc6SMartin Mares	* Released as version 1.10.
11556ece6bc6SMartin Mares
11566ece6bc6SMartin MaresMon Jan 18 08:51:17 1999  Martin Mares  <[email protected]>
11576ece6bc6SMartin Mares
11586ece6bc6SMartin Mares	* lspci.8, setpci.8: Miscellaneous fixes as suggested by
11596ece6bc6SMartin Mares	Dag Wieers <[email protected]>.
11606ece6bc6SMartin Mares
11611212dd6dSMartin MaresSun Nov 29 20:05:56 1998  Martin Mares  <[email protected]>
11621212dd6dSMartin Mares
11631212dd6dSMartin Mares	* pciutils.spec (Name): Update from Krzysztof G. Baranowski.
11641212dd6dSMartin Mares
1165d38471fdSMartin MaresSun Nov 22 10:49:56 1998  Martin Mares  <[email protected]>
1166d38471fdSMartin Mares
1167d38471fdSMartin Mares	* Makefile, pciutils.h: Moved pci.ids to /usr/share.
1168d38471fdSMartin Mares
1169d38471fdSMartin Mares	* Released as version 1.09.
1170d38471fdSMartin Mares
1171371f605bSMartin MaresWed Nov 18 15:47:05 1998  Martin Mares  <[email protected]>
1172371f605bSMartin Mares
1173371f605bSMartin Mares	* lspci.c (show_htype1): Fixed displaying of prefetchable memory behind
1174371f605bSMartin Mares	bridge. Thanks to Petr Vandrovec <[email protected]> for bug report.
1175371f605bSMartin Mares
117610be47abSMartin MaresFri Oct 23 18:59:19 1998  Martin Mares  <[email protected]>
117710be47abSMartin Mares
117810be47abSMartin Mares	* setpci.c: Don't include <syscall-list.h> with glibc >= 2.1.
117910be47abSMartin Mares
1180472bd340SMartin MaresMon Oct 19 21:53:30 1998  Martin Mares  <[email protected]>
1181472bd340SMartin Mares
1182472bd340SMartin Mares	* Released as version 1.08.
1183472bd340SMartin Mares
1184472bd340SMartin Mares	* setpci.c: glibc 2.1.x already defines pread() and pwrite().
1185472bd340SMartin Mares
1186472bd340SMartin Mares	* lspci.8: Changed warning about lspci -xxx.
1187472bd340SMartin Mares
1188472bd340SMartin Mares	* lspci.c: Require "-xxx" for full configuration space dump, so that
1189472bd340SMartin Mares	it's impossible to crash the machine by single typo.
1190472bd340SMartin Mares
1191472bd340SMartin Mares	* specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>).
1192472bd340SMartin Mares
1193072c77e5SMartin MaresWed Sep  9 12:03:24 1998  Martin Mares  <[email protected]>
1194072c77e5SMartin Mares
1195072c77e5SMartin Mares	* lspci.c (show_bases): Better displaying of unassigned and
1196072c77e5SMartin Mares	disabled bases. Thanks to Gabriel Paubert <[email protected]>
1197072c77e5SMartin Mares	for an idea.
1198072c77e5SMartin Mares
1199b7554856SMartin MaresWed Sep  2 10:58:01 1998  Martin Mares  <[email protected]>
1200b7554856SMartin Mares
1201b7554856SMartin Mares	* setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC.
1202b7554856SMartin Mares	(thanks to Geert Uytterhoeven for finding this out)
1203b7554856SMartin Mares
1204ce503b7fSMartin MaresFri Jul 17 10:43:30 1998  Martin Mares  <[email protected]>
1205ce503b7fSMartin Mares
1206ce503b7fSMartin Mares	* lspci.c (show_verbose): Print subsystem ID using the new resolver.
1207ce503b7fSMartin Mares	(show_machine): Print subsystem ID.
1208ce503b7fSMartin Mares
1209ce503b7fSMartin Mares	* names.c: New name resolution engine supporting subsystem IDs.
1210ce503b7fSMartin Mares
1211ce503b7fSMartin Mares	* Released as version 1.07.
1212ce503b7fSMartin Mares
121396e4f295SMartin MaresWed Jul 15 15:37:21 1998  Martin Mares  <[email protected]>
121496e4f295SMartin Mares
121596e4f295SMartin Mares	* lspci.c (show_htype2 etc.): Displaying of CardBus headers.
121696e4f295SMartin Mares	(show_bases): Honor the `cnt' argument.
121796e4f295SMartin Mares	(grow_tree): Parse CardBus headers in tree mode as well.
121896e4f295SMartin Mares
121996e4f295SMartin Mares	* pci.h: Updated CardBus header field description. I still don't
122096e4f295SMartin Mares	have the CardBus standard available, but OZ6832 specs contain
122196e4f295SMartin Mares	full description of all header fields supported by the chip.
122296e4f295SMartin Mares
12236ae3650aSMartin MaresTue Jun  9 22:53:59 1998  Martin Mares  <[email protected]>
12246ae3650aSMartin Mares
1225304f9a0bSMartin Mares	* Released as 1.06.
1226304f9a0bSMartin Mares
12276ae3650aSMartin Mares	* names.c (parse_name_list): Killed an unused variable.
12286ae3650aSMartin Mares
12296ae3650aSMartin Mares	* setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1
12306ae3650aSMartin Mares	if they are not defined by glibc (needed for glibc built on older
12316ae3650aSMartin Mares	kernels). Ugly.
12326ae3650aSMartin Mares
12336ae3650aSMartin Mares	* setpci.c (exec_op): Fixed error messages. Thanks, Steve!
12346ae3650aSMartin Mares
12354b88a6b8SMartin MaresMon Jun  8 10:59:22 1998  Martin Mares  <[email protected]>
12364b88a6b8SMartin Mares
12374b88a6b8SMartin Mares	* Released as 1.05.
12384b88a6b8SMartin Mares
12394b88a6b8SMartin Mares	* setpci.c: Problems with pread()/pwrite() with glibc on Alpha
12404b88a6b8SMartin Mares	should be gone. Again thanks to Steve for bug report.
12414b88a6b8SMartin Mares
12424b88a6b8SMartin Mares	* filter.c (filter_parse_slot): Fixed ":x" type filters.
12434b88a6b8SMartin Mares
12444b88a6b8SMartin Mares	* pci.ids: Killed duplicate entry. Thanks to Stephen Williams
12454b88a6b8SMartin Mares	<[email protected]> for reporting this.
12464b88a6b8SMartin Mares
12474b88a6b8SMartin MaresSun Jun  7 19:27:51 1998  Martin Mares  <[email protected]>
12484b88a6b8SMartin Mares
12494b88a6b8SMartin Mares	* lspci.c (main), setpci.c (main): Implemented "--version".
12504b88a6b8SMartin Mares
12514b88a6b8SMartin Mares	* Released as 1.04.
12524b88a6b8SMartin Mares
12534b88a6b8SMartin Mares	* pciutils.h (PCIUTILS_VERSION): Added version string.
12544b88a6b8SMartin Mares
12554b88a6b8SMartin Mares	* filter.c, names.c: Extraneous #include <linux/pci.h> removed.
12564b88a6b8SMartin Mares	Thanks to Geert Uytterhoeven <[email protected]>
12574b88a6b8SMartin Mares	for bug report.
12584b88a6b8SMartin Mares
12599b306998SMartin MaresThu May 28 14:45:58 1998  Martin Mares  <[email protected]>
12609b306998SMartin Mares
12619b306998SMartin Mares	* pci.ids: More updates from Jens Maurer.
12629b306998SMartin Mares
1263b372672fSMartin MaresWed Apr 22 10:00:39 1998  Martin Mares  <[email protected]>
1264b372672fSMartin Mares
1265b372672fSMartin Mares	* pci.ids: Updates from Jens Maurer.
1266b372672fSMartin Mares
1267b2c9b373SMartin MaresSun Apr 19 11:14:25 1998  Martin Mares  <[email protected]>
1268b2c9b373SMartin Mares
1269b372672fSMartin Mares	* Released as 1.03.
1270b372672fSMartin Mares
1271b2c9b373SMartin Mares	* setpci.8: Written.
1272b2c9b373SMartin Mares
1273b2c9b373SMartin Mares	* setpci.c: Finished.
1274b2c9b373SMartin Mares
1275b2c9b373SMartin Mares	* lspci.c: Now able to fetch expansion ROM base from kernel device list
1276b2c9b373SMartin Mares	and print it if not in buscentric mode.
1277b2c9b373SMartin Mares
1278e4842ff3SMartin MaresTue Mar 31 23:11:57 1998  Martin Mares  <[email protected]>
1279e4842ff3SMartin Mares
1280e4842ff3SMartin Mares	* setpci.c: Added.
1281e4842ff3SMartin Mares
1282e4842ff3SMartin MaresSun Mar 22 15:39:08 1998  Martin Mares  <[email protected]>
1283e4842ff3SMartin Mares
1284e4842ff3SMartin Mares	* lspci.8: Updated the documentation.
1285e4842ff3SMartin Mares
1286e4842ff3SMartin Mares	* lspci.c: Modified to use the new filtering mechanism (options -f and -d).
1287e4842ff3SMartin Mares
1288e4842ff3SMartin Mares	* filter.c: Introduced new generic device filter.
1289e4842ff3SMartin Mares
1290008407bdSMartin MaresThu Mar 19 17:03:48 1998  Martin Mares  <[email protected]>
1291008407bdSMartin Mares
1292008407bdSMartin Mares	* lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying
1293008407bdSMartin Mares	of PCI-to-PCI bridges in the tree format.
1294008407bdSMartin Mares
12950a33d0ecSMartin MaresSun Feb 15 10:12:25 1998  Martin Mares  <[email protected]>
12960a33d0ecSMartin Mares
12970a33d0ecSMartin Mares	* lspci.c (show_machine): Added non-verbose mode of machine-readable
12980a33d0ecSMartin Mares	dump.
12990a33d0ecSMartin Mares
13000a33d0ecSMartin Mares	* pci.ids: Updates from Jens Maurer.
13010a33d0ecSMartin Mares
13020a33d0ecSMartin Mares	* Released as version 1.02.
13030a33d0ecSMartin Mares
13040a33d0ecSMartin MaresThu Feb 12 16:53:28 1998  Martin Mares  <[email protected]>
13050a33d0ecSMartin Mares
13060a33d0ecSMartin Mares	* lspci.c: Added a "-m" switch for dumping machine-readable
13070a33d0ecSMartin Mares	configuration data (requested by Bjoern Kriews <[email protected]>).
13080a33d0ecSMartin Mares
1309fb38eee8SMartin MaresMon Feb  9 13:17:43 1998  Martin Mares  <[email protected]>
1310fb38eee8SMartin Mares
1311fb38eee8SMartin Mares	* Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h>
1312fb38eee8SMartin Mares	if available. This should avoid all problems with official kernel
1313fb38eee8SMartin Mares	not synchronized to newer PCI code in CVS -- standard distribution
1314fb38eee8SMartin Mares	of pciutils now contains pci.h from current CVS kernel, pciutils
1315fb38eee8SMartin Mares	in CVS contain no pci.h and use the correct kernel include.
1316fb38eee8SMartin Mares
1317fb38eee8SMartin Mares	* Makefile: Fixed installation path for man pages.
1318fb38eee8SMartin Mares
13192f48f637SMartin MaresSat Feb  7 15:15:46 1998  Martin Mares  <[email protected]>
13202f48f637SMartin Mares
13212f48f637SMartin Mares	* README: Updated.
13222f48f637SMartin Mares
13232f48f637SMartin Mares	* lspci.8: Created a man page.
13242f48f637SMartin Mares
13252f48f637SMartin Mares	* Releasing as version 1.0.
13262f48f637SMartin Mares
13272f48f637SMartin MaresTue Feb  3 20:56:00 1998  Martin Mares  <[email protected]>
13282f48f637SMartin Mares
13292f48f637SMartin Mares	* Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx
13302f48f637SMartin Mares	to all the C sources. This should eliminate problems with 32-bit compilers
13312f48f637SMartin Mares	on sparc64.
13322f48f637SMartin Mares
13332f48f637SMartin Mares	* lspci.c (show_verbose): Recognize CardBus bridge header type.
13342f48f637SMartin Mares	(show_htype2): Stub routine.
13352f48f637SMartin Mares	(scan_config): Write sensible error message if the kernel denies reading of
13362f48f637SMartin Mares	upper part of the PCI config space.
1337