From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shreyansh Jain Subject: Re: [PATCH 03/38] net/nfp: use library function for DMA zone reserve Date: Fri, 10 Mar 2017 12:33:55 +0530 Message-ID: <48d78603-3ff3-cdf2-d620-dc62cb6b88b5@nxp.com> References: <1488794430-25179-1-git-send-email-jblunck@infradead.org> <1488794430-25179-4-git-send-email-jblunck@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit To: Jan Blunck , Return-path: Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0055.outbound.protection.outlook.com [104.47.33.55]) by dpdk.org (Postfix) with ESMTP id 653A42C49 for ; Fri, 10 Mar 2017 07:58:10 +0100 (CET) In-Reply-To: <1488794430-25179-4-git-send-email-jblunck@infradead.org> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Hello Jan, On Monday 06 March 2017 03:29 PM, Jan Blunck wrote: > This driver can use the library function rte_eth_dma_zone_reserve() > instead of duplicating the code. > > Signed-off-by: Jan Blunck > --- > drivers/net/nfp/nfp_net.c | 30 ++++++------------------------ > 1 file changed, 6 insertions(+), 24 deletions(-) > > diff --git a/drivers/net/nfp/nfp_net.c b/drivers/net/nfp/nfp_net.c > index d79f262..b9dfe80 100644 > --- a/drivers/net/nfp/nfp_net.c > +++ b/drivers/net/nfp/nfp_net.c > @@ -205,26 +205,6 @@ nn_cfg_writeq(struct nfp_net_hw *hw, int off, uint64_t val) > nn_writeq(rte_cpu_to_le_64(val), hw->ctrl_bar + off); > } > > -/* Creating memzone for hardware rings. */ > -static const struct rte_memzone * > -ring_dma_zone_reserve(struct rte_eth_dev *dev, const char *ring_name, > - uint16_t queue_id, uint32_t ring_size, int socket_id) > -{ > - char z_name[RTE_MEMZONE_NAMESIZE]; > - const struct rte_memzone *mz; > - > - snprintf(z_name, sizeof(z_name), "%s_%s_%d_%d", > - dev->driver->pci_drv.driver.name, > - ring_name, dev->data->port_id, queue_id); > - > - mz = rte_memzone_lookup(z_name); > - if (mz) > - return mz; > - > - return rte_memzone_reserve_aligned(z_name, ring_size, socket_id, 0, > - NFP_MEMZONE_ALIGN); > -} > - > /* > * Atomically reads link status information from global structure rte_eth_dev. > * > @@ -1461,9 +1441,10 @@ nfp_net_rx_queue_setup(struct rte_eth_dev *dev, > * handle the maximum ring size is allocated in order to allow for > * resizing in later calls to the queue setup function. > */ > - tz = ring_dma_zone_reserve(dev, "rx_ring", queue_idx, > + tz = rte_eth_dma_zone_reserve(dev, "rx_ring", queue_idx, > sizeof(struct nfp_net_rx_desc) * > - NFP_NET_MAX_RX_DESC, socket_id); > + NFP_NET_MAX_RX_DESC, NFP_MEMZONE_ALIGN, > + socket_id); > > if (tz == NULL) { > RTE_LOG(ERR, PMD, "Error allocatig rx dma\n"); > @@ -1603,9 +1584,10 @@ nfp_net_tx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx, > * handle the maximum ring size is allocated in order to allow for > * resizing in later calls to the queue setup function. > */ > - tz = ring_dma_zone_reserve(dev, "tx_ring", queue_idx, > + tz = rte_eth_dma_zone_reserve(dev, "tx_ring", queue_idx, > sizeof(struct nfp_net_tx_desc) * > - NFP_NET_MAX_TX_DESC, socket_id); > + NFP_NET_MAX_TX_DESC, NFP_MEMZONE_ALIGN, > + socket_id); > if (tz == NULL) { > RTE_LOG(ERR, PMD, "Error allocating tx dma\n"); > nfp_net_tx_queue_release(txq); > This change is not part of the eth_driver removal process. Isn't it? I would suggest this should be a separate series all together. This is valid for Patch 0004 as well.