Message ID | 1607526183-25652-2-git-send-email-loic.poulain@linaro.org |
---|---|
State | Superseded |
Headers | show |
Series | [1/3] bus: mhi: core: Add helper API to return number of free TREs | expand |
On 12/9/2020 8:03 AM, Loic Poulain wrote: > The RX queue size can be determined at runtime by retrieveing the retrieving > number of available transfer descriptors > > Signed-off-by: Loic Poulain <loic.poulain@linaro.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; >
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;
The RX queue size can be determined at runtime by retrieveing the number of available transfer descriptors Signed-off-by: Loic Poulain <loic.poulain@linaro.org> --- drivers/net/mhi_net.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)