12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- From 7e553c44f09a8f536090904c6db5b8c9dbafa03b Mon Sep 17 00:00:00 2001
- From: Aleksander Jan Bajkowski <[email protected]>
- Date: Tue, 26 Oct 2021 22:59:01 +0200
- Subject: [PATCH] net: lantiq_xrx200: Hardcode the burst length value
- All SoCs with this IP core support 8 burst length. Hauke
- suggested to hardcode this value and simplify the driver.
- Link: https://lkml.org/lkml/2021/9/14/1533
- Signed-off-by: Aleksander Jan Bajkowski <[email protected]>
- Signed-off-by: David S. Miller <[email protected]>
- ---
- drivers/net/ethernet/lantiq_xrx200.c | 21 ++++-----------------
- 1 file changed, 4 insertions(+), 17 deletions(-)
- --- a/drivers/net/ethernet/lantiq_xrx200.c
- +++ b/drivers/net/ethernet/lantiq_xrx200.c
- @@ -25,6 +25,7 @@
- #define XRX200_DMA_DATA_LEN (SZ_64K - 1)
- #define XRX200_DMA_RX 0
- #define XRX200_DMA_TX 1
- +#define XRX200_DMA_BURST_LEN 8
-
- #define XRX200_DMA_PACKET_COMPLETE 0
- #define XRX200_DMA_PACKET_IN_PROGRESS 1
- @@ -81,9 +82,6 @@ struct xrx200_priv {
- struct net_device *net_dev;
- struct device *dev;
-
- - int tx_burst_len;
- - int rx_burst_len;
- -
- __iomem void *pmac_reg;
- };
-
- @@ -367,7 +365,7 @@ static netdev_tx_t xrx200_start_xmit(str
- goto err_drop;
-
- /* dma needs to start on a burst length value aligned address */
- - byte_offset = mapping % (priv->tx_burst_len * 4);
- + byte_offset = mapping % (XRX200_DMA_BURST_LEN * 4);
-
- desc->addr = mapping - byte_offset;
- /* Make sure the address is written before we give it to HW */
- @@ -468,7 +466,8 @@ static int xrx200_dma_init(struct xrx200
- int ret = 0;
- int i;
-
- - ltq_dma_init_port(DMA_PORT_ETOP, priv->tx_burst_len, rx_burst_len);
- + ltq_dma_init_port(DMA_PORT_ETOP, XRX200_DMA_BURST_LEN,
- + XRX200_DMA_BURST_LEN);
-
- ch_rx->dma.nr = XRX200_DMA_RX;
- ch_rx->dma.dev = priv->dev;
- @@ -578,18 +577,6 @@ static int xrx200_probe(struct platform_
- if (err)
- eth_hw_addr_random(net_dev);
-
- - err = device_property_read_u32(dev, "lantiq,tx-burst-length", &priv->tx_burst_len);
- - if (err < 0) {
- - dev_err(dev, "unable to read tx-burst-length property\n");
- - return err;
- - }
- -
- - err = device_property_read_u32(dev, "lantiq,rx-burst-length", &priv->rx_burst_len);
- - if (err < 0) {
- - dev_err(dev, "unable to read rx-burst-length property\n");
- - return err;
- - }
- -
- /* bring up the dma engine and IP core */
- err = xrx200_dma_init(priv);
- if (err)
|