[dpdk-dev] Clarification for eth_driver changes
David Marchand
david.marchand at 6wind.com
Thu Nov 10 09:16:51 CET 2016
Hello Shreyansh,
On Thu, Nov 10, 2016 at 8:26 AM, Shreyansh Jain <shreyansh.jain at nxp.com> wrote:
> I need some help and clarification regarding some changes I am doing to
> cleanup the EAL code.
>
> There are some changes which should be done for eth_driver/rte_eth_device
> structures:
>
> 1. most obvious, eth_driver should be renamed to rte_eth_driver.
> 2. eth_driver currently has rte_pci_driver embedded in it
> - there can be ethernet devices which are _not_ PCI
> - in which case, this structure should be removed.
Do we really need to keep a eth_driver ?
As far as I can see, it is only a convenient wrapper for existing pci
drivers, but in the end it is just a pci_driver with ethdev context in
it that could be pushed to each existing driver.
In my initial description
http://dpdk.org/ml/archives/dev/2016-January/031390.html, what I had
in mind was only having a rte_eth_device pointing to a generic
rte_device.
If we need to invoke some generic driver ops from ethdev (I can only
see the ethdev hotplug api, maybe I missed something), then we would
go through rte_eth_device -> rte_device -> rte_driver.
The rte_driver keeps its own bus/private logic in its code, 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
More information about the dev
mailing list