Skip to content

Commit

Permalink
ftgmac100: Open code remaining register writes
Browse files Browse the repository at this point in the history
The helpers just take space but don't provide much value. Simple
one line comments are more explanatory.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
  • Loading branch information
Benjamin Herrenschmidt authored and David S. Miller committed Apr 12, 2017
1 parent ba1b123 commit 8eecf7c
Showing 1 changed file with 20 additions and 33 deletions.
53 changes: 20 additions & 33 deletions drivers/net/ethernet/faraday/ftgmac100.c
Original file line number Diff line number Diff line change
Expand Up @@ -95,29 +95,6 @@ struct ftgmac100 {
bool is_aspeed;
};

static void ftgmac100_set_rx_ring_base(struct ftgmac100 *priv, dma_addr_t addr)
{
iowrite32(addr, priv->base + FTGMAC100_OFFSET_RXR_BADR);
}

static void ftgmac100_set_rx_buffer_size(struct ftgmac100 *priv,
unsigned int size)
{
size = FTGMAC100_RBSR_SIZE(size);
iowrite32(size, priv->base + FTGMAC100_OFFSET_RBSR);
}

static void ftgmac100_set_normal_prio_tx_ring_base(struct ftgmac100 *priv,
dma_addr_t addr)
{
iowrite32(addr, priv->base + FTGMAC100_OFFSET_NPTXR_BADR);
}

static void ftgmac100_txdma_normal_prio_start_polling(struct ftgmac100 *priv)
{
iowrite32(1, priv->base + FTGMAC100_OFFSET_NPTXPD);
}

static int ftgmac100_reset_mac(struct ftgmac100 *priv, u32 maccr)
{
struct net_device *netdev = priv->netdev;
Expand Down Expand Up @@ -235,18 +212,27 @@ static int ftgmac100_set_mac_addr(struct net_device *dev, void *p)

static void ftgmac100_init_hw(struct ftgmac100 *priv)
{
/* setup ring buffer base registers */
ftgmac100_set_rx_ring_base(priv,
priv->descs_dma_addr +
offsetof(struct ftgmac100_descs, rxdes));
ftgmac100_set_normal_prio_tx_ring_base(priv,
priv->descs_dma_addr +
offsetof(struct ftgmac100_descs, txdes));

ftgmac100_set_rx_buffer_size(priv, RX_BUF_SIZE);

iowrite32(FTGMAC100_APTC_RXPOLL_CNT(1), priv->base + FTGMAC100_OFFSET_APTC);
/* Setup RX ring buffer base */
iowrite32(priv->descs_dma_addr +
offsetof(struct ftgmac100_descs, rxdes),
priv->base + FTGMAC100_OFFSET_RXR_BADR);

/* Setup TX ring buffer base */
iowrite32(priv->descs_dma_addr +
offsetof(struct ftgmac100_descs, txdes),
priv->base + FTGMAC100_OFFSET_NPTXR_BADR);

/* Configure RX buffer size */
iowrite32(FTGMAC100_RBSR_SIZE(RX_BUF_SIZE),
priv->base + FTGMAC100_OFFSET_RBSR);

/* Set RX descriptor autopoll */
iowrite32(FTGMAC100_APTC_RXPOLL_CNT(1),
priv->base + FTGMAC100_OFFSET_APTC);

/* Write MAC address */
ftgmac100_write_mac_addr(priv, priv->netdev->dev_addr);
}

Expand Down Expand Up @@ -706,7 +692,8 @@ static int ftgmac100_hard_start_xmit(struct sk_buff *skb,
netif_wake_queue(netdev);
}

ftgmac100_txdma_normal_prio_start_polling(priv);
/* Poke transmitter to read the updated TX descriptors */
iowrite32(1, priv->base + FTGMAC100_OFFSET_NPTXPD);

return NETDEV_TX_OK;

Expand Down

0 comments on commit 8eecf7c

Please sign in to comment.