netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 1/7] net: moxa: clear TX descriptor length bits between sends
@ 2014-01-20 11:13 Jonas Jensen
  2014-01-20 11:13 ` [PATCH v3 2/7] net: moxa: fix build_skb() memory corruption Jonas Jensen
                   ` (5 more replies)
  0 siblings, 6 replies; 9+ messages in thread
From: Jonas Jensen @ 2014-01-20 11:13 UTC (permalink / raw)
  To: netdev
  Cc: linux-arm-kernel, linux-kernel, davem, f.fainelli, bhutchings,
	Jonas Jensen

Add TX_DESC1_BUF_SIZE_MASK to bits that are cleared, before the TX buffer
length is set. Failing to do so can cause the controller to drop dead
i.e. all TX interrupts stop, resulting in complete communication failure.

Addresses https://bugzilla.kernel.org/show_bug.cgi?id=69031

Signed-off-by: Jonas Jensen <jonas.jensen@gmail.com>
---

Notes:
    Applies to next-20140120

 drivers/net/ethernet/moxa/moxart_ether.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/moxa/moxart_ether.c b/drivers/net/ethernet/moxa/moxart_ether.c
index 5020fd4..aa45607 100644
--- a/drivers/net/ethernet/moxa/moxart_ether.c
+++ b/drivers/net/ethernet/moxa/moxart_ether.c
@@ -348,7 +348,8 @@ static int moxart_mac_start_xmit(struct sk_buff *skb, struct net_device *ndev)
 
 	txdes1 = readl(desc + TX_REG_OFFSET_DESC1);
 	txdes1 |= TX_DESC1_LTS | TX_DESC1_FTS;
-	txdes1 &= ~(TX_DESC1_FIFO_COMPLETE | TX_DESC1_INTR_COMPLETE);
+	txdes1 &= ~(TX_DESC1_FIFO_COMPLETE | TX_DESC1_INTR_COMPLETE |
+		    TX_DESC1_BUF_SIZE_MASK);
 	txdes1 |= (len & TX_DESC1_BUF_SIZE_MASK);
 	writel(txdes1, desc + TX_REG_OFFSET_DESC1);
 	writel(TX_DESC0_DMA_OWN, desc + TX_REG_OFFSET_DESC0);
-- 
1.8.2.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2014-01-21 13:50 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-20 11:13 [PATCH v3 1/7] net: moxa: clear TX descriptor length bits between sends Jonas Jensen
2014-01-20 11:13 ` [PATCH v3 2/7] net: moxa: fix build_skb() memory corruption Jonas Jensen
2014-01-20 11:13 ` [PATCH v3 3/7] net: moxa: connect to PHY Jonas Jensen
     [not found]   ` <1390216399-27028-3-git-send-email-jonas.jensen-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-01-20 14:57     ` Rob Herring
2014-01-21 13:50       ` Jonas Jensen
2014-01-20 11:13 ` [PATCH v3 4/7] net: moxa: add ethtool support Jonas Jensen
2014-01-20 11:13 ` [PATCH v3 5/7] net: moxa: add IFF_LIVE_ADDR_CHANGE flag Jonas Jensen
2014-01-20 11:13 ` [PATCH v3 6/7] net: moxa: generate random address Jonas Jensen
2014-01-20 11:13 ` [PATCH v3 7/7] net: moxa: use eth_mac_addr() Jonas Jensen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).