Matthew Wilcox [Fri, 27 Feb 2009 13:20:04 +0000 (06:20 -0700)]
Correct Device Serial Number output
We are currently printing the Device Serial Number backwards. Ben
Hutchings noticed that the DSN was an EUI-64 (derived from a MAC
address), but printed backwards. Before:
Capabilities: [140] Device Serial Number 97-62-84-ff-ff-3b-1f-00
After:
Capabilities: [140] Device Serial Number 00-1f-3b-ff-ff-84-62-97
The MAC address is:
wlan0 Link encap:Ethernet HWaddr 00:1f:3b:84:62:97
Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Yu Zhao [Sun, 4 Jan 2009 08:10:39 +0000 (16:10 +0800)]
Don't display 'disabled' for a virtual base address
Don't display 'disabled' for the virtual base address since the resource
is reported by the OS not the hardware, which means the IO/MEM enable bits
in the command register may be invalid.
Yu Zhao [Sun, 4 Jan 2009 08:03:45 +0000 (16:03 +0800)]
Fix inconsistent bus centric view between the sysfs and proc methods
The vendor and device IDs may be different when using sysfs and proc
methods with bus centric view enabled. The sysfs method reads the IDs
from the configuration space rather than uses the values from sysfs
entries. But the proc method always uses values from the proc files.
This fix makes the proc method use the values from the configuration
space too for bus centric view.
Yu Zhao [Fri, 26 Dec 2008 01:59:28 +0000 (09:59 +0800)]
Fix base address flags when using sysfs method
The base address flags are ignored when using sysfs method, while
the proc and generic methods combined the flags into 'base_addr'.
This inconsistency may fail some applications using libpci.
Alex Chiang [Wed, 3 Dec 2008 19:30:21 +0000 (12:30 -0700)]
Display physical slot information in lspci -v
We've been exposing slot information in /sys/bus/pci/slots for a
long time now (as long as a hotplug driver or slot detection
driver like pci_slot is loaded).
Let's make life better for our users and display that information
in lspci. If slot entries appear in /sys/bus/pci/slots/,
correlate them to PCI devices, and display the information when
lspci -v is issued.
If no slot entries appear in sysfs (due to no modules loaded), do
nothing.
Now you'll see sample output like the following:
23:01.1 Class 0c04: Device 10df:fd00 (rev 01)
Subsystem: Device 10df:fd00
Physical Slot: 3
Flags: bus master, 66MHz, medium devsel, latency 248, IRQ 60
...
Martin Mares [Sun, 9 Nov 2008 20:16:14 +0000 (21:16 +0100)]
Let `lspci -k' display subsystem names.
Several users have requested a `quick overview' mode that would display
everything needed to identify a device and its drivers. I believe that it
is better to extend the `-k' mode to include subsystems than to introduce
yet another mode.
AMD K8 processors claim that they're using HyperTransport 1.02, but the
publicly available documentation (specifically the BKDG) states that the
HT version is 1.03 in reality.
lspci will issue a warning "!!! Possibly incomplete decoding" and only
decode some basic HT properties for HT versions before 1.03.
Move that boundary down to HT version 1.02.
Max Asbock [Sun, 9 Nov 2008 19:47:00 +0000 (20:47 +0100)]
Fix printing of PCIE AER capability.
The cap_aer function in lspci.c which prints PCIE AER capabilities
labels the uncorrected error mask incorrectly as "status" and it
also has some typos. This patch fixes that.
Signed-off-by: Max Asbock <masbock@linux.vnet.ibm.com>
Martin Mares [Sun, 9 Nov 2008 19:40:08 +0000 (20:40 +0100)]
Fix spelling of MSI.
Change the spelling of 'Signalled' to 'Signaled' to match the PCI spec.
Report the capability as 'MSI' instead of either 'Message Signaled
Interrupts' to fit better with MSI-X and bring the width of this line
below 80 columns.
Inspired-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
Martin Mares [Tue, 26 Aug 2008 15:06:23 +0000 (17:06 +0200)]
Call wget with --no-timestamping.
If --timestamping was set in .wgetrc, wget fails, because it is unable to
handle --timestamping and -O simultaneously (for no apparent reason, but
the maintainers have decided that this bug has graduated to a feature,
see https://savannah.gnu.org/bugs/?22896).
Martin Mares [Tue, 26 Aug 2008 13:17:17 +0000 (15:17 +0200)]
Use the visibility attributes only when building a shared library.
Omair Eshkenazi has reported that libpci fails to build with gcc 3.x.
We require gcc 4.x for building shared libraries, but it should not
be needed when SHARED=no.
This patch changes internal.h to define PCI_ABI as the visibility
attribute only if we build a shared library.
However, this means that we need to know the configuration settings
before we include pci.h, so I had to include config.h explicitly
from internal.h and create a new symbol PCI_CONFIG_H to check whether
config.h has been already included.
Martin Mares [Tue, 26 Aug 2008 11:43:06 +0000 (13:43 +0200)]
Fix printing the MSI capability.
Contributed by Matthew Wilcox. His changelog says:
I'd like to present this change for your consideration. I'm not sure
where the original idea comes from that MSI has a 'queue' of interrupts.
It has multiple independent interrupts. Also, rather than just dumping
the raw values from the register, it makes sense to decode them into
the number of interrupts it supports.