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