Re: [Regression, bisected] Transmit failure in et131x.

From: Alan Cox
Date: Mon Oct 12 2009 - 06:36:31 EST


> Thanks a lot for your help. Alas, this does not resolve the issue.
> Using tcpdump indicates that receive continues to work while transmit
> fails.
>
> I was using gigabit, but the problem persists when I run at 100mbit.
> The MTU setting remains at the default 1500 bytes.

et131x: Fix the add_10bit macro

From: Alan Cox <alan@xxxxxxxxxxxxxxx>

Duh.. we need to preserve the wrap bit when adding.

Signed-off-by: Alan Cox <alan@xxxxxxxxxxxxxxx>
---

drivers/staging/et131x/et1310_address_map.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)


diff --git a/drivers/staging/et131x/et1310_address_map.h b/drivers/staging/et131x/et1310_address_map.h
index 2273926..d71e04a 100644
--- a/drivers/staging/et131x/et1310_address_map.h
+++ b/drivers/staging/et131x/et1310_address_map.h
@@ -223,7 +223,7 @@ typedef union _TXDMA_PR_NUM_DES_t {

extern inline void add_10bit(u32 *v, int n)
{
- *v = INDEX10(*v + n);
+ *v = INDEX10(*v + n) | (*v & ET_DMA10_WRAP);
}

/*
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/