From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pavan Nikhilesh Subject: [pbhagavatula@caviumnetworks.com: Re: [PATCH 2/4] eventdev: add caps API and PMD callbacks for eth Tx adapter] Date: Mon, 16 Jul 2018 17:03:12 +0530 Message-ID: <20180716113311.GB3118@ltp-pvn> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org To: nikhil.rao@intel.com, jkollanukkaran@caviumnetworks.com, olivier.matz@6wind.com Return-path: Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0057.outbound.protection.outlook.com [104.47.34.57]) by dpdk.org (Postfix) with ESMTP id CD538201 for ; Mon, 16 Jul 2018 13:33:23 +0200 (CEST) Content-Disposition: inline List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hi Nikhil, On Mon, Jul 16, 2018 at 11:25:45AM +0530, Rao, Nikhil wrote: > On 7/10/2018 4:26 PM, Pavan Nikhilesh wrote: > > +int __rte_experimental > > +rte_event_eth_tx_adapter_caps_get(uint8_t dev_id, uint32_t *caps) > > +{ > > The caps get API needs to be similar to rx adapter caps get i.e. it needs to > > have the eth_port_id as a parameter so that the underlying event dev driver can > > expose INTERNAL PORT capability as not all ethdev drivers have the capability > > to interact with the eventdevs internal port. > > > > rte_event_eth_tx_adapter_caps_get(uint8_t dev_id, uint16_t eth_port_id, > > uint32_t *caps); > Hi Pavan, > > Is querying the INTERNAL PORT on a per ethdev basis useful to the > application ? If an application chooses to use 2 ports one with INTERNAL PORT capability and one _without_ it then it would be useful to have per ethdev based classification similar to Rx adapter. The application can classify events based on event type RTE_EVENT_TYPE_ETHDEV & RTE_EVENT_TYPE_ETH_RX_ADAPTER to segregate between INTERNAL & NON-INTERNAL port at ingress side and enqueue it to either rte_event_eth_tx_adapter_enqueue or to the SINGLE link queue respectively. Also, I dont think eventdev should iterate over all probed ethdevs and give the overall caps as an application might want only a specific ethdev to be connected to the event tx adapter. > > For e.g., the txa_init() function in the adapter implementation can only > decide to use the internal port if it is supported for all ethdevs, > hence I left that upto the eventdev PMD to decide - i.e., it could > iterate across txa->dev_count eth devices to make that determination. > For caps in general, I agree it makes sense to pass in the ethdev, but > the INTERNAL PORT didn't seem useful on a per ethdev basis. > > We could also replace caps_get with something like a > rte_event_eth_tx_adapter_internal_port_check(dev_id) and add a per > ethdev caps if needed later. > > Thanks, > Nikhil Thanks, Pavan.