Commit e6ec3ccd authored by Loic Poulain's avatar Loic Poulain Committed by Jakub Kicinski
Browse files

net: mhi: Get RX queue size from MHI core



The RX queue size can be determined at runtime by retrieving the
number of available transfer descriptors.

Signed-off-by: default avatarLoic Poulain <loic.poulain@linaro.org>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 2bca263c
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -273,9 +273,6 @@ static int mhi_net_probe(struct mhi_device *mhi_dev,
	SET_NETDEV_DEV(ndev, &mhi_dev->dev);
	SET_NETDEV_DEVTYPE(ndev, &wwan_type);

	/* 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);
@@ -285,6 +282,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;