.
I did not test patch 8 on FreeBSD (did not even compile it, for now).
[1] http://dpdk.org/ml/archives/dev/2016-January/031390.html
[2] http://dpdk.org/ml/archives/dev/2015-November/028289.html
Regards,
--
David Marchand
David Marchand (9):
pci: no need for dynamic tailq init
pci: register
These lists can be initialized once and for all at build time.
With this, those lists are only manipulated in a common place
(and we could even make them private).
A nice side effect is that pci drivers can now register in constructors.
Signed-off-by: David Marchand
---
lib/librte_eal/bsdapp
pdev drivers are actually pci drivers.
Wrappers for ethdev and crypto pci drivers, that assume a 1 to 1
association between pci device and upper device, have been added so that
current drivers are not impacted.
Signed-off-by: David Marchand
---
drivers/crypto/qat/rte_qat_cryptodev.c
Now that pdev drivers have been converted to pci drivers, there is nothing
left in their init functions that can't go in a constructor.
pdev / vdev drivers init order is changed by this commit, but I can't see
why we would need to preserve it.
Signed-off-by: David Marchand
---
drivers/crypto
Now that virtio pci driver is initialized in a constructor, we only need to
move the interrupt thread init after loading the plugins.
This way, chelsio driver should be happy again [1].
[1] http://dpdk.org/ml/archives/dev/2015-November/028289.html
Signed-off-by: David Marchand
---
lib
Now that we only have vdev drivers, there is no need for a pmd type in
rte_driver.
rte_driver is now purely a vdev thing, and could be renamed later
(then .init would become .probe, .uninit would become .remove).
Signed-off-by: David Marchand
---
drivers/crypto/aesni_mb/rte_aesni_mb_pmd.c | 2
This way, the resources probing happens in a common place.
Signed-off-by: David Marchand
---
lib/librte_eal/bsdapp/eal/eal.c | 7 +++
lib/librte_eal/common/include/rte_dev.h | 2 +-
lib/librte_eal/linuxapp/eal/eal.c | 7 +++
3 files changed, 15 insertions(+), 1 deletion
eal is a better place than ethdev for naming resources.
Add a helper here, and make use of it in ethdev hotplug code.
Signed-off-by: David Marchand
---
lib/librte_eal/common/include/rte_pci.h | 28
lib/librte_ether/rte_ethdev.c | 22
It will be used mainly for hotplug code.
Signed-off-by: David Marchand
---
lib/librte_eal/bsdapp/eal/eal_pci.c | 49 +++
lib/librte_eal/common/eal_private.h | 13 ++
lib/librte_eal/linuxapp/eal/eal_pci.c | 13 ++
3 files changed, 75 insertions
hotplug which deals with resources should come from the layer that already
handles them, i.e. eal.
Signed-off-by: David Marchand
---
lib/librte_eal/bsdapp/eal/rte_eal_version.map | 8 +
lib/librte_eal/common/eal_common_dev.c | 39
lib/librte_eal/common/eal_common_pci.c
[1] http://dpdk.org/ml/archives/dev/2015-November/028140.html
[2] http://dpdk.org/ml/archives/dev/2016-January/032387.html
--
David Marchand
David Marchand (9):
pci: add internal device list helpers
pci/linux: minor cleanup
pci/linux: rework sysfs parsing for driver
pci: factorize probe/detach
Remove duplicate code by moving this to helpers in common.
Signed-off-by: David Marchand
---
Changes since v1:
- moved helpers to eal_private.h
---
lib/librte_eal/bsdapp/eal/eal_pci.c| 34 ---
lib/librte_eal/common/eal_common_pci.c | 76 --
lib
Those are the only fields that are explicitly set to 0 while the global
dev pointer is set to 0 a few lines before.
Signed-off-by: David Marchand
---
lib/librte_eal/linuxapp/eal/eal_pci.c | 9 ++---
1 file changed, 2 insertions(+), 7 deletions(-)
diff --git a/lib/librte_eal/linuxapp/eal
There is no use for pci_get_kernel_driver_by_path() apart recognising
kernel driver and fill kdrv field.
Signed-off-by: David Marchand
---
Changes since v1:
- updated the commitlog, Huawei already did the "unknown" -> "none"
change, so this patch ends up just ref
Same idea as a few commits before, no need to implement the same logic in
probe and detach functions.
Here, the driver matching is done by a helper, then probe / detach
functions are called respectively.
Signed-off-by: David Marchand
---
lib/librte_eal/common/eal_common_pci.c | 96
Indent previous commit, rename functions (internal and local functions do
not need rte_eal_ prefix).
Signed-off-by: David Marchand
---
lib/librte_eal/common/eal_common_pci.c | 106 -
1 file changed, 52 insertions(+), 54 deletions(-)
diff --git a/lib/librte_eal
Move pci id matching to a helper and reuse it in probe and detach
functions.
Signed-off-by: David Marchand
---
lib/librte_eal/common/eal_common_pci.c | 67 --
1 file changed, 23 insertions(+), 44 deletions(-)
diff --git a/lib/librte_eal/common/eal_common_pci.c
A device is linked to a driver at probe time.
When detaching, we should call this same driver detach() function and no
need for a driver lookup.
Signed-off-by: David Marchand
---
Changes since v1:
- moved some logs for consistency
---
lib/librte_eal/common/eal_common_pci.c | 19
whitelist.
Signed-off-by: David Marchand
---
lib/librte_eal/common/eal_common_pci.c | 101 +
1 file changed, 77 insertions(+), 24 deletions(-)
diff --git a/lib/librte_eal/common/eal_common_pci.c
b/lib/librte_eal/common/eal_common_pci.c
index 082eab8..4a0ec73 100644
Reuse pci hook to implement automatic bind / unbind.
The more I look at this, the more I think this should go to the PMDs
themselves (with options per devices to control this), with EAL offering
helpers to achieve this.
Signed-off-by: David Marchand
---
lib/librte_eal/bsdapp/eal/eal_pci.c
d_register.h sounds like a new
generic header with pci specific stuff in it.
So, I am not sure I follow you Neil.
Can you elaborate ?
- Why do you want to centralise the tag naming ?
To avoid collisions ?
Well, adding those tags should not happen that often and I think we
can maintain this with careful reviews.
--
David Marchand
I'd rather fix this than mark this as false positive, Sergio ?
--
David Marchand
update (will be sent separately)
[1]: http://dpdk.org/ml/archives/dev/2016-April/037686.html
--
David Marchand
David Marchand (10):
eal: remove PCI device ids header from doxygen
net/e1000: move em PCI device ids to the driver
net/i40e: move PCI device ids to the driver
net/fm10k: move PCI
This file is going to disappear, remove the doxygen parts that reference
various drivers and remove it from the doxygen index.
Signed-off-by: David Marchand
---
doc/api/doxy-api-index.md | 1 -
lib/librte_eal/common/include/rte_pci_dev_ids.h | 40
Reused defines from the driver and added a Intel vendor id macro for use by
igb later.
Used RTE_PCI_DEVICE in place of RTE_PCI_DEV_ID_DECL* stuff.
igb/igbvf is left as is, waiting for kni/ethtool cleanup.
Signed-off-by: David Marchand
---
Changes since v3:
- dropped all but em pci device ids
Reused defines from the driver.
Used RTE_PCI_DEVICE in place of RTE_PCI_DEV_ID_DECL* stuff.
Signed-off-by: David Marchand
---
Changes since v3
- added new pci ids from HEAD
---
drivers/net/i40e/i40e_ethdev.c | 25 +++--
drivers/net/i40e/i40e_ethdev_vf.c | 9
Reused defines from the driver.
Used RTE_PCI_DEVICE in place of RTE_PCI_DEV_ID_DECL* stuff.
Signed-off-by: David Marchand
Acked-by: Yuanhan Liu
---
drivers/net/virtio/virtio_ethdev.c | 7 ++-
lib/librte_eal/common/include/rte_pci_dev_ids.h | 16
2 files
Moved vmware device ids macro since the driver had no such information.
Used RTE_PCI_DEVICE in place of RTE_PCI_DEV_ID_DECL* stuff.
Signed-off-by: David Marchand
---
drivers/net/vmxnet3/vmxnet3_ethdev.c| 9 -
lib/librte_eal/common/include/rte_pci_dev_ids.h | 16
Reused defines from the driver and moved broadcom vendor id macro.
Used RTE_PCI_DEVICE in place of RTE_PCI_DEV_ID_DECL* stuff.
Signed-off-by: David Marchand
---
drivers/net/bnx2x/bnx2x.c | 3 +-
drivers/net/bnx2x/bnx2x_ethdev.c| 21 --
lib
Moved defines since the driver had no such information.
Used RTE_PCI_DEVICE in place of RTE_PCI_DEV_ID_DECL* stuff.
Signed-off-by: David Marchand
---
drivers/net/bnxt/bnxt_ethdev.c | 27 +---
lib/librte_eal/common/include/rte_pci_dev_ids.h | 34
I suppose this is a remnant of rte_pci_dev_ids.h, just remove this.
Signed-off-by: David Marchand
---
drivers/net/ena/ena_ethdev.c | 7 +++
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index f1b5e64..ac0803d 100644
ered tests.
> Thus they cannot be parsed as available test commands.
>
> Signed-off-by: Thomas Monjalon
Suggested-by: David Marchand
and I trust you for the python ;-)
--
David Marchand
useful if a driver is registered after the
>> execution of a program has started and the list of devices
>> needs to be re-scanned.
>>
>> Signed-off-by: Ben Walker
>
> Applied, thanks
Can you add a follow up patch I will send shortly ?
Thanks.
--
David Marchand
dev->driver should be set only if a driver did take the device.
Signed-off-by: David Marchand
---
lib/librte_eal/common/eal_common_pci.c | 6 +-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/lib/librte_eal/common/eal_common_pci.c
b/lib/librte_eal/common/eal_common_pc
al_pci_probe_one(const struct rte_pci_addr *addr)
> continue;
>
> ret = pci_probe_all_drivers(dev);
> - if (ret < 0)
> + if (ret)
> goto err_return;
> return 0;
> }
Acked-by: David Marchand
--
David Marchand
and no
need to expose a type.
> 3. Similarly, rte_eth_dev has rte_pci_device which should be replaced with
> rte_device.
Yes, that's the main change for me.
Thanks.
--
David Marchand
ing the pmd must do is:
- for pci drivers, call rte_eth_copy_pci_info() which then sets
data->drv_name
- for vdev drivers, manually set data->drv_name
At this stage, virtio-user does not properly report a driver name (fixed in
next commit).
Signed-off-by: David Marchand
-
Some virtual pmds report a different name than the vdev driver name
registered in eal.
While it does not hurt, let's try to be consistent.
Signed-off-by: David Marchand
---
drivers/net/af_packet/rte_eth_af_packet.c | 4 +++-
drivers/net/bonding/rte_eth_bond_api.c | 7 +++
drivers/net
> + provide a way to handle device initialization currently being done in
> + ``eth_driver``.
> --
> 2.7.4
>
Acked-by: David Marchand
--
David Marchand
Hello Ferruh,
On Thu, Nov 10, 2016 at 7:46 PM, Ferruh Yigit wrote:
> On 11/10/2016 1:51 PM, David Marchand wrote:
>> Some virtual pmds report a different name than the vdev driver name
>> registered in eal.
>> While it does not hurt, let's try to be consistent.
>&
On Fri, Nov 11, 2016 at 8:16 PM, Ferruh Yigit wrote:
> On 11/10/2016 11:05 AM, Shreyansh Jain wrote:
>> On Thursday 10 November 2016 01:46 PM, David Marchand wrote:
>>> Do we really need to keep a eth_driver ?
>>
>> No. As you have rightly mentioned below (as
ci: move uio mapping in a dedicated file")
The commit you are pointing is just moving the code.
I would incriminate f7f97c16048e ("pci: add option --create-uio-dev to
run without hotplug")
The rest looks good to me.
--
David Marchand
; };
>
> +#define ETH_DEV_PCI_DEV(ptr) ((ptr)->pci_dev)
> +
> /** Any PCI device identifier (vendor, device, ...) */
> #define PCI_ANY_ID (0x)
> #define RTE_CLASS_ANY_ID (0xff)
This should come from ethdev, not eal.
--
David Marchand
| 1 -
> 20 files changed, 28 insertions(+), 1 deletion(-)
Looks good to me.
--
David Marchand
e
rte_driver using the bus match method then call the probe method. If
the probe succeeds, the rte_device points to the associated
rte_driver,
- migrate the pci scan code to a pci bus (scan looks at sysfs for
linux / ioctl for bsd + devargs for blacklist / whitelist ?), match is
the same at what is done in rte_eal_pci_probe_one_driver() at the
moment,
- migrate the vdev init code to a vdev bus (scan looks at devargs):
this is new, we must create rte_device objects for vdev drivers to use
later
Then we can talk about the next steps once the bus is in place.
--
David Marchand
gt; 3) bond device 2 configure/start
> 3.1) pcie device 0/stop/configure/start
> 3.2) pcie device 1/stop/configure/start
This patch is fine.
It's been a while since I looked at the bonding pmd.
I am just wondering if the bonding pmd should really start its slaves ports.
--
David Marchand
On Mon, Nov 21, 2016 at 5:34 PM, Jan Blunck wrote:
> On Sun, Nov 20, 2016 at 4:22 PM, David Marchand
>> I posted something similar [1], so looks good to me :-)
>>
>> [1]: http://dpdk.org/dev/patchwork/patch/16991/
>>
>
> Thanks for reviewing. Do we go wit
Some virtual pmds report a different name than the vdev driver name
registered in eal.
While it does not hurt, let's try to be consistent.
Signed-off-by: David Marchand
Reviewed-by: Ferruh Yigit
---
drivers/net/af_packet/rte_eth_af_packet.c | 4 +++-
drivers/net/bonding/rte_eth_bond_api.c
fos for port 0 *
MAC address: DE:AD:DE:01:02:03
Driver name: net_af_packet
Connect to socket: 0
memory allocation on the socket: 0
Signed-off-by: David Marchand
---
This small patch is what I used to check
http://dpdk.org/dev/patchwork/patch/17170/ and
http://dpdk.org/dev/patchw
+ */
> +#define RTE_LOG_DP(l, t, ...) \
> (void)((RTE_LOG_ ## l <= RTE_LOG_LEVEL) ? \
> rte_log(RTE_LOG_ ## l, \
> RTE_LOGTYPE_ ## t, # t ": " __VA_ARGS__) : \
> --
> 2.8.1
Hum, I suppose RTE_LOG_DP should look at RTE_LOG_DP_LEVEL.
--
David Marchand
pes and levels, can't we filter at
build time depending on the log "type" ?
Here we would strip PMD type logs > INFO.
--
David Marchand
).
"Later", each process updates this list with the actual pointer to the
lists by looking at the shared memory in rte_eal_init (calling
rte_eal_tailqs_init).
What matters is that secondary tailqs are a subset of the primary tailqs.
I still have some trouble understanding what you are trying to do.
As Sergio asked, can you come up with a simplified example/use case ?
Thanks.
--
David Marchand
quot;)
Reported-by: Daniel Mrzyglod
Signed-off-by: David Marchand
---
lib/librte_ether/rte_ethdev.c | 10 +-
1 file changed, 5 insertions(+), 5 deletions(-)
diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
index c517e88..24029f0 100644
--- a/lib/librte_ether/rte_et
Fixes: af75078fece3 ("first public release")
Signed-off-by: David Marchand
---
lib/librte_ether/rte_ethdev.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
index 24029f0..88fa382 100644
--- a/lib/li
The driver name has been lost with the eal rework.
Restore it.
Fixes: c830cb295411 ("drivers: use PCI registration macro")
Signed-off-by: David Marchand
---
drivers/net/virtio/virtio_ethdev.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/net/virtio/virtio_ethdev.c
->addr.devid,
> pci_dev->addr.function);
> if (ret < 0)
This patch is obsolete since this part has been moved to eal.
Can you test with current master branch if there is still an issue ?
Thanks.
--
David Marchand
On Tue, Mar 8, 2016 at 12:13 PM, Thomas Monjalon
wrote:
> 2016-03-08 09:58, Van Haaren, Harry:
>> From: David Marchand [mailto:david.marchand at 6wind.com]
>> > When I look at this new api, I am under the impression that you are
>> > supposed to check for primary li
On Tue, Mar 8, 2016 at 2:57 PM, Van Haaren, Harry
wrote:
>> From: David Marchand [mailto:david.marchand at 6wind.com]
>> >> The issue is that if a secondary process is initialized, it holds a read
>> >> lock on /var/run/.rte_config and this prevents a primary fr
ervices to DPDK primary applications such as monitoring
> statistics and performing fault detection.
Sergio, please can you have a look at this patchset ?
Thanks.
--
David Marchand
> (the 32th bit) for legacy virtio, which is obviously wrong.
>
> Fixes: b8f04520ad71 ("virtio: use PCI ioport API")
>
> Cc: David Marchand
> Signed-off-by: Yuanhan Liu
Argh, good catch.
Relooked at my patch, this should be the only bug (of this kind ;-)).
Reviewed-by: David Marchand
--
David Marchand
Here is a patchset for little cleanups and a fix on newly introduced pci
ioport api.
The last patch fixes a regression reported by Mauricio V. [1].
[1]: http://dpdk.org/ml/archives/dev/2016-February/033922.html
--
David Marchand
David Marchand (4):
pci: explicitly call ioport handlers
Prepare for fixes on x86 by separating igb_uio and uio_pci_generic cases.
Signed-off-by: David Marchand
---
lib/librte_eal/linuxapp/eal/eal_pci.c | 8
1 file changed, 8 insertions(+)
diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c
b/lib/librte_eal/linuxapp/eal/eal_pci.c
index
Same idea as commit bd80d4730aca ("pci: rework ioport map error handling").
Signed-off-by: David Marchand
---
lib/librte_eal/linuxapp/eal/eal_pci.c | 5 +
1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c
b/lib/librte_eal/li
onsistency.
Signed-off-by: David Marchand
---
lib/librte_eal/linuxapp/eal/eal_pci.c | 15 +--
1 file changed, 9 insertions(+), 6 deletions(-)
diff --git a/lib/librte_eal/linuxapp/eal/eal_pci.c
b/lib/librte_eal/linuxapp/eal/eal_pci.c
index 7707292..74c6919 100644
--- a/lib/librte_ea
uio_pci_generic does not offer the same sysfs helpers as igb_uio.
In this case, ioport number can only be retrieved by parsing /proc/ioports.
Fixes: 756ce64b1ecd ("eal: introduce PCI ioport API")
Reported-by: Mauricio V?squez
Signed-off-by: David Marchand
---
lib/librte_eal/li
>And why cut down to mem rather than memory ?
>
> I debated on mem-size, but I noticed in a couple places some used memsize. I
> can change them to any thing someone wants. If you want memory-channels and
> memory-ranks I am good with that too.
Ok, since I can see no real argument against, let's go with explicit options :
--memory-size
--memory-channels
--memory-ranks
The best would be then to align all other existing long options (but
keeping compat with existing ones).
Deal ?
--
David Marchand
Following discussions with Jan, here is a deprecation notice to prepare for
hotplug and rte_device changes to come in 16.07.
Signed-off-by: David Marchand
---
doc/guides/rel_notes/deprecation.rst | 12
1 file changed, 12 insertions(+)
diff --git a/doc/guides/rel_notes
On Thu, Apr 7, 2016 at 7:09 PM, Jan Viktorin wrote:
> On Thu, 7 Apr 2016 19:00:43 +0200
> David Marchand wrote:
>> >> Following discussions with Jan, here is a deprecation notice to prepare
>> >> for
>> >> hotplug and rte_device changes to come in 16.07
ementation has been deprecated in commit b7cf8e155.
>> The config helper - through igb_uio sysfs entries - is now removed.
>>
>> Signed-off-by: Thomas Monjalon
> Acked-by: Helin Zhang
Thanks.
Acked-by: David Marchand
--
David Marchand
> Signed-off-by: Thomas Monjalon
Acked-by: David Marchand
--
David Marchand
t;
> Signed-off-by: Thomas Monjalon
Looks good to me.
Acked-by: David Marchand
--
David Marchand
munmap((void *)(uintptr_t)base_addr,
> mcfg->memseg[s].len);
> +
What is the point of this casting ?
Idem for the rest of the patch.
I can't see cleanup for previously mapped segments when mapping one fails.
Do we want this cleanup as well ?
CC Sergio.
--
David Marchand
ves/dev/2016-January/031390.html
Regards,
--
David Marchand
David Marchand (17):
pci: no need for dynamic tailq init
crypto: no need for a crypto pmd type
drivers: align pci driver definitions
eal: remove duplicate function declaration
eal: introduce init macros
crypto: export init/uni
These lists can be initialized once and for all at build time.
With this, those lists are only manipulated in a common place
(and we could even make them private).
A nice side effect is that pci drivers can now register in constructors.
Signed-off-by: David Marchand
Reviewed-by: Jan Viktorin
This information is not used and just adds noise.
Signed-off-by: David Marchand
---
lib/librte_cryptodev/rte_cryptodev.c | 8 +++-
lib/librte_cryptodev/rte_cryptodev.h | 2 --
lib/librte_cryptodev/rte_cryptodev_pmd.h | 3 +--
3 files changed, 4 insertions(+), 9 deletions(-)
diff
Pure coding style, but it might make it easier later if we want to move
fields in rte_cryptodev_driver and eth_driver structures.
Signed-off-by: David Marchand
---
drivers/crypto/qat/rte_qat_cryptodev.c | 2 +-
drivers/net/ena/ena_ethdev.c | 2 +-
drivers/net/nfp/nfp_net.c
rte_eal_dev_init is declared in both eal_private.h and rte_dev.h since its
introduction.
This function has been exported in ABI, so remove it from eal_private.h
Fixes: e57f20e05177 ("eal: make vdev init path generic for both virtual and pci
devices")
Signed-off-by: David Marchand
Introduce a RTE_INIT macro used to mark an init function as a constructor.
Current eal macros have been converted to use this (no functional impact).
RTE_EAL_PCI_REGISTER is added as a helper for pci drivers.
Suggested-by: Jan Viktorin
Signed-off-by: David Marchand
---
lib/librte_eal/common
Preparing for getting rid of rte_cryptodev_driver, here are two wrappers
that can be used by pci drivers that assume a 1 to 1 association between
pci resource and upper interface.
Signed-off-by: David Marchand
---
lib/librte_cryptodev/rte_cryptodev.c | 16
lib
Preparing for getting rid of eth_drv, here are two wrappers that can be
used by pci drivers that assume a 1 to 1 association between pci resource and
upper interface.
Signed-off-by: David Marchand
---
lib/librte_ether/rte_ethdev.c | 14 +++---
lib/librte_ether/rte_ethdev.h
egistering a pci driver.
Signed-off-by: David Marchand
---
drivers/crypto/qat/rte_qat_cryptodev.c | 16 +++
drivers/net/bnx2x/bnx2x_ethdev.c| 35 +---
drivers/net/cxgbe/cxgbe_ethdev.c| 24 +++--
drivers/net/e1000/em_ethdev.c
Now that all pdev are pci drivers, we don't need to register crypto drivers
through a dedicated channel.
Signed-off-by: David Marchand
---
lib/librte_cryptodev/rte_cryptodev.c | 22 ---
lib/librte_cryptodev/rte_cryptodev_pmd.h | 30 --
lib
Now that all pdev are pci drivers, we don't need to register ethdev drivers
through a dedicated channel.
Signed-off-by: David Marchand
---
lib/librte_ether/rte_ethdev.c | 22 --
lib/librte_ether/rte_ethdev.h | 12
lib/librte_ether
Now that virtio pci driver is initialized in a constructor, iopl() stuff
happens early enough so that interrupt thread can be created right after
plugin loading.
This way, chelsio driver should be happy again [1].
[1] http://dpdk.org/ml/archives/dev/2015-November/028289.html
Signed-off-by: David
eal is a better place than crypto / ethdev for naming resources.
Add a helper in eal and make use of it in crypto / ethdev.
Signed-off-by: David Marchand
---
lib/librte_cryptodev/rte_cryptodev.c| 27 ---
lib/librte_eal/common/include/rte_pci.h | 25
This helper updates a pci device object with latest information it can
find.
It will be used mainly for hotplug code.
Signed-off-by: David Marchand
---
lib/librte_eal/bsdapp/eal/eal_pci.c | 49 +++
lib/librte_eal/common/eal_private.h | 13 ++
lib
No need to scan all devices, we only need to update the device being
attached.
Signed-off-by: David Marchand
---
lib/librte_eal/common/eal_common_pci.c | 11 ---
lib/librte_ether/rte_ethdev.c | 3 ---
2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/lib
hotplug which deals with resources should come from the layer that already
handles them, i.e. eal.
For both attach and detach operations, 'name' is used to select the bus
that will handle the request.
Signed-off-by: David Marchand
---
lib/librte_eal/bsdapp/eal/rte_eal_version.map | 8
need some mechanism
to inform applications of port creation/removal to substitute for ethdev
hotplug api.
dev_type field in struct rte_eth_dev and rte_eth_dev_allocate are kept as
is, but this information is not needed anymore and is removed in the following
commit.
Signed-off-by: David Marchand
Now that hotplug has been moved to eal, there is no reason to keep the device
type in this layer.
Signed-off-by: David Marchand
---
app/test/virtual_pmd.c| 2 +-
drivers/net/af_packet/rte_eth_af_packet.c | 2 +-
drivers/net/bonding/rte_eth_bond_api.c| 2 +-
drivers
Marchand
David Marchand (13):
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
-off-by: David Marchand
---
app/test/Makefile | 3 +
app/test/test_pci.c | 3 +-
drivers/net/e1000/em_ethdev.c | 2 +-
drivers/net/e1000/em_pci_dev_ids.h | 208 +++
drivers/net/e1000
test application and kni still want to know ixgbe pci devices.
So let's create a header in the driver that will be used by them.
Same comment as for e1000 driver, we can't reuse base/ headers at the moment
because of macros redefinitions nightmare.
Signed-off-by: David Marchand
---
app/test
Since the base driver already defines all pci device ids, no need to
redefine them, let's just drop the previous RTE_PCI_DEV_ID_DECL* stuff.
Signed-off-by: David Marchand
---
drivers/net/i40e/i40e_ethdev.c | 21 ++--
drivers/net/i40e/i40e_ethdev_vf.c | 9
Since the base driver already defines all pci device ids, no need to
redefine them, let's just drop the previous RTE_PCI_DEV_ID_DECL* stuff.
Signed-off-by: David Marchand
---
drivers/net/fm10k/fm10k_ethdev.c| 7 +++---
lib/librte_eal/common/include/rte_pci_dev_ids.h | 29
Reused defines from virtio_pci.h.
Signed-off-by: David Marchand
---
drivers/net/virtio/virtio_ethdev.c | 7 ++-
lib/librte_eal/common/include/rte_pci_dev_ids.h | 17 -
2 files changed, 2 insertions(+), 22 deletions(-)
diff --git a/drivers/net/virtio
Moved vmware device ids macro since the driver had no such information.
Signed-off-by: David Marchand
---
drivers/net/vmxnet3/vmxnet3_ethdev.c| 9 -
lib/librte_eal/common/include/rte_pci_dev_ids.h | 16
2 files changed, 4 insertions(+), 21 deletions
Moved cisco vendor id since the driver had no such information.
Signed-off-by: David Marchand
---
drivers/net/enic/enic_ethdev.c | 13 +
lib/librte_eal/common/include/rte_pci_dev_ids.h | 17 -
2 files changed, 5 insertions(+), 25 deletions(-)
diff
Reused defines from the driver and moved broadcom vendor id macro.
Signed-off-by: David Marchand
---
drivers/net/bnx2x/bnx2x.c | 3 +-
drivers/net/bnx2x/bnx2x_ethdev.c| 21 +++--
lib/librte_eal/common/include/rte_pci_dev_ids.h | 60
I suppose this is a remnant of rte_pci_dev_ids.h, just remove this.
Signed-off-by: David Marchand
---
drivers/net/ena/ena_ethdev.c | 8 +++-
1 file changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c
index 2b60a67..efa5e31
501 - 600 of 707 matches
Mail list logo