net: mscc: Add initial Ocelot switch support
Add a driver for Microsemi Ocelot Ethernet switch support. This makes two modules: mscc_ocelot_common handles all the common features that doesn't depend on how the switch is integrated in the SoC. Currently, it handles offloading bridging to the hardware. ocelot_io.c handles register accesses. This is unfortunately needed because the register layout is packed and then depends on the number of ports available on the switch. The register definition files are automatically generated. ocelot_board handles the switch integration on the SoC and on the board. Frame injection and extraction to/from the CPU port is currently done using register accesses which is quite slow. DMA is possible but the port is not able to absorb the whole switch bandwidth. Signed-off-by:Alexandre Belloni <alexandre.belloni@bootlin.com> Reviewed-by:
Andrew Lunn <andrew@lunn.ch> Signed-off-by:
David S. Miller <davem@davemloft.net>
parent
44b801e0
-
mentioned in commit eaa34bd4
-
mentioned in commit 2dc83212
-
mentioned in commit 7fbf6795
-
mentioned in commit 3a3c65c4
-
mentioned in commit d98ba26a
-
mentioned in commit 03ae6e0f
-
mentioned in commit 1223b2b2
-
mentioned in commit 2d10984d
-
mentioned in commit 5696f798
-
mentioned in commit 2bfb0d43
-
mentioned in commit 173ca866
-
mentioned in commit e780e319
-
mentioned in commit 5152de7b
-
mentioned in commit 18d8e67d
Please register or sign in to comment