1934e7e36SMartin Mares2006-09-10 Martin Mares <[email protected]> 2934e7e36SMartin Mares 3*f09856deSMartin Mares * pci.ids: Updated to the current database snapshot. 4*f09856deSMartin Mares 5934e7e36SMartin Mares * lspci.c (scan_device): If an error occurs when reading the standard config 6934e7e36SMartin Mares header of a device, report it and ignore the device and return with exit 7934e7e36SMartin Mares code 2 at the end. 8934e7e36SMartin Mares 9b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 10b2055313SMartin Mares 11fb260653SMartin Mares * Released as 2.2.4. 12fb260653SMartin Mares 131865e2ddSMartin Mares * maint/release: Remind the maintainer about the current PCI_LIB_VERSION. 141865e2ddSMartin Mares 15028dffb2SMartin Mares * lib/pci.h: Updated PCI_LIB_VERSION. 16028dffb2SMartin Mares 1713081e57SMartin Mares * lspci.c (show_machine): In the `-m' mode, do proper shell escaping 1813081e57SMartin Mares if the fields printed contain quotes or backslashes. 1913081e57SMartin Mares 203fd6b4d2SMartin Mares * lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse 213fd6b4d2SMartin Mares of the `Device' tag for two different purposes. 223fd6b4d2SMartin Mares 23840d09aeSMartin Mares * Makefile: Moved all system-dependent decisions to lib/configure, 24840d09aeSMartin Mares since config.mk is included in the top-level Makefile anyway. 25840d09aeSMartin Mares 262100f710SMartin Mares * lib/configure: When configuring for Linux, ignore the kernel version 272100f710SMartin Mares and always build all access methods. 282100f710SMartin Mares 293e9c7a18SMartin Mares * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers 303e9c7a18SMartin Mares at many non-interesting places with gcc 3.4. 313e9c7a18SMartin Mares 3294db5c82SMartin Mares * Whitespace cleanup of all source files. 3394db5c82SMartin Mares 34cc062b4aSMartin Mares * The pci.ids file can be stored compressed if zlib is available. 35cc062b4aSMartin Mares Added transparent decompression to lib/names.c, modified update-pciids.sh 36cc062b4aSMartin Mares to keep the file compressed if applicable, updated Makefiles. 37cc062b4aSMartin Mares Based on a patch by Matthew Wilcox, but all the bugs are mine. 38cc062b4aSMartin Mares 39f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 40f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 41f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 42f4ddb8d3SMartin Mares 4316e37012SMartin Mares * Added .gitignore files. 4416e37012SMartin Mares 45c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 46c7f5314dSMartin Mares 47afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 48afebde01SMartin Mares 49fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 50fd54ccebSMartin Mares 51b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 52b2055313SMartin Mares defined in the pci.ids file. 53b2055313SMartin Mares 544254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 554254d153SMartin Mares 564254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 574254d153SMartin Mares 581c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 591c5cc9b5SMartin Mares 6038a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 6138a9e3c3SMartin Mares 62c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 63c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 64c7ddfa3eSMartin Mares 65248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 66248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 67248a04f8SMartin Mares 68f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 69f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 70f29dcc87SMartin Mares 718eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 728eab3bffSMartin Mares 73d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 74d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 75d305d704SMartin Mares directly. 76d305d704SMartin Mares 779007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 789007a292SMartin Mares the port access state to generic code. 799007a292SMartin Mares 80bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 81bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 82bd20d5b5SMartin Mares 8373750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 8473750606SMartin Mares 85d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 86d71daa45SMartin Mares 871c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 881c5cc9b5SMartin Mares 891c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 901c5cc9b5SMartin Mares 91c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 92c2b144efSMartin Mares 9314d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 9414d4f989SMartin Mares 9514d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 9614d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 9714d4f989SMartin Mares incomplete, though. 9814d4f989SMartin Mares 99c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 100c2b144efSMartin Mares 101c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 102c2b144efSMartin Mares be modified by kernel fixups. 103c2b144efSMartin Mares 104c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 105c2b144efSMartin Mares 106bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 107bc2eed2dSMartin Mares 108bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 109bc2eed2dSMartin Mares for the idea. 110bc2eed2dSMartin Mares 111bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 112bc2eed2dSMartin Mares cleaned up the name selection code. 113bc2eed2dSMartin Mares 114c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 115c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 116c72eeddeSMartin Mares 117c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 118c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 119c72eeddeSMartin Mares 1202f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 1212f294d4bSMartin Mares 1222f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 1232f294d4bSMartin Mares 12481afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 12581afa98cSMartin Mares name when printing an error message. 12681afa98cSMartin Mares 1270ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 1280ac282f2SMartin Mares 1290ac282f2SMartin Mares * README: Mention the public GIT tree. 1300ac282f2SMartin Mares 1310ac282f2SMartin Mares * README: Updated the list of ports. 1320ac282f2SMartin Mares 133d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 134d1058e9dSMartin Mares 135d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 136d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 137d1058e9dSMartin Mares 138abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 139abf8d505SMartin Mares 1402ae2d1aeSMartin Mares * Released as 2.2.3. 1412ae2d1aeSMartin Mares 1422ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 1432ae2d1aeSMartin Mares in -m mode. 1442ae2d1aeSMartin Mares 1452ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 1462ae2d1aeSMartin Mares 1471d5cf727SMartin Mares * Released as 2.2.2. 1481d5cf727SMartin Mares 1498a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 1508a830168SMartin Mares 151b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 152b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 153b6359063SMartin Mares the existing FreeBSD interface. 154b6359063SMartin Mares 155abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 156abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 157abf8d505SMartin Mares 1586ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 1596ac70402SMartin Mares 1602a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 1612a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 1622a124daeSMartin Mares forces domain display even there. 1632a124daeSMartin Mares 1646ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 1656ac70402SMartin Mares guaranteed to be stable between lspci versions. 1666ac70402SMartin Mares 1671bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 1681bbdea17SMartin Mares 169af61eb25SMartin Mares * lspci.man: Documented the -D switch. 170af61eb25SMartin Mares 171af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 172af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 173af61eb25SMartin Mares all devices. 174af61eb25SMartin Mares 1757a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 1767a61b93cSMartin Mares 1771bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 1781bbdea17SMartin Mares 1790e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 1800e78ef8aSMartin Mares 1810e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 1820e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 1830e78ef8aSMartin Mares 184e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 185e6859953SMartin Mares 186e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 187e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 188e6859953SMartin Mares 189e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 190e6859953SMartin Mares 191a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 192a99c0d69SMartin Mares 193e4af70c6SMartin Mares * Released as 2.2.1. 194e4af70c6SMartin Mares 195a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 196a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 197a99c0d69SMartin Mares 198f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 199f23fd3fcSMartin Mares 200f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 201f23fd3fcSMartin Mares 20215296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 20315296723SMartin Mares 20415296723SMartin Mares * Released as 2.2.0. 20515296723SMartin Mares 20640b6d93fSMartin Mares * pci.ids: Updated copyright header. 20740b6d93fSMartin Mares 20815296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 20915296723SMartin Mares 64-bit addresses, they are now always supported. 21015296723SMartin Mares 21115296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 21215296723SMartin Mares in bus-centric mode. 21315296723SMartin Mares 21415296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 21515296723SMartin Mares 21615296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 21715296723SMartin Mares are shorter. 21815296723SMartin Mares 219224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 220224707baSMartin Mares 221224707baSMartin Mares * Released as 2.1.99-test11. 222224707baSMartin Mares 223224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 224224707baSMartin Mares 225aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 226aeaca5d3SMartin Mares 227224707baSMartin Mares * Released as 2.1.99-test10. 228224707baSMartin Mares 22963e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 23063e6f2e0SMartin Mares 231043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 232043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 233043ebdeeSMartin Mares 234043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 235043ebdeeSMartin Mares 236aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 237aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 238aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 239aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 240aeaca5d3SMartin Mares 241aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 242aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 243aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 244aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 245aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 246aeaca5d3SMartin Mares 247121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 248121c76c9SMartin Mares 24954e13765SMartin Mares * Released as 2.1.99-test9. 25054e13765SMartin Mares 25154e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 25254e13765SMartin Mares gcc versions when optimizing anyway. 25354e13765SMartin Mares 25454e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 25554e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 25654e13765SMartin Mares 25754e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 25854e13765SMartin Mares 25984d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 26084d437d6SMartin Mares methods and which operations are privileged. 26184d437d6SMartin Mares 26284d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 26384d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 26484d437d6SMartin Mares portions of the configuration space being inaccessible, for example 26584d437d6SMartin Mares due to insufficient access rights. 26684d437d6SMartin Mares 2673b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 2683b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 2693b8bf739SMartin Mares as I haven't seen the spec). 2703b8bf739SMartin Mares 2713b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 2723b8bf739SMartin Mares 27384d437d6SMartin Mares * lspci.c: Removed C++ comments. 27484d437d6SMartin Mares 2753b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 2763b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 2773b8bf739SMartin Mares 2783b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 2793b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 2803b8bf739SMartin Mares list. 2813b8bf739SMartin Mares 282f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 283f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 284f7821e53SMartin Mares access more than that. 285ea4e5f5dSMartin Mares 28646ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 28746ea554dSMartin Mares 2888afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 2898afaab22SMartin Mares 290121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 291121c76c9SMartin Mares 292c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 293c1c2c30eSMartin Mares 294b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 295b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 296b9ca9147SMartin Mares 297c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 298b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 299c1c2c30eSMartin Mares 30026542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 30126542a0bSMartin Mares 30226542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 30326542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 30426542a0bSMartin Mares 3056aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 3066aa54f1bSMartin Mares 307aabb0a92SMartin Mares * Released as 2.1.99-test8. 308aabb0a92SMartin Mares 309f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 310f31412d1SMartin Mares no longer exported to the outside world. 311f31412d1SMartin Mares 312ee7d8384SMartin Mares * README.Windows: Updated. 313ee7d8384SMartin Mares 314ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 315ee7d8384SMartin Mares 316ee7d8384SMartin Mares * win32/config.h: Added. 317ee7d8384SMartin Mares 318ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 319ee7d8384SMartin Mares 320ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 321ee7d8384SMartin Mares C library for use on systems where the default libraries lack 322ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 323ee7d8384SMartin Mares 324ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 325ee7d8384SMartin Mares Alexander Stock. 326ee7d8384SMartin Mares 327489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 328489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 329489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 330489233b4SMartin Mares be gone. 331489233b4SMartin Mares 332489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 333489233b4SMartin Mares 334489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 335489233b4SMartin Mares 336489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 337489233b4SMartin Mares it is included unconditionally in lib/types.h. 338489233b4SMartin Mares 339489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 340489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 341489233b4SMartin Mares from lib/pci.h to lib/types.h. 342489233b4SMartin Mares 343489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 344489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 345489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 346489233b4SMartin Mares 347489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 348489233b4SMartin Mares headers with the kernel a couple of years ago. 349489233b4SMartin Mares 3509bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 3519bb4b4eaSMartin Mares 3526aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 3536aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 3546aa54f1bSMartin Mares 3556aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 3566aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 3576aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 3586aa54f1bSMartin Mares 3596aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 3606aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 3616aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 3626aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 3636aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 3646aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 3656aa54f1bSMartin Mares mapping the regions and doing I/O on them. 3666aa54f1bSMartin Mares 36780e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 36880e6c636SMartin Mares 36980e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 37080e6c636SMartin Mares 371d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 372d6324891SMartin Mares 373d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 374d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 375d6324891SMartin Mares 376ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 377ec25b52dSMartin Mares 378362be683SMartin Mares * Released as 2.1.99-test7. 379362be683SMartin Mares 380ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 381ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 382ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 383ec25b52dSMartin Mares 384ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 385ec25b52dSMartin Mares 386ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 387ec25b52dSMartin Mares 388ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 389ec25b52dSMartin Mares 390ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 391ec25b52dSMartin Mares 392ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 393ec25b52dSMartin Mares 394ec25b52dSMartin Mares * lspci.man: Added -xxxx. 395ec25b52dSMartin Mares 39609817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 39709817437SMartin Mares 398d1fa27ebSMartin Mares * Released as 2.1.99-test6. 399d1fa27ebSMartin Mares 4004d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 4014d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 4024d67aa89SMartin Mares 4034d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 4044d67aa89SMartin Mares failures. 4054d67aa89SMartin Mares 4064d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 4074d67aa89SMartin Mares 4084d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 4094d67aa89SMartin Mares Patch by Matthew Wilcox. 4104d67aa89SMartin Mares 4114d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 4124d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 4134d67aa89SMartin Mares 41409817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 41509817437SMartin Mares report correct errors reported by the libpci instead. 41609817437SMartin Mares 41709817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 41809817437SMartin Mares Better caching of config registers. 41909817437SMartin Mares 42009817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 42109817437SMartin Mares 42209817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 42309817437SMartin Mares just return the appropriate error code. 42409817437SMartin Mares 42509817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 42609817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 42709817437SMartin Mares and of course in the dump reader. 42809817437SMartin Mares 4290d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 4300d656226SMartin Mares 431c0eece92SMartin Mares * Released as 2.1.99-test5. 432c0eece92SMartin Mares 433a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 434a2413560SMartin Mares 435a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 436a2413560SMartin Mares macros. 437a2413560SMartin Mares 438a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 439a2413560SMartin Mares 440a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 441a2413560SMartin Mares 442a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 443a2413560SMartin Mares Stock <[email protected]>. 444a2413560SMartin Mares 445a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 446a2413560SMartin Mares changes to the configure script. 447a2413560SMartin Mares 4480d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 4490d656226SMartin Mares 450138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 451138c0385SMartin Mares 4529f490382SMartin Mares * Released as 2.1.99-test4. 4539f490382SMartin Mares 454cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 455cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 456cce2caacSMartin Mares 457b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 458b569ef09SMartin Mares (show_agp): rate[] could overflow. 459b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 460b569ef09SMartin Mares 461bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 462bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 463bfc4fe7aSMartin Mares by me. 464bfc4fe7aSMartin Mares 465bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 466bfc4fe7aSMartin Mares Again thanks to Maciej. 467bfc4fe7aSMartin Mares 468138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 469138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 470138c0385SMartin Mares 4718fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 4728fc75dbcSMartin Mares 47381abd2a7SMartin Mares * Released as 2.1.99-test3. 47481abd2a7SMartin Mares 4751f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 4761f7c91ccSMartin Mares 4771f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 4781f7c91ccSMartin Mares 47984c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 4801f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 4811f7c91ccSMartin Mares as well. 48284c8d1bbSMartin Mares 48384c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 48484c8d1bbSMartin Mares 48584c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 48684c8d1bbSMartin Mares 48784c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 48884c8d1bbSMartin Mares 48984c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 49084c8d1bbSMartin Mares 49184c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 49284c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 49384c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 49484c8d1bbSMartin Mares 49584c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 49684c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 49784c8d1bbSMartin Mares 49884c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 49984c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 50084c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 50184c8d1bbSMartin Mares 50211f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 50311f7b31bSMartin Mares is not supported by all C libraries. 50411f7b31bSMartin Mares 50511f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 50611f7b31bSMartin Mares full dependecies for the library in the top-level Makefile; hmmm, another 50711f7b31bSMartin Mares thing to rewrite some day). 50811f7b31bSMartin Mares 50911f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 51011f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 51111f7b31bSMartin Mares 51211f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 51311f7b31bSMartin Mares 51411f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 51511f7b31bSMartin Mares of Linux libc moved there. 51611f7b31bSMartin Mares 51711f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 51811f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 51911f7b31bSMartin Mares values and for too large values. 52011f7b31bSMartin Mares 5214284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 5224284af58SMartin Mares package is pretty cross-platform now :) 5234284af58SMartin Mares 5244284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 5254284af58SMartin Mares 526ab12277eSMartin Mares * Released as 2.1.99-test2. 527ab12277eSMartin Mares 528ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 529ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 530ab12277eSMartin Mares 531ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 532ab12277eSMartin Mares making releases including inter-version diffs etc. 533ab12277eSMartin Mares 534ab12277eSMartin Mares * Makefile: Cleaned up. 535ab12277eSMartin Mares 536ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 537ab12277eSMartin Mares this time the version checks should be right. 538ab12277eSMartin Mares 539ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 540ab12277eSMartin Mares 5416d722cd6SMartin Mares * Released as 2.1.99-test1. 5426d722cd6SMartin Mares 543dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 544dd33246aSMartin Mares Remove shadows of the syscall access method which was never 545dd33246aSMartin Mares implemented. 546dd33246aSMartin Mares 54780b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 54880b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 54980b3121aSMartin Mares 5506aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 5516aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 5526aea909aSMartin Mares 5536aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 5546aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 5556aea909aSMartin Mares 5566aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 5576aea909aSMartin Mares 558f701ff47SMartin Mares Merged bug fixes from Debian patches: 559f701ff47SMartin Mares 560f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 561f701ff47SMartin Mares 562f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 563f701ff47SMartin Mares 5642240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 5652240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 566f701ff47SMartin Mares multiple functions. 5672240db8cSMartin Mares 5682240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 5692240db8cSMartin Mares 57045902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 57145902995SMartin Mares for the patches: 57245902995SMartin Mares 57345902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 57445902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 57545902995SMartin Mares to __FreeBSD_version. 57645902995SMartin Mares 57745902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 57845902995SMartin Mares 5798fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 5808fc75dbcSMartin Mares and cleaned up: 5818fc75dbcSMartin Mares 5828fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 5838fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 5848fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 5858fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 5868fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 5878fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 5888fc75dbcSMartin Mares 5899739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 5909739916eSMartin Mares 5919739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 5929739916eSMartin Mares 5939739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 5949739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 5959739916eSMartin Mares use them in all cases. 5969739916eSMartin Mares 5979739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 5989739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 5999739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 6009739916eSMartin Mares directly in pci.h. 6019739916eSMartin Mares 6029739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 6039739916eSMartin Mares 60480459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 60580459c65SMartin Mares 60680459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 60780459c65SMartin Mares 60880459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 60980459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 61080459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 61180459c65SMartin Mares u8 to u32. 61280459c65SMartin Mares 613a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 614a85769a8SMartin Mares 6157dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 6167dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 6177dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 6187dacd9c8SMartin Mares 6197dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 6207dacd9c8SMartin Mares at all places. 6217dacd9c8SMartin Mares 6224063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 6234063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 6244063c31cSMartin Mares 6253fe8a38dSMartin Mares * setpci.c (main): Better error messages. 6263fe8a38dSMartin Mares 6275f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 6285f5b1a7bSMartin Mares 6295f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 6305f5b1a7bSMartin Mares Document the new behaviour. 631b251f40bSMartin Mares 63291e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 63391e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 63491e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 63591e37a49SMartin Mares 6364afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 6374afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 6384afd29d3SMartin Mares a different fix. 6394afd29d3SMartin Mares 640b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 641b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 642b0f1a03bSMartin Mares 643b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 644b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 645b7fd8e19SMartin Mares 64605bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 64705bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 64805bb10a2SMartin Mares 649a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 650a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 651a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 652a832f6f1SMartin Mares for reporting this problem. 653a832f6f1SMartin Mares 654a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 655a85769a8SMartin Mares 656a85769a8SMartin Mares * Makefile: Added some more warnings. 657a85769a8SMartin Mares 658b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 659b7351143SMartin Mares 660b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 661b7351143SMartin Mares 662b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 663b7351143SMartin Mares 6642a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 6652a5d5cf9SMartin Mares 6662a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 6672a5d5cf9SMartin Mares 668d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 669d772ef15SMartin Mares 6701b95f396SMartin Mares * Released as 2.1.11. 6711b95f396SMartin Mares 672c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 673c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 674c83293ebSMartin Mares scattered between the installation rules. The default installation 675c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 676c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 677c83293ebSMartin Mares installations to interfere with the default ones. 678c83293ebSMartin Mares 679c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 680c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 681c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 682c83293ebSMartin Mares has passed since the last version which used it). 683c83293ebSMartin Mares 684e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 685e2875dcdSMartin Mares 6861b95f396SMartin Mares * Added the update-ids utility. 6870138a2a7SMartin Mares 688d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 689d772ef15SMartin Mares probably never be needed. 690d772ef15SMartin Mares 691eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 692eb620239SMartin Mares 693130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 694130090bdSMartin Mares 695eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 696eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 697eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 698eb620239SMartin Mares 699848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 700848b4347SMartin Mares 701579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 702579b19ffSMartin Mares 703579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 704579b19ffSMartin Mares there is no reason to prefer the kernel version. 705579b19ffSMartin Mares 706579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 707579b19ffSMartin Mares 708848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 709848b4347SMartin Mares <[email protected]>. 710848b4347SMartin Mares 711f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 712f0952474SMartin Mares 713f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 714f0952474SMartin Mares 715d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 716d2f666f1SMartin Mares 7179bd44bb0SMartin Mares * Released as 2.1.10. 7189bd44bb0SMartin Mares 719a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 720a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 721a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 722a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 723a33d0eb7SMartin Mares pciids.sf.net. 724a33d0eb7SMartin Mares 725a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 726a33d0eb7SMartin Mares 727a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 728a33d0eb7SMartin Mares 729a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 730a33d0eb7SMartin Mares not in the tarball). 731a33d0eb7SMartin Mares 732d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 733d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 734d2f666f1SMartin Mares a comment only at the start of the line. 735d2f666f1SMartin Mares 736ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 737ee551b73SMartin Mares 73807159913SMartin Mares * README: Rewritten. 73907159913SMartin Mares 740ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 741ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 742ee551b73SMartin Mares Jean Delvare <[email protected]>. 743ee551b73SMartin Mares 744bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 745bc7b1d62SMartin Mares 7465f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 7475f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 7485f5e6f64SMartin Mares 7495f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 7505f5e6f64SMartin Mares 7515f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 7525f5e6f64SMartin Mares 753a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 754a1052f16SMartin Mares 755bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 756bc7b1d62SMartin Mares function 7. 757bc7b1d62SMartin Mares 758bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 759bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 760bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 761bc7b1d62SMartin Mares 762f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 763f793990cSMartin Mares 764ee551b73SMartin Mares * Released as 2.1.9. 765ee551b73SMartin Mares 766f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 767f793990cSMartin Mares (http://pciids.sourceforge.net/). 768f793990cSMartin Mares 7691d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 7701d174e56SMartin Mares 7711d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 7721d174e56SMartin Mares 77365b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 77465b4327eSMartin Mares 77565b4327eSMartin Mares * Makefile (uninstall): Fixed. 77665b4327eSMartin Mares 77765b4327eSMartin Mares * pci.ids: ID updates. 77865b4327eSMartin Mares 7794a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 7804a219d5fSMartin Mares 7814a219d5fSMartin Mares * Released as 2.1.8. 7824a219d5fSMartin Mares 7834a219d5fSMartin Mares * pci.ids: ID updates. 7844a219d5fSMartin Mares 7854a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 7864a219d5fSMartin Mares 7874a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 7884a219d5fSMartin Mares 7894a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 7904a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 7914a219d5fSMartin Mares bogus class info. 7924a219d5fSMartin Mares 79310c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 79410c90662SMartin Mares 79572b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 79672b9b690SMartin Mares 79710c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 79810c90662SMartin Mares 79910c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 80010c90662SMartin Mares 801a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 802a239ade6SMartin Mares 803a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 804a239ade6SMartin Mares 805a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 806a239ade6SMartin Mares 807a239ade6SMartin Mares * pci.ids: Various ID updates. 808a239ade6SMartin Mares 8092c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 8102c83b860SMartin Mares 8112c83b860SMartin Mares * Released as 2.1.7. 8122c83b860SMartin Mares 8132c83b860SMartin Mares * pciutils.spec: Added German description. 8142c83b860SMartin Mares 8152c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 8162c83b860SMartin Mares are the same as device ID and just output subsystem name according to 8172c83b860SMartin Mares device name. 8182c83b860SMartin Mares 8192c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 8202c83b860SMartin Mares 8212c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 8222c83b860SMartin Mares 8232c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 8242c83b860SMartin Mares 8252c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 8262c83b860SMartin Mares "echo -n" if the shell isn't bash. 8272c83b860SMartin Mares 8282c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 8292c83b860SMartin Mares (insert_dev): Avoid returning a void value. 8302c83b860SMartin Mares 8312c83b860SMartin Mares * Makefile: Choose which install utility to use according to 8322c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 8332c83b860SMartin Mares Part of the AIX port. 8342c83b860SMartin Mares 8352c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 8362c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 8372c83b860SMartin Mares 8382c83b860SMartin Mares * pci.ids: Few new ID's. 8392c83b860SMartin Mares 8402c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 8412c83b860SMartin Mares when not compiled by GCC. 8422c83b860SMartin Mares 843c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 844c1a828daSMartin Mares 845c1a828daSMartin Mares * Released as 2.1.6. 846c1a828daSMartin Mares 847c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 848c1a828daSMartin Mares Mayer <[email protected]> and synced the 849c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 850c1a828daSMartin Mares 851e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 852e91dd3abSMartin Mares 853a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 854a80b79a9SMartin Mares the library. 855a80b79a9SMartin Mares 85689984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 85789984232SMartin Mares by Adam Sulmicki. 85889984232SMartin Mares 859e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 860e91dd3abSMartin Mares 86178d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 86278d9c5e2SMartin Mares 86378d9c5e2SMartin Mares * Released as 2.1.5. 86478d9c5e2SMartin Mares 86578d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 86678d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 86778d9c5e2SMartin Mares 86878d9c5e2SMartin Mares * pci.ids: New ID's. 86978d9c5e2SMartin Mares 87078d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 87178d9c5e2SMartin Mares no argument. 87278d9c5e2SMartin Mares 873f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 874f8141ae2SMartin Mares 875f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 876f8141ae2SMartin Mares glibc. 877f8141ae2SMartin Mares 878f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 879f8141ae2SMartin Mares 880f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 881f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 882f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 883f8141ae2SMartin Mares 88459e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 88559e76e8bSMartin Mares 88659e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 88759e76e8bSMartin Mares 88859e76e8bSMartin Mares * Released as version 2.1.4. 88959e76e8bSMartin Mares 8902dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 8912dfd48cdSMartin Mares 8922715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 8932715403fSMartin Mares 89481077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 89581077814SMartin Mares 89681077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 89781077814SMartin Mares 89881077814SMartin Mares * pci.ids: New ID's. 89981077814SMartin Mares 9002dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 9012dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 9022dfd48cdSMartin Mares 9035a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 9045a258860SMartin Mares 9055a258860SMartin Mares * Released as version 2.1.3. 9065a258860SMartin Mares 9075a258860SMartin Mares * pci.ids: New ID's. 9085a258860SMartin Mares 9095a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 9105a258860SMartin Mares 9115a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 9125a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 9135a258860SMartin Mares 9140c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 9150c047bbeSMartin Mares 9160c047bbeSMartin Mares * Released as version 2.1.2. 9170c047bbeSMartin Mares 9180c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 9190c047bbeSMartin Mares 92033bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 92133bc28a5SMartin Mares 92239231205SMartin Mares * Released as version 2.1.1. 92339231205SMartin Mares 92433bc28a5SMartin Mares * pci.ids: Several new ID's. 92533bc28a5SMartin Mares 92633bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 92733bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 92833bc28a5SMartin Mares by Petr Soucek <[email protected]>. 92933bc28a5SMartin Mares 9308d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 9318d047897SMartin Mares 9328d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 9338d047897SMartin Mares ID list, show it. 9348d047897SMartin Mares 9356afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 9366afc6538SMartin Mares 9376afc6538SMartin Mares * Released as version 2.1. 9386afc6538SMartin Mares 9396afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 9406afc6538SMartin Mares lots of contributed entries. 9416afc6538SMartin Mares 9428f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 9438f756113SMartin Mares 9448f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 9458f756113SMartin Mares 946d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 947d4798a32SMartin Mares 948d4798a32SMartin Mares * setpci.man: Better example. 949d4798a32SMartin Mares 950d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 951d4798a32SMartin Mares 952d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 953d4798a32SMartin Mares 954d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 955d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 956d4798a32SMartin Mares New ID's, as usually. 957d4798a32SMartin Mares 958e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 959e306e911SMartin Mares 960e306e911SMartin Mares * pci.ids: New ID's. As usually. 961e306e911SMartin Mares 962e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 963e306e911SMartin Mares unless we're vvvery verbose. 964e306e911SMartin Mares 965e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 966e306e911SMartin Mares 967e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 968e306e911SMartin Mares 969e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 970e64a576cSMartin Mares 971e64a576cSMartin Mares * pci.ids: New ID's. Again. 972e64a576cSMartin Mares 973c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 974c36c0862SMartin Mares 975c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 976c36c0862SMartin Mares due to bus-centric mode being enabled). 977c36c0862SMartin Mares 9781ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 9791ca42433SMartin Mares 980168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 981168b4f46SMartin Mares 982168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 983168b4f46SMartin Mares 984168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 985168b4f46SMartin Mares 986168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 987168b4f46SMartin Mares 988168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 989168b4f46SMartin Mares incorrectly set to device ID. 990168b4f46SMartin Mares 991168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 992168b4f46SMartin Mares 993168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 994168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 995168b4f46SMartin Mares as GNU date does. Use sed instead. 996168b4f46SMartin Mares (install): Use `-c' when calling install. 997168b4f46SMartin Mares 998168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 999168b4f46SMartin Mares by Jari Kirma <[email protected]>. 1000168b4f46SMartin Mares 1001bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 1002bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 1003bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 1004bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 1005bc6346dfSMartin Mares with lseek/read/write. 1006bc6346dfSMartin Mares 10071ca42433SMartin Mares * pci.ids: Some more IDs. 10081ca42433SMartin Mares 10091ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 10101ca42433SMartin Mares 10111ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 10121ca42433SMartin Mares by Tim Waugh <[email protected]>. 10131ca42433SMartin Mares 1014e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 1015e95c8373SMartin Mares 1016e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 1017e95c8373SMartin Mares 1018e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 1019e95c8373SMartin Mares HAVE_LONG_ADDRESS. 1020e95c8373SMartin Mares 1021e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 1022e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 1023e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 1024e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 1025e95c8373SMartin Mares on Alpha. 1026e95c8373SMartin Mares 1027e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 1028e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 1029e95c8373SMartin Mares (show_caps): Seperated capability dumping, because it should 1030e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1031e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 1032e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 1033e95c8373SMartin Mares is already defined differently in htype2. 1034e95c8373SMartin Mares 1035e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1036e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1037e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1038e95c8373SMartin Mares 1039e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1040e95c8373SMartin Mares (required by the PCI 2.2 specs). 1041e95c8373SMartin Mares 1042e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1043e95c8373SMartin Mares 1044e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1045e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1046e95c8373SMartin Mares ROMs et cetera. 1047e95c8373SMartin Mares 1048e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1049e95c8373SMartin Mares of the structure. 1050e95c8373SMartin Mares 1051e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1052e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1053e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1054e95c8373SMartin Mares 105582ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 105682ce97c9SMartin Mares 105782ce97c9SMartin Mares * Makefile: 105882ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 105982ce97c9SMartin Mares * pci.ids: 106082ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 106182ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 106282ce97c9SMartin Mares to determine the revision from the device ID. 106382ce97c9SMartin Mares - Same for the Tseng ET4000. 106482ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 106582ce97c9SMartin Mares - Removed some unnecessary strings 106682ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 106782ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 106882ce97c9SMartin Mares - Lots of other new vendors & devices 106982ce97c9SMartin Mares - Other additional small cleanups. 107082ce97c9SMartin Mares 10717bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 10727bed2d83SMartin Mares 10737bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 10747bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 10757bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 10767bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 10777bed2d83SMartin Mares 10785ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 10795ba3a475SMartin Mares 10805ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 10815ba3a475SMartin Mares <[email protected]>. The command register was displayed 10825ba3a475SMartin Mares incorrectly. 10835ba3a475SMartin Mares 10845ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 10855ba3a475SMartin Mares 10865ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 10875ba3a475SMartin Mares numbers if not supplied by the libc. 10885ba3a475SMartin Mares 108955c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 109055c815b5SMartin Mares 109155c815b5SMartin Mares * Released the whole package as version 2.0. 109255c815b5SMartin Mares 109355c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 109455c815b5SMartin Mares 109555c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 109655c815b5SMartin Mares on the linux-pci list. 109755c815b5SMartin Mares 1098dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1099dec16943SMartin Mares 1100dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 1101dec16943SMartin Mares * lib/header.h: Ditto. 1102dec16943SMartin Mares 1103dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 1104dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 1105dec16943SMartin Mares 1106e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1107e33c9c7aSMartin Mares 1108e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1109e33c9c7aSMartin Mares <[email protected]>. 1110e33c9c7aSMartin Mares 1111e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1112e33c9c7aSMartin Mares 1113f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1114f3395cc5SMartin Mares 1115f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1116f3395cc5SMartin Mares as a multi-function device, because several single-function devices 1117f3395cc5SMartin Mares don't decode the function bits at all. 1118f3395cc5SMartin Mares 1119f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1120f3395cc5SMartin Mares 1121f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 1122f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 1123f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 1124f3395cc5SMartin Mares 1125f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1126f3395cc5SMartin Mares 1127f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1128f3395cc5SMartin Mares 1129f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1130f3395cc5SMartin Mares or 64-bit depending on CPU. 1131f3395cc5SMartin Mares 1132f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1133f3395cc5SMartin Mares according to bus address width. 1134f3395cc5SMartin Mares 11351c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 11361c31d620SMartin Mares 11371c31d620SMartin Mares * Released as 1.99.4. 11381c31d620SMartin Mares 11391c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 11401c31d620SMartin Mares registers and PCI Power Management registers (the latter 11411c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 11421c31d620SMartin Mares since I don't have the PCI Power Management document). 11431c31d620SMartin Mares 11441c31d620SMartin Mares * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 11451c31d620SMartin Mares by FLAG macro. 11461c31d620SMartin Mares 11471c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 11481c31d620SMartin Mares 11491812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 11501812a795SMartin Mares 11511812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 11521812a795SMartin Mares 11531812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 11541812a795SMartin Mares (show): Split to show() and show_device(). 11551812a795SMartin Mares 11561812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 11571812a795SMartin Mares set it to the real access method afterwards. 11581812a795SMartin Mares 11591812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 11601812a795SMartin Mares 11611812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 11621812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 11631812a795SMartin Mares 1164f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1165f6c86928SMartin Mares 1166f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 1167f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 1168f6c86928SMartin Mares 1169f6c86928SMartin Mares * Released as 1.99.3. 1170f6c86928SMartin Mares 1171b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1172b5137411SMartin Mares 1173d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 1174d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 1175d6b297d0SMartin Mares functions and device IDs), which is not going to happen 1176d6b297d0SMartin Mares before 2.3, we'll use our own definiton of the header. 1177d6b297d0SMartin Mares 1178b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 1179b5137411SMartin Mares 1180b5137411SMartin Mares * lspci.c (show_htype0): Display capability lists whereever 1181b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 1182b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 1183b5137411SMartin Mares portion of the configuration space and are thus available 1184b5137411SMartin Mares only to root unless you read a dump. 1185b5137411SMartin Mares 1186b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 1187b5137411SMartin Mares 1188b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 1189b5137411SMartin Mares 1190b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 1191b5137411SMartin Mares 119281ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 119381ce358dSMartin Mares 119481ce358dSMartin Mares * pci.ids: Added few devices. 119581ce358dSMartin Mares 1196727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1197727ce158SMartin Mares 1198727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 1199727ce158SMartin Mares to the configure script and also substituted to man pages. 1200727ce158SMartin Mares 1201727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1202727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 1203727ce158SMartin Mares 1204727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1205727ce158SMartin Mares 1206727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 1207727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 1208727ce158SMartin Mares 1209727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1210727ce158SMartin Mares whenever available. 1211727ce158SMartin Mares 1212727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 1213727ce158SMartin Mares read/write and real errors. 1214727ce158SMartin Mares 1215727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1216727ce158SMartin Mares libpci respects buscentric mode automatically. 1217727ce158SMartin Mares 1218727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1219727ce158SMartin Mares bytes of header (the whole standard part). 1220727ce158SMartin Mares 1221727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 1222727ce158SMartin Mares PCI access debugging option here. 1223727ce158SMartin Mares 1224727ce158SMartin Mares * Released as 1.99.2. 1225727ce158SMartin Mares 1226727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1227727ce158SMartin Mares 1228727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 1229727ce158SMartin Mares 1230727ce158SMartin Mares * Removed few unused variables. 1231727ce158SMartin Mares 1232727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1233727ce158SMartin Mares 1234727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 1235727ce158SMartin Mares here. This includes parsing of libpci-related options. 1236727ce158SMartin Mares 1237727ce158SMartin Mares * More library tweaks. 1238727ce158SMartin Mares 1239727ce158SMartin Mares * filter.c, names.c: Moved to library. 1240727ce158SMartin Mares 1241727ce158SMartin Mares * setpci: Rewritten to use the library. 1242727ce158SMartin Mares 1243727ce158SMartin Mares * Released as 1.99.1. 1244727ce158SMartin Mares 1245727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 1246727ce158SMartin Mares 1247727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 1248727ce158SMartin Mares bytes of config space to get full standard header. 1249727ce158SMartin Mares 1250727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 1251727ce158SMartin Mares 1252727ce158SMartin Mares * Started the "New Generation" branch and introduced the 1253727ce158SMartin Mares PCI library. 1254727ce158SMartin Mares 1255727ce158SMartin Mares * lspci: Rewritten to use the library. 1256727ce158SMartin Mares 12576ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 12586ece6bc6SMartin Mares 12596ece6bc6SMartin Mares * Released as version 1.10. 12606ece6bc6SMartin Mares 12616ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 12626ece6bc6SMartin Mares 12636ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 12646ece6bc6SMartin Mares Dag Wieers <[email protected]>. 12656ece6bc6SMartin Mares 12661212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 12671212dd6dSMartin Mares 12681212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 12691212dd6dSMartin Mares 1270d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 1271d38471fdSMartin Mares 1272d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 1273d38471fdSMartin Mares 1274d38471fdSMartin Mares * Released as version 1.09. 1275d38471fdSMartin Mares 1276371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 1277371f605bSMartin Mares 1278371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 1279371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 1280371f605bSMartin Mares 128110be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 128210be47abSMartin Mares 128310be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 128410be47abSMartin Mares 1285472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 1286472bd340SMartin Mares 1287472bd340SMartin Mares * Released as version 1.08. 1288472bd340SMartin Mares 1289472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 1290472bd340SMartin Mares 1291472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 1292472bd340SMartin Mares 1293472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 1294472bd340SMartin Mares it's impossible to crash the machine by single typo. 1295472bd340SMartin Mares 1296472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 1297472bd340SMartin Mares 1298072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 1299072c77e5SMartin Mares 1300072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 1301072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 1302072c77e5SMartin Mares for an idea. 1303072c77e5SMartin Mares 1304b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 1305b7554856SMartin Mares 1306b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 1307b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 1308b7554856SMartin Mares 1309ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 1310ce503b7fSMartin Mares 1311ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 1312ce503b7fSMartin Mares (show_machine): Print subsystem ID. 1313ce503b7fSMartin Mares 1314ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 1315ce503b7fSMartin Mares 1316ce503b7fSMartin Mares * Released as version 1.07. 1317ce503b7fSMartin Mares 131896e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 131996e4f295SMartin Mares 132096e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 132196e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 132296e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 132396e4f295SMartin Mares 132496e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 132596e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 132696e4f295SMartin Mares full description of all header fields supported by the chip. 132796e4f295SMartin Mares 13286ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 13296ae3650aSMartin Mares 1330304f9a0bSMartin Mares * Released as 1.06. 1331304f9a0bSMartin Mares 13326ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 13336ae3650aSMartin Mares 13346ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 13356ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 13366ae3650aSMartin Mares kernels). Ugly. 13376ae3650aSMartin Mares 13386ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 13396ae3650aSMartin Mares 13404b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 13414b88a6b8SMartin Mares 13424b88a6b8SMartin Mares * Released as 1.05. 13434b88a6b8SMartin Mares 13444b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 13454b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 13464b88a6b8SMartin Mares 13474b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 13484b88a6b8SMartin Mares 13494b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 13504b88a6b8SMartin Mares <[email protected]> for reporting this. 13514b88a6b8SMartin Mares 13524b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 13534b88a6b8SMartin Mares 13544b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 13554b88a6b8SMartin Mares 13564b88a6b8SMartin Mares * Released as 1.04. 13574b88a6b8SMartin Mares 13584b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 13594b88a6b8SMartin Mares 13604b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 13614b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 13624b88a6b8SMartin Mares for bug report. 13634b88a6b8SMartin Mares 13649b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 13659b306998SMartin Mares 13669b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 13679b306998SMartin Mares 1368b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 1369b372672fSMartin Mares 1370b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 1371b372672fSMartin Mares 1372b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 1373b2c9b373SMartin Mares 1374b372672fSMartin Mares * Released as 1.03. 1375b372672fSMartin Mares 1376b2c9b373SMartin Mares * setpci.8: Written. 1377b2c9b373SMartin Mares 1378b2c9b373SMartin Mares * setpci.c: Finished. 1379b2c9b373SMartin Mares 1380b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 1381b2c9b373SMartin Mares and print it if not in buscentric mode. 1382b2c9b373SMartin Mares 1383e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 1384e4842ff3SMartin Mares 1385e4842ff3SMartin Mares * setpci.c: Added. 1386e4842ff3SMartin Mares 1387e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 1388e4842ff3SMartin Mares 1389e4842ff3SMartin Mares * lspci.8: Updated the documentation. 1390e4842ff3SMartin Mares 1391e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 1392e4842ff3SMartin Mares 1393e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 1394e4842ff3SMartin Mares 1395008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 1396008407bdSMartin Mares 1397008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 1398008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 1399008407bdSMartin Mares 14000a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 14010a33d0ecSMartin Mares 14020a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 14030a33d0ecSMartin Mares dump. 14040a33d0ecSMartin Mares 14050a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 14060a33d0ecSMartin Mares 14070a33d0ecSMartin Mares * Released as version 1.02. 14080a33d0ecSMartin Mares 14090a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 14100a33d0ecSMartin Mares 14110a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 14120a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 14130a33d0ecSMartin Mares 1414fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 1415fb38eee8SMartin Mares 1416fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 1417fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 1418fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 1419fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 1420fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 1421fb38eee8SMartin Mares 1422fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 1423fb38eee8SMartin Mares 14242f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 14252f48f637SMartin Mares 14262f48f637SMartin Mares * README: Updated. 14272f48f637SMartin Mares 14282f48f637SMartin Mares * lspci.8: Created a man page. 14292f48f637SMartin Mares 14302f48f637SMartin Mares * Releasing as version 1.0. 14312f48f637SMartin Mares 14322f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 14332f48f637SMartin Mares 14342f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 14352f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 14362f48f637SMartin Mares on sparc64. 14372f48f637SMartin Mares 14382f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 14392f48f637SMartin Mares (show_htype2): Stub routine. 14402f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 14412f48f637SMartin Mares upper part of the PCI config space. 1442