[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <1607526183-25652-2-git-send-email-loic.poulain@linaro.org>
Date: Wed, 9 Dec 2020 16:03:02 +0100
From: Loic Poulain <loic.poulain@...aro.org>
To: kuba@...nel.org
Cc: manivannan.sadhasivam@...aro.org, linux-arm-msm@...r.kernel.org,
netdev@...r.kernel.org, davem@...emloft.net,
Loic Poulain <loic.poulain@...aro.org>
Subject: [PATCH 2/3] net: mhi: Get RX queue size from MHI core
The RX queue size can be determined at runtime by retrieveing the
number of available transfer descriptors
Signed-off-by: Loic Poulain <loic.poulain@...aro.org>
---
drivers/net/mhi_net.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/mhi_net.c b/drivers/net/mhi_net.c
index 8e72d94..0333e07 100644
--- a/drivers/net/mhi_net.c
+++ b/drivers/net/mhi_net.c
@@ -256,9 +256,6 @@ static int mhi_net_probe(struct mhi_device *mhi_dev,
mhi_netdev->mdev = mhi_dev;
SET_NETDEV_DEV(ndev, &mhi_dev->dev);
- /* All MHI net channels have 128 ring elements (at least for now) */
- mhi_netdev->rx_queue_sz = 128;
-
INIT_DELAYED_WORK(&mhi_netdev->rx_refill, mhi_net_rx_refill_work);
u64_stats_init(&mhi_netdev->stats.rx_syncp);
u64_stats_init(&mhi_netdev->stats.tx_syncp);
@@ -268,6 +265,9 @@ static int mhi_net_probe(struct mhi_device *mhi_dev,
if (err)
goto out_err;
+ /* Number of transfer descriptors determines size of the queue */
+ mhi_netdev->rx_queue_sz = mhi_get_free_desc_count(mhi_dev, DMA_FROM_DEVICE);
+
err = register_netdev(ndev);
if (err)
goto out_err;
--
2.7.4
Powered by blists - more mailing lists