aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net
diff options
context:
space:
mode:
authorPetri Gynther <pgynther@google.com>2015-03-30 03:28:50 -0400
committerDavid S. Miller <davem@davemloft.net>2015-03-31 14:15:01 -0400
commitee7d8c2067e1bc633f4df3159698b32a9714f724 (patch)
tree4aff8c2fa7e0466473bead491c6b6cc61fee982a /drivers/net
parent3271e4f18d9a4ec9ac5568f94444dac08f29c5a0 (diff)
net: bcmgenet: add UMAC_IRQ_RXDMA_DONE and UMAC_IRQ_TXDMA_DONE
Add #define for UMAC_IRQ_RXDMA_DONE and UMAC_IRQ_TXDMA_DONE in order to simplify the code that handles Rx and Tx default queue interrupts. Signed-off-by: Petri Gynther <pgynther@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net')
-rw-r--r--drivers/net/ethernet/broadcom/genet/bcmgenet.c20
-rw-r--r--drivers/net/ethernet/broadcom/genet/bcmgenet.h4
2 files changed, 12 insertions, 12 deletions
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.c b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
index 31e14079e1d7..620021e8365a 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
@@ -966,15 +966,13 @@ static void bcmgenet_free_cb(struct enet_cb *cb)
966 966
967static inline void bcmgenet_rx_ring16_int_disable(struct bcmgenet_rx_ring *ring) 967static inline void bcmgenet_rx_ring16_int_disable(struct bcmgenet_rx_ring *ring)
968{ 968{
969 bcmgenet_intrl2_0_writel(ring->priv, 969 bcmgenet_intrl2_0_writel(ring->priv, UMAC_IRQ_RXDMA_DONE,
970 UMAC_IRQ_RXDMA_BDONE | UMAC_IRQ_RXDMA_PDONE,
971 INTRL2_CPU_MASK_SET); 970 INTRL2_CPU_MASK_SET);
972} 971}
973 972
974static inline void bcmgenet_rx_ring16_int_enable(struct bcmgenet_rx_ring *ring) 973static inline void bcmgenet_rx_ring16_int_enable(struct bcmgenet_rx_ring *ring)
975{ 974{
976 bcmgenet_intrl2_0_writel(ring->priv, 975 bcmgenet_intrl2_0_writel(ring->priv, UMAC_IRQ_RXDMA_DONE,
977 UMAC_IRQ_RXDMA_BDONE | UMAC_IRQ_RXDMA_PDONE,
978 INTRL2_CPU_MASK_CLEAR); 976 INTRL2_CPU_MASK_CLEAR);
979} 977}
980 978
@@ -994,15 +992,13 @@ static inline void bcmgenet_rx_ring_int_enable(struct bcmgenet_rx_ring *ring)
994 992
995static inline void bcmgenet_tx_ring16_int_disable(struct bcmgenet_tx_ring *ring) 993static inline void bcmgenet_tx_ring16_int_disable(struct bcmgenet_tx_ring *ring)
996{ 994{
997 bcmgenet_intrl2_0_writel(ring->priv, 995 bcmgenet_intrl2_0_writel(ring->priv, UMAC_IRQ_TXDMA_DONE,
998 UMAC_IRQ_TXDMA_BDONE | UMAC_IRQ_TXDMA_PDONE,
999 INTRL2_CPU_MASK_SET); 996 INTRL2_CPU_MASK_SET);
1000} 997}
1001 998
1002static inline void bcmgenet_tx_ring16_int_enable(struct bcmgenet_tx_ring *ring) 999static inline void bcmgenet_tx_ring16_int_enable(struct bcmgenet_tx_ring *ring)
1003{ 1000{
1004 bcmgenet_intrl2_0_writel(ring->priv, 1001 bcmgenet_intrl2_0_writel(ring->priv, UMAC_IRQ_TXDMA_DONE,
1005 UMAC_IRQ_TXDMA_BDONE | UMAC_IRQ_TXDMA_PDONE,
1006 INTRL2_CPU_MASK_CLEAR); 1002 INTRL2_CPU_MASK_CLEAR);
1007} 1003}
1008 1004
@@ -1727,10 +1723,10 @@ static int init_umac(struct bcmgenet_priv *priv)
1727 bcmgenet_intr_disable(priv); 1723 bcmgenet_intr_disable(priv);
1728 1724
1729 /* Enable Rx default queue 16 interrupts */ 1725 /* Enable Rx default queue 16 interrupts */
1730 int0_enable |= (UMAC_IRQ_RXDMA_BDONE | UMAC_IRQ_RXDMA_PDONE); 1726 int0_enable |= UMAC_IRQ_RXDMA_DONE;
1731 1727
1732 /* Enable Tx default queue 16 interrupts */ 1728 /* Enable Tx default queue 16 interrupts */
1733 int0_enable |= (UMAC_IRQ_TXDMA_BDONE | UMAC_IRQ_TXDMA_PDONE); 1729 int0_enable |= UMAC_IRQ_TXDMA_DONE;
1734 1730
1735 /* Monitor cable plug/unplugged event for internal PHY */ 1731 /* Monitor cable plug/unplugged event for internal PHY */
1736 if (phy_is_internal(priv->phydev)) { 1732 if (phy_is_internal(priv->phydev)) {
@@ -2353,7 +2349,7 @@ static irqreturn_t bcmgenet_isr0(int irq, void *dev_id)
2353 netif_dbg(priv, intr, priv->dev, 2349 netif_dbg(priv, intr, priv->dev,
2354 "IRQ=0x%x\n", priv->irq0_stat); 2350 "IRQ=0x%x\n", priv->irq0_stat);
2355 2351
2356 if (priv->irq0_stat & (UMAC_IRQ_RXDMA_BDONE | UMAC_IRQ_RXDMA_PDONE)) { 2352 if (priv->irq0_stat & UMAC_IRQ_RXDMA_DONE) {
2357 rx_ring = &priv->rx_rings[DESC_INDEX]; 2353 rx_ring = &priv->rx_rings[DESC_INDEX];
2358 2354
2359 if (likely(napi_schedule_prep(&rx_ring->napi))) { 2355 if (likely(napi_schedule_prep(&rx_ring->napi))) {
@@ -2362,7 +2358,7 @@ static irqreturn_t bcmgenet_isr0(int irq, void *dev_id)
2362 } 2358 }
2363 } 2359 }
2364 2360
2365 if (priv->irq0_stat & (UMAC_IRQ_TXDMA_BDONE | UMAC_IRQ_TXDMA_PDONE)) { 2361 if (priv->irq0_stat & UMAC_IRQ_TXDMA_DONE) {
2366 tx_ring = &priv->tx_rings[DESC_INDEX]; 2362 tx_ring = &priv->tx_rings[DESC_INDEX];
2367 2363
2368 if (likely(napi_schedule_prep(&tx_ring->napi))) { 2364 if (likely(napi_schedule_prep(&tx_ring->napi))) {
diff --git a/drivers/net/ethernet/broadcom/genet/bcmgenet.h b/drivers/net/ethernet/broadcom/genet/bcmgenet.h
index a834da1dfe4c..f86d635f8a6b 100644
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.h
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.h
@@ -303,9 +303,13 @@ struct bcmgenet_mib_counters {
303#define UMAC_IRQ_RXDMA_MBDONE (1 << 13) 303#define UMAC_IRQ_RXDMA_MBDONE (1 << 13)
304#define UMAC_IRQ_RXDMA_PDONE (1 << 14) 304#define UMAC_IRQ_RXDMA_PDONE (1 << 14)
305#define UMAC_IRQ_RXDMA_BDONE (1 << 15) 305#define UMAC_IRQ_RXDMA_BDONE (1 << 15)
306#define UMAC_IRQ_RXDMA_DONE (UMAC_IRQ_RXDMA_PDONE | \
307 UMAC_IRQ_RXDMA_BDONE)
306#define UMAC_IRQ_TXDMA_MBDONE (1 << 16) 308#define UMAC_IRQ_TXDMA_MBDONE (1 << 16)
307#define UMAC_IRQ_TXDMA_PDONE (1 << 17) 309#define UMAC_IRQ_TXDMA_PDONE (1 << 17)
308#define UMAC_IRQ_TXDMA_BDONE (1 << 18) 310#define UMAC_IRQ_TXDMA_BDONE (1 << 18)
311#define UMAC_IRQ_TXDMA_DONE (UMAC_IRQ_TXDMA_PDONE | \
312 UMAC_IRQ_TXDMA_BDONE)
309/* Only valid for GENETv3+ */ 313/* Only valid for GENETv3+ */
310#define UMAC_IRQ_MDIO_DONE (1 << 23) 314#define UMAC_IRQ_MDIO_DONE (1 << 23)
311#define UMAC_IRQ_MDIO_ERROR (1 << 24) 315#define UMAC_IRQ_MDIO_ERROR (1 << 24)