ar71xx: allow to use large ethernet frames on AR934x SoCs
authorGabor Juhos <juhosg@openwrt.org>
Fri, 20 Dec 2013 11:41:23 +0000 (11:41 +0000)
committerGabor Juhos <juhosg@openwrt.org>
Fri, 20 Dec 2013 11:41:23 +0000 (11:41 +0000)
The hardware supports large ethernet frames. Override
the maximum frame length and packet lenght mask in the
platform data to allow to use large MTU on the ethernet
interfaces.

Limit the feature to AR934x SoCs for now. It should work
on some other SoCs as well, but those has not been tested
yet.

Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
SVN-Revision: 39149

target/linux/ar71xx/files/arch/mips/ath79/dev-eth.c

index 8b54d0c817fb887aa22e4e27900aabd6cf70ece7..da67478fe68dcf7ee83c51d21f70769a8746fa3b 100644 (file)
@@ -20,6 +20,7 @@
 #include <linux/platform_device.h>
 #include <linux/serial_8250.h>
 #include <linux/clk.h>
+#include <linux/sizes.h>
 
 #include <asm/mach-ath79/ath79.h>
 #include <asm/mach-ath79/ar71xx_regs.h>
@@ -958,6 +959,9 @@ void __init ath79_register_eth(unsigned int id)
                pdata->has_gbit = 1;
                pdata->is_ar724x = 1;
 
+               pdata->max_frame_len = SZ_16K - 1;
+               pdata->desc_pktlen_mask = SZ_16K - 1;
+
                if (!pdata->fifo_cfg1)
                        pdata->fifo_cfg1 = 0x0010ffff;
                if (!pdata->fifo_cfg2)