1*e3832c8fSMartin Mares2018-08-12 Martin Mares <[email protected]> 2*e3832c8fSMartin Mares 3*e3832c8fSMartin Mares * Released as 3.6.2. 4*e3832c8fSMartin Mares 5*e3832c8fSMartin Mares * Added "-P" and "-PP" switches to lspci, which display the path 6*e3832c8fSMartin Mares through bridges to each device. 7*e3832c8fSMartin Mares 8*e3832c8fSMartin Mares * Fixed a couple of bugs in computation of bus topology. It was 9*e3832c8fSMartin Mares previously used only for the tree display, but we re-use it for 10*e3832c8fSMartin Mares computing the paths. 11*e3832c8fSMartin Mares 12*e3832c8fSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 13*e3832c8fSMartin Mares 142b1451ebSMartin Mares2018-07-12 Martin Mares <[email protected]> 152b1451ebSMartin Mares 162b1451ebSMartin Mares * Released as 3.6.1. 172b1451ebSMartin Mares 182b1451ebSMartin Mares * Fixed compilation issues on Linux systems with MUSL libc. 192b1451ebSMartin Mares 20b3fb64ceSMartin Mares2018-06-30 Martin Mares <[email protected]> 21b3fb64ceSMartin Mares 22b3fb64ceSMartin Mares * Released as 3.6.0. 23b3fb64ceSMartin Mares 24b3fb64ceSMartin Mares * BARs reported by the OS, but not set on the device itself are 25b3fb64ceSMartin Mares reliably marked with "[virtual]". 26b3fb64ceSMartin Mares 27b3fb64ceSMartin Mares * Library: Introduced a generic mechanism of string properties. This 28b3fb64ceSMartin Mares avoids lots of special cases and makes ABI compatibility easier. 29b3fb64ceSMartin Mares 30b3fb64ceSMartin Mares * On Linux systems with OpenFirmware, report corresponding device tree nodes 31b3fb64ceSMartin Mares as device properties. 32b3fb64ceSMartin Mares 33b3fb64ceSMartin Mares * VPD decoder knows several non-standard extensions. 34b3fb64ceSMartin Mares 35b3fb64ceSMartin Mares * When PCIe link speed is less than the maximum supported by the 36b3fb64ceSMartin Mares device, it is explicitly marked as "downgraded". 37b3fb64ceSMartin Mares 38b3fb64ceSMartin Mares * Several new capabilities are not decoded yet, but at least their 39b3fb64ceSMartin Mares names are printed. 40b3fb64ceSMartin Mares 41b3fb64ceSMartin Mares * The Null capability is easily decoded. 42b3fb64ceSMartin Mares 43b3fb64ceSMartin Mares * Formatting of several capabilities was cleaned up. 44b3fb64ceSMartin Mares 45b3fb64ceSMartin Mares * The VGA16 bit in the bridge control register is now supported. 46b3fb64ceSMartin Mares 47b3fb64ceSMartin Mares * Added a port to SylixOS. Thanks to YuJian Gong for contribution. 48b3fb64ceSMartin Mares 49b3fb64ceSMartin Mares * Added a port to DOS/DJGPP. Thanks to Rudolf Marek for contribution. 50b3fb64ceSMartin Mares 51b3fb64ceSMartin Mares * The order in which back-ends are probed was decoupled from the 52b3fb64ceSMartin Mares internal back-end IDs. This helps, because new back-ends must have 53b3fb64ceSMartin Mares their ID allocated at the end to keep the ABI, but they might need 54b3fb64ceSMartin Mares to be proved earlier. 55b3fb64ceSMartin Mares 56b3fb64ceSMartin Mares * The fbsd-device back-end should work again. 57b3fb64ceSMartin Mares 58b3fb64ceSMartin Mares * Fixed a couple of bugs. Most notably, DeviceName was not printed. 59b3fb64ceSMartin Mares 60b3fb64ceSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 61b3fb64ceSMartin Mares 62b72f3827SMartin Mares2017-11-17 Martin Mares <[email protected]> 63b72f3827SMartin Mares 64b72f3827SMartin Mares * Released as 3.5.6. 65b72f3827SMartin Mares 66b72f3827SMartin Mares * Improvements of the FreeBSD back-end: read-only access for non-root, 67b72f3827SMartin Mares support DragonFly BSD, support extended config space. 68b72f3827SMartin Mares 69b72f3827SMartin Mares * MN VPD keyword is decoded correctly. 70b72f3827SMartin Mares 71b72f3827SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 72b72f3827SMartin Mares 73dfd15a80SMartin Mares2017-07-05 Martin Mares <[email protected]> 74dfd15a80SMartin Mares 75dfd15a80SMartin Mares * Released as 3.5.5. 76dfd15a80SMartin Mares 77dfd15a80SMartin Mares * Better decoding of AER capability. 78dfd15a80SMartin Mares 79dfd15a80SMartin Mares * "Slot Implemented" flag is decoded for PCI/PCI-X to PCIe bridges. 80dfd15a80SMartin Mares 81dfd15a80SMartin Mares * Minor fixes of decoding other capabilities. 82dfd15a80SMartin Mares 83dfd15a80SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 84dfd15a80SMartin Mares 859f9e373bSMartin Mares2017-02-25 Martin Mares <[email protected]> 869f9e373bSMartin Mares 879f9e373bSMartin Mares * Released as 3.5.4. 889f9e373bSMartin Mares 899f9e373bSMartin Mares * Previous version broke compilation on systems, for which lib/types.h 909f9e373bSMartin Mares did not provide a 64-bit integer type. It is provided everywhere now. 919f9e373bSMartin Mares 922ee7d45aSMartin Mares2017-02-15 Martin Mares <[email protected]> 932ee7d45aSMartin Mares 942ee7d45aSMartin Mares * Released as 3.5.3. 952ee7d45aSMartin Mares 962ee7d45aSMartin Mares * When lspci looks for Linux kernel modules, it uses the default 972ee7d45aSMartin Mares path to module directory provided by libkmod. Previously, 982ee7d45aSMartin Mares it tried to construct the path explicitly, which need not 992ee7d45aSMartin Mares work on all systems. 1002ee7d45aSMartin Mares 1012ee7d45aSMartin Mares * Improved formatting of memory and I/O ranges behind a bridge. 1022ee7d45aSMartin Mares 1032ee7d45aSMartin Mares * PCIe link capabilities now display GEN4 speed (16GT/s). 1042ee7d45aSMartin Mares 1052ee7d45aSMartin Mares * PCIe device capabilities now show bits related to atomic operations. 1062ee7d45aSMartin Mares Thanks to Satanand Burla for a patch. 1072ee7d45aSMartin Mares 1082ee7d45aSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 1092ee7d45aSMartin Mares 1104a190235SMartin Mares2016-10-03 Martin Mares <[email protected]> 1114a190235SMartin Mares 1124a190235SMartin Mares * Released as 3.5.2. 1134a190235SMartin Mares 1144a190235SMartin Mares * The L1 power management capability is now decoded more 1154a190235SMartin Mares thoroughly. Thanks to Rajat Jain for the patch. 1164a190235SMartin Mares 1174a190235SMartin Mares * The table of configuration registers used by setpci 1184a190235SMartin Mares had a bug in the definition of SUBSYSTEM_VENDOR_ID. 1194a190235SMartin Mares 1202f8b8f9fSMartin Mares2016-05-22 Martin Mares <[email protected]> 1212f8b8f9fSMartin Mares 1222f8b8f9fSMartin Mares * Released as 3.5.1. 1232f8b8f9fSMartin Mares 1242f8b8f9fSMartin Mares * Fixed symbol versioning of pci_init(). 1252f8b8f9fSMartin Mares 126ab6ed5fdSMartin Mares2016-05-19 Martin Mares <[email protected]> 127ab6ed5fdSMartin Mares 128ab6ed5fdSMartin Mares * Released as 3.5.0. 129ab6ed5fdSMartin Mares 130ab6ed5fdSMartin Mares * New capabilities decoded: Downstream Port Containment, 131ab6ed5fdSMartin Mares Precision Time Measurement. Thanks to Keith Busch and 132ab6ed5fdSMartin Mares Jonathan Yong. 133ab6ed5fdSMartin Mares 134ab6ed5fdSMartin Mares * Domain numbers extended to 31 bits. This will be used by the 135ab6ed5fdSMartin Mares Linux kernel on some machines in near future. 136ab6ed5fdSMartin Mares 137ab6ed5fdSMartin Mares * Enhanced allocation regions are now decoded on Linux. 138ab6ed5fdSMartin Mares 139ab6ed5fdSMartin Mares * The NetBSD back-end supports PCIe extended configuration space. 140ab6ed5fdSMartin Mares 141ab6ed5fdSMartin Mares * Updated pci.ids to the current snapshot of the database. 142ab6ed5fdSMartin Mares 14337c9315cSMartin Mares2016-01-03 Martin Mares <[email protected]> 14437c9315cSMartin Mares 14537c9315cSMartin Mares * Released as 3.4.1. 14637c9315cSMartin Mares 14737c9315cSMartin Mares * New capabilities decoded: Process Address Space, Page Request 14837c9315cSMartin Mares Interface, Enhanced Allocation. Thanks to David Daney and 14937c9315cSMartin Mares David Woodhouse. 15037c9315cSMartin Mares 15137c9315cSMartin Mares * DevCap SlotPowerLimit is now decoded for all components with 15237c9315cSMartin Mares upstream ports. 15337c9315cSMartin Mares 15437c9315cSMartin Mares * Database mirror at SourceForge moved to GitHub. 15537c9315cSMartin Mares 15637c9315cSMartin Mares * Updated pci.ids to the current snapshot of the database. 15737c9315cSMartin Mares 158508c53ebSMartin Mares2015-09-14 Martin Mares <[email protected]> 159508c53ebSMartin Mares 160508c53ebSMartin Mares * Released as 3.4.0. 161508c53ebSMartin Mares 162508c53ebSMartin Mares * On Linux, we report NUMA nodes of devices. 163508c53ebSMartin Mares 164508c53ebSMartin Mares * The sysfs back-end does not die on read errors 165508c53ebSMartin Mares of optional attributes. Instead, a warning is produced. 166508c53ebSMartin Mares 167508c53ebSMartin Mares * Fixed several minor bugs. 168508c53ebSMartin Mares 169508c53ebSMartin Mares * Updated pci.ids to the current snapshot of the database. 170508c53ebSMartin Mares 171949f4469SMartin Mares2015-04-09 Martin Mares <[email protected]> 172949f4469SMartin Mares 173949f4469SMartin Mares * Released as 3.3.1. 174949f4469SMartin Mares 175949f4469SMartin Mares * Removed hacks for backward compatibility with Linux libc5, 176949f4469SMartin Mares which were breaking newer non-glibc Linux systems. Thanks 177949f4469SMartin Mares to Felix Janda. 178949f4469SMartin Mares 179949f4469SMartin Mares * Display VirtIO vendor-specific capability. Patch by Gerd 180949f4469SMartin Mares Hoffmann. 181949f4469SMartin Mares 182949f4469SMartin Mares * Fixed memory leak in name cache. 183949f4469SMartin Mares 1843bc4dd2cSMartin Mares * Updated pci.ids to the current snapshot of the database. 1853bc4dd2cSMartin Mares 186f14d4d87SMartin Mares2014-11-10 Martin Mares <[email protected]> 187f14d4d87SMartin Mares 1881481a1caSMartin Mares * Released as 3.3.0. 1891481a1caSMartin Mares (celebrating a one-year anniversary of the previous version :)) 19028617b24SMartin Mares 19128617b24SMartin Mares * Device names exported by BIOS are displayed on Linux. 19228617b24SMartin Mares 19328617b24SMartin Mares * On Linux systems, HWDB is used to look up device names 19428617b24SMartin Mares when our ID database gives no match. (More precisely, 19528617b24SMartin Mares HWDB is consulted after local pci.ids, but before using 19628617b24SMartin Mares network to query online pci.ids.) Thanks to Tom Gundersen 19728617b24SMartin Mares for the initial patch. 19828617b24SMartin Mares 19928617b24SMartin Mares * Added experimental back-end for OS X / Darwin. Thanks to 20028617b24SMartin Mares Richard Yao for providing it. 20128617b24SMartin Mares 202afb881ccSMartin Mares * Filters now support matching by device class. Original 203afb881ccSMartin Mares patch by Matthew Wilcox, wrappers for ABI compatibility 204afb881ccSMartin Mares by me. 205afb881ccSMartin Mares 20628617b24SMartin Mares * Interrupt Pin and Interrupt Line registers are displayed 20728617b24SMartin Mares for bridge devices, too. 20828617b24SMartin Mares 20928617b24SMartin Mares * Several portability bugs have been fixed. 21028617b24SMartin Mares 21128617b24SMartin Mares * Several typos have been fixed. Also, use of questionable 21228617b24SMartin Mares constructs in man pages has been reduced. 21328617b24SMartin Mares 21428617b24SMartin Mares * PCIe link capabilities now include the ASPMOptComp bit. 21528617b24SMartin Mares 21628617b24SMartin Mares * The "CRS Software Visibility" bit is now decoded properly. 21728617b24SMartin Mares 21828617b24SMartin Mares * Updated pci.ids to the current snapshot of the database. 21928617b24SMartin Mares 220dc49926aSMartin Mares2013-11-10 Martin Mares <[email protected]> 221dc49926aSMartin Mares 222dc49926aSMartin Mares * Released as 3.2.1. 223dc49926aSMartin Mares 224dc49926aSMartin Mares * CardBus bridge capabilities are displayed. 225dc49926aSMartin Mares 226dc49926aSMartin Mares * PCIe L1 PM substates are decoded. 227dc49926aSMartin Mares 228dc49926aSMartin Mares * Various bugs were fixed in decoding of PCIe capabilities. 229dc49926aSMartin Mares 230dc49926aSMartin Mares * The sysfs back-end does not spit out unnecessary warnings when 231dc49926aSMartin Mares empty slots report only a partial device address. This actually 232dc49926aSMartin Mares happens on IBM pSeries. 233dc49926aSMartin Mares 234dc49926aSMartin Mares * Updated pci.ids to the today's snapshot of the database. 235dc49926aSMartin Mares 2366a4909eeSMartin Mares2013-04-19 Martin Mares <[email protected]> 2376a4909eeSMartin Mares 2386a4909eeSMartin Mares * Released as 3.2.0. 2396a4909eeSMartin Mares 2406a4909eeSMartin Mares * On newer Linux systems, we use libkmod to look up kernel modules 24169a77b5cSMartin Mares (modules.pcimap no longer exists). To facilitate this, libpci 2426a4909eeSMartin Mares is able to look up module aliases in sysfs. 2436a4909eeSMartin Mares 2446a4909eeSMartin Mares * Various minor bug fixes. 2456a4909eeSMartin Mares 2466a4909eeSMartin Mares * Updated pci.ids to the today's snapshot of the database. 2476a4909eeSMartin Mares 24827c0f3acSMartin Mares2012-06-25 Martin Mares <[email protected]> 24927c0f3acSMartin Mares 25027c0f3acSMartin Mares * Released as 3.1.10. 25127c0f3acSMartin Mares 25227c0f3acSMartin Mares * Decoding of LTR/OBFF in PCIe capabilities. 25327c0f3acSMartin Mares 25427c0f3acSMartin Mares * Various minor bug fixes. 25527c0f3acSMartin Mares 25627c0f3acSMartin Mares * Updated pci.ids to the today's snapshot of the database. 25727c0f3acSMartin Mares 25868e5ff17SMartin Mares2012-01-14 Martin Mares <[email protected]> 25968e5ff17SMartin Mares 26068e5ff17SMartin Mares * Released as 3.1.9. 26168e5ff17SMartin Mares 26268e5ff17SMartin Mares * Updated README. 26368e5ff17SMartin Mares 2646a4909eeSMartin Mares * Wherever we mention the PCI ID database, we now refer to 26568e5ff17SMartin Mares http://pci-ids.ucw.cz/ and the sf.net site is mentioned only 26668e5ff17SMartin Mares as a mirror. This includes update-pciids. 26768e5ff17SMartin Mares 26868e5ff17SMartin Mares * Decode PCIe Gen 3 speeds and link status fields. 26968e5ff17SMartin Mares 27068e5ff17SMartin Mares * Various minor bug fixes. 27168e5ff17SMartin Mares 27268e5ff17SMartin Mares * Updated pci.ids to the today's snapshot of the database. 27368e5ff17SMartin Mares 274a70dab15SMartin Mares2011-10-02 Martin Mares <[email protected]> 275a70dab15SMartin Mares 276a70dab15SMartin Mares * Released as 3.1.8. 277a70dab15SMartin Mares 278a70dab15SMartin Mares * More capabilities: Transaction Processing Hints, Latency Tolerance 279a70dab15SMartin Mares Reporting. Thanks to Jesse Barnes. 280a70dab15SMartin Mares 281a70dab15SMartin Mares * Added BeOS and Haiku ports. Contributed by Francois Revol. 282a70dab15SMartin Mares 283a70dab15SMartin Mares * pciutils.pc now uses Libs.private properly. 284a70dab15SMartin Mares 285a70dab15SMartin Mares * When we format a name and it does not fit in the buffer, we truncate 286a70dab15SMartin Mares it instead of returning "buffer too small" instead. This works on all 287a70dab15SMartin Mares platforms with sane (i.e., C99-compatible) snprintf(). 288a70dab15SMartin Mares 289a70dab15SMartin Mares * Various minor bug fixes. 290a70dab15SMartin Mares 291a70dab15SMartin Mares * Updated pci.ids to the today's snapshot of the database. 292a70dab15SMartin Mares 2936bc2bc1cSMartin Mares2010-01-31 Martin Mares <[email protected]> 2946bc2bc1cSMartin Mares 2956bc2bc1cSMartin Mares * Released as 3.1.7. 2966bc2bc1cSMartin Mares 2976bc2bc1cSMartin Mares * Minor improvements and bug fixes in decoding of the Virtual Channel 2986bc2bc1cSMartin Mares capability. 2996bc2bc1cSMartin Mares 300e3a052daSMartin Mares2010-01-24 Martin Mares <[email protected]> 301e3a052daSMartin Mares 302e3a052daSMartin Mares * Released as 3.1.6. 303e3a052daSMartin Mares 304e3a052daSMartin Mares * More capabilities decoded: Virtual Channel (except arbitration 305e3a052daSMartin Mares tables), Root Complex Link, Vendor-Specific (header only), SATA HBA. 306e3a052daSMartin Mares 307e3a052daSMartin Mares * All extended capabilities have their version displayed (-vv or more). 308e3a052daSMartin Mares 3099978b6fdSMartin Mares2010-01-19 Martin Mares <[email protected]> 3109978b6fdSMartin Mares 3119978b6fdSMartin Mares * Released as 3.1.5. 3129978b6fdSMartin Mares 3139978b6fdSMartin Mares * Updated pci.ids to the today's snapshot of the database. 3149978b6fdSMartin Mares 3159978b6fdSMartin Mares * When scanning extended capabilities, properly mask the lowest 2 bits, 3169978b6fdSMartin Mares which are currently reserved. This avoids unaligned access errors on 3179978b6fdSMartin Mares broken hardware (see tests/broken-ecaps). 3189978b6fdSMartin Mares 3199978b6fdSMartin Mares * Large bar sizes are displayed in human-readable format (with units). 3209978b6fdSMartin Mares Thanks to Matthew Wilcox. 3219978b6fdSMartin Mares 3229978b6fdSMartin Mares * Physical slot information is displayed correctly for multi-function cards. 3239978b6fdSMartin Mares Fixed by Matthew Wilcox. 3249978b6fdSMartin Mares 3259978b6fdSMartin Mares * Fixed a couple of typos everywhere. 3269978b6fdSMartin Mares 3279978b6fdSMartin Mares * Library: Fixed bugs in freeing of capabilities. 3289978b6fdSMartin Mares 3299978b6fdSMartin Mares * Windows back-end compiles again. 3309978b6fdSMartin Mares 331c67775bcSMartin Mares2009-08-14 Martin Mares <[email protected]> 332c67775bcSMartin Mares 333ebb9bc54SMartin Mares * Released as 3.1.4. 334ebb9bc54SMartin Mares (sorry that I have missed 22/7 and released it later :-)) 335c67775bcSMartin Mares 336c67775bcSMartin Mares * Updated pci.ids to the today's snapshot of the database. 337c67775bcSMartin Mares 338c67775bcSMartin Mares * Fixed memory and file descriptor leak in the dump back-end. 339c67775bcSMartin Mares 340c67775bcSMartin Mares * The SR-IOV capability decoder now prints the VF BAR's. 341c67775bcSMartin Mares Patch by Chris Wright, cleaned up by me. 342c67775bcSMartin Mares 343c67775bcSMartin Mares * On request of certain company's lawyers, we now include a copy 344c67775bcSMartin Mares of the GPL with our package. It seems that the pciutils are getting 345c67775bcSMartin Mares mature if the most important bug of the month was this one ;-) 346c67775bcSMartin Mares 34710df48cbSMartin Mares2009-07-04 Martin Mares <[email protected]> 34810df48cbSMartin Mares 34910df48cbSMartin Mares * Released as 3.1.3. 35010df48cbSMartin Mares 35110df48cbSMartin Mares * Updated pci.ids to the current snapshot of the database. 35210df48cbSMartin Mares 35310df48cbSMartin Mares * The VPD parser now reports unknown and vendor-defined items 35410df48cbSMartin Mares properly. It also stops on any item in unknown format, avoiding long 35510df48cbSMartin Mares output on bogus VPD data. Thanks to Ben Hutchings and Matthew Wilcox. 35610df48cbSMartin Mares 35710df48cbSMartin Mares * The MSI-X table size now matches the spec. Thanks to Michael S. 35810df48cbSMartin Mares Tsirkin. 35910df48cbSMartin Mares 36010df48cbSMartin Mares * The Power Management capability now includes the soft reset bit. 36110df48cbSMartin Mares Thanks to Yu Zhao. 36210df48cbSMartin Mares 36310df48cbSMartin Mares * Decoding of the Advanced Features capability has been added. 36410df48cbSMartin Mares Thanks to Yu Zhao. 36510df48cbSMartin Mares 36610df48cbSMartin Mares * The whole package compiles on GNU/kFreeBSD again. 36710df48cbSMartin Mares 36810df48cbSMartin Mares The following patches have been contributed by Matthew Wilcox: 36910df48cbSMartin Mares 37010df48cbSMartin Mares * The procfs back-end is able to cope with /proc/bus/pci 37110df48cbSMartin Mares containing names with domains, which occur on sparc64 and 37210df48cbSMartin Mares possibly other architectures due to a kernel bug. 37310df48cbSMartin Mares 37410df48cbSMartin Mares * The sysfs back-end no longer complains when a slot address 37510df48cbSMartin Mares is missing, which happens with old versions of Linux fakephp. 37610df48cbSMartin Mares 37710df48cbSMartin Mares * The Device Serial Number capability is printed in the right 37810df48cbSMartin Mares byte order. 37910df48cbSMartin Mares 38010df48cbSMartin Mares * The MSI and MSI-X capabilities are printed in a prettier way. 38110df48cbSMartin Mares 38210df48cbSMartin Mares * The tree output mode (`lspci -t') shows domain numbers only 38310df48cbSMartin Mares at the root, which makes the output more compact. 38410df48cbSMartin Mares 38510df48cbSMartin Mares * Updated documentation on the bus mapping mode (`lspci -M'). 38610df48cbSMartin Mares 38734683007SMartin Mares2009-02-01 Martin Mares <[email protected]> 38834683007SMartin Mares 38934683007SMartin Mares * Released as 3.1.2. 39034683007SMartin Mares 39134683007SMartin Mares * Fixed another silly bug in the command-line parser of setpci. 39234683007SMartin Mares 393f6523e28SMartin Mares2009-01-30 Martin Mares <[email protected]> 394f6523e28SMartin Mares 395f6523e28SMartin Mares * Released as 3.1.1. 396f6523e28SMartin Mares 397f6523e28SMartin Mares * Updated pci.ids to the current snapshot of the database. 398f6523e28SMartin Mares 399f6523e28SMartin Mares * The configure script now sets LC_ALL to avoid being fooled by 400f6523e28SMartin Mares locale-dependent behavior of `tr'. 401f6523e28SMartin Mares 402f6523e28SMartin Mares * The command-line parser of setpci did sometimes segfault on invalid 403f6523e28SMartin Mares input. Thanks to Andreas Wiese for a fix. 404f6523e28SMartin Mares 405db557900SMartin Mares2009-01-18 Martin Mares <[email protected]> 406db557900SMartin Mares 407db557900SMartin Mares * Released as 3.1.0. 408db557900SMartin Mares 409af358b08SMartin Mares * Updated pci.ids to the current snapshot of the database. 410af358b08SMartin Mares 411db557900SMartin Mares * The Cygwin backend now works on Windows Vista. Thanks to Jonathan 412db557900SMartin Mares Kotta. 413db557900SMartin Mares 414db557900SMartin Mares * Fixed a bug in decoding of the SR-IOV capability. Patch by Yu Zhao. 415db557900SMartin Mares 416db557900SMartin Mares * Details of some PCIe capabilities are displayed only with -vv. 417db557900SMartin Mares 418db557900SMartin Mares * When a BAR is reported by the OS, but not by the device (i.e., 419db557900SMartin Mares it is marked as [virtual] in lspci), the [disabled] flag is 420db557900SMartin Mares suppressed, because it does not make sense in such cases. 421db557900SMartin Mares Patch by Yu Zhao. 422db557900SMartin Mares 4232b31207aSMartin Mares2008-12-13 Martin Mares <[email protected]> 4242b31207aSMartin Mares 4252b31207aSMartin Mares * The source code of lspci has been split to multiple files, hopefully 4262b31207aSMartin Mares making it easier to maintain. 4272b31207aSMartin Mares 4282b31207aSMartin Mares * The library and lspci now know about physical slot names. So far, 4292b31207aSMartin Mares they are provided by the sysfs back-end only. Thanks go to Alex Chiang. 4302b31207aSMartin Mares 4312b31207aSMartin Mares * When a device has the VPD (Vital Product Data) capability and the 4322b31207aSMartin Mares VPD data are supplied by the OS, they are decoded and printed in the 4332b31207aSMartin Mares verbose mode. This currently works only on Linux with the sysfs 4342b31207aSMartin Mares back-end. Thanks to Ben Hutchings of Solarflare for the patch. 4352b31207aSMartin Mares 4362b31207aSMartin Mares * `setpci --version' now works properly. 4372b31207aSMartin Mares 4384d4325f8SMartin Mares * `setpci --dumpregs' prints a table of all known names of 4392b31207aSMartin Mares registers and capabilities. This replaces the table of registers 4402b31207aSMartin Mares in the setpci man page. 4412b31207aSMartin Mares 4422b31207aSMartin Mares * The dry-run mode of setpci gives better feedback. 4432b31207aSMartin Mares 4442b31207aSMartin Mares * The setpci utility is now able to address registers stored in PCI 4452b31207aSMartin Mares capabilities (actually it allows a more general form of relative 4462b31207aSMartin Mares addressing). 4472b31207aSMartin Mares 4482b31207aSMartin Mares * The library has gained functions for working with PCI capabilities. 4492b31207aSMartin Mares 4502b31207aSMartin Mares * Address Translation Services capability is now decoded. Patch by 4512b31207aSMartin Mares Yu Zhao. 4522b31207aSMartin Mares 453b282435dSMartin Mares2008-11-09 Martin Mares <[email protected]> 454b282435dSMartin Mares 455b282435dSMartin Mares * Released as 3.0.3. 456b282435dSMartin Mares 457b282435dSMartin Mares * `lspci -k' now displays the subsystem ID, too. This makes `-k' 458b282435dSMartin Mares show everything needed to identify the device and the available 459b282435dSMartin Mares drivers, which was called for by many users. 460b282435dSMartin Mares 461b282435dSMartin Mares * Fixed spelling of MSI. Patch by Matthew Wilcox. 462b282435dSMartin Mares 463b282435dSMartin Mares * Better support for cross-compilation. Thanks to Alon Bar-Lev 464b282435dSMartin Mares for the patch. 465b282435dSMartin Mares 466b282435dSMartin Mares * Fixed printing of the AER capability. Patch by Max Asbock. 467b282435dSMartin Mares 468b282435dSMartin Mares * HT 1.02 capabilities are decoded as HT 1.03. Suggested by 469b282435dSMartin Mares Carl-Daniel Hailfinger. 470b282435dSMartin Mares 471b282435dSMartin Mares * Fixed Cygwin build. Thanks to Steve Elliott for reporting the bug. 472b282435dSMartin Mares 473b282435dSMartin Mares * Updated pci.ids to the current snapshot of the database. 474b282435dSMartin Mares 475daf2ef4eSMartin Mares2008-09-19 Martin Mares <[email protected]> 476daf2ef4eSMartin Mares 477daf2ef4eSMartin Mares * Released as 3.0.2. 478daf2ef4eSMartin Mares 479daf2ef4eSMartin Mares * Fixed a minor bug in the configure script, which caused warnings 480daf2ef4eSMartin Mares about redefinition of symbols during compilation. 481daf2ef4eSMartin Mares 48238254178SMartin Mares2008-09-11 Martin Mares <[email protected]> 48338254178SMartin Mares 48438254178SMartin Mares * Released as 3.0.1. 48538254178SMartin Mares 48638254178SMartin Mares * Updated pci.ids to the most recent snapshot. 48738254178SMartin Mares 48838254178SMartin Mares * Added a Cygwin port. Patch by Christopher Voltz, ported to the 48938254178SMartin Mares current tree by Martin Mares. 49038254178SMartin Mares 49138254178SMartin Mares * Worked around compatibility problems with various default settings 49238254178SMartin Mares of wget (we have to set --no-timestamping explicitly). Thanks to Ville 49338254178SMartin Mares Skytta for pointing that out. 49438254178SMartin Mares 49538254178SMartin Mares * Fixed printing of MSI capabilities. Thanks to Matthew Wilcox for 49638254178SMartin Mares a patch. 49738254178SMartin Mares 49838254178SMartin Mares * Added decoding of several PCI-X capabilities: device/link/slot 2, 49938254178SMartin Mares Advanced Error Reporting, Access Control Services, Alternative Routing-ID, 50038254178SMartin Mares Single Root I/O Virtualization. Thanks to Yu Zhao for patches. 50138254178SMartin Mares 50238254178SMartin Mares * Fixed bug in filters which caused them to refuse vendor/device ID 0xffff. 50338254178SMartin Mares 50438254178SMartin Mares * README: The linux-pci mailing list has moved to [email protected]. 50538254178SMartin Mares 50638254178SMartin Mares * Fixed several build problems: builds without PCI_USE_DNS on Linux 50738254178SMartin Mares and with PCI_USE_DNS on Solaris and *BSD. Static library mode also 50838254178SMartin Mares compiles again on old versions of GCC. 50938254178SMartin Mares 510cec9f7e7SMartin Mares2008-04-10 Martin Mares <[email protected]> 511cec9f7e7SMartin Mares 512cec9f7e7SMartin Mares * Released as 3.0.0. 513cec9f7e7SMartin Mares 514cec9f7e7SMartin Mares * Updated API and ABI version. 515cec9f7e7SMartin Mares 516cd2f6a34SMartin Mares2008-02-20 Martin Mares <[email protected]> 517cd2f6a34SMartin Mares 518cd2f6a34SMartin Mares * Released as 2.99.1-alpha2. 519cd2f6a34SMartin Mares 520cd2f6a34SMartin Mares * Changed the default domain for the DNS resolver. 521cd2f6a34SMartin Mares 522165a50cbSMartin Mares2008-02-18 Martin Mares <[email protected]> 523165a50cbSMartin Mares 524165a50cbSMartin Mares * Released as 2.99.1-alpha1. 525623234ecSMartin Mares 526a1fca487SMartin Mares * The makefile system has been reworked. All configuration settings 527a1fca487SMartin Mares are now passed to the configure script in environment variables, 528a1fca487SMartin Mares allowing for easy tweaking in the top-level Makefile. All control 529a1fca487SMartin Mares knobs are now described in the README. 530a1fca487SMartin Mares 531a1fca487SMartin Mares * The libpci can be built as a shared library with properly restricted 532a1fca487SMartin Mares symbol exports. Use `make SHARED=yes' to enable that or `make SHARED=local' 533a1fca487SMartin Mares for a local testing build (with hardwired paths to the library, so that 534a1fca487SMartin Mares it does not need installation). 535a1fca487SMartin Mares 536a1fca487SMartin Mares * The example program has been moved from lib/example.c to the top-level 537a1fca487SMartin Mares directory, because it should be built exactly as the other utilities 538a1fca487SMartin Mares are. It has been also improved slightly to educate better. 539a1fca487SMartin Mares 540623234ecSMartin Mares * The i386-ports method is enabled on Linux/x86_64 as well. 541623234ecSMartin Mares 542ae27e293SMartin Mares2008-02-13 Martin Mares <[email protected]> 543ae27e293SMartin Mares 544ae27e293SMartin Mares * Released as 2.2.10-net2. 545ae27e293SMartin Mares 546ae27e293SMartin Mares * Support for resolving of PCI ID's using DNS together with a local 547ae27e293SMartin Mares cache of resolved entries has been added. See the `-q' and `-Q' options 548ae27e293SMartin Mares of lspci. 549ae27e293SMartin Mares 550ae27e293SMartin Mares * The library now has a generic system of settable parameters, which 551ae27e293SMartin Mares also include settings of the DNS resolver and cache. An `-O' option 552ae27e293SMartin Mares has been added to lspci and setpci to allow setting of these options. 553ae27e293SMartin Mares 554ae27e293SMartin Mares * Configuration of the access methods are now specified by the new 555ae27e293SMartin Mares parameter system, replacing the pci_access->method_params array. 556ae27e293SMartin Mares 557ae27e293SMartin Mares * Access methods now also have sensible names and help texts and it 558ae27e293SMartin Mares is possible to look up method ID by a name. 559ae27e293SMartin Mares 560ae27e293SMartin Mares * An `-A' switch has been added to both lspci and setpci, allowing to 561ae27e293SMartin Mares select an arbitrary access method. The `-P' switch (configure proc 562ae27e293SMartin Mares backend) has been removed as it is no longer needed and I do not know 563ae27e293SMartin Mares any its user. 564ae27e293SMartin Mares 565ae27e293SMartin Mares * Several source files have been split for better maintainability 566ae27e293SMartin Mares (most notably the resolving of ID's). 567ae27e293SMartin Mares 568ae27e293SMartin Mares * Man pages and help texts have been updated. A new man page `pcilib(7)' 569ae27e293SMartin Mares has been added and description of library options has been moved there. 570ae27e293SMartin Mares 571ae27e293SMartin Mares * When an unknown device ID is encountered, we print `Device <id>' 572ae27e293SMartin Mares instead of `Unknown device <id>'. It uses less space and it also 573ae27e293SMartin Mares should reduce the number of inexperienced users complaining that 574ae27e293SMartin Mares the device is not supported by the OS. To lookup up OS drivers, 575ae27e293SMartin Mares use the `-k' option. 576ae27e293SMartin Mares 577ae27e293SMartin Mares * PCI_LIB_VERSION has been bumped to 0x020299. 578ae27e293SMartin Mares 579ae27e293SMartin Mares * Makefile: stripping of the binaries during installation can be 580ae27e293SMartin Mares overridden by the STRIP variable. 581ae27e293SMartin Mares 582ae27e293SMartin Mares * lib/types.h: We use the integer types from <stdint.h> if the 583ae27e293SMartin Mares compiler claims C99 support. 584ae27e293SMartin Mares 5850fc3bd18SMartin Mares2008-02-11 Martin Mares <[email protected]> 5860fc3bd18SMartin Mares 5872466b14bSMartin Mares * Released as 2.2.10. 5882466b14bSMartin Mares 5896add52f5SMartin Mares * lspci.c, setpci.c: Cleaned up the list of options. 5906add52f5SMartin Mares 5910fc3bd18SMartin Mares * lib/names.c: Fix displaying of errors reported by zlib. 5920fc3bd18SMartin Mares Previously, the buffer containing the error message had 5930fc3bd18SMartin Mares been deallocated by gzclose() before the message was printed. 5940fc3bd18SMartin Mares 595d26b5378SMartin Mares2008-01-07 Martin Mares <[email protected]> 596d26b5378SMartin Mares 597d26b5378SMartin Mares * update-pciids.sh: Added quiet mode (-q). Clean up uncompressed 598d26b5378SMartin Mares files left by previous versions of the pciutils. Patch by Mike 599d26b5378SMartin Mares Frysinger. 600d26b5378SMartin Mares 601d26b5378SMartin Mares * update-pciids.man: Mention the -q switch. 602d26b5378SMartin Mares 603dc01dd60SMartin Mares2007-11-29 Martin Mares <[email protected]> 604dc01dd60SMartin Mares 605dc01dd60SMartin Mares * lib/dump.c: Squashed compiler warnings about code with 606dc01dd60SMartin Mares no effect (there really were surplus *'s). 607dc01dd60SMartin Mares 60811339c0dSMartin Mares2007-11-06 Martin Mares <[email protected]> 60911339c0dSMartin Mares 61013463566SMartin Mares * Released as 2.2.9. 61113463566SMartin Mares 61211339c0dSMartin Mares * lspci.c: Added a new switch `-k' which requests printing 61311339c0dSMartin Mares of information on kernel drivers attached to each device 61411339c0dSMartin Mares and on kernel modules reporting the ability to handle the 61511339c0dSMartin Mares device. So far, this is supported only on Linux with the 61611339c0dSMartin Mares sysfs back-end, so it is implemented internally in the lspci 61711339c0dSMartin Mares instead of the libpci. Thanks to Anicka <[email protected]> 61811339c0dSMartin Mares for help. 61911339c0dSMartin Mares 6203de798bdSMartin Mares2007-10-19 Martin Mares <[email protected]> 6213de798bdSMartin Mares 6226cdb9d93SMartin Mares * Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS. 6236cdb9d93SMartin Mares Also added an explicit pattern rule for linking to make sure 6246cdb9d93SMartin Mares that LDLIBS is used on all platforms. Thanks to Dan Nicholson 6256cdb9d93SMartin Mares for the suggestion. 6266cdb9d93SMartin Mares 6276cdb9d93SMartin Mares2007-10-19 Martin Mares <[email protected]> 6286cdb9d93SMartin Mares 629a404b115SMartin Mares * Released as 2.2.8. 630a404b115SMartin Mares 6313de798bdSMartin Mares * pci.ids: Revised class codes to match Conventional PCI 3.0 specs. 6323de798bdSMartin Mares Added a couple of new ones, renumbered `ADMA continuous operation' 6333de798bdSMartin Mares prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention 6343de798bdSMartin Mares 0x40) and renumbered the satellite communication controllers. 6353de798bdSMartin Mares 6362d2c4810SMartin Mares * lib/header.h: Include `PCI hot-plug' and `Secure device' 637f7c76ec5SMartin Mares capabilities from PCI 3.0 specs. Also added `SATA HBA' and 638f7c76ec5SMartin Mares `Advanced features' caps from various ECN's. 6392d2c4810SMartin Mares 640fa2273caSMartin Mares * lspci.c: All known capabilities have at least their name displayed 641fa2273caSMartin Mares now. When we are unable to decode them completely, we signalize it 642fa2273caSMartin Mares with a `<?>' mark. 643fa2273caSMartin Mares 644fa2273caSMartin Mares * lspci.man: Document `<?>' and also mention that extended config 645fa2273caSMartin Mares space is currently available only with the linux_sysfs back-end. 646fa2273caSMartin Mares 64731c9bb28SMartin Mares * lspci.c: Decode the Debug port capability (per EHCI 0.96 spec). 64831c9bb28SMartin Mares 649a387042eSMartin Mares * lspci.c: Big code cleanup: re-arranged functions in the code, 650a387042eSMartin Mares renamed everything related to capabilities to cap_* and 651a387042eSMartin Mares all options except verbose to opt_*. 652a387042eSMartin Mares 6539c79fcc4SMartin Mares2007-10-14 Martin Mares <[email protected]> 6549c79fcc4SMartin Mares 6559c79fcc4SMartin Mares * lib/[fno]bsd-*: Removed extraneous braces. 6569c79fcc4SMartin Mares 657d5b4cd14SMartin Mares2007-10-12 Martin Mares <[email protected]> 658d5b4cd14SMartin Mares 659d5b4cd14SMartin Mares * Capability loop detection introduced 2.2.7 did not work 660d5b4cd14SMartin Mares properly with extended capabilities. Fixed. 661d5b4cd14SMartin Mares 662594de878SMartin Mares2007-10-05 Martin Mares <[email protected]> 663594de878SMartin Mares 6648a23eadcSMartin Mares * Released as 2.2.7. 6658a23eadcSMartin Mares 666594de878SMartin Mares * lspci.c (show_caps, show_ext_caps): Detect and report loops in 667594de878SMartin Mares capability lists. 668594de878SMartin Mares 6698a23eadcSMartin Mares * lspci.c, lib/header.h: Finished decoding of the PCI Express 6708a23eadcSMartin Mares capability. The extended capabilities remain undecoded for now, 6718a23eadcSMartin Mares but at least the list of them has been updated to reflect the 6728a23eadcSMartin Mares current PCI Express 2.0 spec. 6738a23eadcSMartin Mares 6748a23eadcSMartin Mares * lspci.c, lib/header.h: Decode new bits of traditional registers 6758a23eadcSMartin Mares as defined by PCIE / PCI-X. This includes discard timers in the bridge 6768a23eadcSMartin Mares control register and INTx enable/status in device control/status 6778a23eadcSMartin Mares registers. 6788a23eadcSMartin Mares 6798a23eadcSMartin Mares * lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed 6808a23eadcSMartin Mares by Marius Strobl. 6818a23eadcSMartin Mares 68299091df9SMartin Mares2007-09-12 Hasso Tepper <[email protected]> 68399091df9SMartin Mares 68499091df9SMartin Mares * Extended the fbsd-device backend to run on Dragonfly BSD. 68599091df9SMartin Mares 68699091df9SMartin Mares * lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>. 68799091df9SMartin Mares 68809156b3bSMartin Mares2007-09-03 Martin Mares <[email protected]> 68909156b3bSMartin Mares 69009156b3bSMartin Mares * Resurrected the Windows port, including cross-compilation by MinGW. 69109156b3bSMartin Mares Patch by Samuel Bronson <[email protected]>. 69209156b3bSMartin Mares 693325a3c50SMartin Mares2007-08-31 Martin Mares <[email protected]> 694325a3c50SMartin Mares 695325a3c50SMartin Mares * Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to allow 696325a3c50SMartin Mares cross-compilation. 697325a3c50SMartin Mares 698a2322147SMartin Mares2007-08-27 Martin Mares <[email protected]> 699a2322147SMartin Mares 700a2322147SMartin Mares * lib/names.c (pci_open): When calling gzopen(), use "rb" file mode 701a2322147SMartin Mares instead of "r". This is needed on DOS systems, where this function 702a2322147SMartin Mares somewhat illogically uses the binary flag for the compressed file 703a2322147SMartin Mares instead of the decompressed stream inside, where binariness really 704a2322147SMartin Mares matters. 705a2322147SMartin Mares 7064f2c5b94SMartin Mares2007-08-14 Martin Mares <[email protected]> 7074f2c5b94SMartin Mares 7084f2c5b94SMartin Mares * lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability, 7094f2c5b94SMartin Mares based on a patch by Jason Gunthorpe. 7104f2c5b94SMartin Mares 7114f2c5b94SMartin Mares * tests/cap-MSI-mapping: Added a test case. I plan to add test cases 7124f2c5b94SMartin Mares (which are dumps of config space) for all new features. 7134f2c5b94SMartin Mares 7140d7f5331SMartin Mares2007-06-20 Martin Mares <[email protected]> 7150d7f5331SMartin Mares 7167cebe481SMartin Mares * Released as 2.2.6. 7177cebe481SMartin Mares 7180d7f5331SMartin Mares * Makefile: Added an "install-lib" target. Thanks to Dan Nicholson 7190d7f5331SMartin Mares for a patch. 7200d7f5331SMartin Mares 7217cebe481SMartin Mares * Makefile, lib/Makefile: Generate and install pkg-config file 7227cebe481SMartin Mares for libpci. Again by Dan Nicholson. 7237cebe481SMartin Mares 7240d7f5331SMartin Mares2007-06-20 Thomas Schwinge <[email protected]> 7250d7f5331SMartin Mares 7260d7f5331SMartin Mares * lib/i386-io-hurd.h: Rewritten for new Hurd kernels. 7270d7f5331SMartin Mares 7286e4a45edSMartin Mares2007-05-04 Martin Mares <[email protected]> 7296e4a45edSMartin Mares 73055c89179SMartin Mares * Released as 2.2.5. 73155c89179SMartin Mares 7326e4a45edSMartin Mares * pci.ids: Updated to the current snapshot of the database. 7336e4a45edSMartin Mares 734d0b07542SMartin Mares2007-02-14 Martin Mares <[email protected]> 735d0b07542SMartin Mares 736d0b07542SMartin Mares * lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type. 737d0b07542SMartin Mares Patch by Mark Glines. 738d0b07542SMartin Mares 7393df35926SMartin Mares2007-02-09 Martin Mares <[email protected]> 7403df35926SMartin Mares 7413df35926SMartin Mares * pci.ids: Updated to the current snapshot of the database. 7423df35926SMartin Mares 743e49ed044SMartin Mares2007-02-06 Martin Mares <[email protected]> 744e49ed044SMartin Mares 7451ac3a99dSMartin Mares * Replaced bzero() by memset() everywhere, it's better to lose a tiny 7461ac3a99dSMartin Mares bit of readability than maintain hacks to make it work on various systems. 7471ac3a99dSMartin Mares 748b0eb18ccSMartin Mares * lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]' 749b0eb18ccSMartin Mares instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise. 750b0eb18ccSMartin Mares 751e49ed044SMartin Mares * lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise 752e49ed044SMartin Mares integer types. 753e49ed044SMartin Mares 7549de2768cSMartin Mares2007-02-04 Martin Mares <[email protected]> 7559de2768cSMartin Mares 7569de2768cSMartin Mares * lspci.c: alloca() needs <alloca.h>. 7579de2768cSMartin Mares 758d19394dbSMartin Mares2006-09-17 Martin Mares <[email protected]> 759d19394dbSMartin Mares 760d19394dbSMartin Mares * lib/dump.c: Fixed a couple of bugs in the dump backend which caused 761d19394dbSMartin Mares devices with domains or with extended config space to be read incorrectly. 762d19394dbSMartin Mares Also, dumps with partial lines are allowed now. 763d19394dbSMartin Mares 764934e7e36SMartin Mares2006-09-10 Martin Mares <[email protected]> 765934e7e36SMartin Mares 766f09856deSMartin Mares * pci.ids: Updated to the current database snapshot. 767f09856deSMartin Mares 768934e7e36SMartin Mares * lspci.c (scan_device): If an error occurs when reading the standard config 769934e7e36SMartin Mares header of a device, report it and ignore the device and return with exit 770934e7e36SMartin Mares code 2 at the end. 771934e7e36SMartin Mares 772b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 773b2055313SMartin Mares 774fb260653SMartin Mares * Released as 2.2.4. 775fb260653SMartin Mares 7761865e2ddSMartin Mares * maint/release: Remind the maintainer about the current PCI_LIB_VERSION. 7771865e2ddSMartin Mares 778028dffb2SMartin Mares * lib/pci.h: Updated PCI_LIB_VERSION. 779028dffb2SMartin Mares 78013081e57SMartin Mares * lspci.c (show_machine): In the `-m' mode, do proper shell escaping 78113081e57SMartin Mares if the fields printed contain quotes or backslashes. 78213081e57SMartin Mares 7833fd6b4d2SMartin Mares * lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse 7843fd6b4d2SMartin Mares of the `Device' tag for two different purposes. 7853fd6b4d2SMartin Mares 786840d09aeSMartin Mares * Makefile: Moved all system-dependent decisions to lib/configure, 787840d09aeSMartin Mares since config.mk is included in the top-level Makefile anyway. 788840d09aeSMartin Mares 7892100f710SMartin Mares * lib/configure: When configuring for Linux, ignore the kernel version 7902100f710SMartin Mares and always build all access methods. 7912100f710SMartin Mares 7923e9c7a18SMartin Mares * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers 7933e9c7a18SMartin Mares at many non-interesting places with gcc 3.4. 7943e9c7a18SMartin Mares 79594db5c82SMartin Mares * Whitespace cleanup of all source files. 79694db5c82SMartin Mares 797cc062b4aSMartin Mares * The pci.ids file can be stored compressed if zlib is available. 798cc062b4aSMartin Mares Added transparent decompression to lib/names.c, modified update-pciids.sh 799cc062b4aSMartin Mares to keep the file compressed if applicable, updated Makefiles. 800cc062b4aSMartin Mares Based on a patch by Matthew Wilcox, but all the bugs are mine. 801cc062b4aSMartin Mares 802f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 803f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 804f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 805f4ddb8d3SMartin Mares 80616e37012SMartin Mares * Added .gitignore files. 80716e37012SMartin Mares 808c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 809c7f5314dSMartin Mares 810afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 811afebde01SMartin Mares 812fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 813fd54ccebSMartin Mares 814b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 815b2055313SMartin Mares defined in the pci.ids file. 816b2055313SMartin Mares 8174254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 8184254d153SMartin Mares 8194254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 8204254d153SMartin Mares 8211c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 8221c5cc9b5SMartin Mares 82338a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 82438a9e3c3SMartin Mares 825c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 826c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 827c7ddfa3eSMartin Mares 828248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 829248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 830248a04f8SMartin Mares 831f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 832f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 833f29dcc87SMartin Mares 8348eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 8358eab3bffSMartin Mares 836d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 837d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 838d305d704SMartin Mares directly. 839d305d704SMartin Mares 8409007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 8419007a292SMartin Mares the port access state to generic code. 8429007a292SMartin Mares 843bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 844bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 845bd20d5b5SMartin Mares 84673750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 84773750606SMartin Mares 848d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 849d71daa45SMartin Mares 8501c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 8511c5cc9b5SMartin Mares 8521c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 8531c5cc9b5SMartin Mares 854c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 855c2b144efSMartin Mares 85614d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 85714d4f989SMartin Mares 85814d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 85914d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 86014d4f989SMartin Mares incomplete, though. 86114d4f989SMartin Mares 862c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 863c2b144efSMartin Mares 864c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 865c2b144efSMartin Mares be modified by kernel fixups. 866c2b144efSMartin Mares 867c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 868c2b144efSMartin Mares 869bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 870bc2eed2dSMartin Mares 871bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 872bc2eed2dSMartin Mares for the idea. 873bc2eed2dSMartin Mares 874bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 875bc2eed2dSMartin Mares cleaned up the name selection code. 876bc2eed2dSMartin Mares 877c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 878c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 879c72eeddeSMartin Mares 880c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 881c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 882c72eeddeSMartin Mares 8832f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 8842f294d4bSMartin Mares 8852f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 8862f294d4bSMartin Mares 88781afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 88881afa98cSMartin Mares name when printing an error message. 88981afa98cSMartin Mares 8900ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 8910ac282f2SMartin Mares 8920ac282f2SMartin Mares * README: Mention the public GIT tree. 8930ac282f2SMartin Mares 8940ac282f2SMartin Mares * README: Updated the list of ports. 8950ac282f2SMartin Mares 896d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 897d1058e9dSMartin Mares 898d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 899d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 900d1058e9dSMartin Mares 901abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 902abf8d505SMartin Mares 9032ae2d1aeSMartin Mares * Released as 2.2.3. 9042ae2d1aeSMartin Mares 9052ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 9062ae2d1aeSMartin Mares in -m mode. 9072ae2d1aeSMartin Mares 9082ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 9092ae2d1aeSMartin Mares 9101d5cf727SMartin Mares * Released as 2.2.2. 9111d5cf727SMartin Mares 9128a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 9138a830168SMartin Mares 914b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 915b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 916b6359063SMartin Mares the existing FreeBSD interface. 917b6359063SMartin Mares 918abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 919abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 920abf8d505SMartin Mares 9216ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 9226ac70402SMartin Mares 9232a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 9242a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 9252a124daeSMartin Mares forces domain display even there. 9262a124daeSMartin Mares 9276ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 9286ac70402SMartin Mares guaranteed to be stable between lspci versions. 9296ac70402SMartin Mares 9301bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 9311bbdea17SMartin Mares 932af61eb25SMartin Mares * lspci.man: Documented the -D switch. 933af61eb25SMartin Mares 934af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 935af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 936af61eb25SMartin Mares all devices. 937af61eb25SMartin Mares 9387a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 9397a61b93cSMartin Mares 9401bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 9411bbdea17SMartin Mares 9420e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 9430e78ef8aSMartin Mares 9440e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 9450e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 9460e78ef8aSMartin Mares 947e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 948e6859953SMartin Mares 949e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 950e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 951e6859953SMartin Mares 952e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 953e6859953SMartin Mares 954a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 955a99c0d69SMartin Mares 956e4af70c6SMartin Mares * Released as 2.2.1. 957e4af70c6SMartin Mares 958a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 959a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 960a99c0d69SMartin Mares 961f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 962f23fd3fcSMartin Mares 963f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 964f23fd3fcSMartin Mares 96515296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 96615296723SMartin Mares 96715296723SMartin Mares * Released as 2.2.0. 96815296723SMartin Mares 96940b6d93fSMartin Mares * pci.ids: Updated copyright header. 97040b6d93fSMartin Mares 97115296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 97215296723SMartin Mares 64-bit addresses, they are now always supported. 97315296723SMartin Mares 97415296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 97515296723SMartin Mares in bus-centric mode. 97615296723SMartin Mares 97715296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 97815296723SMartin Mares 97915296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 98015296723SMartin Mares are shorter. 98115296723SMartin Mares 982224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 983224707baSMartin Mares 984224707baSMartin Mares * Released as 2.1.99-test11. 985224707baSMartin Mares 986224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 987224707baSMartin Mares 988aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 989aeaca5d3SMartin Mares 990224707baSMartin Mares * Released as 2.1.99-test10. 991224707baSMartin Mares 99263e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 99363e6f2e0SMartin Mares 994043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 995043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 996043ebdeeSMartin Mares 997043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 998043ebdeeSMartin Mares 999aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 1000aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 1001aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 1002aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 1003aeaca5d3SMartin Mares 1004aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 1005aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 1006aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 1007aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 1008aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 1009aeaca5d3SMartin Mares 1010121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 1011121c76c9SMartin Mares 101254e13765SMartin Mares * Released as 2.1.99-test9. 101354e13765SMartin Mares 101454e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 101554e13765SMartin Mares gcc versions when optimizing anyway. 101654e13765SMartin Mares 101754e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 101854e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 101954e13765SMartin Mares 102054e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 102154e13765SMartin Mares 102284d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 102384d437d6SMartin Mares methods and which operations are privileged. 102484d437d6SMartin Mares 102584d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 102684d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 102784d437d6SMartin Mares portions of the configuration space being inaccessible, for example 102884d437d6SMartin Mares due to insufficient access rights. 102984d437d6SMartin Mares 10303b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 10313b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 10323b8bf739SMartin Mares as I haven't seen the spec). 10333b8bf739SMartin Mares 10343b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 10353b8bf739SMartin Mares 103684d437d6SMartin Mares * lspci.c: Removed C++ comments. 103784d437d6SMartin Mares 10383b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 10393b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 10403b8bf739SMartin Mares 10413b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 10423b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 10433b8bf739SMartin Mares list. 10443b8bf739SMartin Mares 1045f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 1046f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 1047f7821e53SMartin Mares access more than that. 1048ea4e5f5dSMartin Mares 104946ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 105046ea554dSMartin Mares 10518afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 10528afaab22SMartin Mares 1053121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 1054121c76c9SMartin Mares 1055c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 1056c1c2c30eSMartin Mares 1057b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 1058b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 1059b9ca9147SMartin Mares 1060c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 1061b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 1062c1c2c30eSMartin Mares 106326542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 106426542a0bSMartin Mares 106526542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 106626542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 106726542a0bSMartin Mares 10686aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 10696aa54f1bSMartin Mares 1070aabb0a92SMartin Mares * Released as 2.1.99-test8. 1071aabb0a92SMartin Mares 1072f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 1073f31412d1SMartin Mares no longer exported to the outside world. 1074f31412d1SMartin Mares 1075ee7d8384SMartin Mares * README.Windows: Updated. 1076ee7d8384SMartin Mares 1077ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 1078ee7d8384SMartin Mares 1079ee7d8384SMartin Mares * win32/config.h: Added. 1080ee7d8384SMartin Mares 1081ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 1082ee7d8384SMartin Mares 1083ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 1084ee7d8384SMartin Mares C library for use on systems where the default libraries lack 1085ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 1086ee7d8384SMartin Mares 1087ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 1088ee7d8384SMartin Mares Alexander Stock. 1089ee7d8384SMartin Mares 1090489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 1091489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 1092489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 1093489233b4SMartin Mares be gone. 1094489233b4SMartin Mares 1095489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 1096489233b4SMartin Mares 1097489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 1098489233b4SMartin Mares 1099489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 1100489233b4SMartin Mares it is included unconditionally in lib/types.h. 1101489233b4SMartin Mares 1102489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 1103489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 1104489233b4SMartin Mares from lib/pci.h to lib/types.h. 1105489233b4SMartin Mares 1106489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 1107489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 1108489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 1109489233b4SMartin Mares 1110489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 1111489233b4SMartin Mares headers with the kernel a couple of years ago. 1112489233b4SMartin Mares 11139bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 11149bb4b4eaSMartin Mares 11156aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 11166aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 11176aa54f1bSMartin Mares 11186aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 11196aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 11206aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 11216aa54f1bSMartin Mares 11226aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 11236aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 11246aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 11256aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 11266aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 11276aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 11286aa54f1bSMartin Mares mapping the regions and doing I/O on them. 11296aa54f1bSMartin Mares 113080e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 113180e6c636SMartin Mares 113280e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 113380e6c636SMartin Mares 1134d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 1135d6324891SMartin Mares 1136d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 1137d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 1138d6324891SMartin Mares 1139ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 1140ec25b52dSMartin Mares 1141362be683SMartin Mares * Released as 2.1.99-test7. 1142362be683SMartin Mares 1143ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 1144ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 1145ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 1146ec25b52dSMartin Mares 1147ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 1148ec25b52dSMartin Mares 1149ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 1150ec25b52dSMartin Mares 1151ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 1152ec25b52dSMartin Mares 1153ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 1154ec25b52dSMartin Mares 1155ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 1156ec25b52dSMartin Mares 1157ec25b52dSMartin Mares * lspci.man: Added -xxxx. 1158ec25b52dSMartin Mares 115909817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 116009817437SMartin Mares 1161d1fa27ebSMartin Mares * Released as 2.1.99-test6. 1162d1fa27ebSMartin Mares 11634d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 11644d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 11654d67aa89SMartin Mares 11664d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 11674d67aa89SMartin Mares failures. 11684d67aa89SMartin Mares 11694d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 11704d67aa89SMartin Mares 11714d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 11724d67aa89SMartin Mares Patch by Matthew Wilcox. 11734d67aa89SMartin Mares 11744d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 11754d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 11764d67aa89SMartin Mares 117709817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 117809817437SMartin Mares report correct errors reported by the libpci instead. 117909817437SMartin Mares 118009817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 118109817437SMartin Mares Better caching of config registers. 118209817437SMartin Mares 118309817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 118409817437SMartin Mares 118509817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 118609817437SMartin Mares just return the appropriate error code. 118709817437SMartin Mares 118809817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 118909817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 119009817437SMartin Mares and of course in the dump reader. 119109817437SMartin Mares 11920d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 11930d656226SMartin Mares 1194c0eece92SMartin Mares * Released as 2.1.99-test5. 1195c0eece92SMartin Mares 1196a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 1197a2413560SMartin Mares 1198a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 1199a2413560SMartin Mares macros. 1200a2413560SMartin Mares 1201a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 1202a2413560SMartin Mares 1203a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 1204a2413560SMartin Mares 1205a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 1206a2413560SMartin Mares Stock <[email protected]>. 1207a2413560SMartin Mares 1208a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 1209a2413560SMartin Mares changes to the configure script. 1210a2413560SMartin Mares 12110d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 12120d656226SMartin Mares 1213138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 1214138c0385SMartin Mares 12159f490382SMartin Mares * Released as 2.1.99-test4. 12169f490382SMartin Mares 1217cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 1218cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 1219cce2caacSMartin Mares 1220b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 1221b569ef09SMartin Mares (show_agp): rate[] could overflow. 1222b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 1223b569ef09SMartin Mares 1224bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 1225bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 1226bfc4fe7aSMartin Mares by me. 1227bfc4fe7aSMartin Mares 1228bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 1229bfc4fe7aSMartin Mares Again thanks to Maciej. 1230bfc4fe7aSMartin Mares 1231138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 1232138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 1233138c0385SMartin Mares 12348fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 12358fc75dbcSMartin Mares 123681abd2a7SMartin Mares * Released as 2.1.99-test3. 123781abd2a7SMartin Mares 12381f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 12391f7c91ccSMartin Mares 12401f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 12411f7c91ccSMartin Mares 124284c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 12431f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 12441f7c91ccSMartin Mares as well. 124584c8d1bbSMartin Mares 124684c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 124784c8d1bbSMartin Mares 124884c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 124984c8d1bbSMartin Mares 125084c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 125184c8d1bbSMartin Mares 125284c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 125384c8d1bbSMartin Mares 125484c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 125584c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 125684c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 125784c8d1bbSMartin Mares 125884c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 125984c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 126084c8d1bbSMartin Mares 126184c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 126284c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 126384c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 126484c8d1bbSMartin Mares 126511f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 126611f7b31bSMartin Mares is not supported by all C libraries. 126711f7b31bSMartin Mares 126811f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 126911f7b31bSMartin Mares full dependecies for the library in the top-level Makefile; hmmm, another 127011f7b31bSMartin Mares thing to rewrite some day). 127111f7b31bSMartin Mares 127211f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 127311f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 127411f7b31bSMartin Mares 127511f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 127611f7b31bSMartin Mares 127711f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 127811f7b31bSMartin Mares of Linux libc moved there. 127911f7b31bSMartin Mares 128011f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 128111f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 128211f7b31bSMartin Mares values and for too large values. 128311f7b31bSMartin Mares 12844284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 12854284af58SMartin Mares package is pretty cross-platform now :) 12864284af58SMartin Mares 12874284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 12884284af58SMartin Mares 1289ab12277eSMartin Mares * Released as 2.1.99-test2. 1290ab12277eSMartin Mares 1291ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 1292ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 1293ab12277eSMartin Mares 1294ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 1295ab12277eSMartin Mares making releases including inter-version diffs etc. 1296ab12277eSMartin Mares 1297ab12277eSMartin Mares * Makefile: Cleaned up. 1298ab12277eSMartin Mares 1299ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 1300ab12277eSMartin Mares this time the version checks should be right. 1301ab12277eSMartin Mares 1302ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 1303ab12277eSMartin Mares 13046d722cd6SMartin Mares * Released as 2.1.99-test1. 13056d722cd6SMartin Mares 1306dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 1307dd33246aSMartin Mares Remove shadows of the syscall access method which was never 1308dd33246aSMartin Mares implemented. 1309dd33246aSMartin Mares 131080b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 131180b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 131280b3121aSMartin Mares 13136aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 13146aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 13156aea909aSMartin Mares 13166aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 13176aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 13186aea909aSMartin Mares 13196aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 13206aea909aSMartin Mares 1321f701ff47SMartin Mares Merged bug fixes from Debian patches: 1322f701ff47SMartin Mares 1323f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 1324f701ff47SMartin Mares 1325f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 1326f701ff47SMartin Mares 13272240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 13282240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 1329f701ff47SMartin Mares multiple functions. 13302240db8cSMartin Mares 13312240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 13322240db8cSMartin Mares 133345902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 133445902995SMartin Mares for the patches: 133545902995SMartin Mares 133645902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 133745902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 133845902995SMartin Mares to __FreeBSD_version. 133945902995SMartin Mares 134045902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 134145902995SMartin Mares 13428fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 13438fc75dbcSMartin Mares and cleaned up: 13448fc75dbcSMartin Mares 13458fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 13468fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 13478fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 13488fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 13498fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 13508fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 13518fc75dbcSMartin Mares 13529739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 13539739916eSMartin Mares 13549739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 13559739916eSMartin Mares 13569739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 13579739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 13589739916eSMartin Mares use them in all cases. 13599739916eSMartin Mares 13609739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 13619739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 13629739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 13639739916eSMartin Mares directly in pci.h. 13649739916eSMartin Mares 13659739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 13669739916eSMartin Mares 136780459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 136880459c65SMartin Mares 136980459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 137080459c65SMartin Mares 137180459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 137280459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 137380459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 137480459c65SMartin Mares u8 to u32. 137580459c65SMartin Mares 1376a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 1377a85769a8SMartin Mares 13787dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 13797dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 13807dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 13817dacd9c8SMartin Mares 13827dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 13837dacd9c8SMartin Mares at all places. 13847dacd9c8SMartin Mares 13854063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 13864063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 13874063c31cSMartin Mares 13883fe8a38dSMartin Mares * setpci.c (main): Better error messages. 13893fe8a38dSMartin Mares 13905f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 13915f5b1a7bSMartin Mares 13925f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 13935f5b1a7bSMartin Mares Document the new behaviour. 1394b251f40bSMartin Mares 139591e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 139691e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 139791e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 139891e37a49SMartin Mares 13994afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 14004afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 14014afd29d3SMartin Mares a different fix. 14024afd29d3SMartin Mares 1403b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 1404b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 1405b0f1a03bSMartin Mares 1406b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 1407b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 1408b7fd8e19SMartin Mares 140905bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 141005bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 141105bb10a2SMartin Mares 1412a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 1413a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 1414a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 1415a832f6f1SMartin Mares for reporting this problem. 1416a832f6f1SMartin Mares 1417a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 1418a85769a8SMartin Mares 1419a85769a8SMartin Mares * Makefile: Added some more warnings. 1420a85769a8SMartin Mares 1421b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 1422b7351143SMartin Mares 1423b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 1424b7351143SMartin Mares 1425b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 1426b7351143SMartin Mares 14272a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 14282a5d5cf9SMartin Mares 14292a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 14302a5d5cf9SMartin Mares 1431d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 1432d772ef15SMartin Mares 14331b95f396SMartin Mares * Released as 2.1.11. 14341b95f396SMartin Mares 1435c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 1436c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 1437c83293ebSMartin Mares scattered between the installation rules. The default installation 1438c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 1439c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 1440c83293ebSMartin Mares installations to interfere with the default ones. 1441c83293ebSMartin Mares 1442c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 1443c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 1444c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 1445c83293ebSMartin Mares has passed since the last version which used it). 1446c83293ebSMartin Mares 1447e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 1448e2875dcdSMartin Mares 14491b95f396SMartin Mares * Added the update-ids utility. 14500138a2a7SMartin Mares 1451d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 1452d772ef15SMartin Mares probably never be needed. 1453d772ef15SMartin Mares 1454eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 1455eb620239SMartin Mares 1456130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 1457130090bdSMartin Mares 1458eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 1459eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 1460eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 1461eb620239SMartin Mares 1462848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 1463848b4347SMartin Mares 1464579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 1465579b19ffSMartin Mares 1466579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 1467579b19ffSMartin Mares there is no reason to prefer the kernel version. 1468579b19ffSMartin Mares 1469579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 1470579b19ffSMartin Mares 1471848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 1472848b4347SMartin Mares <[email protected]>. 1473848b4347SMartin Mares 1474f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 1475f0952474SMartin Mares 1476f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 1477f0952474SMartin Mares 1478d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 1479d2f666f1SMartin Mares 14809bd44bb0SMartin Mares * Released as 2.1.10. 14819bd44bb0SMartin Mares 1482a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 1483a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 1484a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 1485a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 1486a33d0eb7SMartin Mares pciids.sf.net. 1487a33d0eb7SMartin Mares 1488a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 1489a33d0eb7SMartin Mares 1490a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 1491a33d0eb7SMartin Mares 1492a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 1493a33d0eb7SMartin Mares not in the tarball). 1494a33d0eb7SMartin Mares 1495d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 1496d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 1497d2f666f1SMartin Mares a comment only at the start of the line. 1498d2f666f1SMartin Mares 1499ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 1500ee551b73SMartin Mares 150107159913SMartin Mares * README: Rewritten. 150207159913SMartin Mares 1503ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 1504ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 1505ee551b73SMartin Mares Jean Delvare <[email protected]>. 1506ee551b73SMartin Mares 1507bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 1508bc7b1d62SMartin Mares 15095f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 15105f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 15115f5e6f64SMartin Mares 15125f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 15135f5e6f64SMartin Mares 15145f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 15155f5e6f64SMartin Mares 1516a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 1517a1052f16SMartin Mares 1518bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 1519bc7b1d62SMartin Mares function 7. 1520bc7b1d62SMartin Mares 1521bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 1522bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 1523bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 1524bc7b1d62SMartin Mares 1525f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 1526f793990cSMartin Mares 1527ee551b73SMartin Mares * Released as 2.1.9. 1528ee551b73SMartin Mares 1529f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 1530f793990cSMartin Mares (http://pciids.sourceforge.net/). 1531f793990cSMartin Mares 15321d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 15331d174e56SMartin Mares 15341d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 15351d174e56SMartin Mares 153665b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 153765b4327eSMartin Mares 153865b4327eSMartin Mares * Makefile (uninstall): Fixed. 153965b4327eSMartin Mares 154065b4327eSMartin Mares * pci.ids: ID updates. 154165b4327eSMartin Mares 15424a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 15434a219d5fSMartin Mares 15444a219d5fSMartin Mares * Released as 2.1.8. 15454a219d5fSMartin Mares 15464a219d5fSMartin Mares * pci.ids: ID updates. 15474a219d5fSMartin Mares 15484a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 15494a219d5fSMartin Mares 15504a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 15514a219d5fSMartin Mares 15524a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 15534a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 15544a219d5fSMartin Mares bogus class info. 15554a219d5fSMartin Mares 155610c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 155710c90662SMartin Mares 155872b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 155972b9b690SMartin Mares 156010c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 156110c90662SMartin Mares 156210c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 156310c90662SMartin Mares 1564a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 1565a239ade6SMartin Mares 1566a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 1567a239ade6SMartin Mares 1568a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 1569a239ade6SMartin Mares 1570a239ade6SMartin Mares * pci.ids: Various ID updates. 1571a239ade6SMartin Mares 15722c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 15732c83b860SMartin Mares 15742c83b860SMartin Mares * Released as 2.1.7. 15752c83b860SMartin Mares 15762c83b860SMartin Mares * pciutils.spec: Added German description. 15772c83b860SMartin Mares 15782c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 15792c83b860SMartin Mares are the same as device ID and just output subsystem name according to 15802c83b860SMartin Mares device name. 15812c83b860SMartin Mares 15822c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 15832c83b860SMartin Mares 15842c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 15852c83b860SMartin Mares 15862c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 15872c83b860SMartin Mares 15882c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 15892c83b860SMartin Mares "echo -n" if the shell isn't bash. 15902c83b860SMartin Mares 15912c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 15922c83b860SMartin Mares (insert_dev): Avoid returning a void value. 15932c83b860SMartin Mares 15942c83b860SMartin Mares * Makefile: Choose which install utility to use according to 15952c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 15962c83b860SMartin Mares Part of the AIX port. 15972c83b860SMartin Mares 15982c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 15992c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 16002c83b860SMartin Mares 16012c83b860SMartin Mares * pci.ids: Few new ID's. 16022c83b860SMartin Mares 16032c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 16042c83b860SMartin Mares when not compiled by GCC. 16052c83b860SMartin Mares 1606c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 1607c1a828daSMartin Mares 1608c1a828daSMartin Mares * Released as 2.1.6. 1609c1a828daSMartin Mares 1610c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 1611c1a828daSMartin Mares Mayer <[email protected]> and synced the 1612c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 1613c1a828daSMartin Mares 1614e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 1615e91dd3abSMartin Mares 1616a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 1617a80b79a9SMartin Mares the library. 1618a80b79a9SMartin Mares 161989984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 162089984232SMartin Mares by Adam Sulmicki. 162189984232SMartin Mares 1622e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 1623e91dd3abSMartin Mares 162478d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 162578d9c5e2SMartin Mares 162678d9c5e2SMartin Mares * Released as 2.1.5. 162778d9c5e2SMartin Mares 162878d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 162978d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 163078d9c5e2SMartin Mares 163178d9c5e2SMartin Mares * pci.ids: New ID's. 163278d9c5e2SMartin Mares 163378d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 163478d9c5e2SMartin Mares no argument. 163578d9c5e2SMartin Mares 1636f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 1637f8141ae2SMartin Mares 1638f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 1639f8141ae2SMartin Mares glibc. 1640f8141ae2SMartin Mares 1641f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 1642f8141ae2SMartin Mares 1643f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 1644f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 1645f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 1646f8141ae2SMartin Mares 164759e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 164859e76e8bSMartin Mares 164959e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 165059e76e8bSMartin Mares 165159e76e8bSMartin Mares * Released as version 2.1.4. 165259e76e8bSMartin Mares 16532dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 16542dfd48cdSMartin Mares 16552715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 16562715403fSMartin Mares 165781077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 165881077814SMartin Mares 165981077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 166081077814SMartin Mares 166181077814SMartin Mares * pci.ids: New ID's. 166281077814SMartin Mares 16632dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 16642dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 16652dfd48cdSMartin Mares 16665a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 16675a258860SMartin Mares 16685a258860SMartin Mares * Released as version 2.1.3. 16695a258860SMartin Mares 16705a258860SMartin Mares * pci.ids: New ID's. 16715a258860SMartin Mares 16725a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 16735a258860SMartin Mares 16745a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 16755a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 16765a258860SMartin Mares 16770c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 16780c047bbeSMartin Mares 16790c047bbeSMartin Mares * Released as version 2.1.2. 16800c047bbeSMartin Mares 16810c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 16820c047bbeSMartin Mares 168333bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 168433bc28a5SMartin Mares 168539231205SMartin Mares * Released as version 2.1.1. 168639231205SMartin Mares 168733bc28a5SMartin Mares * pci.ids: Several new ID's. 168833bc28a5SMartin Mares 168933bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 169033bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 169133bc28a5SMartin Mares by Petr Soucek <[email protected]>. 169233bc28a5SMartin Mares 16938d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 16948d047897SMartin Mares 16958d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 16968d047897SMartin Mares ID list, show it. 16978d047897SMartin Mares 16986afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 16996afc6538SMartin Mares 17006afc6538SMartin Mares * Released as version 2.1. 17016afc6538SMartin Mares 17026afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 17036afc6538SMartin Mares lots of contributed entries. 17046afc6538SMartin Mares 17058f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 17068f756113SMartin Mares 17078f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 17088f756113SMartin Mares 1709d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 1710d4798a32SMartin Mares 1711d4798a32SMartin Mares * setpci.man: Better example. 1712d4798a32SMartin Mares 1713d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 1714d4798a32SMartin Mares 1715d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 1716d4798a32SMartin Mares 1717d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 1718d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 1719d4798a32SMartin Mares New ID's, as usually. 1720d4798a32SMartin Mares 1721e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 1722e306e911SMartin Mares 1723e306e911SMartin Mares * pci.ids: New ID's. As usually. 1724e306e911SMartin Mares 1725e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 1726e306e911SMartin Mares unless we're vvvery verbose. 1727e306e911SMartin Mares 1728e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 1729e306e911SMartin Mares 1730e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 1731e306e911SMartin Mares 1732e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 1733e64a576cSMartin Mares 1734e64a576cSMartin Mares * pci.ids: New ID's. Again. 1735e64a576cSMartin Mares 1736c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 1737c36c0862SMartin Mares 1738c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 1739c36c0862SMartin Mares due to bus-centric mode being enabled). 1740c36c0862SMartin Mares 17411ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 17421ca42433SMartin Mares 1743168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 1744168b4f46SMartin Mares 1745168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 1746168b4f46SMartin Mares 1747168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 1748168b4f46SMartin Mares 1749168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 1750168b4f46SMartin Mares 1751168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 1752168b4f46SMartin Mares incorrectly set to device ID. 1753168b4f46SMartin Mares 1754168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 1755168b4f46SMartin Mares 1756168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 1757168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 1758168b4f46SMartin Mares as GNU date does. Use sed instead. 1759168b4f46SMartin Mares (install): Use `-c' when calling install. 1760168b4f46SMartin Mares 1761168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 1762168b4f46SMartin Mares by Jari Kirma <[email protected]>. 1763168b4f46SMartin Mares 1764bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 1765bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 1766bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 1767bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 1768bc6346dfSMartin Mares with lseek/read/write. 1769bc6346dfSMartin Mares 17701ca42433SMartin Mares * pci.ids: Some more IDs. 17711ca42433SMartin Mares 17721ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 17731ca42433SMartin Mares 17741ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 17751ca42433SMartin Mares by Tim Waugh <[email protected]>. 17761ca42433SMartin Mares 1777e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 1778e95c8373SMartin Mares 1779e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 1780e95c8373SMartin Mares 1781e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 1782e95c8373SMartin Mares HAVE_LONG_ADDRESS. 1783e95c8373SMartin Mares 1784e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 1785e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 1786e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 1787e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 1788e95c8373SMartin Mares on Alpha. 1789e95c8373SMartin Mares 1790e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 1791e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 1792e95c8373SMartin Mares (show_caps): Seperated capability dumping, because it should 1793e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1794e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 1795e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 1796e95c8373SMartin Mares is already defined differently in htype2. 1797e95c8373SMartin Mares 1798e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1799e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1800e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1801e95c8373SMartin Mares 1802e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1803e95c8373SMartin Mares (required by the PCI 2.2 specs). 1804e95c8373SMartin Mares 1805e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1806e95c8373SMartin Mares 1807e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1808e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1809e95c8373SMartin Mares ROMs et cetera. 1810e95c8373SMartin Mares 1811e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1812e95c8373SMartin Mares of the structure. 1813e95c8373SMartin Mares 1814e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1815e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1816e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1817e95c8373SMartin Mares 181882ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 181982ce97c9SMartin Mares 182082ce97c9SMartin Mares * Makefile: 182182ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 182282ce97c9SMartin Mares * pci.ids: 182382ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 182482ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 182582ce97c9SMartin Mares to determine the revision from the device ID. 182682ce97c9SMartin Mares - Same for the Tseng ET4000. 182782ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 182882ce97c9SMartin Mares - Removed some unnecessary strings 182982ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 183082ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 183182ce97c9SMartin Mares - Lots of other new vendors & devices 183282ce97c9SMartin Mares - Other additional small cleanups. 183382ce97c9SMartin Mares 18347bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 18357bed2d83SMartin Mares 18367bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 18377bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 18387bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 18397bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 18407bed2d83SMartin Mares 18415ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 18425ba3a475SMartin Mares 18435ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 18445ba3a475SMartin Mares <[email protected]>. The command register was displayed 18455ba3a475SMartin Mares incorrectly. 18465ba3a475SMartin Mares 18475ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 18485ba3a475SMartin Mares 18495ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 18505ba3a475SMartin Mares numbers if not supplied by the libc. 18515ba3a475SMartin Mares 185255c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 185355c815b5SMartin Mares 185455c815b5SMartin Mares * Released the whole package as version 2.0. 185555c815b5SMartin Mares 185655c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 185755c815b5SMartin Mares 185855c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 185955c815b5SMartin Mares on the linux-pci list. 186055c815b5SMartin Mares 1861dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1862dec16943SMartin Mares 1863dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 1864dec16943SMartin Mares * lib/header.h: Ditto. 1865dec16943SMartin Mares 1866dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 1867dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 1868dec16943SMartin Mares 1869e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1870e33c9c7aSMartin Mares 1871e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1872e33c9c7aSMartin Mares <[email protected]>. 1873e33c9c7aSMartin Mares 1874e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1875e33c9c7aSMartin Mares 1876f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1877f3395cc5SMartin Mares 1878f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1879f3395cc5SMartin Mares as a multi-function device, because several single-function devices 1880f3395cc5SMartin Mares don't decode the function bits at all. 1881f3395cc5SMartin Mares 1882f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1883f3395cc5SMartin Mares 1884f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 1885f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 1886f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 1887f3395cc5SMartin Mares 1888f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1889f3395cc5SMartin Mares 1890f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1891f3395cc5SMartin Mares 1892f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1893f3395cc5SMartin Mares or 64-bit depending on CPU. 1894f3395cc5SMartin Mares 1895f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1896f3395cc5SMartin Mares according to bus address width. 1897f3395cc5SMartin Mares 18981c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 18991c31d620SMartin Mares 19001c31d620SMartin Mares * Released as 1.99.4. 19011c31d620SMartin Mares 19021c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 19031c31d620SMartin Mares registers and PCI Power Management registers (the latter 19041c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 19051c31d620SMartin Mares since I don't have the PCI Power Management document). 19061c31d620SMartin Mares 19071c31d620SMartin Mares * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 19081c31d620SMartin Mares by FLAG macro. 19091c31d620SMartin Mares 19101c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 19111c31d620SMartin Mares 19121812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 19131812a795SMartin Mares 19141812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 19151812a795SMartin Mares 19161812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 19171812a795SMartin Mares (show): Split to show() and show_device(). 19181812a795SMartin Mares 19191812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 19201812a795SMartin Mares set it to the real access method afterwards. 19211812a795SMartin Mares 19221812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 19231812a795SMartin Mares 19241812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 19251812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 19261812a795SMartin Mares 1927f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1928f6c86928SMartin Mares 1929f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 1930f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 1931f6c86928SMartin Mares 1932f6c86928SMartin Mares * Released as 1.99.3. 1933f6c86928SMartin Mares 1934b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1935b5137411SMartin Mares 1936d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 1937d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 1938d6b297d0SMartin Mares functions and device IDs), which is not going to happen 1939d6b297d0SMartin Mares before 2.3, we'll use our own definiton of the header. 1940d6b297d0SMartin Mares 1941b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 1942b5137411SMartin Mares 1943b5137411SMartin Mares * lspci.c (show_htype0): Display capability lists whereever 1944b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 1945b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 1946b5137411SMartin Mares portion of the configuration space and are thus available 1947b5137411SMartin Mares only to root unless you read a dump. 1948b5137411SMartin Mares 1949b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 1950b5137411SMartin Mares 1951b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 1952b5137411SMartin Mares 1953b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 1954b5137411SMartin Mares 195581ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 195681ce358dSMartin Mares 195781ce358dSMartin Mares * pci.ids: Added few devices. 195881ce358dSMartin Mares 1959727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1960727ce158SMartin Mares 1961727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 1962727ce158SMartin Mares to the configure script and also substituted to man pages. 1963727ce158SMartin Mares 1964727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1965727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 1966727ce158SMartin Mares 1967727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1968727ce158SMartin Mares 1969727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 1970727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 1971727ce158SMartin Mares 1972727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1973727ce158SMartin Mares whenever available. 1974727ce158SMartin Mares 1975727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 1976727ce158SMartin Mares read/write and real errors. 1977727ce158SMartin Mares 1978727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1979727ce158SMartin Mares libpci respects buscentric mode automatically. 1980727ce158SMartin Mares 1981727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1982727ce158SMartin Mares bytes of header (the whole standard part). 1983727ce158SMartin Mares 1984727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 1985727ce158SMartin Mares PCI access debugging option here. 1986727ce158SMartin Mares 1987727ce158SMartin Mares * Released as 1.99.2. 1988727ce158SMartin Mares 1989727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1990727ce158SMartin Mares 1991727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 1992727ce158SMartin Mares 1993727ce158SMartin Mares * Removed few unused variables. 1994727ce158SMartin Mares 1995727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1996727ce158SMartin Mares 1997727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 1998727ce158SMartin Mares here. This includes parsing of libpci-related options. 1999727ce158SMartin Mares 2000727ce158SMartin Mares * More library tweaks. 2001727ce158SMartin Mares 2002727ce158SMartin Mares * filter.c, names.c: Moved to library. 2003727ce158SMartin Mares 2004727ce158SMartin Mares * setpci: Rewritten to use the library. 2005727ce158SMartin Mares 2006727ce158SMartin Mares * Released as 1.99.1. 2007727ce158SMartin Mares 2008727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 2009727ce158SMartin Mares 2010727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 2011727ce158SMartin Mares bytes of config space to get full standard header. 2012727ce158SMartin Mares 2013727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 2014727ce158SMartin Mares 2015727ce158SMartin Mares * Started the "New Generation" branch and introduced the 2016727ce158SMartin Mares PCI library. 2017727ce158SMartin Mares 2018727ce158SMartin Mares * lspci: Rewritten to use the library. 2019727ce158SMartin Mares 20206ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 20216ece6bc6SMartin Mares 20226ece6bc6SMartin Mares * Released as version 1.10. 20236ece6bc6SMartin Mares 20246ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 20256ece6bc6SMartin Mares 20266ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 20276ece6bc6SMartin Mares Dag Wieers <[email protected]>. 20286ece6bc6SMartin Mares 20291212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 20301212dd6dSMartin Mares 20311212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 20321212dd6dSMartin Mares 2033d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 2034d38471fdSMartin Mares 2035d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 2036d38471fdSMartin Mares 2037d38471fdSMartin Mares * Released as version 1.09. 2038d38471fdSMartin Mares 2039371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 2040371f605bSMartin Mares 2041371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 2042371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 2043371f605bSMartin Mares 204410be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 204510be47abSMartin Mares 204610be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 204710be47abSMartin Mares 2048472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 2049472bd340SMartin Mares 2050472bd340SMartin Mares * Released as version 1.08. 2051472bd340SMartin Mares 2052472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 2053472bd340SMartin Mares 2054472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 2055472bd340SMartin Mares 2056472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 2057472bd340SMartin Mares it's impossible to crash the machine by single typo. 2058472bd340SMartin Mares 2059472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 2060472bd340SMartin Mares 2061072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 2062072c77e5SMartin Mares 2063072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 2064072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 2065072c77e5SMartin Mares for an idea. 2066072c77e5SMartin Mares 2067b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 2068b7554856SMartin Mares 2069b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 2070b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 2071b7554856SMartin Mares 2072ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 2073ce503b7fSMartin Mares 2074ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 2075ce503b7fSMartin Mares (show_machine): Print subsystem ID. 2076ce503b7fSMartin Mares 2077ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 2078ce503b7fSMartin Mares 2079ce503b7fSMartin Mares * Released as version 1.07. 2080ce503b7fSMartin Mares 208196e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 208296e4f295SMartin Mares 208396e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 208496e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 208596e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 208696e4f295SMartin Mares 208796e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 208896e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 208996e4f295SMartin Mares full description of all header fields supported by the chip. 209096e4f295SMartin Mares 20916ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 20926ae3650aSMartin Mares 2093304f9a0bSMartin Mares * Released as 1.06. 2094304f9a0bSMartin Mares 20956ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 20966ae3650aSMartin Mares 20976ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 20986ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 20996ae3650aSMartin Mares kernels). Ugly. 21006ae3650aSMartin Mares 21016ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 21026ae3650aSMartin Mares 21034b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 21044b88a6b8SMartin Mares 21054b88a6b8SMartin Mares * Released as 1.05. 21064b88a6b8SMartin Mares 21074b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 21084b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 21094b88a6b8SMartin Mares 21104b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 21114b88a6b8SMartin Mares 21124b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 21134b88a6b8SMartin Mares <[email protected]> for reporting this. 21144b88a6b8SMartin Mares 21154b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 21164b88a6b8SMartin Mares 21174b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 21184b88a6b8SMartin Mares 21194b88a6b8SMartin Mares * Released as 1.04. 21204b88a6b8SMartin Mares 21214b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 21224b88a6b8SMartin Mares 21234b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 21244b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 21254b88a6b8SMartin Mares for bug report. 21264b88a6b8SMartin Mares 21279b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 21289b306998SMartin Mares 21299b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 21309b306998SMartin Mares 2131b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 2132b372672fSMartin Mares 2133b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 2134b372672fSMartin Mares 2135b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 2136b2c9b373SMartin Mares 2137b372672fSMartin Mares * Released as 1.03. 2138b372672fSMartin Mares 2139b2c9b373SMartin Mares * setpci.8: Written. 2140b2c9b373SMartin Mares 2141b2c9b373SMartin Mares * setpci.c: Finished. 2142b2c9b373SMartin Mares 2143b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 2144b2c9b373SMartin Mares and print it if not in buscentric mode. 2145b2c9b373SMartin Mares 2146e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 2147e4842ff3SMartin Mares 2148e4842ff3SMartin Mares * setpci.c: Added. 2149e4842ff3SMartin Mares 2150e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 2151e4842ff3SMartin Mares 2152e4842ff3SMartin Mares * lspci.8: Updated the documentation. 2153e4842ff3SMartin Mares 2154e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 2155e4842ff3SMartin Mares 2156e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 2157e4842ff3SMartin Mares 2158008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 2159008407bdSMartin Mares 2160008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 2161008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 2162008407bdSMartin Mares 21630a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 21640a33d0ecSMartin Mares 21650a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 21660a33d0ecSMartin Mares dump. 21670a33d0ecSMartin Mares 21680a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 21690a33d0ecSMartin Mares 21700a33d0ecSMartin Mares * Released as version 1.02. 21710a33d0ecSMartin Mares 21720a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 21730a33d0ecSMartin Mares 21740a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 21750a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 21760a33d0ecSMartin Mares 2177fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 2178fb38eee8SMartin Mares 2179fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 2180fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 2181fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 2182fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 2183fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 2184fb38eee8SMartin Mares 2185fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 2186fb38eee8SMartin Mares 21872f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 21882f48f637SMartin Mares 21892f48f637SMartin Mares * README: Updated. 21902f48f637SMartin Mares 21912f48f637SMartin Mares * lspci.8: Created a man page. 21922f48f637SMartin Mares 21932f48f637SMartin Mares * Releasing as version 1.0. 21942f48f637SMartin Mares 21952f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 21962f48f637SMartin Mares 21972f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 21982f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 21992f48f637SMartin Mares on sparc64. 22002f48f637SMartin Mares 22012f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 22022f48f637SMartin Mares (show_htype2): Stub routine. 22032f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 22042f48f637SMartin Mares upper part of the PCI config space. 2205