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