realtek: fix RTL839x receive tag decoding
The previous fixup was incomplete, and the offsets for the
queue and crc_error cpu_tag bitfields were still wrong on
RTL839x.
Fixes: 545c6113c9
("realtek: fix RTL838x receive tag decoding")
Suggested-by: Jan Hoffmann <jan@3e8.eu>
Signed-off-by: Bjørn Mork <bjorn@mork.no>
This commit is contained in:
parent
2510a587a6
commit
2ca5602864
|
@ -282,9 +282,9 @@ bool rtl839x_decode_tag(struct p_hdr *h, struct dsa_tag *t)
|
|||
{
|
||||
/* cpu_tag[0] is reserved. Fields are off-by-one */
|
||||
t->reason = h->cpu_tag[5] & 0x1f;
|
||||
t->queue = (h->cpu_tag[3] & 0xe000) >> 13;
|
||||
t->queue = (h->cpu_tag[4] & 0xe000) >> 13;
|
||||
t->port = h->cpu_tag[1] & 0x3f;
|
||||
t->crc_error = h->cpu_tag[3] & BIT(2);
|
||||
t->crc_error = h->cpu_tag[4] & BIT(6);
|
||||
|
||||
pr_debug("Reason: %d\n", t->reason);
|
||||
if ((t->reason >= 7 && t->reason <= 13) || // NIC_RX_REASON_RMA
|
||||
|
|
Loading…
Reference in New Issue