On 10/25/2017 7:23 PM, Srisivasubramanian Srinivasan wrote: > On Wed, 2017-10-25 at 11:23 -0700, Ferruh Yigit wrote: >> On 10/25/2017 11:06 AM, Srisivasubramanian Srinivasan wrote: >>> On Tue, 2017-10-24 at 10:49 -0700, Ferruh Yigit wrote: >>>> On 10/23/2017 9:42 PM, Srisivasubramanian S wrote: >>>>> Signed-off-by: Srisivasubramanian S <ssrinivasan at caviumnetworks.com> >>>>> Signed-off-by: Shijith Thotton <shijith.thotton at caviumnetworks.com> >>>>> --- >>>>> doc/guides/nics/liquidio.rst | 2 ++ >>>>> drivers/net/liquidio/base/lio_hw_defs.h | 12 ++++++++---- >>>>> drivers/net/liquidio/lio_ethdev.c | 7 ++++++- >>>>> 3 files changed, 16 insertions(+), 5 deletions(-) >>>>> >>>>> diff --git a/doc/guides/nics/liquidio.rst b/doc/guides/nics/liquidio.rst >>>>> index 4ccde0c..7bc1604 100644 >>>>> --- a/doc/guides/nics/liquidio.rst >>>>> +++ b/doc/guides/nics/liquidio.rst >>>>> @@ -42,7 +42,9 @@ Supported LiquidIO Adapters >>>>> ----------------------------- >>>>> >>>>> - LiquidIO II CN2350 210SV/225SV >>>>> +- LiquidIO II CN2350 210SVPT >>>>> - LiquidIO II CN2360 210SV/225SV >>>>> +- LiquidIO II CN2360 210SVPT >>>> >>>> Do you want to update release notes to announce new device support? >>> >>> Sure, will do. >>> >>>> >>>>> >>>>> >>>>> Pre-Installation Configuration >>>>> diff --git a/drivers/net/liquidio/base/lio_hw_defs.h >>>>> b/drivers/net/liquidio/base/lio_hw_defs.h >>>>> index c7f97f2..d4cd23c 100644 >>>>> --- a/drivers/net/liquidio/base/lio_hw_defs.h >>>>> +++ b/drivers/net/liquidio/base/lio_hw_defs.h >>>>> @@ -43,10 +43,14 @@ >>>>> #define LIO_CN23XX_VF_VID 0x9712 >>>>> >>>>> /* CN23xx subsystem device ids */ >>>>> -#define PCI_SUBSYS_DEV_ID_CN2350_210 0x0004 >>>>> -#define PCI_SUBSYS_DEV_ID_CN2360_210 0x0005 >>>>> -#define PCI_SUBSYS_DEV_ID_CN2360_225 0x0006 >>>>> -#define PCI_SUBSYS_DEV_ID_CN2350_225 0x0007 >>>>> +#define PCI_SUBSYS_DEV_ID_CN2350_210 0x0004 >>>>> +#define PCI_SUBSYS_DEV_ID_CN2360_210 0x0005 >>>>> +#define PCI_SUBSYS_DEV_ID_CN2360_225 0x0006 >>>>> +#define PCI_SUBSYS_DEV_ID_CN2350_225 0x0007 >>>>> +#define PCI_SUBSYS_DEV_ID_CN2350_210SVPN3 0x0008 >>>>> +#define PCI_SUBSYS_DEV_ID_CN2360_210SVPN3 0x0009 >>>>> +#define PCI_SUBSYS_DEV_ID_CN2350_210SVPT 0x000a >>>>> +#define PCI_SUBSYS_DEV_ID_CN2360_210SVPT 0x000b >>>>> >>>>> /* --------------------------CONFIG VALUES------------------------ */ >>>>> >>>>> diff --git a/drivers/net/liquidio/lio_ethdev.c >>>>> b/drivers/net/liquidio/lio_ethdev.c >>>>> index 239f6af..2ffbfd2 100644 >>>>> --- a/drivers/net/liquidio/lio_ethdev.c >>>>> +++ b/drivers/net/liquidio/lio_ethdev.c >>>>> @@ -405,6 +405,10 @@ lio_dev_info_get(struct rte_eth_dev *eth_dev, >>>>> /* CN23xx 10G cards */ >>>>> case PCI_SUBSYS_DEV_ID_CN2350_210: >>>>> case PCI_SUBSYS_DEV_ID_CN2360_210: >>>>> + case PCI_SUBSYS_DEV_ID_CN2350_210SVPN3: >>>>> + case PCI_SUBSYS_DEV_ID_CN2360_210SVPN3: >>>>> + case PCI_SUBSYS_DEV_ID_CN2350_210SVPT: >>>>> + case PCI_SUBSYS_DEV_ID_CN2360_210SVPT: >>>>> devinfo->speed_capa = ETH_LINK_SPEED_10G; >>>>> break; >>>>> /* CN23xx 25G cards */ >>>>> @@ -413,8 +417,9 @@ lio_dev_info_get(struct rte_eth_dev *eth_dev, >>>>> devinfo->speed_capa = ETH_LINK_SPEED_25G; >>>>> break; >>>>> default: >>>>> + devinfo->speed_capa = ETH_LINK_SPEED_10G; >>>>> lio_dev_err(lio_dev, >>>>> - "Unknown CN23XX subsystem device id. Not setting >>>>> speed capability.\n"); >>>>> + "Unknown CN23XX subsystem device id. Setting 10G as >>>>> default link speed.\n"); >>>> >>>> Instead of setting speed and default and print an error log, why not added >>>> cases >>>> for new devices and set to 10G there? >>> >>> Our thinking was to avoid error log that come out as not setting link speed >>> when an old >>> DPDK driver is used on a LiquidIO VF compliant device that isn?t yet in the >>> driver. >> >> With old driver, pci device_id also won't be there for new device, and driver >> won't probe it at all, so there won't be an issue of not setting link speed, >> am >> I missing something? > > LiquidIO VF compliant devices all have the same pci device id. Just the > subsystem id changes, so probe will be successful. Just that for new > devices we will see a log denoting unknown subsystem during > dev_info_get() call. Even without this patch, 10GBase-T cards work with > the log getting displayed, but we want to avoid that log and explicitly > say support starts from this release.
Got it thank, I missed that these are subsystem ids, not device ids, I am OK with the patch. > >> >>> This is for forward compliance. We will of course add cases for new devices >>> as they >>> come along. Is this reasonable? >>> >>>> >>>>> } >>>>> >>>>> devinfo->max_rx_queues = lio_dev->max_rx_queues; >>>>> >>>> >>> >>> >>> >>> >>> >>> >>> >> > >