1*d0b07542SMartin Mares2007-02-14 Martin Mares <[email protected]> 2*d0b07542SMartin Mares 3*d0b07542SMartin Mares * lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type. 4*d0b07542SMartin Mares Patch by Mark Glines. 5*d0b07542SMartin Mares 63df35926SMartin Mares2007-02-09 Martin Mares <[email protected]> 73df35926SMartin Mares 83df35926SMartin Mares * pci.ids: Updated to the current snapshot of the database. 93df35926SMartin Mares 10e49ed044SMartin Mares2007-02-06 Martin Mares <[email protected]> 11e49ed044SMartin Mares 121ac3a99dSMartin Mares * Replaced bzero() by memset() everywhere, it's better to lose a tiny 131ac3a99dSMartin Mares bit of readability than maintain hacks to make it work on various systems. 141ac3a99dSMartin Mares 15b0eb18ccSMartin Mares * lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]' 16b0eb18ccSMartin Mares instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise. 17b0eb18ccSMartin Mares 18e49ed044SMartin Mares * lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise 19e49ed044SMartin Mares integer types. 20e49ed044SMartin Mares 219de2768cSMartin Mares2007-02-04 Martin Mares <[email protected]> 229de2768cSMartin Mares 239de2768cSMartin Mares * lspci.c: alloca() needs <alloca.h>. 249de2768cSMartin Mares 25d19394dbSMartin Mares2006-09-17 Martin Mares <[email protected]> 26d19394dbSMartin Mares 27d19394dbSMartin Mares * lib/dump.c: Fixed a couple of bugs in the dump backend which caused 28d19394dbSMartin Mares devices with domains or with extended config space to be read incorrectly. 29d19394dbSMartin Mares Also, dumps with partial lines are allowed now. 30d19394dbSMartin Mares 31934e7e36SMartin Mares2006-09-10 Martin Mares <[email protected]> 32934e7e36SMartin Mares 33f09856deSMartin Mares * pci.ids: Updated to the current database snapshot. 34f09856deSMartin Mares 35934e7e36SMartin Mares * lspci.c (scan_device): If an error occurs when reading the standard config 36934e7e36SMartin Mares header of a device, report it and ignore the device and return with exit 37934e7e36SMartin Mares code 2 at the end. 38934e7e36SMartin Mares 39b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 40b2055313SMartin Mares 41fb260653SMartin Mares * Released as 2.2.4. 42fb260653SMartin Mares 431865e2ddSMartin Mares * maint/release: Remind the maintainer about the current PCI_LIB_VERSION. 441865e2ddSMartin Mares 45028dffb2SMartin Mares * lib/pci.h: Updated PCI_LIB_VERSION. 46028dffb2SMartin Mares 4713081e57SMartin Mares * lspci.c (show_machine): In the `-m' mode, do proper shell escaping 4813081e57SMartin Mares if the fields printed contain quotes or backslashes. 4913081e57SMartin Mares 503fd6b4d2SMartin Mares * lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse 513fd6b4d2SMartin Mares of the `Device' tag for two different purposes. 523fd6b4d2SMartin Mares 53840d09aeSMartin Mares * Makefile: Moved all system-dependent decisions to lib/configure, 54840d09aeSMartin Mares since config.mk is included in the top-level Makefile anyway. 55840d09aeSMartin Mares 562100f710SMartin Mares * lib/configure: When configuring for Linux, ignore the kernel version 572100f710SMartin Mares and always build all access methods. 582100f710SMartin Mares 593e9c7a18SMartin Mares * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers 603e9c7a18SMartin Mares at many non-interesting places with gcc 3.4. 613e9c7a18SMartin Mares 6294db5c82SMartin Mares * Whitespace cleanup of all source files. 6394db5c82SMartin Mares 64cc062b4aSMartin Mares * The pci.ids file can be stored compressed if zlib is available. 65cc062b4aSMartin Mares Added transparent decompression to lib/names.c, modified update-pciids.sh 66cc062b4aSMartin Mares to keep the file compressed if applicable, updated Makefiles. 67cc062b4aSMartin Mares Based on a patch by Matthew Wilcox, but all the bugs are mine. 68cc062b4aSMartin Mares 69f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 70f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 71f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 72f4ddb8d3SMartin Mares 7316e37012SMartin Mares * Added .gitignore files. 7416e37012SMartin Mares 75c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 76c7f5314dSMartin Mares 77afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 78afebde01SMartin Mares 79fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 80fd54ccebSMartin Mares 81b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 82b2055313SMartin Mares defined in the pci.ids file. 83b2055313SMartin Mares 844254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 854254d153SMartin Mares 864254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 874254d153SMartin Mares 881c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 891c5cc9b5SMartin Mares 9038a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 9138a9e3c3SMartin Mares 92c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 93c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 94c7ddfa3eSMartin Mares 95248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 96248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 97248a04f8SMartin Mares 98f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 99f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 100f29dcc87SMartin Mares 1018eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 1028eab3bffSMartin Mares 103d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 104d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 105d305d704SMartin Mares directly. 106d305d704SMartin Mares 1079007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 1089007a292SMartin Mares the port access state to generic code. 1099007a292SMartin Mares 110bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 111bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 112bd20d5b5SMartin Mares 11373750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 11473750606SMartin Mares 115d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 116d71daa45SMartin Mares 1171c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 1181c5cc9b5SMartin Mares 1191c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 1201c5cc9b5SMartin Mares 121c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 122c2b144efSMartin Mares 12314d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 12414d4f989SMartin Mares 12514d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 12614d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 12714d4f989SMartin Mares incomplete, though. 12814d4f989SMartin Mares 129c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 130c2b144efSMartin Mares 131c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 132c2b144efSMartin Mares be modified by kernel fixups. 133c2b144efSMartin Mares 134c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 135c2b144efSMartin Mares 136bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 137bc2eed2dSMartin Mares 138bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 139bc2eed2dSMartin Mares for the idea. 140bc2eed2dSMartin Mares 141bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 142bc2eed2dSMartin Mares cleaned up the name selection code. 143bc2eed2dSMartin Mares 144c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 145c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 146c72eeddeSMartin Mares 147c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 148c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 149c72eeddeSMartin Mares 1502f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 1512f294d4bSMartin Mares 1522f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 1532f294d4bSMartin Mares 15481afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 15581afa98cSMartin Mares name when printing an error message. 15681afa98cSMartin Mares 1570ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 1580ac282f2SMartin Mares 1590ac282f2SMartin Mares * README: Mention the public GIT tree. 1600ac282f2SMartin Mares 1610ac282f2SMartin Mares * README: Updated the list of ports. 1620ac282f2SMartin Mares 163d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 164d1058e9dSMartin Mares 165d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 166d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 167d1058e9dSMartin Mares 168abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 169abf8d505SMartin Mares 1702ae2d1aeSMartin Mares * Released as 2.2.3. 1712ae2d1aeSMartin Mares 1722ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 1732ae2d1aeSMartin Mares in -m mode. 1742ae2d1aeSMartin Mares 1752ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 1762ae2d1aeSMartin Mares 1771d5cf727SMartin Mares * Released as 2.2.2. 1781d5cf727SMartin Mares 1798a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 1808a830168SMartin Mares 181b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 182b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 183b6359063SMartin Mares the existing FreeBSD interface. 184b6359063SMartin Mares 185abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 186abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 187abf8d505SMartin Mares 1886ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 1896ac70402SMartin Mares 1902a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 1912a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 1922a124daeSMartin Mares forces domain display even there. 1932a124daeSMartin Mares 1946ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 1956ac70402SMartin Mares guaranteed to be stable between lspci versions. 1966ac70402SMartin Mares 1971bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 1981bbdea17SMartin Mares 199af61eb25SMartin Mares * lspci.man: Documented the -D switch. 200af61eb25SMartin Mares 201af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 202af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 203af61eb25SMartin Mares all devices. 204af61eb25SMartin Mares 2057a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 2067a61b93cSMartin Mares 2071bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 2081bbdea17SMartin Mares 2090e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 2100e78ef8aSMartin Mares 2110e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 2120e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 2130e78ef8aSMartin Mares 214e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 215e6859953SMartin Mares 216e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 217e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 218e6859953SMartin Mares 219e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 220e6859953SMartin Mares 221a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 222a99c0d69SMartin Mares 223e4af70c6SMartin Mares * Released as 2.2.1. 224e4af70c6SMartin Mares 225a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 226a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 227a99c0d69SMartin Mares 228f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 229f23fd3fcSMartin Mares 230f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 231f23fd3fcSMartin Mares 23215296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 23315296723SMartin Mares 23415296723SMartin Mares * Released as 2.2.0. 23515296723SMartin Mares 23640b6d93fSMartin Mares * pci.ids: Updated copyright header. 23740b6d93fSMartin Mares 23815296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 23915296723SMartin Mares 64-bit addresses, they are now always supported. 24015296723SMartin Mares 24115296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 24215296723SMartin Mares in bus-centric mode. 24315296723SMartin Mares 24415296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 24515296723SMartin Mares 24615296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 24715296723SMartin Mares are shorter. 24815296723SMartin Mares 249224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 250224707baSMartin Mares 251224707baSMartin Mares * Released as 2.1.99-test11. 252224707baSMartin Mares 253224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 254224707baSMartin Mares 255aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 256aeaca5d3SMartin Mares 257224707baSMartin Mares * Released as 2.1.99-test10. 258224707baSMartin Mares 25963e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 26063e6f2e0SMartin Mares 261043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 262043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 263043ebdeeSMartin Mares 264043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 265043ebdeeSMartin Mares 266aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 267aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 268aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 269aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 270aeaca5d3SMartin Mares 271aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 272aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 273aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 274aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 275aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 276aeaca5d3SMartin Mares 277121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 278121c76c9SMartin Mares 27954e13765SMartin Mares * Released as 2.1.99-test9. 28054e13765SMartin Mares 28154e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 28254e13765SMartin Mares gcc versions when optimizing anyway. 28354e13765SMartin Mares 28454e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 28554e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 28654e13765SMartin Mares 28754e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 28854e13765SMartin Mares 28984d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 29084d437d6SMartin Mares methods and which operations are privileged. 29184d437d6SMartin Mares 29284d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 29384d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 29484d437d6SMartin Mares portions of the configuration space being inaccessible, for example 29584d437d6SMartin Mares due to insufficient access rights. 29684d437d6SMartin Mares 2973b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 2983b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 2993b8bf739SMartin Mares as I haven't seen the spec). 3003b8bf739SMartin Mares 3013b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 3023b8bf739SMartin Mares 30384d437d6SMartin Mares * lspci.c: Removed C++ comments. 30484d437d6SMartin Mares 3053b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 3063b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 3073b8bf739SMartin Mares 3083b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 3093b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 3103b8bf739SMartin Mares list. 3113b8bf739SMartin Mares 312f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 313f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 314f7821e53SMartin Mares access more than that. 315ea4e5f5dSMartin Mares 31646ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 31746ea554dSMartin Mares 3188afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 3198afaab22SMartin Mares 320121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 321121c76c9SMartin Mares 322c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 323c1c2c30eSMartin Mares 324b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 325b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 326b9ca9147SMartin Mares 327c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 328b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 329c1c2c30eSMartin Mares 33026542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 33126542a0bSMartin Mares 33226542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 33326542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 33426542a0bSMartin Mares 3356aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 3366aa54f1bSMartin Mares 337aabb0a92SMartin Mares * Released as 2.1.99-test8. 338aabb0a92SMartin Mares 339f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 340f31412d1SMartin Mares no longer exported to the outside world. 341f31412d1SMartin Mares 342ee7d8384SMartin Mares * README.Windows: Updated. 343ee7d8384SMartin Mares 344ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 345ee7d8384SMartin Mares 346ee7d8384SMartin Mares * win32/config.h: Added. 347ee7d8384SMartin Mares 348ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 349ee7d8384SMartin Mares 350ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 351ee7d8384SMartin Mares C library for use on systems where the default libraries lack 352ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 353ee7d8384SMartin Mares 354ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 355ee7d8384SMartin Mares Alexander Stock. 356ee7d8384SMartin Mares 357489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 358489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 359489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 360489233b4SMartin Mares be gone. 361489233b4SMartin Mares 362489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 363489233b4SMartin Mares 364489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 365489233b4SMartin Mares 366489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 367489233b4SMartin Mares it is included unconditionally in lib/types.h. 368489233b4SMartin Mares 369489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 370489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 371489233b4SMartin Mares from lib/pci.h to lib/types.h. 372489233b4SMartin Mares 373489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 374489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 375489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 376489233b4SMartin Mares 377489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 378489233b4SMartin Mares headers with the kernel a couple of years ago. 379489233b4SMartin Mares 3809bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 3819bb4b4eaSMartin Mares 3826aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 3836aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 3846aa54f1bSMartin Mares 3856aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 3866aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 3876aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 3886aa54f1bSMartin Mares 3896aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 3906aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 3916aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 3926aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 3936aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 3946aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 3956aa54f1bSMartin Mares mapping the regions and doing I/O on them. 3966aa54f1bSMartin Mares 39780e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 39880e6c636SMartin Mares 39980e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 40080e6c636SMartin Mares 401d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 402d6324891SMartin Mares 403d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 404d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 405d6324891SMartin Mares 406ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 407ec25b52dSMartin Mares 408362be683SMartin Mares * Released as 2.1.99-test7. 409362be683SMartin Mares 410ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 411ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 412ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 413ec25b52dSMartin Mares 414ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 415ec25b52dSMartin Mares 416ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 417ec25b52dSMartin Mares 418ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 419ec25b52dSMartin Mares 420ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 421ec25b52dSMartin Mares 422ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 423ec25b52dSMartin Mares 424ec25b52dSMartin Mares * lspci.man: Added -xxxx. 425ec25b52dSMartin Mares 42609817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 42709817437SMartin Mares 428d1fa27ebSMartin Mares * Released as 2.1.99-test6. 429d1fa27ebSMartin Mares 4304d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 4314d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 4324d67aa89SMartin Mares 4334d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 4344d67aa89SMartin Mares failures. 4354d67aa89SMartin Mares 4364d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 4374d67aa89SMartin Mares 4384d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 4394d67aa89SMartin Mares Patch by Matthew Wilcox. 4404d67aa89SMartin Mares 4414d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 4424d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 4434d67aa89SMartin Mares 44409817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 44509817437SMartin Mares report correct errors reported by the libpci instead. 44609817437SMartin Mares 44709817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 44809817437SMartin Mares Better caching of config registers. 44909817437SMartin Mares 45009817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 45109817437SMartin Mares 45209817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 45309817437SMartin Mares just return the appropriate error code. 45409817437SMartin Mares 45509817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 45609817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 45709817437SMartin Mares and of course in the dump reader. 45809817437SMartin Mares 4590d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 4600d656226SMartin Mares 461c0eece92SMartin Mares * Released as 2.1.99-test5. 462c0eece92SMartin Mares 463a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 464a2413560SMartin Mares 465a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 466a2413560SMartin Mares macros. 467a2413560SMartin Mares 468a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 469a2413560SMartin Mares 470a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 471a2413560SMartin Mares 472a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 473a2413560SMartin Mares Stock <[email protected]>. 474a2413560SMartin Mares 475a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 476a2413560SMartin Mares changes to the configure script. 477a2413560SMartin Mares 4780d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 4790d656226SMartin Mares 480138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 481138c0385SMartin Mares 4829f490382SMartin Mares * Released as 2.1.99-test4. 4839f490382SMartin Mares 484cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 485cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 486cce2caacSMartin Mares 487b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 488b569ef09SMartin Mares (show_agp): rate[] could overflow. 489b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 490b569ef09SMartin Mares 491bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 492bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 493bfc4fe7aSMartin Mares by me. 494bfc4fe7aSMartin Mares 495bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 496bfc4fe7aSMartin Mares Again thanks to Maciej. 497bfc4fe7aSMartin Mares 498138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 499138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 500138c0385SMartin Mares 5018fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 5028fc75dbcSMartin Mares 50381abd2a7SMartin Mares * Released as 2.1.99-test3. 50481abd2a7SMartin Mares 5051f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 5061f7c91ccSMartin Mares 5071f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 5081f7c91ccSMartin Mares 50984c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 5101f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 5111f7c91ccSMartin Mares as well. 51284c8d1bbSMartin Mares 51384c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 51484c8d1bbSMartin Mares 51584c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 51684c8d1bbSMartin Mares 51784c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 51884c8d1bbSMartin Mares 51984c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 52084c8d1bbSMartin Mares 52184c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 52284c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 52384c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 52484c8d1bbSMartin Mares 52584c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 52684c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 52784c8d1bbSMartin Mares 52884c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 52984c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 53084c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 53184c8d1bbSMartin Mares 53211f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 53311f7b31bSMartin Mares is not supported by all C libraries. 53411f7b31bSMartin Mares 53511f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 53611f7b31bSMartin Mares full dependecies for the library in the top-level Makefile; hmmm, another 53711f7b31bSMartin Mares thing to rewrite some day). 53811f7b31bSMartin Mares 53911f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 54011f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 54111f7b31bSMartin Mares 54211f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 54311f7b31bSMartin Mares 54411f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 54511f7b31bSMartin Mares of Linux libc moved there. 54611f7b31bSMartin Mares 54711f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 54811f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 54911f7b31bSMartin Mares values and for too large values. 55011f7b31bSMartin Mares 5514284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 5524284af58SMartin Mares package is pretty cross-platform now :) 5534284af58SMartin Mares 5544284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 5554284af58SMartin Mares 556ab12277eSMartin Mares * Released as 2.1.99-test2. 557ab12277eSMartin Mares 558ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 559ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 560ab12277eSMartin Mares 561ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 562ab12277eSMartin Mares making releases including inter-version diffs etc. 563ab12277eSMartin Mares 564ab12277eSMartin Mares * Makefile: Cleaned up. 565ab12277eSMartin Mares 566ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 567ab12277eSMartin Mares this time the version checks should be right. 568ab12277eSMartin Mares 569ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 570ab12277eSMartin Mares 5716d722cd6SMartin Mares * Released as 2.1.99-test1. 5726d722cd6SMartin Mares 573dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 574dd33246aSMartin Mares Remove shadows of the syscall access method which was never 575dd33246aSMartin Mares implemented. 576dd33246aSMartin Mares 57780b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 57880b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 57980b3121aSMartin Mares 5806aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 5816aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 5826aea909aSMartin Mares 5836aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 5846aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 5856aea909aSMartin Mares 5866aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 5876aea909aSMartin Mares 588f701ff47SMartin Mares Merged bug fixes from Debian patches: 589f701ff47SMartin Mares 590f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 591f701ff47SMartin Mares 592f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 593f701ff47SMartin Mares 5942240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 5952240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 596f701ff47SMartin Mares multiple functions. 5972240db8cSMartin Mares 5982240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 5992240db8cSMartin Mares 60045902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 60145902995SMartin Mares for the patches: 60245902995SMartin Mares 60345902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 60445902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 60545902995SMartin Mares to __FreeBSD_version. 60645902995SMartin Mares 60745902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 60845902995SMartin Mares 6098fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 6108fc75dbcSMartin Mares and cleaned up: 6118fc75dbcSMartin Mares 6128fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 6138fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 6148fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 6158fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 6168fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 6178fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 6188fc75dbcSMartin Mares 6199739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 6209739916eSMartin Mares 6219739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 6229739916eSMartin Mares 6239739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 6249739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 6259739916eSMartin Mares use them in all cases. 6269739916eSMartin Mares 6279739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 6289739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 6299739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 6309739916eSMartin Mares directly in pci.h. 6319739916eSMartin Mares 6329739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 6339739916eSMartin Mares 63480459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 63580459c65SMartin Mares 63680459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 63780459c65SMartin Mares 63880459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 63980459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 64080459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 64180459c65SMartin Mares u8 to u32. 64280459c65SMartin Mares 643a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 644a85769a8SMartin Mares 6457dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 6467dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 6477dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 6487dacd9c8SMartin Mares 6497dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 6507dacd9c8SMartin Mares at all places. 6517dacd9c8SMartin Mares 6524063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 6534063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 6544063c31cSMartin Mares 6553fe8a38dSMartin Mares * setpci.c (main): Better error messages. 6563fe8a38dSMartin Mares 6575f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 6585f5b1a7bSMartin Mares 6595f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 6605f5b1a7bSMartin Mares Document the new behaviour. 661b251f40bSMartin Mares 66291e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 66391e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 66491e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 66591e37a49SMartin Mares 6664afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 6674afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 6684afd29d3SMartin Mares a different fix. 6694afd29d3SMartin Mares 670b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 671b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 672b0f1a03bSMartin Mares 673b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 674b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 675b7fd8e19SMartin Mares 67605bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 67705bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 67805bb10a2SMartin Mares 679a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 680a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 681a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 682a832f6f1SMartin Mares for reporting this problem. 683a832f6f1SMartin Mares 684a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 685a85769a8SMartin Mares 686a85769a8SMartin Mares * Makefile: Added some more warnings. 687a85769a8SMartin Mares 688b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 689b7351143SMartin Mares 690b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 691b7351143SMartin Mares 692b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 693b7351143SMartin Mares 6942a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 6952a5d5cf9SMartin Mares 6962a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 6972a5d5cf9SMartin Mares 698d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 699d772ef15SMartin Mares 7001b95f396SMartin Mares * Released as 2.1.11. 7011b95f396SMartin Mares 702c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 703c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 704c83293ebSMartin Mares scattered between the installation rules. The default installation 705c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 706c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 707c83293ebSMartin Mares installations to interfere with the default ones. 708c83293ebSMartin Mares 709c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 710c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 711c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 712c83293ebSMartin Mares has passed since the last version which used it). 713c83293ebSMartin Mares 714e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 715e2875dcdSMartin Mares 7161b95f396SMartin Mares * Added the update-ids utility. 7170138a2a7SMartin Mares 718d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 719d772ef15SMartin Mares probably never be needed. 720d772ef15SMartin Mares 721eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 722eb620239SMartin Mares 723130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 724130090bdSMartin Mares 725eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 726eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 727eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 728eb620239SMartin Mares 729848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 730848b4347SMartin Mares 731579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 732579b19ffSMartin Mares 733579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 734579b19ffSMartin Mares there is no reason to prefer the kernel version. 735579b19ffSMartin Mares 736579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 737579b19ffSMartin Mares 738848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 739848b4347SMartin Mares <[email protected]>. 740848b4347SMartin Mares 741f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 742f0952474SMartin Mares 743f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 744f0952474SMartin Mares 745d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 746d2f666f1SMartin Mares 7479bd44bb0SMartin Mares * Released as 2.1.10. 7489bd44bb0SMartin Mares 749a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 750a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 751a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 752a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 753a33d0eb7SMartin Mares pciids.sf.net. 754a33d0eb7SMartin Mares 755a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 756a33d0eb7SMartin Mares 757a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 758a33d0eb7SMartin Mares 759a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 760a33d0eb7SMartin Mares not in the tarball). 761a33d0eb7SMartin Mares 762d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 763d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 764d2f666f1SMartin Mares a comment only at the start of the line. 765d2f666f1SMartin Mares 766ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 767ee551b73SMartin Mares 76807159913SMartin Mares * README: Rewritten. 76907159913SMartin Mares 770ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 771ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 772ee551b73SMartin Mares Jean Delvare <[email protected]>. 773ee551b73SMartin Mares 774bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 775bc7b1d62SMartin Mares 7765f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 7775f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 7785f5e6f64SMartin Mares 7795f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 7805f5e6f64SMartin Mares 7815f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 7825f5e6f64SMartin Mares 783a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 784a1052f16SMartin Mares 785bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 786bc7b1d62SMartin Mares function 7. 787bc7b1d62SMartin Mares 788bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 789bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 790bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 791bc7b1d62SMartin Mares 792f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 793f793990cSMartin Mares 794ee551b73SMartin Mares * Released as 2.1.9. 795ee551b73SMartin Mares 796f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 797f793990cSMartin Mares (http://pciids.sourceforge.net/). 798f793990cSMartin Mares 7991d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 8001d174e56SMartin Mares 8011d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 8021d174e56SMartin Mares 80365b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 80465b4327eSMartin Mares 80565b4327eSMartin Mares * Makefile (uninstall): Fixed. 80665b4327eSMartin Mares 80765b4327eSMartin Mares * pci.ids: ID updates. 80865b4327eSMartin Mares 8094a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 8104a219d5fSMartin Mares 8114a219d5fSMartin Mares * Released as 2.1.8. 8124a219d5fSMartin Mares 8134a219d5fSMartin Mares * pci.ids: ID updates. 8144a219d5fSMartin Mares 8154a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 8164a219d5fSMartin Mares 8174a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 8184a219d5fSMartin Mares 8194a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 8204a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 8214a219d5fSMartin Mares bogus class info. 8224a219d5fSMartin Mares 82310c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 82410c90662SMartin Mares 82572b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 82672b9b690SMartin Mares 82710c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 82810c90662SMartin Mares 82910c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 83010c90662SMartin Mares 831a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 832a239ade6SMartin Mares 833a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 834a239ade6SMartin Mares 835a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 836a239ade6SMartin Mares 837a239ade6SMartin Mares * pci.ids: Various ID updates. 838a239ade6SMartin Mares 8392c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 8402c83b860SMartin Mares 8412c83b860SMartin Mares * Released as 2.1.7. 8422c83b860SMartin Mares 8432c83b860SMartin Mares * pciutils.spec: Added German description. 8442c83b860SMartin Mares 8452c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 8462c83b860SMartin Mares are the same as device ID and just output subsystem name according to 8472c83b860SMartin Mares device name. 8482c83b860SMartin Mares 8492c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 8502c83b860SMartin Mares 8512c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 8522c83b860SMartin Mares 8532c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 8542c83b860SMartin Mares 8552c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 8562c83b860SMartin Mares "echo -n" if the shell isn't bash. 8572c83b860SMartin Mares 8582c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 8592c83b860SMartin Mares (insert_dev): Avoid returning a void value. 8602c83b860SMartin Mares 8612c83b860SMartin Mares * Makefile: Choose which install utility to use according to 8622c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 8632c83b860SMartin Mares Part of the AIX port. 8642c83b860SMartin Mares 8652c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 8662c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 8672c83b860SMartin Mares 8682c83b860SMartin Mares * pci.ids: Few new ID's. 8692c83b860SMartin Mares 8702c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 8712c83b860SMartin Mares when not compiled by GCC. 8722c83b860SMartin Mares 873c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 874c1a828daSMartin Mares 875c1a828daSMartin Mares * Released as 2.1.6. 876c1a828daSMartin Mares 877c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 878c1a828daSMartin Mares Mayer <[email protected]> and synced the 879c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 880c1a828daSMartin Mares 881e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 882e91dd3abSMartin Mares 883a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 884a80b79a9SMartin Mares the library. 885a80b79a9SMartin Mares 88689984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 88789984232SMartin Mares by Adam Sulmicki. 88889984232SMartin Mares 889e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 890e91dd3abSMartin Mares 89178d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 89278d9c5e2SMartin Mares 89378d9c5e2SMartin Mares * Released as 2.1.5. 89478d9c5e2SMartin Mares 89578d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 89678d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 89778d9c5e2SMartin Mares 89878d9c5e2SMartin Mares * pci.ids: New ID's. 89978d9c5e2SMartin Mares 90078d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 90178d9c5e2SMartin Mares no argument. 90278d9c5e2SMartin Mares 903f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 904f8141ae2SMartin Mares 905f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 906f8141ae2SMartin Mares glibc. 907f8141ae2SMartin Mares 908f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 909f8141ae2SMartin Mares 910f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 911f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 912f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 913f8141ae2SMartin Mares 91459e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 91559e76e8bSMartin Mares 91659e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 91759e76e8bSMartin Mares 91859e76e8bSMartin Mares * Released as version 2.1.4. 91959e76e8bSMartin Mares 9202dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 9212dfd48cdSMartin Mares 9222715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 9232715403fSMartin Mares 92481077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 92581077814SMartin Mares 92681077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 92781077814SMartin Mares 92881077814SMartin Mares * pci.ids: New ID's. 92981077814SMartin Mares 9302dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 9312dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 9322dfd48cdSMartin Mares 9335a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 9345a258860SMartin Mares 9355a258860SMartin Mares * Released as version 2.1.3. 9365a258860SMartin Mares 9375a258860SMartin Mares * pci.ids: New ID's. 9385a258860SMartin Mares 9395a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 9405a258860SMartin Mares 9415a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 9425a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 9435a258860SMartin Mares 9440c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 9450c047bbeSMartin Mares 9460c047bbeSMartin Mares * Released as version 2.1.2. 9470c047bbeSMartin Mares 9480c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 9490c047bbeSMartin Mares 95033bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 95133bc28a5SMartin Mares 95239231205SMartin Mares * Released as version 2.1.1. 95339231205SMartin Mares 95433bc28a5SMartin Mares * pci.ids: Several new ID's. 95533bc28a5SMartin Mares 95633bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 95733bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 95833bc28a5SMartin Mares by Petr Soucek <[email protected]>. 95933bc28a5SMartin Mares 9608d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 9618d047897SMartin Mares 9628d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 9638d047897SMartin Mares ID list, show it. 9648d047897SMartin Mares 9656afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 9666afc6538SMartin Mares 9676afc6538SMartin Mares * Released as version 2.1. 9686afc6538SMartin Mares 9696afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 9706afc6538SMartin Mares lots of contributed entries. 9716afc6538SMartin Mares 9728f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 9738f756113SMartin Mares 9748f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 9758f756113SMartin Mares 976d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 977d4798a32SMartin Mares 978d4798a32SMartin Mares * setpci.man: Better example. 979d4798a32SMartin Mares 980d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 981d4798a32SMartin Mares 982d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 983d4798a32SMartin Mares 984d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 985d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 986d4798a32SMartin Mares New ID's, as usually. 987d4798a32SMartin Mares 988e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 989e306e911SMartin Mares 990e306e911SMartin Mares * pci.ids: New ID's. As usually. 991e306e911SMartin Mares 992e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 993e306e911SMartin Mares unless we're vvvery verbose. 994e306e911SMartin Mares 995e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 996e306e911SMartin Mares 997e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 998e306e911SMartin Mares 999e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 1000e64a576cSMartin Mares 1001e64a576cSMartin Mares * pci.ids: New ID's. Again. 1002e64a576cSMartin Mares 1003c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 1004c36c0862SMartin Mares 1005c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 1006c36c0862SMartin Mares due to bus-centric mode being enabled). 1007c36c0862SMartin Mares 10081ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 10091ca42433SMartin Mares 1010168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 1011168b4f46SMartin Mares 1012168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 1013168b4f46SMartin Mares 1014168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 1015168b4f46SMartin Mares 1016168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 1017168b4f46SMartin Mares 1018168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 1019168b4f46SMartin Mares incorrectly set to device ID. 1020168b4f46SMartin Mares 1021168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 1022168b4f46SMartin Mares 1023168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 1024168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 1025168b4f46SMartin Mares as GNU date does. Use sed instead. 1026168b4f46SMartin Mares (install): Use `-c' when calling install. 1027168b4f46SMartin Mares 1028168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 1029168b4f46SMartin Mares by Jari Kirma <[email protected]>. 1030168b4f46SMartin Mares 1031bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 1032bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 1033bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 1034bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 1035bc6346dfSMartin Mares with lseek/read/write. 1036bc6346dfSMartin Mares 10371ca42433SMartin Mares * pci.ids: Some more IDs. 10381ca42433SMartin Mares 10391ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 10401ca42433SMartin Mares 10411ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 10421ca42433SMartin Mares by Tim Waugh <[email protected]>. 10431ca42433SMartin Mares 1044e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 1045e95c8373SMartin Mares 1046e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 1047e95c8373SMartin Mares 1048e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 1049e95c8373SMartin Mares HAVE_LONG_ADDRESS. 1050e95c8373SMartin Mares 1051e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 1052e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 1053e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 1054e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 1055e95c8373SMartin Mares on Alpha. 1056e95c8373SMartin Mares 1057e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 1058e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 1059e95c8373SMartin Mares (show_caps): Seperated capability dumping, because it should 1060e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1061e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 1062e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 1063e95c8373SMartin Mares is already defined differently in htype2. 1064e95c8373SMartin Mares 1065e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1066e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1067e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1068e95c8373SMartin Mares 1069e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1070e95c8373SMartin Mares (required by the PCI 2.2 specs). 1071e95c8373SMartin Mares 1072e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1073e95c8373SMartin Mares 1074e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1075e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1076e95c8373SMartin Mares ROMs et cetera. 1077e95c8373SMartin Mares 1078e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1079e95c8373SMartin Mares of the structure. 1080e95c8373SMartin Mares 1081e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1082e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1083e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1084e95c8373SMartin Mares 108582ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 108682ce97c9SMartin Mares 108782ce97c9SMartin Mares * Makefile: 108882ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 108982ce97c9SMartin Mares * pci.ids: 109082ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 109182ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 109282ce97c9SMartin Mares to determine the revision from the device ID. 109382ce97c9SMartin Mares - Same for the Tseng ET4000. 109482ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 109582ce97c9SMartin Mares - Removed some unnecessary strings 109682ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 109782ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 109882ce97c9SMartin Mares - Lots of other new vendors & devices 109982ce97c9SMartin Mares - Other additional small cleanups. 110082ce97c9SMartin Mares 11017bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 11027bed2d83SMartin Mares 11037bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 11047bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 11057bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 11067bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 11077bed2d83SMartin Mares 11085ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 11095ba3a475SMartin Mares 11105ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 11115ba3a475SMartin Mares <[email protected]>. The command register was displayed 11125ba3a475SMartin Mares incorrectly. 11135ba3a475SMartin Mares 11145ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 11155ba3a475SMartin Mares 11165ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 11175ba3a475SMartin Mares numbers if not supplied by the libc. 11185ba3a475SMartin Mares 111955c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 112055c815b5SMartin Mares 112155c815b5SMartin Mares * Released the whole package as version 2.0. 112255c815b5SMartin Mares 112355c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 112455c815b5SMartin Mares 112555c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 112655c815b5SMartin Mares on the linux-pci list. 112755c815b5SMartin Mares 1128dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1129dec16943SMartin Mares 1130dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 1131dec16943SMartin Mares * lib/header.h: Ditto. 1132dec16943SMartin Mares 1133dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 1134dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 1135dec16943SMartin Mares 1136e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1137e33c9c7aSMartin Mares 1138e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1139e33c9c7aSMartin Mares <[email protected]>. 1140e33c9c7aSMartin Mares 1141e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1142e33c9c7aSMartin Mares 1143f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1144f3395cc5SMartin Mares 1145f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1146f3395cc5SMartin Mares as a multi-function device, because several single-function devices 1147f3395cc5SMartin Mares don't decode the function bits at all. 1148f3395cc5SMartin Mares 1149f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1150f3395cc5SMartin Mares 1151f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 1152f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 1153f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 1154f3395cc5SMartin Mares 1155f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1156f3395cc5SMartin Mares 1157f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1158f3395cc5SMartin Mares 1159f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1160f3395cc5SMartin Mares or 64-bit depending on CPU. 1161f3395cc5SMartin Mares 1162f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1163f3395cc5SMartin Mares according to bus address width. 1164f3395cc5SMartin Mares 11651c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 11661c31d620SMartin Mares 11671c31d620SMartin Mares * Released as 1.99.4. 11681c31d620SMartin Mares 11691c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 11701c31d620SMartin Mares registers and PCI Power Management registers (the latter 11711c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 11721c31d620SMartin Mares since I don't have the PCI Power Management document). 11731c31d620SMartin Mares 11741c31d620SMartin Mares * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 11751c31d620SMartin Mares by FLAG macro. 11761c31d620SMartin Mares 11771c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 11781c31d620SMartin Mares 11791812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 11801812a795SMartin Mares 11811812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 11821812a795SMartin Mares 11831812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 11841812a795SMartin Mares (show): Split to show() and show_device(). 11851812a795SMartin Mares 11861812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 11871812a795SMartin Mares set it to the real access method afterwards. 11881812a795SMartin Mares 11891812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 11901812a795SMartin Mares 11911812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 11921812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 11931812a795SMartin Mares 1194f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1195f6c86928SMartin Mares 1196f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 1197f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 1198f6c86928SMartin Mares 1199f6c86928SMartin Mares * Released as 1.99.3. 1200f6c86928SMartin Mares 1201b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1202b5137411SMartin Mares 1203d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 1204d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 1205d6b297d0SMartin Mares functions and device IDs), which is not going to happen 1206d6b297d0SMartin Mares before 2.3, we'll use our own definiton of the header. 1207d6b297d0SMartin Mares 1208b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 1209b5137411SMartin Mares 1210b5137411SMartin Mares * lspci.c (show_htype0): Display capability lists whereever 1211b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 1212b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 1213b5137411SMartin Mares portion of the configuration space and are thus available 1214b5137411SMartin Mares only to root unless you read a dump. 1215b5137411SMartin Mares 1216b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 1217b5137411SMartin Mares 1218b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 1219b5137411SMartin Mares 1220b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 1221b5137411SMartin Mares 122281ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 122381ce358dSMartin Mares 122481ce358dSMartin Mares * pci.ids: Added few devices. 122581ce358dSMartin Mares 1226727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1227727ce158SMartin Mares 1228727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 1229727ce158SMartin Mares to the configure script and also substituted to man pages. 1230727ce158SMartin Mares 1231727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1232727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 1233727ce158SMartin Mares 1234727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1235727ce158SMartin Mares 1236727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 1237727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 1238727ce158SMartin Mares 1239727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1240727ce158SMartin Mares whenever available. 1241727ce158SMartin Mares 1242727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 1243727ce158SMartin Mares read/write and real errors. 1244727ce158SMartin Mares 1245727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1246727ce158SMartin Mares libpci respects buscentric mode automatically. 1247727ce158SMartin Mares 1248727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1249727ce158SMartin Mares bytes of header (the whole standard part). 1250727ce158SMartin Mares 1251727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 1252727ce158SMartin Mares PCI access debugging option here. 1253727ce158SMartin Mares 1254727ce158SMartin Mares * Released as 1.99.2. 1255727ce158SMartin Mares 1256727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1257727ce158SMartin Mares 1258727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 1259727ce158SMartin Mares 1260727ce158SMartin Mares * Removed few unused variables. 1261727ce158SMartin Mares 1262727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1263727ce158SMartin Mares 1264727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 1265727ce158SMartin Mares here. This includes parsing of libpci-related options. 1266727ce158SMartin Mares 1267727ce158SMartin Mares * More library tweaks. 1268727ce158SMartin Mares 1269727ce158SMartin Mares * filter.c, names.c: Moved to library. 1270727ce158SMartin Mares 1271727ce158SMartin Mares * setpci: Rewritten to use the library. 1272727ce158SMartin Mares 1273727ce158SMartin Mares * Released as 1.99.1. 1274727ce158SMartin Mares 1275727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 1276727ce158SMartin Mares 1277727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 1278727ce158SMartin Mares bytes of config space to get full standard header. 1279727ce158SMartin Mares 1280727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 1281727ce158SMartin Mares 1282727ce158SMartin Mares * Started the "New Generation" branch and introduced the 1283727ce158SMartin Mares PCI library. 1284727ce158SMartin Mares 1285727ce158SMartin Mares * lspci: Rewritten to use the library. 1286727ce158SMartin Mares 12876ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 12886ece6bc6SMartin Mares 12896ece6bc6SMartin Mares * Released as version 1.10. 12906ece6bc6SMartin Mares 12916ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 12926ece6bc6SMartin Mares 12936ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 12946ece6bc6SMartin Mares Dag Wieers <[email protected]>. 12956ece6bc6SMartin Mares 12961212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 12971212dd6dSMartin Mares 12981212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 12991212dd6dSMartin Mares 1300d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 1301d38471fdSMartin Mares 1302d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 1303d38471fdSMartin Mares 1304d38471fdSMartin Mares * Released as version 1.09. 1305d38471fdSMartin Mares 1306371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 1307371f605bSMartin Mares 1308371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 1309371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 1310371f605bSMartin Mares 131110be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 131210be47abSMartin Mares 131310be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 131410be47abSMartin Mares 1315472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 1316472bd340SMartin Mares 1317472bd340SMartin Mares * Released as version 1.08. 1318472bd340SMartin Mares 1319472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 1320472bd340SMartin Mares 1321472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 1322472bd340SMartin Mares 1323472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 1324472bd340SMartin Mares it's impossible to crash the machine by single typo. 1325472bd340SMartin Mares 1326472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 1327472bd340SMartin Mares 1328072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 1329072c77e5SMartin Mares 1330072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 1331072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 1332072c77e5SMartin Mares for an idea. 1333072c77e5SMartin Mares 1334b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 1335b7554856SMartin Mares 1336b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 1337b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 1338b7554856SMartin Mares 1339ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 1340ce503b7fSMartin Mares 1341ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 1342ce503b7fSMartin Mares (show_machine): Print subsystem ID. 1343ce503b7fSMartin Mares 1344ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 1345ce503b7fSMartin Mares 1346ce503b7fSMartin Mares * Released as version 1.07. 1347ce503b7fSMartin Mares 134896e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 134996e4f295SMartin Mares 135096e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 135196e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 135296e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 135396e4f295SMartin Mares 135496e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 135596e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 135696e4f295SMartin Mares full description of all header fields supported by the chip. 135796e4f295SMartin Mares 13586ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 13596ae3650aSMartin Mares 1360304f9a0bSMartin Mares * Released as 1.06. 1361304f9a0bSMartin Mares 13626ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 13636ae3650aSMartin Mares 13646ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 13656ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 13666ae3650aSMartin Mares kernels). Ugly. 13676ae3650aSMartin Mares 13686ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 13696ae3650aSMartin Mares 13704b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 13714b88a6b8SMartin Mares 13724b88a6b8SMartin Mares * Released as 1.05. 13734b88a6b8SMartin Mares 13744b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 13754b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 13764b88a6b8SMartin Mares 13774b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 13784b88a6b8SMartin Mares 13794b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 13804b88a6b8SMartin Mares <[email protected]> for reporting this. 13814b88a6b8SMartin Mares 13824b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 13834b88a6b8SMartin Mares 13844b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 13854b88a6b8SMartin Mares 13864b88a6b8SMartin Mares * Released as 1.04. 13874b88a6b8SMartin Mares 13884b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 13894b88a6b8SMartin Mares 13904b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 13914b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 13924b88a6b8SMartin Mares for bug report. 13934b88a6b8SMartin Mares 13949b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 13959b306998SMartin Mares 13969b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 13979b306998SMartin Mares 1398b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 1399b372672fSMartin Mares 1400b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 1401b372672fSMartin Mares 1402b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 1403b2c9b373SMartin Mares 1404b372672fSMartin Mares * Released as 1.03. 1405b372672fSMartin Mares 1406b2c9b373SMartin Mares * setpci.8: Written. 1407b2c9b373SMartin Mares 1408b2c9b373SMartin Mares * setpci.c: Finished. 1409b2c9b373SMartin Mares 1410b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 1411b2c9b373SMartin Mares and print it if not in buscentric mode. 1412b2c9b373SMartin Mares 1413e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 1414e4842ff3SMartin Mares 1415e4842ff3SMartin Mares * setpci.c: Added. 1416e4842ff3SMartin Mares 1417e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 1418e4842ff3SMartin Mares 1419e4842ff3SMartin Mares * lspci.8: Updated the documentation. 1420e4842ff3SMartin Mares 1421e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 1422e4842ff3SMartin Mares 1423e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 1424e4842ff3SMartin Mares 1425008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 1426008407bdSMartin Mares 1427008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 1428008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 1429008407bdSMartin Mares 14300a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 14310a33d0ecSMartin Mares 14320a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 14330a33d0ecSMartin Mares dump. 14340a33d0ecSMartin Mares 14350a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 14360a33d0ecSMartin Mares 14370a33d0ecSMartin Mares * Released as version 1.02. 14380a33d0ecSMartin Mares 14390a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 14400a33d0ecSMartin Mares 14410a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 14420a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 14430a33d0ecSMartin Mares 1444fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 1445fb38eee8SMartin Mares 1446fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 1447fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 1448fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 1449fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 1450fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 1451fb38eee8SMartin Mares 1452fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 1453fb38eee8SMartin Mares 14542f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 14552f48f637SMartin Mares 14562f48f637SMartin Mares * README: Updated. 14572f48f637SMartin Mares 14582f48f637SMartin Mares * lspci.8: Created a man page. 14592f48f637SMartin Mares 14602f48f637SMartin Mares * Releasing as version 1.0. 14612f48f637SMartin Mares 14622f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 14632f48f637SMartin Mares 14642f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 14652f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 14662f48f637SMartin Mares on sparc64. 14672f48f637SMartin Mares 14682f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 14692f48f637SMartin Mares (show_htype2): Stub routine. 14702f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 14712f48f637SMartin Mares upper part of the PCI config space. 1472