1*2b31207aSMartin Mares2008-12-13 Martin Mares <[email protected]> 2*2b31207aSMartin Mares 3*2b31207aSMartin Mares * The source code of lspci has been split to multiple files, hopefully 4*2b31207aSMartin Mares making it easier to maintain. 5*2b31207aSMartin Mares 6*2b31207aSMartin Mares * The library and lspci now know about physical slot names. So far, 7*2b31207aSMartin Mares they are provided by the sysfs back-end only. Thanks go to Alex Chiang. 8*2b31207aSMartin Mares 9*2b31207aSMartin Mares * When a device has the VPD (Vital Product Data) capability and the 10*2b31207aSMartin Mares VPD data are supplied by the OS, they are decoded and printed in the 11*2b31207aSMartin Mares verbose mode. This currently works only on Linux with the sysfs 12*2b31207aSMartin Mares back-end. Thanks to Ben Hutchings of Solarflare for the patch. 13*2b31207aSMartin Mares 14*2b31207aSMartin Mares * `setpci --version' now works properly. 15*2b31207aSMartin Mares 16*2b31207aSMartin Mares * `setpci --dumpregs' prints a table of all known name of 17*2b31207aSMartin Mares registers and capabilities. This replaces the table of registers 18*2b31207aSMartin Mares in the setpci man page. 19*2b31207aSMartin Mares 20*2b31207aSMartin Mares * The dry-run mode of setpci gives better feedback. 21*2b31207aSMartin Mares 22*2b31207aSMartin Mares * The setpci utility is now able to address registers stored in PCI 23*2b31207aSMartin Mares capabilities (actually it allows a more general form of relative 24*2b31207aSMartin Mares addressing). 25*2b31207aSMartin Mares 26*2b31207aSMartin Mares * The library has gained functions for working with PCI capabilities. 27*2b31207aSMartin Mares 28*2b31207aSMartin Mares * Address Translation Services capability is now decoded. Patch by 29*2b31207aSMartin Mares Yu Zhao. 30*2b31207aSMartin Mares 31b282435dSMartin Mares2008-11-09 Martin Mares <[email protected]> 32b282435dSMartin Mares 33b282435dSMartin Mares * Released as 3.0.3. 34b282435dSMartin Mares 35b282435dSMartin Mares * `lspci -k' now displays the subsystem ID, too. This makes `-k' 36b282435dSMartin Mares show everything needed to identify the device and the available 37b282435dSMartin Mares drivers, which was called for by many users. 38b282435dSMartin Mares 39b282435dSMartin Mares * Fixed spelling of MSI. Patch by Matthew Wilcox. 40b282435dSMartin Mares 41b282435dSMartin Mares * Better support for cross-compilation. Thanks to Alon Bar-Lev 42b282435dSMartin Mares for the patch. 43b282435dSMartin Mares 44b282435dSMartin Mares * Fixed printing of the AER capability. Patch by Max Asbock. 45b282435dSMartin Mares 46b282435dSMartin Mares * HT 1.02 capabilities are decoded as HT 1.03. Suggested by 47b282435dSMartin Mares Carl-Daniel Hailfinger. 48b282435dSMartin Mares 49b282435dSMartin Mares * Fixed Cygwin build. Thanks to Steve Elliott for reporting the bug. 50b282435dSMartin Mares 51b282435dSMartin Mares * Updated pci.ids to the current snapshot of the database. 52b282435dSMartin Mares 53daf2ef4eSMartin Mares2008-09-19 Martin Mares <[email protected]> 54daf2ef4eSMartin Mares 55daf2ef4eSMartin Mares * Released as 3.0.2. 56daf2ef4eSMartin Mares 57daf2ef4eSMartin Mares * Fixed a minor bug in the configure script, which caused warnings 58daf2ef4eSMartin Mares about redefinition of symbols during compilation. 59daf2ef4eSMartin Mares 6038254178SMartin Mares2008-09-11 Martin Mares <[email protected]> 6138254178SMartin Mares 6238254178SMartin Mares * Released as 3.0.1. 6338254178SMartin Mares 6438254178SMartin Mares * Updated pci.ids to the most recent snapshot. 6538254178SMartin Mares 6638254178SMartin Mares * Added a Cygwin port. Patch by Christopher Voltz, ported to the 6738254178SMartin Mares current tree by Martin Mares. 6838254178SMartin Mares 6938254178SMartin Mares * Worked around compatibility problems with various default settings 7038254178SMartin Mares of wget (we have to set --no-timestamping explicitly). Thanks to Ville 7138254178SMartin Mares Skytta for pointing that out. 7238254178SMartin Mares 7338254178SMartin Mares * Fixed printing of MSI capabilities. Thanks to Matthew Wilcox for 7438254178SMartin Mares a patch. 7538254178SMartin Mares 7638254178SMartin Mares * Added decoding of several PCI-X capabilities: device/link/slot 2, 7738254178SMartin Mares Advanced Error Reporting, Access Control Services, Alternative Routing-ID, 7838254178SMartin Mares Single Root I/O Virtualization. Thanks to Yu Zhao for patches. 7938254178SMartin Mares 8038254178SMartin Mares * Fixed bug in filters which caused them to refuse vendor/device ID 0xffff. 8138254178SMartin Mares 8238254178SMartin Mares * README: The linux-pci mailing list has moved to [email protected]. 8338254178SMartin Mares 8438254178SMartin Mares * Fixed several build problems: builds without PCI_USE_DNS on Linux 8538254178SMartin Mares and with PCI_USE_DNS on Solaris and *BSD. Static library mode also 8638254178SMartin Mares compiles again on old versions of GCC. 8738254178SMartin Mares 88cec9f7e7SMartin Mares2008-04-10 Martin Mares <[email protected]> 89cec9f7e7SMartin Mares 90cec9f7e7SMartin Mares * Released as 3.0.0. 91cec9f7e7SMartin Mares 92cec9f7e7SMartin Mares * Updated API and ABI version. 93cec9f7e7SMartin Mares 94cd2f6a34SMartin Mares2008-02-20 Martin Mares <[email protected]> 95cd2f6a34SMartin Mares 96cd2f6a34SMartin Mares * Released as 2.99.1-alpha2. 97cd2f6a34SMartin Mares 98cd2f6a34SMartin Mares * Changed the default domain for the DNS resolver. 99cd2f6a34SMartin Mares 100165a50cbSMartin Mares2008-02-18 Martin Mares <[email protected]> 101165a50cbSMartin Mares 102165a50cbSMartin Mares * Released as 2.99.1-alpha1. 103623234ecSMartin Mares 104a1fca487SMartin Mares * The makefile system has been reworked. All configuration settings 105a1fca487SMartin Mares are now passed to the configure script in environment variables, 106a1fca487SMartin Mares allowing for easy tweaking in the top-level Makefile. All control 107a1fca487SMartin Mares knobs are now described in the README. 108a1fca487SMartin Mares 109a1fca487SMartin Mares * The libpci can be built as a shared library with properly restricted 110a1fca487SMartin Mares symbol exports. Use `make SHARED=yes' to enable that or `make SHARED=local' 111a1fca487SMartin Mares for a local testing build (with hardwired paths to the library, so that 112a1fca487SMartin Mares it does not need installation). 113a1fca487SMartin Mares 114a1fca487SMartin Mares * The example program has been moved from lib/example.c to the top-level 115a1fca487SMartin Mares directory, because it should be built exactly as the other utilities 116a1fca487SMartin Mares are. It has been also improved slightly to educate better. 117a1fca487SMartin Mares 118623234ecSMartin Mares * The i386-ports method is enabled on Linux/x86_64 as well. 119623234ecSMartin Mares 120ae27e293SMartin Mares2008-02-13 Martin Mares <[email protected]> 121ae27e293SMartin Mares 122ae27e293SMartin Mares * Released as 2.2.10-net2. 123ae27e293SMartin Mares 124ae27e293SMartin Mares * Support for resolving of PCI ID's using DNS together with a local 125ae27e293SMartin Mares cache of resolved entries has been added. See the `-q' and `-Q' options 126ae27e293SMartin Mares of lspci. 127ae27e293SMartin Mares 128ae27e293SMartin Mares * The library now has a generic system of settable parameters, which 129ae27e293SMartin Mares also include settings of the DNS resolver and cache. An `-O' option 130ae27e293SMartin Mares has been added to lspci and setpci to allow setting of these options. 131ae27e293SMartin Mares 132ae27e293SMartin Mares * Configuration of the access methods are now specified by the new 133ae27e293SMartin Mares parameter system, replacing the pci_access->method_params array. 134ae27e293SMartin Mares 135ae27e293SMartin Mares * Access methods now also have sensible names and help texts and it 136ae27e293SMartin Mares is possible to look up method ID by a name. 137ae27e293SMartin Mares 138ae27e293SMartin Mares * An `-A' switch has been added to both lspci and setpci, allowing to 139ae27e293SMartin Mares select an arbitrary access method. The `-P' switch (configure proc 140ae27e293SMartin Mares backend) has been removed as it is no longer needed and I do not know 141ae27e293SMartin Mares any its user. 142ae27e293SMartin Mares 143ae27e293SMartin Mares * Several source files have been split for better maintainability 144ae27e293SMartin Mares (most notably the resolving of ID's). 145ae27e293SMartin Mares 146ae27e293SMartin Mares * Man pages and help texts have been updated. A new man page `pcilib(7)' 147ae27e293SMartin Mares has been added and description of library options has been moved there. 148ae27e293SMartin Mares 149ae27e293SMartin Mares * When an unknown device ID is encountered, we print `Device <id>' 150ae27e293SMartin Mares instead of `Unknown device <id>'. It uses less space and it also 151ae27e293SMartin Mares should reduce the number of inexperienced users complaining that 152ae27e293SMartin Mares the device is not supported by the OS. To lookup up OS drivers, 153ae27e293SMartin Mares use the `-k' option. 154ae27e293SMartin Mares 155ae27e293SMartin Mares * PCI_LIB_VERSION has been bumped to 0x020299. 156ae27e293SMartin Mares 157ae27e293SMartin Mares * Makefile: stripping of the binaries during installation can be 158ae27e293SMartin Mares overridden by the STRIP variable. 159ae27e293SMartin Mares 160ae27e293SMartin Mares * lib/types.h: We use the integer types from <stdint.h> if the 161ae27e293SMartin Mares compiler claims C99 support. 162ae27e293SMartin Mares 1630fc3bd18SMartin Mares2008-02-11 Martin Mares <[email protected]> 1640fc3bd18SMartin Mares 1652466b14bSMartin Mares * Released as 2.2.10. 1662466b14bSMartin Mares 1676add52f5SMartin Mares * lspci.c, setpci.c: Cleaned up the list of options. 1686add52f5SMartin Mares 1690fc3bd18SMartin Mares * lib/names.c: Fix displaying of errors reported by zlib. 1700fc3bd18SMartin Mares Previously, the buffer containing the error message had 1710fc3bd18SMartin Mares been deallocated by gzclose() before the message was printed. 1720fc3bd18SMartin Mares 173d26b5378SMartin Mares2008-01-07 Martin Mares <[email protected]> 174d26b5378SMartin Mares 175d26b5378SMartin Mares * update-pciids.sh: Added quiet mode (-q). Clean up uncompressed 176d26b5378SMartin Mares files left by previous versions of the pciutils. Patch by Mike 177d26b5378SMartin Mares Frysinger. 178d26b5378SMartin Mares 179d26b5378SMartin Mares * update-pciids.man: Mention the -q switch. 180d26b5378SMartin Mares 181dc01dd60SMartin Mares2007-11-29 Martin Mares <[email protected]> 182dc01dd60SMartin Mares 183dc01dd60SMartin Mares * lib/dump.c: Squashed compiler warnings about code with 184dc01dd60SMartin Mares no effect (there really were surplus *'s). 185dc01dd60SMartin Mares 18611339c0dSMartin Mares2007-11-06 Martin Mares <[email protected]> 18711339c0dSMartin Mares 18813463566SMartin Mares * Released as 2.2.9. 18913463566SMartin Mares 19011339c0dSMartin Mares * lspci.c: Added a new switch `-k' which requests printing 19111339c0dSMartin Mares of information on kernel drivers attached to each device 19211339c0dSMartin Mares and on kernel modules reporting the ability to handle the 19311339c0dSMartin Mares device. So far, this is supported only on Linux with the 19411339c0dSMartin Mares sysfs back-end, so it is implemented internally in the lspci 19511339c0dSMartin Mares instead of the libpci. Thanks to Anicka <[email protected]> 19611339c0dSMartin Mares for help. 19711339c0dSMartin Mares 1983de798bdSMartin Mares2007-10-19 Martin Mares <[email protected]> 1993de798bdSMartin Mares 2006cdb9d93SMartin Mares * Makefile, lib/Makefile: Moved -lz from LDFLAGS to LDLIBS. 2016cdb9d93SMartin Mares Also added an explicit pattern rule for linking to make sure 2026cdb9d93SMartin Mares that LDLIBS is used on all platforms. Thanks to Dan Nicholson 2036cdb9d93SMartin Mares for the suggestion. 2046cdb9d93SMartin Mares 2056cdb9d93SMartin Mares2007-10-19 Martin Mares <[email protected]> 2066cdb9d93SMartin Mares 207a404b115SMartin Mares * Released as 2.2.8. 208a404b115SMartin Mares 2093de798bdSMartin Mares * pci.ids: Revised class codes to match Conventional PCI 3.0 specs. 2103de798bdSMartin Mares Added a couple of new ones, renumbered `ADMA continuous operation' 2113de798bdSMartin Mares prog-if to 0x30 (even the old SATA Class Code ECN doesn't mention 2123de798bdSMartin Mares 0x40) and renumbered the satellite communication controllers. 2133de798bdSMartin Mares 2142d2c4810SMartin Mares * lib/header.h: Include `PCI hot-plug' and `Secure device' 215f7c76ec5SMartin Mares capabilities from PCI 3.0 specs. Also added `SATA HBA' and 216f7c76ec5SMartin Mares `Advanced features' caps from various ECN's. 2172d2c4810SMartin Mares 218fa2273caSMartin Mares * lspci.c: All known capabilities have at least their name displayed 219fa2273caSMartin Mares now. When we are unable to decode them completely, we signalize it 220fa2273caSMartin Mares with a `<?>' mark. 221fa2273caSMartin Mares 222fa2273caSMartin Mares * lspci.man: Document `<?>' and also mention that extended config 223fa2273caSMartin Mares space is currently available only with the linux_sysfs back-end. 224fa2273caSMartin Mares 22531c9bb28SMartin Mares * lspci.c: Decode the Debug port capability (per EHCI 0.96 spec). 22631c9bb28SMartin Mares 227a387042eSMartin Mares * lspci.c: Big code cleanup: re-arranged functions in the code, 228a387042eSMartin Mares renamed everything related to capabilities to cap_* and 229a387042eSMartin Mares all options except verbose to opt_*. 230a387042eSMartin Mares 2319c79fcc4SMartin Mares2007-10-14 Martin Mares <[email protected]> 2329c79fcc4SMartin Mares 2339c79fcc4SMartin Mares * lib/[fno]bsd-*: Removed extraneous braces. 2349c79fcc4SMartin Mares 235d5b4cd14SMartin Mares2007-10-12 Martin Mares <[email protected]> 236d5b4cd14SMartin Mares 237d5b4cd14SMartin Mares * Capability loop detection introduced 2.2.7 did not work 238d5b4cd14SMartin Mares properly with extended capabilities. Fixed. 239d5b4cd14SMartin Mares 240594de878SMartin Mares2007-10-05 Martin Mares <[email protected]> 241594de878SMartin Mares 2428a23eadcSMartin Mares * Released as 2.2.7. 2438a23eadcSMartin Mares 244594de878SMartin Mares * lspci.c (show_caps, show_ext_caps): Detect and report loops in 245594de878SMartin Mares capability lists. 246594de878SMartin Mares 2478a23eadcSMartin Mares * lspci.c, lib/header.h: Finished decoding of the PCI Express 2488a23eadcSMartin Mares capability. The extended capabilities remain undecoded for now, 2498a23eadcSMartin Mares but at least the list of them has been updated to reflect the 2508a23eadcSMartin Mares current PCI Express 2.0 spec. 2518a23eadcSMartin Mares 2528a23eadcSMartin Mares * lspci.c, lib/header.h: Decode new bits of traditional registers 2538a23eadcSMartin Mares as defined by PCIE / PCI-X. This includes discard timers in the bridge 2548a23eadcSMartin Mares control register and INTx enable/status in device control/status 2558a23eadcSMartin Mares registers. 2568a23eadcSMartin Mares 2578a23eadcSMartin Mares * lib/fbsd-device.c: Support domains on new FreeBSD's. Contributed 2588a23eadcSMartin Mares by Marius Strobl. 2598a23eadcSMartin Mares 26099091df9SMartin Mares2007-09-12 Hasso Tepper <[email protected]> 26199091df9SMartin Mares 26299091df9SMartin Mares * Extended the fbsd-device backend to run on Dragonfly BSD. 26399091df9SMartin Mares 26499091df9SMartin Mares * lspci.c: alloca() is declared in <stdlib.h> on BSD's, not <alloca.h>. 26599091df9SMartin Mares 26609156b3bSMartin Mares2007-09-03 Martin Mares <[email protected]> 26709156b3bSMartin Mares 26809156b3bSMartin Mares * Resurrected the Windows port, including cross-compilation by MinGW. 26909156b3bSMartin Mares Patch by Samuel Bronson <[email protected]>. 27009156b3bSMartin Mares 271325a3c50SMartin Mares2007-08-31 Martin Mares <[email protected]> 272325a3c50SMartin Mares 273325a3c50SMartin Mares * Makefile, lib/Makefile: `ar' and `ranlib' can be overriden to allow 274325a3c50SMartin Mares cross-compilation. 275325a3c50SMartin Mares 276a2322147SMartin Mares2007-08-27 Martin Mares <[email protected]> 277a2322147SMartin Mares 278a2322147SMartin Mares * lib/names.c (pci_open): When calling gzopen(), use "rb" file mode 279a2322147SMartin Mares instead of "r". This is needed on DOS systems, where this function 280a2322147SMartin Mares somewhat illogically uses the binary flag for the compressed file 281a2322147SMartin Mares instead of the decompressed stream inside, where binariness really 282a2322147SMartin Mares matters. 283a2322147SMartin Mares 2844f2c5b94SMartin Mares2007-08-14 Martin Mares <[email protected]> 2854f2c5b94SMartin Mares 2864f2c5b94SMartin Mares * lspci.c (show_ht): Added decoding of Hypertransport MSI mapping capability, 2874f2c5b94SMartin Mares based on a patch by Jason Gunthorpe. 2884f2c5b94SMartin Mares 2894f2c5b94SMartin Mares * tests/cap-MSI-mapping: Added a test case. I plan to add test cases 2904f2c5b94SMartin Mares (which are dumps of config space) for all new features. 2914f2c5b94SMartin Mares 2920d7f5331SMartin Mares2007-06-20 Martin Mares <[email protected]> 2930d7f5331SMartin Mares 2947cebe481SMartin Mares * Released as 2.2.6. 2957cebe481SMartin Mares 2960d7f5331SMartin Mares * Makefile: Added an "install-lib" target. Thanks to Dan Nicholson 2970d7f5331SMartin Mares for a patch. 2980d7f5331SMartin Mares 2997cebe481SMartin Mares * Makefile, lib/Makefile: Generate and install pkg-config file 3007cebe481SMartin Mares for libpci. Again by Dan Nicholson. 3017cebe481SMartin Mares 3020d7f5331SMartin Mares2007-06-20 Thomas Schwinge <[email protected]> 3030d7f5331SMartin Mares 3040d7f5331SMartin Mares * lib/i386-io-hurd.h: Rewritten for new Hurd kernels. 3050d7f5331SMartin Mares 3066e4a45edSMartin Mares2007-05-04 Martin Mares <[email protected]> 3076e4a45edSMartin Mares 30855c89179SMartin Mares * Released as 2.2.5. 30955c89179SMartin Mares 3106e4a45edSMartin Mares * pci.ids: Updated to the current snapshot of the database. 3116e4a45edSMartin Mares 312d0b07542SMartin Mares2007-02-14 Martin Mares <[email protected]> 313d0b07542SMartin Mares 314d0b07542SMartin Mares * lspci.c (show_express): Added PCI/PCI-X to PCI-Express Bridge type. 315d0b07542SMartin Mares Patch by Mark Glines. 316d0b07542SMartin Mares 3173df35926SMartin Mares2007-02-09 Martin Mares <[email protected]> 3183df35926SMartin Mares 3193df35926SMartin Mares * pci.ids: Updated to the current snapshot of the database. 3203df35926SMartin Mares 321e49ed044SMartin Mares2007-02-06 Martin Mares <[email protected]> 322e49ed044SMartin Mares 3231ac3a99dSMartin Mares * Replaced bzero() by memset() everywhere, it's better to lose a tiny 3241ac3a99dSMartin Mares bit of readability than maintain hacks to make it work on various systems. 3251ac3a99dSMartin Mares 326b0eb18ccSMartin Mares * lib/configure: tr on Solaris is a bit weird and it requires `[A-Z]' 327b0eb18ccSMartin Mares instead of `A-Z'. Fortunately, the extra brackets don't hurt otherwise. 328b0eb18ccSMartin Mares 329e49ed044SMartin Mares * lib/types.h, lib/configure: Solaris should use <stdint.h> to get precise 330e49ed044SMartin Mares integer types. 331e49ed044SMartin Mares 3329de2768cSMartin Mares2007-02-04 Martin Mares <[email protected]> 3339de2768cSMartin Mares 3349de2768cSMartin Mares * lspci.c: alloca() needs <alloca.h>. 3359de2768cSMartin Mares 336d19394dbSMartin Mares2006-09-17 Martin Mares <[email protected]> 337d19394dbSMartin Mares 338d19394dbSMartin Mares * lib/dump.c: Fixed a couple of bugs in the dump backend which caused 339d19394dbSMartin Mares devices with domains or with extended config space to be read incorrectly. 340d19394dbSMartin Mares Also, dumps with partial lines are allowed now. 341d19394dbSMartin Mares 342934e7e36SMartin Mares2006-09-10 Martin Mares <[email protected]> 343934e7e36SMartin Mares 344f09856deSMartin Mares * pci.ids: Updated to the current database snapshot. 345f09856deSMartin Mares 346934e7e36SMartin Mares * lspci.c (scan_device): If an error occurs when reading the standard config 347934e7e36SMartin Mares header of a device, report it and ignore the device and return with exit 348934e7e36SMartin Mares code 2 at the end. 349934e7e36SMartin Mares 350b2055313SMartin Mares2006-09-09 Martin Mares <[email protected]> 351b2055313SMartin Mares 352fb260653SMartin Mares * Released as 2.2.4. 353fb260653SMartin Mares 3541865e2ddSMartin Mares * maint/release: Remind the maintainer about the current PCI_LIB_VERSION. 3551865e2ddSMartin Mares 356028dffb2SMartin Mares * lib/pci.h: Updated PCI_LIB_VERSION. 357028dffb2SMartin Mares 35813081e57SMartin Mares * lspci.c (show_machine): In the `-m' mode, do proper shell escaping 35913081e57SMartin Mares if the fields printed contain quotes or backslashes. 36013081e57SMartin Mares 3613fd6b4d2SMartin Mares * lspci.c (show_machine): Added a `-vmm' mode, which removes the misuse 3623fd6b4d2SMartin Mares of the `Device' tag for two different purposes. 3633fd6b4d2SMartin Mares 364840d09aeSMartin Mares * Makefile: Moved all system-dependent decisions to lib/configure, 365840d09aeSMartin Mares since config.mk is included in the top-level Makefile anyway. 366840d09aeSMartin Mares 3672100f710SMartin Mares * lib/configure: When configuring for Linux, ignore the kernel version 3682100f710SMartin Mares and always build all access methods. 3692100f710SMartin Mares 3703e9c7a18SMartin Mares * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers 3713e9c7a18SMartin Mares at many non-interesting places with gcc 3.4. 3723e9c7a18SMartin Mares 37394db5c82SMartin Mares * Whitespace cleanup of all source files. 37494db5c82SMartin Mares 375cc062b4aSMartin Mares * The pci.ids file can be stored compressed if zlib is available. 376cc062b4aSMartin Mares Added transparent decompression to lib/names.c, modified update-pciids.sh 377cc062b4aSMartin Mares to keep the file compressed if applicable, updated Makefiles. 378cc062b4aSMartin Mares Based on a patch by Matthew Wilcox, but all the bugs are mine. 379cc062b4aSMartin Mares 380f4ddb8d3SMartin Mares * Makefile, README: Allow installation to be done to a different directory 381f4ddb8d3SMartin Mares from the one we will eventually be placed in by setting DESTDIR. 382f4ddb8d3SMartin Mares Patch by Matthew Wilcox. 383f4ddb8d3SMartin Mares 38416e37012SMartin Mares * Added .gitignore files. 38516e37012SMartin Mares 386c7f5314dSMartin Mares * Makefile (clean): Clean *.orig, too. 387c7f5314dSMartin Mares 388afebde01SMartin Mares * Cleaned up usage of `char' and `byte'. 389afebde01SMartin Mares 390fd54ccebSMartin Mares * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01. 391fd54ccebSMartin Mares 392b2055313SMartin Mares * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently 393b2055313SMartin Mares defined in the pci.ids file. 394b2055313SMartin Mares 3954254d153SMartin Mares2006-08-01 Martin Mares <[email protected]> 3964254d153SMartin Mares 3974254d153SMartin Mares * lib/i386-io-hurd.h: Fixed a silly typo. 3984254d153SMartin Mares 3991c5cc9b5SMartin Mares2006-07-30 Martin Mares <[email protected]> 4001c5cc9b5SMartin Mares 40138a9e3c3SMartin Mares * lib/Makefile: Added a missing rule for obsd-device.o. 40238a9e3c3SMartin Mares 403c7ddfa3eSMartin Mares * lspci.c, lib/header.h: Added support for MSI per-vector masking. 404c7ddfa3eSMartin Mares Contributed by Petr Vandrovec. 405c7ddfa3eSMartin Mares 406248a04f8SMartin Mares * lspci.c, lib/header.h: Added support for the `bridge subsystem ID' 407248a04f8SMartin Mares capability. Contributed by Petr Vandrovec. 408248a04f8SMartin Mares 409f29dcc87SMartin Mares * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable 410f29dcc87SMartin Mares memory windows. Fix by Petr Vandrovec. 411f29dcc87SMartin Mares 4128eab3bffSMartin Mares * maint/release.pm: Exclude .git directory from releases. 4138eab3bffSMartin Mares 414d305d704SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Report failures during port access 415d305d704SMartin Mares initialization by a->warn() instead of calling printf() or perror() 416d305d704SMartin Mares directly. 417d305d704SMartin Mares 4189007a292SMartin Mares * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of 4199007a292SMartin Mares the port access state to generic code. 4209007a292SMartin Mares 421bd20d5b5SMartin Mares * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately. 422bd20d5b5SMartin Mares Contributed by Thomas Schwinge and Samuel Thibault. 423bd20d5b5SMartin Mares 42473750606SMartin Mares * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module. 42573750606SMartin Mares 426d71daa45SMartin Mares * lib/header.h: Whitespace cleanups. 427d71daa45SMartin Mares 4281c5cc9b5SMartin Mares * lib/i386-io-windows.h: Fixed indentation and spelling. 4291c5cc9b5SMartin Mares 4301c5cc9b5SMartin Mares * README.Windows: Mention that WinIO.dll is needed and where to get it. 4311c5cc9b5SMartin Mares 432c2b144efSMartin Mares2006-06-27 Martin Mares <[email protected]> 433c2b144efSMartin Mares 43414d4f989SMartin Mares * lib/Makefile, Makefile: Added rules for building and cleaning the example. 43514d4f989SMartin Mares 43614d4f989SMartin Mares * lib/example.c: Show how to use PCI_FILL_CLASS and used another register 43714d4f989SMartin Mares for demonstrating the config space accesses. The example is still very 43814d4f989SMartin Mares incomplete, though. 43914d4f989SMartin Mares 440c2b144efSMartin Mares * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS. 441c2b144efSMartin Mares 442c2b144efSMartin Mares * lib/sysfs.c: Fetch device ID and class from sysfs, because they can 443c2b144efSMartin Mares be modified by kernel fixups. 444c2b144efSMartin Mares 445c2b144efSMartin Mares * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch. 446c2b144efSMartin Mares 447bc2eed2dSMartin Mares2006-06-03 Martin Mares <[email protected]> 448bc2eed2dSMartin Mares 449bc2eed2dSMartin Mares * lspci.c: Introduced the -nn switch. Thanks to David N. Welton 450bc2eed2dSMartin Mares for the idea. 451bc2eed2dSMartin Mares 452bc2eed2dSMartin Mares * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and 453bc2eed2dSMartin Mares cleaned up the name selection code. 454bc2eed2dSMartin Mares 455c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given, 456c72eeddeSMartin Mares pci_access->numeric_ids is ignored. 457c72eeddeSMartin Mares 458c72eeddeSMartin Mares * lib/names.c (pci_lookup_name): When class is identified and 459c72eeddeSMartin Mares subclass isn't, display class name and subclass number. 460c72eeddeSMartin Mares 4612f294d4bSMartin Mares2006-05-31 Martin Mares <[email protected]> 4622f294d4bSMartin Mares 4632f294d4bSMartin Mares * setpci.c (main): Don't crash when an invalid width is specified. 4642f294d4bSMartin Mares 46581afa98cSMartin Mares * lspci.c, setpci.c, common.c: die() now uses the right program 46681afa98cSMartin Mares name when printing an error message. 46781afa98cSMartin Mares 4680ac282f2SMartin Mares2006-05-19 Martin Mares <[email protected]> 4690ac282f2SMartin Mares 4700ac282f2SMartin Mares * README: Mention the public GIT tree. 4710ac282f2SMartin Mares 4720ac282f2SMartin Mares * README: Updated the list of ports. 4730ac282f2SMartin Mares 474d1058e9dSMartin Mares2006-05-10 Martin Mares <[email protected]> 475d1058e9dSMartin Mares 476d1058e9dSMartin Mares * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD. 477d1058e9dSMartin Mares Thanks to Petr Salinger for the patch. 478d1058e9dSMartin Mares 479abf8d505SMartin Mares2006-05-05 Martin Mares <[email protected]> 480abf8d505SMartin Mares 4812ae2d1aeSMartin Mares * Released as 2.2.3. 4822ae2d1aeSMartin Mares 4832ae2d1aeSMartin Mares * lspci.c (scan_device): The -D switch didn't work as intended 4842ae2d1aeSMartin Mares in -m mode. 4852ae2d1aeSMartin Mares 4862ae2d1aeSMartin Mares2006-05-05 Martin Mares <[email protected]> 4872ae2d1aeSMartin Mares 4881d5cf727SMartin Mares * Released as 2.2.2. 4891d5cf727SMartin Mares 4908a830168SMartin Mares * pci.ids: Updated to the current database snapshot. 4918a830168SMartin Mares 492b6359063SMartin Mares * lib/obsd-device.c (and other files in lib/*): Added OpenBSD 493b6359063SMartin Mares interface by Matthieu Herrb <[email protected]>, based on 494b6359063SMartin Mares the existing FreeBSD interface. 495b6359063SMartin Mares 496abf8d505SMartin Mares * Moved pciutils to a GIT repository, which now contains merged 497abf8d505SMartin Mares history from both CVS and Arch. Good bye, TLA! 498abf8d505SMartin Mares 4996ac70402SMartin Mares2006-03-21 Martin Mares <[email protected]> 5006ac70402SMartin Mares 5012a124daeSMartin Mares * lspci.c (show_slot_name): Avoid the previous changes in default 5022a124daeSMartin Mares display of domain name when in machine-readable mode. However, `-D' 5032a124daeSMartin Mares forces domain display even there. 5042a124daeSMartin Mares 5056ac70402SMartin Mares * lspci.man: Added a warning on -m being the only format, which is 5066ac70402SMartin Mares guaranteed to be stable between lspci versions. 5076ac70402SMartin Mares 5081bbdea17SMartin Mares2006-03-13 Martin Mares <[email protected]> 5091bbdea17SMartin Mares 510af61eb25SMartin Mares * lspci.man: Documented the -D switch. 511af61eb25SMartin Mares 512af61eb25SMartin Mares * lspci.c (show_slot_name, scan_device): If there are multiple PCI 513af61eb25SMartin Mares domains or if the `-D' switch is used, show the domain number for 514af61eb25SMartin Mares all devices. 515af61eb25SMartin Mares 5167a61b93cSMartin Mares * lspci.c (show_verbose): Report cache line size in bytes. 5177a61b93cSMartin Mares 5181bbdea17SMartin Mares * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox. 5191bbdea17SMartin Mares 5200e78ef8aSMartin Mares2006-01-04 Martin Mares <[email protected]> 5210e78ef8aSMartin Mares 5220e78ef8aSMartin Mares * lspci.c (show_express_link): Fixed decoding of link status register. 5230e78ef8aSMartin Mares Thanks to Roland Dreier for his report. 5240e78ef8aSMartin Mares 525e6859953SMartin Mares2005-12-12 Martin Mares <[email protected]> 526e6859953SMartin Mares 527e6859953SMartin Mares * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow 528e6859953SMartin Mares at least read-only access. Patch by Pavel Celeda <[email protected]>. 529e6859953SMartin Mares 530e6859953SMartin Mares * Makefile: Corrected library path on NetBSD. 531e6859953SMartin Mares 532a99c0d69SMartin Mares2005-11-26 Martin Mares <[email protected]> 533a99c0d69SMartin Mares 534e4af70c6SMartin Mares * Released as 2.2.1. 535e4af70c6SMartin Mares 536a99c0d69SMartin Mares * lspci.c (show_machine): Subsystem vendors were printed incorrectly 537a99c0d69SMartin Mares in machine-readable modes. Thanks to Pavel Celeda for a bug report. 538a99c0d69SMartin Mares 539f23fd3fcSMartin Mares2005-10-11 Martin Mares <[email protected]> 540f23fd3fcSMartin Mares 541f23fd3fcSMartin Mares * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it. 542f23fd3fcSMartin Mares 54315296723SMartin Mares2005-09-21 Martin Mares <[email protected]> 54415296723SMartin Mares 54515296723SMartin Mares * Released as 2.2.0. 54615296723SMartin Mares 54740b6d93fSMartin Mares * pci.ids: Updated copyright header. 54840b6d93fSMartin Mares 54915296723SMartin Mares * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported 55015296723SMartin Mares 64-bit addresses, they are now always supported. 55115296723SMartin Mares 55215296723SMartin Mares * lspci.c (show_bases): Corrected printing of 64-bit addresses 55315296723SMartin Mares in bus-centric mode. 55415296723SMartin Mares 55515296723SMartin Mares * lib/configure: Enable 64-bit addresses on all Linux systems. 55615296723SMartin Mares 55715296723SMartin Mares * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they 55815296723SMartin Mares are shorter. 55915296723SMartin Mares 560224707baSMartin Mares2005-09-11 Martin Mares <[email protected]> 561224707baSMartin Mares 562224707baSMartin Mares * Released as 2.1.99-test11. 563224707baSMartin Mares 564224707baSMartin Mares * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls. 565224707baSMartin Mares 566aeaca5d3SMartin Mares2005-09-10 Martin Mares <[email protected]> 567aeaca5d3SMartin Mares 568224707baSMartin Mares * Released as 2.1.99-test10. 569224707baSMartin Mares 57063e6f2e0SMartin Mares * pci.ids: Synchronized with the current database snapshot. 57163e6f2e0SMartin Mares 572043ebdeeSMartin Mares * update-pciids.sh: Changed the default URL for downloading pci.ids 573043ebdeeSMartin Mares to http://pciids.sourceforge.net/v2.2/pci.ids. 574043ebdeeSMartin Mares 575043ebdeeSMartin Mares * lib/pci.h (PCI_LIB_VERSION): Added version identifier. 576043ebdeeSMartin Mares 577aeaca5d3SMartin Mares * lib/names.c: Rewritten the name database module almost from scratch. 578aeaca5d3SMartin Mares Everything is much cleaner and there are hopefully no more memory leaks; 579aeaca5d3SMartin Mares pci_lookup_name() now uses varargs in a backward compatible fashion. 580aeaca5d3SMartin Mares Introduced PCI_LOOKUP_NO_NUMBERS. 581aeaca5d3SMartin Mares 582aeaca5d3SMartin Mares The new code supports subsystem entries not tied to a specific device. 583aeaca5d3SMartin Mares I had to extend the format of pci.ids in order to support it, so I have 584aeaca5d3SMartin Mares extended the idea of the "C" (class) blocks and introduced "S" blocks 585aeaca5d3SMartin Mares for subsystems. To avoid doing more incompatible changes in the future, 586aeaca5d3SMartin Mares the parser skips unknown single-letter blocks without reporting errors. 587aeaca5d3SMartin Mares 588121c76c9SMartin Mares2005-08-23 Martin Mares <[email protected]> 589121c76c9SMartin Mares 59054e13765SMartin Mares * Released as 2.1.99-test9. 59154e13765SMartin Mares 59254e13765SMartin Mares * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent 59354e13765SMartin Mares gcc versions when optimizing anyway. 59454e13765SMartin Mares 59554e13765SMartin Mares * Made the path to pci.ids customizable and independent on the SHAREDIR. 59654e13765SMartin Mares Just override IDSDIR in the top-level Makefile. 59754e13765SMartin Mares 59854e13765SMartin Mares * pci.ids: Synchronized with the current database snapshot. 59954e13765SMartin Mares 60084d437d6SMartin Mares * lspci.man, setpci.man: Improved the man pages. Documented all access 60184d437d6SMartin Mares methods and which operations are privileged. 60284d437d6SMartin Mares 60384d437d6SMartin Mares * lspci.c: Another rewrite of config register caching, now also including 60484d437d6SMartin Mares lots of internal checks. It should be now perfectly able to cope with 60584d437d6SMartin Mares portions of the configuration space being inaccessible, for example 60684d437d6SMartin Mares due to insufficient access rights. 60784d437d6SMartin Mares 6083b8bf739SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X 6093b8bf739SMartin Mares capabilities. Includes partial support for PCI-X 2.0 (probably incomplete 6103b8bf739SMartin Mares as I haven't seen the spec). 6113b8bf739SMartin Mares 6123b8bf739SMartin Mares * lspci.c: Quell warnings about unused parameters. 6133b8bf739SMartin Mares 61484d437d6SMartin Mares * lspci.c: Removed C++ comments. 61584d437d6SMartin Mares 6163b8bf739SMartin Mares * lib/header.h: Merged definitions of extended capabilities and some new 6173b8bf739SMartin Mares PCI-X capability bits from linux-2.6.11/include/pci.h. 6183b8bf739SMartin Mares 6193b8bf739SMartin Mares * lspci.c (show_caps): Try to scan extended capabilities only if the 6203b8bf739SMartin Mares device has either PCI-X or PCI Express capability in its normal capability 6213b8bf739SMartin Mares list. 6223b8bf739SMartin Mares 623f7821e53SMartin Mares * lib/dump.c (dump_init): Reading of dumps works again. The dump reader 624f7821e53SMartin Mares now also remembers how much data it has read and refuses attempts to 625f7821e53SMartin Mares access more than that. 626ea4e5f5dSMartin Mares 62746ea554dSMartin Mares * setpci.man, lspci.c, README: prefer spelling "buses" over "busses". 62846ea554dSMartin Mares 6298afaab22SMartin Mares * lspci.c: If alloca() is not available, use xmalloc(), not malloc(). 6308afaab22SMartin Mares 631121c76c9SMartin Mares * lib/configure: Added x86_64 on Linux. 632121c76c9SMartin Mares 633c1c2c30eSMartin Mares2005-08-22 Martin Mares <[email protected]> 634c1c2c30eSMartin Mares 635b9ca9147SMartin Mares * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters. 636b9ca9147SMartin Mares Thanks to Matthew Wilcox for bug report. 637b9ca9147SMartin Mares 638c1c2c30eSMartin Mares * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places). 639b9ca9147SMartin Mares Thanks to Krzysztof Oledzki for pointing that out. 640c1c2c30eSMartin Mares 64126542a0bSMartin Mares2004-08-19 Martin Mares <[email protected]> 64226542a0bSMartin Mares 64326542a0bSMartin Mares * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism, 64426542a0bSMartin Mares because pciutils by default install to /usr/sbin. Update. 64526542a0bSMartin Mares 6466aa54f1bSMartin Mares2004-08-13 Martin Mares <[email protected]> 6476aa54f1bSMartin Mares 648aabb0a92SMartin Mares * Released as 2.1.99-test8. 649aabb0a92SMartin Mares 650f31412d1SMartin Mares * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are 651f31412d1SMartin Mares no longer exported to the outside world. 652f31412d1SMartin Mares 653ee7d8384SMartin Mares * README.Windows: Updated. 654ee7d8384SMartin Mares 655ee7d8384SMartin Mares * maint/release: Substitute version number in win32/config.h. 656ee7d8384SMartin Mares 657ee7d8384SMartin Mares * win32/config.h: Added. 658ee7d8384SMartin Mares 659ee7d8384SMartin Mares * lib/sysdep.h (bzero, strcasecmp): are macros on Windows. 660ee7d8384SMartin Mares 661ee7d8384SMartin Mares * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU 662ee7d8384SMartin Mares C library for use on systems where the default libraries lack 663ee7d8384SMartin Mares proper getopt. Currently used by the Windows port. 664ee7d8384SMartin Mares 665ee7d8384SMartin Mares * lib/sysdep.h, lib/types.h: Updates of the Windows port from 666ee7d8384SMartin Mares Alexander Stock. 667ee7d8384SMartin Mares 668489233b4SMartin Mares * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define 669489233b4SMartin Mares its own u8, u16, u32, byte and word types and uses what the user 670489233b4SMartin Mares has supplied instead. With this change, all namespace clashes should 671489233b4SMartin Mares be gone. 672489233b4SMartin Mares 673489233b4SMartin Mares * Makefile, lib/Makefile: Updated dependencies. 674489233b4SMartin Mares 675489233b4SMartin Mares * pciutils.h: Include lib/sysdep.h and move NONRET et al. there. 676489233b4SMartin Mares 677489233b4SMartin Mares * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because 678489233b4SMartin Mares it is included unconditionally in lib/types.h. 679489233b4SMartin Mares 680489233b4SMartin Mares * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h, 681489233b4SMartin Mares which is also used by the utilities. Also moved type declarations 682489233b4SMartin Mares from lib/pci.h to lib/types.h. 683489233b4SMartin Mares 684489233b4SMartin Mares * All files: Prepend a "PCI_" prefix in front of all configuration 685489233b4SMartin Mares defines to avoid namespace clashes. CAVEAT: If there is any libpci 686489233b4SMartin Mares application using the (undocumented) defines, it has to be updated. 687489233b4SMartin Mares 688489233b4SMartin Mares * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing 689489233b4SMartin Mares headers with the kernel a couple of years ago. 690489233b4SMartin Mares 6919bb4b4eaSMartin Mares * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6. 6929bb4b4eaSMartin Mares 6936aa54f1bSMartin Mares * lspci.c (show_rom): Use the same logic for printing disabled 6946aa54f1bSMartin Mares or unassigned ROM's as we do in show_bases() for the other BAR's. 6956aa54f1bSMartin Mares 6966aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Better reaction to 6976aa54f1bSMartin Mares invalid 64-bit addresses. Also d->hdrtype should not include 6986aa54f1bSMartin Mares bit 7, which caused mysterious errors on multi-function devices. 6996aa54f1bSMartin Mares 7006aa54f1bSMartin Mares * lib/generic.c (pci_generic_fill_info): Fill in base addresses 7016aa54f1bSMartin Mares even if the regions are known to be disabled. It is the client's 7026aa54f1bSMartin Mares job to interpret them. (And it is not a trivial job if you want 7036aa54f1bSMartin Mares to do it correctly, since you need to check I/O and memory enables 7046aa54f1bSMartin Mares on all upstream bridges, too.) However, it could be interesting to 7056aa54f1bSMartin Mares introduce functions for interpreting the addresses and even for 7066aa54f1bSMartin Mares mapping the regions and doing I/O on them. 7076aa54f1bSMartin Mares 70880e6c636SMartin Mares2004-07-30 Martin Mares <[email protected]> 70980e6c636SMartin Mares 71080e6c636SMartin Mares * lspci.c: HyperTransport improvements from Maciej. 71180e6c636SMartin Mares 712d6324891SMartin Mares2004-07-11 Martin Mares <[email protected]> 713d6324891SMartin Mares 714d6324891SMartin Mares * lib/sysfs.c (sysfs_get_resources): Arguments now correspond 715d6324891SMartin Mares to the format string. [Patch by Bill Nottingham] 716d6324891SMartin Mares 717ec25b52dSMartin Mares2004-07-05 Martin Mares <[email protected]> 718ec25b52dSMartin Mares 719362be683SMartin Mares * Released as 2.1.99-test7. 720362be683SMartin Mares 721ec25b52dSMartin Mares * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but 722ec25b52dSMartin Mares ended up with rewriting the fetching mechanism to be fully dynamic, 723ec25b52dSMartin Mares but avoid reading config space registers not explicitly requested. 724ec25b52dSMartin Mares 725ec25b52dSMartin Mares2004-06-29 Matthew Wilcox <[email protected]> 726ec25b52dSMartin Mares 727ec25b52dSMartin Mares * lspci.c: More work on PCI Express dumping. 728ec25b52dSMartin Mares 729ec25b52dSMartin Mares * lib/header.h: Updated PCI Express capability definitions. 730ec25b52dSMartin Mares 731ec25b52dSMartin Mares * lib/proc.c (proc_read): Removed bogus warning. 732ec25b52dSMartin Mares 733ec25b52dSMartin Mares * common.c (xrealloc): Introduced. 734ec25b52dSMartin Mares 735ec25b52dSMartin Mares * lspci.man: Added -xxxx. 736ec25b52dSMartin Mares 73709817437SMartin Mares2004-06-27 Martin Mares <[email protected]> 73809817437SMartin Mares 739d1fa27ebSMartin Mares * Released as 2.1.99-test6. 740d1fa27ebSMartin Mares 7414d67aa89SMartin Mares * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap. 7424d67aa89SMartin Mares Patch by Roland Dreier <[email protected]>, cleaned up by me. 7434d67aa89SMartin Mares 7444d67aa89SMartin Mares * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch() 7454d67aa89SMartin Mares failures. 7464d67aa89SMartin Mares 7474d67aa89SMartin Mares * lib/header.h: Added PCI Express extended capabilities. Again by Matthew. 7484d67aa89SMartin Mares 7494d67aa89SMartin Mares * lspci.c (show_express): Added dumping of PCI Express cap. 7504d67aa89SMartin Mares Patch by Matthew Wilcox. 7514d67aa89SMartin Mares 7524d67aa89SMartin Mares * lib/header.h: Added a list of PCI 3.0 capabilities and also details 7534d67aa89SMartin Mares on PCI Express caps. Patch by Matthew Wilcox <[email protected]>. 7544d67aa89SMartin Mares 75509817437SMartin Mares * lspci.c (check_root): Gone. No explicit checks for root are needed, 75609817437SMartin Mares report correct errors reported by the libpci instead. 75709817437SMartin Mares 75809817437SMartin Mares * lspci.c: Added dumping of the extended config space on "-xxxx". 75909817437SMartin Mares Better caching of config registers. 76009817437SMartin Mares 76109817437SMartin Mares * setpci.c (main): Allow access to whole 4096 bytes of the config space. 76209817437SMartin Mares 76309817437SMartin Mares * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads, 76409817437SMartin Mares just return the appropriate error code. 76509817437SMartin Mares 76609817437SMartin Mares * lib: Added support for extended (4096-byte) configuration space, 76709817437SMartin Mares currently implemented only in Linux proc and sysfs access methods 76809817437SMartin Mares and of course in the dump reader. 76909817437SMartin Mares 7700d656226SMartin Mares2004-05-29 Martin Mares <[email protected]> 7710d656226SMartin Mares 772c0eece92SMartin Mares * Released as 2.1.99-test5. 773c0eece92SMartin Mares 774a2413560SMartin Mares * lib/pci.h: Windows don't have the standard u_int* types. 775a2413560SMartin Mares 776a2413560SMartin Mares * lib/internal.h: <sys/param.h> required on Windows for endianity 777a2413560SMartin Mares macros. 778a2413560SMartin Mares 779a2413560SMartin Mares * lib/i386-ports.c: Connected i386-io-windows.h. 780a2413560SMartin Mares 781a2413560SMartin Mares * lspci.c (check_root): geteuid() is not available on Windows. 782a2413560SMartin Mares 783a2413560SMartin Mares * lib/i386-io-windows.h: Added Windows port contributed by Alexander 784a2413560SMartin Mares Stock <[email protected]>. 785a2413560SMartin Mares 786a2413560SMartin Mares * lib/configure: Hopefully fixed SunOS port broken by various 787a2413560SMartin Mares changes to the configure script. 788a2413560SMartin Mares 7890d656226SMartin Mares * Makefile, lib/configure: Cross-compilation support, patch by Maciej. 7900d656226SMartin Mares 791138c0385SMartin Mares2004-05-28 Martin Mares <[email protected]> 792138c0385SMartin Mares 7939f490382SMartin Mares * Released as 2.1.99-test4. 7949f490382SMartin Mares 795cce2caacSMartin Mares * lspci.c (show_verbose): Header type 1 is probably legal for all 796cce2caacSMartin Mares types of bridges, not only for PCI-to-PCI bridges. 797cce2caacSMartin Mares 798b569ef09SMartin Mares * lspci.c (format_agp_rate): Write "x16", not "x@". 799b569ef09SMartin Mares (show_agp): rate[] could overflow. 800b569ef09SMartin Mares Bugs reported by Jakub Bogusz <[email protected]>. 801b569ef09SMartin Mares 802bfc4fe7aSMartin Mares * lspci.c (show_ht_*): Show HyperTransport capability with all its 803bfc4fe7aSMartin Mares details. Once again code by Maciej simplified (i.e., possibly broken) 804bfc4fe7aSMartin Mares by me. 805bfc4fe7aSMartin Mares 806bfc4fe7aSMartin Mares * lib/header.h: Added declarations of HyperTransport capability. 807bfc4fe7aSMartin Mares Again thanks to Maciej. 808bfc4fe7aSMartin Mares 809138c0385SMartin Mares * lspci.c: Decode all bits of the secondary status word in type 1 headers. 810138c0385SMartin Mares Thanks to Maciej W. Rozycki <[email protected]> for the patch. 811138c0385SMartin Mares 8128fc75dbcSMartin Mares2003-12-27 Martin Mares <[email protected]> 8138fc75dbcSMartin Mares 81481abd2a7SMartin Mares * Released as 2.1.99-test3. 81581abd2a7SMartin Mares 8161f7c91ccSMartin Mares * lspci.man, setpci.man: Document domains and correct spelling. 8171f7c91ccSMartin Mares 8181f7c91ccSMartin Mares * lib/dump.c (dump_init): Added ability to read domain numbers. 8191f7c91ccSMartin Mares 82084c8d1bbSMartin Mares * lspci.c: Devices in domains different from 0 have their slot number 8211f7c91ccSMartin Mares printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains 8221f7c91ccSMartin Mares as well. 82384c8d1bbSMartin Mares 82484c8d1bbSMartin Mares * lib/filter.c: Slot filters understand domains. 82584c8d1bbSMartin Mares 82684c8d1bbSMartin Mares * lib/generic.c: Mention the domain in slot numbers in all error messages. 82784c8d1bbSMartin Mares 82884c8d1bbSMartin Mares * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong. 82984c8d1bbSMartin Mares 83084c8d1bbSMartin Mares * lib/access.c (pci_get_dev): Added support for domains. 83184c8d1bbSMartin Mares 83284c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config 83384c8d1bbSMartin Mares registers (or to be precise, leave it for the generic parts of the pcilib 83484c8d1bbSMartin Mares to do so) instead of reading them from the sysfs. It's faster this way. 83584c8d1bbSMartin Mares 83684c8d1bbSMartin Mares * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal 83784c8d1bbSMartin Mares variable. Better read it from the config registers (it's cached anyway). 83884c8d1bbSMartin Mares 83984c8d1bbSMartin Mares * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype. 84084c8d1bbSMartin Mares lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it. 84184c8d1bbSMartin Mares Saves lots of unnecessary file accesses. 84284c8d1bbSMartin Mares 84311f7b31bSMartin Mares * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter 84411f7b31bSMartin Mares is not supported by all C libraries. 84511f7b31bSMartin Mares 84611f7b31bSMartin Mares * Makefile: Always enter the lib directory (remember that we don't have 84711f7b31bSMartin Mares full dependecies for the library in the top-level Makefile; hmmm, another 84811f7b31bSMartin Mares thing to rewrite some day). 84911f7b31bSMartin Mares 85011f7b31bSMartin Mares * lib/sysfs.c: Added Linux sysfs access method based on the patch 85111f7b31bSMartin Mares written by Matthew Wilcox <[email protected]>. 85211f7b31bSMartin Mares 85311f7b31bSMartin Mares * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc". 85411f7b31bSMartin Mares 85511f7b31bSMartin Mares * lib/pread.h: The hacks to support pread on various versions 85611f7b31bSMartin Mares of Linux libc moved there. 85711f7b31bSMartin Mares 85811f7b31bSMartin Mares * lib/proc.c (proc_setup): The return value of snprintf() varies 85911f7b31bSMartin Mares between glibc versions, so we need to check both for a negative 86011f7b31bSMartin Mares values and for too large values. 86111f7b31bSMartin Mares 8624284af58SMartin Mares * Removed last few references to the "Linux PCI Utilities", the 8634284af58SMartin Mares package is pretty cross-platform now :) 8644284af58SMartin Mares 8654284af58SMartin Mares2003-12-27 Martin Mares <[email protected]> 8664284af58SMartin Mares 867ab12277eSMartin Mares * Released as 2.1.99-test2. 868ab12277eSMartin Mares 869ab12277eSMartin Mares * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the 870ab12277eSMartin Mares release scripts insert the current version. "make release" is gone. 871ab12277eSMartin Mares 872ab12277eSMartin Mares * maint/release, maint/release.pm: Added a new system of scripts for 873ab12277eSMartin Mares making releases including inter-version diffs etc. 874ab12277eSMartin Mares 875ab12277eSMartin Mares * Makefile: Cleaned up. 876ab12277eSMartin Mares 877ab12277eSMartin Mares * lib/fbsd-device.c: I patched another copy of this file by mistake, 878ab12277eSMartin Mares this time the version checks should be right. 879ab12277eSMartin Mares 880ab12277eSMartin Mares2003-12-27 Martin Mares <[email protected]> 881ab12277eSMartin Mares 8826d722cd6SMartin Mares * Released as 2.1.99-test1. 8836d722cd6SMartin Mares 884dd33246aSMartin Mares * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h: 885dd33246aSMartin Mares Remove shadows of the syscall access method which was never 886dd33246aSMartin Mares implemented. 887dd33246aSMartin Mares 88880b3121aSMartin Mares * update-pciids.sh: Try to preserve permissions of the old file 88980b3121aSMartin Mares if chmod supports --reference. Should close Debian Bug #223740. 89080b3121aSMartin Mares 8916aea909aSMartin Mares * lib/proc.c (proc_setup): Increased path name length limit to 1024. 8926aea909aSMartin Mares Thanks for Redhat and Mandrake for inspiration. 8936aea909aSMartin Mares 8946aea909aSMartin Mares * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses. 8956aea909aSMartin Mares Grabbed from Redhat (Fedora) patches. 8966aea909aSMartin Mares 8976aea909aSMartin Mares2003-12-27 Martin Mares <[email protected]> 8986aea909aSMartin Mares 899f701ff47SMartin Mares Merged bug fixes from Debian patches: 900f701ff47SMartin Mares 901f701ff47SMartin Mares * lspci.c (show_verbose): "Cache Line Size" should be capitalized. 902f701ff47SMartin Mares 903f701ff47SMartin Mares * lspci.c (show_pcix_nobridge): Added a missing newline. 904f701ff47SMartin Mares 9052240db8cSMartin Mares * lib/proc.c (proc_scan): When reading the header type, don't 9062240db8cSMartin Mares forget to clear the topmost bit indicating that the device has 907f701ff47SMartin Mares multiple functions. 9082240db8cSMartin Mares 9092240db8cSMartin Mares2003-12-27 Martin Mares <[email protected]> 9102240db8cSMartin Mares 91145902995SMartin Mares Updated the FreeBSD port. Thanks to Samy Al Bahra <[email protected]> 91245902995SMartin Mares for the patches: 91345902995SMartin Mares 91445902995SMartin Mares * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined. 91545902995SMartin Mares * lib/fbsd-device.c: Select the right set of system includes according 91645902995SMartin Mares to __FreeBSD_version. 91745902995SMartin Mares 91845902995SMartin Mares2003-12-27 Martin Mares <[email protected]> 91945902995SMartin Mares 9208fc75dbcSMartin Mares Merged support for Solaris on i386 by Bill Moore <[email protected]> 9218fc75dbcSMartin Mares and cleaned up: 9228fc75dbcSMartin Mares 9238fc75dbcSMartin Mares * lib/configure: Recognize SunOS. 9248fc75dbcSMartin Mares * lib/internal.h: Learn how to recognize byte order on SunOS. 9258fc75dbcSMartin Mares * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c. 9268fc75dbcSMartin Mares * lib/i386-io-linux.h: Linux specific part. 9278fc75dbcSMartin Mares * lib/i386-io-hurd.h: GNU/Hurd specific part. 9288fc75dbcSMartin Mares * lib/i386-io-sunos.h: SunOS specific part. 9298fc75dbcSMartin Mares 9309739916eSMartin Mares2003-12-26 Martin Mares <[email protected]> 9319739916eSMartin Mares 9329739916eSMartin Mares * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly. 9339739916eSMartin Mares 9349739916eSMartin Mares * lib/pci.h: Types declared in <sys/types.h> should be usable on all 9359739916eSMartin Mares platforms we currently support, so kill the forest of #ifdef's and 9369739916eSMartin Mares use them in all cases. 9379739916eSMartin Mares 9389739916eSMartin Mares * lib/pci.h: Use ULONG_MASK to decide whether we should use long 9399739916eSMartin Mares or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS. 9409739916eSMartin Mares Define format strings for addresses, port numbers and IRQ numbers 9419739916eSMartin Mares directly in pci.h. 9429739916eSMartin Mares 9439739916eSMartin Mares * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses. 9449739916eSMartin Mares 94580459c65SMartin Mares2003-12-26 Marco Gerards <[email protected]> 94680459c65SMartin Mares 94780459c65SMartin Mares Added support for the GNU Hurd (cleaned up by Martin Mares): 94880459c65SMartin Mares 94980459c65SMartin Mares * lib/configure [GNU]: Use the i386 ports for configuration access. 95080459c65SMartin Mares * lib/i386-ports.c: Don't call iopl() on the Hurd. 95180459c65SMartin Mares * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining 95280459c65SMartin Mares u8 to u32. 95380459c65SMartin Mares 954a85769a8SMartin Mares2003-12-26 Martin Mares <[email protected]> 955a85769a8SMartin Mares 9567dacd9c8SMartin Mares * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call 9577dacd9c8SMartin Mares config_fetch() to ensure that the registers have been read. Thanks to 9587dacd9c8SMartin Mares Bill Wood <[email protected]> for the patch. 9597dacd9c8SMartin Mares 9607dacd9c8SMartin Mares * lspci.c: Ensure that failure of config_fetch() is handled correctly 9617dacd9c8SMartin Mares at all places. 9627dacd9c8SMartin Mares 9634063c31cSMartin Mares * lspci.man: There was one more explicit reference to /usr/share/pci.ids. 9644063c31cSMartin Mares Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <[email protected]>. 9654063c31cSMartin Mares 9663fe8a38dSMartin Mares * setpci.c (main): Better error messages. 9673fe8a38dSMartin Mares 9685f5b1a7bSMartin Mares * setpci.c (ex_op): The demo mode should disable only writing, not reading. 9695f5b1a7bSMartin Mares 9705f5b1a7bSMartin Mares * setpci.man: The documentation was inconsistent on what should -D do. 9715f5b1a7bSMartin Mares Document the new behaviour. 972b251f40bSMartin Mares 97391e37a49SMartin Mares * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating 97491e37a49SMartin Mares the GCC specific __attribute__((noreturn)) and killed the hack with 97591e37a49SMartin Mares redefining __attribute__ on non-GCC compilers. 97691e37a49SMartin Mares 9774afd29d3SMartin Mares * Makefile: Added missing dependencies. Parallel builds work now. 9784afd29d3SMartin Mares Problem reported by Andreas Haumer <[email protected]>, but I chose 9794afd29d3SMartin Mares a different fix. 9804afd29d3SMartin Mares 981b0f1a03bSMartin Mares * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell 982b0f1a03bSMartin Mares command every time $(MANDIR) is referenced. 983b0f1a03bSMartin Mares 984b7fd8e19SMartin Mares * lspci.c (main): The error message for `lspci -s' incorrectly mentioned 985b7fd8e19SMartin Mares a `-f' switch. Reported by Steve Finney <[email protected]>. 986b7fd8e19SMartin Mares 98705bb10a2SMartin Mares * lib/generic.c: Removed memory leak in pci_generic_bus_scan(). 98805bb10a2SMartin Mares Reported by Gary Parnes <[email protected]>. 98905bb10a2SMartin Mares 990a832f6f1SMartin Mares * Replaced obsolete syntax of __attribute__((unused)) in the middle of 991a832f6f1SMartin Mares parameter declarations (which is no longer supported by GCC 3.1) by the 992a832f6f1SMartin Mares current syntax (attribute at the end). Thanks to [email protected] 993a832f6f1SMartin Mares for reporting this problem. 994a832f6f1SMartin Mares 995a85769a8SMartin Mares * Removed CVS $Id$ tags from all files. 996a85769a8SMartin Mares 997a85769a8SMartin Mares * Makefile: Added some more warnings. 998a85769a8SMartin Mares 999b7351143SMartin Mares * setpci.c: Cleaned up mask/value code. 1000b7351143SMartin Mares 1001b7351143SMartin Mares2003-12-08 Thayne Harbaugh <[email protected]> 1002b7351143SMartin Mares 1003b7351143SMartin Mares * setpci.c: Individual bits to be set can be specified as <value>:<mask>. 1004b7351143SMartin Mares 10052a5d5cf9SMartin Mares2003-11-29 Martin Mares <[email protected]> 10062a5d5cf9SMartin Mares 10072a5d5cf9SMartin Mares * Imported the pciutils sources to my Arch repository. Good-bye, CVS. 10082a5d5cf9SMartin Mares 1009d772ef15SMartin Mares2003-01-04 Martin Mares <[email protected]> 1010d772ef15SMartin Mares 10111b95f396SMartin Mares * Released as 2.1.11. 10121b95f396SMartin Mares 1013c83293ebSMartin Mares * Makefile: Changed configuration of installation directories -- 1014c83293ebSMartin Mares all paths are now set at the top of the Makefile instead of being 1015c83293ebSMartin Mares scattered between the installation rules. The default installation 1016c83293ebSMartin Mares now goes always to /usr/local regardless of the OS as most distributions 1017c83293ebSMartin Mares already contain some version of pciutils and we don't want custom 1018c83293ebSMartin Mares installations to interfere with the default ones. 1019c83293ebSMartin Mares 1020c83293ebSMartin Mares * Makefile: Removed a couple of ancient install hacks: we no longer 1021c83293ebSMartin Mares try to avoid overwriting a newer pci.ids file (users are now expected 1022c83293ebSMartin Mares to use update-ids) and we don't try to remove /etc/pci.ids (a long time 1023c83293ebSMartin Mares has passed since the last version which used it). 1024c83293ebSMartin Mares 1025e2875dcdSMartin Mares * Makefile: Paths to pci.ids in man pages automatically get the right path. 1026e2875dcdSMartin Mares 10271b95f396SMartin Mares * Added the update-ids utility. 10280138a2a7SMartin Mares 1029d772ef15SMartin Mares * lib: Removed partially implemented "syscall" access method which will 1030d772ef15SMartin Mares probably never be needed. 1031d772ef15SMartin Mares 1032eb620239SMartin Mares2002-12-27 Martin Mares <[email protected]> 1033eb620239SMartin Mares 1034130090bdSMartin Mares * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe. 1035130090bdSMartin Mares 1036eb620239SMartin Mares * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with 1037eb620239SMartin Mares discontiguous numbering of functions. This is already present in the Linux 1038eb620239SMartin Mares kernel for several years, but I forgot to update pciutils as well. 1039eb620239SMartin Mares 1040848b4347SMartin Mares2002-12-26 Martin Mares <[email protected]> 1041848b4347SMartin Mares 1042579b19ffSMartin Mares * lib/header.h, lspci.c: Dump AGP3 flags and speeds. 1043579b19ffSMartin Mares 1044579b19ffSMartin Mares * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header, 1045579b19ffSMartin Mares there is no reason to prefer the kernel version. 1046579b19ffSMartin Mares 1047579b19ffSMartin Mares * lib/proc.c (proc_scan): Don't forget to initialize hdrtype. 1048579b19ffSMartin Mares 1049848b4347SMartin Mares * Added preliminary version of NetBSD support by Quentin Garnier 1050848b4347SMartin Mares <[email protected]>. 1051848b4347SMartin Mares 1052f0952474SMartin Mares2002-04-06 Martin Mares <[email protected]> 1053f0952474SMartin Mares 1054f0952474SMartin Mares * lspci.c: Mention "-xxx" in the help. 1055f0952474SMartin Mares 1056d2f666f1SMartin Mares2002-03-30 Martin Mares <[email protected]> 1057d2f666f1SMartin Mares 10589bd44bb0SMartin Mares * Released as 2.1.10. 10599bd44bb0SMartin Mares 1060a33d0eb7SMartin Mares * Removed pci.ids from the CVS as they are now maintained separately. 1061a33d0eb7SMartin Mares They are still included in the tarball, but if you are building pciutils 1062a33d0eb7SMartin Mares from CVS sources or you want to get a newer ID file than the one distributed, 1063a33d0eb7SMartin Mares just use "make update-ids" to download the most recent snapshot from 1064a33d0eb7SMartin Mares pciids.sf.net. 1065a33d0eb7SMartin Mares 1066a33d0eb7SMartin Mares * Makefile, README: Updated accordingly. 1067a33d0eb7SMartin Mares 1068a33d0eb7SMartin Mares * Makefile: Added a couple of maintenance targets. 1069a33d0eb7SMartin Mares 1070a33d0eb7SMartin Mares * maint/*: Maintainer's utilities now reside here (present only in CVS, 1071a33d0eb7SMartin Mares not in the tarball). 1072a33d0eb7SMartin Mares 1073d2f666f1SMartin Mares * lib/names.c (parse_name_list): End-of-line comments are no longer 1074d2f666f1SMartin Mares supported. Hashes are now perfectly valid in all names and they start 1075d2f666f1SMartin Mares a comment only at the start of the line. 1076d2f666f1SMartin Mares 1077ee551b73SMartin Mares2002-03-26 Martin Mares <[email protected]> 1078ee551b73SMartin Mares 107907159913SMartin Mares * README: Rewritten. 108007159913SMartin Mares 1081ee551b73SMartin Mares * Makefile: When the currently installed pci.ids file is newer than 1082ee551b73SMartin Mares the version to be installed, don't overwrite it. Suggested by 1083ee551b73SMartin Mares Jean Delvare <[email protected]>. 1084ee551b73SMartin Mares 1085bc7b1d62SMartin Mares2002-03-24 Martin Mares <[email protected]> 1086bc7b1d62SMartin Mares 10875f5e6f64SMartin Mares * lspci.c (show_pcix_bridge): Added PCI-X capability display. 10885f5e6f64SMartin Mares Contributed by Jeff Garzik <[email protected]>. 10895f5e6f64SMartin Mares 10905f5e6f64SMartin Mares * lib/header.h: Added PCI-X stuff. Again by Jeff. 10915f5e6f64SMartin Mares 10925f5e6f64SMartin Mares * Makefile (CFLAGS): -Werror is gone. 10935f5e6f64SMartin Mares 1094a1052f16SMartin Mares * lspci.c (format_agp_rate): Fixed AGP rate reporting. 1095a1052f16SMartin Mares 1096bc7b1d62SMartin Mares * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and 1097bc7b1d62SMartin Mares function 7. 1098bc7b1d62SMartin Mares 1099bc7b1d62SMartin Mares * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor 1100bc7b1d62SMartin Mares or device hexadecimally, don't confuse it with chip vendor/device ID. 1101bc7b1d62SMartin Mares First reported by Marc Boucher <[email protected]>. 1102bc7b1d62SMartin Mares 1103f793990cSMartin Mares2001-11-04 Martin Mares <[email protected]> 1104f793990cSMartin Mares 1105ee551b73SMartin Mares * Released as 2.1.9. 1106ee551b73SMartin Mares 1107f793990cSMartin Mares * pci.ids: Synced with the PCI ID Repository at SourceForge 1108f793990cSMartin Mares (http://pciids.sourceforge.net/). 1109f793990cSMartin Mares 11101d174e56SMartin Mares2000-08-25 Martin Mares <[email protected]> 11111d174e56SMartin Mares 11121d174e56SMartin Mares * pci.ids: Updated ID's, synced with kernel 2.4.0-test7. 11131d174e56SMartin Mares 111465b4327eSMartin Mares2000-06-13 Martin Mares <[email protected]> 111565b4327eSMartin Mares 111665b4327eSMartin Mares * Makefile (uninstall): Fixed. 111765b4327eSMartin Mares 111865b4327eSMartin Mares * pci.ids: ID updates. 111965b4327eSMartin Mares 11204a219d5fSMartin Mares2000-05-20 Martin Mares <[email protected]> 11214a219d5fSMartin Mares 11224a219d5fSMartin Mares * Released as 2.1.8. 11234a219d5fSMartin Mares 11244a219d5fSMartin Mares * pci.ids: ID updates. 11254a219d5fSMartin Mares 11264a219d5fSMartin Mares * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds. 11274a219d5fSMartin Mares 11284a219d5fSMartin Mares2000-05-04 Martin Mares <[email protected]> 11294a219d5fSMartin Mares 11304a219d5fSMartin Mares * lspci.c (show_verbose): If the header type doesn't match device 11314a219d5fSMartin Mares class, just print a warning and still use the header type, assuming 11324a219d5fSMartin Mares bogus class info. 11334a219d5fSMartin Mares 113410c90662SMartin Mares2000-05-01 Martin Mares <[email protected]> 113510c90662SMartin Mares 113672b9b690SMartin Mares * lspci.c (show_pm): Updated according to PCI PM specs 1.1. 113772b9b690SMartin Mares 113810c90662SMartin Mares * pci.ids: Updated Contemporary Control ARCnet card entries. 113910c90662SMartin Mares 114010c90662SMartin Mares * pci.ids: Synchronized class list with latest PCI SIG documents. 114110c90662SMartin Mares 1142a239ade6SMartin Mares2000-04-29 Martin Mares <[email protected]> 1143a239ade6SMartin Mares 1144a239ade6SMartin Mares * lib/names.c (pci_lookup_name): Fixed the cheat. 1145a239ade6SMartin Mares 1146a239ade6SMartin Mares * lib/internal.h: Moved UNUSED/inline hacks above all other declarations. 1147a239ade6SMartin Mares 1148a239ade6SMartin Mares * pci.ids: Various ID updates. 1149a239ade6SMartin Mares 11502c83b860SMartin Mares2000-04-21 Martin Mares <[email protected]> 11512c83b860SMartin Mares 11522c83b860SMartin Mares * Released as 2.1.7. 11532c83b860SMartin Mares 11542c83b860SMartin Mares * pciutils.spec: Added German description. 11552c83b860SMartin Mares 11562c83b860SMartin Mares * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's 11572c83b860SMartin Mares are the same as device ID and just output subsystem name according to 11582c83b860SMartin Mares device name. 11592c83b860SMartin Mares 11602c83b860SMartin Mares * lib/proc.c: Use UNUSED instead of __attribute__((unused)). 11612c83b860SMartin Mares 11622c83b860SMartin Mares * lib/pci.h: Added the correct typedefs for AIX. 11632c83b860SMartin Mares 11642c83b860SMartin Mares * lib/generic.c (pci_generic_scan_bus): Export. 11652c83b860SMartin Mares 11662c83b860SMartin Mares * lib/configure: Detect AIX. Use "echo '...\c'" instead of 11672c83b860SMartin Mares "echo -n" if the shell isn't bash. 11682c83b860SMartin Mares 11692c83b860SMartin Mares * lspci.c: Avoid using alloca() if not compiled by GCC. 11702c83b860SMartin Mares (insert_dev): Avoid returning a void value. 11712c83b860SMartin Mares 11722c83b860SMartin Mares * Makefile: Choose which install utility to use according to 11732c83b860SMartin Mares OS type. Also use `-o' instead of `-or' in find arguments. 11742c83b860SMartin Mares Part of the AIX port. 11752c83b860SMartin Mares 11762c83b860SMartin Mares * lib/aix-device.c: Added AIX low-level interface. Contributed 11772c83b860SMartin Mares by Dave Johnson <[email protected]>, thanks a lot! 11782c83b860SMartin Mares 11792c83b860SMartin Mares * pci.ids: Few new ID's. 11802c83b860SMartin Mares 11812c83b860SMartin Mares * pciutils.h, lib/internal.h: Redefine __attribute__ and inline 11822c83b860SMartin Mares when not compiled by GCC. 11832c83b860SMartin Mares 1184c1a828daSMartin Mares2000-04-17 Martin Mares <[email protected]> 1185c1a828daSMartin Mares 1186c1a828daSMartin Mares * Released as 2.1.6. 1187c1a828daSMartin Mares 1188c1a828daSMartin Mares * pci.ids: Added a large batch of ID's contributed by Gunther 1189c1a828daSMartin Mares Mayer <[email protected]> and synced the 1190c1a828daSMartin Mares list with the 2.3.99pre6 kernel. 1191c1a828daSMartin Mares 1192e91dd3abSMartin MaresThu Mar 9 13:11:39 2000 Martin Mares <[email protected]> 1193e91dd3abSMartin Mares 1194a80b79a9SMartin Mares * lib/example.c: Added a simple example of how to use 1195a80b79a9SMartin Mares the library. 1196a80b79a9SMartin Mares 119789984232SMartin Mares * lspci.man, setpci.man: Revealed --version. Well spotted 119889984232SMartin Mares by Adam Sulmicki. 119989984232SMartin Mares 1200e91dd3abSMartin Mares * pci.ids: Added lots of new ID's and synced with 2.3.50. 1201e91dd3abSMartin Mares 120278d9c5e2SMartin MaresTue Feb 15 00:16:21 2000 Martin Mares <[email protected]> 120378d9c5e2SMartin Mares 120478d9c5e2SMartin Mares * Released as 2.1.5. 120578d9c5e2SMartin Mares 120678d9c5e2SMartin Mares * pciutils.spec: Updated spec file from Andreas Jaeger. Now using 120778d9c5e2SMartin Mares %{_mandir} to find the right location to install manual pages to. 120878d9c5e2SMartin Mares 120978d9c5e2SMartin Mares * pci.ids: New ID's. 121078d9c5e2SMartin Mares 121178d9c5e2SMartin Mares * setpci.c (main): Don't crash when `-s' or `-d' is given with 121278d9c5e2SMartin Mares no argument. 121378d9c5e2SMartin Mares 1214f8141ae2SMartin MaresMon Jan 24 20:04:11 2000 Andreas Jaeger <[email protected]> 1215f8141ae2SMartin Mares 1216f8141ae2SMartin Mares * lib/i386-ports.c: Include <asm/io.h> only on systems without 1217f8141ae2SMartin Mares glibc. 1218f8141ae2SMartin Mares 1219f8141ae2SMartin MaresMon Jan 24 11:24:43 2000 Martin Mares <[email protected]> 1220f8141ae2SMartin Mares 1221f8141ae2SMartin Mares * Makefile: Modified to work with the Linux FHS brain-damaged idea 1222f8141ae2SMartin Mares of putting man pages to /usr/share/man. Now we choose either /usr/man 1223f8141ae2SMartin Mares or /usr/share/man depending on which one exists. 1224f8141ae2SMartin Mares 122559e76e8bSMartin MaresSun Jan 23 10:52:34 2000 Martin Mares <[email protected]> 122659e76e8bSMartin Mares 122759e76e8bSMartin Mares * pci.ids: Synced with Linux 2.3.40. 122859e76e8bSMartin Mares 122959e76e8bSMartin Mares * Released as version 2.1.4. 123059e76e8bSMartin Mares 12312dfd48cdSMartin MaresThu Jan 20 11:08:32 2000 Martin Mares <[email protected]> 12322dfd48cdSMartin Mares 12332715403fSMartin Mares * lspci.c (scan_device): Fixed bug in reading of cardbus extensions. 12342715403fSMartin Mares 123581077814SMartin Mares * lib/proc.c: pread/pwrite fixed again, this time on libc5 :( 123681077814SMartin Mares 123781077814SMartin Mares * lspci.c (format_agp_rate): Better formatting of AGP rates. 123881077814SMartin Mares 123981077814SMartin Mares * pci.ids: New ID's. 124081077814SMartin Mares 12412dfd48cdSMartin Mares * lib/configure: Added configuration for ia64 (the same as for Alpha). 12422dfd48cdSMartin Mares Patch from Stephane Eranian <[email protected]>. 12432dfd48cdSMartin Mares 12445a258860SMartin MaresThu Jan 13 23:01:52 2000 Martin Mares <[email protected]> 12455a258860SMartin Mares 12465a258860SMartin Mares * Released as version 2.1.3. 12475a258860SMartin Mares 12485a258860SMartin Mares * pci.ids: New ID's. 12495a258860SMartin Mares 12505a258860SMartin Mares * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli. 12515a258860SMartin Mares 12525a258860SMartin Mares * lib/access.c: Corrected order of access methods -- it's wonderful how 12535a258860SMartin Mares long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff. 12545a258860SMartin Mares 12550c047bbeSMartin MaresSat Dec 11 23:34:48 1999 Martin Mares <[email protected]> 12560c047bbeSMartin Mares 12570c047bbeSMartin Mares * Released as version 2.1.2. 12580c047bbeSMartin Mares 12590c047bbeSMartin Mares * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's. 12600c047bbeSMartin Mares 126133bc28a5SMartin MaresSat Dec 4 13:11:03 1999 Martin Mares <[email protected]> 126233bc28a5SMartin Mares 126339231205SMartin Mares * Released as version 2.1.1. 126439231205SMartin Mares 126533bc28a5SMartin Mares * pci.ids: Several new ID's. 126633bc28a5SMartin Mares 126733bc28a5SMartin Mares * setpci.c (exec_op): Don't forget to increment address after writing 126833bc28a5SMartin Mares single value, so that `30.b=12,34,56,78' works as expected. Reported 126933bc28a5SMartin Mares by Petr Soucek <[email protected]>. 127033bc28a5SMartin Mares 12718d047897SMartin MaresWed Nov 3 10:24:38 1999 Martin Mares <[email protected]> 12728d047897SMartin Mares 12738d047897SMartin Mares * lspci.c (show_terse): If prog-if is zero, but it's present in the 12748d047897SMartin Mares ID list, show it. 12758d047897SMartin Mares 12766afc6538SMartin MaresSat Oct 30 11:06:35 1999 Martin Mares <[email protected]> 12776afc6538SMartin Mares 12786afc6538SMartin Mares * Released as version 2.1. 12796afc6538SMartin Mares 12806afc6538SMartin Mares * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in 12816afc6538SMartin Mares lots of contributed entries. 12826afc6538SMartin Mares 12838f756113SMartin MaresThu Oct 14 10:40:12 1999 Dave Jones <[email protected]> 12848f756113SMartin Mares 12858f756113SMartin Mares * pci.ids: Added lots of subsystem definitions. 12868f756113SMartin Mares 1287d4798a32SMartin MaresSat Oct 9 14:32:28 1999 Martin Mares <[email protected]> 1288d4798a32SMartin Mares 1289d4798a32SMartin Mares * setpci.man: Better example. 1290d4798a32SMartin Mares 1291d4798a32SMartin Mares * lspci.c: Resolve prog-if names. 1292d4798a32SMartin Mares 1293d4798a32SMartin Mares * lib/names.c: Adapted to new pci.ids syntax. 1294d4798a32SMartin Mares 1295d4798a32SMartin Mares * pci.ids: Reorganized the pci.ids file. Subsystems are listed 1296d4798a32SMartin Mares under devices, classes can optionally contain prog-if information. 1297d4798a32SMartin Mares New ID's, as usually. 1298d4798a32SMartin Mares 1299e306e911SMartin MaresWed Sep 22 09:45:24 1999 Martin Mares <[email protected]> 1300e306e911SMartin Mares 1301e306e911SMartin Mares * pci.ids: New ID's. As usually. 1302e306e911SMartin Mares 1303e306e911SMartin Mares * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows 1304e306e911SMartin Mares unless we're vvvery verbose. 1305e306e911SMartin Mares 1306e306e911SMartin MaresMon Sep 20 11:22:54 1999 Martin Mares <[email protected]> 1307e306e911SMartin Mares 1308e306e911SMartin Mares * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line. 1309e306e911SMartin Mares 1310e64a576cSMartin MaresTue Sep 14 09:31:01 1999 Martin Mares <[email protected]> 1311e64a576cSMartin Mares 1312e64a576cSMartin Mares * pci.ids: New ID's. Again. 1313e64a576cSMartin Mares 1314c36c0862SMartin MaresThu Aug 5 17:45:42 1999 Martin Mares <[email protected]> 1315c36c0862SMartin Mares 1316c36c0862SMartin Mares * lspci.c (show_size): Don't show size if it's zero (usually 1317c36c0862SMartin Mares due to bus-centric mode being enabled). 1318c36c0862SMartin Mares 13191ca42433SMartin MaresTue Jul 20 13:25:09 1999 Martin Mares <[email protected]> 13201ca42433SMartin Mares 1321168b4f46SMartin Mares * lib/pci.h: Types are OS dependent. 1322168b4f46SMartin Mares 1323168b4f46SMartin Mares * lib/internal.h: Byte order hacks are OS dependent. 1324168b4f46SMartin Mares 1325168b4f46SMartin Mares * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS. 1326168b4f46SMartin Mares 1327168b4f46SMartin Mares * lib/Makefile, lib/access.c: Added fbsd-device target. 1328168b4f46SMartin Mares 1329168b4f46SMartin Mares * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID 1330168b4f46SMartin Mares incorrectly set to device ID. 1331168b4f46SMartin Mares 1332168b4f46SMartin Mares * README: Added a note that we support FreeBSD. 1333168b4f46SMartin Mares 1334168b4f46SMartin Mares * Makefile (PREFIX, ROOT): Set it depending on the OS. 1335168b4f46SMartin Mares (%.8): Grrr, BSD date is not able to convert date formats the same way 1336168b4f46SMartin Mares as GNU date does. Use sed instead. 1337168b4f46SMartin Mares (install): Use `-c' when calling install. 1338168b4f46SMartin Mares 1339168b4f46SMartin Mares * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed 1340168b4f46SMartin Mares by Jari Kirma <[email protected]>. 1341168b4f46SMartin Mares 1342bc6346dfSMartin Mares * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread 1343bc6346dfSMartin Mares and pwrite only when we are certain it's safe (i.e., glibc 2.1 1344bc6346dfSMartin Mares on all architectures or any libc on a i386 where we really know 1345bc6346dfSMartin Mares how to use syscalls directly). In all other cases, emulate it 1346bc6346dfSMartin Mares with lseek/read/write. 1347bc6346dfSMartin Mares 13481ca42433SMartin Mares * pci.ids: Some more IDs. 13491ca42433SMartin Mares 13501ca42433SMartin MaresMon Jul 19 14:10:36 1999 Martin Mares <[email protected]> 13511ca42433SMartin Mares 13521ca42433SMartin Mares * pci.ids: Added IDs of parallel port controller cards as sent 13531ca42433SMartin Mares by Tim Waugh <[email protected]>. 13541ca42433SMartin Mares 1355e95c8373SMartin MaresWed Jul 7 00:55:48 1999 Martin Mares <[email protected]> 1356e95c8373SMartin Mares 1357e95c8373SMartin Mares * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS. 1358e95c8373SMartin Mares 1359e95c8373SMartin Mares * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and 1360e95c8373SMartin Mares HAVE_LONG_ADDRESS. 1361e95c8373SMartin Mares 1362e95c8373SMartin Mares * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses 1363e95c8373SMartin Mares are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS 1364e95c8373SMartin Mares to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS 1365e95c8373SMartin Mares and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS 1366e95c8373SMartin Mares on Alpha. 1367e95c8373SMartin Mares 1368e95c8373SMartin Mares * lspci.c (show_msi): Added dumping of the MSI capability. 1369e95c8373SMartin Mares (show_slotid): The same for SlotID capability. 1370e95c8373SMartin Mares (show_caps): Seperated capability dumping, because it should 1371e95c8373SMartin Mares be used for both htype0 and htype1. Even PCI 2.2 doesn't mention 1372e95c8373SMartin Mares layout of htype2, so I'm a bit unsure about it wrt capabilities 1373e95c8373SMartin Mares -- they at least have to live somewhere else since address 0x34 1374e95c8373SMartin Mares is already defined differently in htype2. 1375e95c8373SMartin Mares 1376e95c8373SMartin Mares * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2). 1377e95c8373SMartin Mares (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto. 1378e95c8373SMartin Mares (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2. 1379e95c8373SMartin Mares 1380e95c8373SMartin Mares * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers 1381e95c8373SMartin Mares (required by the PCI 2.2 specs). 1382e95c8373SMartin Mares 1383e95c8373SMartin MaresMon Jul 5 12:45:19 1999 Martin Mares <[email protected]> 1384e95c8373SMartin Mares 1385e95c8373SMartin Mares * lspci.c (show_size): Added new function for dumping of region sizes. 1386e95c8373SMartin Mares (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled 1387e95c8373SMartin Mares ROMs et cetera. 1388e95c8373SMartin Mares 1389e95c8373SMartin Mares * lib/pci.h (struct pci_dev): known_fields moved to the public part 1390e95c8373SMartin Mares of the structure. 1391e95c8373SMartin Mares 1392e95c8373SMartin Mares * Added support for region sizes. Needs support in the kernel, because 1393e95c8373SMartin Mares sizes have to be scanned before drivers initialize yourself. pci_fill_info() 1394e95c8373SMartin Mares now returns a bitmask of what fields were really read. 1395e95c8373SMartin Mares 139682ce97c9SMartin MaresMon Jun 28 18:37:51 1999 Dave Jones <[email protected]> 139782ce97c9SMartin Mares 139882ce97c9SMartin Mares * Makefile: 139982ce97c9SMartin Mares Added `uninstall' target - removes all traces of pciutils. 140082ce97c9SMartin Mares * pci.ids: 140182ce97c9SMartin Mares - Lots of cleanups in the ATI, S3, Adaptec vendors. 140282ce97c9SMartin Mares - Changed Compaq QVision 1280/p definitions, as it's not possible 140382ce97c9SMartin Mares to determine the revision from the device ID. 140482ce97c9SMartin Mares - Same for the Tseng ET4000. 140582ce97c9SMartin Mares The id's said I had a rev C, when it was actually a rev B. 140682ce97c9SMartin Mares - Removed some unnecessary strings 140782ce97c9SMartin Mares `PCI'. Unless it's an AGP card, it should be obvious that it's PCI. 140882ce97c9SMartin Mares `Ethernet card'. This should be determined from config space. 140982ce97c9SMartin Mares - Lots of other new vendors & devices 141082ce97c9SMartin Mares - Other additional small cleanups. 141182ce97c9SMartin Mares 14127bed2d83SMartin MaresMon Jun 21 22:11:10 1999 Martin Mares <[email protected]> 14137bed2d83SMartin Mares 14147bed2d83SMartin Mares * lib/names.c (pci_lookup_name): When device ID lookup 14157bed2d83SMartin Mares fails, return hexadecimal device ID instead of vendor ID. 14167bed2d83SMartin Mares Well spotted by Axel Bodemann <[email protected]>, 14177bed2d83SMartin Mares I've just extended the fix to subsystem ID's. 14187bed2d83SMartin Mares 14195ba3a475SMartin MaresThu Jun 17 19:48:21 1999 Martin Mares <[email protected]> 14205ba3a475SMartin Mares 14215ba3a475SMartin Mares * lspci.c (show_agp): Bug fix from Petr Vandrovec 14225ba3a475SMartin Mares <[email protected]>. The command register was displayed 14235ba3a475SMartin Mares incorrectly. 14245ba3a475SMartin Mares 14255ba3a475SMartin MaresWed Jun 2 22:42:44 1999 Martin Mares <[email protected]> 14265ba3a475SMartin Mares 14275ba3a475SMartin Mares * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded 14285ba3a475SMartin Mares numbers if not supplied by the libc. 14295ba3a475SMartin Mares 143055c815b5SMartin MaresWed May 19 13:24:39 1999 Martin Mares <[email protected]> 143155c815b5SMartin Mares 143255c815b5SMartin Mares * Released the whole package as version 2.0. 143355c815b5SMartin Mares 143455c815b5SMartin MaresFri May 14 22:42:02 1999 Martin Mares <[email protected]> 143555c815b5SMartin Mares 143655c815b5SMartin Mares * pci.ids: Added several new ID's contributed by people 143755c815b5SMartin Mares on the linux-pci list. 143855c815b5SMartin Mares 1439dec16943SMartin MaresMon Apr 19 15:21:08 1999 Jakub Jelinek <[email protected]> 1440dec16943SMartin Mares 1441dec16943SMartin Mares * lspci.c: Display I/O addresses correctly on sparc64. 1442dec16943SMartin Mares * lib/header.h: Ditto. 1443dec16943SMartin Mares 1444dec16943SMartin Mares * lib/configure: On sparc set HAVE_64BIT* as well, we want 1445dec16943SMartin Mares a binary which works on both 32bit and 64bit SPARCs. 1446dec16943SMartin Mares 1447e33c9c7aSMartin MaresSun Apr 18 21:14:58 1999 Martin Mares <[email protected]> 1448e33c9c7aSMartin Mares 1449e33c9c7aSMartin Mares * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob 1450e33c9c7aSMartin Mares <[email protected]>. 1451e33c9c7aSMartin Mares 1452e33c9c7aSMartin Mares * pci.ids: A lot of updates from Adam J. Richter <[email protected]>. 1453e33c9c7aSMartin Mares 1454f3395cc5SMartin MaresSun Feb 28 22:26:21 1999 Martin Mares <[email protected]> 1455f3395cc5SMartin Mares 1456f3395cc5SMartin Mares * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged 1457f3395cc5SMartin Mares as a multi-function device, because several single-function devices 1458f3395cc5SMartin Mares don't decode the function bits at all. 1459f3395cc5SMartin Mares 1460f3395cc5SMartin MaresSun Feb 14 23:48:22 1999 Martin Mares <[email protected]> 1461f3395cc5SMartin Mares 1462f3395cc5SMartin Mares * Makefile (install): Don't use "-o root -g root" for installation 1463f3395cc5SMartin Mares since it breaks on machines where programs are not installed by root. 1464f3395cc5SMartin Mares Reported by Richard Gooch <[email protected]> 1465f3395cc5SMartin Mares 1466f3395cc5SMartin MaresTue Feb 9 15:54:39 1999 Martin Mares <[email protected]> 1467f3395cc5SMartin Mares 1468f3395cc5SMartin Mares * lspci.c (show_bases): Use new address masking macros and pciaddr_t. 1469f3395cc5SMartin Mares 1470f3395cc5SMartin Mares * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit 1471f3395cc5SMartin Mares or 64-bit depending on CPU. 1472f3395cc5SMartin Mares 1473f3395cc5SMartin Mares * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks 1474f3395cc5SMartin Mares according to bus address width. 1475f3395cc5SMartin Mares 14761c31d620SMartin MaresThu Jan 28 20:54:16 1999 Martin Mares <[email protected]> 14771c31d620SMartin Mares 14781c31d620SMartin Mares * Released as 1.99.4. 14791c31d620SMartin Mares 14801c31d620SMartin Mares * lspci.c: Capability list parser now recognizes both AGP 14811c31d620SMartin Mares registers and PCI Power Management registers (the latter 14821c31d620SMartin Mares is mainly guesswork based on DEC/Intel 21153 bridge specs 14831c31d620SMartin Mares since I don't have the PCI Power Management document). 14841c31d620SMartin Mares 14851c31d620SMartin Mares * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-' 14861c31d620SMartin Mares by FLAG macro. 14871c31d620SMartin Mares 14881c31d620SMartin Mares * lspci.c: Added bridge checks to bus mapping code. 14891c31d620SMartin Mares 14901812a795SMartin MaresWed Jan 27 14:59:16 1999 Martin Mares <[email protected]> 14911812a795SMartin Mares 14921812a795SMartin Mares * lspci.c: Implemented bus mapping mode (-M). 14931812a795SMartin Mares 14941812a795SMartin Mares * lspci.c (scan_devices): Split to scan_devices() and scan_device(). 14951812a795SMartin Mares (show): Split to show() and show_device(). 14961812a795SMartin Mares 14971812a795SMartin Mares * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO, 14981812a795SMartin Mares set it to the real access method afterwards. 14991812a795SMartin Mares 15001812a795SMartin MaresMon Jan 25 23:46:13 1999 Martin Mares <[email protected]> 15011812a795SMartin Mares 15021812a795SMartin Mares * lib/generic.c (pci_generic_fill_info): If in buscentric mode, 15031812a795SMartin Mares don't check PCI_COMMAND for I/O and memory enables. 15041812a795SMartin Mares 1505f6c86928SMartin MaresMon Jan 25 21:28:49 1999 Martin Mares <[email protected]> 1506f6c86928SMartin Mares 1507f6c86928SMartin Mares * Makefile: Added target `release' which substitutes new version 1508f6c86928SMartin Mares number to .spec, .lsm and README. Also rewrote target `dist'. 1509f6c86928SMartin Mares 1510f6c86928SMartin Mares * Released as 1.99.3. 1511f6c86928SMartin Mares 1512b5137411SMartin MaresSun Jan 24 22:10:36 1999 Martin Mares <[email protected]> 1513b5137411SMartin Mares 1514d6b297d0SMartin Mares * lib/header.h: Until kernel adopts new layout of PCI 1515d6b297d0SMartin Mares includes (i.e., separate declaration of header structure, 1516d6b297d0SMartin Mares functions and device IDs), which is not going to happen 1517d6b297d0SMartin Mares before 2.3, we'll use our own definiton of the header. 1518d6b297d0SMartin Mares 1519b5137411SMartin Mares * lspci.c (show_verbose): Display `Cap' flag in device status. 1520b5137411SMartin Mares 1521b5137411SMartin Mares * lspci.c (show_htype0): Display capability lists whereever 1522b5137411SMartin Mares available. The only capability name we recognize now is `AGP'. 1523b5137411SMartin Mares Unfortunately, capabilities are stored in device-dependent 1524b5137411SMartin Mares portion of the configuration space and are thus available 1525b5137411SMartin Mares only to root unless you read a dump. 1526b5137411SMartin Mares 1527b5137411SMartin Mares * lspci.c (scan_devices): Use cache instead of buffering. 1528b5137411SMartin Mares 1529b5137411SMartin Mares * lib/buffer.c: Removed (obsoleted by the cache). 1530b5137411SMartin Mares 1531b5137411SMartin Mares * lib/access.c: Added general caching mechanism. 1532b5137411SMartin Mares 153381ce358dSMartin MaresSat Jan 23 21:30:54 1999 Martin Mares <[email protected]> 153481ce358dSMartin Mares 153581ce358dSMartin Mares * pci.ids: Added few devices. 153681ce358dSMartin Mares 1537727ce158SMartin MaresFri Jan 22 19:29:31 1999 Martin Mares <[email protected]> 1538727ce158SMartin Mares 1539727ce158SMartin Mares * Version string is now defined in top-level Makefile, exported 1540727ce158SMartin Mares to the configure script and also substituted to man pages. 1541727ce158SMartin Mares 1542727ce158SMartin Mares * lspci.c (show_bases): Rewrote displaying of 64-bit addresses. 1543727ce158SMartin Mares (show_verbose): Rewrote interrupt display logic. 1544727ce158SMartin Mares 1545727ce158SMartin Mares * lib/i386-ports.c: Include sys/io.h only on glibc systems. 1546727ce158SMartin Mares 1547727ce158SMartin Mares * lib/configure: Rewrote detection of Linux versions. Now it 1548727ce158SMartin Mares works on 2.0 kernels (only with direct/dump access, of course). 1549727ce158SMartin Mares 1550727ce158SMartin Mares * lib/internal.h: New bytesex macros using <asm/byteorder.h> 1551727ce158SMartin Mares whenever available. 1552727ce158SMartin Mares 1553727ce158SMartin Mares * lib/proc.c (proc_read, proc_write): Distinguish between short 1554727ce158SMartin Mares read/write and real errors. 1555727ce158SMartin Mares 1556727ce158SMartin Mares * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since 1557727ce158SMartin Mares libpci respects buscentric mode automatically. 1558727ce158SMartin Mares 1559727ce158SMartin Mares * lspci.c (show_hex_dump): For CardBus bridges, print out 128 1560727ce158SMartin Mares bytes of header (the whole standard part). 1561727ce158SMartin Mares 1562727ce158SMartin Mares * common.c: pcilib options are now all uppercase. Also moved 1563727ce158SMartin Mares PCI access debugging option here. 1564727ce158SMartin Mares 1565727ce158SMartin Mares * Released as 1.99.2. 1566727ce158SMartin Mares 1567727ce158SMartin MaresWed Jan 20 22:50:35 1999 Martin Mares <[email protected]> 1568727ce158SMartin Mares 1569727ce158SMartin Mares * Wrote configure script and rewrote Makefiles. 1570727ce158SMartin Mares 1571727ce158SMartin Mares * Removed few unused variables. 1572727ce158SMartin Mares 1573727ce158SMartin MaresWed Jan 20 12:21:56 1999 Martin Mares <[email protected]> 1574727ce158SMartin Mares 1575727ce158SMartin Mares * common.c: Moved several functions used in both setpci and lspci 1576727ce158SMartin Mares here. This includes parsing of libpci-related options. 1577727ce158SMartin Mares 1578727ce158SMartin Mares * More library tweaks. 1579727ce158SMartin Mares 1580727ce158SMartin Mares * filter.c, names.c: Moved to library. 1581727ce158SMartin Mares 1582727ce158SMartin Mares * setpci: Rewritten to use the library. 1583727ce158SMartin Mares 1584727ce158SMartin Mares * Released as 1.99.1. 1585727ce158SMartin Mares 1586727ce158SMartin MaresTue Jan 19 23:00:12 1999 Martin Mares <[email protected]> 1587727ce158SMartin Mares 1588727ce158SMartin Mares * lspci.c (scan_devices): For cardbus bridges, read first 128 1589727ce158SMartin Mares bytes of config space to get full standard header. 1590727ce158SMartin Mares 1591727ce158SMartin Mares * Makefile (CFLAGS): Removed "-Wno-unused". 1592727ce158SMartin Mares 1593727ce158SMartin Mares * Started the "New Generation" branch and introduced the 1594727ce158SMartin Mares PCI library. 1595727ce158SMartin Mares 1596727ce158SMartin Mares * lspci: Rewritten to use the library. 1597727ce158SMartin Mares 15986ece6bc6SMartin MaresTue Jan 19 22:24:08 1999 Martin Mares <[email protected]> 15996ece6bc6SMartin Mares 16006ece6bc6SMartin Mares * Released as version 1.10. 16016ece6bc6SMartin Mares 16026ece6bc6SMartin MaresMon Jan 18 08:51:17 1999 Martin Mares <[email protected]> 16036ece6bc6SMartin Mares 16046ece6bc6SMartin Mares * lspci.8, setpci.8: Miscellaneous fixes as suggested by 16056ece6bc6SMartin Mares Dag Wieers <[email protected]>. 16066ece6bc6SMartin Mares 16071212dd6dSMartin MaresSun Nov 29 20:05:56 1998 Martin Mares <[email protected]> 16081212dd6dSMartin Mares 16091212dd6dSMartin Mares * pciutils.spec (Name): Update from Krzysztof G. Baranowski. 16101212dd6dSMartin Mares 1611d38471fdSMartin MaresSun Nov 22 10:49:56 1998 Martin Mares <[email protected]> 1612d38471fdSMartin Mares 1613d38471fdSMartin Mares * Makefile, pciutils.h: Moved pci.ids to /usr/share. 1614d38471fdSMartin Mares 1615d38471fdSMartin Mares * Released as version 1.09. 1616d38471fdSMartin Mares 1617371f605bSMartin MaresWed Nov 18 15:47:05 1998 Martin Mares <[email protected]> 1618371f605bSMartin Mares 1619371f605bSMartin Mares * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind 1620371f605bSMartin Mares bridge. Thanks to Petr Vandrovec <[email protected]> for bug report. 1621371f605bSMartin Mares 162210be47abSMartin MaresFri Oct 23 18:59:19 1998 Martin Mares <[email protected]> 162310be47abSMartin Mares 162410be47abSMartin Mares * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1. 162510be47abSMartin Mares 1626472bd340SMartin MaresMon Oct 19 21:53:30 1998 Martin Mares <[email protected]> 1627472bd340SMartin Mares 1628472bd340SMartin Mares * Released as version 1.08. 1629472bd340SMartin Mares 1630472bd340SMartin Mares * setpci.c: glibc 2.1.x already defines pread() and pwrite(). 1631472bd340SMartin Mares 1632472bd340SMartin Mares * lspci.8: Changed warning about lspci -xxx. 1633472bd340SMartin Mares 1634472bd340SMartin Mares * lspci.c: Require "-xxx" for full configuration space dump, so that 1635472bd340SMartin Mares it's impossible to crash the machine by single typo. 1636472bd340SMartin Mares 1637472bd340SMartin Mares * specs: Added (courtesy of Krzysztof G. Baranowski <[email protected]>). 1638472bd340SMartin Mares 1639072c77e5SMartin MaresWed Sep 9 12:03:24 1998 Martin Mares <[email protected]> 1640072c77e5SMartin Mares 1641072c77e5SMartin Mares * lspci.c (show_bases): Better displaying of unassigned and 1642072c77e5SMartin Mares disabled bases. Thanks to Gabriel Paubert <[email protected]> 1643072c77e5SMartin Mares for an idea. 1644072c77e5SMartin Mares 1645b7554856SMartin MaresWed Sep 2 10:58:01 1998 Martin Mares <[email protected]> 1646b7554856SMartin Mares 1647b7554856SMartin Mares * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC. 1648b7554856SMartin Mares (thanks to Geert Uytterhoeven for finding this out) 1649b7554856SMartin Mares 1650ce503b7fSMartin MaresFri Jul 17 10:43:30 1998 Martin Mares <[email protected]> 1651ce503b7fSMartin Mares 1652ce503b7fSMartin Mares * lspci.c (show_verbose): Print subsystem ID using the new resolver. 1653ce503b7fSMartin Mares (show_machine): Print subsystem ID. 1654ce503b7fSMartin Mares 1655ce503b7fSMartin Mares * names.c: New name resolution engine supporting subsystem IDs. 1656ce503b7fSMartin Mares 1657ce503b7fSMartin Mares * Released as version 1.07. 1658ce503b7fSMartin Mares 165996e4f295SMartin MaresWed Jul 15 15:37:21 1998 Martin Mares <[email protected]> 166096e4f295SMartin Mares 166196e4f295SMartin Mares * lspci.c (show_htype2 etc.): Displaying of CardBus headers. 166296e4f295SMartin Mares (show_bases): Honor the `cnt' argument. 166396e4f295SMartin Mares (grow_tree): Parse CardBus headers in tree mode as well. 166496e4f295SMartin Mares 166596e4f295SMartin Mares * pci.h: Updated CardBus header field description. I still don't 166696e4f295SMartin Mares have the CardBus standard available, but OZ6832 specs contain 166796e4f295SMartin Mares full description of all header fields supported by the chip. 166896e4f295SMartin Mares 16696ae3650aSMartin MaresTue Jun 9 22:53:59 1998 Martin Mares <[email protected]> 16706ae3650aSMartin Mares 1671304f9a0bSMartin Mares * Released as 1.06. 1672304f9a0bSMartin Mares 16736ae3650aSMartin Mares * names.c (parse_name_list): Killed an unused variable. 16746ae3650aSMartin Mares 16756ae3650aSMartin Mares * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1 16766ae3650aSMartin Mares if they are not defined by glibc (needed for glibc built on older 16776ae3650aSMartin Mares kernels). Ugly. 16786ae3650aSMartin Mares 16796ae3650aSMartin Mares * setpci.c (exec_op): Fixed error messages. Thanks, Steve! 16806ae3650aSMartin Mares 16814b88a6b8SMartin MaresMon Jun 8 10:59:22 1998 Martin Mares <[email protected]> 16824b88a6b8SMartin Mares 16834b88a6b8SMartin Mares * Released as 1.05. 16844b88a6b8SMartin Mares 16854b88a6b8SMartin Mares * setpci.c: Problems with pread()/pwrite() with glibc on Alpha 16864b88a6b8SMartin Mares should be gone. Again thanks to Steve for bug report. 16874b88a6b8SMartin Mares 16884b88a6b8SMartin Mares * filter.c (filter_parse_slot): Fixed ":x" type filters. 16894b88a6b8SMartin Mares 16904b88a6b8SMartin Mares * pci.ids: Killed duplicate entry. Thanks to Stephen Williams 16914b88a6b8SMartin Mares <[email protected]> for reporting this. 16924b88a6b8SMartin Mares 16934b88a6b8SMartin MaresSun Jun 7 19:27:51 1998 Martin Mares <[email protected]> 16944b88a6b8SMartin Mares 16954b88a6b8SMartin Mares * lspci.c (main), setpci.c (main): Implemented "--version". 16964b88a6b8SMartin Mares 16974b88a6b8SMartin Mares * Released as 1.04. 16984b88a6b8SMartin Mares 16994b88a6b8SMartin Mares * pciutils.h (PCIUTILS_VERSION): Added version string. 17004b88a6b8SMartin Mares 17014b88a6b8SMartin Mares * filter.c, names.c: Extraneous #include <linux/pci.h> removed. 17024b88a6b8SMartin Mares Thanks to Geert Uytterhoeven <[email protected]> 17034b88a6b8SMartin Mares for bug report. 17044b88a6b8SMartin Mares 17059b306998SMartin MaresThu May 28 14:45:58 1998 Martin Mares <[email protected]> 17069b306998SMartin Mares 17079b306998SMartin Mares * pci.ids: More updates from Jens Maurer. 17089b306998SMartin Mares 1709b372672fSMartin MaresWed Apr 22 10:00:39 1998 Martin Mares <[email protected]> 1710b372672fSMartin Mares 1711b372672fSMartin Mares * pci.ids: Updates from Jens Maurer. 1712b372672fSMartin Mares 1713b2c9b373SMartin MaresSun Apr 19 11:14:25 1998 Martin Mares <[email protected]> 1714b2c9b373SMartin Mares 1715b372672fSMartin Mares * Released as 1.03. 1716b372672fSMartin Mares 1717b2c9b373SMartin Mares * setpci.8: Written. 1718b2c9b373SMartin Mares 1719b2c9b373SMartin Mares * setpci.c: Finished. 1720b2c9b373SMartin Mares 1721b2c9b373SMartin Mares * lspci.c: Now able to fetch expansion ROM base from kernel device list 1722b2c9b373SMartin Mares and print it if not in buscentric mode. 1723b2c9b373SMartin Mares 1724e4842ff3SMartin MaresTue Mar 31 23:11:57 1998 Martin Mares <[email protected]> 1725e4842ff3SMartin Mares 1726e4842ff3SMartin Mares * setpci.c: Added. 1727e4842ff3SMartin Mares 1728e4842ff3SMartin MaresSun Mar 22 15:39:08 1998 Martin Mares <[email protected]> 1729e4842ff3SMartin Mares 1730e4842ff3SMartin Mares * lspci.8: Updated the documentation. 1731e4842ff3SMartin Mares 1732e4842ff3SMartin Mares * lspci.c: Modified to use the new filtering mechanism (options -f and -d). 1733e4842ff3SMartin Mares 1734e4842ff3SMartin Mares * filter.c: Introduced new generic device filter. 1735e4842ff3SMartin Mares 1736008407bdSMartin MaresThu Mar 19 17:03:48 1998 Martin Mares <[email protected]> 1737008407bdSMartin Mares 1738008407bdSMartin Mares * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying 1739008407bdSMartin Mares of PCI-to-PCI bridges in the tree format. 1740008407bdSMartin Mares 17410a33d0ecSMartin MaresSun Feb 15 10:12:25 1998 Martin Mares <[email protected]> 17420a33d0ecSMartin Mares 17430a33d0ecSMartin Mares * lspci.c (show_machine): Added non-verbose mode of machine-readable 17440a33d0ecSMartin Mares dump. 17450a33d0ecSMartin Mares 17460a33d0ecSMartin Mares * pci.ids: Updates from Jens Maurer. 17470a33d0ecSMartin Mares 17480a33d0ecSMartin Mares * Released as version 1.02. 17490a33d0ecSMartin Mares 17500a33d0ecSMartin MaresThu Feb 12 16:53:28 1998 Martin Mares <[email protected]> 17510a33d0ecSMartin Mares 17520a33d0ecSMartin Mares * lspci.c: Added a "-m" switch for dumping machine-readable 17530a33d0ecSMartin Mares configuration data (requested by Bjoern Kriews <[email protected]>). 17540a33d0ecSMartin Mares 1755fb38eee8SMartin MaresMon Feb 9 13:17:43 1998 Martin Mares <[email protected]> 1756fb38eee8SMartin Mares 1757fb38eee8SMartin Mares * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h> 1758fb38eee8SMartin Mares if available. This should avoid all problems with official kernel 1759fb38eee8SMartin Mares not synchronized to newer PCI code in CVS -- standard distribution 1760fb38eee8SMartin Mares of pciutils now contains pci.h from current CVS kernel, pciutils 1761fb38eee8SMartin Mares in CVS contain no pci.h and use the correct kernel include. 1762fb38eee8SMartin Mares 1763fb38eee8SMartin Mares * Makefile: Fixed installation path for man pages. 1764fb38eee8SMartin Mares 17652f48f637SMartin MaresSat Feb 7 15:15:46 1998 Martin Mares <[email protected]> 17662f48f637SMartin Mares 17672f48f637SMartin Mares * README: Updated. 17682f48f637SMartin Mares 17692f48f637SMartin Mares * lspci.8: Created a man page. 17702f48f637SMartin Mares 17712f48f637SMartin Mares * Releasing as version 1.0. 17722f48f637SMartin Mares 17732f48f637SMartin MaresTue Feb 3 20:56:00 1998 Martin Mares <[email protected]> 17742f48f637SMartin Mares 17752f48f637SMartin Mares * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx 17762f48f637SMartin Mares to all the C sources. This should eliminate problems with 32-bit compilers 17772f48f637SMartin Mares on sparc64. 17782f48f637SMartin Mares 17792f48f637SMartin Mares * lspci.c (show_verbose): Recognize CardBus bridge header type. 17802f48f637SMartin Mares (show_htype2): Stub routine. 17812f48f637SMartin Mares (scan_config): Write sensible error message if the kernel denies reading of 17822f48f637SMartin Mares upper part of the PCI config space. 1783