1*2b1451ebSMartin Mares2018-07-12 Martin Mares <[email protected]> 2*2b1451ebSMartin Mares 3*2b1451ebSMartin Mares * Released as 3.6.1. 4*2b1451ebSMartin Mares 5*2b1451ebSMartin Mares * Fixed compilation issues on Linux systems with MUSL libc. 6*2b1451ebSMartin Mares 7b3fb64ceSMartin Mares2018-06-30 Martin Mares <[email protected]> 8b3fb64ceSMartin Mares 9b3fb64ceSMartin Mares * Released as 3.6.0. 10b3fb64ceSMartin Mares 11b3fb64ceSMartin Mares * BARs reported by the OS, but not set on the device itself are 12b3fb64ceSMartin Mares reliably marked with "[virtual]". 13b3fb64ceSMartin Mares 14b3fb64ceSMartin Mares * Library: Introduced a generic mechanism of string properties. This 15b3fb64ceSMartin Mares avoids lots of special cases and makes ABI compatibility easier. 16b3fb64ceSMartin Mares 17b3fb64ceSMartin Mares * On Linux systems with OpenFirmware, report corresponding device tree nodes 18b3fb64ceSMartin Mares as device properties. 19b3fb64ceSMartin Mares 20b3fb64ceSMartin Mares * VPD decoder knows several non-standard extensions. 21b3fb64ceSMartin Mares 22b3fb64ceSMartin Mares * When PCIe link speed is less than the maximum supported by the 23b3fb64ceSMartin Mares device, it is explicitly marked as "downgraded". 24b3fb64ceSMartin Mares 25b3fb64ceSMartin Mares * Several new capabilities are not decoded yet, but at least their 26b3fb64ceSMartin Mares names are printed. 27b3fb64ceSMartin Mares 28b3fb64ceSMartin Mares * The Null capability is easily decoded. 29b3fb64ceSMartin Mares 30b3fb64ceSMartin Mares * Formatting of several capabilities was cleaned up. 31b3fb64ceSMartin Mares 32b3fb64ceSMartin Mares * The VGA16 bit in the bridge control register is now supported. 33b3fb64ceSMartin Mares 34b3fb64ceSMartin Mares * Added a port to SylixOS. Thanks to YuJian Gong for contribution. 35b3fb64ceSMartin Mares 36b3fb64ceSMartin Mares * Added a port to DOS/DJGPP. Thanks to Rudolf Marek for contribution. 37b3fb64ceSMartin Mares 38b3fb64ceSMartin Mares * The order in which back-ends are probed was decoupled from the 39b3fb64ceSMartin Mares internal back-end IDs. This helps, because new back-ends must have 40b3fb64ceSMartin Mares their ID allocated at the end to keep the ABI, but they might need 41b3fb64ceSMartin Mares to be proved earlier. 42b3fb64ceSMartin Mares 43b3fb64ceSMartin Mares * The fbsd-device back-end should work again. 44b3fb64ceSMartin Mares 45b3fb64ceSMartin Mares * Fixed a couple of bugs. Most notably, DeviceName was not printed. 46b3fb64ceSMartin Mares 47b3fb64ceSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 48b3fb64ceSMartin Mares 49b72f3827SMartin Mares2017-11-17 Martin Mares <[email protected]> 50b72f3827SMartin Mares 51b72f3827SMartin Mares * Released as 3.5.6. 52b72f3827SMartin Mares 53b72f3827SMartin Mares * Improvements of the FreeBSD back-end: read-only access for non-root, 54b72f3827SMartin Mares support DragonFly BSD, support extended config space. 55b72f3827SMartin Mares 56b72f3827SMartin Mares * MN VPD keyword is decoded correctly. 57b72f3827SMartin Mares 58b72f3827SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 59b72f3827SMartin Mares 60dfd15a80SMartin Mares2017-07-05 Martin Mares <[email protected]> 61dfd15a80SMartin Mares 62dfd15a80SMartin Mares * Released as 3.5.5. 63dfd15a80SMartin Mares 64dfd15a80SMartin Mares * Better decoding of AER capability. 65dfd15a80SMartin Mares 66dfd15a80SMartin Mares * "Slot Implemented" flag is decoded for PCI/PCI-X to PCIe bridges. 67dfd15a80SMartin Mares 68dfd15a80SMartin Mares * Minor fixes of decoding other capabilities. 69dfd15a80SMartin Mares 70dfd15a80SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 71dfd15a80SMartin Mares 729f9e373bSMartin Mares2017-02-25 Martin Mares <[email protected]> 739f9e373bSMartin Mares 749f9e373bSMartin Mares * Released as 3.5.4. 759f9e373bSMartin Mares 769f9e373bSMartin Mares * Previous version broke compilation on systems, for which lib/types.h 779f9e373bSMartin Mares did not provide a 64-bit integer type. It is provided everywhere now. 789f9e373bSMartin Mares 792ee7d45aSMartin Mares2017-02-15 Martin Mares <[email protected]> 802ee7d45aSMartin Mares 812ee7d45aSMartin Mares * Released as 3.5.3. 822ee7d45aSMartin Mares 832ee7d45aSMartin Mares * When lspci looks for Linux kernel modules, it uses the default 842ee7d45aSMartin Mares path to module directory provided by libkmod. Previously, 852ee7d45aSMartin Mares it tried to construct the path explicitly, which need not 862ee7d45aSMartin Mares work on all systems. 872ee7d45aSMartin Mares 882ee7d45aSMartin Mares * Improved formatting of memory and I/O ranges behind a bridge. 892ee7d45aSMartin Mares 902ee7d45aSMartin Mares * PCIe link capabilities now display GEN4 speed (16GT/s). 912ee7d45aSMartin Mares 922ee7d45aSMartin Mares * PCIe device capabilities now show bits related to atomic operations. 932ee7d45aSMartin Mares Thanks to Satanand Burla for a patch. 942ee7d45aSMartin Mares 952ee7d45aSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 962ee7d45aSMartin Mares 974a190235SMartin Mares2016-10-03 Martin Mares <[email protected]> 984a190235SMartin Mares 994a190235SMartin Mares * Released as 3.5.2. 1004a190235SMartin Mares 1014a190235SMartin Mares * The L1 power management capability is now decoded more 1024a190235SMartin Mares thoroughly. Thanks to Rajat Jain for the patch. 1034a190235SMartin Mares 1044a190235SMartin Mares * The table of configuration registers used by setpci 1054a190235SMartin Mares had a bug in the definition of SUBSYSTEM_VENDOR_ID. 1064a190235SMartin Mares 1072f8b8f9fSMartin Mares2016-05-22 Martin Mares <[email protected]> 1082f8b8f9fSMartin Mares 1092f8b8f9fSMartin Mares * Released as 3.5.1. 1102f8b8f9fSMartin Mares 1112f8b8f9fSMartin Mares * Fixed symbol versioning of pci_init(). 1122f8b8f9fSMartin Mares 113ab6ed5fdSMartin Mares2016-05-19 Martin Mares <[email protected]> 114ab6ed5fdSMartin Mares 115ab6ed5fdSMartin Mares * Released as 3.5.0. 116ab6ed5fdSMartin Mares 117ab6ed5fdSMartin Mares * New capabilities decoded: Downstream Port Containment, 118ab6ed5fdSMartin Mares Precision Time Measurement. Thanks to Keith Busch and 119ab6ed5fdSMartin Mares Jonathan Yong. 120ab6ed5fdSMartin Mares 121ab6ed5fdSMartin Mares * Domain numbers extended to 31 bits. This will be used by the 122ab6ed5fdSMartin Mares Linux kernel on some machines in near future. 123ab6ed5fdSMartin Mares 124ab6ed5fdSMartin Mares * Enhanced allocation regions are now decoded on Linux. 125ab6ed5fdSMartin Mares 126ab6ed5fdSMartin Mares * The NetBSD back-end supports PCIe extended configuration space. 127ab6ed5fdSMartin Mares 128ab6ed5fdSMartin Mares * Updated pci.ids to the current snapshot of the database. 129ab6ed5fdSMartin Mares 13037c9315cSMartin Mares2016-01-03 Martin Mares <[email protected]> 13137c9315cSMartin Mares 13237c9315cSMartin Mares * Released as 3.4.1. 13337c9315cSMartin Mares 13437c9315cSMartin Mares * New capabilities decoded: Process Address Space, Page Request 13537c9315cSMartin Mares Interface, Enhanced Allocation. Thanks to David Daney and 13637c9315cSMartin Mares David Woodhouse. 13737c9315cSMartin Mares 13837c9315cSMartin Mares * DevCap SlotPowerLimit is now decoded for all components with 13937c9315cSMartin Mares upstream ports. 14037c9315cSMartin Mares 14137c9315cSMartin Mares * Database mirror at SourceForge moved to GitHub. 14237c9315cSMartin Mares 14337c9315cSMartin Mares * Updated pci.ids to the current snapshot of the database. 14437c9315cSMartin Mares 145508c53ebSMartin Mares2015-09-14 Martin Mares <[email protected]> 146508c53ebSMartin Mares 147508c53ebSMartin Mares * Released as 3.4.0. 148508c53ebSMartin Mares 149508c53ebSMartin Mares * On Linux, we report NUMA nodes of devices. 150508c53ebSMartin Mares 151508c53ebSMartin Mares * The sysfs back-end does not die on read errors 152508c53ebSMartin Mares of optional attributes. Instead, a warning is produced. 153508c53ebSMartin Mares 154508c53ebSMartin Mares * Fixed several minor bugs. 155508c53ebSMartin Mares 156508c53ebSMartin Mares * Updated pci.ids to the current snapshot of the database. 157508c53ebSMartin Mares 158949f4469SMartin Mares2015-04-09 Martin Mares <[email protected]> 159949f4469SMartin Mares 160949f4469SMartin Mares * Released as 3.3.1. 161949f4469SMartin Mares 162949f4469SMartin Mares * Removed hacks for backward compatibility with Linux libc5, 163949f4469SMartin Mares which were breaking newer non-glibc Linux systems. Thanks 164949f4469SMartin Mares to Felix Janda. 165949f4469SMartin Mares 166949f4469SMartin Mares * Display VirtIO vendor-specific capability. Patch by Gerd 167949f4469SMartin Mares Hoffmann. 168949f4469SMartin Mares 169949f4469SMartin Mares * Fixed memory leak in name cache. 170949f4469SMartin Mares 1713bc4dd2cSMartin Mares * Updated pci.ids to the current snapshot of the database. 1723bc4dd2cSMartin Mares 173f14d4d87SMartin Mares2014-11-10 Martin Mares <[email protected]> 174f14d4d87SMartin Mares 1751481a1caSMartin Mares * Released as 3.3.0. 1761481a1caSMartin Mares (celebrating a one-year anniversary of the previous version :)) 17728617b24SMartin Mares 17828617b24SMartin Mares * Device names exported by BIOS are displayed on Linux. 17928617b24SMartin Mares 18028617b24SMartin Mares * On Linux systems, HWDB is used to look up device names 18128617b24SMartin Mares when our ID database gives no match. (More precisely, 18228617b24SMartin Mares HWDB is consulted after local pci.ids, but before using 18328617b24SMartin Mares network to query online pci.ids.) Thanks to Tom Gundersen 18428617b24SMartin Mares for the initial patch. 18528617b24SMartin Mares 18628617b24SMartin Mares * Added experimental back-end for OS X / Darwin. Thanks to 18728617b24SMartin Mares Richard Yao for providing it. 18828617b24SMartin Mares 189afb881ccSMartin Mares * Filters now support matching by device class. Original 190afb881ccSMartin Mares patch by Matthew Wilcox, wrappers for ABI compatibility 191afb881ccSMartin Mares by me. 192afb881ccSMartin Mares 19328617b24SMartin Mares * Interrupt Pin and Interrupt Line registers are displayed 19428617b24SMartin Mares for bridge devices, too. 19528617b24SMartin Mares 19628617b24SMartin Mares * Several portability bugs have been fixed. 19728617b24SMartin Mares 19828617b24SMartin Mares * Several typos have been fixed. Also, use of questionable 19928617b24SMartin Mares constructs in man pages has been reduced. 20028617b24SMartin Mares 20128617b24SMartin Mares * PCIe link capabilities now include the ASPMOptComp bit. 20228617b24SMartin Mares 20328617b24SMartin Mares * The "CRS Software Visibility" bit is now decoded properly. 20428617b24SMartin Mares 20528617b24SMartin Mares * Updated pci.ids to the current snapshot of the database. 20628617b24SMartin Mares 207dc49926aSMartin Mares2013-11-10 Martin Mares <[email protected]> 208dc49926aSMartin Mares 209dc49926aSMartin Mares * Released as 3.2.1. 210dc49926aSMartin Mares 211dc49926aSMartin Mares * CardBus bridge capabilities are displayed. 212dc49926aSMartin Mares 213dc49926aSMartin Mares * PCIe L1 PM substates are decoded. 214dc49926aSMartin Mares 215dc49926aSMartin Mares * Various bugs were fixed in decoding of PCIe capabilities. 216dc49926aSMartin Mares 217dc49926aSMartin Mares * The sysfs back-end does not spit out unnecessary warnings when 218dc49926aSMartin Mares empty slots report only a partial device address. This actually 219dc49926aSMartin Mares happens on IBM pSeries. 220dc49926aSMartin Mares 221dc49926aSMartin Mares * Updated pci.ids to the today's snapshot of the database. 222dc49926aSMartin Mares 2236a4909eeSMartin Mares2013-04-19 Martin Mares <[email protected]> 2246a4909eeSMartin Mares 2256a4909eeSMartin Mares * Released as 3.2.0. 2266a4909eeSMartin Mares 2276a4909eeSMartin Mares * On newer Linux systems, we use libkmod to look up kernel modules 22869a77b5cSMartin Mares (modules.pcimap no longer exists). To facilitate this, libpci 2296a4909eeSMartin Mares is able to look up module aliases in sysfs. 2306a4909eeSMartin Mares 2316a4909eeSMartin Mares * Various minor bug fixes. 2326a4909eeSMartin Mares 2336a4909eeSMartin Mares * Updated pci.ids to the today's snapshot of the database. 2346a4909eeSMartin Mares 23527c0f3acSMartin Mares2012-06-25 Martin Mares <[email protected]> 23627c0f3acSMartin Mares 23727c0f3acSMartin Mares * Released as 3.1.10. 23827c0f3acSMartin Mares 23927c0f3acSMartin Mares * Decoding of LTR/OBFF in PCIe capabilities. 24027c0f3acSMartin Mares 24127c0f3acSMartin Mares * Various minor bug fixes. 24227c0f3acSMartin Mares 24327c0f3acSMartin Mares * Updated pci.ids to the today's snapshot of the database. 24427c0f3acSMartin Mares 24568e5ff17SMartin Mares2012-01-14 Martin Mares <[email protected]> 24668e5ff17SMartin Mares 24768e5ff17SMartin Mares * Released as 3.1.9. 24868e5ff17SMartin Mares 24968e5ff17SMartin Mares * Updated README. 25068e5ff17SMartin Mares 2516a4909eeSMartin Mares * Wherever we mention the PCI ID database, we now refer to 25268e5ff17SMartin Mares http://pci-ids.ucw.cz/ and the sf.net site is mentioned only 25368e5ff17SMartin Mares as a mirror. This includes update-pciids. 25468e5ff17SMartin Mares 25568e5ff17SMartin Mares * Decode PCIe Gen 3 speeds and link status fields. 25668e5ff17SMartin Mares 25768e5ff17SMartin Mares * Various minor bug fixes. 25868e5ff17SMartin Mares 25968e5ff17SMartin Mares * Updated pci.ids to the today's snapshot of the database. 26068e5ff17SMartin Mares 261a70dab15SMartin Mares2011-10-02 Martin Mares <[email protected]> 262a70dab15SMartin Mares 263a70dab15SMartin Mares * Released as 3.1.8. 264a70dab15SMartin Mares 265a70dab15SMartin Mares * More capabilities: Transaction Processing Hints, Latency Tolerance 266a70dab15SMartin Mares Reporting. Thanks to Jesse Barnes. 267a70dab15SMartin Mares 268a70dab15SMartin Mares * Added BeOS and Haiku ports. Contributed by Francois Revol. 269a70dab15SMartin Mares 270a70dab15SMartin Mares * pciutils.pc now uses Libs.private properly. 271a70dab15SMartin Mares 272a70dab15SMartin Mares * When we format a name and it does not fit in the buffer, we truncate 273a70dab15SMartin Mares it instead of returning "buffer too small" instead. This works on all 274a70dab15SMartin Mares platforms with sane (i.e., C99-compatible) snprintf(). 275a70dab15SMartin Mares 276a70dab15SMartin Mares * Various minor bug fixes. 277a70dab15SMartin Mares 278a70dab15SMartin Mares * Updated pci.ids to the today's snapshot of the database. 279a70dab15SMartin Mares 2806bc2bc1cSMartin Mares2010-01-31 Martin Mares <[email protected]> 2816bc2bc1cSMartin Mares 2826bc2bc1cSMartin Mares * Released as 3.1.7. 2836bc2bc1cSMartin Mares 2846bc2bc1cSMartin Mares * Minor improvements and bug fixes in decoding of the Virtual Channel 2856bc2bc1cSMartin Mares capability. 2866bc2bc1cSMartin Mares 287e3a052daSMartin Mares2010-01-24 Martin Mares <[email protected]> 288e3a052daSMartin Mares 289e3a052daSMartin Mares * Released as 3.1.6. 290e3a052daSMartin Mares 291e3a052daSMartin Mares * More capabilities decoded: Virtual Channel (except arbitration 292e3a052daSMartin Mares tables), Root Complex Link, Vendor-Specific (header only), SATA HBA. 293e3a052daSMartin Mares 294e3a052daSMartin Mares * All extended capabilities have their version displayed (-vv or more). 295e3a052daSMartin Mares 2969978b6fdSMartin Mares2010-01-19 Martin Mares <[email protected]> 2979978b6fdSMartin Mares 2989978b6fdSMartin Mares * Released as 3.1.5. 2999978b6fdSMartin Mares 3009978b6fdSMartin Mares * Updated pci.ids to the today's snapshot of the database. 3019978b6fdSMartin Mares 3029978b6fdSMartin Mares * When scanning extended capabilities, properly mask the lowest 2 bits, 3039978b6fdSMartin Mares which are currently reserved. This avoids unaligned access errors on 3049978b6fdSMartin Mares broken hardware (see tests/broken-ecaps). 3059978b6fdSMartin Mares 3069978b6fdSMartin Mares * Large bar sizes are displayed in human-readable format (with units). 3079978b6fdSMartin Mares Thanks to Matthew Wilcox. 3089978b6fdSMartin Mares 3099978b6fdSMartin Mares * Physical slot information is displayed correctly for multi-function cards. 3109978b6fdSMartin Mares Fixed by Matthew Wilcox. 3119978b6fdSMartin Mares 3129978b6fdSMartin Mares * Fixed a couple of typos everywhere. 3139978b6fdSMartin Mares 3149978b6fdSMartin Mares * Library: Fixed bugs in freeing of capabilities. 3159978b6fdSMartin Mares 3169978b6fdSMartin Mares * Windows back-end compiles again. 3179978b6fdSMartin Mares 318c67775bcSMartin Mares2009-08-14 Martin Mares <[email protected]> 319c67775bcSMartin Mares 320ebb9bc54SMartin Mares * Released as 3.1.4. 321ebb9bc54SMartin Mares (sorry that I have missed 22/7 and released it later :-)) 322c67775bcSMartin Mares 323c67775bcSMartin Mares * Updated pci.ids to the today's snapshot of the database. 324c67775bcSMartin Mares 325c67775bcSMartin Mares * Fixed memory and file descriptor leak in the dump back-end. 326c67775bcSMartin Mares 327c67775bcSMartin Mares * The SR-IOV capability decoder now prints the VF BAR's. 328c67775bcSMartin Mares Patch by Chris Wright, cleaned up by me. 329c67775bcSMartin Mares 330c67775bcSMartin Mares * On request of certain company's lawyers, we now include a copy 331c67775bcSMartin Mares of the GPL with our package. It seems that the pciutils are getting 332c67775bcSMartin Mares mature if the most important bug of the month was this one ;-) 333c67775bcSMartin Mares 33410df48cbSMartin Mares2009-07-04 Martin Mares <[email protected]> 33510df48cbSMartin Mares 33610df48cbSMartin Mares * Released as 3.1.3. 33710df48cbSMartin Mares 33810df48cbSMartin Mares * Updated pci.ids to the current snapshot of the database. 33910df48cbSMartin Mares 34010df48cbSMartin Mares * The VPD parser now reports unknown and vendor-defined items 34110df48cbSMartin Mares properly. It also stops on any item in unknown format, avoiding long 34210df48cbSMartin Mares output on bogus VPD data. Thanks to Ben Hutchings and Matthew Wilcox. 34310df48cbSMartin Mares 34410df48cbSMartin Mares * The MSI-X table size now matches the spec. Thanks to Michael S. 34510df48cbSMartin Mares Tsirkin. 34610df48cbSMartin Mares 34710df48cbSMartin Mares * The Power Management capability now includes the soft reset bit. 34810df48cbSMartin Mares Thanks to Yu Zhao. 34910df48cbSMartin Mares 35010df48cbSMartin Mares * Decoding of the Advanced Features capability has been added. 35110df48cbSMartin Mares Thanks to Yu Zhao. 35210df48cbSMartin Mares 35310df48cbSMartin Mares * The whole package compiles on GNU/kFreeBSD again. 35410df48cbSMartin Mares 35510df48cbSMartin Mares The following patches have been contributed by Matthew Wilcox: 35610df48cbSMartin Mares 35710df48cbSMartin Mares * The procfs back-end is able to cope with /proc/bus/pci 35810df48cbSMartin Mares containing names with domains, which occur on sparc64 and 35910df48cbSMartin Mares possibly other architectures due to a kernel bug. 36010df48cbSMartin Mares 36110df48cbSMartin Mares * The sysfs back-end no longer complains when a slot address 36210df48cbSMartin Mares is missing, which happens with old versions of Linux fakephp. 36310df48cbSMartin Mares 36410df48cbSMartin Mares * The Device Serial Number capability is printed in the right 36510df48cbSMartin Mares byte order. 36610df48cbSMartin Mares 36710df48cbSMartin Mares * The MSI and MSI-X capabilities are printed in a prettier way. 36810df48cbSMartin Mares 36910df48cbSMartin Mares * The tree output mode (`lspci -t') shows domain numbers only 37010df48cbSMartin Mares at the root, which makes the output more compact. 37110df48cbSMartin Mares 37210df48cbSMartin Mares * Updated documentation on the bus mapping mode (`lspci -M'). 37310df48cbSMartin Mares 37434683007SMartin Mares2009-02-01 Martin Mares <[email protected]> 37534683007SMartin Mares 37634683007SMartin Mares * Released as 3.1.2. 37734683007SMartin Mares 37834683007SMartin Mares * Fixed another silly bug in the command-line parser of setpci. 37934683007SMartin Mares 380f6523e28SMartin Mares2009-01-30 Martin Mares <[email protected]> 381f6523e28SMartin Mares 382f6523e28SMartin Mares * Released as 3.1.1. 383f6523e28SMartin Mares 384f6523e28SMartin Mares * Updated pci.ids to the current snapshot of the database. 385f6523e28SMartin Mares 386f6523e28SMartin Mares * The configure script now sets LC_ALL to avoid being fooled by 387f6523e28SMartin Mares locale-dependent behavior of `tr'. 388f6523e28SMartin Mares 389f6523e28SMartin Mares * The command-line parser of setpci did sometimes segfault on invalid 390f6523e28SMartin Mares input. Thanks to Andreas Wiese for a fix. 391f6523e28SMartin Mares 392db557900SMartin Mares2009-01-18 Martin Mares <[email protected]> 393db557900SMartin Mares 394db557900SMartin Mares * Released as 3.1.0. 395db557900SMartin Mares 396af358b08SMartin Mares * Updated pci.ids to the current snapshot of the database. 397af358b08SMartin Mares 398db557900SMartin Mares * The Cygwin backend now works on Windows Vista. Thanks to Jonathan 399db557900SMartin Mares Kotta. 400db557900SMartin Mares 401db557900SMartin Mares * Fixed a bug in decoding of the SR-IOV capability. Patch by Yu Zhao. 402db557900SMartin Mares 403db557900SMartin Mares * Details of some PCIe capabilities are displayed only with -vv. 404db557900SMartin Mares 405db557900SMartin Mares * When a BAR is reported by the OS, but not by the device (i.e., 406db557900SMartin Mares it is marked as [virtual] in lspci), the [disabled] flag is 407db557900SMartin Mares suppressed, because it does not make sense in such cases. 408db557900SMartin Mares Patch by Yu Zhao. 409db557900SMartin Mares 4102b31207aSMartin Mares2008-12-13 Martin Mares <[email protected]> 4112b31207aSMartin Mares 4122b31207aSMartin Mares * The source code of lspci has been split to multiple files, hopefully 4132b31207aSMartin Mares making it easier to maintain. 4142b31207aSMartin Mares 4152b31207aSMartin Mares * The library and lspci now know about physical slot names. So far, 4162b31207aSMartin Mares they are provided by the sysfs back-end only. Thanks go to Alex Chiang. 4172b31207aSMartin Mares 4182b31207aSMartin Mares * When a device has the VPD (Vital Product Data) capability and the 4192b31207aSMartin Mares VPD data are supplied by the OS, they are decoded and printed in the 4202b31207aSMartin Mares verbose mode. This currently works only on Linux with the sysfs 4212b31207aSMartin Mares back-end. Thanks to Ben Hutchings of Solarflare for the patch. 4222b31207aSMartin Mares 4232b31207aSMartin Mares * `setpci --version' now works properly. 4242b31207aSMartin Mares 4254d4325f8SMartin Mares * `setpci --dumpregs' prints a table of all known names of 4262b31207aSMartin Mares registers and capabilities. This replaces the table of registers 4272b31207aSMartin Mares in the setpci man page. 4282b31207aSMartin Mares 4292b31207aSMartin Mares * The dry-run mode of setpci gives better feedback. 4302b31207aSMartin Mares 4312b31207aSMartin Mares * The setpci utility is now able to address registers stored in PCI 4322b31207aSMartin Mares capabilities (actually it allows a more general form of relative 4332b31207aSMartin Mares addressing). 4342b31207aSMartin Mares 4352b31207aSMartin Mares * The library has gained functions for working with PCI capabilities. 4362b31207aSMartin Mares 4372b31207aSMartin Mares * Address Translation Services capability is now decoded. Patch by 4382b31207aSMartin Mares Yu Zhao. 4392b31207aSMartin Mares 440b282435dSMartin Mares2008-11-09 Martin Mares <[email protected]> 441b282435dSMartin Mares 442b282435dSMartin Mares * Released as 3.0.3. 443b282435dSMartin Mares 444b282435dSMartin Mares * `lspci -k' now displays the subsystem ID, too. This makes `-k' 445b282435dSMartin Mares show everything needed to identify the device and the available 446b282435dSMartin Mares drivers, which was called for by many users. 447b282435dSMartin Mares 448b282435dSMartin Mares * Fixed spelling of MSI. Patch by Matthew Wilcox. 449b282435dSMartin Mares 450b282435dSMartin Mares * Better support for cross-compilation. Thanks to Alon Bar-Lev 451b282435dSMartin Mares for the patch. 452b282435dSMartin Mares 453b282435dSMartin Mares * Fixed printing of the AER capability. Patch by Max Asbock. 454b282435dSMartin Mares 455b282435dSMartin Mares * HT 1.02 capabilities are decoded as HT 1.03. Suggested by 456b282435dSMartin Mares Carl-Daniel Hailfinger. 457b282435dSMartin Mares 458b282435dSMartin Mares * Fixed Cygwin build. Thanks to Steve Elliott for reporting the bug. 459b282435dSMartin Mares 460b282435dSMartin Mares * Updated pci.ids to the current snapshot of the database. 461b282435dSMartin Mares 462daf2ef4eSMartin Mares2008-09-19 Martin Mares <[email protected]> 463daf2ef4eSMartin Mares 464daf2ef4eSMartin Mares * Released as 3.0.2. 465daf2ef4eSMartin Mares 466daf2ef4eSMartin Mares * Fixed a minor bug in the configure script, which caused warnings 467daf2ef4eSMartin Mares about redefinition of symbols during compilation. 468daf2ef4eSMartin Mares 46938254178SMartin Mares2008-09-11 Martin Mares <[email protected]> 47038254178SMartin Mares 47138254178SMartin Mares * Released as 3.0.1. 47238254178SMartin Mares 47338254178SMartin Mares * Updated pci.ids to the most recent snapshot. 47438254178SMartin Mares 47538254178SMartin Mares * Added a Cygwin port. Patch by Christopher Voltz, ported to the 47638254178SMartin Mares current tree by Martin Mares. 47738254178SMartin Mares 47838254178SMartin Mares * Worked around compatibility problems with various default settings 47938254178SMartin Mares of wget (we have to set --no-timestamping explicitly). Thanks to Ville 48038254178SMartin Mares Skytta for pointing that out. 48138254178SMartin Mares 48238254178SMartin Mares * Fixed printing of MSI capabilities. Thanks to Matthew Wilcox for 48338254178SMartin Mares a patch. 48438254178SMartin Mares 48538254178SMartin Mares * Added decoding of several PCI-X capabilities: device/link/slot 2, 48638254178SMartin Mares Advanced Error Reporting, Access Control Services, Alternative Routing-ID, 48738254178SMartin Mares Single Root I/O Virtualization. Thanks to Yu Zhao for patches. 48838254178SMartin Mares 48938254178SMartin Mares * Fixed bug in filters which caused them to refuse vendor/device ID 0xffff. 49038254178SMartin Mares 49138254178SMartin Mares * README: The linux-pci mailing list has moved to [email protected]. 49238254178SMartin Mares 49338254178SMartin Mares * Fixed several build problems: builds without PCI_USE_DNS on Linux 49438254178SMartin Mares and with PCI_USE_DNS on Solaris and *BSD. Static library mode also 49538254178SMartin Mares compiles again on old versions of GCC. 49638254178SMartin Mares 497cec9f7e7SMartin Mares2008-04-10 Martin Mares <[email protected]> 498cec9f7e7SMartin Mares 499cec9f7e7SMartin Mares * Released as 3.0.0. 500cec9f7e7SMartin Mares 501cec9f7e7SMartin Mares * Updated API and ABI version. 502cec9f7e7SMartin Mares 503cd2f6a34SMartin Mares2008-02-20 Martin Mares <[email protected]> 504cd2f6a34SMartin Mares 505cd2f6a34SMartin Mares * Released as 2.99.1-alpha2. 506cd2f6a34SMartin Mares 507cd2f6a34SMartin Mares * Changed the default domain for the DNS resolver. 508cd2f6a34SMartin Mares 509165a50cbSMartin Mares2008-02-18 Martin Mares <[email protected]> 510165a50cbSMartin Mares 511165a50cbSMartin Mares * Released as 2.99.1-alpha1. 512623234ecSMartin Mares 513a1fca487SMartin Mares * The makefile system has been reworked. All configuration settings 514a1fca487SMartin Mares are now passed to the configure script in environment variables, 515a1fca487SMartin Mares allowing for easy tweaking in the top-level Makefile. All control 516a1fca487SMartin Mares knobs are now described in the README. 517a1fca487SMartin Mares 518a1fca487SMartin Mares * The libpci can be built as a shared library with properly restricted 519a1fca487SMartin Mares symbol exports. Use `make SHARED=yes' to enable that or `make SHARED=local' 520a1fca487SMartin Mares for a local testing build (with hardwired paths to the library, so that 521a1fca487SMartin Mares it does not need installation). 522a1fca487SMartin Mares 523a1fca487SMartin Mares * The example program has been moved from lib/example.c to the top-level 524a1fca487SMartin Mares directory, because it should be built exactly as the other utilities 525a1fca487SMartin Mares are. It has been also improved slightly to educate better. 526a1fca487SMartin Mares 527623234ecSMartin Mares * The i386-ports method is enabled on Linux/x86_64 as well. 528623234ecSMartin Mares 529ae27e293SMartin Mares2008-02-13 Martin Mares <[email protected]> 530ae27e293SMartin Mares 531ae27e293SMartin Mares * Released as 2.2.10-net2. 532ae27e293SMartin Mares 533ae27e293SMartin Mares * Support for resolving of PCI ID's using DNS together with a local 534ae27e293SMartin Mares cache of resolved entries has been added. See the `-q' and `-Q' options 535ae27e293SMartin Mares of lspci. 536ae27e293SMartin Mares 537ae27e293SMartin Mares * The library now has a generic system of settable parameters, which 538ae27e293SMartin Mares also include settings of the DNS resolver and cache. An `-O' option 539ae27e293SMartin Mares has been added to lspci and setpci to allow setting of these options. 540ae27e293SMartin Mares 541ae27e293SMartin Mares * Configuration of the access methods are now specified by the new 542ae27e293SMartin Mares parameter system, replacing the pci_access->method_params array. 543ae27e293SMartin Mares 544ae27e293SMartin Mares * Access methods now also have sensible names and help texts and it 545ae27e293SMartin Mares is possible to look up method ID by a name. 546ae27e293SMartin Mares 547ae27e293SMartin Mares * An `-A' switch has been added to both lspci and setpci, allowing to 548ae27e293SMartin Mares select an arbitrary access method. The `-P' switch (configure proc 549ae27e293SMartin Mares backend) has been removed as it is no longer needed and I do not know 550ae27e293SMartin Mares any its user. 551ae27e293SMartin Mares 552ae27e293SMartin Mares * Several source files have been split for better maintainability 553ae27e293SMartin Mares (most notably the resolving of ID's). 554ae27e293SMartin Mares 555ae27e293SMartin Mares * Man pages and help texts have been updated. A new man page `pcilib(7)' 556ae27e293SMartin Mares has been added and description of library options has been moved there. 557ae27e293SMartin Mares 558ae27e293SMartin Mares * When an unknown device ID is encountered, we print `Device <id>' 559ae27e293SMartin Mares instead of `Unknown device <id>'. It uses less space and it also 560ae27e293SMartin Mares should reduce the number of inexperienced users complaining that 561ae27e293SMartin Mares the device is not supported by the OS. To lookup up OS drivers, 562ae27e293SMartin Mares use the `-k' option. 563ae27e293SMartin Mares 564ae27e293SMartin Mares * PCI_LIB_VERSION has been bumped to 0x020299. 565ae27e293SMartin Mares 566ae27e293SMartin Mares * Makefile: stripping of the binaries during installation can be 567ae27e293SMartin Mares overridden by the STRIP variable. 568ae27e293SMartin Mares 569ae27e293SMartin Mares * lib/types.h: We use the integer types from <stdint.h> if the 570ae27e293SMartin Mares compiler claims C99 support. 571ae27e293SMartin Mares 5720fc3bd18SMartin Mares2008-02-11 Martin Mares <[email protected]> 5730fc3bd18SMartin Mares 5742466b14bSMartin Mares * Released as 2.2.10. 5752466b14bSMartin Mares 5766add52f5SMartin Mares * lspci.c, setpci.c: Cleaned up the list of options. 5776add52f5SMartin Mares 5780fc3bd18SMartin Mares * lib/names.c: Fix displaying of errors reported by zlib. 5790fc3bd18SMartin Mares Previously, the buffer containing the error message had 5800fc3bd18SMartin Mares been deallocated by gzclose() before the message was printed. 5810fc3bd18SMartin Mares 582d26b5378SMartin Mares2008-01-07 Martin Mares <[email protected]> 583d26b5378SMartin Mares 584d26b5378SMartin Mares * update-pciids.sh: Added quiet mode (-q). Clean up uncompressed 585d26b5378SMartin Mares files left by previous versions of the pciutils. Patch by Mike 586d26b5378SMartin Mares Frysinger. 587d26b5378SMartin Mares 588d26b5378SMartin Mares * update-pciids.man: Mention the -q switch. 589d26b5378SMartin Mares 590dc01dd60SMartin Mares2007-11-29 Martin Mares <[email protected]> 591dc01dd60SMartin Mares 592dc01dd60SMartin Mares * lib/dump.c: Squashed compiler warnings about code with 593dc01dd60SMartin Mares no effect (there really were surplus *'s). 594dc01dd60SMartin Mares 59511339c0dSMartin Mares2007-11-06 Martin Mares <[email protected]> 59611339c0dSMartin Mares 59713463566SMartin Mares * Released as 2.2.9. 59813463566SMartin Mares 59911339c0dSMartin Mares * lspci.c: Added a new switch `-k' which requests printing 60011339c0dSMartin Mares of information on kernel drivers attached to each device 60111339c0dSMartin Mares and on kernel modules reporting the ability to handle the 60211339c0dSMartin Mares device. So far, this is supported only on Linux with the 60311339c0dSMartin Mares sysfs back-end, so it is implemented internally in the lspci 60411339c0dSMartin Mares instead of the libpci. Thanks to Anicka <[email protected]> 60511339c0dSMartin Mares for help. 60611339c0dSMartin Mares 6073de798bdSMartin Mares2007-10-19 Martin Mares <[email protected]> 6083de798bdSMartin Mares 6096cdb9d93SMartin Mares * Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS. 6106cdb9d93SMartin Mares Also added an explicit pattern rule for linking to make sure 6116cdb9d93SMartin Mares that LDLIBS is used on all platforms. Thanks to Dan Nicholson 6126cdb9d93SMartin Mares for the suggestion. 6136cdb9d93SMartin Mares 6146cdb9d93SMartin Mares2007-10-19 Martin Mares <[email protected]> 6156cdb9d93SMartin Mares 616a404b115SMartin Mares * Released as 2.2.8. 617a404b115SMartin Mares 6183de798bdSMartin Mares * pci.ids: Revised class codes to match Conventional PCI 3.0 specs. 6193de798bdSMartin Mares Added a couple of new ones, renumbered `ADMA continuous operation' 6203de798bdSMartin Mares prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention 6213de798bdSMartin Mares 0x40) and renumbered the satellite communication controllers. 6223de798bdSMartin Mares 6232d2c4810SMartin Mares * lib/header.h: Include `PCI hot-plug' and `Secure device' 624f7c76ec5SMartin Mares capabilities from PCI 3.0 specs. Also added `SATA HBA' and 625f7c76ec5SMartin Mares `Advanced features' caps from various ECN's. 6262d2c4810SMartin Mares 627fa2273caSMartin Mares * lspci.c: All known capabilities have at least their name displayed 628fa2273caSMartin Mares now. When we are unable to decode them completely, we signalize it 629fa2273caSMartin Mares with a `<?>' mark. 630fa2273caSMartin Mares 631fa2273caSMartin Mares * lspci.man: Document `<?>' and also mention that extended config 632fa2273caSMartin Mares space is currently available only with the linux_sysfs back-end. 633fa2273caSMartin Mares 63431c9bb28SMartin Mares * lspci.c: Decode the Debug port capability (per EHCI 0.96 spec). 63531c9bb28SMartin Mares 636a387042eSMartin Mares * lspci.c: Big code cleanup: re-arranged functions in the code, 637a387042eSMartin Mares renamed everything related to capabilities to cap_* and 638a387042eSMartin Mares all options except verbose to opt_*. 639a387042eSMartin Mares 6409c79fcc4SMartin Mares2007-10-14 Martin Mares <[email protected]> 6419c79fcc4SMartin Mares 6429c79fcc4SMartin Mares * lib/[fno]bsd-*: Removed extraneous braces. 6439c79fcc4SMartin Mares 644d5b4cd14SMartin Mares2007-10-12 Martin Mares <[email protected]> 645d5b4cd14SMartin Mares 646d5b4cd14SMartin Mares * Capability loop detection introduced 2.2.7 did not work 647d5b4cd14SMartin Mares properly with extended capabilities. Fixed. 648d5b4cd14SMartin Mares 649594de878SMartin Mares2007-10-05 Martin Mares <[email protected]> 650594de878SMartin Mares 6518a23eadcSMartin Mares * Released as 2.2.7. 6528a23eadcSMartin Mares 653594de878SMartin Mares * lspci.c (show_caps, show_ext_caps): Detect and report loops in 654594de878SMartin Mares capability lists. 655594de878SMartin Mares 6568a23eadcSMartin Mares * lspci.c, lib/header.h: Finished decoding of the PCI Express 6578a23eadcSMartin Mares capability. The extended capabilities remain undecoded for now, 6588a23eadcSMartin Mares but at least the list of them has been updated to reflect the 6598a23eadcSMartin Mares current PCI Express 2.0 spec. 6608a23eadcSMartin Mares 6618a23eadcSMartin Mares * lspci.c, lib/header.h: Decode new bits of traditional registers 6628a23eadcSMartin Mares as defined by PCIE / PCI-X. This includes discard timers in the bridge 6638a23eadcSMartin Mares control register and INTx enable/status in device control/status 6648a23eadcSMartin Mares registers. 6658a23eadcSMartin Mares 6668a23eadcSMartin Mares * lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed 6678a23eadcSMartin Mares by Marius Strobl. 6688a23eadcSMartin Mares 66999091df9SMartin Mares2007-09-12 Hasso Tepper <[email protected]> 67099091df9SMartin Mares 67199091df9SMartin Mares * Extended the fbsd-device backend to run on Dragonfly BSD. 67299091df9SMartin Mares 67399091df9SMartin Mares * lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>. 67499091df9SMartin Mares 67509156b3bSMartin Mares2007-09-03 Martin Mares <[email protected]> 67609156b3bSMartin Mares 67709156b3bSMartin Mares * Resurrected the Windows port, including cross-compilation by MinGW. 67809156b3bSMartin Mares Patch by Samuel Bronson <[email protected]>. 67909156b3bSMartin Mares 680325a3c50SMartin Mares2007-08-31 Martin Mares <[email protected]> 681325a3c50SMartin Mares 682325a3c50SMartin Mares * Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to allow 683325a3c50SMartin Mares cross-compilation. 684325a3c50SMartin Mares 685a2322147SMartin Mares2007-08-27 Martin Mares <[email protected]> 686a2322147SMartin Mares 687a2322147SMartin Mares * lib/names.c (pci_open): When calling gzopen(), use "rb" file mode 688a2322147SMartin Mares instead of "r". This is needed on DOS systems, where this function 689a2322147SMartin Mares somewhat illogically uses the binary flag for the compressed file 690a2322147SMartin Mares instead of the decompressed stream inside, where binariness really 691a2322147SMartin Mares matters. 692a2322147SMartin Mares 6934f2c5b94SMartin Mares2007-08-14 Martin Mares <[email protected]> 6944f2c5b94SMartin Mares 6954f2c5b94SMartin Mares * lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability, 6964f2c5b94SMartin Mares based on a patch by Jason Gunthorpe. 6974f2c5b94SMartin Mares 6984f2c5b94SMartin Mares * tests/cap-MSI-mapping: Added a test case. I plan to add test cases 6994f2c5b94SMartin Mares (which are dumps of config space) for all new features. 7004f2c5b94SMartin Mares 7010d7f5331SMartin Mares2007-06-20 Martin Mares <[email protected]> 7020d7f5331SMartin Mares 7037cebe481SMartin Mares * Released as 2.2.6. 7047cebe481SMartin Mares 7050d7f5331SMartin Mares * Makefile: Added an "install-lib" target. Thanks to Dan Nicholson 7060d7f5331SMartin Mares for a patch. 7070d7f5331SMartin Mares 7087cebe481SMartin Mares * Makefile, lib/Makefile: Generate and install pkg-config file 7097cebe481SMartin Mares for libpci. Again by Dan Nicholson. 7107cebe481SMartin Mares 7110d7f5331SMartin Mares2007-06-20 Thomas Schwinge <[email protected]> 7120d7f5331SMartin Mares 7130d7f5331SMartin Mares * lib/i386-io-hurd.h: Rewritten for new Hurd kernels. 7140d7f5331SMartin Mares 7156e4a45edSMartin Mares2007-05-04 Martin Mares <[email protected]> 7166e4a45edSMartin Mares 71755c89179SMartin Mares * Released as 2.2.5. 71855c89179SMartin Mares 7196e4a45edSMartin Mares * pci.ids: Updated to the current snapshot of the database. 7206e4a45edSMartin Mares 721d0b07542SMartin Mares2007-02-14 Martin Mares <[email protected]> 722d0b07542SMartin Mares 723d0b07542SMartin Mares * lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type. 724d0b07542SMartin Mares Patch by Mark Glines. 725d0b07542SMartin Mares 7263df35926SMartin Mares2007-02-09 Martin Mares <[email protected]> 7273df35926SMartin Mares 7283df35926SMartin Mares * pci.ids: Updated to the current snapshot of the database. 7293df35926SMartin Mares 730e49ed044SMartin Mares2007-02-06 Martin Mares <[email protected]> 731e49ed044SMartin Mares 7321ac3a99dSMartin Mares * Replaced bzero() by memset() everywhere, it's better to lose a tiny 7331ac3a99dSMartin Mares bit of readability than maintain hacks to make it work on various systems. 7341ac3a99dSMartin Mares 735b0eb18ccSMartin Mares * lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]' 736b0eb18ccSMartin Mares instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise. 737b0eb18ccSMartin Mares 738e49ed044SMartin Mares * lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise 739e49ed044SMartin Mares integer types. 740e49ed044SMartin Mares 7419de2768cSMartin Mares2007-02-04 Martin Mares <[email protected]> 7429de2768cSMartin Mares 7439de2768cSMartin Mares * lspci.c: alloca() needs <alloca.h>. 7449de2768cSMartin Mares 745d19394dbSMartin Mares2006-09-17 Martin Mares <[email protected]> 746d19394dbSMartin Mares 747d19394dbSMartin Mares * lib/dump.c: Fixed a couple of bugs in the dump backend which caused 748d19394dbSMartin Mares devices with domains or with extended config space to be read incorrectly. 749d19394dbSMartin Mares Also, dumps with partial lines are allowed now. 750d19394dbSMartin Mares 751934e7e36SMartin Mares2006-09-10 Martin Mares <[email protected]> 752934e7e36SMartin Mares 753f09856deSMartin Mares * pci.ids: Updated to the current database snapshot. 754f09856deSMartin Mares 755934e7e36SMartin Mares * lspci.c (scan_device): If an error occurs when reading the standard config 756934e7e36SMartin Mares header of a device, report it and ignore the device and return with exit 757934e7e36SMartin Mares code 2 at the end. 758934e7e36SMartin Mares 759b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 760b2055313SMartin Mares 761fb260653SMartin Mares * Released as 2.2.4. 762fb260653SMartin Mares 7631865e2ddSMartin Mares * maint/release: Remind the maintainer about the current PCI_LIB_VERSION. 7641865e2ddSMartin Mares 765028dffb2SMartin Mares * lib/pci.h: Updated PCI_LIB_VERSION. 766028dffb2SMartin Mares 76713081e57SMartin Mares * lspci.c (show_machine): In the `-m' mode, do proper shell escaping 76813081e57SMartin Mares if the fields printed contain quotes or backslashes. 76913081e57SMartin Mares 7703fd6b4d2SMartin Mares * lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse 7713fd6b4d2SMartin Mares of the `Device' tag for two different purposes. 7723fd6b4d2SMartin Mares 773840d09aeSMartin Mares * Makefile: Moved all system-dependent decisions to lib/configure, 774840d09aeSMartin Mares since config.mk is included in the top-level Makefile anyway. 775840d09aeSMartin Mares 7762100f710SMartin Mares * lib/configure: When configuring for Linux, ignore the kernel version 7772100f710SMartin Mares and always build all access methods. 7782100f710SMartin Mares 7793e9c7a18SMartin Mares * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers 7803e9c7a18SMartin Mares at many non-interesting places with gcc 3.4. 7813e9c7a18SMartin Mares 78294db5c82SMartin Mares * Whitespace cleanup of all source files. 78394db5c82SMartin Mares 784cc062b4aSMartin Mares * The pci.ids file can be stored compressed if zlib is available. 785cc062b4aSMartin Mares Added transparent decompression to lib/names.c, modified update-pciids.sh 786cc062b4aSMartin Mares to keep the file compressed if applicable, updated Makefiles. 787cc062b4aSMartin Mares Based on a patch by Matthew Wilcox, but all the bugs are mine. 788cc062b4aSMartin Mares 789f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 790f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 791f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 792f4ddb8d3SMartin Mares 79316e37012SMartin Mares * Added .gitignore files. 79416e37012SMartin Mares 795c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 796c7f5314dSMartin Mares 797afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 798afebde01SMartin Mares 799fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 800fd54ccebSMartin Mares 801b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 802b2055313SMartin Mares defined in the pci.ids file. 803b2055313SMartin Mares 8044254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 8054254d153SMartin Mares 8064254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 8074254d153SMartin Mares 8081c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 8091c5cc9b5SMartin Mares 81038a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 81138a9e3c3SMartin Mares 812c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 813c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 814c7ddfa3eSMartin Mares 815248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 816248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 817248a04f8SMartin Mares 818f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 819f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 820f29dcc87SMartin Mares 8218eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 8228eab3bffSMartin Mares 823d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 824d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 825d305d704SMartin Mares directly. 826d305d704SMartin Mares 8279007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 8289007a292SMartin Mares the port access state to generic code. 8299007a292SMartin Mares 830bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 831bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 832bd20d5b5SMartin Mares 83373750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 83473750606SMartin Mares 835d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 836d71daa45SMartin Mares 8371c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 8381c5cc9b5SMartin Mares 8391c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 8401c5cc9b5SMartin Mares 841c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 842c2b144efSMartin Mares 84314d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 84414d4f989SMartin Mares 84514d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 84614d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 84714d4f989SMartin Mares incomplete, though. 84814d4f989SMartin Mares 849c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 850c2b144efSMartin Mares 851c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 852c2b144efSMartin Mares be modified by kernel fixups. 853c2b144efSMartin Mares 854c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 855c2b144efSMartin Mares 856bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 857bc2eed2dSMartin Mares 858bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 859bc2eed2dSMartin Mares for the idea. 860bc2eed2dSMartin Mares 861bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 862bc2eed2dSMartin Mares cleaned up the name selection code. 863bc2eed2dSMartin Mares 864c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 865c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 866c72eeddeSMartin Mares 867c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 868c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 869c72eeddeSMartin Mares 8702f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 8712f294d4bSMartin Mares 8722f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 8732f294d4bSMartin Mares 87481afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 87581afa98cSMartin Mares name when printing an error message. 87681afa98cSMartin Mares 8770ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 8780ac282f2SMartin Mares 8790ac282f2SMartin Mares * README: Mention the public GIT tree. 8800ac282f2SMartin Mares 8810ac282f2SMartin Mares * README: Updated the list of ports. 8820ac282f2SMartin Mares 883d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 884d1058e9dSMartin Mares 885d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 886d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 887d1058e9dSMartin Mares 888abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 889abf8d505SMartin Mares 8902ae2d1aeSMartin Mares * Released as 2.2.3. 8912ae2d1aeSMartin Mares 8922ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 8932ae2d1aeSMartin Mares in -m mode. 8942ae2d1aeSMartin Mares 8952ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 8962ae2d1aeSMartin Mares 8971d5cf727SMartin Mares * Released as 2.2.2. 8981d5cf727SMartin Mares 8998a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 9008a830168SMartin Mares 901b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 902b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 903b6359063SMartin Mares the existing FreeBSD interface. 904b6359063SMartin Mares 905abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 906abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 907abf8d505SMartin Mares 9086ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 9096ac70402SMartin Mares 9102a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 9112a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 9122a124daeSMartin Mares forces domain display even there. 9132a124daeSMartin Mares 9146ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 9156ac70402SMartin Mares guaranteed to be stable between lspci versions. 9166ac70402SMartin Mares 9171bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 9181bbdea17SMartin Mares 919af61eb25SMartin Mares * lspci.man: Documented the -D switch. 920af61eb25SMartin Mares 921af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 922af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 923af61eb25SMartin Mares all devices. 924af61eb25SMartin Mares 9257a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 9267a61b93cSMartin Mares 9271bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 9281bbdea17SMartin Mares 9290e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 9300e78ef8aSMartin Mares 9310e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 9320e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 9330e78ef8aSMartin Mares 934e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 935e6859953SMartin Mares 936e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 937e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 938e6859953SMartin Mares 939e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 940e6859953SMartin Mares 941a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 942a99c0d69SMartin Mares 943e4af70c6SMartin Mares * Released as 2.2.1. 944e4af70c6SMartin Mares 945a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 946a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 947a99c0d69SMartin Mares 948f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 949f23fd3fcSMartin Mares 950f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 951f23fd3fcSMartin Mares 95215296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 95315296723SMartin Mares 95415296723SMartin Mares * Released as 2.2.0. 95515296723SMartin Mares 95640b6d93fSMartin Mares * pci.ids: Updated copyright header. 95740b6d93fSMartin Mares 95815296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 95915296723SMartin Mares 64-bit addresses, they are now always supported. 96015296723SMartin Mares 96115296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 96215296723SMartin Mares in bus-centric mode. 96315296723SMartin Mares 96415296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 96515296723SMartin Mares 96615296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 96715296723SMartin Mares are shorter. 96815296723SMartin Mares 969224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 970224707baSMartin Mares 971224707baSMartin Mares * Released as 2.1.99-test11. 972224707baSMartin Mares 973224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 974224707baSMartin Mares 975aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 976aeaca5d3SMartin Mares 977224707baSMartin Mares * Released as 2.1.99-test10. 978224707baSMartin Mares 97963e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 98063e6f2e0SMartin Mares 981043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 982043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 983043ebdeeSMartin Mares 984043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 985043ebdeeSMartin Mares 986aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 987aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 988aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 989aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 990aeaca5d3SMartin Mares 991aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 992aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 993aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 994aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 995aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 996aeaca5d3SMartin Mares 997121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 998121c76c9SMartin Mares 99954e13765SMartin Mares * Released as 2.1.99-test9. 100054e13765SMartin Mares 100154e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 100254e13765SMartin Mares gcc versions when optimizing anyway. 100354e13765SMartin Mares 100454e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 100554e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 100654e13765SMartin Mares 100754e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 100854e13765SMartin Mares 100984d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 101084d437d6SMartin Mares methods and which operations are privileged. 101184d437d6SMartin Mares 101284d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 101384d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 101484d437d6SMartin Mares portions of the configuration space being inaccessible, for example 101584d437d6SMartin Mares due to insufficient access rights. 101684d437d6SMartin Mares 10173b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 10183b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 10193b8bf739SMartin Mares as I haven't seen the spec). 10203b8bf739SMartin Mares 10213b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 10223b8bf739SMartin Mares 102384d437d6SMartin Mares * lspci.c: Removed C++ comments. 102484d437d6SMartin Mares 10253b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 10263b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 10273b8bf739SMartin Mares 10283b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 10293b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 10303b8bf739SMartin Mares list. 10313b8bf739SMartin Mares 1032f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 1033f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 1034f7821e53SMartin Mares access more than that. 1035ea4e5f5dSMartin Mares 103646ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 103746ea554dSMartin Mares 10388afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 10398afaab22SMartin Mares 1040121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 1041121c76c9SMartin Mares 1042c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 1043c1c2c30eSMartin Mares 1044b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 1045b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 1046b9ca9147SMartin Mares 1047c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 1048b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 1049c1c2c30eSMartin Mares 105026542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 105126542a0bSMartin Mares 105226542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 105326542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 105426542a0bSMartin Mares 10556aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 10566aa54f1bSMartin Mares 1057aabb0a92SMartin Mares * Released as 2.1.99-test8. 1058aabb0a92SMartin Mares 1059f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 1060f31412d1SMartin Mares no longer exported to the outside world. 1061f31412d1SMartin Mares 1062ee7d8384SMartin Mares * README.Windows: Updated. 1063ee7d8384SMartin Mares 1064ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 1065ee7d8384SMartin Mares 1066ee7d8384SMartin Mares * win32/config.h: Added. 1067ee7d8384SMartin Mares 1068ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 1069ee7d8384SMartin Mares 1070ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 1071ee7d8384SMartin Mares C library for use on systems where the default libraries lack 1072ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 1073ee7d8384SMartin Mares 1074ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 1075ee7d8384SMartin Mares Alexander Stock. 1076ee7d8384SMartin Mares 1077489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 1078489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 1079489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 1080489233b4SMartin Mares be gone. 1081489233b4SMartin Mares 1082489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 1083489233b4SMartin Mares 1084489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 1085489233b4SMartin Mares 1086489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 1087489233b4SMartin Mares it is included unconditionally in lib/types.h. 1088489233b4SMartin Mares 1089489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 1090489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 1091489233b4SMartin Mares from lib/pci.h to lib/types.h. 1092489233b4SMartin Mares 1093489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 1094489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 1095489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 1096489233b4SMartin Mares 1097489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 1098489233b4SMartin Mares headers with the kernel a couple of years ago. 1099489233b4SMartin Mares 11009bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 11019bb4b4eaSMartin Mares 11026aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 11036aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 11046aa54f1bSMartin Mares 11056aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 11066aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 11076aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 11086aa54f1bSMartin Mares 11096aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 11106aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 11116aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 11126aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 11136aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 11146aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 11156aa54f1bSMartin Mares mapping the regions and doing I/O on them. 11166aa54f1bSMartin Mares 111780e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 111880e6c636SMartin Mares 111980e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 112080e6c636SMartin Mares 1121d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 1122d6324891SMartin Mares 1123d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 1124d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 1125d6324891SMartin Mares 1126ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 1127ec25b52dSMartin Mares 1128362be683SMartin Mares * Released as 2.1.99-test7. 1129362be683SMartin Mares 1130ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 1131ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 1132ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 1133ec25b52dSMartin Mares 1134ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 1135ec25b52dSMartin Mares 1136ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 1137ec25b52dSMartin Mares 1138ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 1139ec25b52dSMartin Mares 1140ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 1141ec25b52dSMartin Mares 1142ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 1143ec25b52dSMartin Mares 1144ec25b52dSMartin Mares * lspci.man: Added -xxxx. 1145ec25b52dSMartin Mares 114609817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 114709817437SMartin Mares 1148d1fa27ebSMartin Mares * Released as 2.1.99-test6. 1149d1fa27ebSMartin Mares 11504d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 11514d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 11524d67aa89SMartin Mares 11534d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 11544d67aa89SMartin Mares failures. 11554d67aa89SMartin Mares 11564d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 11574d67aa89SMartin Mares 11584d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 11594d67aa89SMartin Mares Patch by Matthew Wilcox. 11604d67aa89SMartin Mares 11614d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 11624d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 11634d67aa89SMartin Mares 116409817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 116509817437SMartin Mares report correct errors reported by the libpci instead. 116609817437SMartin Mares 116709817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 116809817437SMartin Mares Better caching of config registers. 116909817437SMartin Mares 117009817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 117109817437SMartin Mares 117209817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 117309817437SMartin Mares just return the appropriate error code. 117409817437SMartin Mares 117509817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 117609817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 117709817437SMartin Mares and of course in the dump reader. 117809817437SMartin Mares 11790d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 11800d656226SMartin Mares 1181c0eece92SMartin Mares * Released as 2.1.99-test5. 1182c0eece92SMartin Mares 1183a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 1184a2413560SMartin Mares 1185a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 1186a2413560SMartin Mares macros. 1187a2413560SMartin Mares 1188a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 1189a2413560SMartin Mares 1190a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 1191a2413560SMartin Mares 1192a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 1193a2413560SMartin Mares Stock <[email protected]>. 1194a2413560SMartin Mares 1195a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 1196a2413560SMartin Mares changes to the configure script. 1197a2413560SMartin Mares 11980d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 11990d656226SMartin Mares 1200138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 1201138c0385SMartin Mares 12029f490382SMartin Mares * Released as 2.1.99-test4. 12039f490382SMartin Mares 1204cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 1205cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 1206cce2caacSMartin Mares 1207b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 1208b569ef09SMartin Mares (show_agp): rate[] could overflow. 1209b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 1210b569ef09SMartin Mares 1211bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 1212bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 1213bfc4fe7aSMartin Mares by me. 1214bfc4fe7aSMartin Mares 1215bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 1216bfc4fe7aSMartin Mares Again thanks to Maciej. 1217bfc4fe7aSMartin Mares 1218138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 1219138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 1220138c0385SMartin Mares 12218fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 12228fc75dbcSMartin Mares 122381abd2a7SMartin Mares * Released as 2.1.99-test3. 122481abd2a7SMartin Mares 12251f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 12261f7c91ccSMartin Mares 12271f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 12281f7c91ccSMartin Mares 122984c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 12301f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 12311f7c91ccSMartin Mares as well. 123284c8d1bbSMartin Mares 123384c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 123484c8d1bbSMartin Mares 123584c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 123684c8d1bbSMartin Mares 123784c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 123884c8d1bbSMartin Mares 123984c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 124084c8d1bbSMartin Mares 124184c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 124284c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 124384c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 124484c8d1bbSMartin Mares 124584c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 124684c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 124784c8d1bbSMartin Mares 124884c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 124984c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 125084c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 125184c8d1bbSMartin Mares 125211f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 125311f7b31bSMartin Mares is not supported by all C libraries. 125411f7b31bSMartin Mares 125511f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 125611f7b31bSMartin Mares full dependecies for the library in the top-level Makefile; hmmm, another 125711f7b31bSMartin Mares thing to rewrite some day). 125811f7b31bSMartin Mares 125911f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 126011f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 126111f7b31bSMartin Mares 126211f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 126311f7b31bSMartin Mares 126411f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 126511f7b31bSMartin Mares of Linux libc moved there. 126611f7b31bSMartin Mares 126711f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 126811f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 126911f7b31bSMartin Mares values and for too large values. 127011f7b31bSMartin Mares 12714284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 12724284af58SMartin Mares package is pretty cross-platform now :) 12734284af58SMartin Mares 12744284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 12754284af58SMartin Mares 1276ab12277eSMartin Mares * Released as 2.1.99-test2. 1277ab12277eSMartin Mares 1278ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 1279ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 1280ab12277eSMartin Mares 1281ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 1282ab12277eSMartin Mares making releases including inter-version diffs etc. 1283ab12277eSMartin Mares 1284ab12277eSMartin Mares * Makefile: Cleaned up. 1285ab12277eSMartin Mares 1286ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 1287ab12277eSMartin Mares this time the version checks should be right. 1288ab12277eSMartin Mares 1289ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 1290ab12277eSMartin Mares 12916d722cd6SMartin Mares * Released as 2.1.99-test1. 12926d722cd6SMartin Mares 1293dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 1294dd33246aSMartin Mares Remove shadows of the syscall access method which was never 1295dd33246aSMartin Mares implemented. 1296dd33246aSMartin Mares 129780b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 129880b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 129980b3121aSMartin Mares 13006aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 13016aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 13026aea909aSMartin Mares 13036aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 13046aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 13056aea909aSMartin Mares 13066aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 13076aea909aSMartin Mares 1308f701ff47SMartin Mares Merged bug fixes from Debian patches: 1309f701ff47SMartin Mares 1310f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 1311f701ff47SMartin Mares 1312f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 1313f701ff47SMartin Mares 13142240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 13152240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 1316f701ff47SMartin Mares multiple functions. 13172240db8cSMartin Mares 13182240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 13192240db8cSMartin Mares 132045902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 132145902995SMartin Mares for the patches: 132245902995SMartin Mares 132345902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 132445902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 132545902995SMartin Mares to __FreeBSD_version. 132645902995SMartin Mares 132745902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 132845902995SMartin Mares 13298fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 13308fc75dbcSMartin Mares and cleaned up: 13318fc75dbcSMartin Mares 13328fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 13338fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 13348fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 13358fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 13368fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 13378fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 13388fc75dbcSMartin Mares 13399739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 13409739916eSMartin Mares 13419739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 13429739916eSMartin Mares 13439739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 13449739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 13459739916eSMartin Mares use them in all cases. 13469739916eSMartin Mares 13479739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 13489739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 13499739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 13509739916eSMartin Mares directly in pci.h. 13519739916eSMartin Mares 13529739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 13539739916eSMartin Mares 135480459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 135580459c65SMartin Mares 135680459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 135780459c65SMartin Mares 135880459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 135980459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 136080459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 136180459c65SMartin Mares u8 to u32. 136280459c65SMartin Mares 1363a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 1364a85769a8SMartin Mares 13657dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 13667dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 13677dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 13687dacd9c8SMartin Mares 13697dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 13707dacd9c8SMartin Mares at all places. 13717dacd9c8SMartin Mares 13724063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 13734063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 13744063c31cSMartin Mares 13753fe8a38dSMartin Mares * setpci.c (main): Better error messages. 13763fe8a38dSMartin Mares 13775f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 13785f5b1a7bSMartin Mares 13795f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 13805f5b1a7bSMartin Mares Document the new behaviour. 1381b251f40bSMartin Mares 138291e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 138391e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 138491e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 138591e37a49SMartin Mares 13864afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 13874afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 13884afd29d3SMartin Mares a different fix. 13894afd29d3SMartin Mares 1390b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 1391b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 1392b0f1a03bSMartin Mares 1393b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 1394b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 1395b7fd8e19SMartin Mares 139605bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 139705bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 139805bb10a2SMartin Mares 1399a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 1400a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 1401a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 1402a832f6f1SMartin Mares for reporting this problem. 1403a832f6f1SMartin Mares 1404a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 1405a85769a8SMartin Mares 1406a85769a8SMartin Mares * Makefile: Added some more warnings. 1407a85769a8SMartin Mares 1408b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 1409b7351143SMartin Mares 1410b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 1411b7351143SMartin Mares 1412b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 1413b7351143SMartin Mares 14142a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 14152a5d5cf9SMartin Mares 14162a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 14172a5d5cf9SMartin Mares 1418d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 1419d772ef15SMartin Mares 14201b95f396SMartin Mares * Released as 2.1.11. 14211b95f396SMartin Mares 1422c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 1423c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 1424c83293ebSMartin Mares scattered between the installation rules. The default installation 1425c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 1426c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 1427c83293ebSMartin Mares installations to interfere with the default ones. 1428c83293ebSMartin Mares 1429c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 1430c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 1431c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 1432c83293ebSMartin Mares has passed since the last version which used it). 1433c83293ebSMartin Mares 1434e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 1435e2875dcdSMartin Mares 14361b95f396SMartin Mares * Added the update-ids utility. 14370138a2a7SMartin Mares 1438d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 1439d772ef15SMartin Mares probably never be needed. 1440d772ef15SMartin Mares 1441eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 1442eb620239SMartin Mares 1443130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 1444130090bdSMartin Mares 1445eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 1446eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 1447eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 1448eb620239SMartin Mares 1449848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 1450848b4347SMartin Mares 1451579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 1452579b19ffSMartin Mares 1453579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 1454579b19ffSMartin Mares there is no reason to prefer the kernel version. 1455579b19ffSMartin Mares 1456579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 1457579b19ffSMartin Mares 1458848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 1459848b4347SMartin Mares <[email protected]>. 1460848b4347SMartin Mares 1461f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 1462f0952474SMartin Mares 1463f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 1464f0952474SMartin Mares 1465d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 1466d2f666f1SMartin Mares 14679bd44bb0SMartin Mares * Released as 2.1.10. 14689bd44bb0SMartin Mares 1469a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 1470a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 1471a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 1472a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 1473a33d0eb7SMartin Mares pciids.sf.net. 1474a33d0eb7SMartin Mares 1475a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 1476a33d0eb7SMartin Mares 1477a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 1478a33d0eb7SMartin Mares 1479a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 1480a33d0eb7SMartin Mares not in the tarball). 1481a33d0eb7SMartin Mares 1482d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 1483d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 1484d2f666f1SMartin Mares a comment only at the start of the line. 1485d2f666f1SMartin Mares 1486ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 1487ee551b73SMartin Mares 148807159913SMartin Mares * README: Rewritten. 148907159913SMartin Mares 1490ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 1491ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 1492ee551b73SMartin Mares Jean Delvare <[email protected]>. 1493ee551b73SMartin Mares 1494bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 1495bc7b1d62SMartin Mares 14965f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 14975f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 14985f5e6f64SMartin Mares 14995f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 15005f5e6f64SMartin Mares 15015f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 15025f5e6f64SMartin Mares 1503a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 1504a1052f16SMartin Mares 1505bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 1506bc7b1d62SMartin Mares function 7. 1507bc7b1d62SMartin Mares 1508bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 1509bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 1510bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 1511bc7b1d62SMartin Mares 1512f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 1513f793990cSMartin Mares 1514ee551b73SMartin Mares * Released as 2.1.9. 1515ee551b73SMartin Mares 1516f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 1517f793990cSMartin Mares (http://pciids.sourceforge.net/). 1518f793990cSMartin Mares 15191d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 15201d174e56SMartin Mares 15211d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 15221d174e56SMartin Mares 152365b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 152465b4327eSMartin Mares 152565b4327eSMartin Mares * Makefile (uninstall): Fixed. 152665b4327eSMartin Mares 152765b4327eSMartin Mares * pci.ids: ID updates. 152865b4327eSMartin Mares 15294a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 15304a219d5fSMartin Mares 15314a219d5fSMartin Mares * Released as 2.1.8. 15324a219d5fSMartin Mares 15334a219d5fSMartin Mares * pci.ids: ID updates. 15344a219d5fSMartin Mares 15354a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 15364a219d5fSMartin Mares 15374a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 15384a219d5fSMartin Mares 15394a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 15404a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 15414a219d5fSMartin Mares bogus class info. 15424a219d5fSMartin Mares 154310c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 154410c90662SMartin Mares 154572b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 154672b9b690SMartin Mares 154710c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 154810c90662SMartin Mares 154910c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 155010c90662SMartin Mares 1551a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 1552a239ade6SMartin Mares 1553a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 1554a239ade6SMartin Mares 1555a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 1556a239ade6SMartin Mares 1557a239ade6SMartin Mares * pci.ids: Various ID updates. 1558a239ade6SMartin Mares 15592c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 15602c83b860SMartin Mares 15612c83b860SMartin Mares * Released as 2.1.7. 15622c83b860SMartin Mares 15632c83b860SMartin Mares * pciutils.spec: Added German description. 15642c83b860SMartin Mares 15652c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 15662c83b860SMartin Mares are the same as device ID and just output subsystem name according to 15672c83b860SMartin Mares device name. 15682c83b860SMartin Mares 15692c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 15702c83b860SMartin Mares 15712c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 15722c83b860SMartin Mares 15732c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 15742c83b860SMartin Mares 15752c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 15762c83b860SMartin Mares "echo -n" if the shell isn't bash. 15772c83b860SMartin Mares 15782c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 15792c83b860SMartin Mares (insert_dev): Avoid returning a void value. 15802c83b860SMartin Mares 15812c83b860SMartin Mares * Makefile: Choose which install utility to use according to 15822c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 15832c83b860SMartin Mares Part of the AIX port. 15842c83b860SMartin Mares 15852c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 15862c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 15872c83b860SMartin Mares 15882c83b860SMartin Mares * pci.ids: Few new ID's. 15892c83b860SMartin Mares 15902c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 15912c83b860SMartin Mares when not compiled by GCC. 15922c83b860SMartin Mares 1593c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 1594c1a828daSMartin Mares 1595c1a828daSMartin Mares * Released as 2.1.6. 1596c1a828daSMartin Mares 1597c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 1598c1a828daSMartin Mares Mayer <[email protected]> and synced the 1599c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 1600c1a828daSMartin Mares 1601e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 1602e91dd3abSMartin Mares 1603a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 1604a80b79a9SMartin Mares the library. 1605a80b79a9SMartin Mares 160689984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 160789984232SMartin Mares by Adam Sulmicki. 160889984232SMartin Mares 1609e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 1610e91dd3abSMartin Mares 161178d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 161278d9c5e2SMartin Mares 161378d9c5e2SMartin Mares * Released as 2.1.5. 161478d9c5e2SMartin Mares 161578d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 161678d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 161778d9c5e2SMartin Mares 161878d9c5e2SMartin Mares * pci.ids: New ID's. 161978d9c5e2SMartin Mares 162078d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 162178d9c5e2SMartin Mares no argument. 162278d9c5e2SMartin Mares 1623f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 1624f8141ae2SMartin Mares 1625f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 1626f8141ae2SMartin Mares glibc. 1627f8141ae2SMartin Mares 1628f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 1629f8141ae2SMartin Mares 1630f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 1631f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 1632f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 1633f8141ae2SMartin Mares 163459e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 163559e76e8bSMartin Mares 163659e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 163759e76e8bSMartin Mares 163859e76e8bSMartin Mares * Released as version 2.1.4. 163959e76e8bSMartin Mares 16402dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 16412dfd48cdSMartin Mares 16422715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 16432715403fSMartin Mares 164481077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 164581077814SMartin Mares 164681077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 164781077814SMartin Mares 164881077814SMartin Mares * pci.ids: New ID's. 164981077814SMartin Mares 16502dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 16512dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 16522dfd48cdSMartin Mares 16535a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 16545a258860SMartin Mares 16555a258860SMartin Mares * Released as version 2.1.3. 16565a258860SMartin Mares 16575a258860SMartin Mares * pci.ids: New ID's. 16585a258860SMartin Mares 16595a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 16605a258860SMartin Mares 16615a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 16625a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 16635a258860SMartin Mares 16640c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 16650c047bbeSMartin Mares 16660c047bbeSMartin Mares * Released as version 2.1.2. 16670c047bbeSMartin Mares 16680c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 16690c047bbeSMartin Mares 167033bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 167133bc28a5SMartin Mares 167239231205SMartin Mares * Released as version 2.1.1. 167339231205SMartin Mares 167433bc28a5SMartin Mares * pci.ids: Several new ID's. 167533bc28a5SMartin Mares 167633bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 167733bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 167833bc28a5SMartin Mares by Petr Soucek <[email protected]>. 167933bc28a5SMartin Mares 16808d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 16818d047897SMartin Mares 16828d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 16838d047897SMartin Mares ID list, show it. 16848d047897SMartin Mares 16856afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 16866afc6538SMartin Mares 16876afc6538SMartin Mares * Released as version 2.1. 16886afc6538SMartin Mares 16896afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 16906afc6538SMartin Mares lots of contributed entries. 16916afc6538SMartin Mares 16928f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 16938f756113SMartin Mares 16948f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 16958f756113SMartin Mares 1696d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 1697d4798a32SMartin Mares 1698d4798a32SMartin Mares * setpci.man: Better example. 1699d4798a32SMartin Mares 1700d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 1701d4798a32SMartin Mares 1702d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 1703d4798a32SMartin Mares 1704d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 1705d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 1706d4798a32SMartin Mares New ID's, as usually. 1707d4798a32SMartin Mares 1708e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 1709e306e911SMartin Mares 1710e306e911SMartin Mares * pci.ids: New ID's. As usually. 1711e306e911SMartin Mares 1712e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 1713e306e911SMartin Mares unless we're vvvery verbose. 1714e306e911SMartin Mares 1715e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 1716e306e911SMartin Mares 1717e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 1718e306e911SMartin Mares 1719e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 1720e64a576cSMartin Mares 1721e64a576cSMartin Mares * pci.ids: New ID's. Again. 1722e64a576cSMartin Mares 1723c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 1724c36c0862SMartin Mares 1725c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 1726c36c0862SMartin Mares due to bus-centric mode being enabled). 1727c36c0862SMartin Mares 17281ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 17291ca42433SMartin Mares 1730168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 1731168b4f46SMartin Mares 1732168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 1733168b4f46SMartin Mares 1734168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 1735168b4f46SMartin Mares 1736168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 1737168b4f46SMartin Mares 1738168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 1739168b4f46SMartin Mares incorrectly set to device ID. 1740168b4f46SMartin Mares 1741168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 1742168b4f46SMartin Mares 1743168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 1744168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 1745168b4f46SMartin Mares as GNU date does. Use sed instead. 1746168b4f46SMartin Mares (install): Use `-c' when calling install. 1747168b4f46SMartin Mares 1748168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 1749168b4f46SMartin Mares by Jari Kirma <[email protected]>. 1750168b4f46SMartin Mares 1751bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 1752bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 1753bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 1754bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 1755bc6346dfSMartin Mares with lseek/read/write. 1756bc6346dfSMartin Mares 17571ca42433SMartin Mares * pci.ids: Some more IDs. 17581ca42433SMartin Mares 17591ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 17601ca42433SMartin Mares 17611ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 17621ca42433SMartin Mares by Tim Waugh <[email protected]>. 17631ca42433SMartin Mares 1764e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 1765e95c8373SMartin Mares 1766e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 1767e95c8373SMartin Mares 1768e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 1769e95c8373SMartin Mares HAVE_LONG_ADDRESS. 1770e95c8373SMartin Mares 1771e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 1772e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 1773e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 1774e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 1775e95c8373SMartin Mares on Alpha. 1776e95c8373SMartin Mares 1777e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 1778e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 1779e95c8373SMartin Mares (show_caps): Seperated capability dumping, because it should 1780e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1781e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 1782e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 1783e95c8373SMartin Mares is already defined differently in htype2. 1784e95c8373SMartin Mares 1785e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1786e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1787e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1788e95c8373SMartin Mares 1789e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1790e95c8373SMartin Mares (required by the PCI 2.2 specs). 1791e95c8373SMartin Mares 1792e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1793e95c8373SMartin Mares 1794e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1795e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1796e95c8373SMartin Mares ROMs et cetera. 1797e95c8373SMartin Mares 1798e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1799e95c8373SMartin Mares of the structure. 1800e95c8373SMartin Mares 1801e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1802e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1803e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1804e95c8373SMartin Mares 180582ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 180682ce97c9SMartin Mares 180782ce97c9SMartin Mares * Makefile: 180882ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 180982ce97c9SMartin Mares * pci.ids: 181082ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 181182ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 181282ce97c9SMartin Mares to determine the revision from the device ID. 181382ce97c9SMartin Mares - Same for the Tseng ET4000. 181482ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 181582ce97c9SMartin Mares - Removed some unnecessary strings 181682ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 181782ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 181882ce97c9SMartin Mares - Lots of other new vendors & devices 181982ce97c9SMartin Mares - Other additional small cleanups. 182082ce97c9SMartin Mares 18217bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 18227bed2d83SMartin Mares 18237bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 18247bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 18257bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 18267bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 18277bed2d83SMartin Mares 18285ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 18295ba3a475SMartin Mares 18305ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 18315ba3a475SMartin Mares <[email protected]>. The command register was displayed 18325ba3a475SMartin Mares incorrectly. 18335ba3a475SMartin Mares 18345ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 18355ba3a475SMartin Mares 18365ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 18375ba3a475SMartin Mares numbers if not supplied by the libc. 18385ba3a475SMartin Mares 183955c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 184055c815b5SMartin Mares 184155c815b5SMartin Mares * Released the whole package as version 2.0. 184255c815b5SMartin Mares 184355c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 184455c815b5SMartin Mares 184555c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 184655c815b5SMartin Mares on the linux-pci list. 184755c815b5SMartin Mares 1848dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1849dec16943SMartin Mares 1850dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 1851dec16943SMartin Mares * lib/header.h: Ditto. 1852dec16943SMartin Mares 1853dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 1854dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 1855dec16943SMartin Mares 1856e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1857e33c9c7aSMartin Mares 1858e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1859e33c9c7aSMartin Mares <[email protected]>. 1860e33c9c7aSMartin Mares 1861e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1862e33c9c7aSMartin Mares 1863f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1864f3395cc5SMartin Mares 1865f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1866f3395cc5SMartin Mares as a multi-function device, because several single-function devices 1867f3395cc5SMartin Mares don't decode the function bits at all. 1868f3395cc5SMartin Mares 1869f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1870f3395cc5SMartin Mares 1871f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 1872f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 1873f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 1874f3395cc5SMartin Mares 1875f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1876f3395cc5SMartin Mares 1877f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1878f3395cc5SMartin Mares 1879f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1880f3395cc5SMartin Mares or 64-bit depending on CPU. 1881f3395cc5SMartin Mares 1882f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1883f3395cc5SMartin Mares according to bus address width. 1884f3395cc5SMartin Mares 18851c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 18861c31d620SMartin Mares 18871c31d620SMartin Mares * Released as 1.99.4. 18881c31d620SMartin Mares 18891c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 18901c31d620SMartin Mares registers and PCI Power Management registers (the latter 18911c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 18921c31d620SMartin Mares since I don't have the PCI Power Management document). 18931c31d620SMartin Mares 18941c31d620SMartin Mares * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 18951c31d620SMartin Mares by FLAG macro. 18961c31d620SMartin Mares 18971c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 18981c31d620SMartin Mares 18991812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 19001812a795SMartin Mares 19011812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 19021812a795SMartin Mares 19031812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 19041812a795SMartin Mares (show): Split to show() and show_device(). 19051812a795SMartin Mares 19061812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 19071812a795SMartin Mares set it to the real access method afterwards. 19081812a795SMartin Mares 19091812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 19101812a795SMartin Mares 19111812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 19121812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 19131812a795SMartin Mares 1914f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1915f6c86928SMartin Mares 1916f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 1917f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 1918f6c86928SMartin Mares 1919f6c86928SMartin Mares * Released as 1.99.3. 1920f6c86928SMartin Mares 1921b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1922b5137411SMartin Mares 1923d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 1924d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 1925d6b297d0SMartin Mares functions and device IDs), which is not going to happen 1926d6b297d0SMartin Mares before 2.3, we'll use our own definiton of the header. 1927d6b297d0SMartin Mares 1928b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 1929b5137411SMartin Mares 1930b5137411SMartin Mares * lspci.c (show_htype0): Display capability lists whereever 1931b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 1932b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 1933b5137411SMartin Mares portion of the configuration space and are thus available 1934b5137411SMartin Mares only to root unless you read a dump. 1935b5137411SMartin Mares 1936b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 1937b5137411SMartin Mares 1938b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 1939b5137411SMartin Mares 1940b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 1941b5137411SMartin Mares 194281ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 194381ce358dSMartin Mares 194481ce358dSMartin Mares * pci.ids: Added few devices. 194581ce358dSMartin Mares 1946727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1947727ce158SMartin Mares 1948727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 1949727ce158SMartin Mares to the configure script and also substituted to man pages. 1950727ce158SMartin Mares 1951727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1952727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 1953727ce158SMartin Mares 1954727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1955727ce158SMartin Mares 1956727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 1957727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 1958727ce158SMartin Mares 1959727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1960727ce158SMartin Mares whenever available. 1961727ce158SMartin Mares 1962727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 1963727ce158SMartin Mares read/write and real errors. 1964727ce158SMartin Mares 1965727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1966727ce158SMartin Mares libpci respects buscentric mode automatically. 1967727ce158SMartin Mares 1968727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1969727ce158SMartin Mares bytes of header (the whole standard part). 1970727ce158SMartin Mares 1971727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 1972727ce158SMartin Mares PCI access debugging option here. 1973727ce158SMartin Mares 1974727ce158SMartin Mares * Released as 1.99.2. 1975727ce158SMartin Mares 1976727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1977727ce158SMartin Mares 1978727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 1979727ce158SMartin Mares 1980727ce158SMartin Mares * Removed few unused variables. 1981727ce158SMartin Mares 1982727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1983727ce158SMartin Mares 1984727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 1985727ce158SMartin Mares here. This includes parsing of libpci-related options. 1986727ce158SMartin Mares 1987727ce158SMartin Mares * More library tweaks. 1988727ce158SMartin Mares 1989727ce158SMartin Mares * filter.c, names.c: Moved to library. 1990727ce158SMartin Mares 1991727ce158SMartin Mares * setpci: Rewritten to use the library. 1992727ce158SMartin Mares 1993727ce158SMartin Mares * Released as 1.99.1. 1994727ce158SMartin Mares 1995727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 1996727ce158SMartin Mares 1997727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 1998727ce158SMartin Mares bytes of config space to get full standard header. 1999727ce158SMartin Mares 2000727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 2001727ce158SMartin Mares 2002727ce158SMartin Mares * Started the "New Generation" branch and introduced the 2003727ce158SMartin Mares PCI library. 2004727ce158SMartin Mares 2005727ce158SMartin Mares * lspci: Rewritten to use the library. 2006727ce158SMartin Mares 20076ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 20086ece6bc6SMartin Mares 20096ece6bc6SMartin Mares * Released as version 1.10. 20106ece6bc6SMartin Mares 20116ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 20126ece6bc6SMartin Mares 20136ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 20146ece6bc6SMartin Mares Dag Wieers <[email protected]>. 20156ece6bc6SMartin Mares 20161212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 20171212dd6dSMartin Mares 20181212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 20191212dd6dSMartin Mares 2020d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 2021d38471fdSMartin Mares 2022d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 2023d38471fdSMartin Mares 2024d38471fdSMartin Mares * Released as version 1.09. 2025d38471fdSMartin Mares 2026371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 2027371f605bSMartin Mares 2028371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 2029371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 2030371f605bSMartin Mares 203110be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 203210be47abSMartin Mares 203310be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 203410be47abSMartin Mares 2035472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 2036472bd340SMartin Mares 2037472bd340SMartin Mares * Released as version 1.08. 2038472bd340SMartin Mares 2039472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 2040472bd340SMartin Mares 2041472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 2042472bd340SMartin Mares 2043472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 2044472bd340SMartin Mares it's impossible to crash the machine by single typo. 2045472bd340SMartin Mares 2046472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 2047472bd340SMartin Mares 2048072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 2049072c77e5SMartin Mares 2050072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 2051072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 2052072c77e5SMartin Mares for an idea. 2053072c77e5SMartin Mares 2054b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 2055b7554856SMartin Mares 2056b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 2057b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 2058b7554856SMartin Mares 2059ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 2060ce503b7fSMartin Mares 2061ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 2062ce503b7fSMartin Mares (show_machine): Print subsystem ID. 2063ce503b7fSMartin Mares 2064ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 2065ce503b7fSMartin Mares 2066ce503b7fSMartin Mares * Released as version 1.07. 2067ce503b7fSMartin Mares 206896e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 206996e4f295SMartin Mares 207096e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 207196e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 207296e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 207396e4f295SMartin Mares 207496e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 207596e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 207696e4f295SMartin Mares full description of all header fields supported by the chip. 207796e4f295SMartin Mares 20786ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 20796ae3650aSMartin Mares 2080304f9a0bSMartin Mares * Released as 1.06. 2081304f9a0bSMartin Mares 20826ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 20836ae3650aSMartin Mares 20846ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 20856ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 20866ae3650aSMartin Mares kernels). Ugly. 20876ae3650aSMartin Mares 20886ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 20896ae3650aSMartin Mares 20904b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 20914b88a6b8SMartin Mares 20924b88a6b8SMartin Mares * Released as 1.05. 20934b88a6b8SMartin Mares 20944b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 20954b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 20964b88a6b8SMartin Mares 20974b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 20984b88a6b8SMartin Mares 20994b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 21004b88a6b8SMartin Mares <[email protected]> for reporting this. 21014b88a6b8SMartin Mares 21024b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 21034b88a6b8SMartin Mares 21044b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 21054b88a6b8SMartin Mares 21064b88a6b8SMartin Mares * Released as 1.04. 21074b88a6b8SMartin Mares 21084b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 21094b88a6b8SMartin Mares 21104b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 21114b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 21124b88a6b8SMartin Mares for bug report. 21134b88a6b8SMartin Mares 21149b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 21159b306998SMartin Mares 21169b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 21179b306998SMartin Mares 2118b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 2119b372672fSMartin Mares 2120b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 2121b372672fSMartin Mares 2122b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 2123b2c9b373SMartin Mares 2124b372672fSMartin Mares * Released as 1.03. 2125b372672fSMartin Mares 2126b2c9b373SMartin Mares * setpci.8: Written. 2127b2c9b373SMartin Mares 2128b2c9b373SMartin Mares * setpci.c: Finished. 2129b2c9b373SMartin Mares 2130b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 2131b2c9b373SMartin Mares and print it if not in buscentric mode. 2132b2c9b373SMartin Mares 2133e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 2134e4842ff3SMartin Mares 2135e4842ff3SMartin Mares * setpci.c: Added. 2136e4842ff3SMartin Mares 2137e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 2138e4842ff3SMartin Mares 2139e4842ff3SMartin Mares * lspci.8: Updated the documentation. 2140e4842ff3SMartin Mares 2141e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 2142e4842ff3SMartin Mares 2143e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 2144e4842ff3SMartin Mares 2145008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 2146008407bdSMartin Mares 2147008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 2148008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 2149008407bdSMartin Mares 21500a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 21510a33d0ecSMartin Mares 21520a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 21530a33d0ecSMartin Mares dump. 21540a33d0ecSMartin Mares 21550a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 21560a33d0ecSMartin Mares 21570a33d0ecSMartin Mares * Released as version 1.02. 21580a33d0ecSMartin Mares 21590a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 21600a33d0ecSMartin Mares 21610a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 21620a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 21630a33d0ecSMartin Mares 2164fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 2165fb38eee8SMartin Mares 2166fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 2167fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 2168fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 2169fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 2170fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 2171fb38eee8SMartin Mares 2172fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 2173fb38eee8SMartin Mares 21742f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 21752f48f637SMartin Mares 21762f48f637SMartin Mares * README: Updated. 21772f48f637SMartin Mares 21782f48f637SMartin Mares * lspci.8: Created a man page. 21792f48f637SMartin Mares 21802f48f637SMartin Mares * Releasing as version 1.0. 21812f48f637SMartin Mares 21822f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 21832f48f637SMartin Mares 21842f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 21852f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 21862f48f637SMartin Mares on sparc64. 21872f48f637SMartin Mares 21882f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 21892f48f637SMartin Mares (show_htype2): Stub routine. 21902f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 21912f48f637SMartin Mares upper part of the PCI config space. 2192