[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHBu3siV56=uySJ9i4FwOujag==oX=mGeubOeaNs3CWZcyJZyg@mail.gmail.com>
Date: Thu, 2 Jun 2016 07:59:24 +0100
From: alan hopes <hopes.alan@...il.com>
To: linux-kernel@...r.kernel.org
Subject: sriov capability enumeration returns false.
Hi,
I am working on a simple graphics driver that just enumerates SRIOV
capability of PCI graphics controller.
During the init phase of the driver i.e. when the driver loads, I find
the PCI device based on my vendor ID and device ID, and then I check
if pDev->sriov and and I get the value false even though I can see the
SRIOV capability set using lspci.
Code for checking SRIOV capability:
pdev = get device based on device ID and vendor ID.
if (pDev->sriov)
return false.
Output of lspci correctly reporting SRIOV capability at offset 0x330.
"
Capabilities: [330 v1] Single Root I/O Virtualization (SR-IOV)
IOVCap: Migration-, Interrupt Message Number: 000
IOVCtl: Enable- Migration- Interrupt- MSE- ARIHierarchy+
IOVSta: Migration-
Initial VFs: 16, Total VFs: 16, Number of VFs: 0,
Function Dependency Link: 00
VF offset: 256, stride: 1, Device ID: xxxx
Supported Page Size: 00000553, System Page Size: 00000001
Region 0: Memory at 0000021ee0000000 (64-bit, prefetchable)
Region 2: Memory at 0000021ff0000000 (64-bit, prefetchable)
Region 5: Memory at 98c00000 (32-bit, non-prefetchable)
VF Migration: offset: 00000000, BIR: 0
"
I can see, using lspci, that card has been setup properly with SRIOV
enabled. But then why my driver is not able to see this value. I think
I am missing something, Please can you suggest what I am doing wrong
here..
Thanks
Alan
Powered by blists - more mailing lists