]> mj.ucw.cz Git - pciutils.git/blobdiff - ChangeLog
Register caching rewrite
[pciutils.git] / ChangeLog
index 69d3a270ffe1468d8a7b78cbd9fa6223bfbf65ca..526da1e52d548ae6397b31350261e40f0286007a 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,221 @@
+2005-08-23  Martin Mares  <mj@ucw.cz>
+
+       * lspci.man, setpci.man: Improved the man pages. Documented all access
+       methods and which operations are privileged.
+
+       * lspci.c: Another rewrite of config register caching, now also including
+       lots of internal checks. It should be now perfectly able to cope with
+       portions of the configuration space being inaccessible, for example
+       due to insufficient access rights.
+
+       * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X
+       capabilities. Includes partial support for PCI-X 2.0 (probably incomplete
+       as I haven't seen the spec).
+
+       * lspci.c: Quell warnings about unused parameters.
+
+       * lspci.c: Removed C++ comments.
+
+       * lib/header.h: Merged definitions of extended capabilities and some new
+       PCI-X capability bits from linux-2.6.11/include/pci.h.
+
+       * lspci.c (show_caps): Try to scan extended capabilities only if the
+       device has either PCI-X or PCI Express capability in its normal capability
+       list.
+
+       * lib/dump.c (dump_init): Reading of dumps works again. The dump reader
+       now also remembers how much data it has read and refuses attempts to
+       access more than that.
+
+       * setpci.man, lspci.c, README: prefer spelling "buses" over "busses".
+
+       * lspci.c: If alloca() is not available, use xmalloc(), not malloc().
+
+       * lib/configure: Added x86_64 on Linux.
+
+2005-08-22  Martin Mares  <mj@ucw.cz>
+
+       * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters.
+       Thanks to Matthew Wilcox for bug report.
+
+       * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places).
+       Thanks to Krzysztof Oledzki for pointing that out.
+
+2004-08-19  Martin Mares  <mj@ucw.cz>
+
+       * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism,
+       because pciutils by default install to /usr/sbin. Update.
+
+2004-08-13  Martin Mares  <mj@ucw.cz>
+
+       * Released as 2.1.99-test8.
+
+       * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are
+       no longer exported to the outside world.
+
+       * README.Windows: Updated.
+
+       * maint/release: Substitute version number in win32/config.h.
+
+       * win32/config.h: Added.
+
+       * lib/sysdep.h (bzero, strcasecmp): are macros on Windows.
+
+       * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU
+       C library for use on systems where the default libraries lack
+       proper getopt. Currently used by the Windows port.
+
+       * lib/sysdep.h, lib/types.h: Updates of the Windows port from
+       Alexander Stock.
+
+       * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define
+       its own u8, u16, u32, byte and word types and uses what the user
+       has supplied instead. With this change, all namespace clashes should
+       be gone.
+
+       * Makefile, lib/Makefile: Updated dependencies.
+
+       * pciutils.h: Include lib/sysdep.h and move NONRET et al. there.
+
+       * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because
+       it is included unconditionally in lib/types.h.
+
+       * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h,
+       which is also used by the utilities. Also moved type declarations
+       from lib/pci.h to lib/types.h.
+
+       * All files: Prepend a "PCI_" prefix in front of all configuration
+       defines to avoid namespace clashes. CAVEAT: If there is any libpci
+       application using the (undocumented) defines, it has to be updated.
+
+       * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing
+       headers with the kernel a couple of years ago.
+
+       * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6.
+
+       * lspci.c (show_rom): Use the same logic for printing disabled
+       or unassigned ROM's as we do in show_bases() for the other BAR's.
+
+       * lib/generic.c (pci_generic_fill_info): Better reaction to
+       invalid 64-bit addresses. Also d->hdrtype should not include
+       bit 7, which caused mysterious errors on multi-function devices.
+
+       * lib/generic.c (pci_generic_fill_info): Fill in base addresses
+       even if the regions are known to be disabled. It is the client's
+       job to interpret them. (And it is not a trivial job if you want
+       to do it correctly, since you need to check I/O and memory enables
+       on all upstream bridges, too.) However, it could be interesting to
+       introduce functions for interpreting the addresses and even for
+       mapping the regions and doing I/O on them.
+
+2004-07-30  Martin Mares  <mj@ucw.cz>
+
+       * lspci.c: HyperTransport improvements from Maciej.
+
+2004-07-11  Martin Mares  <mj@ucw.cz>
+
+       * lib/sysfs.c (sysfs_get_resources): Arguments now correspond
+       to the format string. [Patch by Bill Nottingham]
+
+2004-07-05  Martin Mares  <mj@ucw.cz>
+
+       * Released as 2.1.99-test7.
+
+       * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but
+       ended up with rewriting the fetching mechanism to be fully dynamic,
+       but avoid reading config space registers not explicitly requested.
+
+2004-06-29  Matthew Wilcox <willy@debian.org>
+
+       * lspci.c: More work on PCI Express dumping.
+
+       * lib/header.h: Updated PCI Express capability definitions.
+
+       * lib/proc.c (proc_read): Removed bogus warning.
+
+       * common.c (xrealloc): Introduced.
+
+       * lspci.man: Added -xxxx.
+
+2004-06-27  Martin Mares  <mj@ucw.cz>
+
+       * Released as 2.1.99-test6.
+
+       * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap.
+       Patch by Roland Dreier <roland@topspin.com>, cleaned up by me.
+
+       * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch()
+       failures.
+
+       * lib/header.h: Added PCI Express extended capabilities. Again by Matthew.
+
+       * lspci.c (show_express): Added dumping of PCI Express cap.
+       Patch by Matthew Wilcox.
+
+       * lib/header.h: Added a list of PCI 3.0 capabilities and also details
+       on PCI Express caps. Patch by Matthew Wilcox <willy@debian.org>.
+
+       * lspci.c (check_root): Gone. No explicit checks for root are needed,
+       report correct errors reported by the libpci instead.
+
+       * lspci.c: Added dumping of the extended config space on "-xxxx".
+       Better caching of config registers.
+
+       * setpci.c (main): Allow access to whole 4096 bytes of the config space.
+
+       * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads,
+       just return the appropriate error code.
+
+       * lib: Added support for extended (4096-byte) configuration space,
+       currently implemented only in Linux proc and sysfs access methods
+       and of course in the dump reader.
+
+2004-05-29  Martin Mares  <mj@ucw.cz>
+
+       * Released as 2.1.99-test5.
+
+       * lib/pci.h: Windows don't have the standard u_int* types.
+
+       * lib/internal.h: <sys/param.h> required on Windows for endianity
+       macros.
+
+       * lib/i386-ports.c: Connected i386-io-windows.h.
+
+       * lspci.c (check_root): geteuid() is not available on Windows.
+
+       * lib/i386-io-windows.h: Added Windows port contributed by Alexander
+       Stock <stock.alexander@gmx.de>.
+
+       * lib/configure: Hopefully fixed SunOS port broken by various
+       changes to the configure script.
+
+       * Makefile, lib/configure: Cross-compilation support, patch by Maciej.
+
+2004-05-28  Martin Mares  <mj@ucw.cz>
+
+       * Released as 2.1.99-test4.
+
+       * lspci.c (show_verbose): Header type 1 is probably legal for all
+       types of bridges, not only for PCI-to-PCI bridges.
+
+       * lspci.c (format_agp_rate): Write "x16", not "x@".
+       (show_agp): rate[] could overflow.
+       Bugs reported by Jakub Bogusz <qboosh@pld-linux.org>.
+
+       * lspci.c (show_ht_*): Show HyperTransport capability with all its
+       details. Once again code by Maciej simplified (i.e., possibly broken)
+       by me.
+
+       * lib/header.h: Added declarations of HyperTransport capability.
+       Again thanks to Maciej.
+
+       * lspci.c: Decode all bits of the secondary status word in type 1 headers.
+       Thanks to Maciej W. Rozycki <macro@ds2.pg.gda.pl> for the patch.
+
 2003-12-27  Martin Mares  <mj@ucw.cz>
 
+       * Released as 2.1.99-test3.
+
        * lspci.man, setpci.man: Document domains and correct spelling.
 
        * lib/dump.c (dump_init): Added ability to read domain numbers.