[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-21 Thread Zhang, Helin
Hello David

Yes, long time ago, the same device IDs need to be filled in 3 or 4 places. 
Then it
would be better to have a centralized one, to avoid missing any.
And yes, it would be good to maintain device IDs per PMD.
As basically we don't expose any base driver header files, and sometimes those
device IDs need to be defined into different meanings, I'd prefer to have each
PMD has its own centralized device ID list header file, like you did for ixgbe.

Thanks a lot!

Regards,
Helin

> -Original Message-
> From: David Marchand [mailto:david.marchand at 6wind.com]
> Sent: Saturday, January 16, 2016 11:03 PM
> To: Zhang, Helin
> Cc: dev at dpdk.org; Thomas Monjalon
> Subject: Re: [dpdk-dev] [PATCH 00/11] kill global pci device id list
> 
> Hello Helin,
> 
> On Sun, Jan 10, 2016 at 4:53 PM, Zhang, Helin 
> wrote:
> > Thanks for your huge contribution!
> > May you help to describe more details of why you made these huge
> changes?
> 
> As far as I can see, the only reason why we have a centralised header
> maintained in eal with all pci device ids is the need to identify pci devices 
> that
> require a special treatment before starting a dpdk application (here, bind
> those pci devices to igb_uio / vfio).
> 
> This patchset splits this header into small pieces maintained by the drivers
> themselves, then tries to come up with a way to retrieve those pci device ids
> from the final dpdk application and from the drivers compiled as shared
> libraries.
> 
> With this, supported pci device ids are maintained by the drivers themselves
> rather than eal, pci devices ids requiring uio/vfio binding are still 
> available.
> 
> 
> Regards,
> --
> David Marchand


[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-16 Thread David Marchand
Hello Helin,

On Sun, Jan 10, 2016 at 4:53 PM, Zhang, Helin  wrote:
> Thanks for your huge contribution!
> May you help to describe more details of why you made these huge changes?

As far as I can see, the only reason why we have a centralised header
maintained in eal with all pci device ids is the need to identify pci
devices that require a special treatment before starting a dpdk application
(here, bind those pci devices to igb_uio / vfio).

This patchset splits this header into small pieces maintained by the drivers
themselves, then tries to come up with a way to retrieve those pci device ids
from the final dpdk application and from the drivers compiled as shared
libraries.

With this, supported pci device ids are maintained by the drivers themselves
rather than eal, pci devices ids requiring uio/vfio binding are still available.


Regards,
-- 
David Marchand


[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread Zhang, Helin
Hello David

Thanks for your huge contribution!
May you help to describe more details of why you made these huge changes?
What benefit we can have with your changes. I guess there must have, while you 
did not tell that here.

Regards,
Helin

> -Original Message-
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of David Marchand
> Sent: Sunday, January 10, 2016 8:51 PM
> To: dev at dpdk.org
> Cc: thomas.monjalon at dpdk.org
> Subject: [dpdk-dev] [PATCH 00/11] kill global pci device id list
> 
> This patchset moves all pci device ids from eal to the pmds that need them
> (patches 1 to 8).
> Global pci device id list is then removed (patches 9, 10).
> 
> In last patch, all those device ids are put in a dedicated section for 
> retrieval by
> external tools.
> 
> --
> David Marchand
> 
> David Marchand (11):
>   e1000: move pci device ids to driver
>   ixgbe: move pci device ids to driver
>   i40e: move pci device ids to driver
>   fm10k: move pci device ids to driver
>   virtio: move pci device ids to driver
>   vmxnet3: move pci device ids to driver
>   enic: move pci device ids to driver
>   bnx2x: move pci device ids to driver
>   doc: refresh headers list
>   pci: no need for global device ids list
>   pci: place all uio pci device ids in a dedicated section
> 
>  app/test-pmd/Makefile   |   2 +
>  app/test-pmd/cmdline.c  |   2 +-
>  app/test/Makefile   |   4 +
>  app/test/test_pci.c |   5 +-
>  doc/api/doxy-api-index.md   |   1 -
>  doc/guides/prog_guide/dev_kit_build_system.rst  |  56 +-
>  drivers/crypto/qat/rte_qat_cryptodev.c  |   2 +-
>  drivers/net/bnx2x/bnx2x.c   |   3 +-
>  drivers/net/bnx2x/bnx2x_ethdev.c|  29 +-
>  drivers/net/cxgbe/cxgbe_ethdev.c|   2 +-
>  drivers/net/e1000/em_ethdev.c   |   4 +-
>  drivers/net/e1000/em_pci_dev_ids.h  | 200 +++
>  drivers/net/e1000/igb_ethdev.c  |   8 +-
>  drivers/net/e1000/igb_pci_dev_ids.h | 164 ++
>  drivers/net/enic/enic_ethdev.c  |  14 +-
>  drivers/net/fm10k/fm10k_ethdev.c|  10 +-
>  drivers/net/i40e/i40e_ethdev.c  |  20 +-
>  drivers/net/i40e/i40e_ethdev_vf.c   |   8 +-
>  drivers/net/ixgbe/ixgbe_ethdev.c|   8 +-
>  drivers/net/ixgbe/ixgbe_pci_dev_ids.h   | 185 +++
>  drivers/net/nfp/nfp_net.c   |   2 +-
>  drivers/net/virtio/virtio_ethdev.c  |   7 +-
>  drivers/net/vmxnet3/vmxnet3_ethdev.c|   9 +-
>  lib/librte_eal/common/Makefile  |   2 +-
>  lib/librte_eal/common/include/rte_pci.h |   2 +
>  lib/librte_eal/common/include/rte_pci_dev_ids.h | 667 
> 
>  lib/librte_eal/linuxapp/kni/Makefile|   2 +
>  lib/librte_eal/linuxapp/kni/kni_misc.c  |   8 +-
>  28 files changed, 678 insertions(+), 748 deletions(-)  create mode 100644
> drivers/net/e1000/em_pci_dev_ids.h
>  create mode 100644 drivers/net/e1000/igb_pci_dev_ids.h
>  create mode 100644 drivers/net/ixgbe/ixgbe_pci_dev_ids.h
>  delete mode 100644 lib/librte_eal/common/include/rte_pci_dev_ids.h
> 
> --
> 1.9.1



[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
Really ...
Last mail for today ...

On Sun, Jan 10, 2016 at 2:26 PM, David Marchand 
wrote:

>
>
> On Sun, Jan 10, 2016 at 2:24 PM, Thomas Monjalon <
> thomas.monjalon at 6wind.com> wrote:
>
>> 2016-01-10 13:58, David Marchand:
>> > Hello Thomas,
>> >
>> > Sorry, don't know how I ended up with this, I wrote an incorrect mail
>> > address for you (I should not send patches after sunday meal ;-)).
>>
>> No worries :)
>> I was not expecting a patch so quickly after introducing you in this
>> thread.
>> Glad to see that you take time for - at least - your sunday meal :)
>>
>
>
The patches were ready for a long time, just sent them today as it is rainy
outside.


-- 
David Marchand


[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
On Sun, Jan 10, 2016 at 2:24 PM, Thomas Monjalon 
wrote:

> 2016-01-10 13:58, David Marchand:
> > Hello Thomas,
> >
> > Sorry, don't know how I ended up with this, I wrote an incorrect mail
> > address for you (I should not send patches after sunday meal ;-)).
>
> No worries :)
> I was not expecting a patch so quickly after introducing you in this
> thread.
> Glad to see that you take time for - at least - your sunday meal :)
>


[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread Thomas Monjalon
2016-01-10 13:58, David Marchand:
> Hello Thomas,
> 
> Sorry, don't know how I ended up with this, I wrote an incorrect mail
> address for you (I should not send patches after sunday meal ;-)).

No worries :)
I was not expecting a patch so quickly after introducing you in this thread.
Glad to see that you take time for - at least - your sunday meal :)


[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
Hello Thomas,

Sorry, don't know how I ended up with this, I wrote an incorrect mail
address for you (I should not send patches after sunday meal ;-)).


-- 
David Marchand


[dpdk-dev] [PATCH 00/11] kill global pci device id list

2016-01-10 Thread David Marchand
This patchset moves all pci device ids from eal to the pmds that need them
(patches 1 to 8).
Global pci device id list is then removed (patches 9, 10).

In last patch, all those device ids are put in a dedicated section for
retrieval by external tools.

-- 
David Marchand

David Marchand (11):
  e1000: move pci device ids to driver
  ixgbe: move pci device ids to driver
  i40e: move pci device ids to driver
  fm10k: move pci device ids to driver
  virtio: move pci device ids to driver
  vmxnet3: move pci device ids to driver
  enic: move pci device ids to driver
  bnx2x: move pci device ids to driver
  doc: refresh headers list
  pci: no need for global device ids list
  pci: place all uio pci device ids in a dedicated section

 app/test-pmd/Makefile   |   2 +
 app/test-pmd/cmdline.c  |   2 +-
 app/test/Makefile   |   4 +
 app/test/test_pci.c |   5 +-
 doc/api/doxy-api-index.md   |   1 -
 doc/guides/prog_guide/dev_kit_build_system.rst  |  56 +-
 drivers/crypto/qat/rte_qat_cryptodev.c  |   2 +-
 drivers/net/bnx2x/bnx2x.c   |   3 +-
 drivers/net/bnx2x/bnx2x_ethdev.c|  29 +-
 drivers/net/cxgbe/cxgbe_ethdev.c|   2 +-
 drivers/net/e1000/em_ethdev.c   |   4 +-
 drivers/net/e1000/em_pci_dev_ids.h  | 200 +++
 drivers/net/e1000/igb_ethdev.c  |   8 +-
 drivers/net/e1000/igb_pci_dev_ids.h | 164 ++
 drivers/net/enic/enic_ethdev.c  |  14 +-
 drivers/net/fm10k/fm10k_ethdev.c|  10 +-
 drivers/net/i40e/i40e_ethdev.c  |  20 +-
 drivers/net/i40e/i40e_ethdev_vf.c   |   8 +-
 drivers/net/ixgbe/ixgbe_ethdev.c|   8 +-
 drivers/net/ixgbe/ixgbe_pci_dev_ids.h   | 185 +++
 drivers/net/nfp/nfp_net.c   |   2 +-
 drivers/net/virtio/virtio_ethdev.c  |   7 +-
 drivers/net/vmxnet3/vmxnet3_ethdev.c|   9 +-
 lib/librte_eal/common/Makefile  |   2 +-
 lib/librte_eal/common/include/rte_pci.h |   2 +
 lib/librte_eal/common/include/rte_pci_dev_ids.h | 667 
 lib/librte_eal/linuxapp/kni/Makefile|   2 +
 lib/librte_eal/linuxapp/kni/kni_misc.c  |   8 +-
 28 files changed, 678 insertions(+), 748 deletions(-)
 create mode 100644 drivers/net/e1000/em_pci_dev_ids.h
 create mode 100644 drivers/net/e1000/igb_pci_dev_ids.h
 create mode 100644 drivers/net/ixgbe/ixgbe_pci_dev_ids.h
 delete mode 100644 lib/librte_eal/common/include/rte_pci_dev_ids.h

-- 
1.9.1