提交 8028837d 编写于 作者: R Richard Cochran 提交者: David S. Miller

dp83640: increase receive time stamp buffer size

The dp83640 buffers receive time stamps from special PHY status frames,
matching them to received PTP packets in a work queue. Because the timeout
for orphaned time stamps is so long and the buffer is so small, the driver
can drop time stamps under moderate PTP traffic.

This commit fixes the issue by decreasing the timeout to (at least) one
timer tick and increasing the buffer size.
Signed-off-by: NRichard Cochran <richard.cochran@omicron.at>
Cc: <stable@kernel.org>
Signed-off-by: NDavid S. Miller <davem@davemloft.net>
上级 cbc05660
...@@ -34,8 +34,7 @@ ...@@ -34,8 +34,7 @@
#define PAGESEL 0x13 #define PAGESEL 0x13
#define LAYER4 0x02 #define LAYER4 0x02
#define LAYER2 0x01 #define LAYER2 0x01
#define MAX_RXTS 4 #define MAX_RXTS 64
#define MAX_TXTS 4
#define N_EXT_TS 1 #define N_EXT_TS 1
#define PSF_PTPVER 2 #define PSF_PTPVER 2
#define PSF_EVNT 0x4000 #define PSF_EVNT 0x4000
...@@ -218,7 +217,7 @@ static void phy2rxts(struct phy_rxts *p, struct rxts *rxts) ...@@ -218,7 +217,7 @@ static void phy2rxts(struct phy_rxts *p, struct rxts *rxts)
rxts->seqid = p->seqid; rxts->seqid = p->seqid;
rxts->msgtype = (p->msgtype >> 12) & 0xf; rxts->msgtype = (p->msgtype >> 12) & 0xf;
rxts->hash = p->msgtype & 0x0fff; rxts->hash = p->msgtype & 0x0fff;
rxts->tmo = jiffies + HZ; rxts->tmo = jiffies + 2;
} }
static u64 phy2txts(struct phy_txts *p) static u64 phy2txts(struct phy_txts *p)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册