net: ethernet: stmmac: GMAC4.xx: Fix TX descriptor preparation

On GMAC4.xx each descriptor contains 2 buffers of 16KB (each).
Initially, those 2 buffers was filled in dwmac4_rd_prepare_tx_desc but
it is actually not needed. Indeed, stmmac driver supports frame up to
9000 bytes (jumbo). So only one buffer is needed.

Reported-by: Dan Carpenter <dan.carpenter@oracle.com>
Signed-off-by: Alexandre TORGUE <alexandre.torgue@st.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Alexandre TORGUE 2016-04-08 11:18:03 +02:00 committed by David S. Miller
parent fbf405e80c
commit 18b46810eb
1 changed files with 1 additions and 8 deletions

View File

@ -254,14 +254,7 @@ static void dwmac4_rd_prepare_tx_desc(struct dma_desc *p, int is_fs, int len,
{
unsigned int tdes3 = p->des3;
if (unlikely(len > BUF_SIZE_16KiB)) {
p->des2 |= (((len - BUF_SIZE_16KiB) <<
TDES2_BUFFER2_SIZE_MASK_SHIFT)
& TDES2_BUFFER2_SIZE_MASK)
| (BUF_SIZE_16KiB & TDES2_BUFFER1_SIZE_MASK);
} else {
p->des2 |= (len & TDES2_BUFFER1_SIZE_MASK);
}
p->des2 |= (len & TDES2_BUFFER1_SIZE_MASK);
if (is_fs)
tdes3 |= TDES3_FIRST_DESCRIPTOR;