lkml.org 
[lkml]   [2013]   [Nov]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] PCI: Init NumVFs register to zero in sriov_init()
From
On Wed, Nov 13, 2013 at 5:57 PM, Ethan Zhao <ethan.kernel@gmail.com> wrote:
> On Wed, Nov 6, 2013 at 10:49 PM, ethan.zhao <ethan.kernel@gmail.com> wrote:
>> Though no specification about NumVFs register initial value after POST, to void the confusion
>> lspci output as following before VF was enabled, we should clear the NumVFs value left by BIOS
>> to zero:

Does BIOS need to clear it?


>>
>> $lspci -vvv -s 03:00.0
>> Ethernet controller: Intel Corporation 82599EB 10-Gigabit SFI/SFP+ Network Connection (rev 01)
>> ~
>> Capabilities: [160 v1] Single Root I/O Virtualization (SR-IOV)
>> IOVCap: Migration-, Interrupt Message Number: 000
>> IOVCtl: Enable+ Migration- Interrupt- MSE+ ARIHierarchy+
>> IOVSta: Migration-
>> Initial VFs: 64, Total VFs: 64, Number of VFs: 64, Function Dependency Link: 00
>> ^dazed !
>> ~

just display problem?

>> Signed-off-by: ethan.zhao <ethan.kernel@gmail.com>
>> ---
>> drivers/pci/iov.c | 2 ++
>> 1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/pci/iov.c b/drivers/pci/iov.c
>> index de8ffac..a4941ad 100644
>> --- a/drivers/pci/iov.c
>> +++ b/drivers/pci/iov.c
>> @@ -439,6 +439,8 @@ static int sriov_init(struct pci_dev *dev, int pos)
>>
>> found:
>> pci_write_config_word(dev, pos + PCI_SRIOV_CTRL, ctrl);
>> + /* VF Enable is cleared, so we could init the NumVFs register to 0 */
>> + pci_write_config_word(dev, pos + PCI_SRIOV_NUM_VF, 0);
>> pci_read_config_word(dev, pos + PCI_SRIOV_VF_OFFSET, &offset);
>> pci_read_config_word(dev, pos + PCI_SRIOV_VF_STRIDE, &stride);
>> if (!offset || (total > 1 && !stride))

Thanks

Yinghai


\
 
 \ /
  Last update: 2013-11-15 08:21    [W:0.136 / U:0.104 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site