]> mj.ucw.cz Git - pciutils.git/blob - ChangeLog
ba719ea4b7f5918852dc3c18687ee174c61dc7ac
[pciutils.git] / ChangeLog
1 2004-05-28  Martin Mares  <mj@ucw.cz>
2
3         * lspci.c (format_agp_rate): Write "x16", not "x@".
4         (show_agp): rate[] could overflow.
5         Bugs reported by Jakub Bogusz <qboosh@pld-linux.org>.
6
7         * lspci.c (show_ht_*): Show HyperTransport capability with all its
8         details. Once again code by Maciej simplified (i.e., possibly broken)
9         by me.
10
11         * lib/header.h: Added declarations of HyperTransport capability.
12         Again thanks to Maciej.
13
14         * lspci.c: Decode all bits of the secondary status word in type 1 headers.
15         Thanks to Maciej W. Rozycki <macro@ds2.pg.gda.pl> for the patch.
16
17 2003-12-27  Martin Mares  <mj@ucw.cz>
18
19         * Released as 2.1.99-test3.
20
21         * lspci.man, setpci.man: Document domains and correct spelling.
22
23         * lib/dump.c (dump_init): Added ability to read domain numbers.
24
25         * lspci.c: Devices in domains different from 0 have their slot number
26         printed as "<domain>:<bus>:<slot>.<func>". Tree view supports domains
27         as well.
28
29         * lib/filter.c: Slot filters understand domains.
30
31         * lib/generic.c: Mention the domain in slot numbers in all error messages.
32
33         * lib/internal.h: The #ifdef for Linux <asm/byteorder.h> was wrong.
34
35         * lib/access.c (pci_get_dev): Added support for domains.
36
37         * lib/sysfs.c (sysfs_scan): Read vendor and device ID from the config
38         registers (or to be precise, leave it for the generic parts of the pcilib
39         to do so) instead of reading them from the sysfs. It's faster this way.
40
41         * lspci.c (show_pcix): Don't touch pci_dev->hdrtype, it's an internal
42         variable. Better read it from the config registers (it's cached anyway).
43
44         * lib/sysfs.c (sysfs_scan), lib/proc.c (proc_scan): Don't read the hdrtype.
45           lib/generic.c (pci_generic_fill_info): If hdrtype is -1 (unset), read it.
46           Saves lots of unnecessary file accesses.
47
48         * lib/pci.h (PCIADDR_PORT_FMT): Use %llx instead of %Lx, because the latter
49         is not supported by all C libraries.
50
51         * Makefile: Always enter the lib directory (remember that we don't have
52         full dependecies for the library in the top-level Makefile; hmmm, another
53         thing to rewrite some day).
54
55         * lib/sysfs.c: Added Linux sysfs access method based on the patch
56         written by Matthew Wilcox <willy@fc.hp.com>.
57
58         * lib/proc.c: Renamed the access method name from "/proc/bus/pci" to "Linux-proc".
59
60         * lib/pread.h: The hacks to support pread on various versions
61         of Linux libc moved there.
62
63         * lib/proc.c (proc_setup): The return value of snprintf() varies
64         between glibc versions, so we need to check both for a negative
65         values and for too large values.
66
67         * Removed last few references to the "Linux PCI Utilities", the
68         package is pretty cross-platform now :)
69
70 2003-12-27  Martin Mares  <mj@ucw.cz>
71
72         * Released as 2.1.99-test2.
73
74         * README, pciutils.lsm, pciutils.spec: Use @VERSION@ to make the
75         release scripts insert the current version. "make release" is gone.
76
77         * maint/release, maint/release.pm: Added a new system of scripts for
78         making releases including inter-version diffs etc.
79
80         * Makefile: Cleaned up.
81
82         * lib/fbsd-device.c: I patched another copy of this file by mistake,
83         this time the version checks should be right.
84
85 2003-12-27  Martin Mares  <mj@ucw.cz>
86
87         * Released as 2.1.99-test1.
88
89         * pciutils.h, common.c, lspci.man, setpci.man, lib/internal.h:
90         Remove shadows of the syscall access method which was never
91         implemented.
92
93         * update-pciids.sh: Try to preserve permissions of the old file
94         if chmod supports --reference. Should close Debian Bug #223740.
95
96         * lib/proc.c (proc_setup): Increased path name length limit to 1024.
97         Thanks for Redhat and Mandrake for inspiration.
98
99         * lib/configure: Recognize ppc and ppc64, both have 64-bit addresses.
100         Grabbed from Redhat (Fedora) patches.
101
102 2003-12-27  Martin Mares  <mj@ucw.cz>
103
104         Merged bug fixes from Debian patches:
105
106         * lspci.c (show_verbose): "Cache Line Size" should be capitalized.
107
108         * lspci.c (show_pcix_nobridge): Added a missing newline.
109
110         * lib/proc.c (proc_scan): When reading the header type, don't
111         forget to clear the topmost bit indicating that the device has
112         multiple functions.
113
114 2003-12-27  Martin Mares  <mj@ucw.cz>
115
116         Updated the FreeBSD port. Thanks to Samy Al Bahra <samy@kerneled.com>
117         for the patches:
118
119         * lib/Makefile: Add ${FREEBSD_SYS} to the include path if it's defined.
120         * lib/fbsd-device.c: Select the right set of system includes according
121         to __FreeBSD_version.
122
123 2003-12-27  Martin Mares  <mj@ucw.cz>
124
125         Merged support for Solaris on i386 by Bill Moore <billm@eng.sun.com>
126         and cleaned up:
127
128         * lib/configure: Recognize SunOS.
129         * lib/internal.h: Learn how to recognize byte order on SunOS.
130         * lib/i386-ports.c: Split OS-dependent I/O port access from i386-ports.c.
131         * lib/i386-io-linux.h: Linux specific part.
132         * lib/i386-io-hurd.h: GNU/Hurd specific part.
133         * lib/i386-io-sunos.h: SunOS specific part.
134
135 2003-12-26  Martin Mares  <mj@ucw.cz>
136
137         * lib/header.h (PCI_*_MASK): Cast to pciaddr_t explicitly.
138
139         * lib/pci.h: Types declared in <sys/types.h> should be usable on all
140         platforms we currently support, so kill the forest of #ifdef's and
141         use them in all cases.
142
143         * lib/pci.h: Use ULONG_MASK to decide whether we should use long
144         or long long to represent a 64-bit address. Killed HAVE_LONG_ADDRESS.
145         Define format strings for addresses, port numbers and IRQ numbers
146         directly in pci.h.
147
148         * lib/proc.c (proc_scan): Use PCIADDR_T_FMT for scanf'ing addresses.
149
150 2003-12-26  Marco Gerards  <metgerards@student.han.nl>
151
152         Added support for the GNU Hurd (cleaned up by Martin Mares):
153
154         * lib/configure [GNU]: Use the i386 ports for configuration access.
155         * lib/i386-ports.c: Don't call iopl() on the Hurd.
156         * lib/pci.h [OS_GNU]: Include <sys/types.h> and use it for defining
157         u8 to u32.
158
159 2003-12-26  Martin Mares  <mj@ucw.cz>
160
161         * lspci.c (show_pcix_bridge, show_pcix_nobridge): Don't forget to call
162         config_fetch() to ensure that the registers have been read. Thanks to
163         Bill Wood <bill.wood@hp.com> for the patch.
164
165         * lspci.c: Ensure that failure of config_fetch() is handled correctly
166         at all places.
167
168         * lspci.man: There was one more explicit reference to /usr/share/pci.ids.
169         Changed to @SHAREDIR@. Patch from Maciej W. Rozycki <macro@ds2.pg.gda.pl>.
170
171         * setpci.c (main): Better error messages.
172
173         * setpci.c (ex_op): The demo mode should disable only writing, not reading.
174
175         * setpci.man: The documentation was inconsistent on what should -D do.
176         Document the new behaviour.
177
178         * pciutils.h, common.c, setpci.c: Introduced a NONRET macro encapsulating
179         the GCC specific __attribute__((noreturn)) and killed the hack with
180         redefining __attribute__ on non-GCC compilers.
181
182         * Makefile: Added missing dependencies. Parallel builds work now.
183         Problem reported by Andreas Haumer <andreas@xss.co.at>, but I chose
184         a different fix.
185
186         * Makefile (MANDIR): Use `:=' instead of `=' to avoid executing the shell
187         command every time $(MANDIR) is referenced.
188
189         * lspci.c (main): The error message for `lspci -s' incorrectly mentioned
190         a `-f' switch. Reported by Steve Finney <Steve.Finney@SpirentCom.COM>.
191
192         * lib/generic.c: Removed memory leak in pci_generic_bus_scan().
193         Reported by Gary Parnes <gary_parnes@terago.com>.
194
195         * Replaced obsolete syntax of __attribute__((unused)) in the middle of
196         parameter declarations (which is no longer supported by GCC 3.1) by the
197         current syntax (attribute at the end). Thanks to pixel@mandrakesoft.com
198         for reporting this problem.
199
200         * Removed CVS $Id$ tags from all files.
201
202         * Makefile: Added some more warnings.
203
204         * setpci.c: Cleaned up mask/value code.
205
206 2003-12-08 Thayne Harbaugh <tharbaugh@lnxi.com>
207
208         * setpci.c: Individual bits to be set can be specified as <value>:<mask>.
209
210 2003-11-29  Martin Mares  <mj@ucw.cz>
211
212         * Imported the pciutils sources to my Arch repository. Good-bye, CVS.
213
214 2003-01-04  Martin Mares  <mj@ucw.cz>
215
216         * Released as 2.1.11.
217
218         * Makefile: Changed configuration of installation directories --
219         all paths are now set at the top of the Makefile instead of being
220         scattered between the installation rules. The default installation
221         now goes always to /usr/local regardless of the OS as most distributions
222         already contain some version of pciutils and we don't want custom
223         installations to interfere with the default ones.
224
225         * Makefile: Removed a couple of ancient install hacks: we no longer
226         try to avoid overwriting a newer pci.ids file (users are now expected
227         to use update-ids) and we don't try to remove /etc/pci.ids (a long time
228         has passed since the last version which used it).
229
230         * Makefile: Paths to pci.ids in man pages automatically get the right path.
231
232         * Added the update-ids utility.
233
234         * lib: Removed partially implemented "syscall" access method which will
235         probably never be needed.
236
237 2002-12-27  Martin Mares  <mj@ucw.cz>
238
239         * lib/nbsd-libpci.c: Cleaned up and hopefully made it endian safe.
240
241         * lib/generic.c (pci_generic_scan_bus): Added work-around for devices with
242         discontiguous numbering of functions. This is already present in the Linux
243         kernel for several years, but I forgot to update pciutils as well.
244
245 2002-12-26  Martin Mares  <mj@ucw.cz>
246
247         * lib/header.h, lspci.c: Dump AGP3 flags and speeds.
248
249         * lib/pci.h, Makefile: Removed HAVE_OWN_HEADER_H. Always use our own header,
250         there is no reason to prefer the kernel version.
251
252         * lib/proc.c (proc_scan): Don't forget to initialize hdrtype.
253
254         * Added preliminary version of NetBSD support by Quentin Garnier
255         <netbsd@quatriemek.com>.
256
257 2002-04-06  Martin Mares  <mj@ucw.cz>
258
259         * lspci.c: Mention "-xxx" in the help.
260
261 2002-03-30  Martin Mares  <mj@ucw.cz>
262
263         * Released as 2.1.10.
264
265         * Removed pci.ids from the CVS as they are now maintained separately.
266         They are still included in the tarball, but if you are building pciutils
267         from CVS sources or you want to get a newer ID file than the one distributed,
268         just use "make update-ids" to download the most recent snapshot from
269         pciids.sf.net.
270
271         * Makefile, README: Updated accordingly.
272
273         * Makefile: Added a couple of maintenance targets.
274
275         * maint/*: Maintainer's utilities now reside here (present only in CVS,
276         not in the tarball).
277
278         * lib/names.c (parse_name_list): End-of-line comments are no longer
279         supported. Hashes are now perfectly valid in all names and they start
280         a comment only at the start of the line.
281
282 2002-03-26  Martin Mares  <mj@ucw.cz>
283
284         * README: Rewritten.
285
286         * Makefile: When the currently installed pci.ids file is newer than
287         the version to be installed, don't overwrite it. Suggested by
288         Jean Delvare <khali@linux-fr.org>.
289
290 2002-03-24  Martin Mares  <mj@ucw.cz>
291
292         * lspci.c (show_pcix_bridge): Added PCI-X capability display.
293         Contributed by Jeff Garzik <jgarzik@mandrakesoft.com>.
294
295         * lib/header.h: Added PCI-X stuff. Again by Jeff.
296
297         * Makefile (CFLAGS): -Werror is gone.
298
299         * lspci.c (format_agp_rate): Fixed AGP rate reporting.
300
301         * lib/filter.c (pci_filter_parse_slot): Allow bus 0xff, slot 0x1f and
302         function 7.
303
304         * lib/names.c (pci_lookup_name): When printing unknown subsystem vendor
305         or device hexadecimally, don't confuse it with chip vendor/device ID.
306         First reported by Marc Boucher <marc@mbsi.ca>.
307
308 2001-11-04  Martin Mares  <mj@ucw.cz>
309
310         * Released as 2.1.9.
311
312         * pci.ids: Synced with the PCI ID Repository at SourceForge
313         (http://pciids.sourceforge.net/).
314
315 2000-08-25  Martin Mares  <mj@albireo.ucw.cz>
316
317         * pci.ids: Updated ID's, synced with kernel 2.4.0-test7.
318
319 2000-06-13  Martin Mares  <mj@albireo.ucw.cz>
320
321         * Makefile (uninstall): Fixed.
322
323         * pci.ids: ID updates.
324
325 2000-05-20  Martin Mares  <mj@albireo.ucw.cz>
326
327         * Released as 2.1.8.
328
329         * pci.ids: ID updates.
330
331         * lspci.c (show_verbose): Min/max latency is now printed in nanoseconds.
332
333 2000-05-04  Martin Mares  <mj@albireo.ucw.cz>
334
335         * lspci.c (show_verbose): If the header type doesn't match device
336         class, just print a warning and still use the header type, assuming
337         bogus class info.
338
339 2000-05-01  Martin Mares  <mj@albireo.ucw.cz>
340
341         * lspci.c (show_pm): Updated according to PCI PM specs 1.1.
342
343         * pci.ids: Updated Contemporary Control ARCnet card entries.
344
345         * pci.ids: Synchronized class list with latest PCI SIG documents.
346
347 2000-04-29  Martin Mares  <mj@albireo.ucw.cz>
348
349         * lib/names.c (pci_lookup_name): Fixed the cheat.
350
351         * lib/internal.h: Moved UNUSED/inline hacks above all other declarations.
352
353         * pci.ids: Various ID updates.
354
355 2000-04-21  Martin Mares  <mj@albireo.ucw.cz>
356
357         * Released as 2.1.7.
358
359         * pciutils.spec: Added German description.
360
361         * lib/names.c (pci_lookup_name): Added a cheat for case that subsystem ID's
362         are the same as device ID and just output subsystem name according to
363         device name.
364
365         * lib/proc.c: Use UNUSED instead of __attribute__((unused)).
366
367         * lib/pci.h: Added the correct typedefs for AIX.
368
369         * lib/generic.c (pci_generic_scan_bus): Export.
370
371         * lib/configure: Detect AIX. Use "echo '...\c'" instead of
372         "echo -n" if the shell isn't bash.
373
374         * lspci.c: Avoid using alloca() if not compiled by GCC.
375         (insert_dev): Avoid returning a void value.
376
377         * Makefile: Choose which install utility to use according to
378         OS type. Also use `-o' instead of `-or' in find arguments.
379         Part of the AIX port.
380
381         * lib/aix-device.c: Added AIX low-level interface. Contributed
382         by Dave Johnson <ddj@brown.edu>, thanks a lot!
383
384         * pci.ids: Few new ID's.
385
386         * pciutils.h, lib/internal.h: Redefine __attribute__ and inline
387         when not compiled by GCC.
388
389 2000-04-17  Martin Mares  <mj@albireo.ucw.cz>
390
391         * Released as 2.1.6.
392
393         * pci.ids: Added a large batch of ID's contributed by Gunther
394         Mayer <gunther.mayer@braunschweig.netsurf.de> and synced the
395         list with the 2.3.99pre6 kernel.
396
397 Thu Mar  9 13:11:39 2000  Martin Mares  <mj@albireo.ucw.cz>
398
399         * lib/example.c: Added a simple example of how to use
400         the library.
401
402         * lspci.man, setpci.man: Revealed --version. Well spotted
403         by Adam Sulmicki.
404
405         * pci.ids: Added lots of new ID's and synced with 2.3.50.
406
407 Tue Feb 15 00:16:21 2000  Martin Mares  <mj@albireo.ucw.cz>
408
409         * Released as 2.1.5.
410
411         * pciutils.spec: Updated spec file from Andreas Jaeger. Now using
412         %{_mandir} to find the right location to install manual pages to.
413
414         * pci.ids: New ID's.
415
416         * setpci.c (main): Don't crash when `-s' or `-d' is given with
417         no argument.
418
419 Mon Jan 24 20:04:11 2000  Andreas Jaeger  <aj@suse.de>
420
421         * lib/i386-ports.c: Include <asm/io.h> only on systems without
422         glibc.
423
424 Mon Jan 24 11:24:43 2000  Martin Mares  <mj@albireo.ucw.cz>
425
426         * Makefile: Modified to work with the Linux FHS brain-damaged idea
427         of putting man pages to /usr/share/man. Now we choose either /usr/man
428         or /usr/share/man depending on which one exists.
429
430 Sun Jan 23 10:52:34 2000  Martin Mares  <mj@albireo.ucw.cz>
431
432         * pci.ids: Synced with Linux 2.3.40.
433
434         * Released as version 2.1.4.
435
436 Thu Jan 20 11:08:32 2000  Martin Mares  <mj@albireo.ucw.cz>
437
438         * lspci.c (scan_device): Fixed bug in reading of cardbus extensions.
439
440         * lib/proc.c: pread/pwrite fixed again, this time on libc5 :(
441
442         * lspci.c (format_agp_rate): Better formatting of AGP rates.
443
444         * pci.ids: New ID's.
445
446         * lib/configure: Added configuration for ia64 (the same as for Alpha).
447         Patch from Stephane Eranian <eranian@cello.hpl.hp.com>.
448
449 Thu Jan 13 23:01:52 2000  Martin Mares  <mj@albireo.ucw.cz>
450
451         * Released as version 2.1.3.
452
453         * pci.ids: New ID's.
454
455         * lspci.c: Alpha IO_FORMAT fix by Andrea Arcangeli.
456
457         * lib/access.c: Corrected order of access methods -- it's wonderful how
458         long could such a bug remain unspotted. Thanks go to Andreas Schockenhoff.
459
460 Sat Dec 11 23:34:48 1999  Martin Mares  <mj@albireo.ucw.cz>
461
462         * Released as version 2.1.2.
463
464         * lib/names.c (pci_lookup_name): Fixed printing of unknown subsystem ID's.
465
466 Sat Dec  4 13:11:03 1999  Martin Mares  <mj@albireo.ucw.cz>
467
468         * Released as version 2.1.1.
469
470         * pci.ids: Several new ID's.
471
472         * setpci.c (exec_op): Don't forget to increment address after writing
473         single value, so that `30.b=12,34,56,78' works as expected. Reported
474         by Petr Soucek <petr@ryston.cz>.
475
476 Wed Nov  3 10:24:38 1999  Martin Mares  <mj@albireo.ucw.cz>
477
478         * lspci.c (show_terse): If prog-if is zero, but it's present in the
479         ID list, show it.
480
481 Sat Oct 30 11:06:35 1999  Martin Mares  <mj@albireo.ucw.cz>
482
483         * Released as version 2.1.
484
485         * pci.ids: Synced to devlist.h in 2.3.24 kernel. Merged in
486         lots of contributed entries.
487
488 Thu Oct 14 10:40:12 1999  Dave Jones    <dave@powertweak.com>
489
490         * pci.ids: Added lots of subsystem definitions.
491
492 Sat Oct  9 14:32:28 1999  Martin Mares  <mj@albireo.ucw.cz>
493
494         * setpci.man: Better example.
495
496         * lspci.c: Resolve prog-if names.
497
498         * lib/names.c: Adapted to new pci.ids syntax.
499
500         * pci.ids: Reorganized the pci.ids file. Subsystems are listed
501         under devices, classes can optionally contain prog-if information.
502         New ID's, as usually.
503
504 Wed Sep 22 09:45:24 1999  Martin Mares  <mj@albireo.ucw.cz>
505
506         * pci.ids: New ID's. As usually.
507
508         * lspci.c (show_htype1, show_htype2): Don't show `closed' bridge windows
509         unless we're vvvery verbose.
510
511 Mon Sep 20 11:22:54 1999  Martin Mares  <mj@albireo.ucw.cz>
512
513         * lspci.c (show_htype2): Don't forget a TAB before the "I/O window" line.
514
515 Tue Sep 14 09:31:01 1999  Martin Mares  <mj@albireo.ucw.cz>
516
517         * pci.ids: New ID's. Again.
518
519 Thu Aug  5 17:45:42 1999  Martin Mares  <mj@albireo.ucw.cz>
520
521         * lspci.c (show_size): Don't show size if it's zero (usually
522         due to bus-centric mode being enabled).
523
524 Tue Jul 20 13:25:09 1999  Martin Mares  <mj@albireo.ucw.cz>
525
526         * lib/pci.h: Types are OS dependent.
527
528         * lib/internal.h: Byte order hacks are OS dependent.
529
530         * lib/configure: Recognize FreeBSD. Also set OS_XXX according to the OS.
531
532         * lib/Makefile, lib/access.c: Added fbsd-device target.
533
534         * pci.ids: Added an entry for PLX 9080 bridges with subsystem ID
535         incorrectly set to device ID.
536
537         * README: Added a note that we support FreeBSD.
538
539         * Makefile (PREFIX, ROOT): Set it depending on the OS.
540         (%.8): Grrr, BSD date is not able to convert date formats the same way
541         as GNU date does. Use sed instead.
542         (install): Use `-c' when calling install.
543
544         * lib/fbsd-device.c: Added FreeBSD /dev/pci access module contributed
545         by Jari Kirma <kirma@cs.hut.fi>.
546
547         * lib/proc.c: Rewrote the pread/pwrite things once again. Use pread
548         and pwrite only when we are certain it's safe (i.e., glibc 2.1
549         on all architectures or any libc on a i386 where we really know
550         how to use syscalls directly). In all other cases, emulate it
551         with lseek/read/write.
552
553         * pci.ids: Some more IDs.
554
555 Mon Jul 19 14:10:36 1999  Martin Mares  <mj@albireo.ucw.cz>
556
557         * pci.ids: Added IDs of parallel port controller cards as sent
558         by Tim Waugh <tim@cyberelk.demon.co.uk>.
559
560 Wed Jul  7 00:55:48 1999  Martin Mares  <mj@albireo.ucw.cz>
561
562         * lib/proc.c (proc_scan): HAVE_LONG_ADDRESS instead of HAVE_64BIT_ADDRESS.
563
564         * lspci.c: ADDR_FORMAT now depends on both HAVE_64BIT_ADDRESS and
565         HAVE_LONG_ADDRESS.
566
567         * lib/configure: HAVE_64BIT_ADDRESS now doesn't imply that the addresses
568         are represented as long long. Introduced a new flag HAVE_LONG_ADDRESS
569         to indicate this. Both Sparc architectures now use both 64BIT_ADDRESS
570         and LONG_ADDRESS since they have 32-bit userland, but don't set LONG_ADDRESS
571         on Alpha.
572
573         * lspci.c (show_msi): Added dumping of the MSI capability.
574         (show_slotid): The same for SlotID capability.
575         (show_caps): Seperated capability dumping, because it should
576         be used for both htype0 and htype1. Even PCI 2.2 doesn't mention
577         layout of htype2, so I'm a bit unsure about it wrt capabilities
578         -- they at least have to live somewhere else since address 0x34
579         is already defined differently in htype2.
580
581         * lib/header.h (PCI_STATUS_UDF): Marked as obsolete (PCI 2.2).
582         (PCI_BASE_ADDRESS_MEM_TYPE_1M): Ditto.
583         (PCI_CAP_ID_*): Added some new capabilities defined in PCI 2.2.
584
585         * lspci.c (show_htype0): Mask out lowest 2 bits from all capability pointers
586         (required by the PCI 2.2 specs).
587
588 Mon Jul  5 12:45:19 1999  Martin Mares  <mj@albireo.ucw.cz>
589
590         * lspci.c (show_size): Added new function for dumping of region sizes.
591         (show_rom): Added. Now correctly dumps unassigned ROM addresses, disabled
592         ROMs et cetera.
593
594         * lib/pci.h (struct pci_dev): known_fields moved to the public part
595         of the structure.
596
597         * Added support for region sizes. Needs support in the kernel, because
598         sizes have to be scanned before drivers initialize yourself. pci_fill_info()
599         now returns a bitmask of what fields were really read.
600
601 Mon Jun 28 18:37:51 1999  Dave Jones    <dave@powertweak.com>
602
603         * Makefile:
604           Added `uninstall' target - removes all traces of pciutils.
605         * pci.ids:
606           - Lots of cleanups in the ATI, S3, Adaptec vendors.
607           - Changed Compaq QVision 1280/p definitions, as it's not possible
608             to determine the revision from the device ID.
609           - Same for the Tseng ET4000.
610             The id's said I had a rev C, when it was actually a rev B.
611           - Removed some unnecessary strings
612             `PCI'. Unless it's an AGP card, it should be obvious that it's PCI.
613             `Ethernet card'. This should be determined from config space.
614           - Lots of other new vendors & devices
615           - Other additional small cleanups.
616
617 Mon Jun 21 22:11:10 1999  Martin Mares  <mj@albireo.ucw.cz>
618
619         * lib/names.c (pci_lookup_name): When device ID lookup
620         fails, return hexadecimal device ID instead of vendor ID.
621         Well spotted by Axel Bodemann <Axel.Bodemann@ruhr-uni-bochum.de>,
622         I've just extended the fix to subsystem ID's.
623
624 Thu Jun 17 19:48:21 1999  Martin Mares  <mj@albireo.ucw.cz>
625
626         * lspci.c (show_agp): Bug fix from Petr Vandrovec
627         <vandrove@vc.cvut.cz>. The command register was displayed
628         incorrectly.
629
630 Wed Jun  2 22:42:44 1999  Martin Mares  <mj@albireo.ucw.cz>
631
632         * lib/proc.c (SYS_pread, SYS_pwrite): Use hard-coded
633         numbers if not supplied by the libc.
634
635 Wed May 19 13:24:39 1999  Martin Mares  <mj@albireo.ucw.cz>
636
637         * Released the whole package as version 2.0.
638
639 Fri May 14 22:42:02 1999  Martin Mares  <mj@albireo.ucw.cz>
640
641         * pci.ids: Added several new ID's contributed by people
642         on the linux-pci list.
643
644 Mon Apr 19 15:21:08 1999  Jakub Jelinek  <jj@ultra.linux.cz>
645
646         * lspci.c: Display I/O addresses correctly on sparc64.
647         * lib/header.h: Ditto.
648
649         * lib/configure: On sparc set HAVE_64BIT* as well, we want
650         a binary which works on both 32bit and 64bit SPARCs.
651
652 Sun Apr 18 21:14:58 1999  Martin Mares  <mj@albireo.ucw.cz>
653
654         * lspci.c, lib/proc.c: Alpha compilation fixes from Matthew Jacob
655         <mjacob@feral.com>.
656
657         * pci.ids: A lot of updates from Adam J. Richter <adam@yggdrasil.com>.
658
659 Sun Feb 28 22:26:21 1999  Martin Mares  <mj@albireo.ucw.cz>
660
661         * lspci.c (do_map_bus): Don't dump functions 1--7 if not flagged
662         as a multi-function device, because several single-function devices
663         don't decode the function bits at all.
664
665 Sun Feb 14 23:48:22 1999  Martin Mares  <mj@albireo.ucw.cz>
666
667         * Makefile (install): Don't use "-o root -g root" for installation
668         since it breaks on machines where programs are not installed by root.
669         Reported by Richard Gooch <rgooch@atnf.csiro.au>
670
671 Tue Feb  9 15:54:39 1999  Martin Mares  <mj@albireo.ucw.cz>
672
673         * lspci.c (show_bases): Use new address masking macros and pciaddr_t.
674
675         * lib/pci.h: Using pciaddr_t for bus addresses, which are 32-bit
676         or 64-bit depending on CPU.
677
678         * lib/pci.h (PCI_ADDR_MEM_MASK): Added macros for address masks
679         according to bus address width.
680
681 Thu Jan 28 20:54:16 1999  Martin Mares  <mj@albireo.ucw.cz>
682
683         * Released as 1.99.4.
684
685         * lspci.c: Capability list parser now recognizes both AGP
686         registers and PCI Power Management registers (the latter
687         is mainly guesswork based on DEC/Intel 21153 bridge specs
688         since I don't have the PCI Power Management document).
689
690         * lspci.c: Replaced numerous occurences of (x & flag) ? '+' : '-'
691         by FLAG macro.
692
693         * lspci.c: Added bridge checks to bus mapping code.
694
695 Wed Jan 27 14:59:16 1999  Martin Mares  <mj@albireo.ucw.cz>
696
697         * lspci.c: Implemented bus mapping mode (-M).
698
699         * lspci.c (scan_devices): Split to scan_devices() and scan_device().
700         (show): Split to show() and show_device().
701
702         * lib/access.c (pci_init): When a->method == PCI_ACCESS_AUTO,
703         set it to the real access method afterwards.
704
705 Mon Jan 25 23:46:13 1999  Martin Mares  <mj@albireo.ucw.cz>
706
707         * lib/generic.c (pci_generic_fill_info): If in buscentric mode,
708         don't check PCI_COMMAND for I/O and memory enables.
709
710 Mon Jan 25 21:28:49 1999  Martin Mares  <mj@albireo.ucw.cz>
711
712         * Makefile: Added target `release' which substitutes new version
713         number to .spec, .lsm and README. Also rewrote target `dist'.
714
715         * Released as 1.99.3.
716
717 Sun Jan 24 22:10:36 1999  Martin Mares  <mj@albireo.ucw.cz>
718
719         * lib/header.h: Until kernel adopts new layout of PCI
720         includes (i.e., separate declaration of header structure,
721         functions and device IDs), which is not going to happen
722         before 2.3, we'll use our own definiton of the header.
723
724         * lspci.c (show_verbose): Display `Cap' flag in device status.
725
726         * lspci.c (show_htype0): Display capability lists whereever
727         available. The only capability name we recognize now is `AGP'.
728         Unfortunately, capabilities are stored in device-dependent
729         portion of the configuration space and are thus available
730         only to root unless you read a dump.
731
732         * lspci.c (scan_devices): Use cache instead of buffering.
733
734         * lib/buffer.c: Removed (obsoleted by the cache).
735
736         * lib/access.c: Added general caching mechanism.
737
738 Sat Jan 23 21:30:54 1999  Martin Mares  <mj@albireo.ucw.cz>
739
740         * pci.ids: Added few devices.
741
742 Fri Jan 22 19:29:31 1999  Martin Mares  <mj@albireo.ucw.cz>
743
744         * Version string is now defined in top-level Makefile, exported
745         to the configure script and also substituted to man pages.
746
747         * lspci.c (show_bases): Rewrote displaying of 64-bit addresses.
748         (show_verbose): Rewrote interrupt display logic.
749
750         * lib/i386-ports.c: Include sys/io.h only on glibc systems.
751
752         * lib/configure: Rewrote detection of Linux versions. Now it
753         works on 2.0 kernels (only with direct/dump access, of course).
754
755         * lib/internal.h: New bytesex macros using <asm/byteorder.h>
756         whenever available.
757
758         * lib/proc.c (proc_read, proc_write): Distinguish between short
759         read/write and real errors.
760
761         * lspci.c (show_htype{0,1}): Always use d->dev->rom_base_addr since
762         libpci respects buscentric mode automatically.
763
764         * lspci.c (show_hex_dump): For CardBus bridges, print out 128
765         bytes of header (the whole standard part).
766
767         * common.c: pcilib options are now all uppercase. Also moved
768         PCI access debugging option here.
769
770         * Released as 1.99.2.
771
772 Wed Jan 20 22:50:35 1999  Martin Mares  <mj@albireo.ucw.cz>
773
774         * Wrote configure script and rewrote Makefiles.
775
776         * Removed few unused variables.
777
778 Wed Jan 20 12:21:56 1999  Martin Mares  <mj@albireo.ucw.cz>
779
780         * common.c: Moved several functions used in both setpci and lspci
781         here. This includes parsing of libpci-related options.
782
783         * More library tweaks.
784
785         * filter.c, names.c: Moved to library.
786
787         * setpci: Rewritten to use the library.
788
789         * Released as 1.99.1.
790
791 Tue Jan 19 23:00:12 1999  Martin Mares  <mj@albireo.ucw.cz>
792
793         * lspci.c (scan_devices): For cardbus bridges, read first 128
794         bytes of config space to get full standard header.
795
796         * Makefile (CFLAGS): Removed "-Wno-unused".
797
798         * Started the "New Generation" branch and introduced the
799         PCI library.
800         
801         * lspci: Rewritten to use the library.
802
803 Tue Jan 19 22:24:08 1999  Martin Mares  <mj@albireo.ucw.cz>
804
805         * Released as version 1.10.
806
807 Mon Jan 18 08:51:17 1999  Martin Mares  <mj@albireo.ucw.cz>
808
809         * lspci.8, setpci.8: Miscellaneous fixes as suggested by
810         Dag Wieers <dag@digibel.be>.
811
812 Sun Nov 29 20:05:56 1998  Martin Mares  <mj@albireo.ucw.cz>
813
814         * pciutils.spec (Name): Update from Krzysztof G. Baranowski.
815
816 Sun Nov 22 10:49:56 1998  Martin Mares  <mj@albireo.ucw.cz>
817
818         * Makefile, pciutils.h: Moved pci.ids to /usr/share.
819
820         * Released as version 1.09.
821
822 Wed Nov 18 15:47:05 1998  Martin Mares  <mj@albireo.ucw.cz>
823
824         * lspci.c (show_htype1): Fixed displaying of prefetchable memory behind
825         bridge. Thanks to Petr Vandrovec <vandrove@vc.cvut.cz> for bug report.
826
827 Fri Oct 23 18:59:19 1998  Martin Mares  <mj@albireo.ucw.cz>
828
829         * setpci.c: Don't include <syscall-list.h> with glibc >= 2.1.
830
831 Mon Oct 19 21:53:30 1998  Martin Mares  <mj@albireo.ucw.cz>
832
833         * Released as version 1.08.
834
835         * setpci.c: glibc 2.1.x already defines pread() and pwrite().
836
837         * lspci.8: Changed warning about lspci -xxx.
838
839         * lspci.c: Require "-xxx" for full configuration space dump, so that
840         it's impossible to crash the machine by single typo.
841
842         * specs: Added (courtesy of Krzysztof G. Baranowski <kgb@knm.org.pl>).
843
844 Wed Sep  9 12:03:24 1998  Martin Mares  <mj@albireo.ucw.cz>
845
846         * lspci.c (show_bases): Better displaying of unassigned and
847         disabled bases. Thanks to Gabriel Paubert <paubert@iram.es>
848         for an idea.
849
850 Wed Sep  2 10:58:01 1998  Martin Mares  <mj@albireo.ucw.cz>
851
852         * setpci.c (pread): Recognize glibc 1.99 numbered as 2.0 on the PPC.
853         (thanks to Geert Uytterhoeven for finding this out)
854
855 Fri Jul 17 10:43:30 1998  Martin Mares  <mj@albireo.ucw.cz>
856
857         * lspci.c (show_verbose): Print subsystem ID using the new resolver.
858         (show_machine): Print subsystem ID.
859
860         * names.c: New name resolution engine supporting subsystem IDs.
861
862         * Released as version 1.07.
863
864 Wed Jul 15 15:37:21 1998  Martin Mares  <mj@albireo.ucw.cz>
865
866         * lspci.c (show_htype2 etc.): Displaying of CardBus headers.
867         (show_bases): Honor the `cnt' argument.
868         (grow_tree): Parse CardBus headers in tree mode as well.
869
870         * pci.h: Updated CardBus header field description. I still don't
871         have the CardBus standard available, but OZ6832 specs contain
872         full description of all header fields supported by the chip.
873
874 Tue Jun  9 22:53:59 1998  Martin Mares  <mj@albireo.ucw.cz>
875
876         * Released as 1.06.
877
878         * names.c (parse_name_list): Killed an unused variable.
879
880         * setpci.c (pread, pwrite): Define SYS_(pread|pwrite) as __NR_\1
881         if they are not defined by glibc (needed for glibc built on older
882         kernels). Ugly.
883
884         * setpci.c (exec_op): Fixed error messages. Thanks, Steve!
885
886 Mon Jun  8 10:59:22 1998  Martin Mares  <mj@albireo.ucw.cz>
887
888         * Released as 1.05.
889
890         * setpci.c: Problems with pread()/pwrite() with glibc on Alpha
891         should be gone. Again thanks to Steve for bug report.
892
893         * filter.c (filter_parse_slot): Fixed ":x" type filters.
894
895         * pci.ids: Killed duplicate entry. Thanks to Stephen Williams
896         <steve@icarus.com> for reporting this.
897
898 Sun Jun  7 19:27:51 1998  Martin Mares  <mj@albireo.ucw.cz>
899
900         * lspci.c (main), setpci.c (main): Implemented "--version".
901
902         * Released as 1.04.
903
904         * pciutils.h (PCIUTILS_VERSION): Added version string.
905
906         * filter.c, names.c: Extraneous #include <linux/pci.h> removed.
907         Thanks to Geert Uytterhoeven <Geert.Uytterhoeven@cs.kuleuven.ac.be>
908         for bug report.
909
910 Thu May 28 14:45:58 1998  Martin Mares  <mj@lomikel.karlin.mff.cuni.cz>
911
912         * pci.ids: More updates from Jens Maurer.
913
914 Wed Apr 22 10:00:39 1998  Martin Mares  <mj@albireo.ucw.cz>
915
916         * pci.ids: Updates from Jens Maurer.
917
918 Sun Apr 19 11:14:25 1998  Martin Mares  <mj@albireo.ucw.cz>
919
920         * Released as 1.03.
921
922         * setpci.8: Written.
923
924         * setpci.c: Finished.
925
926         * lspci.c: Now able to fetch expansion ROM base from kernel device list
927         and print it if not in buscentric mode.
928
929 Tue Mar 31 23:11:57 1998  Martin Mares  <mj@albireo.ucw.cz>
930
931         * setpci.c: Added.
932
933 Sun Mar 22 15:39:08 1998  Martin Mares  <mj@albireo.ucw.cz>
934
935         * lspci.8: Updated the documentation.
936
937         * lspci.c: Modified to use the new filtering mechanism (options -f and -d).
938
939         * filter.c: Introduced new generic device filter.
940
941 Thu Mar 19 17:03:48 1998  Martin Mares  <mj@lomikel.karlin.mff.cuni.cz>
942
943         * lspci.c (grow_tree, show_tree_dev, print_it): Fixed displaying
944         of PCI-to-PCI bridges in the tree format.
945
946 Sun Feb 15 10:12:25 1998  Martin Mares  <mj@albireo.ucw.cz>
947
948         * lspci.c (show_machine): Added non-verbose mode of machine-readable
949         dump.
950
951         * pci.ids: Updates from Jens Maurer.
952
953         * Released as version 1.02.
954
955 Thu Feb 12 16:53:28 1998  Martin Mares  <mj@lomikel.karlin.mff.cuni.cz>
956
957         * lspci.c: Added a "-m" switch for dumping machine-readable
958         configuration data (requested by Bjoern Kriews <bkr@cut.de>).
959
960 Mon Feb  9 13:17:43 1998  Martin Mares  <mj@albireo.ucw.cz>
961
962         * Makefile, pciutils.h: Include local pci.h instead of <linux/pci.h>
963         if available. This should avoid all problems with official kernel
964         not synchronized to newer PCI code in CVS -- standard distribution
965         of pciutils now contains pci.h from current CVS kernel, pciutils
966         in CVS contain no pci.h and use the correct kernel include.
967
968         * Makefile: Fixed installation path for man pages.
969
970 Sat Feb  7 15:15:46 1998  Martin Mares  <mj@albireo.ucw.cz>
971
972         * README: Updated.
973
974         * lspci.8: Created a man page.
975
976         * Releasing as version 1.0.
977
978 Tue Feb  3 20:56:00 1998  Martin Mares  <mj@albireo.ucw.cz>
979
980         * Makefile: Recognize architecture by calling uname and pass it as ARCH_xxx
981         to all the C sources. This should eliminate problems with 32-bit compilers
982         on sparc64.
983
984         * lspci.c (show_verbose): Recognize CardBus bridge header type.
985         (show_htype2): Stub routine.
986         (scan_config): Write sensible error message if the kernel denies reading of
987         upper part of the PCI config space.