ramips: Fix too small rx buffer
authorJohn Crispin <john@openwrt.org>
Mon, 5 Oct 2015 10:26:28 +0000 (10:26 +0000)
committerJohn Crispin <john@openwrt.org>
Mon, 5 Oct 2015 10:26:28 +0000 (10:26 +0000)
commit5d9ce08ce4ef3a53b2f623255df891a2c1551f7a
treeb58c373dad9e9d827ebbb9cdb25d7869a62c9ef1
parent1dc09235d9196d5929210a7ecfe8a12ce0d097ca
ramips: Fix too small rx buffer

The driver assumes that the maximum received buffer for non-jumbo frames is
1536 bytes. But the allocation of the rx fragment doesn't reflect that. It
currently allocates fragments which will only be large enough to be used as
rx buffer with the size of 1534 bytes. This is problematic because the GMAC
will now try to write to 2 bytes which don't belong to its receive buffer
when a large enough ethernet frame is received.

This may already be a problem on existing chips but will at least become a
problem when the 1536 byte rx modus is enabled on MT7621a. It is required
on this SoC to receive ethernet frames which use their full 1500 bytes MTU
and a VLAN header next to the switch VLAN tag.

Signed-off-by: Sven Eckelmann <sven@open-mesh.com>
SVN-Revision: 47116
target/linux/ramips/files/drivers/net/ethernet/ralink/ralink_soc_eth.c