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