1b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 2b2055313SMartin Mares 3*f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 4*f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 5*f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 6*f4ddb8d3SMartin Mares 716e37012SMartin Mares * Added .gitignore files. 816e37012SMartin Mares 9c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 10c7f5314dSMartin Mares 11afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 12afebde01SMartin Mares 13fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 14fd54ccebSMartin Mares 15b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 16b2055313SMartin Mares defined in the pci.ids file. 17b2055313SMartin Mares 184254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 194254d153SMartin Mares 204254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 214254d153SMartin Mares 221c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 231c5cc9b5SMartin Mares 2438a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 2538a9e3c3SMartin Mares 26c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 27c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 28c7ddfa3eSMartin Mares 29248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 30248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 31248a04f8SMartin Mares 32f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 33f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 34f29dcc87SMartin Mares 358eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 368eab3bffSMartin Mares 37d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 38d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 39d305d704SMartin Mares directly. 40d305d704SMartin Mares 419007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 429007a292SMartin Mares the port access state to generic code. 439007a292SMartin Mares 44bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 45bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 46bd20d5b5SMartin Mares 4773750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 4873750606SMartin Mares 49d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 50d71daa45SMartin Mares 511c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 521c5cc9b5SMartin Mares 531c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 541c5cc9b5SMartin Mares 55c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 56c2b144efSMartin Mares 5714d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 5814d4f989SMartin Mares 5914d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 6014d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 6114d4f989SMartin Mares incomplete, though. 6214d4f989SMartin Mares 63c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 64c2b144efSMartin Mares 65c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 66c2b144efSMartin Mares be modified by kernel fixups. 67c2b144efSMartin Mares 68c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 69c2b144efSMartin Mares 70bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 71bc2eed2dSMartin Mares 72bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 73bc2eed2dSMartin Mares for the idea. 74bc2eed2dSMartin Mares 75bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 76bc2eed2dSMartin Mares cleaned up the name selection code. 77bc2eed2dSMartin Mares 78c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 79c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 80c72eeddeSMartin Mares 81c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 82c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 83c72eeddeSMartin Mares 842f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 852f294d4bSMartin Mares 862f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 872f294d4bSMartin Mares 8881afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 8981afa98cSMartin Mares name when printing an error message. 9081afa98cSMartin Mares 910ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 920ac282f2SMartin Mares 930ac282f2SMartin Mares * README: Mention the public GIT tree. 940ac282f2SMartin Mares 950ac282f2SMartin Mares * README: Updated the list of ports. 960ac282f2SMartin Mares 97d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 98d1058e9dSMartin Mares 99d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 100d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 101d1058e9dSMartin Mares 102abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 103abf8d505SMartin Mares 1042ae2d1aeSMartin Mares * Released as 2.2.3. 1052ae2d1aeSMartin Mares 1062ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 1072ae2d1aeSMartin Mares in -m mode. 1082ae2d1aeSMartin Mares 1092ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 1102ae2d1aeSMartin Mares 1111d5cf727SMartin Mares * Released as 2.2.2. 1121d5cf727SMartin Mares 1138a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 1148a830168SMartin Mares 115b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 116b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 117b6359063SMartin Mares the existing FreeBSD interface. 118b6359063SMartin Mares 119abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 120abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 121abf8d505SMartin Mares 1226ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 1236ac70402SMartin Mares 1242a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 1252a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 1262a124daeSMartin Mares forces domain display even there. 1272a124daeSMartin Mares 1286ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 1296ac70402SMartin Mares guaranteed to be stable between lspci versions. 1306ac70402SMartin Mares 1311bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 1321bbdea17SMartin Mares 133af61eb25SMartin Mares * lspci.man: Documented the -D switch. 134af61eb25SMartin Mares 135af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 136af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 137af61eb25SMartin Mares all devices. 138af61eb25SMartin Mares 1397a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 1407a61b93cSMartin Mares 1411bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 1421bbdea17SMartin Mares 1430e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 1440e78ef8aSMartin Mares 1450e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 1460e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 1470e78ef8aSMartin Mares 148e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 149e6859953SMartin Mares 150e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 151e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 152e6859953SMartin Mares 153e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 154e6859953SMartin Mares 155a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 156a99c0d69SMartin Mares 157e4af70c6SMartin Mares * Released as 2.2.1. 158e4af70c6SMartin Mares 159a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 160a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 161a99c0d69SMartin Mares 162f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 163f23fd3fcSMartin Mares 164f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 165f23fd3fcSMartin Mares 16615296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 16715296723SMartin Mares 16815296723SMartin Mares * Released as 2.2.0. 16915296723SMartin Mares 17040b6d93fSMartin Mares * pci.ids: Updated copyright header. 17140b6d93fSMartin Mares 17215296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 17315296723SMartin Mares 64-bit addresses, they are now always supported. 17415296723SMartin Mares 17515296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 17615296723SMartin Mares in bus-centric mode. 17715296723SMartin Mares 17815296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 17915296723SMartin Mares 18015296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 18115296723SMartin Mares are shorter. 18215296723SMartin Mares 183224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 184224707baSMartin Mares 185224707baSMartin Mares * Released as 2.1.99-test11. 186224707baSMartin Mares 187224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 188224707baSMartin Mares 189aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 190aeaca5d3SMartin Mares 191224707baSMartin Mares * Released as 2.1.99-test10. 192224707baSMartin Mares 19363e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 19463e6f2e0SMartin Mares 195043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 196043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 197043ebdeeSMartin Mares 198043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 199043ebdeeSMartin Mares 200aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 201aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 202aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 203aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 204aeaca5d3SMartin Mares 205aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 206aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 207aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 208aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 209aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 210aeaca5d3SMartin Mares 211121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 212121c76c9SMartin Mares 21354e13765SMartin Mares * Released as 2.1.99-test9. 21454e13765SMartin Mares 21554e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 21654e13765SMartin Mares gcc versions when optimizing anyway. 21754e13765SMartin Mares 21854e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 21954e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 22054e13765SMartin Mares 22154e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 22254e13765SMartin Mares 22384d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 22484d437d6SMartin Mares methods and which operations are privileged. 22584d437d6SMartin Mares 22684d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 22784d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 22884d437d6SMartin Mares portions of the configuration space being inaccessible, for example 22984d437d6SMartin Mares due to insufficient access rights. 23084d437d6SMartin Mares 2313b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 2323b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 2333b8bf739SMartin Mares as I haven't seen the spec). 2343b8bf739SMartin Mares 2353b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 2363b8bf739SMartin Mares 23784d437d6SMartin Mares * lspci.c: Removed C++ comments. 23884d437d6SMartin Mares 2393b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 2403b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 2413b8bf739SMartin Mares 2423b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 2433b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 2443b8bf739SMartin Mares list. 2453b8bf739SMartin Mares 246f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 247f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 248f7821e53SMartin Mares access more than that. 249ea4e5f5dSMartin Mares 25046ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 25146ea554dSMartin Mares 2528afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 2538afaab22SMartin Mares 254121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 255121c76c9SMartin Mares 256c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 257c1c2c30eSMartin Mares 258b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 259b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 260b9ca9147SMartin Mares 261c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 262b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 263c1c2c30eSMartin Mares 26426542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 26526542a0bSMartin Mares 26626542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 26726542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 26826542a0bSMartin Mares 2696aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 2706aa54f1bSMartin Mares 271aabb0a92SMartin Mares * Released as 2.1.99-test8. 272aabb0a92SMartin Mares 273f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 274f31412d1SMartin Mares no longer exported to the outside world. 275f31412d1SMartin Mares 276ee7d8384SMartin Mares * README.Windows: Updated. 277ee7d8384SMartin Mares 278ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 279ee7d8384SMartin Mares 280ee7d8384SMartin Mares * win32/config.h: Added. 281ee7d8384SMartin Mares 282ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 283ee7d8384SMartin Mares 284ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 285ee7d8384SMartin Mares C library for use on systems where the default libraries lack 286ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 287ee7d8384SMartin Mares 288ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 289ee7d8384SMartin Mares Alexander Stock. 290ee7d8384SMartin Mares 291489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 292489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 293489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 294489233b4SMartin Mares be gone. 295489233b4SMartin Mares 296489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 297489233b4SMartin Mares 298489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 299489233b4SMartin Mares 300489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 301489233b4SMartin Mares it is included unconditionally in lib/types.h. 302489233b4SMartin Mares 303489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 304489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 305489233b4SMartin Mares from lib/pci.h to lib/types.h. 306489233b4SMartin Mares 307489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 308489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 309489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 310489233b4SMartin Mares 311489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 312489233b4SMartin Mares headers with the kernel a couple of years ago. 313489233b4SMartin Mares 3149bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 3159bb4b4eaSMartin Mares 3166aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 3176aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 3186aa54f1bSMartin Mares 3196aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 3206aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 3216aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 3226aa54f1bSMartin Mares 3236aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 3246aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 3256aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 3266aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 3276aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 3286aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 3296aa54f1bSMartin Mares mapping the regions and doing I/O on them. 3306aa54f1bSMartin Mares 33180e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 33280e6c636SMartin Mares 33380e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 33480e6c636SMartin Mares 335d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 336d6324891SMartin Mares 337d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 338d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 339d6324891SMartin Mares 340ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 341ec25b52dSMartin Mares 342362be683SMartin Mares * Released as 2.1.99-test7. 343362be683SMartin Mares 344ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 345ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 346ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 347ec25b52dSMartin Mares 348ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 349ec25b52dSMartin Mares 350ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 351ec25b52dSMartin Mares 352ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 353ec25b52dSMartin Mares 354ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 355ec25b52dSMartin Mares 356ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 357ec25b52dSMartin Mares 358ec25b52dSMartin Mares * lspci.man: Added -xxxx. 359ec25b52dSMartin Mares 36009817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 36109817437SMartin Mares 362d1fa27ebSMartin Mares * Released as 2.1.99-test6. 363d1fa27ebSMartin Mares 3644d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 3654d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 3664d67aa89SMartin Mares 3674d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 3684d67aa89SMartin Mares failures. 3694d67aa89SMartin Mares 3704d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 3714d67aa89SMartin Mares 3724d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 3734d67aa89SMartin Mares Patch by Matthew Wilcox. 3744d67aa89SMartin Mares 3754d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 3764d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 3774d67aa89SMartin Mares 37809817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 37909817437SMartin Mares report correct errors reported by the libpci instead. 38009817437SMartin Mares 38109817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 38209817437SMartin Mares Better caching of config registers. 38309817437SMartin Mares 38409817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 38509817437SMartin Mares 38609817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 38709817437SMartin Mares just return the appropriate error code. 38809817437SMartin Mares 38909817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 39009817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 39109817437SMartin Mares and of course in the dump reader. 39209817437SMartin Mares 3930d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 3940d656226SMartin Mares 395c0eece92SMartin Mares * Released as 2.1.99-test5. 396c0eece92SMartin Mares 397a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 398a2413560SMartin Mares 399a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 400a2413560SMartin Mares macros. 401a2413560SMartin Mares 402a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 403a2413560SMartin Mares 404a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 405a2413560SMartin Mares 406a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 407a2413560SMartin Mares Stock <[email protected]>. 408a2413560SMartin Mares 409a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 410a2413560SMartin Mares changes to the configure script. 411a2413560SMartin Mares 4120d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 4130d656226SMartin Mares 414138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 415138c0385SMartin Mares 4169f490382SMartin Mares * Released as 2.1.99-test4. 4179f490382SMartin Mares 418cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 419cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 420cce2caacSMartin Mares 421b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 422b569ef09SMartin Mares (show_agp): rate[] could overflow. 423b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 424b569ef09SMartin Mares 425bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 426bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 427bfc4fe7aSMartin Mares by me. 428bfc4fe7aSMartin Mares 429bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 430bfc4fe7aSMartin Mares Again thanks to Maciej. 431bfc4fe7aSMartin Mares 432138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 433138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 434138c0385SMartin Mares 4358fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 4368fc75dbcSMartin Mares 43781abd2a7SMartin Mares * Released as 2.1.99-test3. 43881abd2a7SMartin Mares 4391f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 4401f7c91ccSMartin Mares 4411f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 4421f7c91ccSMartin Mares 44384c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 4441f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 4451f7c91ccSMartin Mares as well. 44684c8d1bbSMartin Mares 44784c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 44884c8d1bbSMartin Mares 44984c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 45084c8d1bbSMartin Mares 45184c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 45284c8d1bbSMartin Mares 45384c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 45484c8d1bbSMartin Mares 45584c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 45684c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 45784c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 45884c8d1bbSMartin Mares 45984c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 46084c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 46184c8d1bbSMartin Mares 46284c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 46384c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 46484c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 46584c8d1bbSMartin Mares 46611f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 46711f7b31bSMartin Mares is not supported by all C libraries. 46811f7b31bSMartin Mares 46911f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 47011f7b31bSMartin Mares full dependecies for the library in the top-level Makefile; hmmm, another 47111f7b31bSMartin Mares thing to rewrite some day). 47211f7b31bSMartin Mares 47311f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 47411f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 47511f7b31bSMartin Mares 47611f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 47711f7b31bSMartin Mares 47811f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 47911f7b31bSMartin Mares of Linux libc moved there. 48011f7b31bSMartin Mares 48111f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 48211f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 48311f7b31bSMartin Mares values and for too large values. 48411f7b31bSMartin Mares 4854284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 4864284af58SMartin Mares package is pretty cross-platform now :) 4874284af58SMartin Mares 4884284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 4894284af58SMartin Mares 490ab12277eSMartin Mares * Released as 2.1.99-test2. 491ab12277eSMartin Mares 492ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 493ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 494ab12277eSMartin Mares 495ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 496ab12277eSMartin Mares making releases including inter-version diffs etc. 497ab12277eSMartin Mares 498ab12277eSMartin Mares * Makefile: Cleaned up. 499ab12277eSMartin Mares 500ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 501ab12277eSMartin Mares this time the version checks should be right. 502ab12277eSMartin Mares 503ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 504ab12277eSMartin Mares 5056d722cd6SMartin Mares * Released as 2.1.99-test1. 5066d722cd6SMartin Mares 507dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 508dd33246aSMartin Mares Remove shadows of the syscall access method which was never 509dd33246aSMartin Mares implemented. 510dd33246aSMartin Mares 51180b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 51280b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 51380b3121aSMartin Mares 5146aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 5156aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 5166aea909aSMartin Mares 5176aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 5186aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 5196aea909aSMartin Mares 5206aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 5216aea909aSMartin Mares 522f701ff47SMartin Mares Merged bug fixes from Debian patches: 523f701ff47SMartin Mares 524f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 525f701ff47SMartin Mares 526f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 527f701ff47SMartin Mares 5282240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 5292240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 530f701ff47SMartin Mares multiple functions. 5312240db8cSMartin Mares 5322240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 5332240db8cSMartin Mares 53445902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 53545902995SMartin Mares for the patches: 53645902995SMartin Mares 53745902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 53845902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 53945902995SMartin Mares to __FreeBSD_version. 54045902995SMartin Mares 54145902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 54245902995SMartin Mares 5438fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 5448fc75dbcSMartin Mares and cleaned up: 5458fc75dbcSMartin Mares 5468fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 5478fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 5488fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 5498fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 5508fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 5518fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 5528fc75dbcSMartin Mares 5539739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 5549739916eSMartin Mares 5559739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 5569739916eSMartin Mares 5579739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 5589739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 5599739916eSMartin Mares use them in all cases. 5609739916eSMartin Mares 5619739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 5629739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 5639739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 5649739916eSMartin Mares directly in pci.h. 5659739916eSMartin Mares 5669739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 5679739916eSMartin Mares 56880459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 56980459c65SMartin Mares 57080459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 57180459c65SMartin Mares 57280459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 57380459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 57480459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 57580459c65SMartin Mares u8 to u32. 57680459c65SMartin Mares 577a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 578a85769a8SMartin Mares 5797dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 5807dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 5817dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 5827dacd9c8SMartin Mares 5837dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 5847dacd9c8SMartin Mares at all places. 5857dacd9c8SMartin Mares 5864063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 5874063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 5884063c31cSMartin Mares 5893fe8a38dSMartin Mares * setpci.c (main): Better error messages. 5903fe8a38dSMartin Mares 5915f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 5925f5b1a7bSMartin Mares 5935f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 5945f5b1a7bSMartin Mares Document the new behaviour. 595b251f40bSMartin Mares 59691e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 59791e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 59891e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 59991e37a49SMartin Mares 6004afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 6014afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 6024afd29d3SMartin Mares a different fix. 6034afd29d3SMartin Mares 604b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 605b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 606b0f1a03bSMartin Mares 607b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 608b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 609b7fd8e19SMartin Mares 61005bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 61105bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 61205bb10a2SMartin Mares 613a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 614a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 615a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 616a832f6f1SMartin Mares for reporting this problem. 617a832f6f1SMartin Mares 618a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 619a85769a8SMartin Mares 620a85769a8SMartin Mares * Makefile: Added some more warnings. 621a85769a8SMartin Mares 622b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 623b7351143SMartin Mares 624b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 625b7351143SMartin Mares 626b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 627b7351143SMartin Mares 6282a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 6292a5d5cf9SMartin Mares 6302a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 6312a5d5cf9SMartin Mares 632d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 633d772ef15SMartin Mares 6341b95f396SMartin Mares * Released as 2.1.11. 6351b95f396SMartin Mares 636c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 637c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 638c83293ebSMartin Mares scattered between the installation rules. The default installation 639c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 640c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 641c83293ebSMartin Mares installations to interfere with the default ones. 642c83293ebSMartin Mares 643c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 644c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 645c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 646c83293ebSMartin Mares has passed since the last version which used it). 647c83293ebSMartin Mares 648e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 649e2875dcdSMartin Mares 6501b95f396SMartin Mares * Added the update-ids utility. 6510138a2a7SMartin Mares 652d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 653d772ef15SMartin Mares probably never be needed. 654d772ef15SMartin Mares 655eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 656eb620239SMartin Mares 657130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 658130090bdSMartin Mares 659eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 660eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 661eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 662eb620239SMartin Mares 663848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 664848b4347SMartin Mares 665579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 666579b19ffSMartin Mares 667579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 668579b19ffSMartin Mares there is no reason to prefer the kernel version. 669579b19ffSMartin Mares 670579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 671579b19ffSMartin Mares 672848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 673848b4347SMartin Mares <[email protected]>. 674848b4347SMartin Mares 675f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 676f0952474SMartin Mares 677f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 678f0952474SMartin Mares 679d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 680d2f666f1SMartin Mares 6819bd44bb0SMartin Mares * Released as 2.1.10. 6829bd44bb0SMartin Mares 683a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 684a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 685a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 686a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 687a33d0eb7SMartin Mares pciids.sf.net. 688a33d0eb7SMartin Mares 689a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 690a33d0eb7SMartin Mares 691a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 692a33d0eb7SMartin Mares 693a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 694a33d0eb7SMartin Mares not in the tarball). 695a33d0eb7SMartin Mares 696d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 697d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 698d2f666f1SMartin Mares a comment only at the start of the line. 699d2f666f1SMartin Mares 700ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 701ee551b73SMartin Mares 70207159913SMartin Mares * README: Rewritten. 70307159913SMartin Mares 704ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 705ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 706ee551b73SMartin Mares Jean Delvare <[email protected]>. 707ee551b73SMartin Mares 708bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 709bc7b1d62SMartin Mares 7105f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 7115f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 7125f5e6f64SMartin Mares 7135f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 7145f5e6f64SMartin Mares 7155f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 7165f5e6f64SMartin Mares 717a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 718a1052f16SMartin Mares 719bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 720bc7b1d62SMartin Mares function 7. 721bc7b1d62SMartin Mares 722bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 723bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 724bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 725bc7b1d62SMartin Mares 726f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 727f793990cSMartin Mares 728ee551b73SMartin Mares * Released as 2.1.9. 729ee551b73SMartin Mares 730f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 731f793990cSMartin Mares (http://pciids.sourceforge.net/). 732f793990cSMartin Mares 7331d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 7341d174e56SMartin Mares 7351d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 7361d174e56SMartin Mares 73765b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 73865b4327eSMartin Mares 73965b4327eSMartin Mares * Makefile (uninstall): Fixed. 74065b4327eSMartin Mares 74165b4327eSMartin Mares * pci.ids: ID updates. 74265b4327eSMartin Mares 7434a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 7444a219d5fSMartin Mares 7454a219d5fSMartin Mares * Released as 2.1.8. 7464a219d5fSMartin Mares 7474a219d5fSMartin Mares * pci.ids: ID updates. 7484a219d5fSMartin Mares 7494a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 7504a219d5fSMartin Mares 7514a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 7524a219d5fSMartin Mares 7534a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 7544a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 7554a219d5fSMartin Mares bogus class info. 7564a219d5fSMartin Mares 75710c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 75810c90662SMartin Mares 75972b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 76072b9b690SMartin Mares 76110c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 76210c90662SMartin Mares 76310c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 76410c90662SMartin Mares 765a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 766a239ade6SMartin Mares 767a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 768a239ade6SMartin Mares 769a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 770a239ade6SMartin Mares 771a239ade6SMartin Mares * pci.ids: Various ID updates. 772a239ade6SMartin Mares 7732c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 7742c83b860SMartin Mares 7752c83b860SMartin Mares * Released as 2.1.7. 7762c83b860SMartin Mares 7772c83b860SMartin Mares * pciutils.spec: Added German description. 7782c83b860SMartin Mares 7792c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 7802c83b860SMartin Mares are the same as device ID and just output subsystem name according to 7812c83b860SMartin Mares device name. 7822c83b860SMartin Mares 7832c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 7842c83b860SMartin Mares 7852c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 7862c83b860SMartin Mares 7872c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 7882c83b860SMartin Mares 7892c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 7902c83b860SMartin Mares "echo -n" if the shell isn't bash. 7912c83b860SMartin Mares 7922c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 7932c83b860SMartin Mares (insert_dev): Avoid returning a void value. 7942c83b860SMartin Mares 7952c83b860SMartin Mares * Makefile: Choose which install utility to use according to 7962c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 7972c83b860SMartin Mares Part of the AIX port. 7982c83b860SMartin Mares 7992c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 8002c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 8012c83b860SMartin Mares 8022c83b860SMartin Mares * pci.ids: Few new ID's. 8032c83b860SMartin Mares 8042c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 8052c83b860SMartin Mares when not compiled by GCC. 8062c83b860SMartin Mares 807c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 808c1a828daSMartin Mares 809c1a828daSMartin Mares * Released as 2.1.6. 810c1a828daSMartin Mares 811c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 812c1a828daSMartin Mares Mayer <[email protected]> and synced the 813c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 814c1a828daSMartin Mares 815e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 816e91dd3abSMartin Mares 817a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 818a80b79a9SMartin Mares the library. 819a80b79a9SMartin Mares 82089984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 82189984232SMartin Mares by Adam Sulmicki. 82289984232SMartin Mares 823e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 824e91dd3abSMartin Mares 82578d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 82678d9c5e2SMartin Mares 82778d9c5e2SMartin Mares * Released as 2.1.5. 82878d9c5e2SMartin Mares 82978d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 83078d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 83178d9c5e2SMartin Mares 83278d9c5e2SMartin Mares * pci.ids: New ID's. 83378d9c5e2SMartin Mares 83478d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 83578d9c5e2SMartin Mares no argument. 83678d9c5e2SMartin Mares 837f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 838f8141ae2SMartin Mares 839f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 840f8141ae2SMartin Mares glibc. 841f8141ae2SMartin Mares 842f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 843f8141ae2SMartin Mares 844f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 845f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 846f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 847f8141ae2SMartin Mares 84859e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 84959e76e8bSMartin Mares 85059e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 85159e76e8bSMartin Mares 85259e76e8bSMartin Mares * Released as version 2.1.4. 85359e76e8bSMartin Mares 8542dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 8552dfd48cdSMartin Mares 8562715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 8572715403fSMartin Mares 85881077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 85981077814SMartin Mares 86081077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 86181077814SMartin Mares 86281077814SMartin Mares * pci.ids: New ID's. 86381077814SMartin Mares 8642dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 8652dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 8662dfd48cdSMartin Mares 8675a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 8685a258860SMartin Mares 8695a258860SMartin Mares * Released as version 2.1.3. 8705a258860SMartin Mares 8715a258860SMartin Mares * pci.ids: New ID's. 8725a258860SMartin Mares 8735a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 8745a258860SMartin Mares 8755a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 8765a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 8775a258860SMartin Mares 8780c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 8790c047bbeSMartin Mares 8800c047bbeSMartin Mares * Released as version 2.1.2. 8810c047bbeSMartin Mares 8820c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 8830c047bbeSMartin Mares 88433bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 88533bc28a5SMartin Mares 88639231205SMartin Mares * Released as version 2.1.1. 88739231205SMartin Mares 88833bc28a5SMartin Mares * pci.ids: Several new ID's. 88933bc28a5SMartin Mares 89033bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 89133bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 89233bc28a5SMartin Mares by Petr Soucek <[email protected]>. 89333bc28a5SMartin Mares 8948d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 8958d047897SMartin Mares 8968d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 8978d047897SMartin Mares ID list, show it. 8988d047897SMartin Mares 8996afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 9006afc6538SMartin Mares 9016afc6538SMartin Mares * Released as version 2.1. 9026afc6538SMartin Mares 9036afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 9046afc6538SMartin Mares lots of contributed entries. 9056afc6538SMartin Mares 9068f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 9078f756113SMartin Mares 9088f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 9098f756113SMartin Mares 910d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 911d4798a32SMartin Mares 912d4798a32SMartin Mares * setpci.man: Better example. 913d4798a32SMartin Mares 914d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 915d4798a32SMartin Mares 916d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 917d4798a32SMartin Mares 918d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 919d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 920d4798a32SMartin Mares New ID's, as usually. 921d4798a32SMartin Mares 922e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 923e306e911SMartin Mares 924e306e911SMartin Mares * pci.ids: New ID's. As usually. 925e306e911SMartin Mares 926e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 927e306e911SMartin Mares unless we're vvvery verbose. 928e306e911SMartin Mares 929e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 930e306e911SMartin Mares 931e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 932e306e911SMartin Mares 933e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 934e64a576cSMartin Mares 935e64a576cSMartin Mares * pci.ids: New ID's. Again. 936e64a576cSMartin Mares 937c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 938c36c0862SMartin Mares 939c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 940c36c0862SMartin Mares due to bus-centric mode being enabled). 941c36c0862SMartin Mares 9421ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 9431ca42433SMartin Mares 944168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 945168b4f46SMartin Mares 946168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 947168b4f46SMartin Mares 948168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 949168b4f46SMartin Mares 950168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 951168b4f46SMartin Mares 952168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 953168b4f46SMartin Mares incorrectly set to device ID. 954168b4f46SMartin Mares 955168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 956168b4f46SMartin Mares 957168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 958168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 959168b4f46SMartin Mares as GNU date does. Use sed instead. 960168b4f46SMartin Mares (install): Use `-c' when calling install. 961168b4f46SMartin Mares 962168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 963168b4f46SMartin Mares by Jari Kirma <[email protected]>. 964168b4f46SMartin Mares 965bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 966bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 967bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 968bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 969bc6346dfSMartin Mares with lseek/read/write. 970bc6346dfSMartin Mares 9711ca42433SMartin Mares * pci.ids: Some more IDs. 9721ca42433SMartin Mares 9731ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 9741ca42433SMartin Mares 9751ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 9761ca42433SMartin Mares by Tim Waugh <[email protected]>. 9771ca42433SMartin Mares 978e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 979e95c8373SMartin Mares 980e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 981e95c8373SMartin Mares 982e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 983e95c8373SMartin Mares HAVE_LONG_ADDRESS. 984e95c8373SMartin Mares 985e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 986e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 987e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 988e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 989e95c8373SMartin Mares on Alpha. 990e95c8373SMartin Mares 991e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 992e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 993e95c8373SMartin Mares (show_caps): Seperated capability dumping, because it should 994e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 995e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 996e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 997e95c8373SMartin Mares is already defined differently in htype2. 998e95c8373SMartin Mares 999e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1000e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1001e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1002e95c8373SMartin Mares 1003e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1004e95c8373SMartin Mares (required by the PCI 2.2 specs). 1005e95c8373SMartin Mares 1006e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1007e95c8373SMartin Mares 1008e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1009e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1010e95c8373SMartin Mares ROMs et cetera. 1011e95c8373SMartin Mares 1012e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1013e95c8373SMartin Mares of the structure. 1014e95c8373SMartin Mares 1015e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1016e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1017e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1018e95c8373SMartin Mares 101982ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 102082ce97c9SMartin Mares 102182ce97c9SMartin Mares * Makefile: 102282ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 102382ce97c9SMartin Mares * pci.ids: 102482ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 102582ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 102682ce97c9SMartin Mares to determine the revision from the device ID. 102782ce97c9SMartin Mares - Same for the Tseng ET4000. 102882ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 102982ce97c9SMartin Mares - Removed some unnecessary strings 103082ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 103182ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 103282ce97c9SMartin Mares - Lots of other new vendors & devices 103382ce97c9SMartin Mares - Other additional small cleanups. 103482ce97c9SMartin Mares 10357bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 10367bed2d83SMartin Mares 10377bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 10387bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 10397bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 10407bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 10417bed2d83SMartin Mares 10425ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 10435ba3a475SMartin Mares 10445ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 10455ba3a475SMartin Mares <[email protected]>. The command register was displayed 10465ba3a475SMartin Mares incorrectly. 10475ba3a475SMartin Mares 10485ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 10495ba3a475SMartin Mares 10505ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 10515ba3a475SMartin Mares numbers if not supplied by the libc. 10525ba3a475SMartin Mares 105355c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 105455c815b5SMartin Mares 105555c815b5SMartin Mares * Released the whole package as version 2.0. 105655c815b5SMartin Mares 105755c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 105855c815b5SMartin Mares 105955c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 106055c815b5SMartin Mares on the linux-pci list. 106155c815b5SMartin Mares 1062dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1063dec16943SMartin Mares 1064dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 1065dec16943SMartin Mares * lib/header.h: Ditto. 1066dec16943SMartin Mares 1067dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 1068dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 1069dec16943SMartin Mares 1070e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1071e33c9c7aSMartin Mares 1072e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1073e33c9c7aSMartin Mares <[email protected]>. 1074e33c9c7aSMartin Mares 1075e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1076e33c9c7aSMartin Mares 1077f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1078f3395cc5SMartin Mares 1079f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1080f3395cc5SMartin Mares as a multi-function device, because several single-function devices 1081f3395cc5SMartin Mares don't decode the function bits at all. 1082f3395cc5SMartin Mares 1083f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1084f3395cc5SMartin Mares 1085f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 1086f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 1087f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 1088f3395cc5SMartin Mares 1089f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1090f3395cc5SMartin Mares 1091f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1092f3395cc5SMartin Mares 1093f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1094f3395cc5SMartin Mares or 64-bit depending on CPU. 1095f3395cc5SMartin Mares 1096f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1097f3395cc5SMartin Mares according to bus address width. 1098f3395cc5SMartin Mares 10991c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 11001c31d620SMartin Mares 11011c31d620SMartin Mares * Released as 1.99.4. 11021c31d620SMartin Mares 11031c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 11041c31d620SMartin Mares registers and PCI Power Management registers (the latter 11051c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 11061c31d620SMartin Mares since I don't have the PCI Power Management document). 11071c31d620SMartin Mares 11081c31d620SMartin Mares * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 11091c31d620SMartin Mares by FLAG macro. 11101c31d620SMartin Mares 11111c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 11121c31d620SMartin Mares 11131812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 11141812a795SMartin Mares 11151812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 11161812a795SMartin Mares 11171812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 11181812a795SMartin Mares (show): Split to show() and show_device(). 11191812a795SMartin Mares 11201812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 11211812a795SMartin Mares set it to the real access method afterwards. 11221812a795SMartin Mares 11231812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 11241812a795SMartin Mares 11251812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 11261812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 11271812a795SMartin Mares 1128f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1129f6c86928SMartin Mares 1130f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 1131f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 1132f6c86928SMartin Mares 1133f6c86928SMartin Mares * Released as 1.99.3. 1134f6c86928SMartin Mares 1135b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1136b5137411SMartin Mares 1137d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 1138d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 1139d6b297d0SMartin Mares functions and device IDs), which is not going to happen 1140d6b297d0SMartin Mares before 2.3, we'll use our own definiton of the header. 1141d6b297d0SMartin Mares 1142b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 1143b5137411SMartin Mares 1144b5137411SMartin Mares * lspci.c (show_htype0): Display capability lists whereever 1145b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 1146b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 1147b5137411SMartin Mares portion of the configuration space and are thus available 1148b5137411SMartin Mares only to root unless you read a dump. 1149b5137411SMartin Mares 1150b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 1151b5137411SMartin Mares 1152b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 1153b5137411SMartin Mares 1154b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 1155b5137411SMartin Mares 115681ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 115781ce358dSMartin Mares 115881ce358dSMartin Mares * pci.ids: Added few devices. 115981ce358dSMartin Mares 1160727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1161727ce158SMartin Mares 1162727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 1163727ce158SMartin Mares to the configure script and also substituted to man pages. 1164727ce158SMartin Mares 1165727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1166727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 1167727ce158SMartin Mares 1168727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1169727ce158SMartin Mares 1170727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 1171727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 1172727ce158SMartin Mares 1173727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1174727ce158SMartin Mares whenever available. 1175727ce158SMartin Mares 1176727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 1177727ce158SMartin Mares read/write and real errors. 1178727ce158SMartin Mares 1179727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1180727ce158SMartin Mares libpci respects buscentric mode automatically. 1181727ce158SMartin Mares 1182727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1183727ce158SMartin Mares bytes of header (the whole standard part). 1184727ce158SMartin Mares 1185727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 1186727ce158SMartin Mares PCI access debugging option here. 1187727ce158SMartin Mares 1188727ce158SMartin Mares * Released as 1.99.2. 1189727ce158SMartin Mares 1190727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1191727ce158SMartin Mares 1192727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 1193727ce158SMartin Mares 1194727ce158SMartin Mares * Removed few unused variables. 1195727ce158SMartin Mares 1196727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1197727ce158SMartin Mares 1198727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 1199727ce158SMartin Mares here. This includes parsing of libpci-related options. 1200727ce158SMartin Mares 1201727ce158SMartin Mares * More library tweaks. 1202727ce158SMartin Mares 1203727ce158SMartin Mares * filter.c, names.c: Moved to library. 1204727ce158SMartin Mares 1205727ce158SMartin Mares * setpci: Rewritten to use the library. 1206727ce158SMartin Mares 1207727ce158SMartin Mares * Released as 1.99.1. 1208727ce158SMartin Mares 1209727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 1210727ce158SMartin Mares 1211727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 1212727ce158SMartin Mares bytes of config space to get full standard header. 1213727ce158SMartin Mares 1214727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 1215727ce158SMartin Mares 1216727ce158SMartin Mares * Started the "New Generation" branch and introduced the 1217727ce158SMartin Mares PCI library. 1218727ce158SMartin Mares 1219727ce158SMartin Mares * lspci: Rewritten to use the library. 1220727ce158SMartin Mares 12216ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 12226ece6bc6SMartin Mares 12236ece6bc6SMartin Mares * Released as version 1.10. 12246ece6bc6SMartin Mares 12256ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 12266ece6bc6SMartin Mares 12276ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 12286ece6bc6SMartin Mares Dag Wieers <[email protected]>. 12296ece6bc6SMartin Mares 12301212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 12311212dd6dSMartin Mares 12321212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 12331212dd6dSMartin Mares 1234d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 1235d38471fdSMartin Mares 1236d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 1237d38471fdSMartin Mares 1238d38471fdSMartin Mares * Released as version 1.09. 1239d38471fdSMartin Mares 1240371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 1241371f605bSMartin Mares 1242371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 1243371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 1244371f605bSMartin Mares 124510be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 124610be47abSMartin Mares 124710be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 124810be47abSMartin Mares 1249472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 1250472bd340SMartin Mares 1251472bd340SMartin Mares * Released as version 1.08. 1252472bd340SMartin Mares 1253472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 1254472bd340SMartin Mares 1255472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 1256472bd340SMartin Mares 1257472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 1258472bd340SMartin Mares it's impossible to crash the machine by single typo. 1259472bd340SMartin Mares 1260472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 1261472bd340SMartin Mares 1262072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 1263072c77e5SMartin Mares 1264072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 1265072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 1266072c77e5SMartin Mares for an idea. 1267072c77e5SMartin Mares 1268b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 1269b7554856SMartin Mares 1270b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 1271b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 1272b7554856SMartin Mares 1273ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 1274ce503b7fSMartin Mares 1275ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 1276ce503b7fSMartin Mares (show_machine): Print subsystem ID. 1277ce503b7fSMartin Mares 1278ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 1279ce503b7fSMartin Mares 1280ce503b7fSMartin Mares * Released as version 1.07. 1281ce503b7fSMartin Mares 128296e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 128396e4f295SMartin Mares 128496e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 128596e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 128696e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 128796e4f295SMartin Mares 128896e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 128996e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 129096e4f295SMartin Mares full description of all header fields supported by the chip. 129196e4f295SMartin Mares 12926ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 12936ae3650aSMartin Mares 1294304f9a0bSMartin Mares * Released as 1.06. 1295304f9a0bSMartin Mares 12966ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 12976ae3650aSMartin Mares 12986ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 12996ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 13006ae3650aSMartin Mares kernels). Ugly. 13016ae3650aSMartin Mares 13026ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 13036ae3650aSMartin Mares 13044b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 13054b88a6b8SMartin Mares 13064b88a6b8SMartin Mares * Released as 1.05. 13074b88a6b8SMartin Mares 13084b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 13094b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 13104b88a6b8SMartin Mares 13114b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 13124b88a6b8SMartin Mares 13134b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 13144b88a6b8SMartin Mares <[email protected]> for reporting this. 13154b88a6b8SMartin Mares 13164b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 13174b88a6b8SMartin Mares 13184b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 13194b88a6b8SMartin Mares 13204b88a6b8SMartin Mares * Released as 1.04. 13214b88a6b8SMartin Mares 13224b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 13234b88a6b8SMartin Mares 13244b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 13254b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 13264b88a6b8SMartin Mares for bug report. 13274b88a6b8SMartin Mares 13289b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 13299b306998SMartin Mares 13309b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 13319b306998SMartin Mares 1332b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 1333b372672fSMartin Mares 1334b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 1335b372672fSMartin Mares 1336b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 1337b2c9b373SMartin Mares 1338b372672fSMartin Mares * Released as 1.03. 1339b372672fSMartin Mares 1340b2c9b373SMartin Mares * setpci.8: Written. 1341b2c9b373SMartin Mares 1342b2c9b373SMartin Mares * setpci.c: Finished. 1343b2c9b373SMartin Mares 1344b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 1345b2c9b373SMartin Mares and print it if not in buscentric mode. 1346b2c9b373SMartin Mares 1347e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 1348e4842ff3SMartin Mares 1349e4842ff3SMartin Mares * setpci.c: Added. 1350e4842ff3SMartin Mares 1351e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 1352e4842ff3SMartin Mares 1353e4842ff3SMartin Mares * lspci.8: Updated the documentation. 1354e4842ff3SMartin Mares 1355e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 1356e4842ff3SMartin Mares 1357e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 1358e4842ff3SMartin Mares 1359008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 1360008407bdSMartin Mares 1361008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 1362008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 1363008407bdSMartin Mares 13640a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 13650a33d0ecSMartin Mares 13660a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 13670a33d0ecSMartin Mares dump. 13680a33d0ecSMartin Mares 13690a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 13700a33d0ecSMartin Mares 13710a33d0ecSMartin Mares * Released as version 1.02. 13720a33d0ecSMartin Mares 13730a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 13740a33d0ecSMartin Mares 13750a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 13760a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 13770a33d0ecSMartin Mares 1378fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 1379fb38eee8SMartin Mares 1380fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 1381fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 1382fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 1383fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 1384fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 1385fb38eee8SMartin Mares 1386fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 1387fb38eee8SMartin Mares 13882f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 13892f48f637SMartin Mares 13902f48f637SMartin Mares * README: Updated. 13912f48f637SMartin Mares 13922f48f637SMartin Mares * lspci.8: Created a man page. 13932f48f637SMartin Mares 13942f48f637SMartin Mares * Releasing as version 1.0. 13952f48f637SMartin Mares 13962f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 13972f48f637SMartin Mares 13982f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 13992f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 14002f48f637SMartin Mares on sparc64. 14012f48f637SMartin Mares 14022f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 14032f48f637SMartin Mares (show_htype2): Stub routine. 14042f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 14052f48f637SMartin Mares upper part of the PCI config space. 1406