Florian Fainelli 3dc6475c0c bcm63xx_enet: add support Broadcom BCM6345 Ethernet
This patch adds support for the Broadcom BCM6345 SoC Ethernet. BCM6345
has a slightly different and older DMA engine which requires the
following modifications:

- the width of the DMA channels on BCM6345 is 64 bytes vs 16 bytes,
  which means that the helpers enet_dma{c,s} need to account for this
  channel width and we can no longer use macros

- BCM6345 DMA engine does not have any internal SRAM for transfering
  buffers

- BCM6345 buffer allocation and flow control is not per-channel but
  global (done in RSET_ENETDMA)

- the DMA engine bits are right-shifted by 3 compared to other DMA
  generations

- the DMA enable/interrupt masks are a little different (we need to
  enabled more bits for 6345)

- some register have the same meaning but are offsetted in the ENET_DMAC
  space so a lookup table is required to return the proper offset

The MAC itself is identical and requires no modifications to work.

Signed-off-by: Florian Fainelli <florian@openwrt.org>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-06-13 17:22:08 -07:00
..
2013-05-23 09:27:08 -07:00
2013-05-30 18:27:24 -07:00
2013-04-26 22:30:25 +02:00
2013-05-09 09:59:16 -07:00
2013-05-23 18:24:10 -07:00
2013-06-01 19:53:41 +09:00
2013-05-06 13:07:33 +02:00
2013-05-06 14:59:13 -07:00
2013-06-01 19:53:41 +09:00
2013-05-23 09:26:32 -07:00
2013-05-15 10:58:22 -07:00
2013-05-07 14:04:56 -07:00
2013-05-07 14:02:00 -07:00
2013-05-02 14:02:32 -07:00
2013-05-04 12:31:18 -07:00
2013-05-04 12:31:18 -07:00