1b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 2b2055313SMartin Mares 3*cc062b4aSMartin Mares * The pci.ids file can be stored compressed if zlib is available. 4*cc062b4aSMartin Mares Added transparent decompression to lib/names.c, modified update-pciids.sh 5*cc062b4aSMartin Mares to keep the file compressed if applicable, updated Makefiles. 6*cc062b4aSMartin Mares Based on a patch by Matthew Wilcox, but all the bugs are mine. 7*cc062b4aSMartin Mares 8f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 9f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 10f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 11f4ddb8d3SMartin Mares 1216e37012SMartin Mares * Added .gitignore files. 1316e37012SMartin Mares 14c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 15c7f5314dSMartin Mares 16afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 17afebde01SMartin Mares 18fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 19fd54ccebSMartin Mares 20b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 21b2055313SMartin Mares defined in the pci.ids file. 22b2055313SMartin Mares 234254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 244254d153SMartin Mares 254254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 264254d153SMartin Mares 271c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 281c5cc9b5SMartin Mares 2938a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 3038a9e3c3SMartin Mares 31c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 32c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 33c7ddfa3eSMartin Mares 34248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 35248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 36248a04f8SMartin Mares 37f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 38f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 39f29dcc87SMartin Mares 408eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 418eab3bffSMartin Mares 42d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 43d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 44d305d704SMartin Mares directly. 45d305d704SMartin Mares 469007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 479007a292SMartin Mares the port access state to generic code. 489007a292SMartin Mares 49bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 50bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 51bd20d5b5SMartin Mares 5273750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 5373750606SMartin Mares 54d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 55d71daa45SMartin Mares 561c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 571c5cc9b5SMartin Mares 581c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 591c5cc9b5SMartin Mares 60c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 61c2b144efSMartin Mares 6214d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 6314d4f989SMartin Mares 6414d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 6514d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 6614d4f989SMartin Mares incomplete, though. 6714d4f989SMartin Mares 68c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 69c2b144efSMartin Mares 70c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 71c2b144efSMartin Mares be modified by kernel fixups. 72c2b144efSMartin Mares 73c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 74c2b144efSMartin Mares 75bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 76bc2eed2dSMartin Mares 77bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 78bc2eed2dSMartin Mares for the idea. 79bc2eed2dSMartin Mares 80bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 81bc2eed2dSMartin Mares cleaned up the name selection code. 82bc2eed2dSMartin Mares 83c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 84c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 85c72eeddeSMartin Mares 86c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 87c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 88c72eeddeSMartin Mares 892f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 902f294d4bSMartin Mares 912f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 922f294d4bSMartin Mares 9381afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 9481afa98cSMartin Mares name when printing an error message. 9581afa98cSMartin Mares 960ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 970ac282f2SMartin Mares 980ac282f2SMartin Mares * README: Mention the public GIT tree. 990ac282f2SMartin Mares 1000ac282f2SMartin Mares * README: Updated the list of ports. 1010ac282f2SMartin Mares 102d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 103d1058e9dSMartin Mares 104d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 105d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 106d1058e9dSMartin Mares 107abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 108abf8d505SMartin Mares 1092ae2d1aeSMartin Mares * Released as 2.2.3. 1102ae2d1aeSMartin Mares 1112ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 1122ae2d1aeSMartin Mares in -m mode. 1132ae2d1aeSMartin Mares 1142ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 1152ae2d1aeSMartin Mares 1161d5cf727SMartin Mares * Released as 2.2.2. 1171d5cf727SMartin Mares 1188a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 1198a830168SMartin Mares 120b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 121b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 122b6359063SMartin Mares the existing FreeBSD interface. 123b6359063SMartin Mares 124abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 125abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 126abf8d505SMartin Mares 1276ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 1286ac70402SMartin Mares 1292a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 1302a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 1312a124daeSMartin Mares forces domain display even there. 1322a124daeSMartin Mares 1336ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 1346ac70402SMartin Mares guaranteed to be stable between lspci versions. 1356ac70402SMartin Mares 1361bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 1371bbdea17SMartin Mares 138af61eb25SMartin Mares * lspci.man: Documented the -D switch. 139af61eb25SMartin Mares 140af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 141af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 142af61eb25SMartin Mares all devices. 143af61eb25SMartin Mares 1447a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 1457a61b93cSMartin Mares 1461bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 1471bbdea17SMartin Mares 1480e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 1490e78ef8aSMartin Mares 1500e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 1510e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 1520e78ef8aSMartin Mares 153e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 154e6859953SMartin Mares 155e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 156e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 157e6859953SMartin Mares 158e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 159e6859953SMartin Mares 160a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 161a99c0d69SMartin Mares 162e4af70c6SMartin Mares * Released as 2.2.1. 163e4af70c6SMartin Mares 164a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 165a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 166a99c0d69SMartin Mares 167f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 168f23fd3fcSMartin Mares 169f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 170f23fd3fcSMartin Mares 17115296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 17215296723SMartin Mares 17315296723SMartin Mares * Released as 2.2.0. 17415296723SMartin Mares 17540b6d93fSMartin Mares * pci.ids: Updated copyright header. 17640b6d93fSMartin Mares 17715296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 17815296723SMartin Mares 64-bit addresses, they are now always supported. 17915296723SMartin Mares 18015296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 18115296723SMartin Mares in bus-centric mode. 18215296723SMartin Mares 18315296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 18415296723SMartin Mares 18515296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 18615296723SMartin Mares are shorter. 18715296723SMartin Mares 188224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 189224707baSMartin Mares 190224707baSMartin Mares * Released as 2.1.99-test11. 191224707baSMartin Mares 192224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 193224707baSMartin Mares 194aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 195aeaca5d3SMartin Mares 196224707baSMartin Mares * Released as 2.1.99-test10. 197224707baSMartin Mares 19863e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 19963e6f2e0SMartin Mares 200043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 201043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 202043ebdeeSMartin Mares 203043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 204043ebdeeSMartin Mares 205aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 206aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 207aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 208aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 209aeaca5d3SMartin Mares 210aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 211aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 212aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 213aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 214aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 215aeaca5d3SMartin Mares 216121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 217121c76c9SMartin Mares 21854e13765SMartin Mares * Released as 2.1.99-test9. 21954e13765SMartin Mares 22054e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 22154e13765SMartin Mares gcc versions when optimizing anyway. 22254e13765SMartin Mares 22354e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 22454e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 22554e13765SMartin Mares 22654e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 22754e13765SMartin Mares 22884d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 22984d437d6SMartin Mares methods and which operations are privileged. 23084d437d6SMartin Mares 23184d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 23284d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 23384d437d6SMartin Mares portions of the configuration space being inaccessible, for example 23484d437d6SMartin Mares due to insufficient access rights. 23584d437d6SMartin Mares 2363b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 2373b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 2383b8bf739SMartin Mares as I haven't seen the spec). 2393b8bf739SMartin Mares 2403b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 2413b8bf739SMartin Mares 24284d437d6SMartin Mares * lspci.c: Removed C++ comments. 24384d437d6SMartin Mares 2443b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 2453b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 2463b8bf739SMartin Mares 2473b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 2483b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 2493b8bf739SMartin Mares list. 2503b8bf739SMartin Mares 251f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 252f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 253f7821e53SMartin Mares access more than that. 254ea4e5f5dSMartin Mares 25546ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 25646ea554dSMartin Mares 2578afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 2588afaab22SMartin Mares 259121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 260121c76c9SMartin Mares 261c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 262c1c2c30eSMartin Mares 263b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 264b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 265b9ca9147SMartin Mares 266c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 267b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 268c1c2c30eSMartin Mares 26926542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 27026542a0bSMartin Mares 27126542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 27226542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 27326542a0bSMartin Mares 2746aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 2756aa54f1bSMartin Mares 276aabb0a92SMartin Mares * Released as 2.1.99-test8. 277aabb0a92SMartin Mares 278f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 279f31412d1SMartin Mares no longer exported to the outside world. 280f31412d1SMartin Mares 281ee7d8384SMartin Mares * README.Windows: Updated. 282ee7d8384SMartin Mares 283ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 284ee7d8384SMartin Mares 285ee7d8384SMartin Mares * win32/config.h: Added. 286ee7d8384SMartin Mares 287ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 288ee7d8384SMartin Mares 289ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 290ee7d8384SMartin Mares C library for use on systems where the default libraries lack 291ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 292ee7d8384SMartin Mares 293ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 294ee7d8384SMartin Mares Alexander Stock. 295ee7d8384SMartin Mares 296489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 297489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 298489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 299489233b4SMartin Mares be gone. 300489233b4SMartin Mares 301489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 302489233b4SMartin Mares 303489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 304489233b4SMartin Mares 305489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 306489233b4SMartin Mares it is included unconditionally in lib/types.h. 307489233b4SMartin Mares 308489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 309489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 310489233b4SMartin Mares from lib/pci.h to lib/types.h. 311489233b4SMartin Mares 312489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 313489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 314489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 315489233b4SMartin Mares 316489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 317489233b4SMartin Mares headers with the kernel a couple of years ago. 318489233b4SMartin Mares 3199bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 3209bb4b4eaSMartin Mares 3216aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 3226aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 3236aa54f1bSMartin Mares 3246aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 3256aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 3266aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 3276aa54f1bSMartin Mares 3286aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 3296aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 3306aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 3316aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 3326aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 3336aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 3346aa54f1bSMartin Mares mapping the regions and doing I/O on them. 3356aa54f1bSMartin Mares 33680e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 33780e6c636SMartin Mares 33880e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 33980e6c636SMartin Mares 340d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 341d6324891SMartin Mares 342d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 343d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 344d6324891SMartin Mares 345ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 346ec25b52dSMartin Mares 347362be683SMartin Mares * Released as 2.1.99-test7. 348362be683SMartin Mares 349ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 350ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 351ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 352ec25b52dSMartin Mares 353ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 354ec25b52dSMartin Mares 355ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 356ec25b52dSMartin Mares 357ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 358ec25b52dSMartin Mares 359ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 360ec25b52dSMartin Mares 361ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 362ec25b52dSMartin Mares 363ec25b52dSMartin Mares * lspci.man: Added -xxxx. 364ec25b52dSMartin Mares 36509817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 36609817437SMartin Mares 367d1fa27ebSMartin Mares * Released as 2.1.99-test6. 368d1fa27ebSMartin Mares 3694d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 3704d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 3714d67aa89SMartin Mares 3724d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 3734d67aa89SMartin Mares failures. 3744d67aa89SMartin Mares 3754d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 3764d67aa89SMartin Mares 3774d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 3784d67aa89SMartin Mares Patch by Matthew Wilcox. 3794d67aa89SMartin Mares 3804d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 3814d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 3824d67aa89SMartin Mares 38309817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 38409817437SMartin Mares report correct errors reported by the libpci instead. 38509817437SMartin Mares 38609817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 38709817437SMartin Mares Better caching of config registers. 38809817437SMartin Mares 38909817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 39009817437SMartin Mares 39109817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 39209817437SMartin Mares just return the appropriate error code. 39309817437SMartin Mares 39409817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 39509817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 39609817437SMartin Mares and of course in the dump reader. 39709817437SMartin Mares 3980d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 3990d656226SMartin Mares 400c0eece92SMartin Mares * Released as 2.1.99-test5. 401c0eece92SMartin Mares 402a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 403a2413560SMartin Mares 404a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 405a2413560SMartin Mares macros. 406a2413560SMartin Mares 407a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 408a2413560SMartin Mares 409a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 410a2413560SMartin Mares 411a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 412a2413560SMartin Mares Stock <[email protected]>. 413a2413560SMartin Mares 414a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 415a2413560SMartin Mares changes to the configure script. 416a2413560SMartin Mares 4170d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 4180d656226SMartin Mares 419138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 420138c0385SMartin Mares 4219f490382SMartin Mares * Released as 2.1.99-test4. 4229f490382SMartin Mares 423cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 424cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 425cce2caacSMartin Mares 426b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 427b569ef09SMartin Mares (show_agp): rate[] could overflow. 428b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 429b569ef09SMartin Mares 430bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 431bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 432bfc4fe7aSMartin Mares by me. 433bfc4fe7aSMartin Mares 434bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 435bfc4fe7aSMartin Mares Again thanks to Maciej. 436bfc4fe7aSMartin Mares 437138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 438138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 439138c0385SMartin Mares 4408fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 4418fc75dbcSMartin Mares 44281abd2a7SMartin Mares * Released as 2.1.99-test3. 44381abd2a7SMartin Mares 4441f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 4451f7c91ccSMartin Mares 4461f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 4471f7c91ccSMartin Mares 44884c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 4491f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 4501f7c91ccSMartin Mares as well. 45184c8d1bbSMartin Mares 45284c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 45384c8d1bbSMartin Mares 45484c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 45584c8d1bbSMartin Mares 45684c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 45784c8d1bbSMartin Mares 45884c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 45984c8d1bbSMartin Mares 46084c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 46184c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 46284c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 46384c8d1bbSMartin Mares 46484c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 46584c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 46684c8d1bbSMartin Mares 46784c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 46884c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 46984c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 47084c8d1bbSMartin Mares 47111f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 47211f7b31bSMartin Mares is not supported by all C libraries. 47311f7b31bSMartin Mares 47411f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 47511f7b31bSMartin Mares full dependecies for the library in the top-level Makefile; hmmm, another 47611f7b31bSMartin Mares thing to rewrite some day). 47711f7b31bSMartin Mares 47811f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 47911f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 48011f7b31bSMartin Mares 48111f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 48211f7b31bSMartin Mares 48311f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 48411f7b31bSMartin Mares of Linux libc moved there. 48511f7b31bSMartin Mares 48611f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 48711f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 48811f7b31bSMartin Mares values and for too large values. 48911f7b31bSMartin Mares 4904284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 4914284af58SMartin Mares package is pretty cross-platform now :) 4924284af58SMartin Mares 4934284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 4944284af58SMartin Mares 495ab12277eSMartin Mares * Released as 2.1.99-test2. 496ab12277eSMartin Mares 497ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 498ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 499ab12277eSMartin Mares 500ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 501ab12277eSMartin Mares making releases including inter-version diffs etc. 502ab12277eSMartin Mares 503ab12277eSMartin Mares * Makefile: Cleaned up. 504ab12277eSMartin Mares 505ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 506ab12277eSMartin Mares this time the version checks should be right. 507ab12277eSMartin Mares 508ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 509ab12277eSMartin Mares 5106d722cd6SMartin Mares * Released as 2.1.99-test1. 5116d722cd6SMartin Mares 512dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 513dd33246aSMartin Mares Remove shadows of the syscall access method which was never 514dd33246aSMartin Mares implemented. 515dd33246aSMartin Mares 51680b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 51780b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 51880b3121aSMartin Mares 5196aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 5206aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 5216aea909aSMartin Mares 5226aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 5236aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 5246aea909aSMartin Mares 5256aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 5266aea909aSMartin Mares 527f701ff47SMartin Mares Merged bug fixes from Debian patches: 528f701ff47SMartin Mares 529f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 530f701ff47SMartin Mares 531f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 532f701ff47SMartin Mares 5332240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 5342240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 535f701ff47SMartin Mares multiple functions. 5362240db8cSMartin Mares 5372240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 5382240db8cSMartin Mares 53945902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 54045902995SMartin Mares for the patches: 54145902995SMartin Mares 54245902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 54345902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 54445902995SMartin Mares to __FreeBSD_version. 54545902995SMartin Mares 54645902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 54745902995SMartin Mares 5488fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 5498fc75dbcSMartin Mares and cleaned up: 5508fc75dbcSMartin Mares 5518fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 5528fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 5538fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 5548fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 5558fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 5568fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 5578fc75dbcSMartin Mares 5589739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 5599739916eSMartin Mares 5609739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 5619739916eSMartin Mares 5629739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 5639739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 5649739916eSMartin Mares use them in all cases. 5659739916eSMartin Mares 5669739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 5679739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 5689739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 5699739916eSMartin Mares directly in pci.h. 5709739916eSMartin Mares 5719739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 5729739916eSMartin Mares 57380459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 57480459c65SMartin Mares 57580459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 57680459c65SMartin Mares 57780459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 57880459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 57980459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 58080459c65SMartin Mares u8 to u32. 58180459c65SMartin Mares 582a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 583a85769a8SMartin Mares 5847dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 5857dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 5867dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 5877dacd9c8SMartin Mares 5887dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 5897dacd9c8SMartin Mares at all places. 5907dacd9c8SMartin Mares 5914063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 5924063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 5934063c31cSMartin Mares 5943fe8a38dSMartin Mares * setpci.c (main): Better error messages. 5953fe8a38dSMartin Mares 5965f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 5975f5b1a7bSMartin Mares 5985f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 5995f5b1a7bSMartin Mares Document the new behaviour. 600b251f40bSMartin Mares 60191e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 60291e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 60391e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 60491e37a49SMartin Mares 6054afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 6064afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 6074afd29d3SMartin Mares a different fix. 6084afd29d3SMartin Mares 609b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 610b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 611b0f1a03bSMartin Mares 612b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 613b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 614b7fd8e19SMartin Mares 61505bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 61605bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 61705bb10a2SMartin Mares 618a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 619a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 620a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 621a832f6f1SMartin Mares for reporting this problem. 622a832f6f1SMartin Mares 623a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 624a85769a8SMartin Mares 625a85769a8SMartin Mares * Makefile: Added some more warnings. 626a85769a8SMartin Mares 627b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 628b7351143SMartin Mares 629b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 630b7351143SMartin Mares 631b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 632b7351143SMartin Mares 6332a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 6342a5d5cf9SMartin Mares 6352a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 6362a5d5cf9SMartin Mares 637d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 638d772ef15SMartin Mares 6391b95f396SMartin Mares * Released as 2.1.11. 6401b95f396SMartin Mares 641c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 642c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 643c83293ebSMartin Mares scattered between the installation rules. The default installation 644c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 645c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 646c83293ebSMartin Mares installations to interfere with the default ones. 647c83293ebSMartin Mares 648c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 649c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 650c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 651c83293ebSMartin Mares has passed since the last version which used it). 652c83293ebSMartin Mares 653e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 654e2875dcdSMartin Mares 6551b95f396SMartin Mares * Added the update-ids utility. 6560138a2a7SMartin Mares 657d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 658d772ef15SMartin Mares probably never be needed. 659d772ef15SMartin Mares 660eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 661eb620239SMartin Mares 662130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 663130090bdSMartin Mares 664eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 665eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 666eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 667eb620239SMartin Mares 668848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 669848b4347SMartin Mares 670579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 671579b19ffSMartin Mares 672579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 673579b19ffSMartin Mares there is no reason to prefer the kernel version. 674579b19ffSMartin Mares 675579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 676579b19ffSMartin Mares 677848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 678848b4347SMartin Mares <[email protected]>. 679848b4347SMartin Mares 680f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 681f0952474SMartin Mares 682f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 683f0952474SMartin Mares 684d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 685d2f666f1SMartin Mares 6869bd44bb0SMartin Mares * Released as 2.1.10. 6879bd44bb0SMartin Mares 688a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 689a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 690a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 691a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 692a33d0eb7SMartin Mares pciids.sf.net. 693a33d0eb7SMartin Mares 694a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 695a33d0eb7SMartin Mares 696a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 697a33d0eb7SMartin Mares 698a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 699a33d0eb7SMartin Mares not in the tarball). 700a33d0eb7SMartin Mares 701d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 702d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 703d2f666f1SMartin Mares a comment only at the start of the line. 704d2f666f1SMartin Mares 705ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 706ee551b73SMartin Mares 70707159913SMartin Mares * README: Rewritten. 70807159913SMartin Mares 709ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 710ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 711ee551b73SMartin Mares Jean Delvare <[email protected]>. 712ee551b73SMartin Mares 713bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 714bc7b1d62SMartin Mares 7155f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 7165f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 7175f5e6f64SMartin Mares 7185f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 7195f5e6f64SMartin Mares 7205f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 7215f5e6f64SMartin Mares 722a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 723a1052f16SMartin Mares 724bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 725bc7b1d62SMartin Mares function 7. 726bc7b1d62SMartin Mares 727bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 728bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 729bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 730bc7b1d62SMartin Mares 731f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 732f793990cSMartin Mares 733ee551b73SMartin Mares * Released as 2.1.9. 734ee551b73SMartin Mares 735f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 736f793990cSMartin Mares (http://pciids.sourceforge.net/). 737f793990cSMartin Mares 7381d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 7391d174e56SMartin Mares 7401d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 7411d174e56SMartin Mares 74265b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 74365b4327eSMartin Mares 74465b4327eSMartin Mares * Makefile (uninstall): Fixed. 74565b4327eSMartin Mares 74665b4327eSMartin Mares * pci.ids: ID updates. 74765b4327eSMartin Mares 7484a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 7494a219d5fSMartin Mares 7504a219d5fSMartin Mares * Released as 2.1.8. 7514a219d5fSMartin Mares 7524a219d5fSMartin Mares * pci.ids: ID updates. 7534a219d5fSMartin Mares 7544a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 7554a219d5fSMartin Mares 7564a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 7574a219d5fSMartin Mares 7584a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 7594a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 7604a219d5fSMartin Mares bogus class info. 7614a219d5fSMartin Mares 76210c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 76310c90662SMartin Mares 76472b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 76572b9b690SMartin Mares 76610c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 76710c90662SMartin Mares 76810c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 76910c90662SMartin Mares 770a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 771a239ade6SMartin Mares 772a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 773a239ade6SMartin Mares 774a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 775a239ade6SMartin Mares 776a239ade6SMartin Mares * pci.ids: Various ID updates. 777a239ade6SMartin Mares 7782c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 7792c83b860SMartin Mares 7802c83b860SMartin Mares * Released as 2.1.7. 7812c83b860SMartin Mares 7822c83b860SMartin Mares * pciutils.spec: Added German description. 7832c83b860SMartin Mares 7842c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 7852c83b860SMartin Mares are the same as device ID and just output subsystem name according to 7862c83b860SMartin Mares device name. 7872c83b860SMartin Mares 7882c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 7892c83b860SMartin Mares 7902c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 7912c83b860SMartin Mares 7922c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 7932c83b860SMartin Mares 7942c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 7952c83b860SMartin Mares "echo -n" if the shell isn't bash. 7962c83b860SMartin Mares 7972c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 7982c83b860SMartin Mares (insert_dev): Avoid returning a void value. 7992c83b860SMartin Mares 8002c83b860SMartin Mares * Makefile: Choose which install utility to use according to 8012c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 8022c83b860SMartin Mares Part of the AIX port. 8032c83b860SMartin Mares 8042c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 8052c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 8062c83b860SMartin Mares 8072c83b860SMartin Mares * pci.ids: Few new ID's. 8082c83b860SMartin Mares 8092c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 8102c83b860SMartin Mares when not compiled by GCC. 8112c83b860SMartin Mares 812c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 813c1a828daSMartin Mares 814c1a828daSMartin Mares * Released as 2.1.6. 815c1a828daSMartin Mares 816c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 817c1a828daSMartin Mares Mayer <[email protected]> and synced the 818c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 819c1a828daSMartin Mares 820e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 821e91dd3abSMartin Mares 822a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 823a80b79a9SMartin Mares the library. 824a80b79a9SMartin Mares 82589984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 82689984232SMartin Mares by Adam Sulmicki. 82789984232SMartin Mares 828e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 829e91dd3abSMartin Mares 83078d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 83178d9c5e2SMartin Mares 83278d9c5e2SMartin Mares * Released as 2.1.5. 83378d9c5e2SMartin Mares 83478d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 83578d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 83678d9c5e2SMartin Mares 83778d9c5e2SMartin Mares * pci.ids: New ID's. 83878d9c5e2SMartin Mares 83978d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 84078d9c5e2SMartin Mares no argument. 84178d9c5e2SMartin Mares 842f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 843f8141ae2SMartin Mares 844f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 845f8141ae2SMartin Mares glibc. 846f8141ae2SMartin Mares 847f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 848f8141ae2SMartin Mares 849f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 850f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 851f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 852f8141ae2SMartin Mares 85359e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 85459e76e8bSMartin Mares 85559e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 85659e76e8bSMartin Mares 85759e76e8bSMartin Mares * Released as version 2.1.4. 85859e76e8bSMartin Mares 8592dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 8602dfd48cdSMartin Mares 8612715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 8622715403fSMartin Mares 86381077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 86481077814SMartin Mares 86581077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 86681077814SMartin Mares 86781077814SMartin Mares * pci.ids: New ID's. 86881077814SMartin Mares 8692dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 8702dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 8712dfd48cdSMartin Mares 8725a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 8735a258860SMartin Mares 8745a258860SMartin Mares * Released as version 2.1.3. 8755a258860SMartin Mares 8765a258860SMartin Mares * pci.ids: New ID's. 8775a258860SMartin Mares 8785a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 8795a258860SMartin Mares 8805a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 8815a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 8825a258860SMartin Mares 8830c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 8840c047bbeSMartin Mares 8850c047bbeSMartin Mares * Released as version 2.1.2. 8860c047bbeSMartin Mares 8870c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 8880c047bbeSMartin Mares 88933bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 89033bc28a5SMartin Mares 89139231205SMartin Mares * Released as version 2.1.1. 89239231205SMartin Mares 89333bc28a5SMartin Mares * pci.ids: Several new ID's. 89433bc28a5SMartin Mares 89533bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 89633bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 89733bc28a5SMartin Mares by Petr Soucek <[email protected]>. 89833bc28a5SMartin Mares 8998d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 9008d047897SMartin Mares 9018d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 9028d047897SMartin Mares ID list, show it. 9038d047897SMartin Mares 9046afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 9056afc6538SMartin Mares 9066afc6538SMartin Mares * Released as version 2.1. 9076afc6538SMartin Mares 9086afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 9096afc6538SMartin Mares lots of contributed entries. 9106afc6538SMartin Mares 9118f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 9128f756113SMartin Mares 9138f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 9148f756113SMartin Mares 915d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 916d4798a32SMartin Mares 917d4798a32SMartin Mares * setpci.man: Better example. 918d4798a32SMartin Mares 919d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 920d4798a32SMartin Mares 921d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 922d4798a32SMartin Mares 923d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 924d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 925d4798a32SMartin Mares New ID's, as usually. 926d4798a32SMartin Mares 927e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 928e306e911SMartin Mares 929e306e911SMartin Mares * pci.ids: New ID's. As usually. 930e306e911SMartin Mares 931e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 932e306e911SMartin Mares unless we're vvvery verbose. 933e306e911SMartin Mares 934e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 935e306e911SMartin Mares 936e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 937e306e911SMartin Mares 938e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 939e64a576cSMartin Mares 940e64a576cSMartin Mares * pci.ids: New ID's. Again. 941e64a576cSMartin Mares 942c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 943c36c0862SMartin Mares 944c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 945c36c0862SMartin Mares due to bus-centric mode being enabled). 946c36c0862SMartin Mares 9471ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 9481ca42433SMartin Mares 949168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 950168b4f46SMartin Mares 951168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 952168b4f46SMartin Mares 953168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 954168b4f46SMartin Mares 955168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 956168b4f46SMartin Mares 957168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 958168b4f46SMartin Mares incorrectly set to device ID. 959168b4f46SMartin Mares 960168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 961168b4f46SMartin Mares 962168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 963168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 964168b4f46SMartin Mares as GNU date does. Use sed instead. 965168b4f46SMartin Mares (install): Use `-c' when calling install. 966168b4f46SMartin Mares 967168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 968168b4f46SMartin Mares by Jari Kirma <[email protected]>. 969168b4f46SMartin Mares 970bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 971bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 972bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 973bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 974bc6346dfSMartin Mares with lseek/read/write. 975bc6346dfSMartin Mares 9761ca42433SMartin Mares * pci.ids: Some more IDs. 9771ca42433SMartin Mares 9781ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 9791ca42433SMartin Mares 9801ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 9811ca42433SMartin Mares by Tim Waugh <[email protected]>. 9821ca42433SMartin Mares 983e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 984e95c8373SMartin Mares 985e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 986e95c8373SMartin Mares 987e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 988e95c8373SMartin Mares HAVE_LONG_ADDRESS. 989e95c8373SMartin Mares 990e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 991e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 992e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 993e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 994e95c8373SMartin Mares on Alpha. 995e95c8373SMartin Mares 996e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 997e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 998e95c8373SMartin Mares (show_caps): Seperated capability dumping, because it should 999e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1000e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 1001e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 1002e95c8373SMartin Mares is already defined differently in htype2. 1003e95c8373SMartin Mares 1004e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1005e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1006e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1007e95c8373SMartin Mares 1008e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1009e95c8373SMartin Mares (required by the PCI 2.2 specs). 1010e95c8373SMartin Mares 1011e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1012e95c8373SMartin Mares 1013e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1014e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1015e95c8373SMartin Mares ROMs et cetera. 1016e95c8373SMartin Mares 1017e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1018e95c8373SMartin Mares of the structure. 1019e95c8373SMartin Mares 1020e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1021e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1022e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1023e95c8373SMartin Mares 102482ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 102582ce97c9SMartin Mares 102682ce97c9SMartin Mares * Makefile: 102782ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 102882ce97c9SMartin Mares * pci.ids: 102982ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 103082ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 103182ce97c9SMartin Mares to determine the revision from the device ID. 103282ce97c9SMartin Mares - Same for the Tseng ET4000. 103382ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 103482ce97c9SMartin Mares - Removed some unnecessary strings 103582ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 103682ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 103782ce97c9SMartin Mares - Lots of other new vendors & devices 103882ce97c9SMartin Mares - Other additional small cleanups. 103982ce97c9SMartin Mares 10407bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 10417bed2d83SMartin Mares 10427bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 10437bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 10447bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 10457bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 10467bed2d83SMartin Mares 10475ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 10485ba3a475SMartin Mares 10495ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 10505ba3a475SMartin Mares <[email protected]>. The command register was displayed 10515ba3a475SMartin Mares incorrectly. 10525ba3a475SMartin Mares 10535ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 10545ba3a475SMartin Mares 10555ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 10565ba3a475SMartin Mares numbers if not supplied by the libc. 10575ba3a475SMartin Mares 105855c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 105955c815b5SMartin Mares 106055c815b5SMartin Mares * Released the whole package as version 2.0. 106155c815b5SMartin Mares 106255c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 106355c815b5SMartin Mares 106455c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 106555c815b5SMartin Mares on the linux-pci list. 106655c815b5SMartin Mares 1067dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1068dec16943SMartin Mares 1069dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 1070dec16943SMartin Mares * lib/header.h: Ditto. 1071dec16943SMartin Mares 1072dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 1073dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 1074dec16943SMartin Mares 1075e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1076e33c9c7aSMartin Mares 1077e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1078e33c9c7aSMartin Mares <[email protected]>. 1079e33c9c7aSMartin Mares 1080e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1081e33c9c7aSMartin Mares 1082f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1083f3395cc5SMartin Mares 1084f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1085f3395cc5SMartin Mares as a multi-function device, because several single-function devices 1086f3395cc5SMartin Mares don't decode the function bits at all. 1087f3395cc5SMartin Mares 1088f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1089f3395cc5SMartin Mares 1090f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 1091f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 1092f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 1093f3395cc5SMartin Mares 1094f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1095f3395cc5SMartin Mares 1096f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1097f3395cc5SMartin Mares 1098f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1099f3395cc5SMartin Mares or 64-bit depending on CPU. 1100f3395cc5SMartin Mares 1101f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1102f3395cc5SMartin Mares according to bus address width. 1103f3395cc5SMartin Mares 11041c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 11051c31d620SMartin Mares 11061c31d620SMartin Mares * Released as 1.99.4. 11071c31d620SMartin Mares 11081c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 11091c31d620SMartin Mares registers and PCI Power Management registers (the latter 11101c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 11111c31d620SMartin Mares since I don't have the PCI Power Management document). 11121c31d620SMartin Mares 11131c31d620SMartin Mares * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 11141c31d620SMartin Mares by FLAG macro. 11151c31d620SMartin Mares 11161c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 11171c31d620SMartin Mares 11181812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 11191812a795SMartin Mares 11201812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 11211812a795SMartin Mares 11221812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 11231812a795SMartin Mares (show): Split to show() and show_device(). 11241812a795SMartin Mares 11251812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 11261812a795SMartin Mares set it to the real access method afterwards. 11271812a795SMartin Mares 11281812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 11291812a795SMartin Mares 11301812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 11311812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 11321812a795SMartin Mares 1133f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1134f6c86928SMartin Mares 1135f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 1136f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 1137f6c86928SMartin Mares 1138f6c86928SMartin Mares * Released as 1.99.3. 1139f6c86928SMartin Mares 1140b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1141b5137411SMartin Mares 1142d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 1143d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 1144d6b297d0SMartin Mares functions and device IDs), which is not going to happen 1145d6b297d0SMartin Mares before 2.3, we'll use our own definiton of the header. 1146d6b297d0SMartin Mares 1147b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 1148b5137411SMartin Mares 1149b5137411SMartin Mares * lspci.c (show_htype0): Display capability lists whereever 1150b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 1151b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 1152b5137411SMartin Mares portion of the configuration space and are thus available 1153b5137411SMartin Mares only to root unless you read a dump. 1154b5137411SMartin Mares 1155b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 1156b5137411SMartin Mares 1157b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 1158b5137411SMartin Mares 1159b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 1160b5137411SMartin Mares 116181ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 116281ce358dSMartin Mares 116381ce358dSMartin Mares * pci.ids: Added few devices. 116481ce358dSMartin Mares 1165727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1166727ce158SMartin Mares 1167727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 1168727ce158SMartin Mares to the configure script and also substituted to man pages. 1169727ce158SMartin Mares 1170727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1171727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 1172727ce158SMartin Mares 1173727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1174727ce158SMartin Mares 1175727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 1176727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 1177727ce158SMartin Mares 1178727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1179727ce158SMartin Mares whenever available. 1180727ce158SMartin Mares 1181727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 1182727ce158SMartin Mares read/write and real errors. 1183727ce158SMartin Mares 1184727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1185727ce158SMartin Mares libpci respects buscentric mode automatically. 1186727ce158SMartin Mares 1187727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1188727ce158SMartin Mares bytes of header (the whole standard part). 1189727ce158SMartin Mares 1190727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 1191727ce158SMartin Mares PCI access debugging option here. 1192727ce158SMartin Mares 1193727ce158SMartin Mares * Released as 1.99.2. 1194727ce158SMartin Mares 1195727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1196727ce158SMartin Mares 1197727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 1198727ce158SMartin Mares 1199727ce158SMartin Mares * Removed few unused variables. 1200727ce158SMartin Mares 1201727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1202727ce158SMartin Mares 1203727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 1204727ce158SMartin Mares here. This includes parsing of libpci-related options. 1205727ce158SMartin Mares 1206727ce158SMartin Mares * More library tweaks. 1207727ce158SMartin Mares 1208727ce158SMartin Mares * filter.c, names.c: Moved to library. 1209727ce158SMartin Mares 1210727ce158SMartin Mares * setpci: Rewritten to use the library. 1211727ce158SMartin Mares 1212727ce158SMartin Mares * Released as 1.99.1. 1213727ce158SMartin Mares 1214727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 1215727ce158SMartin Mares 1216727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 1217727ce158SMartin Mares bytes of config space to get full standard header. 1218727ce158SMartin Mares 1219727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 1220727ce158SMartin Mares 1221727ce158SMartin Mares * Started the "New Generation" branch and introduced the 1222727ce158SMartin Mares PCI library. 1223727ce158SMartin Mares 1224727ce158SMartin Mares * lspci: Rewritten to use the library. 1225727ce158SMartin Mares 12266ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 12276ece6bc6SMartin Mares 12286ece6bc6SMartin Mares * Released as version 1.10. 12296ece6bc6SMartin Mares 12306ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 12316ece6bc6SMartin Mares 12326ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 12336ece6bc6SMartin Mares Dag Wieers <[email protected]>. 12346ece6bc6SMartin Mares 12351212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 12361212dd6dSMartin Mares 12371212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 12381212dd6dSMartin Mares 1239d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 1240d38471fdSMartin Mares 1241d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 1242d38471fdSMartin Mares 1243d38471fdSMartin Mares * Released as version 1.09. 1244d38471fdSMartin Mares 1245371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 1246371f605bSMartin Mares 1247371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 1248371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 1249371f605bSMartin Mares 125010be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 125110be47abSMartin Mares 125210be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 125310be47abSMartin Mares 1254472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 1255472bd340SMartin Mares 1256472bd340SMartin Mares * Released as version 1.08. 1257472bd340SMartin Mares 1258472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 1259472bd340SMartin Mares 1260472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 1261472bd340SMartin Mares 1262472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 1263472bd340SMartin Mares it's impossible to crash the machine by single typo. 1264472bd340SMartin Mares 1265472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 1266472bd340SMartin Mares 1267072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 1268072c77e5SMartin Mares 1269072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 1270072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 1271072c77e5SMartin Mares for an idea. 1272072c77e5SMartin Mares 1273b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 1274b7554856SMartin Mares 1275b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 1276b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 1277b7554856SMartin Mares 1278ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 1279ce503b7fSMartin Mares 1280ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 1281ce503b7fSMartin Mares (show_machine): Print subsystem ID. 1282ce503b7fSMartin Mares 1283ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 1284ce503b7fSMartin Mares 1285ce503b7fSMartin Mares * Released as version 1.07. 1286ce503b7fSMartin Mares 128796e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 128896e4f295SMartin Mares 128996e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 129096e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 129196e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 129296e4f295SMartin Mares 129396e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 129496e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 129596e4f295SMartin Mares full description of all header fields supported by the chip. 129696e4f295SMartin Mares 12976ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 12986ae3650aSMartin Mares 1299304f9a0bSMartin Mares * Released as 1.06. 1300304f9a0bSMartin Mares 13016ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 13026ae3650aSMartin Mares 13036ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 13046ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 13056ae3650aSMartin Mares kernels). Ugly. 13066ae3650aSMartin Mares 13076ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 13086ae3650aSMartin Mares 13094b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 13104b88a6b8SMartin Mares 13114b88a6b8SMartin Mares * Released as 1.05. 13124b88a6b8SMartin Mares 13134b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 13144b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 13154b88a6b8SMartin Mares 13164b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 13174b88a6b8SMartin Mares 13184b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 13194b88a6b8SMartin Mares <[email protected]> for reporting this. 13204b88a6b8SMartin Mares 13214b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 13224b88a6b8SMartin Mares 13234b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 13244b88a6b8SMartin Mares 13254b88a6b8SMartin Mares * Released as 1.04. 13264b88a6b8SMartin Mares 13274b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 13284b88a6b8SMartin Mares 13294b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 13304b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 13314b88a6b8SMartin Mares for bug report. 13324b88a6b8SMartin Mares 13339b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 13349b306998SMartin Mares 13359b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 13369b306998SMartin Mares 1337b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 1338b372672fSMartin Mares 1339b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 1340b372672fSMartin Mares 1341b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 1342b2c9b373SMartin Mares 1343b372672fSMartin Mares * Released as 1.03. 1344b372672fSMartin Mares 1345b2c9b373SMartin Mares * setpci.8: Written. 1346b2c9b373SMartin Mares 1347b2c9b373SMartin Mares * setpci.c: Finished. 1348b2c9b373SMartin Mares 1349b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 1350b2c9b373SMartin Mares and print it if not in buscentric mode. 1351b2c9b373SMartin Mares 1352e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 1353e4842ff3SMartin Mares 1354e4842ff3SMartin Mares * setpci.c: Added. 1355e4842ff3SMartin Mares 1356e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 1357e4842ff3SMartin Mares 1358e4842ff3SMartin Mares * lspci.8: Updated the documentation. 1359e4842ff3SMartin Mares 1360e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 1361e4842ff3SMartin Mares 1362e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 1363e4842ff3SMartin Mares 1364008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 1365008407bdSMartin Mares 1366008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 1367008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 1368008407bdSMartin Mares 13690a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 13700a33d0ecSMartin Mares 13710a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 13720a33d0ecSMartin Mares dump. 13730a33d0ecSMartin Mares 13740a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 13750a33d0ecSMartin Mares 13760a33d0ecSMartin Mares * Released as version 1.02. 13770a33d0ecSMartin Mares 13780a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 13790a33d0ecSMartin Mares 13800a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 13810a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 13820a33d0ecSMartin Mares 1383fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 1384fb38eee8SMartin Mares 1385fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 1386fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 1387fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 1388fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 1389fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 1390fb38eee8SMartin Mares 1391fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 1392fb38eee8SMartin Mares 13932f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 13942f48f637SMartin Mares 13952f48f637SMartin Mares * README: Updated. 13962f48f637SMartin Mares 13972f48f637SMartin Mares * lspci.8: Created a man page. 13982f48f637SMartin Mares 13992f48f637SMartin Mares * Releasing as version 1.0. 14002f48f637SMartin Mares 14012f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 14022f48f637SMartin Mares 14032f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 14042f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 14052f48f637SMartin Mares on sparc64. 14062f48f637SMartin Mares 14072f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 14082f48f637SMartin Mares (show_htype2): Stub routine. 14092f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 14102f48f637SMartin Mares upper part of the PCI config space. 1411