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