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