summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/net/ethernet/cadence/macb.c44
-rw-r--r--drivers/net/ethernet/cadence/macb.h12
2 files changed, 28 insertions, 28 deletions
diff --git a/drivers/net/ethernet/cadence/macb.c b/drivers/net/ethernet/cadence/macb.c
index ad76b8e35a00..e668d82b069c 100644
--- a/drivers/net/ethernet/cadence/macb.c
+++ b/drivers/net/ethernet/cadence/macb.c
@@ -533,7 +533,7 @@ static void macb_tx_error_task(struct work_struct *work)
u32 ctrl;
desc = macb_tx_desc(queue, tail);
- ctrl = desc->ctrl;
+ ctrl = le32_to_cpu(desc->ctrl);
tx_skb = macb_tx_skb(queue, tail);
skb = tx_skb->skb;
@@ -565,7 +565,7 @@ static void macb_tx_error_task(struct work_struct *work)
netdev_err(bp->dev,
"BUG: TX buffers exhausted mid-frame\n");
- desc->ctrl = ctrl | MACB_BIT(TX_USED);
+ desc->ctrl = cpu_to_le32(ctrl | MACB_BIT(TX_USED));
}
macb_tx_unmap(bp, tx_skb);
@@ -574,7 +574,7 @@ static void macb_tx_error_task(struct work_struct *work)
/* Set end of TX queue */
desc = macb_tx_desc(queue, 0);
desc->addr = 0;
- desc->ctrl = MACB_BIT(TX_USED);
+ desc->ctrl = cpu_to_le32(MACB_BIT(TX_USED));
/* Make descriptor updates visible to hardware */
wmb();
@@ -625,7 +625,7 @@ static void macb_tx_interrupt(struct macb_queue *queue)
/* Make hw descriptor updates visible to CPU */
rmb();
- ctrl = desc->ctrl;
+ ctrl = le32_to_cpu(desc->ctrl);
/* TX_USED bit is only set by hardware on the very first buffer
* descriptor of the transmitted frame.
@@ -700,7 +700,7 @@ static void gem_rx_refill(struct macb *bp)
if (entry == RX_RING_SIZE - 1)
paddr |= MACB_BIT(RX_WRAP);
- bp->rx_ring[entry].addr = paddr;
+ bp->rx_ring[entry].addr = cpu_to_le32(paddr);
bp->rx_ring[entry].ctrl = 0;
/* properly align Ethernet header */
@@ -723,7 +723,7 @@ static void discard_partial_frame(struct macb *bp, unsigned int begin,
for (frag = begin; frag != end; frag++) {
struct macb_dma_desc *desc = macb_rx_desc(bp, frag);
- desc->addr &= ~MACB_BIT(RX_USED);
+ desc->addr &= cpu_to_le32(~MACB_BIT(RX_USED));
}
/* Make descriptor updates visible to hardware */
@@ -753,8 +753,8 @@ static int gem_rx(struct macb *bp, int budget)
/* Make hw descriptor updates visible to CPU */
rmb();
- addr = desc->addr;
- ctrl = desc->ctrl;
+ addr = le32_to_cpu(desc->addr);
+ ctrl = le32_to_cpu(desc->ctrl);
if (!(addr & MACB_BIT(RX_USED)))
break;
@@ -823,7 +823,7 @@ static int macb_rx_frame(struct macb *bp, unsigned int first_frag,
struct macb_dma_desc *desc;
desc = macb_rx_desc(bp, last_frag);
- len = MACB_BFEXT(RX_FRMLEN, desc->ctrl);
+ len = MACB_BFEXT(RX_FRMLEN, le32_to_cpu(desc->ctrl));
netdev_vdbg(bp->dev, "macb_rx_frame frags %u - %u (len %u)\n",
macb_rx_ring_wrap(first_frag),
@@ -843,7 +843,7 @@ static int macb_rx_frame(struct macb *bp, unsigned int first_frag,
bp->stats.rx_dropped++;
for (frag = first_frag; ; frag++) {
desc = macb_rx_desc(bp, frag);
- desc->addr &= ~MACB_BIT(RX_USED);
+ desc->addr &= cpu_to_le32(~MACB_BIT(RX_USED));
if (frag == last_frag)
break;
}
@@ -904,8 +904,8 @@ static int macb_rx(struct macb *bp, int budget)
/* Make hw descriptor updates visible to CPU */
rmb();
- addr = desc->addr;
- ctrl = desc->ctrl;
+ addr = le32_to_cpu(desc->addr);
+ ctrl = le32_to_cpu(desc->ctrl);
if (!(addr & MACB_BIT(RX_USED)))
break;
@@ -1176,7 +1176,7 @@ static unsigned int macb_tx_map(struct macb *bp,
entry = macb_tx_ring_wrap(i);
ctrl = MACB_BIT(TX_USED);
desc = &queue->tx_ring[entry];
- desc->ctrl = ctrl;
+ desc->ctrl = cpu_to_le32(ctrl);
do {
i--;
@@ -1193,12 +1193,12 @@ static unsigned int macb_tx_map(struct macb *bp,
ctrl |= MACB_BIT(TX_WRAP);
/* Set TX buffer descriptor */
- desc->addr = tx_skb->mapping;
+ desc->addr = cpu_to_le32(tx_skb->mapping);
/* desc->addr must be visible to hardware before clearing
* 'TX_USED' bit in desc->ctrl.
*/
wmb();
- desc->ctrl = ctrl;
+ desc->ctrl = cpu_to_le32(ctrl);
} while (i != queue->tx_head);
queue->tx_head = tx_head;
@@ -1315,7 +1315,7 @@ static void gem_free_rx_buffers(struct macb *bp)
continue;
desc = &bp->rx_ring[i];
- addr = MACB_BF(RX_WADDR, MACB_BFEXT(RX_WADDR, desc->addr));
+ addr = MACB_BF(RX_WADDR, MACB_BFEXT(RX_WADDR, le32_to_cpu(desc->addr)));
dma_unmap_single(&bp->pdev->dev, addr, bp->rx_buffer_size,
DMA_FROM_DEVICE);
dev_kfree_skb_any(skb);
@@ -1442,9 +1442,9 @@ static void gem_init_rings(struct macb *bp)
for (q = 0, queue = bp->queues; q < bp->num_queues; ++q, ++queue) {
for (i = 0; i < TX_RING_SIZE; i++) {
queue->tx_ring[i].addr = 0;
- queue->tx_ring[i].ctrl = MACB_BIT(TX_USED);
+ queue->tx_ring[i].ctrl = cpu_to_le32(MACB_BIT(TX_USED));
}
- queue->tx_ring[TX_RING_SIZE - 1].ctrl |= MACB_BIT(TX_WRAP);
+ queue->tx_ring[TX_RING_SIZE - 1].ctrl |= cpu_to_le32(MACB_BIT(TX_WRAP));
queue->tx_head = 0;
queue->tx_tail = 0;
}
@@ -1462,19 +1462,19 @@ static void macb_init_rings(struct macb *bp)
addr = bp->rx_buffers_dma;
for (i = 0; i < RX_RING_SIZE; i++) {
- bp->rx_ring[i].addr = addr;
+ bp->rx_ring[i].addr = cpu_to_le32(addr);
bp->rx_ring[i].ctrl = 0;
addr += bp->rx_buffer_size;
}
- bp->rx_ring[RX_RING_SIZE - 1].addr |= MACB_BIT(RX_WRAP);
+ bp->rx_ring[RX_RING_SIZE - 1].addr |= cpu_to_le32(MACB_BIT(RX_WRAP));
for (i = 0; i < TX_RING_SIZE; i++) {
bp->queues[0].tx_ring[i].addr = 0;
- bp->queues[0].tx_ring[i].ctrl = MACB_BIT(TX_USED);
+ bp->queues[0].tx_ring[i].ctrl = cpu_to_le32(MACB_BIT(TX_USED));
bp->queues[0].tx_head = 0;
bp->queues[0].tx_tail = 0;
}
- bp->queues[0].tx_ring[TX_RING_SIZE - 1].ctrl |= MACB_BIT(TX_WRAP);
+ bp->queues[0].tx_ring[TX_RING_SIZE - 1].ctrl |= cpu_to_le32(MACB_BIT(TX_WRAP));
bp->rx_tail = 0;
}
diff --git a/drivers/net/ethernet/cadence/macb.h b/drivers/net/ethernet/cadence/macb.h
index 31dc080f2437..22d66a73c781 100644
--- a/drivers/net/ethernet/cadence/macb.h
+++ b/drivers/net/ethernet/cadence/macb.h
@@ -423,17 +423,17 @@
/* Register access macros */
#define macb_readl(port,reg) \
- __raw_readl((port)->regs + MACB_##reg)
+ readl_relaxed((port)->regs + MACB_##reg)
#define macb_writel(port,reg,value) \
- __raw_writel((value), (port)->regs + MACB_##reg)
+ writel_relaxed((value), (port)->regs + MACB_##reg)
#define gem_readl(port, reg) \
- __raw_readl((port)->regs + GEM_##reg)
+ readl_relaxed((port)->regs + GEM_##reg)
#define gem_writel(port, reg, value) \
- __raw_writel((value), (port)->regs + GEM_##reg)
+ writel_relaxed((value), (port)->regs + GEM_##reg)
#define queue_readl(queue, reg) \
- __raw_readl((queue)->bp->regs + (queue)->reg)
+ readl_relaxed((queue)->bp->regs + (queue)->reg)
#define queue_writel(queue, reg, value) \
- __raw_writel((value), (queue)->bp->regs + (queue)->reg)
+ writel_relaxed((value), (queue)->bp->regs + (queue)->reg)
/* Conditional GEM/MACB macros. These perform the operation to the correct
* register dependent on whether the device is a GEM or a MACB. For registers