1*4c93c5d3SMartin Mares2024-02-17 Martin Mares <[email protected]> 2*4c93c5d3SMartin Mares 3*4c93c5d3SMartin Mares * Will be released as 3.11.0. 4*4c93c5d3SMartin Mares 5*4c93c5d3SMartin Mares * All source files now have SPDX license identifiers. 6*4c93c5d3SMartin Mares 721407521SMartin Mares2023-05-01 Martin Mares <[email protected]> 821407521SMartin Mares 921407521SMartin Mares * Released as 3.10.0. 1021407521SMartin Mares 1121407521SMartin Mares * Fixed bug in definition of versioned symbol aliases 1221407521SMartin Mares in shared libpci, which made compiling with link-time 1321407521SMartin Mares optimization fail. 1421407521SMartin Mares 1521407521SMartin Mares * Filters now accept "0x..." syntax for backward compatibility. 1621407521SMartin Mares 1721407521SMartin Mares * Windows: The cfgmgr32 back-end which provides the list of devices 1821407521SMartin Mares can be combined with another back-end which provides access 1921407521SMartin Mares to configuration space. 2021407521SMartin Mares 2121407521SMartin Mares * ECAM (Enhanced Configuration Access Mechanism), which is defined 2221407521SMartin Mares by the PCIe standard, is now supported. It requires root privileges, 2321407521SMartin Mares access to physical memory, and also manual configuration on some 2421407521SMartin Mares systems. 2521407521SMartin Mares 2621407521SMartin Mares * lspci: Tree view now works on multi-domain systems. It now respects 2721407521SMartin Mares filters properly. 2821407521SMartin Mares 2921407521SMartin Mares * Last but not least, pci.ids were updated to the current snapshot 3021407521SMartin Mares of the database. This includes overall cleanup of entries with 3121407521SMartin Mares non-ASCII characters in their names -- such characters are allowed, 3221407521SMartin Mares but only if they convey interesting information (e.g., umlauts 3321407521SMartin Mares in German company names, but not the "registered trade mark" sign). 3421407521SMartin Mares 355abf1911SMartin Mares2022-11-20 Martin Mares <[email protected]> 36b35db44cSMartin Mares 375abf1911SMartin Mares * Released as 3.9.0. 38b35db44cSMartin Mares 39b35db44cSMartin Mares * We decode Compute Express Link (CXL) capabilities. 40b35db44cSMartin Mares 41b35db44cSMartin Mares * The tree mode of lspci is now compatible with filtering options. 42b35db44cSMartin Mares 43b35db44cSMartin Mares * When setpci is used with a named register, it checks whether 44b35db44cSMartin Mares the register is present in the particular header type. 45b35db44cSMartin Mares 46b35db44cSMartin Mares * Linux: The intel-conf[12] back-ends prefer to use ioperm() instead 47b35db44cSMartin Mares of iopl() to gain access to I/O ports. 48b35db44cSMartin Mares 49b35db44cSMartin Mares * Windows: We have two new back-ends thanks to Pali Rohár. 50b35db44cSMartin Mares One uses the NT SysDbg interface, the other uses kldbgdrv.sys 51b35db44cSMartin Mares (which is a part of the Microsoft WinDbg tool). 52b35db44cSMartin Mares 53b35db44cSMartin Mares * Windows: We support building libpci as a DLL. Also, Windows 54b35db44cSMartin Mares binaries now include meta-data with version. 55b35db44cSMartin Mares 56b35db44cSMartin Mares * Hurd: The Hurd back-end works again. 57b35db44cSMartin Mares 585abf1911SMartin Mares * mmio-conf1(-ext): Added a new back-end implementing the intel-conf1 59b35db44cSMartin Mares interface over MMIO. This is useful on some ARM machines, but it 60b35db44cSMartin Mares requires manual configuration of the MMIO addresses. 61b35db44cSMartin Mares 625abf1911SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 635abf1911SMartin Mares 64d224993dSMartin Mares2022-04-18 Martin Mares <[email protected]> 6521c4801aSMartin Mares 6621c4801aSMartin Mares * Released as 3.8.0. 6721c4801aSMartin Mares 6821c4801aSMartin Mares * Filters can now match devices based on partially specified 6921c4801aSMartin Mares class code and also on the programming interface. 7021c4801aSMartin Mares 7121c4801aSMartin Mares * Reporting of link speeds, power limits, and virtual function tags 7221c4801aSMartin Mares has been updated to the current PCIe specification. 7321c4801aSMartin Mares 7421c4801aSMartin Mares * We decode the Data Object Exchange capability. 7521c4801aSMartin Mares 7621c4801aSMartin Mares * Bus mapping mode works in non-zero domains. 7721c4801aSMartin Mares 7821c4801aSMartin Mares * pci_fill_info() can fetch more fields: bridge bases, programming 7921c4801aSMartin Mares interface, revision, subsystem vendor and device ID, OS driver, 8021c4801aSMartin Mares and also parent bridge. Internally, the implementation was rewritten, 8121c4801aSMartin Mares significantly reducing the number of corner cases to be handled. 8221c4801aSMartin Mares 8321c4801aSMartin Mares * The Windows port was revived and greatly improved by Pali Rohár. 8421c4801aSMartin Mares It requires less magic to compile. More importantly, it runs on both 8521c4801aSMartin Mares old and recent Windows systems (see README.Windows for details). 8621c4801aSMartin Mares 8721c4801aSMartin Mares * Added a new Windows back-end using the cfgmgr32 interface. 8821c4801aSMartin Mares It does not provide direct access to the configuration space, 8921c4801aSMartin Mares but basic information about the device is reported via pci_fill_info(). 9021c4801aSMartin Mares For back-ends of this type, we now provide an emulated read-only 9121c4801aSMartin Mares config space. 9221c4801aSMartin Mares 9321c4801aSMartin Mares * If the configuration space is not readable for some reason 9421c4801aSMartin Mares (e.g., the cfgmgr32 back-end, but also badly implemented sleep mode 9521c4801aSMartin Mares of some devices), lspci prints only information provided by the OS. 9621c4801aSMartin Mares 9721c4801aSMartin Mares * The Hurd back-end was greatly improved thanks to Joan Lledó. 9821c4801aSMartin Mares 9921c4801aSMartin Mares * Various minor bug fixes and improvements. 10021c4801aSMartin Mares 10121c4801aSMartin Mares * We officially require a working C99 compiler. Sorry, MSVC. 10221c4801aSMartin Mares 10321c4801aSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 10421c4801aSMartin Mares 105864aecdeSMartin Mares2020-05-31 Martin Mares <[email protected]> 106864aecdeSMartin Mares 107864aecdeSMartin Mares * Released as 3.7.0. 108864aecdeSMartin Mares 109864aecdeSMartin Mares * Added or improved the following capabilities: Designated Vendor-Specific, 110864aecdeSMartin Mares Compute eXpress Link, Resizable BARs, VF Resizable BARs, Link 111864aecdeSMartin Mares Capabilities 2, Link Status 2. 112864aecdeSMartin Mares 113864aecdeSMartin Mares * On Linux, lspci can show IOMMU groups. 114864aecdeSMartin Mares 115864aecdeSMartin Mares * setpci can be asked to skip bus scan and operate on a device 116864aecdeSMartin Mares completely specified by its domain/bus/dev/func address. This 117864aecdeSMartin Mares involved major internal cleanup. 118864aecdeSMartin Mares 119864aecdeSMartin Mares * The above feature of setpci uses the pci_get_dev() function, 120864aecdeSMartin Mares which obtains a struct pci_dev without doing a bus scan. This was 121864aecdeSMartin Mares always possible, but apparently little used, because back-ends 122864aecdeSMartin Mares frequently choked when operating on such devices. Fixed a lot 123864aecdeSMartin Mares of minor bugs related to this. 124864aecdeSMartin Mares 125864aecdeSMartin Mares * Also, back-ends which do not support domains now correctly fail when 126864aecdeSMartin Mares trying to access devices outside domain 0. 127864aecdeSMartin Mares 128864aecdeSMartin Mares * Semantics of pci_fill_info() and pci_dev->known_fields was underspecified, 129864aecdeSMartin Mares which lead to inconsistencies between back-ends. Improved documentation 130864aecdeSMartin Mares to give a more precise definition and updated all back-ends to conform 131864aecdeSMartin Mares to it. Most importantly, pci_dev->known_fields shows all fields requested 132864aecdeSMartin Mares over the lifetime of the pci_dev, but never those which are not supported 133864aecdeSMartin Mares by the back-end. 134864aecdeSMartin Mares 135864aecdeSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 136864aecdeSMartin Mares 13761ecc14aSMartin Mares2020-01-25 Martin Mares <[email protected]> 13861ecc14aSMartin Mares 13961ecc14aSMartin Mares * Released as 3.6.4. 14061ecc14aSMartin Mares 14161ecc14aSMartin Mares * A new back-end for the GNU Hurd was contributed by Joan Lledó. 14261ecc14aSMartin Mares 14361ecc14aSMartin Mares * When printing VPD item identifiers, non-ASCII characters are escaped. 14461ecc14aSMartin Mares 145154abc91SMartin Mares2020-01-22 Martin Mares <[email protected]> 146154abc91SMartin Mares 147154abc91SMartin Mares * Released as 3.6.3. 148154abc91SMartin Mares 149154abc91SMartin Mares * `lspci -t' (tree mode) can be combined with `-s' to show a sub-tree. 150154abc91SMartin Mares We also fixed potential buffer overflows in the tree dumper. 151154abc91SMartin Mares 152154abc91SMartin Mares * Cleaned messy code for dumping of I/O, memory, and ROM regions. 153154abc91SMartin Mares This helped fixing a bug, which caused some 64-bit regions to be 154154abc91SMartin Mares reported as virtual. All flags are now printed after the address 155154abc91SMartin Mares (previously, "[virtual]" and "[enhanced]" were before it for no good 156154abc91SMartin Mares reason). 157154abc91SMartin Mares 158154abc91SMartin Mares * Added pci_find_cap_nr() to the library, which handles capabilities 159154abc91SMartin Mares which occur multiple times in a single device. 160154abc91SMartin Mares 161154abc91SMartin Mares * Minor improvements in printing of PCIe capabilities. 162154abc91SMartin Mares 163154abc91SMartin Mares * We now decode the Multicast and Secondary PCI Express extended 164154abc91SMartin Mares capabilities. 165154abc91SMartin Mares 166154abc91SMartin Mares * The list of capability names available to setpci was updated. 167154abc91SMartin Mares 168154abc91SMartin Mares * Minor bugs were fixed in FreeBSD and Solaris ports. 169154abc91SMartin Mares 170154abc91SMartin Mares * We now prefer HTTPS URLs in all documentation 171154abc91SMartin Mares 172154abc91SMartin Mares * The pci.ids file has a man page. 173154abc91SMartin Mares 174154abc91SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 175154abc91SMartin Mares 176e3832c8fSMartin Mares2018-08-12 Martin Mares <[email protected]> 177e3832c8fSMartin Mares 178e3832c8fSMartin Mares * Released as 3.6.2. 179e3832c8fSMartin Mares 180e3832c8fSMartin Mares * Added "-P" and "-PP" switches to lspci, which display the path 181e3832c8fSMartin Mares through bridges to each device. 182e3832c8fSMartin Mares 183e3832c8fSMartin Mares * Fixed a couple of bugs in computation of bus topology. It was 184e3832c8fSMartin Mares previously used only for the tree display, but we re-use it for 185e3832c8fSMartin Mares computing the paths. 186e3832c8fSMartin Mares 187e3832c8fSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 188e3832c8fSMartin Mares 1892b1451ebSMartin Mares2018-07-12 Martin Mares <[email protected]> 1902b1451ebSMartin Mares 1912b1451ebSMartin Mares * Released as 3.6.1. 1922b1451ebSMartin Mares 1932b1451ebSMartin Mares * Fixed compilation issues on Linux systems with MUSL libc. 1942b1451ebSMartin Mares 195b3fb64ceSMartin Mares2018-06-30 Martin Mares <[email protected]> 196b3fb64ceSMartin Mares 197b3fb64ceSMartin Mares * Released as 3.6.0. 198b3fb64ceSMartin Mares 199b3fb64ceSMartin Mares * BARs reported by the OS, but not set on the device itself are 200b3fb64ceSMartin Mares reliably marked with "[virtual]". 201b3fb64ceSMartin Mares 202b3fb64ceSMartin Mares * Library: Introduced a generic mechanism of string properties. This 203b3fb64ceSMartin Mares avoids lots of special cases and makes ABI compatibility easier. 204b3fb64ceSMartin Mares 205b3fb64ceSMartin Mares * On Linux systems with OpenFirmware, report corresponding device tree nodes 206b3fb64ceSMartin Mares as device properties. 207b3fb64ceSMartin Mares 208b3fb64ceSMartin Mares * VPD decoder knows several non-standard extensions. 209b3fb64ceSMartin Mares 210b3fb64ceSMartin Mares * When PCIe link speed is less than the maximum supported by the 211b3fb64ceSMartin Mares device, it is explicitly marked as "downgraded". 212b3fb64ceSMartin Mares 213b3fb64ceSMartin Mares * Several new capabilities are not decoded yet, but at least their 214b3fb64ceSMartin Mares names are printed. 215b3fb64ceSMartin Mares 216b3fb64ceSMartin Mares * The Null capability is easily decoded. 217b3fb64ceSMartin Mares 218b3fb64ceSMartin Mares * Formatting of several capabilities was cleaned up. 219b3fb64ceSMartin Mares 220b3fb64ceSMartin Mares * The VGA16 bit in the bridge control register is now supported. 221b3fb64ceSMartin Mares 222b3fb64ceSMartin Mares * Added a port to SylixOS. Thanks to YuJian Gong for contribution. 223b3fb64ceSMartin Mares 224b3fb64ceSMartin Mares * Added a port to DOS/DJGPP. Thanks to Rudolf Marek for contribution. 225b3fb64ceSMartin Mares 226b3fb64ceSMartin Mares * The order in which back-ends are probed was decoupled from the 227b3fb64ceSMartin Mares internal back-end IDs. This helps, because new back-ends must have 228b3fb64ceSMartin Mares their ID allocated at the end to keep the ABI, but they might need 22961ecc14aSMartin Mares to be probed earlier. 230b3fb64ceSMartin Mares 231b3fb64ceSMartin Mares * The fbsd-device back-end should work again. 232b3fb64ceSMartin Mares 233b3fb64ceSMartin Mares * Fixed a couple of bugs. Most notably, DeviceName was not printed. 234b3fb64ceSMartin Mares 235b3fb64ceSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 236b3fb64ceSMartin Mares 237b72f3827SMartin Mares2017-11-17 Martin Mares <[email protected]> 238b72f3827SMartin Mares 239b72f3827SMartin Mares * Released as 3.5.6. 240b72f3827SMartin Mares 241b72f3827SMartin Mares * Improvements of the FreeBSD back-end: read-only access for non-root, 242b72f3827SMartin Mares support DragonFly BSD, support extended config space. 243b72f3827SMartin Mares 244b72f3827SMartin Mares * MN VPD keyword is decoded correctly. 245b72f3827SMartin Mares 246b72f3827SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 247b72f3827SMartin Mares 248dfd15a80SMartin Mares2017-07-05 Martin Mares <[email protected]> 249dfd15a80SMartin Mares 250dfd15a80SMartin Mares * Released as 3.5.5. 251dfd15a80SMartin Mares 252dfd15a80SMartin Mares * Better decoding of AER capability. 253dfd15a80SMartin Mares 254dfd15a80SMartin Mares * "Slot Implemented" flag is decoded for PCI/PCI-X to PCIe bridges. 255dfd15a80SMartin Mares 256dfd15a80SMartin Mares * Minor fixes of decoding other capabilities. 257dfd15a80SMartin Mares 258dfd15a80SMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 259dfd15a80SMartin Mares 2609f9e373bSMartin Mares2017-02-25 Martin Mares <[email protected]> 2619f9e373bSMartin Mares 2629f9e373bSMartin Mares * Released as 3.5.4. 2639f9e373bSMartin Mares 2649f9e373bSMartin Mares * Previous version broke compilation on systems, for which lib/types.h 2659f9e373bSMartin Mares did not provide a 64-bit integer type. It is provided everywhere now. 2669f9e373bSMartin Mares 2672ee7d45aSMartin Mares2017-02-15 Martin Mares <[email protected]> 2682ee7d45aSMartin Mares 2692ee7d45aSMartin Mares * Released as 3.5.3. 2702ee7d45aSMartin Mares 2712ee7d45aSMartin Mares * When lspci looks for Linux kernel modules, it uses the default 2722ee7d45aSMartin Mares path to module directory provided by libkmod. Previously, 2732ee7d45aSMartin Mares it tried to construct the path explicitly, which need not 2742ee7d45aSMartin Mares work on all systems. 2752ee7d45aSMartin Mares 2762ee7d45aSMartin Mares * Improved formatting of memory and I/O ranges behind a bridge. 2772ee7d45aSMartin Mares 2782ee7d45aSMartin Mares * PCIe link capabilities now display GEN4 speed (16GT/s). 2792ee7d45aSMartin Mares 2802ee7d45aSMartin Mares * PCIe device capabilities now show bits related to atomic operations. 2812ee7d45aSMartin Mares Thanks to Satanand Burla for a patch. 2822ee7d45aSMartin Mares 2832ee7d45aSMartin Mares * As usually, updated pci.ids to the current snapshot of the database. 2842ee7d45aSMartin Mares 2854a190235SMartin Mares2016-10-03 Martin Mares <[email protected]> 2864a190235SMartin Mares 2874a190235SMartin Mares * Released as 3.5.2. 2884a190235SMartin Mares 2894a190235SMartin Mares * The L1 power management capability is now decoded more 2904a190235SMartin Mares thoroughly. Thanks to Rajat Jain for the patch. 2914a190235SMartin Mares 2924a190235SMartin Mares * The table of configuration registers used by setpci 2934a190235SMartin Mares had a bug in the definition of SUBSYSTEM_VENDOR_ID. 2944a190235SMartin Mares 2952f8b8f9fSMartin Mares2016-05-22 Martin Mares <[email protected]> 2962f8b8f9fSMartin Mares 2972f8b8f9fSMartin Mares * Released as 3.5.1. 2982f8b8f9fSMartin Mares 2992f8b8f9fSMartin Mares * Fixed symbol versioning of pci_init(). 3002f8b8f9fSMartin Mares 301ab6ed5fdSMartin Mares2016-05-19 Martin Mares <[email protected]> 302ab6ed5fdSMartin Mares 303ab6ed5fdSMartin Mares * Released as 3.5.0. 304ab6ed5fdSMartin Mares 305ab6ed5fdSMartin Mares * New capabilities decoded: Downstream Port Containment, 306ab6ed5fdSMartin Mares Precision Time Measurement. Thanks to Keith Busch and 307ab6ed5fdSMartin Mares Jonathan Yong. 308ab6ed5fdSMartin Mares 309ab6ed5fdSMartin Mares * Domain numbers extended to 31 bits. This will be used by the 310ab6ed5fdSMartin Mares Linux kernel on some machines in near future. 311ab6ed5fdSMartin Mares 312ab6ed5fdSMartin Mares * Enhanced allocation regions are now decoded on Linux. 313ab6ed5fdSMartin Mares 314ab6ed5fdSMartin Mares * The NetBSD back-end supports PCIe extended configuration space. 315ab6ed5fdSMartin Mares 316ab6ed5fdSMartin Mares * Updated pci.ids to the current snapshot of the database. 317ab6ed5fdSMartin Mares 31837c9315cSMartin Mares2016-01-03 Martin Mares <[email protected]> 31937c9315cSMartin Mares 32037c9315cSMartin Mares * Released as 3.4.1. 32137c9315cSMartin Mares 32237c9315cSMartin Mares * New capabilities decoded: Process Address Space, Page Request 32337c9315cSMartin Mares Interface, Enhanced Allocation. Thanks to David Daney and 32437c9315cSMartin Mares David Woodhouse. 32537c9315cSMartin Mares 32637c9315cSMartin Mares * DevCap SlotPowerLimit is now decoded for all components with 32737c9315cSMartin Mares upstream ports. 32837c9315cSMartin Mares 32937c9315cSMartin Mares * Database mirror at SourceForge moved to GitHub. 33037c9315cSMartin Mares 33137c9315cSMartin Mares * Updated pci.ids to the current snapshot of the database. 33237c9315cSMartin Mares 333508c53ebSMartin Mares2015-09-14 Martin Mares <[email protected]> 334508c53ebSMartin Mares 335508c53ebSMartin Mares * Released as 3.4.0. 336508c53ebSMartin Mares 337508c53ebSMartin Mares * On Linux, we report NUMA nodes of devices. 338508c53ebSMartin Mares 339508c53ebSMartin Mares * The sysfs back-end does not die on read errors 340508c53ebSMartin Mares of optional attributes. Instead, a warning is produced. 341508c53ebSMartin Mares 342508c53ebSMartin Mares * Fixed several minor bugs. 343508c53ebSMartin Mares 344508c53ebSMartin Mares * Updated pci.ids to the current snapshot of the database. 345508c53ebSMartin Mares 346949f4469SMartin Mares2015-04-09 Martin Mares <[email protected]> 347949f4469SMartin Mares 348949f4469SMartin Mares * Released as 3.3.1. 349949f4469SMartin Mares 350949f4469SMartin Mares * Removed hacks for backward compatibility with Linux libc5, 351949f4469SMartin Mares which were breaking newer non-glibc Linux systems. Thanks 352949f4469SMartin Mares to Felix Janda. 353949f4469SMartin Mares 354949f4469SMartin Mares * Display VirtIO vendor-specific capability. Patch by Gerd 355949f4469SMartin Mares Hoffmann. 356949f4469SMartin Mares 357949f4469SMartin Mares * Fixed memory leak in name cache. 358949f4469SMartin Mares 3593bc4dd2cSMartin Mares * Updated pci.ids to the current snapshot of the database. 3603bc4dd2cSMartin Mares 361f14d4d87SMartin Mares2014-11-10 Martin Mares <[email protected]> 362f14d4d87SMartin Mares 3631481a1caSMartin Mares * Released as 3.3.0. 3641481a1caSMartin Mares (celebrating a one-year anniversary of the previous version :)) 36528617b24SMartin Mares 36628617b24SMartin Mares * Device names exported by BIOS are displayed on Linux. 36728617b24SMartin Mares 36828617b24SMartin Mares * On Linux systems, HWDB is used to look up device names 36928617b24SMartin Mares when our ID database gives no match. (More precisely, 37028617b24SMartin Mares HWDB is consulted after local pci.ids, but before using 37128617b24SMartin Mares network to query online pci.ids.) Thanks to Tom Gundersen 37228617b24SMartin Mares for the initial patch. 37328617b24SMartin Mares 37428617b24SMartin Mares * Added experimental back-end for OS X / Darwin. Thanks to 37528617b24SMartin Mares Richard Yao for providing it. 37628617b24SMartin Mares 377afb881ccSMartin Mares * Filters now support matching by device class. Original 378afb881ccSMartin Mares patch by Matthew Wilcox, wrappers for ABI compatibility 379afb881ccSMartin Mares by me. 380afb881ccSMartin Mares 38128617b24SMartin Mares * Interrupt Pin and Interrupt Line registers are displayed 38228617b24SMartin Mares for bridge devices, too. 38328617b24SMartin Mares 38428617b24SMartin Mares * Several portability bugs have been fixed. 38528617b24SMartin Mares 38628617b24SMartin Mares * Several typos have been fixed. Also, use of questionable 38728617b24SMartin Mares constructs in man pages has been reduced. 38828617b24SMartin Mares 38928617b24SMartin Mares * PCIe link capabilities now include the ASPMOptComp bit. 39028617b24SMartin Mares 39128617b24SMartin Mares * The "CRS Software Visibility" bit is now decoded properly. 39228617b24SMartin Mares 39328617b24SMartin Mares * Updated pci.ids to the current snapshot of the database. 39428617b24SMartin Mares 395dc49926aSMartin Mares2013-11-10 Martin Mares <[email protected]> 396dc49926aSMartin Mares 397dc49926aSMartin Mares * Released as 3.2.1. 398dc49926aSMartin Mares 399dc49926aSMartin Mares * CardBus bridge capabilities are displayed. 400dc49926aSMartin Mares 401dc49926aSMartin Mares * PCIe L1 PM substates are decoded. 402dc49926aSMartin Mares 403dc49926aSMartin Mares * Various bugs were fixed in decoding of PCIe capabilities. 404dc49926aSMartin Mares 405dc49926aSMartin Mares * The sysfs back-end does not spit out unnecessary warnings when 406dc49926aSMartin Mares empty slots report only a partial device address. This actually 407dc49926aSMartin Mares happens on IBM pSeries. 408dc49926aSMartin Mares 409dc49926aSMartin Mares * Updated pci.ids to the today's snapshot of the database. 410dc49926aSMartin Mares 4116a4909eeSMartin Mares2013-04-19 Martin Mares <[email protected]> 4126a4909eeSMartin Mares 4136a4909eeSMartin Mares * Released as 3.2.0. 4146a4909eeSMartin Mares 4156a4909eeSMartin Mares * On newer Linux systems, we use libkmod to look up kernel modules 41669a77b5cSMartin Mares (modules.pcimap no longer exists). To facilitate this, libpci 4176a4909eeSMartin Mares is able to look up module aliases in sysfs. 4186a4909eeSMartin Mares 4196a4909eeSMartin Mares * Various minor bug fixes. 4206a4909eeSMartin Mares 4216a4909eeSMartin Mares * Updated pci.ids to the today's snapshot of the database. 4226a4909eeSMartin Mares 42327c0f3acSMartin Mares2012-06-25 Martin Mares <[email protected]> 42427c0f3acSMartin Mares 42527c0f3acSMartin Mares * Released as 3.1.10. 42627c0f3acSMartin Mares 42727c0f3acSMartin Mares * Decoding of LTR/OBFF in PCIe capabilities. 42827c0f3acSMartin Mares 42927c0f3acSMartin Mares * Various minor bug fixes. 43027c0f3acSMartin Mares 43127c0f3acSMartin Mares * Updated pci.ids to the today's snapshot of the database. 43227c0f3acSMartin Mares 43368e5ff17SMartin Mares2012-01-14 Martin Mares <[email protected]> 43468e5ff17SMartin Mares 43568e5ff17SMartin Mares * Released as 3.1.9. 43668e5ff17SMartin Mares 43768e5ff17SMartin Mares * Updated README. 43868e5ff17SMartin Mares 4396a4909eeSMartin Mares * Wherever we mention the PCI ID database, we now refer to 44068e5ff17SMartin Mares http://pci-ids.ucw.cz/ and the sf.net site is mentioned only 44168e5ff17SMartin Mares as a mirror. This includes update-pciids. 44268e5ff17SMartin Mares 44368e5ff17SMartin Mares * Decode PCIe Gen 3 speeds and link status fields. 44468e5ff17SMartin Mares 44568e5ff17SMartin Mares * Various minor bug fixes. 44668e5ff17SMartin Mares 44768e5ff17SMartin Mares * Updated pci.ids to the today's snapshot of the database. 44868e5ff17SMartin Mares 449a70dab15SMartin Mares2011-10-02 Martin Mares <[email protected]> 450a70dab15SMartin Mares 451a70dab15SMartin Mares * Released as 3.1.8. 452a70dab15SMartin Mares 453a70dab15SMartin Mares * More capabilities: Transaction Processing Hints, Latency Tolerance 454a70dab15SMartin Mares Reporting. Thanks to Jesse Barnes. 455a70dab15SMartin Mares 456a70dab15SMartin Mares * Added BeOS and Haiku ports. Contributed by Francois Revol. 457a70dab15SMartin Mares 458a70dab15SMartin Mares * pciutils.pc now uses Libs.private properly. 459a70dab15SMartin Mares 460a70dab15SMartin Mares * When we format a name and it does not fit in the buffer, we truncate 461a70dab15SMartin Mares it instead of returning "buffer too small" instead. This works on all 462a70dab15SMartin Mares platforms with sane (i.e., C99-compatible) snprintf(). 463a70dab15SMartin Mares 464a70dab15SMartin Mares * Various minor bug fixes. 465a70dab15SMartin Mares 466a70dab15SMartin Mares * Updated pci.ids to the today's snapshot of the database. 467a70dab15SMartin Mares 4686bc2bc1cSMartin Mares2010-01-31 Martin Mares <[email protected]> 4696bc2bc1cSMartin Mares 4706bc2bc1cSMartin Mares * Released as 3.1.7. 4716bc2bc1cSMartin Mares 4726bc2bc1cSMartin Mares * Minor improvements and bug fixes in decoding of the Virtual Channel 4736bc2bc1cSMartin Mares capability. 4746bc2bc1cSMartin Mares 475e3a052daSMartin Mares2010-01-24 Martin Mares <[email protected]> 476e3a052daSMartin Mares 477e3a052daSMartin Mares * Released as 3.1.6. 478e3a052daSMartin Mares 479e3a052daSMartin Mares * More capabilities decoded: Virtual Channel (except arbitration 480e3a052daSMartin Mares tables), Root Complex Link, Vendor-Specific (header only), SATA HBA. 481e3a052daSMartin Mares 482e3a052daSMartin Mares * All extended capabilities have their version displayed (-vv or more). 483e3a052daSMartin Mares 4849978b6fdSMartin Mares2010-01-19 Martin Mares <[email protected]> 4859978b6fdSMartin Mares 4869978b6fdSMartin Mares * Released as 3.1.5. 4879978b6fdSMartin Mares 4889978b6fdSMartin Mares * Updated pci.ids to the today's snapshot of the database. 4899978b6fdSMartin Mares 4909978b6fdSMartin Mares * When scanning extended capabilities, properly mask the lowest 2 bits, 4919978b6fdSMartin Mares which are currently reserved. This avoids unaligned access errors on 4929978b6fdSMartin Mares broken hardware (see tests/broken-ecaps). 4939978b6fdSMartin Mares 4949978b6fdSMartin Mares * Large bar sizes are displayed in human-readable format (with units). 4959978b6fdSMartin Mares Thanks to Matthew Wilcox. 4969978b6fdSMartin Mares 4979978b6fdSMartin Mares * Physical slot information is displayed correctly for multi-function cards. 4989978b6fdSMartin Mares Fixed by Matthew Wilcox. 4999978b6fdSMartin Mares 5009978b6fdSMartin Mares * Fixed a couple of typos everywhere. 5019978b6fdSMartin Mares 5029978b6fdSMartin Mares * Library: Fixed bugs in freeing of capabilities. 5039978b6fdSMartin Mares 5049978b6fdSMartin Mares * Windows back-end compiles again. 5059978b6fdSMartin Mares 506c67775bcSMartin Mares2009-08-14 Martin Mares <[email protected]> 507c67775bcSMartin Mares 508ebb9bc54SMartin Mares * Released as 3.1.4. 509ebb9bc54SMartin Mares (sorry that I have missed 22/7 and released it later :-)) 510c67775bcSMartin Mares 511c67775bcSMartin Mares * Updated pci.ids to the today's snapshot of the database. 512c67775bcSMartin Mares 513c67775bcSMartin Mares * Fixed memory and file descriptor leak in the dump back-end. 514c67775bcSMartin Mares 515c67775bcSMartin Mares * The SR-IOV capability decoder now prints the VF BAR's. 516c67775bcSMartin Mares Patch by Chris Wright, cleaned up by me. 517c67775bcSMartin Mares 518c67775bcSMartin Mares * On request of certain company's lawyers, we now include a copy 519c67775bcSMartin Mares of the GPL with our package. It seems that the pciutils are getting 520c67775bcSMartin Mares mature if the most important bug of the month was this one ;-) 521c67775bcSMartin Mares 52210df48cbSMartin Mares2009-07-04 Martin Mares <[email protected]> 52310df48cbSMartin Mares 52410df48cbSMartin Mares * Released as 3.1.3. 52510df48cbSMartin Mares 52610df48cbSMartin Mares * Updated pci.ids to the current snapshot of the database. 52710df48cbSMartin Mares 52810df48cbSMartin Mares * The VPD parser now reports unknown and vendor-defined items 52910df48cbSMartin Mares properly. It also stops on any item in unknown format, avoiding long 53010df48cbSMartin Mares output on bogus VPD data. Thanks to Ben Hutchings and Matthew Wilcox. 53110df48cbSMartin Mares 53210df48cbSMartin Mares * The MSI-X table size now matches the spec. Thanks to Michael S. 53310df48cbSMartin Mares Tsirkin. 53410df48cbSMartin Mares 53510df48cbSMartin Mares * The Power Management capability now includes the soft reset bit. 53610df48cbSMartin Mares Thanks to Yu Zhao. 53710df48cbSMartin Mares 53810df48cbSMartin Mares * Decoding of the Advanced Features capability has been added. 53910df48cbSMartin Mares Thanks to Yu Zhao. 54010df48cbSMartin Mares 54110df48cbSMartin Mares * The whole package compiles on GNU/kFreeBSD again. 54210df48cbSMartin Mares 54310df48cbSMartin Mares The following patches have been contributed by Matthew Wilcox: 54410df48cbSMartin Mares 54510df48cbSMartin Mares * The procfs back-end is able to cope with /proc/bus/pci 54610df48cbSMartin Mares containing names with domains, which occur on sparc64 and 54710df48cbSMartin Mares possibly other architectures due to a kernel bug. 54810df48cbSMartin Mares 54910df48cbSMartin Mares * The sysfs back-end no longer complains when a slot address 55010df48cbSMartin Mares is missing, which happens with old versions of Linux fakephp. 55110df48cbSMartin Mares 55210df48cbSMartin Mares * The Device Serial Number capability is printed in the right 55310df48cbSMartin Mares byte order. 55410df48cbSMartin Mares 55510df48cbSMartin Mares * The MSI and MSI-X capabilities are printed in a prettier way. 55610df48cbSMartin Mares 55710df48cbSMartin Mares * The tree output mode (`lspci -t') shows domain numbers only 55810df48cbSMartin Mares at the root, which makes the output more compact. 55910df48cbSMartin Mares 56010df48cbSMartin Mares * Updated documentation on the bus mapping mode (`lspci -M'). 56110df48cbSMartin Mares 56234683007SMartin Mares2009-02-01 Martin Mares <[email protected]> 56334683007SMartin Mares 56434683007SMartin Mares * Released as 3.1.2. 56534683007SMartin Mares 56634683007SMartin Mares * Fixed another silly bug in the command-line parser of setpci. 56734683007SMartin Mares 568f6523e28SMartin Mares2009-01-30 Martin Mares <[email protected]> 569f6523e28SMartin Mares 570f6523e28SMartin Mares * Released as 3.1.1. 571f6523e28SMartin Mares 572f6523e28SMartin Mares * Updated pci.ids to the current snapshot of the database. 573f6523e28SMartin Mares 574f6523e28SMartin Mares * The configure script now sets LC_ALL to avoid being fooled by 575f6523e28SMartin Mares locale-dependent behavior of `tr'. 576f6523e28SMartin Mares 577f6523e28SMartin Mares * The command-line parser of setpci did sometimes segfault on invalid 578f6523e28SMartin Mares input. Thanks to Andreas Wiese for a fix. 579f6523e28SMartin Mares 580db557900SMartin Mares2009-01-18 Martin Mares <[email protected]> 581db557900SMartin Mares 582db557900SMartin Mares * Released as 3.1.0. 583db557900SMartin Mares 584af358b08SMartin Mares * Updated pci.ids to the current snapshot of the database. 585af358b08SMartin Mares 586db557900SMartin Mares * The Cygwin backend now works on Windows Vista. Thanks to Jonathan 587db557900SMartin Mares Kotta. 588db557900SMartin Mares 589db557900SMartin Mares * Fixed a bug in decoding of the SR-IOV capability. Patch by Yu Zhao. 590db557900SMartin Mares 591db557900SMartin Mares * Details of some PCIe capabilities are displayed only with -vv. 592db557900SMartin Mares 593db557900SMartin Mares * When a BAR is reported by the OS, but not by the device (i.e., 594db557900SMartin Mares it is marked as [virtual] in lspci), the [disabled] flag is 595db557900SMartin Mares suppressed, because it does not make sense in such cases. 596db557900SMartin Mares Patch by Yu Zhao. 597db557900SMartin Mares 5982b31207aSMartin Mares2008-12-13 Martin Mares <[email protected]> 5992b31207aSMartin Mares 6002b31207aSMartin Mares * The source code of lspci has been split to multiple files, hopefully 6012b31207aSMartin Mares making it easier to maintain. 6022b31207aSMartin Mares 6032b31207aSMartin Mares * The library and lspci now know about physical slot names. So far, 6042b31207aSMartin Mares they are provided by the sysfs back-end only. Thanks go to Alex Chiang. 6052b31207aSMartin Mares 6062b31207aSMartin Mares * When a device has the VPD (Vital Product Data) capability and the 6072b31207aSMartin Mares VPD data are supplied by the OS, they are decoded and printed in the 6082b31207aSMartin Mares verbose mode. This currently works only on Linux with the sysfs 6092b31207aSMartin Mares back-end. Thanks to Ben Hutchings of Solarflare for the patch. 6102b31207aSMartin Mares 6112b31207aSMartin Mares * `setpci --version' now works properly. 6122b31207aSMartin Mares 6134d4325f8SMartin Mares * `setpci --dumpregs' prints a table of all known names of 6142b31207aSMartin Mares registers and capabilities. This replaces the table of registers 6152b31207aSMartin Mares in the setpci man page. 6162b31207aSMartin Mares 6172b31207aSMartin Mares * The dry-run mode of setpci gives better feedback. 6182b31207aSMartin Mares 6192b31207aSMartin Mares * The setpci utility is now able to address registers stored in PCI 6202b31207aSMartin Mares capabilities (actually it allows a more general form of relative 6212b31207aSMartin Mares addressing). 6222b31207aSMartin Mares 6232b31207aSMartin Mares * The library has gained functions for working with PCI capabilities. 6242b31207aSMartin Mares 6252b31207aSMartin Mares * Address Translation Services capability is now decoded. Patch by 6262b31207aSMartin Mares Yu Zhao. 6272b31207aSMartin Mares 628b282435dSMartin Mares2008-11-09 Martin Mares <[email protected]> 629b282435dSMartin Mares 630b282435dSMartin Mares * Released as 3.0.3. 631b282435dSMartin Mares 632b282435dSMartin Mares * `lspci -k' now displays the subsystem ID, too. This makes `-k' 633b282435dSMartin Mares show everything needed to identify the device and the available 634b282435dSMartin Mares drivers, which was called for by many users. 635b282435dSMartin Mares 636b282435dSMartin Mares * Fixed spelling of MSI. Patch by Matthew Wilcox. 637b282435dSMartin Mares 638b282435dSMartin Mares * Better support for cross-compilation. Thanks to Alon Bar-Lev 639b282435dSMartin Mares for the patch. 640b282435dSMartin Mares 641b282435dSMartin Mares * Fixed printing of the AER capability. Patch by Max Asbock. 642b282435dSMartin Mares 643b282435dSMartin Mares * HT 1.02 capabilities are decoded as HT 1.03. Suggested by 644b282435dSMartin Mares Carl-Daniel Hailfinger. 645b282435dSMartin Mares 646b282435dSMartin Mares * Fixed Cygwin build. Thanks to Steve Elliott for reporting the bug. 647b282435dSMartin Mares 648b282435dSMartin Mares * Updated pci.ids to the current snapshot of the database. 649b282435dSMartin Mares 650daf2ef4eSMartin Mares2008-09-19 Martin Mares <[email protected]> 651daf2ef4eSMartin Mares 652daf2ef4eSMartin Mares * Released as 3.0.2. 653daf2ef4eSMartin Mares 654daf2ef4eSMartin Mares * Fixed a minor bug in the configure script, which caused warnings 655daf2ef4eSMartin Mares about redefinition of symbols during compilation. 656daf2ef4eSMartin Mares 65738254178SMartin Mares2008-09-11 Martin Mares <[email protected]> 65838254178SMartin Mares 65938254178SMartin Mares * Released as 3.0.1. 66038254178SMartin Mares 66138254178SMartin Mares * Updated pci.ids to the most recent snapshot. 66238254178SMartin Mares 66338254178SMartin Mares * Added a Cygwin port. Patch by Christopher Voltz, ported to the 66438254178SMartin Mares current tree by Martin Mares. 66538254178SMartin Mares 66638254178SMartin Mares * Worked around compatibility problems with various default settings 66738254178SMartin Mares of wget (we have to set --no-timestamping explicitly). Thanks to Ville 66838254178SMartin Mares Skytta for pointing that out. 66938254178SMartin Mares 67038254178SMartin Mares * Fixed printing of MSI capabilities. Thanks to Matthew Wilcox for 67138254178SMartin Mares a patch. 67238254178SMartin Mares 67338254178SMartin Mares * Added decoding of several PCI-X capabilities: device/link/slot 2, 67438254178SMartin Mares Advanced Error Reporting, Access Control Services, Alternative Routing-ID, 67538254178SMartin Mares Single Root I/O Virtualization. Thanks to Yu Zhao for patches. 67638254178SMartin Mares 67738254178SMartin Mares * Fixed bug in filters which caused them to refuse vendor/device ID 0xffff. 67838254178SMartin Mares 67938254178SMartin Mares * README: The linux-pci mailing list has moved to [email protected]. 68038254178SMartin Mares 68138254178SMartin Mares * Fixed several build problems: builds without PCI_USE_DNS on Linux 68238254178SMartin Mares and with PCI_USE_DNS on Solaris and *BSD. Static library mode also 68338254178SMartin Mares compiles again on old versions of GCC. 68438254178SMartin Mares 685cec9f7e7SMartin Mares2008-04-10 Martin Mares <[email protected]> 686cec9f7e7SMartin Mares 687cec9f7e7SMartin Mares * Released as 3.0.0. 688cec9f7e7SMartin Mares 689cec9f7e7SMartin Mares * Updated API and ABI version. 690cec9f7e7SMartin Mares 691cd2f6a34SMartin Mares2008-02-20 Martin Mares <[email protected]> 692cd2f6a34SMartin Mares 693cd2f6a34SMartin Mares * Released as 2.99.1-alpha2. 694cd2f6a34SMartin Mares 695cd2f6a34SMartin Mares * Changed the default domain for the DNS resolver. 696cd2f6a34SMartin Mares 697165a50cbSMartin Mares2008-02-18 Martin Mares <[email protected]> 698165a50cbSMartin Mares 699165a50cbSMartin Mares * Released as 2.99.1-alpha1. 700623234ecSMartin Mares 701a1fca487SMartin Mares * The makefile system has been reworked. All configuration settings 702a1fca487SMartin Mares are now passed to the configure script in environment variables, 703a1fca487SMartin Mares allowing for easy tweaking in the top-level Makefile. All control 704a1fca487SMartin Mares knobs are now described in the README. 705a1fca487SMartin Mares 706a1fca487SMartin Mares * The libpci can be built as a shared library with properly restricted 707a1fca487SMartin Mares symbol exports. Use `make SHARED=yes' to enable that or `make SHARED=local' 708a1fca487SMartin Mares for a local testing build (with hardwired paths to the library, so that 709a1fca487SMartin Mares it does not need installation). 710a1fca487SMartin Mares 711a1fca487SMartin Mares * The example program has been moved from lib/example.c to the top-level 712a1fca487SMartin Mares directory, because it should be built exactly as the other utilities 713a1fca487SMartin Mares are. It has been also improved slightly to educate better. 714a1fca487SMartin Mares 715623234ecSMartin Mares * The i386-ports method is enabled on Linux/x86_64 as well. 716623234ecSMartin Mares 717ae27e293SMartin Mares2008-02-13 Martin Mares <[email protected]> 718ae27e293SMartin Mares 719ae27e293SMartin Mares * Released as 2.2.10-net2. 720ae27e293SMartin Mares 721ae27e293SMartin Mares * Support for resolving of PCI ID's using DNS together with a local 722ae27e293SMartin Mares cache of resolved entries has been added. See the `-q' and `-Q' options 723ae27e293SMartin Mares of lspci. 724ae27e293SMartin Mares 725ae27e293SMartin Mares * The library now has a generic system of settable parameters, which 726ae27e293SMartin Mares also include settings of the DNS resolver and cache. An `-O' option 727ae27e293SMartin Mares has been added to lspci and setpci to allow setting of these options. 728ae27e293SMartin Mares 729ae27e293SMartin Mares * Configuration of the access methods are now specified by the new 730ae27e293SMartin Mares parameter system, replacing the pci_access->method_params array. 731ae27e293SMartin Mares 732ae27e293SMartin Mares * Access methods now also have sensible names and help texts and it 733ae27e293SMartin Mares is possible to look up method ID by a name. 734ae27e293SMartin Mares 735ae27e293SMartin Mares * An `-A' switch has been added to both lspci and setpci, allowing to 736ae27e293SMartin Mares select an arbitrary access method. The `-P' switch (configure proc 737ae27e293SMartin Mares backend) has been removed as it is no longer needed and I do not know 738ae27e293SMartin Mares any its user. 739ae27e293SMartin Mares 740ae27e293SMartin Mares * Several source files have been split for better maintainability 741ae27e293SMartin Mares (most notably the resolving of ID's). 742ae27e293SMartin Mares 743ae27e293SMartin Mares * Man pages and help texts have been updated. A new man page `pcilib(7)' 744ae27e293SMartin Mares has been added and description of library options has been moved there. 745ae27e293SMartin Mares 746ae27e293SMartin Mares * When an unknown device ID is encountered, we print `Device <id>' 747ae27e293SMartin Mares instead of `Unknown device <id>'. It uses less space and it also 748ae27e293SMartin Mares should reduce the number of inexperienced users complaining that 749ae27e293SMartin Mares the device is not supported by the OS. To lookup up OS drivers, 750ae27e293SMartin Mares use the `-k' option. 751ae27e293SMartin Mares 752ae27e293SMartin Mares * PCI_LIB_VERSION has been bumped to 0x020299. 753ae27e293SMartin Mares 754ae27e293SMartin Mares * Makefile: stripping of the binaries during installation can be 755ae27e293SMartin Mares overridden by the STRIP variable. 756ae27e293SMartin Mares 757ae27e293SMartin Mares * lib/types.h: We use the integer types from <stdint.h> if the 758ae27e293SMartin Mares compiler claims C99 support. 759ae27e293SMartin Mares 7600fc3bd18SMartin Mares2008-02-11 Martin Mares <[email protected]> 7610fc3bd18SMartin Mares 7622466b14bSMartin Mares * Released as 2.2.10. 7632466b14bSMartin Mares 7646add52f5SMartin Mares * lspci.c, setpci.c: Cleaned up the list of options. 7656add52f5SMartin Mares 7660fc3bd18SMartin Mares * lib/names.c: Fix displaying of errors reported by zlib. 7670fc3bd18SMartin Mares Previously, the buffer containing the error message had 7680fc3bd18SMartin Mares been deallocated by gzclose() before the message was printed. 7690fc3bd18SMartin Mares 770d26b5378SMartin Mares2008-01-07 Martin Mares <[email protected]> 771d26b5378SMartin Mares 772d26b5378SMartin Mares * update-pciids.sh: Added quiet mode (-q). Clean up uncompressed 773d26b5378SMartin Mares files left by previous versions of the pciutils. Patch by Mike 774d26b5378SMartin Mares Frysinger. 775d26b5378SMartin Mares 776d26b5378SMartin Mares * update-pciids.man: Mention the -q switch. 777d26b5378SMartin Mares 778dc01dd60SMartin Mares2007-11-29 Martin Mares <[email protected]> 779dc01dd60SMartin Mares 780dc01dd60SMartin Mares * lib/dump.c: Squashed compiler warnings about code with 781dc01dd60SMartin Mares no effect (there really were surplus *'s). 782dc01dd60SMartin Mares 78311339c0dSMartin Mares2007-11-06 Martin Mares <[email protected]> 78411339c0dSMartin Mares 78513463566SMartin Mares * Released as 2.2.9. 78613463566SMartin Mares 78711339c0dSMartin Mares * lspci.c: Added a new switch `-k' which requests printing 78811339c0dSMartin Mares of information on kernel drivers attached to each device 78911339c0dSMartin Mares and on kernel modules reporting the ability to handle the 79011339c0dSMartin Mares device. So far, this is supported only on Linux with the 79111339c0dSMartin Mares sysfs back-end, so it is implemented internally in the lspci 79211339c0dSMartin Mares instead of the libpci. Thanks to Anicka <[email protected]> 79311339c0dSMartin Mares for help. 79411339c0dSMartin Mares 7953de798bdSMartin Mares2007-10-19 Martin Mares <[email protected]> 7963de798bdSMartin Mares 7976cdb9d93SMartin Mares * Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS. 7986cdb9d93SMartin Mares Also added an explicit pattern rule for linking to make sure 7996cdb9d93SMartin Mares that LDLIBS is used on all platforms. Thanks to Dan Nicholson 8006cdb9d93SMartin Mares for the suggestion. 8016cdb9d93SMartin Mares 8026cdb9d93SMartin Mares2007-10-19 Martin Mares <[email protected]> 8036cdb9d93SMartin Mares 804a404b115SMartin Mares * Released as 2.2.8. 805a404b115SMartin Mares 8063de798bdSMartin Mares * pci.ids: Revised class codes to match Conventional PCI 3.0 specs. 8073de798bdSMartin Mares Added a couple of new ones, renumbered `ADMA continuous operation' 8083de798bdSMartin Mares prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention 8093de798bdSMartin Mares 0x40) and renumbered the satellite communication controllers. 8103de798bdSMartin Mares 8112d2c4810SMartin Mares * lib/header.h: Include `PCI hot-plug' and `Secure device' 812f7c76ec5SMartin Mares capabilities from PCI 3.0 specs. Also added `SATA HBA' and 813f7c76ec5SMartin Mares `Advanced features' caps from various ECN's. 8142d2c4810SMartin Mares 815fa2273caSMartin Mares * lspci.c: All known capabilities have at least their name displayed 816fa2273caSMartin Mares now. When we are unable to decode them completely, we signalize it 817fa2273caSMartin Mares with a `<?>' mark. 818fa2273caSMartin Mares 819fa2273caSMartin Mares * lspci.man: Document `<?>' and also mention that extended config 820fa2273caSMartin Mares space is currently available only with the linux_sysfs back-end. 821fa2273caSMartin Mares 82231c9bb28SMartin Mares * lspci.c: Decode the Debug port capability (per EHCI 0.96 spec). 82331c9bb28SMartin Mares 824a387042eSMartin Mares * lspci.c: Big code cleanup: re-arranged functions in the code, 825a387042eSMartin Mares renamed everything related to capabilities to cap_* and 826a387042eSMartin Mares all options except verbose to opt_*. 827a387042eSMartin Mares 8289c79fcc4SMartin Mares2007-10-14 Martin Mares <[email protected]> 8299c79fcc4SMartin Mares 8309c79fcc4SMartin Mares * lib/[fno]bsd-*: Removed extraneous braces. 8319c79fcc4SMartin Mares 832d5b4cd14SMartin Mares2007-10-12 Martin Mares <[email protected]> 833d5b4cd14SMartin Mares 834d5b4cd14SMartin Mares * Capability loop detection introduced 2.2.7 did not work 835d5b4cd14SMartin Mares properly with extended capabilities. Fixed. 836d5b4cd14SMartin Mares 837594de878SMartin Mares2007-10-05 Martin Mares <[email protected]> 838594de878SMartin Mares 8398a23eadcSMartin Mares * Released as 2.2.7. 8408a23eadcSMartin Mares 841594de878SMartin Mares * lspci.c (show_caps, show_ext_caps): Detect and report loops in 842594de878SMartin Mares capability lists. 843594de878SMartin Mares 8448a23eadcSMartin Mares * lspci.c, lib/header.h: Finished decoding of the PCI Express 8458a23eadcSMartin Mares capability. The extended capabilities remain undecoded for now, 8468a23eadcSMartin Mares but at least the list of them has been updated to reflect the 8478a23eadcSMartin Mares current PCI Express 2.0 spec. 8488a23eadcSMartin Mares 8498a23eadcSMartin Mares * lspci.c, lib/header.h: Decode new bits of traditional registers 8508a23eadcSMartin Mares as defined by PCIE / PCI-X. This includes discard timers in the bridge 8518a23eadcSMartin Mares control register and INTx enable/status in device control/status 8528a23eadcSMartin Mares registers. 8538a23eadcSMartin Mares 8548a23eadcSMartin Mares * lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed 8558a23eadcSMartin Mares by Marius Strobl. 8568a23eadcSMartin Mares 85799091df9SMartin Mares2007-09-12 Hasso Tepper <[email protected]> 85899091df9SMartin Mares 85999091df9SMartin Mares * Extended the fbsd-device backend to run on Dragonfly BSD. 86099091df9SMartin Mares 86199091df9SMartin Mares * lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>. 86299091df9SMartin Mares 86309156b3bSMartin Mares2007-09-03 Martin Mares <[email protected]> 86409156b3bSMartin Mares 86509156b3bSMartin Mares * Resurrected the Windows port, including cross-compilation by MinGW. 86609156b3bSMartin Mares Patch by Samuel Bronson <[email protected]>. 86709156b3bSMartin Mares 868325a3c50SMartin Mares2007-08-31 Martin Mares <[email protected]> 869325a3c50SMartin Mares 8708f33a693SGuillem Jover * Makefile, lib/Makefile: `ar' and `ranlib' can be overridden to allow 871325a3c50SMartin Mares cross-compilation. 872325a3c50SMartin Mares 873a2322147SMartin Mares2007-08-27 Martin Mares <[email protected]> 874a2322147SMartin Mares 875a2322147SMartin Mares * lib/names.c (pci_open): When calling gzopen(), use "rb" file mode 876a2322147SMartin Mares instead of "r". This is needed on DOS systems, where this function 877a2322147SMartin Mares somewhat illogically uses the binary flag for the compressed file 878a2322147SMartin Mares instead of the decompressed stream inside, where binariness really 879a2322147SMartin Mares matters. 880a2322147SMartin Mares 8814f2c5b94SMartin Mares2007-08-14 Martin Mares <[email protected]> 8824f2c5b94SMartin Mares 8834f2c5b94SMartin Mares * lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability, 8844f2c5b94SMartin Mares based on a patch by Jason Gunthorpe. 8854f2c5b94SMartin Mares 8864f2c5b94SMartin Mares * tests/cap-MSI-mapping: Added a test case. I plan to add test cases 8874f2c5b94SMartin Mares (which are dumps of config space) for all new features. 8884f2c5b94SMartin Mares 8890d7f5331SMartin Mares2007-06-20 Martin Mares <[email protected]> 8900d7f5331SMartin Mares 8917cebe481SMartin Mares * Released as 2.2.6. 8927cebe481SMartin Mares 8930d7f5331SMartin Mares * Makefile: Added an "install-lib" target. Thanks to Dan Nicholson 8940d7f5331SMartin Mares for a patch. 8950d7f5331SMartin Mares 8967cebe481SMartin Mares * Makefile, lib/Makefile: Generate and install pkg-config file 8977cebe481SMartin Mares for libpci. Again by Dan Nicholson. 8987cebe481SMartin Mares 8990d7f5331SMartin Mares2007-06-20 Thomas Schwinge <[email protected]> 9000d7f5331SMartin Mares 9010d7f5331SMartin Mares * lib/i386-io-hurd.h: Rewritten for new Hurd kernels. 9020d7f5331SMartin Mares 9036e4a45edSMartin Mares2007-05-04 Martin Mares <[email protected]> 9046e4a45edSMartin Mares 90555c89179SMartin Mares * Released as 2.2.5. 90655c89179SMartin Mares 9076e4a45edSMartin Mares * pci.ids: Updated to the current snapshot of the database. 9086e4a45edSMartin Mares 909d0b07542SMartin Mares2007-02-14 Martin Mares <[email protected]> 910d0b07542SMartin Mares 911d0b07542SMartin Mares * lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type. 912d0b07542SMartin Mares Patch by Mark Glines. 913d0b07542SMartin Mares 9143df35926SMartin Mares2007-02-09 Martin Mares <[email protected]> 9153df35926SMartin Mares 9163df35926SMartin Mares * pci.ids: Updated to the current snapshot of the database. 9173df35926SMartin Mares 918e49ed044SMartin Mares2007-02-06 Martin Mares <[email protected]> 919e49ed044SMartin Mares 9201ac3a99dSMartin Mares * Replaced bzero() by memset() everywhere, it's better to lose a tiny 9211ac3a99dSMartin Mares bit of readability than maintain hacks to make it work on various systems. 9221ac3a99dSMartin Mares 923b0eb18ccSMartin Mares * lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]' 924b0eb18ccSMartin Mares instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise. 925b0eb18ccSMartin Mares 926e49ed044SMartin Mares * lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise 927e49ed044SMartin Mares integer types. 928e49ed044SMartin Mares 9299de2768cSMartin Mares2007-02-04 Martin Mares <[email protected]> 9309de2768cSMartin Mares 9319de2768cSMartin Mares * lspci.c: alloca() needs <alloca.h>. 9329de2768cSMartin Mares 933d19394dbSMartin Mares2006-09-17 Martin Mares <[email protected]> 934d19394dbSMartin Mares 935d19394dbSMartin Mares * lib/dump.c: Fixed a couple of bugs in the dump backend which caused 936d19394dbSMartin Mares devices with domains or with extended config space to be read incorrectly. 937d19394dbSMartin Mares Also, dumps with partial lines are allowed now. 938d19394dbSMartin Mares 939934e7e36SMartin Mares2006-09-10 Martin Mares <[email protected]> 940934e7e36SMartin Mares 941f09856deSMartin Mares * pci.ids: Updated to the current database snapshot. 942f09856deSMartin Mares 943934e7e36SMartin Mares * lspci.c (scan_device): If an error occurs when reading the standard config 944934e7e36SMartin Mares header of a device, report it and ignore the device and return with exit 945934e7e36SMartin Mares code 2 at the end. 946934e7e36SMartin Mares 947b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 948b2055313SMartin Mares 949fb260653SMartin Mares * Released as 2.2.4. 950fb260653SMartin Mares 9511865e2ddSMartin Mares * maint/release: Remind the maintainer about the current PCI_LIB_VERSION. 9521865e2ddSMartin Mares 953028dffb2SMartin Mares * lib/pci.h: Updated PCI_LIB_VERSION. 954028dffb2SMartin Mares 95513081e57SMartin Mares * lspci.c (show_machine): In the `-m' mode, do proper shell escaping 95613081e57SMartin Mares if the fields printed contain quotes or backslashes. 95713081e57SMartin Mares 9583fd6b4d2SMartin Mares * lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse 9593fd6b4d2SMartin Mares of the `Device' tag for two different purposes. 9603fd6b4d2SMartin Mares 961840d09aeSMartin Mares * Makefile: Moved all system-dependent decisions to lib/configure, 962840d09aeSMartin Mares since config.mk is included in the top-level Makefile anyway. 963840d09aeSMartin Mares 9642100f710SMartin Mares * lib/configure: When configuring for Linux, ignore the kernel version 9652100f710SMartin Mares and always build all access methods. 9662100f710SMartin Mares 9673e9c7a18SMartin Mares * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers 9683e9c7a18SMartin Mares at many non-interesting places with gcc 3.4. 9693e9c7a18SMartin Mares 97094db5c82SMartin Mares * Whitespace cleanup of all source files. 97194db5c82SMartin Mares 972cc062b4aSMartin Mares * The pci.ids file can be stored compressed if zlib is available. 973cc062b4aSMartin Mares Added transparent decompression to lib/names.c, modified update-pciids.sh 974cc062b4aSMartin Mares to keep the file compressed if applicable, updated Makefiles. 975cc062b4aSMartin Mares Based on a patch by Matthew Wilcox, but all the bugs are mine. 976cc062b4aSMartin Mares 977f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 978f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 979f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 980f4ddb8d3SMartin Mares 98116e37012SMartin Mares * Added .gitignore files. 98216e37012SMartin Mares 983c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 984c7f5314dSMartin Mares 985afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 986afebde01SMartin Mares 987fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 988fd54ccebSMartin Mares 989b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 990b2055313SMartin Mares defined in the pci.ids file. 991b2055313SMartin Mares 9924254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 9934254d153SMartin Mares 9944254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 9954254d153SMartin Mares 9961c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 9971c5cc9b5SMartin Mares 99838a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 99938a9e3c3SMartin Mares 1000c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 1001c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 1002c7ddfa3eSMartin Mares 1003248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 1004248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 1005248a04f8SMartin Mares 1006f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 1007f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 1008f29dcc87SMartin Mares 10098eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 10108eab3bffSMartin Mares 1011d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 1012d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 1013d305d704SMartin Mares directly. 1014d305d704SMartin Mares 10159007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 10169007a292SMartin Mares the port access state to generic code. 10179007a292SMartin Mares 1018bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 1019bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 1020bd20d5b5SMartin Mares 102173750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 102273750606SMartin Mares 1023d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 1024d71daa45SMartin Mares 10251c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 10261c5cc9b5SMartin Mares 10271c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 10281c5cc9b5SMartin Mares 1029c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 1030c2b144efSMartin Mares 103114d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 103214d4f989SMartin Mares 103314d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 103414d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 103514d4f989SMartin Mares incomplete, though. 103614d4f989SMartin Mares 1037c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 1038c2b144efSMartin Mares 1039c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 1040c2b144efSMartin Mares be modified by kernel fixups. 1041c2b144efSMartin Mares 1042c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 1043c2b144efSMartin Mares 1044bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 1045bc2eed2dSMartin Mares 1046bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 1047bc2eed2dSMartin Mares for the idea. 1048bc2eed2dSMartin Mares 1049bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 1050bc2eed2dSMartin Mares cleaned up the name selection code. 1051bc2eed2dSMartin Mares 1052c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 1053c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 1054c72eeddeSMartin Mares 1055c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 1056c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 1057c72eeddeSMartin Mares 10582f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 10592f294d4bSMartin Mares 10602f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 10612f294d4bSMartin Mares 106281afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 106381afa98cSMartin Mares name when printing an error message. 106481afa98cSMartin Mares 10650ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 10660ac282f2SMartin Mares 10670ac282f2SMartin Mares * README: Mention the public GIT tree. 10680ac282f2SMartin Mares 10690ac282f2SMartin Mares * README: Updated the list of ports. 10700ac282f2SMartin Mares 1071d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 1072d1058e9dSMartin Mares 1073d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 1074d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 1075d1058e9dSMartin Mares 1076abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 1077abf8d505SMartin Mares 10782ae2d1aeSMartin Mares * Released as 2.2.3. 10792ae2d1aeSMartin Mares 10802ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 10812ae2d1aeSMartin Mares in -m mode. 10822ae2d1aeSMartin Mares 10832ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 10842ae2d1aeSMartin Mares 10851d5cf727SMartin Mares * Released as 2.2.2. 10861d5cf727SMartin Mares 10878a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 10888a830168SMartin Mares 1089b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 1090b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 1091b6359063SMartin Mares the existing FreeBSD interface. 1092b6359063SMartin Mares 1093abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 1094abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 1095abf8d505SMartin Mares 10966ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 10976ac70402SMartin Mares 10982a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 10992a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 11002a124daeSMartin Mares forces domain display even there. 11012a124daeSMartin Mares 11026ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 11036ac70402SMartin Mares guaranteed to be stable between lspci versions. 11046ac70402SMartin Mares 11051bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 11061bbdea17SMartin Mares 1107af61eb25SMartin Mares * lspci.man: Documented the -D switch. 1108af61eb25SMartin Mares 1109af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 1110af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 1111af61eb25SMartin Mares all devices. 1112af61eb25SMartin Mares 11137a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 11147a61b93cSMartin Mares 11151bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 11161bbdea17SMartin Mares 11170e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 11180e78ef8aSMartin Mares 11190e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 11200e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 11210e78ef8aSMartin Mares 1122e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 1123e6859953SMartin Mares 1124e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 1125e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 1126e6859953SMartin Mares 1127e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 1128e6859953SMartin Mares 1129a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 1130a99c0d69SMartin Mares 1131e4af70c6SMartin Mares * Released as 2.2.1. 1132e4af70c6SMartin Mares 1133a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 1134a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 1135a99c0d69SMartin Mares 1136f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 1137f23fd3fcSMartin Mares 1138f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 1139f23fd3fcSMartin Mares 114015296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 114115296723SMartin Mares 114215296723SMartin Mares * Released as 2.2.0. 114315296723SMartin Mares 114440b6d93fSMartin Mares * pci.ids: Updated copyright header. 114540b6d93fSMartin Mares 114615296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 114715296723SMartin Mares 64-bit addresses, they are now always supported. 114815296723SMartin Mares 114915296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 115015296723SMartin Mares in bus-centric mode. 115115296723SMartin Mares 115215296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 115315296723SMartin Mares 115415296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 115515296723SMartin Mares are shorter. 115615296723SMartin Mares 1157224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 1158224707baSMartin Mares 1159224707baSMartin Mares * Released as 2.1.99-test11. 1160224707baSMartin Mares 1161224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 1162224707baSMartin Mares 1163aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 1164aeaca5d3SMartin Mares 1165224707baSMartin Mares * Released as 2.1.99-test10. 1166224707baSMartin Mares 116763e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 116863e6f2e0SMartin Mares 1169043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 1170043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 1171043ebdeeSMartin Mares 1172043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 1173043ebdeeSMartin Mares 1174aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 1175aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 1176aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 1177aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 1178aeaca5d3SMartin Mares 1179aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 1180aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 1181aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 1182aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 1183aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 1184aeaca5d3SMartin Mares 1185121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 1186121c76c9SMartin Mares 118754e13765SMartin Mares * Released as 2.1.99-test9. 118854e13765SMartin Mares 118954e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 119054e13765SMartin Mares gcc versions when optimizing anyway. 119154e13765SMartin Mares 119254e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 119354e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 119454e13765SMartin Mares 119554e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 119654e13765SMartin Mares 119784d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 119884d437d6SMartin Mares methods and which operations are privileged. 119984d437d6SMartin Mares 120084d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 120184d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 120284d437d6SMartin Mares portions of the configuration space being inaccessible, for example 120384d437d6SMartin Mares due to insufficient access rights. 120484d437d6SMartin Mares 12053b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 12063b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 12073b8bf739SMartin Mares as I haven't seen the spec). 12083b8bf739SMartin Mares 12093b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 12103b8bf739SMartin Mares 121184d437d6SMartin Mares * lspci.c: Removed C++ comments. 121284d437d6SMartin Mares 12133b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 12143b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 12153b8bf739SMartin Mares 12163b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 12173b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 12183b8bf739SMartin Mares list. 12193b8bf739SMartin Mares 1220f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 1221f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 1222f7821e53SMartin Mares access more than that. 1223ea4e5f5dSMartin Mares 122446ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 122546ea554dSMartin Mares 12268afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 12278afaab22SMartin Mares 1228121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 1229121c76c9SMartin Mares 1230c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 1231c1c2c30eSMartin Mares 1232b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 1233b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 1234b9ca9147SMartin Mares 1235c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 1236b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 1237c1c2c30eSMartin Mares 123826542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 123926542a0bSMartin Mares 124026542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 124126542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 124226542a0bSMartin Mares 12436aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 12446aa54f1bSMartin Mares 1245aabb0a92SMartin Mares * Released as 2.1.99-test8. 1246aabb0a92SMartin Mares 1247f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 1248f31412d1SMartin Mares no longer exported to the outside world. 1249f31412d1SMartin Mares 1250ee7d8384SMartin Mares * README.Windows: Updated. 1251ee7d8384SMartin Mares 1252ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 1253ee7d8384SMartin Mares 1254ee7d8384SMartin Mares * win32/config.h: Added. 1255ee7d8384SMartin Mares 1256ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 1257ee7d8384SMartin Mares 1258ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 1259ee7d8384SMartin Mares C library for use on systems where the default libraries lack 1260ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 1261ee7d8384SMartin Mares 1262ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 1263ee7d8384SMartin Mares Alexander Stock. 1264ee7d8384SMartin Mares 1265489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 1266489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 1267489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 1268489233b4SMartin Mares be gone. 1269489233b4SMartin Mares 1270489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 1271489233b4SMartin Mares 1272489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 1273489233b4SMartin Mares 1274489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 1275489233b4SMartin Mares it is included unconditionally in lib/types.h. 1276489233b4SMartin Mares 1277489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 1278489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 1279489233b4SMartin Mares from lib/pci.h to lib/types.h. 1280489233b4SMartin Mares 1281489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 1282489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 1283489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 1284489233b4SMartin Mares 1285489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 1286489233b4SMartin Mares headers with the kernel a couple of years ago. 1287489233b4SMartin Mares 12889bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 12899bb4b4eaSMartin Mares 12906aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 12916aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 12926aa54f1bSMartin Mares 12936aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 12946aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 12956aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 12966aa54f1bSMartin Mares 12976aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 12986aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 12996aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 13006aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 13016aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 13026aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 13036aa54f1bSMartin Mares mapping the regions and doing I/O on them. 13046aa54f1bSMartin Mares 130580e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 130680e6c636SMartin Mares 130780e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 130880e6c636SMartin Mares 1309d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 1310d6324891SMartin Mares 1311d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 1312d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 1313d6324891SMartin Mares 1314ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 1315ec25b52dSMartin Mares 1316362be683SMartin Mares * Released as 2.1.99-test7. 1317362be683SMartin Mares 1318ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 1319ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 1320ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 1321ec25b52dSMartin Mares 1322ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 1323ec25b52dSMartin Mares 1324ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 1325ec25b52dSMartin Mares 1326ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 1327ec25b52dSMartin Mares 1328ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 1329ec25b52dSMartin Mares 1330ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 1331ec25b52dSMartin Mares 1332ec25b52dSMartin Mares * lspci.man: Added -xxxx. 1333ec25b52dSMartin Mares 133409817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 133509817437SMartin Mares 1336d1fa27ebSMartin Mares * Released as 2.1.99-test6. 1337d1fa27ebSMartin Mares 13384d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 13394d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 13404d67aa89SMartin Mares 13414d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 13424d67aa89SMartin Mares failures. 13434d67aa89SMartin Mares 13444d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 13454d67aa89SMartin Mares 13464d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 13474d67aa89SMartin Mares Patch by Matthew Wilcox. 13484d67aa89SMartin Mares 13494d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 13504d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 13514d67aa89SMartin Mares 135209817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 135309817437SMartin Mares report correct errors reported by the libpci instead. 135409817437SMartin Mares 135509817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 135609817437SMartin Mares Better caching of config registers. 135709817437SMartin Mares 135809817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 135909817437SMartin Mares 136009817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 136109817437SMartin Mares just return the appropriate error code. 136209817437SMartin Mares 136309817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 136409817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 136509817437SMartin Mares and of course in the dump reader. 136609817437SMartin Mares 13670d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 13680d656226SMartin Mares 1369c0eece92SMartin Mares * Released as 2.1.99-test5. 1370c0eece92SMartin Mares 1371a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 1372a2413560SMartin Mares 1373a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 1374a2413560SMartin Mares macros. 1375a2413560SMartin Mares 1376a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 1377a2413560SMartin Mares 1378a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 1379a2413560SMartin Mares 1380a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 1381a2413560SMartin Mares Stock <[email protected]>. 1382a2413560SMartin Mares 1383a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 1384a2413560SMartin Mares changes to the configure script. 1385a2413560SMartin Mares 13860d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 13870d656226SMartin Mares 1388138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 1389138c0385SMartin Mares 13909f490382SMartin Mares * Released as 2.1.99-test4. 13919f490382SMartin Mares 1392cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 1393cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 1394cce2caacSMartin Mares 1395b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 1396b569ef09SMartin Mares (show_agp): rate[] could overflow. 1397b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 1398b569ef09SMartin Mares 1399bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 1400bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 1401bfc4fe7aSMartin Mares by me. 1402bfc4fe7aSMartin Mares 1403bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 1404bfc4fe7aSMartin Mares Again thanks to Maciej. 1405bfc4fe7aSMartin Mares 1406138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 1407138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 1408138c0385SMartin Mares 14098fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 14108fc75dbcSMartin Mares 141181abd2a7SMartin Mares * Released as 2.1.99-test3. 141281abd2a7SMartin Mares 14131f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 14141f7c91ccSMartin Mares 14151f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 14161f7c91ccSMartin Mares 141784c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 14181f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 14191f7c91ccSMartin Mares as well. 142084c8d1bbSMartin Mares 142184c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 142284c8d1bbSMartin Mares 142384c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 142484c8d1bbSMartin Mares 142584c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 142684c8d1bbSMartin Mares 142784c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 142884c8d1bbSMartin Mares 142984c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 143084c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 143184c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 143284c8d1bbSMartin Mares 143384c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 143484c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 143584c8d1bbSMartin Mares 143684c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 143784c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 143884c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 143984c8d1bbSMartin Mares 144011f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 144111f7b31bSMartin Mares is not supported by all C libraries. 144211f7b31bSMartin Mares 144311f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 14448f33a693SGuillem Jover full dependencies for the library in the top-level Makefile; hmmm, another 144511f7b31bSMartin Mares thing to rewrite some day). 144611f7b31bSMartin Mares 144711f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 144811f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 144911f7b31bSMartin Mares 145011f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 145111f7b31bSMartin Mares 145211f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 145311f7b31bSMartin Mares of Linux libc moved there. 145411f7b31bSMartin Mares 145511f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 145611f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 145711f7b31bSMartin Mares values and for too large values. 145811f7b31bSMartin Mares 14594284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 14604284af58SMartin Mares package is pretty cross-platform now :) 14614284af58SMartin Mares 14624284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 14634284af58SMartin Mares 1464ab12277eSMartin Mares * Released as 2.1.99-test2. 1465ab12277eSMartin Mares 1466ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 1467ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 1468ab12277eSMartin Mares 1469ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 1470ab12277eSMartin Mares making releases including inter-version diffs etc. 1471ab12277eSMartin Mares 1472ab12277eSMartin Mares * Makefile: Cleaned up. 1473ab12277eSMartin Mares 1474ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 1475ab12277eSMartin Mares this time the version checks should be right. 1476ab12277eSMartin Mares 1477ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 1478ab12277eSMartin Mares 14796d722cd6SMartin Mares * Released as 2.1.99-test1. 14806d722cd6SMartin Mares 1481dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 1482dd33246aSMartin Mares Remove shadows of the syscall access method which was never 1483dd33246aSMartin Mares implemented. 1484dd33246aSMartin Mares 148580b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 148680b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 148780b3121aSMartin Mares 14886aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 14896aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 14906aea909aSMartin Mares 14916aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 14926aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 14936aea909aSMartin Mares 14946aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 14956aea909aSMartin Mares 1496f701ff47SMartin Mares Merged bug fixes from Debian patches: 1497f701ff47SMartin Mares 1498f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 1499f701ff47SMartin Mares 1500f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 1501f701ff47SMartin Mares 15022240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 15032240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 1504f701ff47SMartin Mares multiple functions. 15052240db8cSMartin Mares 15062240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 15072240db8cSMartin Mares 150845902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 150945902995SMartin Mares for the patches: 151045902995SMartin Mares 151145902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 151245902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 151345902995SMartin Mares to __FreeBSD_version. 151445902995SMartin Mares 151545902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 151645902995SMartin Mares 15178fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 15188fc75dbcSMartin Mares and cleaned up: 15198fc75dbcSMartin Mares 15208fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 15218fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 15228fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 15238fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 15248fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 15258fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 15268fc75dbcSMartin Mares 15279739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 15289739916eSMartin Mares 15299739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 15309739916eSMartin Mares 15319739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 15329739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 15339739916eSMartin Mares use them in all cases. 15349739916eSMartin Mares 15359739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 15369739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 15379739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 15389739916eSMartin Mares directly in pci.h. 15399739916eSMartin Mares 15409739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 15419739916eSMartin Mares 154280459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 154380459c65SMartin Mares 154480459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 154580459c65SMartin Mares 154680459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 154780459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 154880459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 154980459c65SMartin Mares u8 to u32. 155080459c65SMartin Mares 1551a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 1552a85769a8SMartin Mares 15537dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 15547dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 15557dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 15567dacd9c8SMartin Mares 15577dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 15587dacd9c8SMartin Mares at all places. 15597dacd9c8SMartin Mares 15604063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 15614063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 15624063c31cSMartin Mares 15633fe8a38dSMartin Mares * setpci.c (main): Better error messages. 15643fe8a38dSMartin Mares 15655f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 15665f5b1a7bSMartin Mares 15675f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 15685f5b1a7bSMartin Mares Document the new behaviour. 1569b251f40bSMartin Mares 157091e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 157191e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 157291e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 157391e37a49SMartin Mares 15744afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 15754afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 15764afd29d3SMartin Mares a different fix. 15774afd29d3SMartin Mares 1578b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 1579b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 1580b0f1a03bSMartin Mares 1581b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 1582b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 1583b7fd8e19SMartin Mares 158405bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 158505bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 158605bb10a2SMartin Mares 1587a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 1588a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 1589a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 1590a832f6f1SMartin Mares for reporting this problem. 1591a832f6f1SMartin Mares 1592a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 1593a85769a8SMartin Mares 1594a85769a8SMartin Mares * Makefile: Added some more warnings. 1595a85769a8SMartin Mares 1596b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 1597b7351143SMartin Mares 1598b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 1599b7351143SMartin Mares 1600b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 1601b7351143SMartin Mares 16022a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 16032a5d5cf9SMartin Mares 16042a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 16052a5d5cf9SMartin Mares 1606d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 1607d772ef15SMartin Mares 16081b95f396SMartin Mares * Released as 2.1.11. 16091b95f396SMartin Mares 1610c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 1611c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 1612c83293ebSMartin Mares scattered between the installation rules. The default installation 1613c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 1614c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 1615c83293ebSMartin Mares installations to interfere with the default ones. 1616c83293ebSMartin Mares 1617c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 1618c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 1619c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 1620c83293ebSMartin Mares has passed since the last version which used it). 1621c83293ebSMartin Mares 1622e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 1623e2875dcdSMartin Mares 16241b95f396SMartin Mares * Added the update-ids utility. 16250138a2a7SMartin Mares 1626d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 1627d772ef15SMartin Mares probably never be needed. 1628d772ef15SMartin Mares 1629eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 1630eb620239SMartin Mares 1631130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 1632130090bdSMartin Mares 1633eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 1634eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 1635eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 1636eb620239SMartin Mares 1637848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 1638848b4347SMartin Mares 1639579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 1640579b19ffSMartin Mares 1641579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 1642579b19ffSMartin Mares there is no reason to prefer the kernel version. 1643579b19ffSMartin Mares 1644579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 1645579b19ffSMartin Mares 1646848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 1647848b4347SMartin Mares <[email protected]>. 1648848b4347SMartin Mares 1649f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 1650f0952474SMartin Mares 1651f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 1652f0952474SMartin Mares 1653d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 1654d2f666f1SMartin Mares 16559bd44bb0SMartin Mares * Released as 2.1.10. 16569bd44bb0SMartin Mares 1657a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 1658a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 1659a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 1660a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 1661a33d0eb7SMartin Mares pciids.sf.net. 1662a33d0eb7SMartin Mares 1663a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 1664a33d0eb7SMartin Mares 1665a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 1666a33d0eb7SMartin Mares 1667a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 1668a33d0eb7SMartin Mares not in the tarball). 1669a33d0eb7SMartin Mares 1670d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 1671d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 1672d2f666f1SMartin Mares a comment only at the start of the line. 1673d2f666f1SMartin Mares 1674ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 1675ee551b73SMartin Mares 167607159913SMartin Mares * README: Rewritten. 167707159913SMartin Mares 1678ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 1679ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 1680ee551b73SMartin Mares Jean Delvare <[email protected]>. 1681ee551b73SMartin Mares 1682bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 1683bc7b1d62SMartin Mares 16845f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 16855f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 16865f5e6f64SMartin Mares 16875f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 16885f5e6f64SMartin Mares 16895f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 16905f5e6f64SMartin Mares 1691a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 1692a1052f16SMartin Mares 1693bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 1694bc7b1d62SMartin Mares function 7. 1695bc7b1d62SMartin Mares 1696bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 1697bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 1698bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 1699bc7b1d62SMartin Mares 1700f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 1701f793990cSMartin Mares 1702ee551b73SMartin Mares * Released as 2.1.9. 1703ee551b73SMartin Mares 1704f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 1705f793990cSMartin Mares (http://pciids.sourceforge.net/). 1706f793990cSMartin Mares 17071d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 17081d174e56SMartin Mares 17091d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 17101d174e56SMartin Mares 171165b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 171265b4327eSMartin Mares 171365b4327eSMartin Mares * Makefile (uninstall): Fixed. 171465b4327eSMartin Mares 171565b4327eSMartin Mares * pci.ids: ID updates. 171665b4327eSMartin Mares 17174a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 17184a219d5fSMartin Mares 17194a219d5fSMartin Mares * Released as 2.1.8. 17204a219d5fSMartin Mares 17214a219d5fSMartin Mares * pci.ids: ID updates. 17224a219d5fSMartin Mares 17234a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 17244a219d5fSMartin Mares 17254a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 17264a219d5fSMartin Mares 17274a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 17284a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 17294a219d5fSMartin Mares bogus class info. 17304a219d5fSMartin Mares 173110c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 173210c90662SMartin Mares 173372b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 173472b9b690SMartin Mares 173510c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 173610c90662SMartin Mares 173710c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 173810c90662SMartin Mares 1739a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 1740a239ade6SMartin Mares 1741a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 1742a239ade6SMartin Mares 1743a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 1744a239ade6SMartin Mares 1745a239ade6SMartin Mares * pci.ids: Various ID updates. 1746a239ade6SMartin Mares 17472c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 17482c83b860SMartin Mares 17492c83b860SMartin Mares * Released as 2.1.7. 17502c83b860SMartin Mares 17512c83b860SMartin Mares * pciutils.spec: Added German description. 17522c83b860SMartin Mares 17532c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 17542c83b860SMartin Mares are the same as device ID and just output subsystem name according to 17552c83b860SMartin Mares device name. 17562c83b860SMartin Mares 17572c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 17582c83b860SMartin Mares 17592c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 17602c83b860SMartin Mares 17612c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 17622c83b860SMartin Mares 17632c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 17642c83b860SMartin Mares "echo -n" if the shell isn't bash. 17652c83b860SMartin Mares 17662c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 17672c83b860SMartin Mares (insert_dev): Avoid returning a void value. 17682c83b860SMartin Mares 17692c83b860SMartin Mares * Makefile: Choose which install utility to use according to 17702c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 17712c83b860SMartin Mares Part of the AIX port. 17722c83b860SMartin Mares 17732c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 17742c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 17752c83b860SMartin Mares 17762c83b860SMartin Mares * pci.ids: Few new ID's. 17772c83b860SMartin Mares 17782c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 17792c83b860SMartin Mares when not compiled by GCC. 17802c83b860SMartin Mares 1781c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 1782c1a828daSMartin Mares 1783c1a828daSMartin Mares * Released as 2.1.6. 1784c1a828daSMartin Mares 1785c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 1786c1a828daSMartin Mares Mayer <[email protected]> and synced the 1787c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 1788c1a828daSMartin Mares 1789e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 1790e91dd3abSMartin Mares 1791a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 1792a80b79a9SMartin Mares the library. 1793a80b79a9SMartin Mares 179489984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 179589984232SMartin Mares by Adam Sulmicki. 179689984232SMartin Mares 1797e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 1798e91dd3abSMartin Mares 179978d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 180078d9c5e2SMartin Mares 180178d9c5e2SMartin Mares * Released as 2.1.5. 180278d9c5e2SMartin Mares 180378d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 180478d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 180578d9c5e2SMartin Mares 180678d9c5e2SMartin Mares * pci.ids: New ID's. 180778d9c5e2SMartin Mares 180878d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 180978d9c5e2SMartin Mares no argument. 181078d9c5e2SMartin Mares 1811f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 1812f8141ae2SMartin Mares 1813f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 1814f8141ae2SMartin Mares glibc. 1815f8141ae2SMartin Mares 1816f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 1817f8141ae2SMartin Mares 1818f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 1819f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 1820f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 1821f8141ae2SMartin Mares 182259e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 182359e76e8bSMartin Mares 182459e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 182559e76e8bSMartin Mares 182659e76e8bSMartin Mares * Released as version 2.1.4. 182759e76e8bSMartin Mares 18282dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 18292dfd48cdSMartin Mares 18302715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 18312715403fSMartin Mares 183281077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 183381077814SMartin Mares 183481077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 183581077814SMartin Mares 183681077814SMartin Mares * pci.ids: New ID's. 183781077814SMartin Mares 18382dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 18392dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 18402dfd48cdSMartin Mares 18415a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 18425a258860SMartin Mares 18435a258860SMartin Mares * Released as version 2.1.3. 18445a258860SMartin Mares 18455a258860SMartin Mares * pci.ids: New ID's. 18465a258860SMartin Mares 18475a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 18485a258860SMartin Mares 18495a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 18505a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 18515a258860SMartin Mares 18520c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 18530c047bbeSMartin Mares 18540c047bbeSMartin Mares * Released as version 2.1.2. 18550c047bbeSMartin Mares 18560c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 18570c047bbeSMartin Mares 185833bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 185933bc28a5SMartin Mares 186039231205SMartin Mares * Released as version 2.1.1. 186139231205SMartin Mares 186233bc28a5SMartin Mares * pci.ids: Several new ID's. 186333bc28a5SMartin Mares 186433bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 186533bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 186633bc28a5SMartin Mares by Petr Soucek <[email protected]>. 186733bc28a5SMartin Mares 18688d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 18698d047897SMartin Mares 18708d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 18718d047897SMartin Mares ID list, show it. 18728d047897SMartin Mares 18736afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 18746afc6538SMartin Mares 18756afc6538SMartin Mares * Released as version 2.1. 18766afc6538SMartin Mares 18776afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 18786afc6538SMartin Mares lots of contributed entries. 18796afc6538SMartin Mares 18808f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 18818f756113SMartin Mares 18828f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 18838f756113SMartin Mares 1884d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 1885d4798a32SMartin Mares 1886d4798a32SMartin Mares * setpci.man: Better example. 1887d4798a32SMartin Mares 1888d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 1889d4798a32SMartin Mares 1890d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 1891d4798a32SMartin Mares 1892d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 1893d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 1894d4798a32SMartin Mares New ID's, as usually. 1895d4798a32SMartin Mares 1896e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 1897e306e911SMartin Mares 1898e306e911SMartin Mares * pci.ids: New ID's. As usually. 1899e306e911SMartin Mares 1900e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 1901e306e911SMartin Mares unless we're vvvery verbose. 1902e306e911SMartin Mares 1903e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 1904e306e911SMartin Mares 1905e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 1906e306e911SMartin Mares 1907e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 1908e64a576cSMartin Mares 1909e64a576cSMartin Mares * pci.ids: New ID's. Again. 1910e64a576cSMartin Mares 1911c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 1912c36c0862SMartin Mares 1913c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 1914c36c0862SMartin Mares due to bus-centric mode being enabled). 1915c36c0862SMartin Mares 19161ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 19171ca42433SMartin Mares 1918168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 1919168b4f46SMartin Mares 1920168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 1921168b4f46SMartin Mares 1922168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 1923168b4f46SMartin Mares 1924168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 1925168b4f46SMartin Mares 1926168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 1927168b4f46SMartin Mares incorrectly set to device ID. 1928168b4f46SMartin Mares 1929168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 1930168b4f46SMartin Mares 1931168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 1932168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 1933168b4f46SMartin Mares as GNU date does. Use sed instead. 1934168b4f46SMartin Mares (install): Use `-c' when calling install. 1935168b4f46SMartin Mares 1936168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 1937168b4f46SMartin Mares by Jari Kirma <[email protected]>. 1938168b4f46SMartin Mares 1939bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 1940bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 1941bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 1942bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 1943bc6346dfSMartin Mares with lseek/read/write. 1944bc6346dfSMartin Mares 19451ca42433SMartin Mares * pci.ids: Some more IDs. 19461ca42433SMartin Mares 19471ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 19481ca42433SMartin Mares 19491ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 19501ca42433SMartin Mares by Tim Waugh <[email protected]>. 19511ca42433SMartin Mares 1952e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 1953e95c8373SMartin Mares 1954e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 1955e95c8373SMartin Mares 1956e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 1957e95c8373SMartin Mares HAVE_LONG_ADDRESS. 1958e95c8373SMartin Mares 1959e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 1960e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 1961e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 1962e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 1963e95c8373SMartin Mares on Alpha. 1964e95c8373SMartin Mares 1965e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 1966e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 19678f33a693SGuillem Jover (show_caps): Separated capability dumping, because it should 1968e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1969e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 1970e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 1971e95c8373SMartin Mares is already defined differently in htype2. 1972e95c8373SMartin Mares 1973e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1974e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1975e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1976e95c8373SMartin Mares 1977e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1978e95c8373SMartin Mares (required by the PCI 2.2 specs). 1979e95c8373SMartin Mares 1980e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1981e95c8373SMartin Mares 1982e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1983e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1984e95c8373SMartin Mares ROMs et cetera. 1985e95c8373SMartin Mares 1986e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1987e95c8373SMartin Mares of the structure. 1988e95c8373SMartin Mares 1989e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1990e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1991e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1992e95c8373SMartin Mares 199382ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 199482ce97c9SMartin Mares 199582ce97c9SMartin Mares * Makefile: 199682ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 199782ce97c9SMartin Mares * pci.ids: 199882ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 199982ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 200082ce97c9SMartin Mares to determine the revision from the device ID. 200182ce97c9SMartin Mares - Same for the Tseng ET4000. 200282ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 200382ce97c9SMartin Mares - Removed some unnecessary strings 200482ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 200582ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 200682ce97c9SMartin Mares - Lots of other new vendors & devices 200782ce97c9SMartin Mares - Other additional small cleanups. 200882ce97c9SMartin Mares 20097bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 20107bed2d83SMartin Mares 20117bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 20127bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 20137bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 20147bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 20157bed2d83SMartin Mares 20165ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 20175ba3a475SMartin Mares 20185ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 20195ba3a475SMartin Mares <[email protected]>. The command register was displayed 20205ba3a475SMartin Mares incorrectly. 20215ba3a475SMartin Mares 20225ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 20235ba3a475SMartin Mares 20245ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 20255ba3a475SMartin Mares numbers if not supplied by the libc. 20265ba3a475SMartin Mares 202755c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 202855c815b5SMartin Mares 202955c815b5SMartin Mares * Released the whole package as version 2.0. 203055c815b5SMartin Mares 203155c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 203255c815b5SMartin Mares 203355c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 203455c815b5SMartin Mares on the linux-pci list. 203555c815b5SMartin Mares 2036dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 2037dec16943SMartin Mares 2038dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 2039dec16943SMartin Mares * lib/header.h: Ditto. 2040dec16943SMartin Mares 2041dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 2042dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 2043dec16943SMartin Mares 2044e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 2045e33c9c7aSMartin Mares 2046e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 2047e33c9c7aSMartin Mares <[email protected]>. 2048e33c9c7aSMartin Mares 2049e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 2050e33c9c7aSMartin Mares 2051f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 2052f3395cc5SMartin Mares 2053f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 2054f3395cc5SMartin Mares as a multi-function device, because several single-function devices 2055f3395cc5SMartin Mares don't decode the function bits at all. 2056f3395cc5SMartin Mares 2057f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 2058f3395cc5SMartin Mares 2059f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 2060f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 2061f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 2062f3395cc5SMartin Mares 2063f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 2064f3395cc5SMartin Mares 2065f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 2066f3395cc5SMartin Mares 2067f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 2068f3395cc5SMartin Mares or 64-bit depending on CPU. 2069f3395cc5SMartin Mares 2070f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 2071f3395cc5SMartin Mares according to bus address width. 2072f3395cc5SMartin Mares 20731c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 20741c31d620SMartin Mares 20751c31d620SMartin Mares * Released as 1.99.4. 20761c31d620SMartin Mares 20771c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 20781c31d620SMartin Mares registers and PCI Power Management registers (the latter 20791c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 20801c31d620SMartin Mares since I don't have the PCI Power Management document). 20811c31d620SMartin Mares 20828f33a693SGuillem Jover * lspci.c: Replaced numerous occurrences of (x & flag) ? '+' : '-' 20831c31d620SMartin Mares by FLAG macro. 20841c31d620SMartin Mares 20851c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 20861c31d620SMartin Mares 20871812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 20881812a795SMartin Mares 20891812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 20901812a795SMartin Mares 20911812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 20921812a795SMartin Mares (show): Split to show() and show_device(). 20931812a795SMartin Mares 20941812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 20951812a795SMartin Mares set it to the real access method afterwards. 20961812a795SMartin Mares 20971812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 20981812a795SMartin Mares 20991812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 21001812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 21011812a795SMartin Mares 2102f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 2103f6c86928SMartin Mares 2104f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 2105f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 2106f6c86928SMartin Mares 2107f6c86928SMartin Mares * Released as 1.99.3. 2108f6c86928SMartin Mares 2109b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 2110b5137411SMartin Mares 2111d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 2112d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 2113d6b297d0SMartin Mares functions and device IDs), which is not going to happen 21148f33a693SGuillem Jover before 2.3, we'll use our own definition of the header. 2115d6b297d0SMartin Mares 2116b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 2117b5137411SMartin Mares 21188f33a693SGuillem Jover * lspci.c (show_htype0): Display capability lists wherever 2119b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 2120b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 2121b5137411SMartin Mares portion of the configuration space and are thus available 2122b5137411SMartin Mares only to root unless you read a dump. 2123b5137411SMartin Mares 2124b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 2125b5137411SMartin Mares 2126b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 2127b5137411SMartin Mares 2128b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 2129b5137411SMartin Mares 213081ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 213181ce358dSMartin Mares 213281ce358dSMartin Mares * pci.ids: Added few devices. 213381ce358dSMartin Mares 2134727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 2135727ce158SMartin Mares 2136727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 2137727ce158SMartin Mares to the configure script and also substituted to man pages. 2138727ce158SMartin Mares 2139727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 2140727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 2141727ce158SMartin Mares 2142727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 2143727ce158SMartin Mares 2144727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 2145727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 2146727ce158SMartin Mares 2147727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 2148727ce158SMartin Mares whenever available. 2149727ce158SMartin Mares 2150727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 2151727ce158SMartin Mares read/write and real errors. 2152727ce158SMartin Mares 2153727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 2154727ce158SMartin Mares libpci respects buscentric mode automatically. 2155727ce158SMartin Mares 2156727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 2157727ce158SMartin Mares bytes of header (the whole standard part). 2158727ce158SMartin Mares 2159727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 2160727ce158SMartin Mares PCI access debugging option here. 2161727ce158SMartin Mares 2162727ce158SMartin Mares * Released as 1.99.2. 2163727ce158SMartin Mares 2164727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 2165727ce158SMartin Mares 2166727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 2167727ce158SMartin Mares 2168727ce158SMartin Mares * Removed few unused variables. 2169727ce158SMartin Mares 2170727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 2171727ce158SMartin Mares 2172727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 2173727ce158SMartin Mares here. This includes parsing of libpci-related options. 2174727ce158SMartin Mares 2175727ce158SMartin Mares * More library tweaks. 2176727ce158SMartin Mares 2177727ce158SMartin Mares * filter.c, names.c: Moved to library. 2178727ce158SMartin Mares 2179727ce158SMartin Mares * setpci: Rewritten to use the library. 2180727ce158SMartin Mares 2181727ce158SMartin Mares * Released as 1.99.1. 2182727ce158SMartin Mares 2183727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 2184727ce158SMartin Mares 2185727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 2186727ce158SMartin Mares bytes of config space to get full standard header. 2187727ce158SMartin Mares 2188727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 2189727ce158SMartin Mares 2190727ce158SMartin Mares * Started the "New Generation" branch and introduced the 2191727ce158SMartin Mares PCI library. 2192727ce158SMartin Mares 2193727ce158SMartin Mares * lspci: Rewritten to use the library. 2194727ce158SMartin Mares 21956ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 21966ece6bc6SMartin Mares 21976ece6bc6SMartin Mares * Released as version 1.10. 21986ece6bc6SMartin Mares 21996ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 22006ece6bc6SMartin Mares 22016ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 22026ece6bc6SMartin Mares Dag Wieers <[email protected]>. 22036ece6bc6SMartin Mares 22041212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 22051212dd6dSMartin Mares 22061212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 22071212dd6dSMartin Mares 2208d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 2209d38471fdSMartin Mares 2210d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 2211d38471fdSMartin Mares 2212d38471fdSMartin Mares * Released as version 1.09. 2213d38471fdSMartin Mares 2214371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 2215371f605bSMartin Mares 2216371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 2217371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 2218371f605bSMartin Mares 221910be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 222010be47abSMartin Mares 222110be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 222210be47abSMartin Mares 2223472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 2224472bd340SMartin Mares 2225472bd340SMartin Mares * Released as version 1.08. 2226472bd340SMartin Mares 2227472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 2228472bd340SMartin Mares 2229472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 2230472bd340SMartin Mares 2231472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 2232472bd340SMartin Mares it's impossible to crash the machine by single typo. 2233472bd340SMartin Mares 2234472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 2235472bd340SMartin Mares 2236072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 2237072c77e5SMartin Mares 2238072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 2239072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 2240072c77e5SMartin Mares for an idea. 2241072c77e5SMartin Mares 2242b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 2243b7554856SMartin Mares 2244b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 2245b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 2246b7554856SMartin Mares 2247ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 2248ce503b7fSMartin Mares 2249ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 2250ce503b7fSMartin Mares (show_machine): Print subsystem ID. 2251ce503b7fSMartin Mares 2252ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 2253ce503b7fSMartin Mares 2254ce503b7fSMartin Mares * Released as version 1.07. 2255ce503b7fSMartin Mares 225696e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 225796e4f295SMartin Mares 225896e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 225996e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 226096e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 226196e4f295SMartin Mares 226296e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 226396e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 226496e4f295SMartin Mares full description of all header fields supported by the chip. 226596e4f295SMartin Mares 22666ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 22676ae3650aSMartin Mares 2268304f9a0bSMartin Mares * Released as 1.06. 2269304f9a0bSMartin Mares 22706ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 22716ae3650aSMartin Mares 22726ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 22736ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 22746ae3650aSMartin Mares kernels). Ugly. 22756ae3650aSMartin Mares 22766ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 22776ae3650aSMartin Mares 22784b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 22794b88a6b8SMartin Mares 22804b88a6b8SMartin Mares * Released as 1.05. 22814b88a6b8SMartin Mares 22824b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 22834b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 22844b88a6b8SMartin Mares 22854b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 22864b88a6b8SMartin Mares 22874b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 22884b88a6b8SMartin Mares <[email protected]> for reporting this. 22894b88a6b8SMartin Mares 22904b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 22914b88a6b8SMartin Mares 22924b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 22934b88a6b8SMartin Mares 22944b88a6b8SMartin Mares * Released as 1.04. 22954b88a6b8SMartin Mares 22964b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 22974b88a6b8SMartin Mares 22984b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 22994b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 23004b88a6b8SMartin Mares for bug report. 23014b88a6b8SMartin Mares 23029b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 23039b306998SMartin Mares 23049b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 23059b306998SMartin Mares 2306b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 2307b372672fSMartin Mares 2308b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 2309b372672fSMartin Mares 2310b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 2311b2c9b373SMartin Mares 2312b372672fSMartin Mares * Released as 1.03. 2313b372672fSMartin Mares 2314b2c9b373SMartin Mares * setpci.8: Written. 2315b2c9b373SMartin Mares 2316b2c9b373SMartin Mares * setpci.c: Finished. 2317b2c9b373SMartin Mares 2318b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 2319b2c9b373SMartin Mares and print it if not in buscentric mode. 2320b2c9b373SMartin Mares 2321e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 2322e4842ff3SMartin Mares 2323e4842ff3SMartin Mares * setpci.c: Added. 2324e4842ff3SMartin Mares 2325e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 2326e4842ff3SMartin Mares 2327e4842ff3SMartin Mares * lspci.8: Updated the documentation. 2328e4842ff3SMartin Mares 2329e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 2330e4842ff3SMartin Mares 2331e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 2332e4842ff3SMartin Mares 2333008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 2334008407bdSMartin Mares 2335008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 2336008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 2337008407bdSMartin Mares 23380a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 23390a33d0ecSMartin Mares 23400a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 23410a33d0ecSMartin Mares dump. 23420a33d0ecSMartin Mares 23430a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 23440a33d0ecSMartin Mares 23450a33d0ecSMartin Mares * Released as version 1.02. 23460a33d0ecSMartin Mares 23470a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 23480a33d0ecSMartin Mares 23490a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 23500a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 23510a33d0ecSMartin Mares 2352fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 2353fb38eee8SMartin Mares 2354fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 2355fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 2356fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 2357fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 2358fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 2359fb38eee8SMartin Mares 2360fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 2361fb38eee8SMartin Mares 23622f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 23632f48f637SMartin Mares 23642f48f637SMartin Mares * README: Updated. 23652f48f637SMartin Mares 23662f48f637SMartin Mares * lspci.8: Created a man page. 23672f48f637SMartin Mares 23682f48f637SMartin Mares * Releasing as version 1.0. 23692f48f637SMartin Mares 23702f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 23712f48f637SMartin Mares 23722f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 23732f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 23742f48f637SMartin Mares on sparc64. 23752f48f637SMartin Mares 23762f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 23772f48f637SMartin Mares (show_htype2): Stub routine. 23782f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 23792f48f637SMartin Mares upper part of the PCI config space. 2380