Commit 2458b8ed authored by Biju Das's avatar Biju Das Committed by Jakub Kicinski
Browse files

ravb: Fillup ravb_rx_ring_free_gbeth() stub



Fillup ravb_rx_ring_free_gbeth() function to support RZ/G2L.

This patch also renames ravb_rx_ring_free to ravb_rx_ring_free_rcar
to be consistent with the naming convention used in sh_eth driver.

Signed-off-by: default avatarBiju Das <biju.das.jz@bp.renesas.com>
Reviewed-by: default avatarLad Prabhakar <prabhakar.mahadev-lad.rj@bp.renesas.com>
Reviewed-by: default avatarSergey Shtylyov <s.shtylyov@omp.ru>
Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 3d4e37df
Loading
Loading
Loading
Loading
+24 −4
Original line number Diff line number Diff line
@@ -236,10 +236,30 @@ static int ravb_tx_free(struct net_device *ndev, int q, bool free_txed_only)

static void ravb_rx_ring_free_gbeth(struct net_device *ndev, int q)
{
	/* Place holder */
	struct ravb_private *priv = netdev_priv(ndev);
	unsigned int ring_size;
	unsigned int i;

	if (!priv->gbeth_rx_ring)
		return;

	for (i = 0; i < priv->num_rx_ring[q]; i++) {
		struct ravb_rx_desc *desc = &priv->gbeth_rx_ring[i];

		if (!dma_mapping_error(ndev->dev.parent,
				       le32_to_cpu(desc->dptr)))
			dma_unmap_single(ndev->dev.parent,
					 le32_to_cpu(desc->dptr),
					 GBETH_RX_BUFF_MAX,
					 DMA_FROM_DEVICE);
	}
	ring_size = sizeof(struct ravb_rx_desc) * (priv->num_rx_ring[q] + 1);
	dma_free_coherent(ndev->dev.parent, ring_size, priv->gbeth_rx_ring,
			  priv->rx_desc_dma[q]);
	priv->gbeth_rx_ring = NULL;
}

static void ravb_rx_ring_free(struct net_device *ndev, int q)
static void ravb_rx_ring_free_rcar(struct net_device *ndev, int q)
{
	struct ravb_private *priv = netdev_priv(ndev);
	unsigned int ring_size;
@@ -2189,7 +2209,7 @@ static int ravb_mdio_release(struct ravb_private *priv)
}

static const struct ravb_hw_info ravb_gen3_hw_info = {
	.rx_ring_free = ravb_rx_ring_free,
	.rx_ring_free = ravb_rx_ring_free_rcar,
	.rx_ring_format = ravb_rx_ring_format,
	.alloc_rx_desc = ravb_alloc_rx_desc_rcar,
	.receive = ravb_rcar_rx,
@@ -2214,7 +2234,7 @@ static const struct ravb_hw_info ravb_gen3_hw_info = {
};

static const struct ravb_hw_info ravb_gen2_hw_info = {
	.rx_ring_free = ravb_rx_ring_free,
	.rx_ring_free = ravb_rx_ring_free_rcar,
	.rx_ring_format = ravb_rx_ring_format,
	.alloc_rx_desc = ravb_alloc_rx_desc_rcar,
	.receive = ravb_rcar_rx,