DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ferruh Yigit <ferruh.yigit@intel.com>
To: Stephen Hemminger <stephen@networkplumber.org>, dev@dpdk.org
Cc: Stephen Hemminger <sthemmin@microsoft.com>,
	Shreyansh Jain <shreyansh.jain@nxp.com>
Subject: Re: [dpdk-dev] [PATCH 7/8] ethdev: break ethernet driver and pci_driver connection
Date: Tue, 10 Jan 2017 17:58:38 +0000	[thread overview]
Message-ID: <bec2dfb0-d28f-a147-d9ea-1b06139e858c@intel.com> (raw)
In-Reply-To: <416d1526-f9d9-fa03-b04d-f63284a2df5d@intel.com>

On 1/10/2017 1:59 PM, Ferruh Yigit wrote:
> On 1/7/2017 6:17 PM, Stephen Hemminger wrote:
>> There are multiple buses and device types now. Therefore it no longer
>> makes sense that PCI driver information is part of the Ethernet driver
>> structure.
>>
>> This patch removes pci_driver from eth_driver and introduces a
>> new combined structure for use in all existing PMD's. The rationale
>> is that although all existing PCI drivers are Ethernet drivers,
>> it make sense that future projects may want to support PCI devices
>> that are not Ethernet.
>>
>> It also removes the requirement that driver is first element in
>> PCI driver structure.
>>
>> Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
>> ---
> 
> <...>
> 
>>  /**
>> + * @internal
>> + * The structure associated with a PMD PCI Ethernet driver.
>> + */
>> +struct rte_pci_eth_driver {
>> +	struct rte_pci_driver	pci_drv;	/**< Underlying PCI driver. */
>> +	struct eth_driver	eth_drv;	/**< Ethernet driver. */
>> +};
> 
> So do we need to add rte_vdev_eth_driver struct for virtual drivers, or
> need to add rte_pci_cryptodev_driver struct for pci crypto devices?
> 
> Can this be done in a more generic way? After Shreyansh's patches, there
> will be rte_device, rte_driver abstractions, can they be useful?

What do you think separating bus (pci) and functionality (eth/crypto)
driver structs, to make them less coupled. This makes combining bus /
function pairs easily.

I will send a patch as reply to this mail, it is not the complete patch,
but just to give the idea. It is based on Shreyansh's patchet.

> 
> <...>
> 

  reply	other threads:[~2017-01-10 17:58 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-01-07 18:17 [dpdk-dev] [PATCH v2 0/8] device abstraction and VMBUS support infrastructure Stephen Hemminger
2017-01-07 18:17 ` [dpdk-dev] [PATCH 1/8] ethdev: increase length ethernet device internal name Stephen Hemminger
2017-01-07 18:17 ` [dpdk-dev] [PATCH 2/8] i40e: don't refer to eth_dev->pci_dev Stephen Hemminger
2017-01-10 12:08   ` Jan Blunck
2017-01-10 17:57     ` Stephen Hemminger
2017-01-11  7:55       ` Jan Blunck
2017-01-07 18:17 ` [dpdk-dev] [PATCH 3/8] vmxnet3: " Stephen Hemminger
2017-01-10 12:10   ` Jan Blunck
2017-01-07 18:17 ` [dpdk-dev] [PATCH 4/8] cxgbe: " Stephen Hemminger
2017-01-10 12:12   ` Jan Blunck
2017-01-07 18:17 ` [dpdk-dev] [PATCH 5/8] nfp: " Stephen Hemminger
2017-01-10 12:13   ` Jan Blunck
2017-01-07 18:17 ` [dpdk-dev] [PATCH 6/8] qat: " Stephen Hemminger
2017-01-10 12:15   ` Jan Blunck
2017-01-07 18:17 ` [dpdk-dev] [PATCH 7/8] ethdev: break ethernet driver and pci_driver connection Stephen Hemminger
2017-01-10 13:59   ` Ferruh Yigit
2017-01-10 17:58     ` Ferruh Yigit [this message]
2017-01-10 18:02       ` [dpdk-dev] [PATCH 1/2] add rte_bus->probe Ferruh Yigit
2017-01-10 18:02         ` [dpdk-dev] [PATCH 2/2] separate bus and functionality driver structs Ferruh Yigit
2017-01-11  4:53         ` [dpdk-dev] [PATCH 1/2] add rte_bus->probe Shreyansh Jain
2017-01-11 15:03           ` Ferruh Yigit
2017-01-12  5:28             ` Shreyansh Jain
2017-01-10 16:11   ` [dpdk-dev] [PATCH 7/8] ethdev: break ethernet driver and pci_driver connection Jan Blunck
2017-01-10 18:03     ` Stephen Hemminger
2017-01-07 18:17 ` [dpdk-dev] [PATCH 8/8] eal: VMBUS infrastructure Stephen Hemminger
2017-01-10 17:27   ` Jan Blunck
2017-01-10 18:05     ` Stephen Hemminger
2017-01-11 14:49   ` Jan Blunck
2017-01-11 21:13     ` Jan Blunck
2017-01-12  1:20       ` Stephen Hemminger

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bec2dfb0-d28f-a147-d9ea-1b06139e858c@intel.com \
    --to=ferruh.yigit@intel.com \
    --cc=dev@dpdk.org \
    --cc=shreyansh.jain@nxp.com \
    --cc=stephen@networkplumber.org \
    --cc=sthemmin@microsoft.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).