openwrt/target/linux
Sander Vanheule f8a44c22d4 realtek: correct egress frame priority assignment
Priority values passed to the egress (TX) frame header initialiser are
invalid when smaller than 0, and should not be assigned to the frame.
Queue assignment is then left to the switch core logic.

Current code for RTL83xx forces the passed priority value to be
positive, by always masking it to the lower bits, resulting in the
priority always being set and enabled. RTL93xx code doesn't even check
the value and unconditionally assigns the (32 bit) value to the (5 bit)
QID field without masking.

Fix priority assignment by only setting the AS_QID/AS_PRI flag when a
valid value is passed, and properly mask the value to not overflow the
QID/PRI field.

For RTL839x, also assign the priority to the right part of the frame
header. Counting from the leftmost bit, AS_PRI and PRI are in bits 36
and 37-39. The means they should be assigned to the third 16 bit value,
containing bits 32-47.

Tested-by: Luiz Angelo Daros de Luca <luizluca@gmail.com>
Signed-off-by: Sander Vanheule <sander@svanheule.net>
(cherry picked from commit 0b35a08a05)
2022-07-21 20:59:51 +02:00
..
apm821xx kernel: bump 5.10 to 5.10.127 2022-07-01 20:28:35 +02:00
archs38 generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
armvirt generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
at91 kernel: bump 5.10 to 5.10.130 2022-07-19 21:31:04 +02:00
ath25 kernel: Refresh patches for all targets 2022-07-03 18:54:04 +02:00
ath79 kernel: Refresh kernel patches 2022-07-19 21:36:44 +02:00
bcm27xx kernel: Refresh kernel patches 2022-07-19 21:36:44 +02:00
bcm47xx generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
bcm53xx kernel: Refresh kernel patches 2022-07-19 21:36:44 +02:00
bcm63xx kernel: backport LEDs driver for BCMBCA devices 2022-07-18 08:13:50 +02:00
bcm4908 kernel: bump 5.10 to 5.10.129 2022-07-19 21:31:04 +02:00
bmips bmips: dgnd3700v2: fix network config 2022-06-07 21:36:58 +02:00
gemini generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
generic kernel: bump 5.10 to 5.10.130 2022-07-19 21:31:04 +02:00
imx
ipq40xx kernel: Refresh patches for all targets 2022-07-03 18:54:04 +02:00
ipq806x generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
kirkwood generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
lantiq kernel: bump 5.10 to 5.10.122 2022-06-27 22:34:07 +02:00
layerscape generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
malta generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
mediatek kernel: Refresh kernel patches 2022-07-19 21:36:44 +02:00
mpc85xx kernel: bump 5.10 to 5.10.122 2022-06-27 22:34:07 +02:00
mvebu mvebu: cortexa72: fix ImageBuilder for IEI Puzzle devices 2022-07-04 19:58:13 +01:00
mxs generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
octeon generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
octeontx generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
omap generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
oxnas kernel: bump 5.10 to 5.10.121 2022-06-27 22:34:07 +02:00
pistachio kernel: Refresh patches for all targets 2022-07-03 18:54:04 +02:00
qoriq qoriq: enable Book-E Watchdog Timer 2022-07-01 16:42:32 +03:00
ramips ramips: add support for Netgear WAX202 2022-07-21 16:58:18 +02:00
realtek realtek: correct egress frame priority assignment 2022-07-21 20:59:51 +02:00
rockchip rockchip: reliably distribute net interrupts 2022-07-15 07:05:16 +02:00
sunxi generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
tegra generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
uml generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
x86 x86: 64: Add kmod-igc to default packages 2022-06-29 22:40:04 +02:00
zynq generic: enable CRYPTO_LIB_BLAKE2S[_X86|_ARM] 2022-06-27 22:34:07 +02:00
Makefile