]> mj.ucw.cz Git - pciutils.git/blob - ChangeLog
ca01e8b19e3dadcaa8655a62b5a99812f1ac2072
[pciutils.git] / ChangeLog
1 2006-09-09  Martin Mares  <mj@ucw.cz>
2
3         * Makefile (CFLAGS): Removed -Winline, it's not needed and triggers
4         at many non-interesting places with gcc 3.4.
5
6         * Whitespace cleanup of all source files.
7
8         * The pci.ids file can be stored compressed if zlib is available.
9         Added transparent decompression to lib/names.c, modified update-pciids.sh
10         to keep the file compressed if applicable, updated Makefiles.
11         Based on a patch by Matthew Wilcox, but all the bugs are mine.
12
13         * Makefile, README: Allow installation to be done to a different directory
14         from the one we will eventually be placed in by setting DESTDIR.
15         Patch by Matthew Wilcox.
16
17         * Added .gitignore files.
18
19         * Makefile (clean): Clean *.orig, too.
20
21         * Cleaned up usage of `char' and `byte'.
22
23         * lib/header.h: PCI_CLASS_DOCKING_OTHER should be 0x0a80, not 0x0a01.
24
25         * lib/header.h: Added PCI_CLASS_xxx constants for all classes currently
26         defined in the pci.ids file.
27
28 2006-08-01  Martin Mares  <mj@ucw.cz>
29
30         * lib/i386-io-hurd.h: Fixed a silly typo.
31
32 2006-07-30  Martin Mares  <mj@ucw.cz>
33
34         * lib/Makefile: Added a missing rule for obsd-device.o.
35
36         * lspci.c, lib/header.h: Added support for MSI per-vector masking.
37         Contributed by Petr Vandrovec.
38
39         * lspci.c, lib/header.h: Added support for the `bridge subsystem ID'
40         capability. Contributed by Petr Vandrovec.
41
42         * lspci.c (show_htype1): Fixed bug in printing of 64-bit prefetchable
43         memory windows. Fix by Petr Vandrovec.
44
45         * maint/release.pm: Exclude .git directory from releases.
46
47         * lib/i386-ports.c, lib/i386-io-*: Report failures during port access
48         initialization by a->warn() instead of calling printf() or perror()
49         directly.
50
51         * lib/i386-ports.c, lib/i386-io-*: Moved the logic which keeps track of
52         the port access state to generic code.
53
54         * lib/i386-io-hurd.h: Ask the kernel for I/O port access appropriately.
55         Contributed by Thomas Schwinge and Samuel Thibault.
56
57         * lib/i386-ports.c: Define _GNU_SOURCE, it's needed by the Hurd module.
58
59         * lib/header.h: Whitespace cleanups.
60
61         * lib/i386-io-windows.h: Fixed indentation and spelling.
62
63         * README.Windows: Mention that WinIO.dll is needed and where to get it.
64
65 2006-06-27  Martin Mares  <mj@ucw.cz>
66
67         * lib/Makefile, Makefile: Added rules for building and cleaning the example.
68
69         * lib/example.c: Show how to use PCI_FILL_CLASS and used another register
70         for demonstrating the config space accesses. The example is still very
71         incomplete, though.
72
73         * lib/pci.h, lib/generic.c: Added PCI_FILL_CLASS.
74
75         * lib/sysfs.c: Fetch device ID and class from sysfs, because they can
76         be modified by kernel fixups.
77
78         * lspci.c: Use PCI_FILL_CLASS. Thanks to Matthew Willcox for the patch.
79
80 2006-06-03  Martin Mares  <mj@ucw.cz>
81
82         * lspci.c: Introduced the -nn switch. Thanks to David N. Welton
83         for the idea.
84
85         * lib/names.c (pci_lookup_name): Introduced PCI_LOOKUP_MIXED and
86         cleaned up the name selection code.
87
88         * lib/names.c (pci_lookup_name): If PCI_LOOKUP_NO_NUMBERS is given,
89         pci_access->numeric_ids is ignored.
90
91         * lib/names.c (pci_lookup_name): When class is identified and
92         subclass isn't, display class name and subclass number.
93
94 2006-05-31  Martin Mares  <mj@ucw.cz>
95
96         * setpci.c (main): Don't crash when an invalid width is specified.
97
98         * lspci.c, setpci.c, common.c: die() now uses the right program
99         name when printing an error message.
100
101 2006-05-19  Martin Mares  <mj@ucw.cz>
102
103         * README: Mention the public GIT tree.
104
105         * README: Updated the list of ports.
106
107 2006-05-10  Martin Mares  <mj@ucw.cz>
108
109         * lib/configure, lib/fbsd-device.c: Added support for GNU/kFreeBSD.
110         Thanks to Petr Salinger for the patch.
111
112 2006-05-05  Martin Mares  <mj@ucw.cz>
113
114         * Released as 2.2.3.
115
116         * lspci.c (scan_device): The -D switch didn't work as intended
117         in -m mode.
118
119 2006-05-05  Martin Mares  <mj@ucw.cz>
120
121         * Released as 2.2.2.
122
123         * pci.ids: Updated to the current database snapshot.
124
125         * lib/obsd-device.c (and other files in lib/*): Added OpenBSD
126         interface by Matthieu Herrb <matthieu.herrb@laas.fr>, based on
127         the existing FreeBSD interface.
128
129         * Moved pciutils to a GIT repository, which now contains merged
130         history from both CVS and Arch. Good bye, TLA!
131
132 2006-03-21  Martin Mares  <mj@ucw.cz>
133
134         * lspci.c (show_slot_name): Avoid the previous changes in default
135         display of domain name when in machine-readable mode. However, `-D'
136         forces domain display even there.
137
138         * lspci.man: Added a warning on -m being the only format, which is
139         guaranteed to be stable between lspci versions.
140
141 2006-03-13  Martin Mares  <mj@ucw.cz>
142
143         * lspci.man: Documented the -D switch.
144
145         * lspci.c (show_slot_name, scan_device): If there are multiple PCI
146         domains or if the `-D' switch is used, show the domain number for
147         all devices.
148
149         * lspci.c (show_verbose): Report cache line size in bytes.
150
151         * update-pciids.sh: Use curl if available. Patch by Matthew Wilcox.
152
153 2006-01-04  Martin Mares  <mj@ucw.cz>
154
155         * lspci.c (show_express_link): Fixed decoding of link status register.
156         Thanks to Roland Dreier for his report.
157
158 2005-12-12  Martin Mares  <mj@ucw.cz>
159
160         * lib/nbsd-libpci.c: If libpci is used by an ordinary user, allow
161         at least read-only access. Patch by Pavel Celeda <celeda@liberouter.org>.
162
163         * Makefile: Corrected library path on NetBSD.
164
165 2005-11-26  Martin Mares  <mj@ucw.cz>
166
167         * Released as 2.2.1.
168
169         * lspci.c (show_machine): Subsystem vendors were printed incorrectly
170         in machine-readable modes. Thanks to Pavel Celeda for a bug report.
171
172 2005-10-11  Martin Mares  <mj@ucw.cz>
173
174         * lspci.c (new_bus): Fixed a memory leak. Thanks to Paul Sangree for reporting it.
175
176 2005-09-21  Martin Mares  <mj@ucw.cz>
177
178         * Released as 2.2.0.
179
180         * pci.ids: Updated copyright header.
181
182         * lib/sysfs.c (sysfs_get_resources): Removed warning about unsupported
183         64-bit addresses, they are now always supported.
184
185         * lspci.c (show_bases): Corrected printing of 64-bit addresses
186         in bus-centric mode.
187
188         * lib/configure: Enable 64-bit addresses on all Linux systems.
189
190         * lib/types.h: Don't pad 64-bit addresses to 16 xigits, only to 8 if they
191         are shorter.
192
193 2005-09-11  Martin Mares  <mj@ucw.cz>
194
195         * Released as 2.1.99-test11.
196
197         * lspci.c: Removed unnecessary trailing zeros in pci_lookup_name() calls.
198
199 2005-09-10  Martin Mares  <mj@ucw.cz>
200
201         * Released as 2.1.99-test10.
202
203         * pci.ids: Synchronized with the current database snapshot.
204
205         * update-pciids.sh: Changed the default URL for downloading pci.ids
206         to http://pciids.sourceforge.net/v2.2/pci.ids.
207
208         * lib/pci.h (PCI_LIB_VERSION): Added version identifier.
209
210         * lib/names.c: Rewritten the name database module almost from scratch.
211         Everything is much cleaner and there are hopefully no more memory leaks;
212         pci_lookup_name() now uses varargs in a backward compatible fashion.
213         Introduced PCI_LOOKUP_NO_NUMBERS.
214
215         The new code supports subsystem entries not tied to a specific device.
216         I had to extend the format of pci.ids in order to support it, so I have
217         extended the idea of the "C" (class) blocks and introduced "S" blocks
218         for subsystems. To avoid doing more incompatible changes in the future,
219         the parser skips unknown single-letter blocks without reporting errors.
220
221 2005-08-23  Martin Mares  <mj@ucw.cz>
222
223         * Released as 2.1.99-test9.
224
225         * Makefile (OPT): Removed -fomit-frame-pointer, it's default in recent
226         gcc versions when optimizing anyway.
227
228         * Made the path to pci.ids customizable and independent on the SHAREDIR.
229         Just override IDSDIR in the top-level Makefile.
230
231         * pci.ids: Synchronized with the current database snapshot.
232
233         * lspci.man, setpci.man: Improved the man pages. Documented all access
234         methods and which operations are privileged.
235
236         * lspci.c: Another rewrite of config register caching, now also including
237         lots of internal checks. It should be now perfectly able to cope with
238         portions of the configuration space being inaccessible, for example
239         due to insufficient access rights.
240
241         * lspci.c (show_pcix_nobridge, show_pcix_bridge): Cleaned up dumping of PCI-X
242         capabilities. Includes partial support for PCI-X 2.0 (probably incomplete
243         as I haven't seen the spec).
244
245         * lspci.c: Quell warnings about unused parameters.
246
247         * lspci.c: Removed C++ comments.
248
249         * lib/header.h: Merged definitions of extended capabilities and some new
250         PCI-X capability bits from linux-2.6.11/include/pci.h.
251
252         * lspci.c (show_caps): Try to scan extended capabilities only if the
253         device has either PCI-X or PCI Express capability in its normal capability
254         list.
255
256         * lib/dump.c (dump_init): Reading of dumps works again. The dump reader
257         now also remembers how much data it has read and refuses attempts to
258         access more than that.
259
260         * setpci.man, lspci.c, README: prefer spelling "buses" over "busses".
261
262         * lspci.c: If alloca() is not available, use xmalloc(), not malloc().
263
264         * lib/configure: Added x86_64 on Linux.
265
266 2005-08-22  Martin Mares  <mj@ucw.cz>
267
268         * lib/filter.c (pci_filter_parse_slot): Fixed parsing of domain filters.
269         Thanks to Matthew Wilcox for bug report.
270
271         * lspci.c: Corrected spelling of "Hz" (it was "hz" at several places).
272         Thanks to Krzysztof Oledzki for pointing that out.
273
274 2004-08-19  Martin Mares  <mj@ucw.cz>
275
276         * pciutils.spec (%attr): Setting attributes for /sbin/* is an anachronism,
277         because pciutils by default install to /usr/sbin. Update.
278
279 2004-08-13  Martin Mares  <mj@ucw.cz>
280
281         * Released as 2.1.99-test8.
282
283         * lib/types.h, lib/pci.h, lib/sysdep.h: `byte' and `word' are
284         no longer exported to the outside world.
285
286         * README.Windows: Updated.
287
288         * maint/release: Substitute version number in win32/config.h.
289
290         * win32/config.h: Added.
291
292         * lib/sysdep.h (bzero, strcasecmp): are macros on Windows.
293
294         * compat/getopt.[ch]: Added copies of getopt.[ch] from the GNU
295         C library for use on systems where the default libraries lack
296         proper getopt. Currently used by the Windows port.
297
298         * lib/sysdep.h, lib/types.h: Updates of the Windows port from
299         Alexander Stock.
300
301         * lib/types.h: If PCI_HAVE_Uxx_TYPES is defined, libpci doesn't define
302         its own u8, u16, u32, byte and word types and uses what the user
303         has supplied instead. With this change, all namespace clashes should
304         be gone.
305
306         * Makefile, lib/Makefile: Updated dependencies.
307
308         * pciutils.h: Include lib/sysdep.h and move NONRET et al. there.
309
310         * lib/sysdep.h: No need to include <sys/types.h> on FreeBSD, because
311         it is included unconditionally in lib/types.h.
312
313         * Moved system-dependent stuff from lib/internal.h to lib/sysdep.h,
314         which is also used by the utilities. Also moved type declarations
315         from lib/pci.h to lib/types.h.
316
317         * All files: Prepend a "PCI_" prefix in front of all configuration
318         defines to avoid namespace clashes. CAVEAT: If there is any libpci
319         application using the (undocumented) defines, it has to be updated.
320
321         * lib/Makefile: Killed HAVE_OWN_HEADER_H, since we stopped sharing
322         headers with the kernel a couple of years ago.
323
324         * lib/sysfs.c (sysfs_get_resources): We have 7 resources, not 6.
325
326         * lspci.c (show_rom): Use the same logic for printing disabled
327         or unassigned ROM's as we do in show_bases() for the other BAR's.
328
329         * lib/generic.c (pci_generic_fill_info): Better reaction to
330         invalid 64-bit addresses. Also d->hdrtype should not include
331         bit 7, which caused mysterious errors on multi-function devices.
332
333         * lib/generic.c (pci_generic_fill_info): Fill in base addresses
334         even if the regions are known to be disabled. It is the client's
335         job to interpret them. (And it is not a trivial job if you want
336         to do it correctly, since you need to check I/O and memory enables
337         on all upstream bridges, too.) However, it could be interesting to
338         introduce functions for interpreting the addresses and even for
339         mapping the regions and doing I/O on them.
340
341 2004-07-30  Martin Mares  <mj@ucw.cz>
342
343         * lspci.c: HyperTransport improvements from Maciej.
344
345 2004-07-11  Martin Mares  <mj@ucw.cz>
346
347         * lib/sysfs.c (sysfs_get_resources): Arguments now correspond
348         to the format string. [Patch by Bill Nottingham]
349
350 2004-07-05  Martin Mares  <mj@ucw.cz>
351
352         * Released as 2.1.99-test7.
353
354         * lspci.c (config_fetch): Wanted to merge Matthew's bug fix, but
355         ended up with rewriting the fetching mechanism to be fully dynamic,
356         but avoid reading config space registers not explicitly requested.
357
358 2004-06-29  Matthew Wilcox <willy@debian.org>
359
360         * lspci.c: More work on PCI Express dumping.
361
362         * lib/header.h: Updated PCI Express capability definitions.
363
364         * lib/proc.c (proc_read): Removed bogus warning.
365
366         * common.c (xrealloc): Introduced.
367
368         * lspci.man: Added -xxxx.
369
370 2004-06-27  Martin Mares  <mj@ucw.cz>
371
372         * Released as 2.1.99-test6.
373
374         * lspci.c (show_msix), lib/header.h: Added dumping of MSI-X cap.
375         Patch by Roland Dreier <roland@topspin.com>, cleaned up by me.
376
377         * lspci.c (show_pcix_nobridge, show_pcix_bridge): Handle config_fetch()
378         failures.
379
380         * lib/header.h: Added PCI Express extended capabilities. Again by Matthew.
381
382         * lspci.c (show_express): Added dumping of PCI Express cap.
383         Patch by Matthew Wilcox.
384
385         * lib/header.h: Added a list of PCI 3.0 capabilities and also details
386         on PCI Express caps. Patch by Matthew Wilcox <willy@debian.org>.
387
388         * lspci.c (check_root): Gone. No explicit checks for root are needed,
389         report correct errors reported by the libpci instead.
390
391         * lspci.c: Added dumping of the extended config space on "-xxxx".
392         Better caching of config registers.
393
394         * setpci.c (main): Allow access to whole 4096 bytes of the config space.
395
396         * lib/sysfs.c, lib/proc.c: Don't print error messages on short reads,
397         just return the appropriate error code.
398
399         * lib: Added support for extended (4096-byte) configuration space,
400         currently implemented only in Linux proc and sysfs access methods
401         and of course in the dump reader.
402
403 2004-05-29  Martin Mares  <mj@ucw.cz>
404
405         * Released as 2.1.99-test5.
406
407         * lib/pci.h: Windows don't have the standard u_int* types.
408
409         * lib/internal.h: <sys/param.h> required on Windows for endianity
410         macros.
411
412         * lib/i386-ports.c: Connected i386-io-windows.h.
413
414         * lspci.c (check_root): geteuid() is not available on Windows.
415
416         * lib/i386-io-windows.h: Added Windows port contributed by Alexander
417         Stock <stock.alexander@gmx.de>.
418
419         * lib/configure: Hopefully fixed SunOS port broken by various
420         changes to the configure script.
421
422         * Makefile, lib/configure: Cross-compilation support, patch by Maciej.
423
424 2004-05-28  Martin Mares  <mj@ucw.cz>
425
426         * Released as 2.1.99-test4.
427
428         * lspci.c (show_verbose): Header type 1 is probably legal for all
429         types of bridges, not only for PCI-to-PCI bridges.
430
431         * lspci.c (format_agp_rate): Write "x16", not "x@".
432         (show_agp): rate[] could overflow.
433         Bugs reported by Jakub Bogusz <qboosh@pld-linux.org>.
434
435         * lspci.c (show_ht_*): Show HyperTransport capability with all its
436         details. Once again code by Maciej simplified (i.e., possibly broken)
437         by me.
438
439         * lib/header.h: Added declarations of HyperTransport capability.
440         Again thanks to Maciej.
441
442         * lspci.c: Decode all bits of the secondary status word in type 1 headers.
443         Thanks to Maciej W. Rozycki <macro@ds2.pg.gda.pl> for the patch.
444
445 2003-12-27  Martin Mares  <mj@ucw.cz>
446
447         * Released as 2.1.99-test3.
448
449         * lspci.man, setpci.man: Document domains and correct spelling.
450
451         * lib/dump.c (dump_init): Added ability to read domain numbers.
452
453         * lspci.c: Devices in domains different from 0 have their slot number
454         printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains
455         as well.
456
457         * lib/filter.c: Slot filters understand domains.
458
459         * lib/generic.c: Mention the domain in slot numbers in all error messages.
460
461         * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong.
462
463         * lib/access.c (pci_get_dev): Added support for domains.
464
465         * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config
466         registers (or to be precise, leave it for the generic parts of the pcilib
467         to do so) instead of reading them from the sysfs. It's faster this way.
468
469         * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal
470         variable. Better read it from the config registers (it's cached anyway).
471
472         * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype.
473           lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it.
474           Saves lots of unnecessary file accesses.
475
476         * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter
477         is not supported by all C libraries.
478
479         * Makefile: Always enter the lib directory (remember that we don't have
480         full dependecies for the library in the top-level Makefile; hmmm, another
481         thing to rewrite some day).
482
483         * lib/sysfs.c: Added Linux sysfs access method based on the patch
484         written by Matthew Wilcox <willy@fc.hp.com>.
485
486         * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc".
487
488         * lib/pread.h: The hacks to support pread on various versions
489         of Linux libc moved there.
490
491         * lib/proc.c (proc_setup): The return value of snprintf() varies
492         between glibc versions, so we need to check both for a negative
493         values and for too large values.
494
495         * Removed last few references to the "Linux PCI Utilities", the
496         package is pretty cross-platform now :)
497
498 2003-12-27  Martin Mares  <mj@ucw.cz>
499
500         * Released as 2.1.99-test2.
501
502         * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the
503         release scripts insert the current version. "make release" is gone.
504
505         * maint/release, maint/release.pm: Added a new system of scripts for
506         making releases including inter-version diffs etc.
507
508         * Makefile: Cleaned up.
509
510         * lib/fbsd-device.c: I patched another copy of this file by mistake,
511         this time the version checks should be right.
512
513 2003-12-27  Martin Mares  <mj@ucw.cz>
514
515         * Released as 2.1.99-test1.
516
517         * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h:
518         Remove shadows of the syscall access method which was never
519         implemented.
520
521         * update-pciids.sh: Try to preserve permissions of the old file
522         if chmod supports --reference. Should close Debian Bug #223740.
523
524         * lib/proc.c (proc_setup): Increased path name length limit to 1024.
525         Thanks for Redhat and Mandrake for inspiration.
526
527         * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses.
528         Grabbed from Redhat (Fedora) patches.
529
530 2003-12-27  Martin Mares  <mj@ucw.cz>
531
532         Merged bug fixes from Debian patches:
533
534         * lspci.c (show_verbose): "Cache Line Size" should be capitalized.
535
536         * lspci.c (show_pcix_nobridge): Added a missing newline.
537
538         * lib/proc.c (proc_scan): When reading the header type, don't
539         forget to clear the topmost bit indicating that the device has
540         multiple functions.
541
542 2003-12-27  Martin Mares  <mj@ucw.cz>
543
544         Updated the FreeBSD port. Thanks to Samy Al Bahra <samy@kerneled.com>
545         for the patches:
546
547         * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined.
548         * lib/fbsd-device.c: Select the right set of system includes according
549         to __FreeBSD_version.
550
551 2003-12-27  Martin Mares  <mj@ucw.cz>
552
553         Merged support for Solaris on i386 by Bill Moore <billm@eng.sun.com>
554         and cleaned up:
555
556         * lib/configure: Recognize SunOS.
557         * lib/internal.h: Learn how to recognize byte order on SunOS.
558         * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c.
559         * lib/i386-io-linux.h: Linux specific part.
560         * lib/i386-io-hurd.h: GNU/Hurd specific part.
561         * lib/i386-io-sunos.h: SunOS specific part.
562
563 2003-12-26  Martin Mares  <mj@ucw.cz>
564
565         * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly.
566
567         * lib/pci.h: Types declared in <sys/types.h> should be usable on all
568         platforms we currently support, so kill the forest of #ifdef's and
569         use them in all cases.
570
571         * lib/pci.h: Use ULONG_MASK to decide whether we should use long
572         or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS.
573         Define format strings for addresses, port numbers and IRQ numbers
574         directly in pci.h.
575
576         * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses.
577
578 2003-12-26  Marco Gerards  <metgerards@student.han.nl>
579
580         Added support for the GNU Hurd (cleaned up by Martin Mares):
581
582         * lib/configure [GNU]: Use the i386 ports for configuration access.
583         * lib/i386-ports.c: Don't call iopl() on the Hurd.
584         * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining
585         u8 to u32.
586
587 2003-12-26  Martin Mares  <mj@ucw.cz>
588
589         * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call
590         config_fetch() to ensure that the registers have been read. Thanks to
591         Bill Wood <bill.wood@hp.com> for the patch.
592
593         * lspci.c: Ensure that failure of config_fetch() is handled correctly
594         at all places.
595
596         * lspci.man: There was one more explicit reference to /usr/share/pci.ids.
597         Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
598
599         * setpci.c (main): Better error messages.
600
601         * setpci.c (ex_op): The demo mode should disable only writing, not reading.
602
603         * setpci.man: The documentation was inconsistent on what should -D do.
604         Document the new behaviour.
605
606         * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating
607         the GCC specific __attribute__((noreturn)) and killed the hack with
608         redefining __attribute__ on non-GCC compilers.
609
610         * Makefile: Added missing dependencies. Parallel builds work now.
611         Problem reported by Andreas Haumer <andreas@xss.co.at>, but I chose
612         a different fix.
613
614         * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell
615         command every time $(MANDIR) is referenced.
616
617         * lspci.c (main): The error message for `lspci -s' incorrectly mentioned
618         a `-f' switch. Reported by Steve Finney <Steve.Finney@SpirentCom.COM>.
619
620         * lib/generic.c: Removed memory leak in pci_generic_bus_scan().
621         Reported by Gary Parnes <gary_parnes@terago.com>.
622
623         * Replaced obsolete syntax of __attribute__((unused)) in the middle of
624         parameter declarations (which is no longer supported by GCC 3.1) by the
625         current syntax (attribute at the end). Thanks to pixel@mandrakesoft.com
626         for reporting this problem.
627
628         * Removed CVS $Id$ tags from all files.
629
630         * Makefile: Added some more warnings.
631
632         * setpci.c: Cleaned up mask/value code.
633
634 2003-12-08 Thayne Harbaugh <tharbaugh@lnxi.com>
635
636         * setpci.c: Individual bits to be set can be specified as <value>:<mask>.
637
638 2003-11-29  Martin Mares  <mj@ucw.cz>
639
640         * Imported the pciutils sources to my Arch repository. Good-bye, CVS.
641
642 2003-01-04  Martin Mares  <mj@ucw.cz>
643
644         * Released as 2.1.11.
645
646         * Makefile: Changed configuration of installation directories --
647         all paths are now set at the top of the Makefile instead of being
648         scattered between the installation rules. The default installation
649         now goes always to /usr/local regardless of the OS as most distributions
650         already contain some version of pciutils and we don't want custom
651         installations to interfere with the default ones.
652
653         * Makefile: Removed a couple of ancient install hacks: we no longer
654         try to avoid overwriting a newer pci.ids file (users are now expected
655         to use update-ids) and we don't try to remove /etc/pci.ids (a long time
656         has passed since the last version which used it).
657
658         * Makefile: Paths to pci.ids in man pages automatically get the right path.
659
660         * Added the update-ids utility.
661
662         * lib: Removed partially implemented "syscall" access method which will
663         probably never be needed.
664
665 2002-12-27  Martin Mares  <mj@ucw.cz>
666
667         * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe.
668
669         * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with
670         discontiguous numbering of functions. This is already present in the Linux
671         kernel for several years, but I forgot to update pciutils as well.
672
673 2002-12-26  Martin Mares  <mj@ucw.cz>
674
675         * lib/header.h, lspci.c: Dump AGP3 flags and speeds.
676
677         * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header,
678         there is no reason to prefer the kernel version.
679
680         * lib/proc.c (proc_scan): Don't forget to initialize hdrtype.
681
682         * Added preliminary version of NetBSD support by Quentin Garnier
683         <netbsd@quatriemek.com>.
684
685 2002-04-06  Martin Mares  <mj@ucw.cz>
686
687         * lspci.c: Mention "-xxx" in the help.
688
689 2002-03-30  Martin Mares  <mj@ucw.cz>
690
691         * Released as 2.1.10.
692
693         * Removed pci.ids from the CVS as they are now maintained separately.
694         They are still included in the tarball, but if you are building pciutils
695         from CVS sources or you want to get a newer ID file than the one distributed,
696         just use "make update-ids" to download the most recent snapshot from
697         pciids.sf.net.
698
699         * Makefile, README: Updated accordingly.
700
701         * Makefile: Added a couple of maintenance targets.
702
703         * maint/*: Maintainer's utilities now reside here (present only in CVS,
704         not in the tarball).
705
706         * lib/names.c (parse_name_list): End-of-line comments are no longer
707         supported. Hashes are now perfectly valid in all names and they start
708         a comment only at the start of the line.
709
710 2002-03-26  Martin Mares  <mj@ucw.cz>
711
712         * README: Rewritten.
713
714         * Makefile: When the currently installed pci.ids file is newer than
715         the version to be installed, don't overwrite it. Suggested by
716         Jean Delvare <khali@linux-fr.org>.
717
718 2002-03-24  Martin Mares  <mj@ucw.cz>
719
720         * lspci.c (show_pcix_bridge): Added PCI-X capability display.
721         Contributed by Jeff Garzik <jgarzik@mandrakesoft.com>.
722
723         * lib/header.h: Added PCI-X stuff. Again by Jeff.
724
725         * Makefile (CFLAGS): -Werror is gone.
726
727         * lspci.c (format_agp_rate): Fixed AGP rate reporting.
728
729         * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and
730         function 7.
731
732         * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor
733         or device hexadecimally, don't confuse it with chip vendor/device ID.
734         First reported by Marc Boucher <marc@mbsi.ca>.
735
736 2001-11-04  Martin Mares  <mj@ucw.cz>
737
738         * Released as 2.1.9.
739
740         * pci.ids: Synced with the PCI ID Repository at SourceForge
741         (http://pciids.sourceforge.net/).
742
743 2000-08-25  Martin Mares  <mj@albireo.ucw.cz>
744
745         * pci.ids: Updated ID's, synced with kernel 2.4.0-test7.
746
747 2000-06-13  Martin Mares  <mj@albireo.ucw.cz>
748
749         * Makefile (uninstall): Fixed.
750
751         * pci.ids: ID updates.
752
753 2000-05-20  Martin Mares  <mj@albireo.ucw.cz>
754
755         * Released as 2.1.8.
756
757         * pci.ids: ID updates.
758
759         * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds.
760
761 2000-05-04  Martin Mares  <mj@albireo.ucw.cz>
762
763         * lspci.c (show_verbose): If the header type doesn't match device
764         class, just print a warning and still use the header type, assuming
765         bogus class info.
766
767 2000-05-01  Martin Mares  <mj@albireo.ucw.cz>
768
769         * lspci.c (show_pm): Updated according to PCI PM specs 1.1.
770
771         * pci.ids: Updated Contemporary Control ARCnet card entries.
772
773         * pci.ids: Synchronized class list with latest PCI SIG documents.
774
775 2000-04-29  Martin Mares  <mj@albireo.ucw.cz>
776
777         * lib/names.c (pci_lookup_name): Fixed the cheat.
778
779         * lib/internal.h: Moved UNUSED/inline hacks above all other declarations.
780
781         * pci.ids: Various ID updates.
782
783 2000-04-21  Martin Mares  <mj@albireo.ucw.cz>
784
785         * Released as 2.1.7.
786
787         * pciutils.spec: Added German description.
788
789         * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's
790         are the same as device ID and just output subsystem name according to
791         device name.
792
793         * lib/proc.c: Use UNUSED instead of __attribute__((unused)).
794
795         * lib/pci.h: Added the correct typedefs for AIX.
796
797         * lib/generic.c (pci_generic_scan_bus): Export.
798
799         * lib/configure: Detect AIX. Use "echo '...\c'" instead of
800         "echo -n" if the shell isn't bash.
801
802         * lspci.c: Avoid using alloca() if not compiled by GCC.
803         (insert_dev): Avoid returning a void value.
804
805         * Makefile: Choose which install utility to use according to
806         OS type. Also use `-o' instead of `-or' in find arguments.
807         Part of the AIX port.
808
809         * lib/aix-device.c: Added AIX low-level interface. Contributed
810         by Dave Johnson <ddj@brown.edu>, thanks a lot!
811
812         * pci.ids: Few new ID's.
813
814         * pciutils.h, lib/internal.h: Redefine __attribute__ and inline
815         when not compiled by GCC.
816
817 2000-04-17  Martin Mares  <mj@albireo.ucw.cz>
818
819         * Released as 2.1.6.
820
821         * pci.ids: Added a large batch of ID's contributed by Gunther
822         Mayer <gunther.mayer@braunschweig.netsurf.de> and synced the
823         list with the 2.3.99pre6 kernel.
824
825 Thu Mar  9 13:11:39 2000  Martin Mares  <mj@albireo.ucw.cz>
826
827         * lib/example.c: Added a simple example of how to use
828         the library.
829
830         * lspci.man, setpci.man: Revealed --version. Well spotted
831         by Adam Sulmicki.
832
833         * pci.ids: Added lots of new ID's and synced with 2.3.50.
834
835 Tue Feb 15 00:16:21 2000  Martin Mares  <mj@albireo.ucw.cz>
836
837         * Released as 2.1.5.
838
839         * pciutils.spec: Updated spec file from Andreas Jaeger. Now using
840         %{_mandir} to find the right location to install manual pages to.
841
842         * pci.ids: New ID's.
843
844         * setpci.c (main): Don't crash when `-s' or `-d' is given with
845         no argument.
846
847 Mon Jan 24 20:04:11 2000  Andreas Jaeger  <aj@suse.de>
848
849         * lib/i386-ports.c: Include <asm/io.h> only on systems without
850         glibc.
851
852 Mon Jan 24 11:24:43 2000  Martin Mares  <mj@albireo.ucw.cz>
853
854         * Makefile: Modified to work with the Linux FHS brain-damaged idea
855         of putting man pages to /usr/share/man. Now we choose either /usr/man
856         or /usr/share/man depending on which one exists.
857
858 Sun Jan 23 10:52:34 2000  Martin Mares  <mj@albireo.ucw.cz>
859
860         * pci.ids: Synced with Linux 2.3.40.
861
862         * Released as version 2.1.4.
863
864 Thu Jan 20 11:08:32 2000  Martin Mares  <mj@albireo.ucw.cz>
865
866         * lspci.c (scan_device): Fixed bug in reading of cardbus extensions.
867
868         * lib/proc.c: pread/pwrite fixed again, this time on libc5 :(
869
870         * lspci.c (format_agp_rate): Better formatting of AGP rates.
871
872         * pci.ids: New ID's.
873
874         * lib/configure: Added configuration for ia64 (the same as for Alpha).
875         Patch from Stephane Eranian <eranian@cello.hpl.hp.com>.
876
877 Thu Jan 13 23:01:52 2000  Martin Mares  <mj@albireo.ucw.cz>
878
879         * Released as version 2.1.3.
880
881         * pci.ids: New ID's.
882
883         * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli.
884
885         * lib/access.c: Corrected order of access methods -- it's wonderful how
886         long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff.
887
888 Sat Dec 11 23:34:48 1999  Martin Mares  <mj@albireo.ucw.cz>
889
890         * Released as version 2.1.2.
891
892         * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's.
893
894 Sat Dec  4 13:11:03 1999  Martin Mares  <mj@albireo.ucw.cz>
895
896         * Released as version 2.1.1.
897
898         * pci.ids: Several new ID's.
899
900         * setpci.c (exec_op): Don't forget to increment address after writing
901         single value, so that `30.b=12,34,56,78' works as expected. Reported
902         by Petr Soucek <petr@ryston.cz>.
903
904 Wed Nov  3 10:24:38 1999  Martin Mares  <mj@albireo.ucw.cz>
905
906         * lspci.c (show_terse): If prog-if is zero, but it's present in the
907         ID list, show it.
908
909 Sat Oct 30 11:06:35 1999  Martin Mares  <mj@albireo.ucw.cz>
910
911         * Released as version 2.1.
912
913         * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in
914         lots of contributed entries.
915
916 Thu Oct 14 10:40:12 1999  Dave Jones    <dave@powertweak.com>
917
918         * pci.ids: Added lots of subsystem definitions.
919
920 Sat Oct  9 14:32:28 1999  Martin Mares  <mj@albireo.ucw.cz>
921
922         * setpci.man: Better example.
923
924         * lspci.c: Resolve prog-if names.
925
926         * lib/names.c: Adapted to new pci.ids syntax.
927
928         * pci.ids: Reorganized the pci.ids file. Subsystems are listed
929         under devices, classes can optionally contain prog-if information.
930         New ID's, as usually.
931
932 Wed Sep 22 09:45:24 1999  Martin Mares  <mj@albireo.ucw.cz>
933
934         * pci.ids: New ID's. As usually.
935
936         * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows
937         unless we're vvvery verbose.
938
939 Mon Sep 20 11:22:54 1999  Martin Mares  <mj@albireo.ucw.cz>
940
941         * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line.
942
943 Tue Sep 14 09:31:01 1999  Martin Mares  <mj@albireo.ucw.cz>
944
945         * pci.ids: New ID's. Again.
946
947 Thu Aug  5 17:45:42 1999  Martin Mares  <mj@albireo.ucw.cz>
948
949         * lspci.c (show_size): Don't show size if it's zero (usually
950         due to bus-centric mode being enabled).
951
952 Tue Jul 20 13:25:09 1999  Martin Mares  <mj@albireo.ucw.cz>
953
954         * lib/pci.h: Types are OS dependent.
955
956         * lib/internal.h: Byte order hacks are OS dependent.
957
958         * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS.
959
960         * lib/Makefile, lib/access.c: Added fbsd-device target.
961
962         * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID
963         incorrectly set to device ID.
964
965         * README: Added a note that we support FreeBSD.
966
967         * Makefile (PREFIX, ROOT): Set it depending on the OS.
968         (%.8): Grrr, BSD date is not able to convert date formats the same way
969         as GNU date does. Use sed instead.
970         (install): Use `-c' when calling install.
971
972         * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed
973         by Jari Kirma <kirma@cs.hut.fi>.
974
975         * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread
976         and pwrite only when we are certain it's safe (i.e., glibc 2.1
977         on all architectures or any libc on a i386 where we really know
978         how to use syscalls directly). In all other cases, emulate it
979         with lseek/read/write.
980
981         * pci.ids: Some more IDs.
982
983 Mon Jul 19 14:10:36 1999  Martin Mares  <mj@albireo.ucw.cz>
984
985         * pci.ids: Added IDs of parallel port controller cards as sent
986         by Tim Waugh <tim@cyberelk.demon.co.uk>.
987
988 Wed Jul  7 00:55:48 1999  Martin Mares  <mj@albireo.ucw.cz>
989
990         * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS.
991
992         * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and
993         HAVE_LONG_ADDRESS.
994
995         * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses
996         are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS
997         to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS
998         and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS
999         on Alpha.
1000
1001         * lspci.c (show_msi): Added dumping of the MSI capability.
1002         (show_slotid): The same for SlotID capability.
1003         (show_caps): Seperated capability dumping, because it should
1004         be used for both htype0 and htype1. Even PCI 2.2 doesn't mention
1005         layout of htype2, so I'm a bit unsure about it wrt capabilities
1006         -- they at least have to live somewhere else since address 0x34
1007         is already defined differently in htype2.
1008
1009         * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2).
1010         (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto.
1011         (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2.
1012
1013         * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers
1014         (required by the PCI 2.2 specs).
1015
1016 Mon Jul  5 12:45:19 1999  Martin Mares  <mj@albireo.ucw.cz>
1017
1018         * lspci.c (show_size): Added new function for dumping of region sizes.
1019         (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled
1020         ROMs et cetera.
1021
1022         * lib/pci.h (struct pci_dev): known_fields moved to the public part
1023         of the structure.
1024
1025         * Added support for region sizes. Needs support in the kernel, because
1026         sizes have to be scanned before drivers initialize yourself. pci_fill_info()
1027         now returns a bitmask of what fields were really read.
1028
1029 Mon Jun 28 18:37:51 1999  Dave Jones    <dave@powertweak.com>
1030
1031         * Makefile:
1032           Added `uninstall' target - removes all traces of pciutils.
1033         * pci.ids:
1034           - Lots of cleanups in the ATI, S3, Adaptec vendors.
1035           - Changed Compaq QVision 1280/p definitions, as it's not possible
1036             to determine the revision from the device ID.
1037           - Same for the Tseng ET4000.
1038             The id's said I had a rev C, when it was actually a rev B.
1039           - Removed some unnecessary strings
1040             `PCI'. Unless it's an AGP card, it should be obvious that it's PCI.
1041             `Ethernet card'. This should be determined from config space.
1042           - Lots of other new vendors & devices
1043           - Other additional small cleanups.
1044
1045 Mon Jun 21 22:11:10 1999  Martin Mares  <mj@albireo.ucw.cz>
1046
1047         * lib/names.c (pci_lookup_name): When device ID lookup
1048         fails, return hexadecimal device ID instead of vendor ID.
1049         Well spotted by Axel Bodemann <Axel.Bodemann@ruhr-uni-bochum.de>,
1050         I've just extended the fix to subsystem ID's.
1051
1052 Thu Jun 17 19:48:21 1999  Martin Mares  <mj@albireo.ucw.cz>
1053
1054         * lspci.c (show_agp): Bug fix from Petr Vandrovec
1055         <vandrove@vc.cvut.cz>. The command register was displayed
1056         incorrectly.
1057
1058 Wed Jun  2 22:42:44 1999  Martin Mares  <mj@albireo.ucw.cz>
1059
1060         * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded
1061         numbers if not supplied by the libc.
1062
1063 Wed May 19 13:24:39 1999  Martin Mares  <mj@albireo.ucw.cz>
1064
1065         * Released the whole package as version 2.0.
1066
1067 Fri May 14 22:42:02 1999  Martin Mares  <mj@albireo.ucw.cz>
1068
1069         * pci.ids: Added several new ID's contributed by people
1070         on the linux-pci list.
1071
1072 Mon Apr 19 15:21:08 1999  Jakub Jelinek  <jj@ultra.linux.cz>
1073
1074         * lspci.c: Display I/O addresses correctly on sparc64.
1075         * lib/header.h: Ditto.
1076
1077         * lib/configure: On sparc set HAVE_64BIT* as well, we want
1078         a binary which works on both 32bit and 64bit SPARCs.
1079
1080 Sun Apr 18 21:14:58 1999  Martin Mares  <mj@albireo.ucw.cz>
1081
1082         * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob
1083         <mjacob@feral.com>.
1084
1085         * pci.ids: A lot of updates from Adam J. Richter <adam@yggdrasil.com>.
1086
1087 Sun Feb 28 22:26:21 1999  Martin Mares  <mj@albireo.ucw.cz>
1088
1089         * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged
1090         as a multi-function device, because several single-function devices
1091         don't decode the function bits at all.
1092
1093 Sun Feb 14 23:48:22 1999  Martin Mares  <mj@albireo.ucw.cz>
1094
1095         * Makefile (install): Don't use "-o root -g root" for installation
1096         since it breaks on machines where programs are not installed by root.
1097         Reported by Richard Gooch <rgooch@atnf.csiro.au>
1098
1099 Tue Feb  9 15:54:39 1999  Martin Mares  <mj@albireo.ucw.cz>
1100
1101         * lspci.c (show_bases): Use new address masking macros and pciaddr_t.
1102
1103         * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit
1104         or 64-bit depending on CPU.
1105
1106         * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks
1107         according to bus address width.
1108
1109 Thu Jan 28 20:54:16 1999  Martin Mares  <mj@albireo.ucw.cz>
1110
1111         * Released as 1.99.4.
1112
1113         * lspci.c: Capability list parser now recognizes both AGP
1114         registers and PCI Power Management registers (the latter
1115         is mainly guesswork based on DEC/Intel 21153 bridge specs
1116         since I don't have the PCI Power Management document).
1117
1118         * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-'
1119         by FLAG macro.
1120
1121         * lspci.c: Added bridge checks to bus mapping code.
1122
1123 Wed Jan 27 14:59:16 1999  Martin Mares  <mj@albireo.ucw.cz>
1124
1125         * lspci.c: Implemented bus mapping mode (-M).
1126
1127         * lspci.c (scan_devices): Split to scan_devices() and scan_device().
1128         (show): Split to show() and show_device().
1129
1130         * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO,
1131         set it to the real access method afterwards.
1132
1133 Mon Jan 25 23:46:13 1999  Martin Mares  <mj@albireo.ucw.cz>
1134
1135         * lib/generic.c (pci_generic_fill_info): If in buscentric mode,
1136         don't check PCI_COMMAND for I/O and memory enables.
1137
1138 Mon Jan 25 21:28:49 1999  Martin Mares  <mj@albireo.ucw.cz>
1139
1140         * Makefile: Added target `release' which substitutes new version
1141         number to .spec, .lsm and README. Also rewrote target `dist'.
1142
1143         * Released as 1.99.3.
1144
1145 Sun Jan 24 22:10:36 1999  Martin Mares  <mj@albireo.ucw.cz>
1146
1147         * lib/header.h: Until kernel adopts new layout of PCI
1148         includes (i.e., separate declaration of header structure,
1149         functions and device IDs), which is not going to happen
1150         before 2.3, we'll use our own definiton of the header.
1151
1152         * lspci.c (show_verbose): Display `Cap' flag in device status.
1153
1154         * lspci.c (show_htype0): Display capability lists whereever
1155         available. The only capability name we recognize now is `AGP'.
1156         Unfortunately, capabilities are stored in device-dependent
1157         portion of the configuration space and are thus available
1158         only to root unless you read a dump.
1159
1160         * lspci.c (scan_devices): Use cache instead of buffering.
1161
1162         * lib/buffer.c: Removed (obsoleted by the cache).
1163
1164         * lib/access.c: Added general caching mechanism.
1165
1166 Sat Jan 23 21:30:54 1999  Martin Mares  <mj@albireo.ucw.cz>
1167
1168         * pci.ids: Added few devices.
1169
1170 Fri Jan 22 19:29:31 1999  Martin Mares  <mj@albireo.ucw.cz>
1171
1172         * Version string is now defined in top-level Makefile, exported
1173         to the configure script and also substituted to man pages.
1174
1175         * lspci.c (show_bases): Rewrote displaying of 64-bit addresses.
1176         (show_verbose): Rewrote interrupt display logic.
1177
1178         * lib/i386-ports.c: Include sys/io.h only on glibc systems.
1179
1180         * lib/configure: Rewrote detection of Linux versions. Now it
1181         works on 2.0 kernels (only with direct/dump access, of course).
1182
1183         * lib/internal.h: New bytesex macros using <asm/byteorder.h>
1184         whenever available.
1185
1186         * lib/proc.c (proc_read, proc_write): Distinguish between short
1187         read/write and real errors.
1188
1189         * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since
1190         libpci respects buscentric mode automatically.
1191
1192         * lspci.c (show_hex_dump): For CardBus bridges, print out 128
1193         bytes of header (the whole standard part).
1194
1195         * common.c: pcilib options are now all uppercase. Also moved
1196         PCI access debugging option here.
1197
1198         * Released as 1.99.2.
1199
1200 Wed Jan 20 22:50:35 1999  Martin Mares  <mj@albireo.ucw.cz>
1201
1202         * Wrote configure script and rewrote Makefiles.
1203
1204         * Removed few unused variables.
1205
1206 Wed Jan 20 12:21:56 1999  Martin Mares  <mj@albireo.ucw.cz>
1207
1208         * common.c: Moved several functions used in both setpci and lspci
1209         here. This includes parsing of libpci-related options.
1210
1211         * More library tweaks.
1212
1213         * filter.c, names.c: Moved to library.
1214
1215         * setpci: Rewritten to use the library.
1216
1217         * Released as 1.99.1.
1218
1219 Tue Jan 19 23:00:12 1999  Martin Mares  <mj@albireo.ucw.cz>
1220
1221         * lspci.c (scan_devices): For cardbus bridges, read first 128
1222         bytes of config space to get full standard header.
1223
1224         * Makefile (CFLAGS): Removed "-Wno-unused".
1225
1226         * Started the "New Generation" branch and introduced the
1227         PCI library.
1228
1229         * lspci: Rewritten to use the library.
1230
1231 Tue Jan 19 22:24:08 1999  Martin Mares  <mj@albireo.ucw.cz>
1232
1233         * Released as version 1.10.
1234
1235 Mon Jan 18 08:51:17 1999  Martin Mares  <mj@albireo.ucw.cz>
1236
1237         * lspci.8, setpci.8: Miscellaneous fixes as suggested by
1238         Dag Wieers <dag@digibel.be>.
1239
1240 Sun Nov 29 20:05:56 1998  Martin Mares  <mj@albireo.ucw.cz>
1241
1242         * pciutils.spec (Name): Update from Krzysztof G. Baranowski.
1243
1244 Sun Nov 22 10:49:56 1998  Martin Mares  <mj@albireo.ucw.cz>
1245
1246         * Makefile, pciutils.h: Moved pci.ids to /usr/share.
1247
1248         * Released as version 1.09.
1249
1250 Wed Nov 18 15:47:05 1998  Martin Mares  <mj@albireo.ucw.cz>
1251
1252         * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind
1253         bridge. Thanks to Petr Vandrovec <vandrove@vc.cvut.cz> for bug report.
1254
1255 Fri Oct 23 18:59:19 1998  Martin Mares  <mj@albireo.ucw.cz>
1256
1257         * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1.
1258
1259 Mon Oct 19 21:53:30 1998  Martin Mares  <mj@albireo.ucw.cz>
1260
1261         * Released as version 1.08.
1262
1263         * setpci.c: glibc 2.1.x already defines pread() and pwrite().
1264
1265         * lspci.8: Changed warning about lspci -xxx.
1266
1267         * lspci.c: Require "-xxx" for full configuration space dump, so that
1268         it's impossible to crash the machine by single typo.
1269
1270         * specs: Added (courtesy of Krzysztof G. Baranowski <kgb@knm.org.pl>).
1271
1272 Wed Sep  9 12:03:24 1998  Martin Mares  <mj@albireo.ucw.cz>
1273
1274         * lspci.c (show_bases): Better displaying of unassigned and
1275         disabled bases. Thanks to Gabriel Paubert <paubert@iram.es>
1276         for an idea.
1277
1278 Wed Sep  2 10:58:01 1998  Martin Mares  <mj@albireo.ucw.cz>
1279
1280         * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC.
1281         (thanks to Geert Uytterhoeven for finding this out)
1282
1283 Fri Jul 17 10:43:30 1998  Martin Mares  <mj@albireo.ucw.cz>
1284
1285         * lspci.c (show_verbose): Print subsystem ID using the new resolver.
1286         (show_machine): Print subsystem ID.
1287
1288         * names.c: New name resolution engine supporting subsystem IDs.
1289
1290         * Released as version 1.07.
1291
1292 Wed Jul 15 15:37:21 1998  Martin Mares  <mj@albireo.ucw.cz>
1293
1294         * lspci.c (show_htype2 etc.): Displaying of CardBus headers.
1295         (show_bases): Honor the `cnt' argument.
1296         (grow_tree): Parse CardBus headers in tree mode as well.
1297
1298         * pci.h: Updated CardBus header field description. I still don't
1299         have the CardBus standard available, but OZ6832 specs contain
1300         full description of all header fields supported by the chip.
1301
1302 Tue Jun  9 22:53:59 1998  Martin Mares  <mj@albireo.ucw.cz>
1303
1304         * Released as 1.06.
1305
1306         * names.c (parse_name_list): Killed an unused variable.
1307
1308         * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1
1309         if they are not defined by glibc (needed for glibc built on older
1310         kernels). Ugly.
1311
1312         * setpci.c (exec_op): Fixed error messages. Thanks, Steve!
1313
1314 Mon Jun  8 10:59:22 1998  Martin Mares  <mj@albireo.ucw.cz>
1315
1316         * Released as 1.05.
1317
1318         * setpci.c: Problems with pread()/pwrite() with glibc on Alpha
1319         should be gone. Again thanks to Steve for bug report.
1320
1321         * filter.c (filter_parse_slot): Fixed ":x" type filters.
1322
1323         * pci.ids: Killed duplicate entry. Thanks to Stephen Williams
1324         <steve@icarus.com> for reporting this.
1325
1326 Sun Jun  7 19:27:51 1998  Martin Mares  <mj@albireo.ucw.cz>
1327
1328         * lspci.c (main), setpci.c (main): Implemented "--version".
1329
1330         * Released as 1.04.
1331
1332         * pciutils.h (PCIUTILS_VERSION): Added version string.
1333
1334         * filter.c, names.c: Extraneous #include <linux/pci.h> removed.
1335         Thanks to Geert Uytterhoeven <Geert.Uytterhoeven@cs.kuleuven.ac.be>
1336         for bug report.
1337
1338 Thu May 28 14:45:58 1998  Martin Mares  <mj@lomikel.karlin.mff.cuni.cz>
1339
1340         * pci.ids: More updates from Jens Maurer.
1341
1342 Wed Apr 22 10:00:39 1998  Martin Mares  <mj@albireo.ucw.cz>
1343
1344         * pci.ids: Updates from Jens Maurer.
1345
1346 Sun Apr 19 11:14:25 1998  Martin Mares  <mj@albireo.ucw.cz>
1347
1348         * Released as 1.03.
1349
1350         * setpci.8: Written.
1351
1352         * setpci.c: Finished.
1353
1354         * lspci.c: Now able to fetch expansion ROM base from kernel device list
1355         and print it if not in buscentric mode.
1356
1357 Tue Mar 31 23:11:57 1998  Martin Mares  <mj@albireo.ucw.cz>
1358
1359         * setpci.c: Added.
1360
1361 Sun Mar 22 15:39:08 1998  Martin Mares  <mj@albireo.ucw.cz>
1362
1363         * lspci.8: Updated the documentation.
1364
1365         * lspci.c: Modified to use the new filtering mechanism (options -f and -d).
1366
1367         * filter.c: Introduced new generic device filter.
1368
1369 Thu Mar 19 17:03:48 1998  Martin Mares  <mj@lomikel.karlin.mff.cuni.cz>
1370
1371         * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying
1372         of PCI-to-PCI bridges in the tree format.
1373
1374 Sun Feb 15 10:12:25 1998  Martin Mares  <mj@albireo.ucw.cz>
1375
1376         * lspci.c (show_machine): Added non-verbose mode of machine-readable
1377         dump.
1378
1379         * pci.ids: Updates from Jens Maurer.
1380
1381         * Released as version 1.02.
1382
1383 Thu Feb 12 16:53:28 1998  Martin Mares  <mj@lomikel.karlin.mff.cuni.cz>
1384
1385         * lspci.c: Added a "-m" switch for dumping machine-readable
1386         configuration data (requested by Bjoern Kriews <bkr@cut.de>).
1387
1388 Mon Feb  9 13:17:43 1998  Martin Mares  <mj@albireo.ucw.cz>
1389
1390         * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h>
1391         if available. This should avoid all problems with official kernel
1392         not synchronized to newer PCI code in CVS -- standard distribution
1393         of pciutils now contains pci.h from current CVS kernel, pciutils
1394         in CVS contain no pci.h and use the correct kernel include.
1395
1396         * Makefile: Fixed installation path for man pages.
1397
1398 Sat Feb  7 15:15:46 1998  Martin Mares  <mj@albireo.ucw.cz>
1399
1400         * README: Updated.
1401
1402         * lspci.8: Created a man page.
1403
1404         * Releasing as version 1.0.
1405
1406 Tue Feb  3 20:56:00 1998  Martin Mares  <mj@albireo.ucw.cz>
1407
1408         * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx
1409         to all the C sources. This should eliminate problems with 32-bit compilers
1410         on sparc64.
1411
1412         * lspci.c (show_verbose): Recognize CardBus bridge header type.
1413         (show_htype2): Stub routine.
1414         (scan_config): Write sensible error message if the kernel denies reading of
1415         upper part of the PCI config space.