On Fri, Dec 11, 2020 at 10:40:13AM +0100, Loic Poulain wrote: > Hi Mani, > > On Fri, 11 Dec 2020 at 06:38, Manivannan Sadhasivam > <manivannan.sadhasivam@xxxxxxxxxx> wrote: > > > > On Thu, Dec 10, 2020 at 12:15:50PM +0100, Loic Poulain wrote: > > > The RX queue size can be determined at runtime by retrieving the > > > number of available transfer descriptors. > > > > > > Signed-off-by: Loic Poulain <loic.poulain@xxxxxxxxxx> > > > --- > > > v2: Fixed commit message typo > > > > > > drivers/net/mhi_net.c | 6 +++--- > > > 1 file changed, 3 insertions(+), 3 deletions(-) > [...] > > > - > > > 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); > > > + > > > > This value is not static right? You might need to fetch the count in > > mhi_net_rx_refill_work(). > > It is, actually here driver is just looking for the total queue size, > which is the number of descriptors at init time. This total queue size > is used later to determine the level of MHI queue occupancy rate. > Right but what if the size got increased in runtime (recycled etc...), we won't be fully utilizing the ring. Thanks, Mani > Regards, > Loic