12016-10-03 Martin Mares <[email protected]> 2 3 * Released as 3.5.2. 4 5 * The L1 power management capability is now decoded more 6 thoroughly. Thanks to Rajat Jain for the patch. 7 8 * The table of configuration registers used by setpci 9 had a bug in the definition of SUBSYSTEM_VENDOR_ID. 10 112016-05-22 Martin Mares <[email protected]> 12 13 * Released as 3.5.1. 14 15 * Fixed symbol versioning of pci_init(). 16 172016-05-19 Martin Mares <[email protected]> 18 19 * Released as 3.5.0. 20 21 * New capabilities decoded: Downstream Port Containment, 22 Precision Time Measurement. Thanks to Keith Busch and 23 Jonathan Yong. 24 25 * Domain numbers extended to 31 bits. This will be used by the 26 Linux kernel on some machines in near future. 27 28 * Enhanced allocation regions are now decoded on Linux. 29 30 * The NetBSD back-end supports PCIe extended configuration space. 31 32 * Updated pci.ids to the current snapshot of the database. 33 342016-01-03 Martin Mares <[email protected]> 35 36 * Released as 3.4.1. 37 38 * New capabilities decoded: Process Address Space, Page Request 39 Interface, Enhanced Allocation. Thanks to David Daney and 40 David Woodhouse. 41 42 * DevCap SlotPowerLimit is now decoded for all components with 43 upstream ports. 44 45 * Database mirror at SourceForge moved to GitHub. 46 47 * Updated pci.ids to the current snapshot of the database. 48 492015-09-14 Martin Mares <[email protected]> 50 51 * Released as 3.4.0. 52 53 * On Linux, we report NUMA nodes of devices. 54 55 * The sysfs back-end does not die on read errors 56 of optional attributes. Instead, a warning is produced. 57 58 * Fixed several minor bugs. 59 60 * Updated pci.ids to the current snapshot of the database. 61 622015-04-09 Martin Mares <[email protected]> 63 64 * Released as 3.3.1. 65 66 * Removed hacks for backward compatibility with Linux libc5, 67 which were breaking newer non-glibc Linux systems. Thanks 68 to Felix Janda. 69 70 * Display VirtIO vendor-specific capability. Patch by Gerd 71 Hoffmann. 72 73 * Fixed memory leak in name cache. 74 75 * Updated pci.ids to the current snapshot of the database. 76 772014-11-10 Martin Mares <[email protected]> 78 79 * Released as 3.3.0. 80 (celebrating a one-year anniversary of the previous version :)) 81 82 * Device names exported by BIOS are displayed on Linux. 83 84 * On Linux systems, HWDB is used to look up device names 85 when our ID database gives no match. (More precisely, 86 HWDB is consulted after local pci.ids, but before using 87 network to query online pci.ids.) Thanks to Tom Gundersen 88 for the initial patch. 89 90 * Added experimental back-end for OS X / Darwin. Thanks to 91 Richard Yao for providing it. 92 93 * Filters now support matching by device class. Original 94 patch by Matthew Wilcox, wrappers for ABI compatibility 95 by me. 96 97 * Interrupt Pin and Interrupt Line registers are displayed 98 for bridge devices, too. 99 100 * Several portability bugs have been fixed. 101 102 * Several typos have been fixed. Also, use of questionable 103 constructs in man pages has been reduced. 104 105 * PCIe link capabilities now include the ASPMOptComp bit. 106 107 * The "CRS Software Visibility" bit is now decoded properly. 108 109 * Updated pci.ids to the current snapshot of the database. 110 1112013-11-10 Martin Mares <[email protected]> 112 113 * Released as 3.2.1. 114 115 * CardBus bridge capabilities are displayed. 116 117 * PCIe L1 PM substates are decoded. 118 119 * Various bugs were fixed in decoding of PCIe capabilities. 120 121 * The sysfs back-end does not spit out unnecessary warnings when 122 empty slots report only a partial device address. This actually 123 happens on IBM pSeries. 124 125 * Updated pci.ids to the today's snapshot of the database. 126 1272013-04-19 Martin Mares <[email protected]> 128 129 * Released as 3.2.0. 130 131 * On newer Linux systems, we use libkmod to look up kernel modules 132 (modules.pcimap no longer exists). To facilitate this, libpci 133 is able to look up module aliases in sysfs. 134 135 * Various minor bug fixes. 136 137 * Updated pci.ids to the today's snapshot of the database. 138 1392012-06-25 Martin Mares <[email protected]> 140 141 * Released as 3.1.10. 142 143 * Decoding of LTR/OBFF in PCIe capabilities. 144 145 * Various minor bug fixes. 146 147 * Updated pci.ids to the today's snapshot of the database. 148 1492012-01-14 Martin Mares <[email protected]> 150 151 * Released as 3.1.9. 152 153 * Updated README. 154 155 * Wherever we mention the PCI ID database, we now refer to 156 http://pci-ids.ucw.cz/ and the sf.net site is mentioned only 157 as a mirror. This includes update-pciids. 158 159 * Decode PCIe Gen 3 speeds and link status fields. 160 161 * Various minor bug fixes. 162 163 * Updated pci.ids to the today's snapshot of the database. 164 1652011-10-02 Martin Mares <[email protected]> 166 167 * Released as 3.1.8. 168 169 * More capabilities: Transaction Processing Hints, Latency Tolerance 170 Reporting. Thanks to Jesse Barnes. 171 172 * Added BeOS and Haiku ports. Contributed by Francois Revol. 173 174 * pciutils.pc now uses Libs.private properly. 175 176 * When we format a name and it does not fit in the buffer, we truncate 177 it instead of returning "buffer too small" instead. This works on all 178 platforms with sane (i.e., C99-compatible) snprintf(). 179 180 * Various minor bug fixes. 181 182 * Updated pci.ids to the today's snapshot of the database. 183 1842010-01-31 Martin Mares <[email protected]> 185 186 * Released as 3.1.7. 187 188 * Minor improvements and bug fixes in decoding of the Virtual Channel 189 capability. 190 1912010-01-24 Martin Mares <[email protected]> 192 193 * Released as 3.1.6. 194 195 * More capabilities decoded: Virtual Channel (except arbitration 196 tables), Root Complex Link, Vendor-Specific (header only), SATA HBA. 197 198 * All extended capabilities have their version displayed (-vv or more). 199 2002010-01-19 Martin Mares <[email protected]> 201 202 * Released as 3.1.5. 203 204 * Updated pci.ids to the today's snapshot of the database. 205 206 * When scanning extended capabilities, properly mask the lowest 2 bits, 207 which are currently reserved. This avoids unaligned access errors on 208 broken hardware (see tests/broken-ecaps). 209 210 * Large bar sizes are displayed in human-readable format (with units). 211 Thanks to Matthew Wilcox. 212 213 * Physical slot information is displayed correctly for multi-function cards. 214 Fixed by Matthew Wilcox. 215 216 * Fixed a couple of typos everywhere. 217 218 * Library: Fixed bugs in freeing of capabilities. 219 220 * Windows back-end compiles again. 221 2222009-08-14 Martin Mares <[email protected]> 223 224 * Released as 3.1.4. 225 (sorry that I have missed 22/7 and released it later :-)) 226 227 * Updated pci.ids to the today's snapshot of the database. 228 229 * Fixed memory and file descriptor leak in the dump back-end. 230 231 * The SR-IOV capability decoder now prints the VF BAR's. 232 Patch by Chris Wright, cleaned up by me. 233 234 * On request of certain company's lawyers, we now include a copy 235 of the GPL with our package. It seems that the pciutils are getting 236 mature if the most important bug of the month was this one ;-) 237 2382009-07-04 Martin Mares <[email protected]> 239 240 * Released as 3.1.3. 241 242 * Updated pci.ids to the current snapshot of the database. 243 244 * The VPD parser now reports unknown and vendor-defined items 245 properly. It also stops on any item in unknown format, avoiding long 246 output on bogus VPD data. Thanks to Ben Hutchings and Matthew Wilcox. 247 248 * The MSI-X table size now matches the spec. Thanks to Michael S. 249 Tsirkin. 250 251 * The Power Management capability now includes the soft reset bit. 252 Thanks to Yu Zhao. 253 254 * Decoding of the Advanced Features capability has been added. 255 Thanks to Yu Zhao. 256 257 * The whole package compiles on GNU/kFreeBSD again. 258 259 The following patches have been contributed by Matthew Wilcox: 260 261 * The procfs back-end is able to cope with /proc/bus/pci 262 containing names with domains, which occur on sparc64 and 263 possibly other architectures due to a kernel bug. 264 265 * The sysfs back-end no longer complains when a slot address 266 is missing, which happens with old versions of Linux fakephp. 267 268 * The Device Serial Number capability is printed in the right 269 byte order. 270 271 * The MSI and MSI-X capabilities are printed in a prettier way. 272 273 * The tree output mode (`lspci -t') shows domain numbers only 274 at the root, which makes the output more compact. 275 276 * Updated documentation on the bus mapping mode (`lspci -M'). 277 2782009-02-01 Martin Mares <[email protected]> 279 280 * Released as 3.1.2. 281 282 * Fixed another silly bug in the command-line parser of setpci. 283 2842009-01-30 Martin Mares <[email protected]> 285 286 * Released as 3.1.1. 287 288 * Updated pci.ids to the current snapshot of the database. 289 290 * The configure script now sets LC_ALL to avoid being fooled by 291 locale-dependent behavior of `tr'. 292 293 * The command-line parser of setpci did sometimes segfault on invalid 294 input. Thanks to Andreas Wiese for a fix. 295 2962009-01-18 Martin Mares <[email protected]> 297 298 * Released as 3.1.0. 299 300 * Updated pci.ids to the current snapshot of the database. 301 302 * The Cygwin backend now works on Windows Vista. Thanks to Jonathan 303 Kotta. 304 305 * Fixed a bug in decoding of the SR-IOV capability. Patch by Yu Zhao. 306 307 * Details of some PCIe capabilities are displayed only with -vv. 308 309 * When a BAR is reported by the OS, but not by the device (i.e., 310 it is marked as [virtual] in lspci), the [disabled] flag is 311 suppressed, because it does not make sense in such cases. 312 Patch by Yu Zhao. 313 3142008-12-13 Martin Mares <[email protected]> 315 316 * The source code of lspci has been split to multiple files, hopefully 317 making it easier to maintain. 318 319 * The library and lspci now know about physical slot names. So far, 320 they are provided by the sysfs back-end only. Thanks go to Alex Chiang. 321 322 * When a device has the VPD (Vital Product Data) capability and the 323 VPD data are supplied by the OS, they are decoded and printed in the 324 verbose mode. This currently works only on Linux with the sysfs 325 back-end. Thanks to Ben Hutchings of Solarflare for the patch. 326 327 * `setpci --version' now works properly. 328 329 * `setpci --dumpregs' prints a table of all known names of 330 registers and capabilities. This replaces the table of registers 331 in the setpci man page. 332 333 * The dry-run mode of setpci gives better feedback. 334 335 * The setpci utility is now able to address registers stored in PCI 336 capabilities (actually it allows a more general form of relative 337 addressing). 338 339 * The library has gained functions for working with PCI capabilities. 340 341 * Address Translation Services capability is now decoded. Patch by 342 Yu Zhao. 343 3442008-11-09 Martin Mares <[email protected]> 345 346 * Released as 3.0.3. 347 348 * `lspci -k' now displays the subsystem ID, too. This makes `-k' 349 show everything needed to identify the device and the available 350 drivers, which was called for by many users. 351 352 * Fixed spelling of MSI. Patch by Matthew Wilcox. 353 354 * Better support for cross-compilation. Thanks to Alon Bar-Lev 355 for the patch. 356 357 * Fixed printing of the AER capability. Patch by Max Asbock. 358 359 * HT 1.02 capabilities are decoded as HT 1.03. Suggested by 360 Carl-Daniel Hailfinger. 361 362 * Fixed Cygwin build. Thanks to Steve Elliott for reporting the bug. 363 364 * Updated pci.ids to the current snapshot of the database. 365 3662008-09-19 Martin Mares <[email protected]> 367 368 * Released as 3.0.2. 369 370 * Fixed a minor bug in the configure script, which caused warnings 371 about redefinition of symbols during compilation. 372 3732008-09-11 Martin Mares <[email protected]> 374 375 * Released as 3.0.1. 376 377 * Updated pci.ids to the most recent snapshot. 378 379 * Added a Cygwin port. Patch by Christopher Voltz, ported to the 380 current tree by Martin Mares. 381 382 * Worked around compatibility problems with various default settings 383 of wget (we have to set --no-timestamping explicitly). Thanks to Ville 384 Skytta for pointing that out. 385 386 * Fixed printing of MSI capabilities. Thanks to Matthew Wilcox for 387 a patch. 388 389 * Added decoding of several PCI-X capabilities: device/link/slot 2, 390 Advanced Error Reporting, Access Control Services, Alternative Routing-ID, 391 Single Root I/O Virtualization. Thanks to Yu Zhao for patches. 392 393 * Fixed bug in filters which caused them to refuse vendor/device ID 0xffff. 394 395 * README: The linux-pci mailing list has moved to [email protected]. 396 397 * Fixed several build problems: builds without PCI_USE_DNS on Linux 398 and with PCI_USE_DNS on Solaris and *BSD. Static library mode also 399 compiles again on old versions of GCC. 400 4012008-04-10 Martin Mares <[email protected]> 402 403 * Released as 3.0.0. 404 405 * Updated API and ABI version. 406 4072008-02-20 Martin Mares <[email protected]> 408 409 * Released as 2.99.1-alpha2. 410 411 * Changed the default domain for the DNS resolver. 412 4132008-02-18 Martin Mares <[email protected]> 414 415 * Released as 2.99.1-alpha1. 416 417 * The makefile system has been reworked. All configuration settings 418 are now passed to the configure script in environment variables, 419 allowing for easy tweaking in the top-level Makefile. All control 420 knobs are now described in the README. 421 422 * The libpci can be built as a shared library with properly restricted 423 symbol exports. Use `make SHARED=yes' to enable that or `make SHARED=local' 424 for a local testing build (with hardwired paths to the library, so that 425 it does not need installation). 426 427 * The example program has been moved from lib/example.c to the top-level 428 directory, because it should be built exactly as the other utilities 429 are. It has been also improved slightly to educate better. 430 431 * The i386-ports method is enabled on Linux/x86_64 as well. 432 4332008-02-13 Martin Mares <[email protected]> 434 435 * Released as 2.2.10-net2. 436 437 * Support for resolving of PCI ID's using DNS together with a local 438 cache of resolved entries has been added. See the `-q' and `-Q' options 439 of lspci. 440 441 * The library now has a generic system of settable parameters, which 442 also include settings of the DNS resolver and cache. An `-O' option 443 has been added to lspci and setpci to allow setting of these options. 444 445 * Configuration of the access methods are now specified by the new 446 parameter system, replacing the pci_access->method_params array. 447 448 * Access methods now also have sensible names and help texts and it 449 is possible to look up method ID by a name. 450 451 * An `-A' switch has been added to both lspci and setpci, allowing to 452 select an arbitrary access method. The `-P' switch (configure proc 453 backend) has been removed as it is no longer needed and I do not know 454 any its user. 455 456 * Several source files have been split for better maintainability 457 (most notably the resolving of ID's). 458 459 * Man pages and help texts have been updated. A new man page `pcilib(7)' 460 has been added and description of library options has been moved there. 461 462 * When an unknown device ID is encountered, we print `Device <id>' 463 instead of `Unknown device <id>'. It uses less space and it also 464 should reduce the number of inexperienced users complaining that 465 the device is not supported by the OS. To lookup up OS drivers, 466 use the `-k' option. 467 468 * PCI_LIB_VERSION has been bumped to 0x020299. 469 470 * Makefile: stripping of the binaries during installation can be 471 overridden by the STRIP variable. 472 473 * lib/types.h: We use the integer types from <stdint.h> if the 474 compiler claims C99 support. 475 4762008-02-11 Martin Mares <[email protected]> 477 478 * Released as 2.2.10. 479 480 * lspci.c, setpci.c: Cleaned up the list of options. 481 482 * lib/names.c: Fix displaying of errors reported by zlib. 483 Previously, the buffer containing the error message had 484 been deallocated by gzclose() before the message was printed. 485 4862008-01-07 Martin Mares <[email protected]> 487 488 * update-pciids.sh: Added quiet mode (-q). Clean up uncompressed 489 files left by previous versions of the pciutils. Patch by Mike 490 Frysinger. 491 492 * update-pciids.man: Mention the -q switch. 493 4942007-11-29 Martin Mares <[email protected]> 495 496 * lib/dump.c: Squashed compiler warnings about code with 497 no effect (there really were surplus *'s). 498 4992007-11-06 Martin Mares <[email protected]> 500 501 * Released as 2.2.9. 502 503 * lspci.c: Added a new switch `-k' which requests printing 504 of information on kernel drivers attached to each device 505 and on kernel modules reporting the ability to handle the 506 device. So far, this is supported only on Linux with the 507 sysfs back-end, so it is implemented internally in the lspci 508 instead of the libpci. Thanks to Anicka <[email protected]> 509 for help. 510 5112007-10-19 Martin Mares <[email protected]> 512 513 * Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS. 514 Also added an explicit pattern rule for linking to make sure 515 that LDLIBS is used on all platforms. Thanks to Dan Nicholson 516 for the suggestion. 517 5182007-10-19 Martin Mares <[email protected]> 519 520 * Released as 2.2.8. 521 522 * pci.ids: Revised class codes to match Conventional PCI 3.0 specs. 523 Added a couple of new ones, renumbered `ADMA continuous operation' 524 prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention 525 0x40) and renumbered the satellite communication controllers. 526 527 * lib/header.h: Include `PCI hot-plug' and `Secure device' 528 capabilities from PCI 3.0 specs. Also added `SATA HBA' and 529 `Advanced features' caps from various ECN's. 530 531 * lspci.c: All known capabilities have at least their name displayed 532 now. When we are unable to decode them completely, we signalize it 533 with a `<?>' mark. 534 535 * lspci.man: Document `<?>' and also mention that extended config 536 space is currently available only with the linux_sysfs back-end. 537 538 * lspci.c: Decode the Debug port capability (per EHCI 0.96 spec). 539 540 * lspci.c: Big code cleanup: re-arranged functions in the code, 541 renamed everything related to capabilities to cap_* and 542 all options except verbose to opt_*. 543 5442007-10-14 Martin Mares <[email protected]> 545 546 * lib/[fno]bsd-*: Removed extraneous braces. 547 5482007-10-12 Martin Mares <[email protected]> 549 550 * Capability loop detection introduced 2.2.7 did not work 551 properly with extended capabilities. Fixed. 552 5532007-10-05 Martin Mares <[email protected]> 554 555 * Released as 2.2.7. 556 557 * lspci.c (show_caps, show_ext_caps): Detect and report loops in 558 capability lists. 559 560 * lspci.c, lib/header.h: Finished decoding of the PCI Express 561 capability. The extended capabilities remain undecoded for now, 562 but at least the list of them has been updated to reflect the 563 current PCI Express 2.0 spec. 564 565 * lspci.c, lib/header.h: Decode new bits of traditional registers 566 as defined by PCIE / PCI-X. This includes discard timers in the bridge 567 control register and INTx enable/status in device control/status 568 registers. 569 570 * lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed 571 by Marius Strobl. 572 5732007-09-12 Hasso Tepper <[email protected]> 574 575 * Extended the fbsd-device backend to run on Dragonfly BSD. 576 577 * lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>. 578 5792007-09-03 Martin Mares <[email protected]> 580 581 * Resurrected the Windows port, including cross-compilation by MinGW. 582 Patch by Samuel Bronson <[email protected]>. 583 5842007-08-31 Martin Mares <[email protected]> 585 586 * Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to allow 587 cross-compilation. 588 5892007-08-27 Martin Mares <[email protected]> 590 591 * lib/names.c (pci_open): When calling gzopen(), use "rb" file mode 592 instead of "r". This is needed on DOS systems, where this function 593 somewhat illogically uses the binary flag for the compressed file 594 instead of the decompressed stream inside, where binariness really 595 matters. 596 5972007-08-14 Martin Mares <[email protected]> 598 599 * lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability, 600 based on a patch by Jason Gunthorpe. 601 602 * tests/cap-MSI-mapping: Added a test case. I plan to add test cases 603 (which are dumps of config space) for all new features. 604 6052007-06-20 Martin Mares <[email protected]> 606 607 * Released as 2.2.6. 608 609 * Makefile: Added an "install-lib" target. Thanks to Dan Nicholson 610 for a patch. 611 612 * Makefile, lib/Makefile: Generate and install pkg-config file 613 for libpci. Again by Dan Nicholson. 614 6152007-06-20 Thomas Schwinge <[email protected]> 616 617 * lib/i386-io-hurd.h: Rewritten for new Hurd kernels. 618 6192007-05-04 Martin Mares <[email protected]> 620 621 * Released as 2.2.5. 622 623 * pci.ids: Updated to the current snapshot of the database. 624 6252007-02-14 Martin Mares <[email protected]> 626 627 * lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type. 628 Patch by Mark Glines. 629 6302007-02-09 Martin Mares <[email protected]> 631 632 * pci.ids: Updated to the current snapshot of the database. 633 6342007-02-06 Martin Mares <[email protected]> 635 636 * Replaced bzero() by memset() everywhere, it's better to lose a tiny 637 bit of readability than maintain hacks to make it work on various systems. 638 639 * lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]' 640 instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise. 641 642 * lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise 643 integer types. 644 6452007-02-04 Martin Mares <[email protected]> 646 647 * lspci.c: alloca() needs <alloca.h>. 648 6492006-09-17 Martin Mares <[email protected]> 650 651 * lib/dump.c: Fixed a couple of bugs in the dump backend which caused 652 devices with domains or with extended config space to be read incorrectly. 653 Also, dumps with partial lines are allowed now. 654 6552006-09-10 Martin Mares <[email protected]> 656 657 * pci.ids: Updated to the current database snapshot. 658 659 * lspci.c (scan_device): If an error occurs when reading the standard config 660 header of a device, report it and ignore the device and return with exit 661 code 2 at the end. 662 6632006-09-09 Martin Mares <[email protected]> 664 665 * Released as 2.2.4. 666 667 * maint/release: Remind the maintainer about the current PCI_LIB_VERSION. 668 669 * lib/pci.h: Updated PCI_LIB_VERSION. 670 671 * lspci.c (show_machine): In the `-m' mode, do proper shell escaping 672 if the fields printed contain quotes or backslashes. 673 674 * lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse 675 of the `Device' tag for two different purposes. 676 677 * Makefile: Moved all system-dependent decisions to lib/configure, 678 since config.mk is included in the top-level Makefile anyway. 679 680 * lib/configure: When configuring for Linux, ignore the kernel version 681 and always build all access methods. 682 683 * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers 684 at many non-interesting places with gcc 3.4. 685 686 * Whitespace cleanup of all source files. 687 688 * The pci.ids file can be stored compressed if zlib is available. 689 Added transparent decompression to lib/names.c, modified update-pciids.sh 690 to keep the file compressed if applicable, updated Makefiles. 691 Based on a patch by Matthew Wilcox, but all the bugs are mine. 692 693 * Makefile, README: Allow installation to be done to a different directory 694 from the one we will eventually be placed in by setting DESTDIR. 695 Patch by Matthew Wilcox. 696 697 * Added .gitignore files. 698 699 * Makefile (clean): Clean *.orig, too. 700 701 * Cleaned up usage of `char' and `byte'. 702 703 * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 704 705 * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 706 defined in the pci.ids file. 707 7082006-08-01 Martin Mares <[email protected]> 709 710 * lib/i386-io-hurd.h: Fixed a silly typo. 711 7122006-07-30 Martin Mares <[email protected]> 713 714 * lib/Makefile: Added a missing rule for obsd-device.o. 715 716 * lspci.c, lib/header.h: Added support for MSI per-vector masking. 717 Contributed by Petr Vandrovec. 718 719 * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 720 capability. Contributed by Petr Vandrovec. 721 722 * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 723 memory windows. Fix by Petr Vandrovec. 724 725 * maint/release.pm: Exclude .git directory from releases. 726 727 * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 728 initialization by a->warn() instead of calling printf() or perror() 729 directly. 730 731 * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 732 the port access state to generic code. 733 734 * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 735 Contributed by Thomas Schwinge and Samuel Thibault. 736 737 * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 738 739 * lib/header.h: Whitespace cleanups. 740 741 * lib/i386-io-windows.h: Fixed indentation and spelling. 742 743 * README.Windows: Mention that WinIO.dll is needed and where to get it. 744 7452006-06-27 Martin Mares <[email protected]> 746 747 * lib/Makefile, Makefile: Added rules for building and cleaning the example. 748 749 * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 750 for demonstrating the config space accesses. The example is still very 751 incomplete, though. 752 753 * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 754 755 * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 756 be modified by kernel fixups. 757 758 * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 759 7602006-06-03 Martin Mares <[email protected]> 761 762 * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 763 for the idea. 764 765 * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 766 cleaned up the name selection code. 767 768 * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 769 pci_access->numeric_ids is ignored. 770 771 * lib/names.c (pci_lookup_name): When class is identified and 772 subclass isn't, display class name and subclass number. 773 7742006-05-31 Martin Mares <[email protected]> 775 776 * setpci.c (main): Don't crash when an invalid width is specified. 777 778 * lspci.c, setpci.c, common.c: die() now uses the right program 779 name when printing an error message. 780 7812006-05-19 Martin Mares <[email protected]> 782 783 * README: Mention the public GIT tree. 784 785 * README: Updated the list of ports. 786 7872006-05-10 Martin Mares <[email protected]> 788 789 * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 790 Thanks to Petr Salinger for the patch. 791 7922006-05-05 Martin Mares <[email protected]> 793 794 * Released as 2.2.3. 795 796 * lspci.c (scan_device): The -D switch didn't work as intended 797 in -m mode. 798 7992006-05-05 Martin Mares <[email protected]> 800 801 * Released as 2.2.2. 802 803 * pci.ids: Updated to the current database snapshot. 804 805 * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 806 interface by Matthieu Herrb <[email protected]>, based on 807 the existing FreeBSD interface. 808 809 * Moved pciutils to a GIT repository, which now contains merged 810 history from both CVS and Arch. Good bye, TLA! 811 8122006-03-21 Martin Mares <[email protected]> 813 814 * lspci.c (show_slot_name): Avoid the previous changes in default 815 display of domain name when in machine-readable mode. However, `-D' 816 forces domain display even there. 817 818 * lspci.man: Added a warning on -m being the only format, which is 819 guaranteed to be stable between lspci versions. 820 8212006-03-13 Martin Mares <[email protected]> 822 823 * lspci.man: Documented the -D switch. 824 825 * lspci.c (show_slot_name, scan_device): If there are multiple PCI 826 domains or if the `-D' switch is used, show the domain number for 827 all devices. 828 829 * lspci.c (show_verbose): Report cache line size in bytes. 830 831 * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 832 8332006-01-04 Martin Mares <[email protected]> 834 835 * lspci.c (show_express_link): Fixed decoding of link status register. 836 Thanks to Roland Dreier for his report. 837 8382005-12-12 Martin Mares <[email protected]> 839 840 * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 841 at least read-only access. Patch by Pavel Celeda <[email protected]>. 842 843 * Makefile: Corrected library path on NetBSD. 844 8452005-11-26 Martin Mares <[email protected]> 846 847 * Released as 2.2.1. 848 849 * lspci.c (show_machine): Subsystem vendors were printed incorrectly 850 in machine-readable modes. Thanks to Pavel Celeda for a bug report. 851 8522005-10-11 Martin Mares <[email protected]> 853 854 * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 855 8562005-09-21 Martin Mares <[email protected]> 857 858 * Released as 2.2.0. 859 860 * pci.ids: Updated copyright header. 861 862 * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 863 64-bit addresses, they are now always supported. 864 865 * lspci.c (show_bases): Corrected printing of 64-bit addresses 866 in bus-centric mode. 867 868 * lib/configure: Enable 64-bit addresses on all Linux systems. 869 870 * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 871 are shorter. 872 8732005-09-11 Martin Mares <[email protected]> 874 875 * Released as 2.1.99-test11. 876 877 * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 878 8792005-09-10 Martin Mares <[email protected]> 880 881 * Released as 2.1.99-test10. 882 883 * pci.ids: Synchronized with the current database snapshot. 884 885 * update-pciids.sh: Changed the default URL for downloading pci.ids 886 to http://pciids.sourceforge.net/v2.2/pci.ids. 887 888 * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 889 890 * lib/names.c: Rewritten the name database module almost from scratch. 891 Everything is much cleaner and there are hopefully no more memory leaks; 892 pci_lookup_name() now uses varargs in a backward compatible fashion. 893 Introduced PCI_LOOKUP_NO_NUMBERS. 894 895 The new code supports subsystem entries not tied to a specific device. 896 I had to extend the format of pci.ids in order to support it, so I have 897 extended the idea of the "C" (class) blocks and introduced "S" blocks 898 for subsystems. To avoid doing more incompatible changes in the future, 899 the parser skips unknown single-letter blocks without reporting errors. 900 9012005-08-23 Martin Mares <[email protected]> 902 903 * Released as 2.1.99-test9. 904 905 * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 906 gcc versions when optimizing anyway. 907 908 * Made the path to pci.ids customizable and independent on the SHAREDIR. 909 Just override IDSDIR in the top-level Makefile. 910 911 * pci.ids: Synchronized with the current database snapshot. 912 913 * lspci.man, setpci.man: Improved the man pages. Documented all access 914 methods and which operations are privileged. 915 916 * lspci.c: Another rewrite of config register caching, now also including 917 lots of internal checks. It should be now perfectly able to cope with 918 portions of the configuration space being inaccessible, for example 919 due to insufficient access rights. 920 921 * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 922 capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 923 as I haven't seen the spec). 924 925 * lspci.c: Quell warnings about unused parameters. 926 927 * lspci.c: Removed C++ comments. 928 929 * lib/header.h: Merged definitions of extended capabilities and some new 930 PCI-X capability bits from linux-2.6.11/include/pci.h. 931 932 * lspci.c (show_caps): Try to scan extended capabilities only if the 933 device has either PCI-X or PCI Express capability in its normal capability 934 list. 935 936 * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 937 now also remembers how much data it has read and refuses attempts to 938 access more than that. 939 940 * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 941 942 * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 943 944 * lib/configure: Added x86_64 on Linux. 945 9462005-08-22 Martin Mares <[email protected]> 947 948 * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 949 Thanks to Matthew Wilcox for bug report. 950 951 * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 952 Thanks to Krzysztof Oledzki for pointing that out. 953 9542004-08-19 Martin Mares <[email protected]> 955 956 * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 957 because pciutils by default install to /usr/sbin. Update. 958 9592004-08-13 Martin Mares <[email protected]> 960 961 * Released as 2.1.99-test8. 962 963 * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 964 no longer exported to the outside world. 965 966 * README.Windows: Updated. 967 968 * maint/release: Substitute version number in win32/config.h. 969 970 * win32/config.h: Added. 971 972 * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 973 974 * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 975 C library for use on systems where the default libraries lack 976 proper getopt. Currently used by the Windows port. 977 978 * lib/sysdep.h, lib/types.h: Updates of the Windows port from 979 Alexander Stock. 980 981 * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 982 its own u8, u16, u32, byte and word types and uses what the user 983 has supplied instead. With this change, all namespace clashes should 984 be gone. 985 986 * Makefile, lib/Makefile: Updated dependencies. 987 988 * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 989 990 * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 991 it is included unconditionally in lib/types.h. 992 993 * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 994 which is also used by the utilities. Also moved type declarations 995 from lib/pci.h to lib/types.h. 996 997 * All files: Prepend a "PCI_" prefix in front of all configuration 998 defines to avoid namespace clashes. CAVEAT: If there is any libpci 999 application using the (undocumented) defines, it has to be updated. 1000 1001 * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 1002 headers with the kernel a couple of years ago. 1003 1004 * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 1005 1006 * lspci.c (show_rom): Use the same logic for printing disabled 1007 or unassigned ROM's as we do in show_bases() for the other BAR's. 1008 1009 * lib/generic.c (pci_generic_fill_info): Better reaction to 1010 invalid 64-bit addresses. Also d->hdrtype should not include 1011 bit 7, which caused mysterious errors on multi-function devices. 1012 1013 * lib/generic.c (pci_generic_fill_info): Fill in base addresses 1014 even if the regions are known to be disabled. It is the client's 1015 job to interpret them. (And it is not a trivial job if you want 1016 to do it correctly, since you need to check I/O and memory enables 1017 on all upstream bridges, too.) However, it could be interesting to 1018 introduce functions for interpreting the addresses and even for 1019 mapping the regions and doing I/O on them. 1020 10212004-07-30 Martin Mares <[email protected]> 1022 1023 * lspci.c: HyperTransport improvements from Maciej. 1024 10252004-07-11 Martin Mares <[email protected]> 1026 1027 * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 1028 to the format string. [Patch by Bill Nottingham] 1029 10302004-07-05 Martin Mares <[email protected]> 1031 1032 * Released as 2.1.99-test7. 1033 1034 * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 1035 ended up with rewriting the fetching mechanism to be fully dynamic, 1036 but avoid reading config space registers not explicitly requested. 1037 10382004-06-29 Matthew Wilcox <[email protected]> 1039 1040 * lspci.c: More work on PCI Express dumping. 1041 1042 * lib/header.h: Updated PCI Express capability definitions. 1043 1044 * lib/proc.c (proc_read): Removed bogus warning. 1045 1046 * common.c (xrealloc): Introduced. 1047 1048 * lspci.man: Added -xxxx. 1049 10502004-06-27 Martin Mares <[email protected]> 1051 1052 * Released as 2.1.99-test6. 1053 1054 * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 1055 Patch by Roland Dreier <[email protected]>, cleaned up by me. 1056 1057 * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 1058 failures. 1059 1060 * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 1061 1062 * lspci.c (show_express): Added dumping of PCI Express cap. 1063 Patch by Matthew Wilcox. 1064 1065 * lib/header.h: Added a list of PCI 3.0 capabilities and also details 1066 on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 1067 1068 * lspci.c (check_root): Gone. No explicit checks for root are needed, 1069 report correct errors reported by the libpci instead. 1070 1071 * lspci.c: Added dumping of the extended config space on "-xxxx". 1072 Better caching of config registers. 1073 1074 * setpci.c (main): Allow access to whole 4096 bytes of the config space. 1075 1076 * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 1077 just return the appropriate error code. 1078 1079 * lib: Added support for extended (4096-byte) configuration space, 1080 currently implemented only in Linux proc and sysfs access methods 1081 and of course in the dump reader. 1082 10832004-05-29 Martin Mares <[email protected]> 1084 1085 * Released as 2.1.99-test5. 1086 1087 * lib/pci.h: Windows don't have the standard u_int* types. 1088 1089 * lib/internal.h: <sys/param.h> required on Windows for endianity 1090 macros. 1091 1092 * lib/i386-ports.c: Connected i386-io-windows.h. 1093 1094 * lspci.c (check_root): geteuid() is not available on Windows. 1095 1096 * lib/i386-io-windows.h: Added Windows port contributed by Alexander 1097 Stock <[email protected]>. 1098 1099 * lib/configure: Hopefully fixed SunOS port broken by various 1100 changes to the configure script. 1101 1102 * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 1103 11042004-05-28 Martin Mares <[email protected]> 1105 1106 * Released as 2.1.99-test4. 1107 1108 * lspci.c (show_verbose): Header type 1 is probably legal for all 1109 types of bridges, not only for PCI-to-PCI bridges. 1110 1111 * lspci.c (format_agp_rate): Write "x16", not "x@". 1112 (show_agp): rate[] could overflow. 1113 Bugs reported by Jakub Bogusz <[email protected]>. 1114 1115 * lspci.c (show_ht_*): Show HyperTransport capability with all its 1116 details. Once again code by Maciej simplified (i.e., possibly broken) 1117 by me. 1118 1119 * lib/header.h: Added declarations of HyperTransport capability. 1120 Again thanks to Maciej. 1121 1122 * lspci.c: Decode all bits of the secondary status word in type 1 headers. 1123 Thanks to Maciej W. Rozycki <[email protected]> for the patch. 1124 11252003-12-27 Martin Mares <[email protected]> 1126 1127 * Released as 2.1.99-test3. 1128 1129 * lspci.man, setpci.man: Document domains and correct spelling. 1130 1131 * lib/dump.c (dump_init): Added ability to read domain numbers. 1132 1133 * lspci.c: Devices in domains different from 0 have their slot number 1134 printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 1135 as well. 1136 1137 * lib/filter.c: Slot filters understand domains. 1138 1139 * lib/generic.c: Mention the domain in slot numbers in all error messages. 1140 1141 * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 1142 1143 * lib/access.c (pci_get_dev): Added support for domains. 1144 1145 * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 1146 registers (or to be precise, leave it for the generic parts of the pcilib 1147 to do so) instead of reading them from the sysfs. It's faster this way. 1148 1149 * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 1150 variable. Better read it from the config registers (it's cached anyway). 1151 1152 * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 1153 lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 1154 Saves lots of unnecessary file accesses. 1155 1156 * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 1157 is not supported by all C libraries. 1158 1159 * Makefile: Always enter the lib directory (remember that we don't have 1160 full dependecies for the library in the top-level Makefile; hmmm, another 1161 thing to rewrite some day). 1162 1163 * lib/sysfs.c: Added Linux sysfs access method based on the patch 1164 written by Matthew Wilcox <[email protected]>. 1165 1166 * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 1167 1168 * lib/pread.h: The hacks to support pread on various versions 1169 of Linux libc moved there. 1170 1171 * lib/proc.c (proc_setup): The return value of snprintf() varies 1172 between glibc versions, so we need to check both for a negative 1173 values and for too large values. 1174 1175 * Removed last few references to the "Linux PCI Utilities", the 1176 package is pretty cross-platform now :) 1177 11782003-12-27 Martin Mares <[email protected]> 1179 1180 * Released as 2.1.99-test2. 1181 1182 * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 1183 release scripts insert the current version. "make release" is gone. 1184 1185 * maint/release, maint/release.pm: Added a new system of scripts for 1186 making releases including inter-version diffs etc. 1187 1188 * Makefile: Cleaned up. 1189 1190 * lib/fbsd-device.c: I patched another copy of this file by mistake, 1191 this time the version checks should be right. 1192 11932003-12-27 Martin Mares <[email protected]> 1194 1195 * Released as 2.1.99-test1. 1196 1197 * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 1198 Remove shadows of the syscall access method which was never 1199 implemented. 1200 1201 * update-pciids.sh: Try to preserve permissions of the old file 1202 if chmod supports --reference. Should close Debian Bug #223740. 1203 1204 * lib/proc.c (proc_setup): Increased path name length limit to 1024. 1205 Thanks for Redhat and Mandrake for inspiration. 1206 1207 * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 1208 Grabbed from Redhat (Fedora) patches. 1209 12102003-12-27 Martin Mares <[email protected]> 1211 1212 Merged bug fixes from Debian patches: 1213 1214 * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 1215 1216 * lspci.c (show_pcix_nobridge): Added a missing newline. 1217 1218 * lib/proc.c (proc_scan): When reading the header type, don't 1219 forget to clear the topmost bit indicating that the device has 1220 multiple functions. 1221 12222003-12-27 Martin Mares <[email protected]> 1223 1224 Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 1225 for the patches: 1226 1227 * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 1228 * lib/fbsd-device.c: Select the right set of system includes according 1229 to __FreeBSD_version. 1230 12312003-12-27 Martin Mares <[email protected]> 1232 1233 Merged support for Solaris on i386 by Bill Moore <[email protected]> 1234 and cleaned up: 1235 1236 * lib/configure: Recognize SunOS. 1237 * lib/internal.h: Learn how to recognize byte order on SunOS. 1238 * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 1239 * lib/i386-io-linux.h: Linux specific part. 1240 * lib/i386-io-hurd.h: GNU/Hurd specific part. 1241 * lib/i386-io-sunos.h: SunOS specific part. 1242 12432003-12-26 Martin Mares <[email protected]> 1244 1245 * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 1246 1247 * lib/pci.h: Types declared in <sys/types.h> should be usable on all 1248 platforms we currently support, so kill the forest of #ifdef's and 1249 use them in all cases. 1250 1251 * lib/pci.h: Use ULONG_MASK to decide whether we should use long 1252 or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 1253 Define format strings for addresses, port numbers and IRQ numbers 1254 directly in pci.h. 1255 1256 * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 1257 12582003-12-26 Marco Gerards <[email protected]> 1259 1260 Added support for the GNU Hurd (cleaned up by Martin Mares): 1261 1262 * lib/configure [GNU]: Use the i386 ports for configuration access. 1263 * lib/i386-ports.c: Don't call iopl() on the Hurd. 1264 * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 1265 u8 to u32. 1266 12672003-12-26 Martin Mares <[email protected]> 1268 1269 * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 1270 config_fetch() to ensure that the registers have been read. Thanks to 1271 Bill Wood <[email protected]> for the patch. 1272 1273 * lspci.c: Ensure that failure of config_fetch() is handled correctly 1274 at all places. 1275 1276 * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 1277 Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 1278 1279 * setpci.c (main): Better error messages. 1280 1281 * setpci.c (ex_op): The demo mode should disable only writing, not reading. 1282 1283 * setpci.man: The documentation was inconsistent on what should -D do. 1284 Document the new behaviour. 1285 1286 * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 1287 the GCC specific __attribute__((noreturn)) and killed the hack with 1288 redefining __attribute__ on non-GCC compilers. 1289 1290 * Makefile: Added missing dependencies. Parallel builds work now. 1291 Problem reported by Andreas Haumer <[email protected]>, but I chose 1292 a different fix. 1293 1294 * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 1295 command every time $(MANDIR) is referenced. 1296 1297 * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 1298 a `-f' switch. Reported by Steve Finney <[email protected]>. 1299 1300 * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 1301 Reported by Gary Parnes <[email protected]>. 1302 1303 * Replaced obsolete syntax of __attribute__((unused)) in the middle of 1304 parameter declarations (which is no longer supported by GCC 3.1) by the 1305 current syntax (attribute at the end). Thanks to [email protected] 1306 for reporting this problem. 1307 1308 * Removed CVS $Id$ tags from all files. 1309 1310 * Makefile: Added some more warnings. 1311 1312 * setpci.c: Cleaned up mask/value code. 1313 13142003-12-08 Thayne Harbaugh <[email protected]> 1315 1316 * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 1317 13182003-11-29 Martin Mares <[email protected]> 1319 1320 * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 1321 13222003-01-04 Martin Mares <[email protected]> 1323 1324 * Released as 2.1.11. 1325 1326 * Makefile: Changed configuration of installation directories -- 1327 all paths are now set at the top of the Makefile instead of being 1328 scattered between the installation rules. The default installation 1329 now goes always to /usr/local regardless of the OS as most distributions 1330 already contain some version of pciutils and we don't want custom 1331 installations to interfere with the default ones. 1332 1333 * Makefile: Removed a couple of ancient install hacks: we no longer 1334 try to avoid overwriting a newer pci.ids file (users are now expected 1335 to use update-ids) and we don't try to remove /etc/pci.ids (a long time 1336 has passed since the last version which used it). 1337 1338 * Makefile: Paths to pci.ids in man pages automatically get the right path. 1339 1340 * Added the update-ids utility. 1341 1342 * lib: Removed partially implemented "syscall" access method which will 1343 probably never be needed. 1344 13452002-12-27 Martin Mares <[email protected]> 1346 1347 * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 1348 1349 * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 1350 discontiguous numbering of functions. This is already present in the Linux 1351 kernel for several years, but I forgot to update pciutils as well. 1352 13532002-12-26 Martin Mares <[email protected]> 1354 1355 * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 1356 1357 * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 1358 there is no reason to prefer the kernel version. 1359 1360 * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 1361 1362 * Added preliminary version of NetBSD support by Quentin Garnier 1363 <[email protected]>. 1364 13652002-04-06 Martin Mares <[email protected]> 1366 1367 * lspci.c: Mention "-xxx" in the help. 1368 13692002-03-30 Martin Mares <[email protected]> 1370 1371 * Released as 2.1.10. 1372 1373 * Removed pci.ids from the CVS as they are now maintained separately. 1374 They are still included in the tarball, but if you are building pciutils 1375 from CVS sources or you want to get a newer ID file than the one distributed, 1376 just use "make update-ids" to download the most recent snapshot from 1377 pciids.sf.net. 1378 1379 * Makefile, README: Updated accordingly. 1380 1381 * Makefile: Added a couple of maintenance targets. 1382 1383 * maint/*: Maintainer's utilities now reside here (present only in CVS, 1384 not in the tarball). 1385 1386 * lib/names.c (parse_name_list): End-of-line comments are no longer 1387 supported. Hashes are now perfectly valid in all names and they start 1388 a comment only at the start of the line. 1389 13902002-03-26 Martin Mares <[email protected]> 1391 1392 * README: Rewritten. 1393 1394 * Makefile: When the currently installed pci.ids file is newer than 1395 the version to be installed, don't overwrite it. Suggested by 1396 Jean Delvare <[email protected]>. 1397 13982002-03-24 Martin Mares <[email protected]> 1399 1400 * lspci.c (show_pcix_bridge): Added PCI-X capability display. 1401 Contributed by Jeff Garzik <[email protected]>. 1402 1403 * lib/header.h: Added PCI-X stuff. Again by Jeff. 1404 1405 * Makefile (CFLAGS): -Werror is gone. 1406 1407 * lspci.c (format_agp_rate): Fixed AGP rate reporting. 1408 1409 * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 1410 function 7. 1411 1412 * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 1413 or device hexadecimally, don't confuse it with chip vendor/device ID. 1414 First reported by Marc Boucher <[email protected]>. 1415 14162001-11-04 Martin Mares <[email protected]> 1417 1418 * Released as 2.1.9. 1419 1420 * pci.ids: Synced with the PCI ID Repository at SourceForge 1421 (http://pciids.sourceforge.net/). 1422 14232000-08-25 Martin Mares <[email protected]> 1424 1425 * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 1426 14272000-06-13 Martin Mares <[email protected]> 1428 1429 * Makefile (uninstall): Fixed. 1430 1431 * pci.ids: ID updates. 1432 14332000-05-20 Martin Mares <[email protected]> 1434 1435 * Released as 2.1.8. 1436 1437 * pci.ids: ID updates. 1438 1439 * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 1440 14412000-05-04 Martin Mares <[email protected]> 1442 1443 * lspci.c (show_verbose): If the header type doesn't match device 1444 class, just print a warning and still use the header type, assuming 1445 bogus class info. 1446 14472000-05-01 Martin Mares <[email protected]> 1448 1449 * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 1450 1451 * pci.ids: Updated Contemporary Control ARCnet card entries. 1452 1453 * pci.ids: Synchronized class list with latest PCI SIG documents. 1454 14552000-04-29 Martin Mares <[email protected]> 1456 1457 * lib/names.c (pci_lookup_name): Fixed the cheat. 1458 1459 * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 1460 1461 * pci.ids: Various ID updates. 1462 14632000-04-21 Martin Mares <[email protected]> 1464 1465 * Released as 2.1.7. 1466 1467 * pciutils.spec: Added German description. 1468 1469 * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 1470 are the same as device ID and just output subsystem name according to 1471 device name. 1472 1473 * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 1474 1475 * lib/pci.h: Added the correct typedefs for AIX. 1476 1477 * lib/generic.c (pci_generic_scan_bus): Export. 1478 1479 * lib/configure: Detect AIX. Use "echo '...\c'" instead of 1480 "echo -n" if the shell isn't bash. 1481 1482 * lspci.c: Avoid using alloca() if not compiled by GCC. 1483 (insert_dev): Avoid returning a void value. 1484 1485 * Makefile: Choose which install utility to use according to 1486 OS type. Also use `-o' instead of `-or' in find arguments. 1487 Part of the AIX port. 1488 1489 * lib/aix-device.c: Added AIX low-level interface. Contributed 1490 by Dave Johnson <[email protected]>, thanks a lot! 1491 1492 * pci.ids: Few new ID's. 1493 1494 * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 1495 when not compiled by GCC. 1496 14972000-04-17 Martin Mares <[email protected]> 1498 1499 * Released as 2.1.6. 1500 1501 * pci.ids: Added a large batch of ID's contributed by Gunther 1502 Mayer <[email protected]> and synced the 1503 list with the 2.3.99pre6 kernel. 1504 1505Thu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 1506 1507 * lib/example.c: Added a simple example of how to use 1508 the library. 1509 1510 * lspci.man, setpci.man: Revealed --version. Well spotted 1511 by Adam Sulmicki. 1512 1513 * pci.ids: Added lots of new ID's and synced with 2.3.50. 1514 1515Tue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 1516 1517 * Released as 2.1.5. 1518 1519 * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 1520 %{_mandir} to find the right location to install manual pages to. 1521 1522 * pci.ids: New ID's. 1523 1524 * setpci.c (main): Don't crash when `-s' or `-d' is given with 1525 no argument. 1526 1527Mon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 1528 1529 * lib/i386-ports.c: Include <asm/io.h> only on systems without 1530 glibc. 1531 1532Mon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 1533 1534 * Makefile: Modified to work with the Linux FHS brain-damaged idea 1535 of putting man pages to /usr/share/man. Now we choose either /usr/man 1536 or /usr/share/man depending on which one exists. 1537 1538Sun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 1539 1540 * pci.ids: Synced with Linux 2.3.40. 1541 1542 * Released as version 2.1.4. 1543 1544Thu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 1545 1546 * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 1547 1548 * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 1549 1550 * lspci.c (format_agp_rate): Better formatting of AGP rates. 1551 1552 * pci.ids: New ID's. 1553 1554 * lib/configure: Added configuration for ia64 (the same as for Alpha). 1555 Patch from Stephane Eranian <[email protected]>. 1556 1557Thu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 1558 1559 * Released as version 2.1.3. 1560 1561 * pci.ids: New ID's. 1562 1563 * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 1564 1565 * lib/access.c: Corrected order of access methods -- it's wonderful how 1566 long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 1567 1568Sat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 1569 1570 * Released as version 2.1.2. 1571 1572 * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 1573 1574Sat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 1575 1576 * Released as version 2.1.1. 1577 1578 * pci.ids: Several new ID's. 1579 1580 * setpci.c (exec_op): Don't forget to increment address after writing 1581 single value, so that `30.b=12,34,56,78' works as expected. Reported 1582 by Petr Soucek <[email protected]>. 1583 1584Wed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 1585 1586 * lspci.c (show_terse): If prog-if is zero, but it's present in the 1587 ID list, show it. 1588 1589Sat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 1590 1591 * Released as version 2.1. 1592 1593 * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 1594 lots of contributed entries. 1595 1596Thu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 1597 1598 * pci.ids: Added lots of subsystem definitions. 1599 1600Sat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 1601 1602 * setpci.man: Better example. 1603 1604 * lspci.c: Resolve prog-if names. 1605 1606 * lib/names.c: Adapted to new pci.ids syntax. 1607 1608 * pci.ids: Reorganized the pci.ids file. Subsystems are listed 1609 under devices, classes can optionally contain prog-if information. 1610 New ID's, as usually. 1611 1612Wed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 1613 1614 * pci.ids: New ID's. As usually. 1615 1616 * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 1617 unless we're vvvery verbose. 1618 1619Mon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 1620 1621 * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 1622 1623Tue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 1624 1625 * pci.ids: New ID's. Again. 1626 1627Thu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 1628 1629 * lspci.c (show_size): Don't show size if it's zero (usually 1630 due to bus-centric mode being enabled). 1631 1632Tue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 1633 1634 * lib/pci.h: Types are OS dependent. 1635 1636 * lib/internal.h: Byte order hacks are OS dependent. 1637 1638 * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 1639 1640 * lib/Makefile, lib/access.c: Added fbsd-device target. 1641 1642 * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 1643 incorrectly set to device ID. 1644 1645 * README: Added a note that we support FreeBSD. 1646 1647 * Makefile (PREFIX, ROOT): Set it depending on the OS. 1648 (%.8): Grrr, BSD date is not able to convert date formats the same way 1649 as GNU date does. Use sed instead. 1650 (install): Use `-c' when calling install. 1651 1652 * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 1653 by Jari Kirma <[email protected]>. 1654 1655 * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 1656 and pwrite only when we are certain it's safe (i.e., glibc 2.1 1657 on all architectures or any libc on a i386 where we really know 1658 how to use syscalls directly). In all other cases, emulate it 1659 with lseek/read/write. 1660 1661 * pci.ids: Some more IDs. 1662 1663Mon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 1664 1665 * pci.ids: Added IDs of parallel port controller cards as sent 1666 by Tim Waugh <[email protected]>. 1667 1668Wed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 1669 1670 * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 1671 1672 * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 1673 HAVE_LONG_ADDRESS. 1674 1675 * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 1676 are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 1677 to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 1678 and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 1679 on Alpha. 1680 1681 * lspci.c (show_msi): Added dumping of the MSI capability. 1682 (show_slotid): The same for SlotID capability. 1683 (show_caps): Seperated capability dumping, because it should 1684 be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1685 layout of htype2, so I'm a bit unsure about it wrt capabilities 1686 -- they at least have to live somewhere else since address 0x34 1687 is already defined differently in htype2. 1688 1689 * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1690 (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1691 (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1692 1693 * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1694 (required by the PCI 2.2 specs). 1695 1696Mon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1697 1698 * lspci.c (show_size): Added new function for dumping of region sizes. 1699 (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1700 ROMs et cetera. 1701 1702 * lib/pci.h (struct pci_dev): known_fields moved to the public part 1703 of the structure. 1704 1705 * Added support for region sizes. Needs support in the kernel, because 1706 sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1707 now returns a bitmask of what fields were really read. 1708 1709Mon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 1710 1711 * Makefile: 1712 Added `uninstall' target - removes all traces of pciutils. 1713 * pci.ids: 1714 - Lots of cleanups in the ATI, S3, Adaptec vendors. 1715 - Changed Compaq QVision 1280/p definitions, as it's not possible 1716 to determine the revision from the device ID. 1717 - Same for the Tseng ET4000. 1718 The id's said I had a rev C, when it was actually a rev B. 1719 - Removed some unnecessary strings 1720 `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 1721 `Ethernet card'. This should be determined from config space. 1722 - Lots of other new vendors & devices 1723 - Other additional small cleanups. 1724 1725Mon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 1726 1727 * lib/names.c (pci_lookup_name): When device ID lookup 1728 fails, return hexadecimal device ID instead of vendor ID. 1729 Well spotted by Axel Bodemann <[email protected]>, 1730 I've just extended the fix to subsystem ID's. 1731 1732Thu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 1733 1734 * lspci.c (show_agp): Bug fix from Petr Vandrovec 1735 <[email protected]>. The command register was displayed 1736 incorrectly. 1737 1738Wed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 1739 1740 * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 1741 numbers if not supplied by the libc. 1742 1743Wed May 19 13:24:39 1999 Martin Mares <[email protected]> 1744 1745 * Released the whole package as version 2.0. 1746 1747Fri May 14 22:42:02 1999 Martin Mares <[email protected]> 1748 1749 * pci.ids: Added several new ID's contributed by people 1750 on the linux-pci list. 1751 1752Mon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1753 1754 * lspci.c: Display I/O addresses correctly on sparc64. 1755 * lib/header.h: Ditto. 1756 1757 * lib/configure: On sparc set HAVE_64BIT* as well, we want 1758 a binary which works on both 32bit and 64bit SPARCs. 1759 1760Sun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1761 1762 * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1763 <[email protected]>. 1764 1765 * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1766 1767Sun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1768 1769 * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1770 as a multi-function device, because several single-function devices 1771 don't decode the function bits at all. 1772 1773Sun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1774 1775 * Makefile (install): Don't use "-o root -g root" for installation 1776 since it breaks on machines where programs are not installed by root. 1777 Reported by Richard Gooch <[email protected]> 1778 1779Tue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1780 1781 * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1782 1783 * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1784 or 64-bit depending on CPU. 1785 1786 * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1787 according to bus address width. 1788 1789Thu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 1790 1791 * Released as 1.99.4. 1792 1793 * lspci.c: Capability list parser now recognizes both AGP 1794 registers and PCI Power Management registers (the latter 1795 is mainly guesswork based on DEC/Intel 21153 bridge specs 1796 since I don't have the PCI Power Management document). 1797 1798 * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 1799 by FLAG macro. 1800 1801 * lspci.c: Added bridge checks to bus mapping code. 1802 1803Wed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 1804 1805 * lspci.c: Implemented bus mapping mode (-M). 1806 1807 * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 1808 (show): Split to show() and show_device(). 1809 1810 * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 1811 set it to the real access method afterwards. 1812 1813Mon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 1814 1815 * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 1816 don't check PCI_COMMAND for I/O and memory enables. 1817 1818Mon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1819 1820 * Makefile: Added target `release' which substitutes new version 1821 number to .spec, .lsm and README. Also rewrote target `dist'. 1822 1823 * Released as 1.99.3. 1824 1825Sun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1826 1827 * lib/header.h: Until kernel adopts new layout of PCI 1828 includes (i.e., separate declaration of header structure, 1829 functions and device IDs), which is not going to happen 1830 before 2.3, we'll use our own definiton of the header. 1831 1832 * lspci.c (show_verbose): Display `Cap' flag in device status. 1833 1834 * lspci.c (show_htype0): Display capability lists whereever 1835 available. The only capability name we recognize now is `AGP'. 1836 Unfortunately, capabilities are stored in device-dependent 1837 portion of the configuration space and are thus available 1838 only to root unless you read a dump. 1839 1840 * lspci.c (scan_devices): Use cache instead of buffering. 1841 1842 * lib/buffer.c: Removed (obsoleted by the cache). 1843 1844 * lib/access.c: Added general caching mechanism. 1845 1846Sat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 1847 1848 * pci.ids: Added few devices. 1849 1850Fri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1851 1852 * Version string is now defined in top-level Makefile, exported 1853 to the configure script and also substituted to man pages. 1854 1855 * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1856 (show_verbose): Rewrote interrupt display logic. 1857 1858 * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1859 1860 * lib/configure: Rewrote detection of Linux versions. Now it 1861 works on 2.0 kernels (only with direct/dump access, of course). 1862 1863 * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1864 whenever available. 1865 1866 * lib/proc.c (proc_read, proc_write): Distinguish between short 1867 read/write and real errors. 1868 1869 * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1870 libpci respects buscentric mode automatically. 1871 1872 * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1873 bytes of header (the whole standard part). 1874 1875 * common.c: pcilib options are now all uppercase. Also moved 1876 PCI access debugging option here. 1877 1878 * Released as 1.99.2. 1879 1880Wed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1881 1882 * Wrote configure script and rewrote Makefiles. 1883 1884 * Removed few unused variables. 1885 1886Wed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1887 1888 * common.c: Moved several functions used in both setpci and lspci 1889 here. This includes parsing of libpci-related options. 1890 1891 * More library tweaks. 1892 1893 * filter.c, names.c: Moved to library. 1894 1895 * setpci: Rewritten to use the library. 1896 1897 * Released as 1.99.1. 1898 1899Tue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 1900 1901 * lspci.c (scan_devices): For cardbus bridges, read first 128 1902 bytes of config space to get full standard header. 1903 1904 * Makefile (CFLAGS): Removed "-Wno-unused". 1905 1906 * Started the "New Generation" branch and introduced the 1907 PCI library. 1908 1909 * lspci: Rewritten to use the library. 1910 1911Tue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 1912 1913 * Released as version 1.10. 1914 1915Mon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 1916 1917 * lspci.8, setpci.8: Miscellaneous fixes as suggested by 1918 Dag Wieers <[email protected]>. 1919 1920Sun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 1921 1922 * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 1923 1924Sun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 1925 1926 * Makefile, pciutils.h: Moved pci.ids to /usr/share. 1927 1928 * Released as version 1.09. 1929 1930Wed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 1931 1932 * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 1933 bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 1934 1935Fri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 1936 1937 * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 1938 1939Mon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 1940 1941 * Released as version 1.08. 1942 1943 * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 1944 1945 * lspci.8: Changed warning about lspci -xxx. 1946 1947 * lspci.c: Require "-xxx" for full configuration space dump, so that 1948 it's impossible to crash the machine by single typo. 1949 1950 * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 1951 1952Wed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 1953 1954 * lspci.c (show_bases): Better displaying of unassigned and 1955 disabled bases. Thanks to Gabriel Paubert <[email protected]> 1956 for an idea. 1957 1958Wed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 1959 1960 * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 1961 (thanks to Geert Uytterhoeven for finding this out) 1962 1963Fri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 1964 1965 * lspci.c (show_verbose): Print subsystem ID using the new resolver. 1966 (show_machine): Print subsystem ID. 1967 1968 * names.c: New name resolution engine supporting subsystem IDs. 1969 1970 * Released as version 1.07. 1971 1972Wed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 1973 1974 * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 1975 (show_bases): Honor the `cnt' argument. 1976 (grow_tree): Parse CardBus headers in tree mode as well. 1977 1978 * pci.h: Updated CardBus header field description. I still don't 1979 have the CardBus standard available, but OZ6832 specs contain 1980 full description of all header fields supported by the chip. 1981 1982Tue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 1983 1984 * Released as 1.06. 1985 1986 * names.c (parse_name_list): Killed an unused variable. 1987 1988 * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 1989 if they are not defined by glibc (needed for glibc built on older 1990 kernels). Ugly. 1991 1992 * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 1993 1994Mon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 1995 1996 * Released as 1.05. 1997 1998 * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 1999 should be gone. Again thanks to Steve for bug report. 2000 2001 * filter.c (filter_parse_slot): Fixed ":x" type filters. 2002 2003 * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 2004 <[email protected]> for reporting this. 2005 2006Sun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 2007 2008 * lspci.c (main), setpci.c (main): Implemented "--version". 2009 2010 * Released as 1.04. 2011 2012 * pciutils.h (PCIUTILS_VERSION): Added version string. 2013 2014 * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 2015 Thanks to Geert Uytterhoeven <[email protected]> 2016 for bug report. 2017 2018Thu May 28 14:45:58 1998 Martin Mares <[email protected]> 2019 2020 * pci.ids: More updates from Jens Maurer. 2021 2022Wed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 2023 2024 * pci.ids: Updates from Jens Maurer. 2025 2026Sun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 2027 2028 * Released as 1.03. 2029 2030 * setpci.8: Written. 2031 2032 * setpci.c: Finished. 2033 2034 * lspci.c: Now able to fetch expansion ROM base from kernel device list 2035 and print it if not in buscentric mode. 2036 2037Tue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 2038 2039 * setpci.c: Added. 2040 2041Sun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 2042 2043 * lspci.8: Updated the documentation. 2044 2045 * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 2046 2047 * filter.c: Introduced new generic device filter. 2048 2049Thu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 2050 2051 * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 2052 of PCI-to-PCI bridges in the tree format. 2053 2054Sun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 2055 2056 * lspci.c (show_machine): Added non-verbose mode of machine-readable 2057 dump. 2058 2059 * pci.ids: Updates from Jens Maurer. 2060 2061 * Released as version 1.02. 2062 2063Thu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 2064 2065 * lspci.c: Added a "-m" switch for dumping machine-readable 2066 configuration data (requested by Bjoern Kriews <[email protected]>). 2067 2068Mon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 2069 2070 * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 2071 if available. This should avoid all problems with official kernel 2072 not synchronized to newer PCI code in CVS -- standard distribution 2073 of pciutils now contains pci.h from current CVS kernel, pciutils 2074 in CVS contain no pci.h and use the correct kernel include. 2075 2076 * Makefile: Fixed installation path for man pages. 2077 2078Sat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 2079 2080 * README: Updated. 2081 2082 * lspci.8: Created a man page. 2083 2084 * Releasing as version 1.0. 2085 2086Tue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 2087 2088 * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 2089 to all the C sources. This should eliminate problems with 32-bit compilers 2090 on sparc64. 2091 2092 * lspci.c (show_verbose): Recognize CardBus bridge header type. 2093 (show_htype2): Stub routine. 2094 (scan_config): Write sensible error message if the kernel denies reading of 2095 upper part of the PCI config space. 2096