diff options
author | Sander Vanheule <sander@svanheule.net> | 2022-06-28 21:14:03 +0200 |
---|---|---|
committer | Sander Vanheule <sander@svanheule.net> | 2022-07-17 10:06:32 +0200 |
commit | d9516cacb087fed7716b34b1e02ce956bb6c27f1 (patch) | |
tree | 592f721170164c68e6abaa3213bf381eea040df9 /target | |
parent | ef3d0a302936e396c55ecfc080049f0c04823390 (diff) | |
download | upstream-d9516cacb087fed7716b34b1e02ce956bb6c27f1.tar.gz upstream-d9516cacb087fed7716b34b1e02ce956bb6c27f1.tar.bz2 upstream-d9516cacb087fed7716b34b1e02ce956bb6c27f1.zip |
realtek: fix egress port mask on rtl839x
The flag to enable the outgoing port mask is in CPU header bit 43, with
bit 0 being the leftmost bit of the header. This corresponds to BIT(4)
in the third 16-bit value of the header.
Correctly set AS_DPM by fixing the off-by-one error.
Fixes: 9eab76c84e31 ("realtek: Improve TX CPU-Tag usage")
Tested-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
Diffstat (limited to 'target')
-rw-r--r-- | target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c b/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c index cf6aabc614..aece1356e4 100644 --- a/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c +++ b/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c @@ -126,7 +126,7 @@ static void rtl839x_create_tx_header(struct p_hdr *h, int dest_port, int prio) h->cpu_tag[4] = BIT(dest_port) >> 16; h->cpu_tag[5] = BIT(dest_port) & 0xffff; } - h->cpu_tag[2] |= BIT(5); // Enable destination port mask use + h->cpu_tag[2] |= BIT(4); // Enable destination port mask use h->cpu_tag[2] |= BIT(8); // Enable L2 Learning // Set internal priority and AS_PRIO if (prio >= 0) |