|
@@ -275,6 +275,7 @@ qcaspi_get_ringparam(struct net_device *dev, struct ethtool_ringparam *ring)
|
|
|
static int
|
|
|
qcaspi_set_ringparam(struct net_device *dev, struct ethtool_ringparam *ring)
|
|
|
{
|
|
|
+ const struct net_device_ops *ops = dev->netdev_ops;
|
|
|
struct qcaspi *qca = netdev_priv(dev);
|
|
|
|
|
|
if ((ring->rx_pending) ||
|
|
@@ -283,13 +284,13 @@ qcaspi_set_ringparam(struct net_device *dev, struct ethtool_ringparam *ring)
|
|
|
return -EINVAL;
|
|
|
|
|
|
if (netif_running(dev))
|
|
|
- qcaspi_netdev_close(dev);
|
|
|
+ ops->ndo_stop(dev);
|
|
|
|
|
|
qca->txr.count = max_t(u32, ring->tx_pending, TX_RING_MIN_LEN);
|
|
|
qca->txr.count = min_t(u16, qca->txr.count, TX_RING_MAX_LEN);
|
|
|
|
|
|
if (netif_running(dev))
|
|
|
- qcaspi_netdev_open(dev);
|
|
|
+ ops->ndo_open(dev);
|
|
|
|
|
|
return 0;
|
|
|
}
|