Identifying whether a pci device is x1, x4, x8 or x16

Kevin Wilson wkevils at
Tue Jun 14 10:19:55 EDT 2016

Thanks, Bjorn!
This worked for me.
Is there a way that "lspci -vvvnn" will return only info about a given
bdf (like 0000:02:00.0, which is what ethtool -i eth4 returns
in the "bus-info" field.


On Tue, Jun 14, 2016 at 4:06 PM, Bjørn Mork <bjorn at> wrote:
> Kevin Wilson <wkevils at> writes:
>> Hi all,
>> Is there a way to find out whether a PCI device in a given Linux
>> machine is x1, x4, x8 or x16, in terms
>> of physical dimensions (without opening the box...)
> Sure.  Use something like "lspci -vvvnn" and check out LnkCap and LnkSta
> under Capabilities.  There you can see both the number of channels and
> symbol rate.
> For example for an x8 card in an x4 slot (connection-wise - the
> connector is of course wider or the x8 card wouldn't fit):
> LnkCap: Port #0, Speed 5GT/s, Width x8, ASPM L0s, Exit Latency L0s <512ns, L1 <4us
> LnkSta: Speed 2.5GT/s, Width x4, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
> Bjørn

More information about the Kernelnewbies mailing list