Tags: tabrisnet/BPI-Router-Linux
Tags
[RSS/LRO coverletter] Add RSS and LRO support This series is currently only for discussion to get the upported SDK driver changes in a good shape. To use it some other parts are still missing like USXGMII PCS support on mt7988. patches are upported from mtk SDK: - https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk-openwrt-feeds/+/refs/heads/master/master/files/target/linux/mediatek/patches-6.12/999-eth-08-mtk_eth_soc-add-register-definitions-for-rss-lro-reg.patch - https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk-openwrt-feeds/+/refs/heads/master/master/files/target/linux/mediatek/patches-6.12/999-eth-09-mtk_eth_soc-add-rss-support.patch - https://git01.mediatek.com/plugins/gitiles/openwrt/feeds/mtk-openwrt-feeds/+/refs/heads/master/master/files/target/linux/mediatek/patches-6.12/999-eth-10-mtk_eth_soc-add-hw-lro-support.patch RSS / LRO HW-acceleration for ending traffic. For routed traffic PPE is needed and hw offloading in nftables. Bridged traffic may need additional changes (openwrt use bridger utility). RSS (Receive Side Scaling) using 4 additional IRQ for spreading load cat /proc/interrupts | grep ethernet echo 1 > /proc/irq/105/smp_affinity echo 2 > /proc/irq/106/smp_affinity echo 4 > /proc/irq/107/smp_affinity echo 8 > /proc/irq/108/smp_affinity moving tx frame-engine irq to different cpu (here 3rd) echo 4 > /proc/irq/103/smp_affinity disable RPS (Receive Packet Steering) for all macs: echo 0 > /sys/devices/platform/soc/15100000.ethernet/net/eth0/queues/rx-0/rps_cpus pay attention on iperf-version (iperf 3.17 is ok, 3.12 is not) traffic must be created using multiple streams so that it can be splitted, so use multithreaded iperf3 on R4: bin/iperf3 -s on the other side: iperf3 -c 192.168.1.1 -i 1 -P 4 you should reach ~9.3 GBit/s and see spreading load over CPU cores root@bpi-r4-phy-8G:~# cat /proc/interrupts | grep eth 103: 20 198366 0 0 GICv3 229 Level 15100000.ethernet 105: 3611 0 0 0 GICv3 221 Level 15100000.ethernet, 15100000.ethernet 106: 2 6842 0 0 GICv3 222 Level 15100000.ethernet, 15100000.ethernet 107: 4 0 27643 0 GICv3 223 Level 15100000.ethernet, 15100000.ethernet 108: 3 0 0 27925 GICv3 224 Level 15100000.ethernet, 15100000.ethernet using the iperf3 from debian bookworm (3.12) results in only 6.7GBit/s, so newer version is needed (not tested yet in trixie). LRO(Large Receive Offload) Add HW LRO RX rule: ethtool -N [interface] flow-type tcp4 dst-ip [IP] action 0 loc [0/1] Delete HW LRO RX rule: ethtool -N [interface] delete [0/1] Enable/Disable HW LRO rule: ethtool -K [interface] lro [on | off] Show the current offload features: ethtool -k [interface] example: ethtool -N eth2 flow-type tcp4 dst-ip 192.168.1.1 action 0 loc 0 ethtool -K eth2 lro on ethtool -k eth2 using iperf(2) instead of iperf3 to reach full traffic! verify with propritary debugfs (not part of this series) Enable HW LRO rings echo 4 1 > /proc/mtketh/hw_lro_auto_tlb Enable HW LRO statistics echo 5 1 > /proc/mtketh/hw_lro_auto_tlb cat /proc/mtketh/hw_lro_stats
net: dsa: mxl: get mxl switch working import driver changes from mtk-sdk with some cleanup
net: phy: mediatek: 2p5g: add missing priv
dts: r4lite: make emmc work
Merge tag 'v6.12.51' into 6.12-main This is the 6.12.51 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmjjiUoACgkQONu9yGCS # aT7qiA/+MTr3selqXRt/Nbl2CjFnc0aEmAufJEF+2BLJ+c5/z1PyB9I3F4kaDZDI # mz9Um0RlZrK4NnGks6kipsO2uFrX0LJgElenKZDwP1vR88BXVx2MdDQygAXPiNpI # LPJdY3yz0195v6vpf9AHUSK2x50XY40gTBLDb1Whv/Tus1rA3POQcHa7nMOv3G5e # Z5fdKZic826i4uByXMenP/jhJ3QL6wfPZ6vX/CpOFrboKw4PLKcVNnZuvQZqnQmm # NeIe+4HtEFZna2KJTBsPhU/oYy7MatBVVcyCzuQJCGAb6wFUg8rEQV17yJTrobH+ # xjm2QLasqt4JfJajVxJ43qqYyNXORBHJUcQa7zDQE6A5LBZ4JlVuOdP4xYmIaMM7 # Vv3uGSMBh6pnTh2MV2lmCejsKGzPXJ/zcBWmP+dSbkkfnFJEUBWZkpgxOkKLydmm # N2LhAMkaiQBxw80xswQm/oU63th2KXYmk/mpHWfTR2hZcgZ3V4Uw7UluzL69mvPY # KwOIEAJ5r1kCm8yWaWDjdR9bN63E/408NAy2tpAkgAHWyxhLwCQkGV/BWHrpC39e # pjQDg0oTqe6Emhct7uXzxZ7NH15nwcS5uAIUrzcZw3HTf8/X90rtdkjbRAL6oi1R # loc+P8ZeTXDCv0uE6f0T2SaYFpqAiX2jgJ8FuwDRHCkDl1eOLpA= # =KoWw # -----END PGP SIGNATURE----- # gpg: Signature made Mon Oct 6 11:18:02 2025 CEST # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key
Merge tag 'v6.6.110' into 6.6-main This is the 6.6.110 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmjjiREACgkQONu9yGCS # aT5wHhAAlK8vHrIN+TUJIvk7zTx/ueg7yQIxXJGtrsgFX3pJPFPNMxPoshFjB+Ta # pv2/c+Qx5rFmlnCH9hWM62+03pWdDgvuTNFnmDVK8RvZGXtgGIywHxX1vXIOdoHi # eGtwFhosb5clK4pjp4ZhMRa3TYbMt1PJJ+Dg1s1Gqr+CGxObob1RfGvm6j73+lCx # diVFDP02swGmH3bRBm/u0dfrs62IBXw/x7BDG0cn0dpjb2e4hKYnoA0uXz4P0/P4 # uHsK4NuH2A15W7uGNf5QJ44P2gohGyGyeyT1iOVpRGinLT5PckTPKQZOKJXvkZNL # re2/VZm8R3bhoY6Vi4SLA8kIe+cF70l0tr7XzDM8z+FSiTMFQDNnPKFUz7fCDJoD # EEuLOaiuqS/oSDgxFwkNA5XtGE2aHv5Qh2YN+TpF7oFwyGAMkVmq5HSIINqqcIXp # cdFiIAx29lVlXVNP9W4TnZ4YVtN4LkMlyNZCVznjfyXMEGsg+jzMQYd9DWQE7OLn # R88BKklVQ9pInf8uGRBB3OEi7Oh17GwX5eLNVafrHa3g3aN5jeIErC0PM4ti5XWt # LfWRMwYQTEgRv1cjD/uoEikzeQpq3hZbfNLIBD0wfXQZ0f4Qad40KftkFbeg3TZw # 1FSvgF9/onNfJVvASv+jQJ0a3mlOF1ejgBR0JxpXmbv5kH85g5k= # =fb2i # -----END PGP SIGNATURE----- # gpg: Signature made Mon Oct 6 11:17:05 2025 CEST # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key
dts: r4lite: make emmc work
Merge tag 'v6.12.47' into 6.12-main This is the 6.12.47 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmjC6SoACgkQONu9yGCS # aT7O8Q//SfEDCryKst+eY9mLfDMULG0s+0nxhAWpuP2rK+YkQuXmUellVDFSYpdG # DzKanK7CmPAuhl0Of0UjQbAByywwX2V56Y1+xGccduZYfgh/m0DQsB00D8DeQA85 # axKwSmw2t0jVNPGwBusKmWJ9D1Ef8/Lp2tZhjJJ61p4mYnOBP1Itz29M7vTIoD8u # x2/5In98N1+T1/QGVe4tuj9uswFRohbAJo4XEA+/fApApEo/+dLNh8GoaJUTHsSe # cF2TNgApAazJ7u7R8WEuwifwiFtwmZnXfX7VQ4uPNhkRaTMkz7+UFyGSApl5arTs # iGpV2IAIuQrl3810pY+5e9cGXY6RyD9oxcoTUgm8qtLzA0VOmChC7+m50lxqYB+d # 5ur9vFk3YZFp8gcl4anXf9TvfQaf/TIW9ZyFyAz24zKfWlW55OOoHo1rFiJR47zi # LjJIeqbERsv1vK37QRJBEvWJHnAtP0fTNRKqb+v5R76FR+BEFV4TtrBKMrwERrPW # kIK7Dnc884eafYN2qgcdG86jmea1+y/gzDu7se/6RgYralOfmd1aTBvHx1QYnxwW # b3EnjBnALeWdarWXwUiF0HYqH8OW3Tfl4/GJUIUNPCOj1NnPpXGHm9liumi5nfz9 # +iLuxGA10nCHiXElaQSZhk9zAUFQsd75oHEUiRHYxkLCxsmN7oo= # =kadx # -----END PGP SIGNATURE----- # gpg: Signature made Thu Sep 11 17:22:18 2025 CEST # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key
Merge tag 'v6.6.106' into 6.6-main This is the 6.6.106 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmjC6MkACgkQONu9yGCS # aT6oOBAA1tLCDhHwJHx1MDbhcaQUYZdyxN+2vAC0utk4wRg1peUo9qh5rqO7gvB+ # OF3QfVbxZCvOR9JxI3kkkhyXKdSoJz5XpXTZ/YWsAZidLwfCr+Y9oM3T2gQkqdbe # lA+liP/FWQDhIX7ZiLk0Hd0g+LGQT0sQ2BiQLDGxk73uYu+V+azysbG3KEIdrn2g # JcpAPcD6i139kyVpN+cXwwaWfysGzO4OhIvfP8dXDs10xSvIpPIIBwMqCiIxyvah # L2Oa0n7kWHuMCANtitANfkkL9gknmW+KVcQojWYQ0+IessCh8yn1U9vA3txWrd0E # M+WpgEbTBbCX1kNHE1XUxhIGBxlJjUEF8oKT16VQS/jQpoIDvhPQ2U7f01tB/Jcx # EEqmfl/1jEWLv/4y7NUZvgAdaXsHT/XZK1XeAVY/XwbSkkRLDvoxhuwGGJVVtNHL # frCYBouzLyuUm3zyJUM0lhI64kkS+UDlJyVYH7f0yToqU8rlQKb0lTuhAO5bofKR # F+KnJ+meq1AV7ZZD5BXLzKQocn9mKnM3yYKxaKS0+TCl8HWdXuKRSzqAezC/iLzF # Phb4wBo8mjULxSLFp1dKNdAczwKQd0MFp+hxYPg032lGCD6rnwvr8QU99wmPBl3D # b5TQiGy3YBfvpHdfEJLatRKDYXv1ePOMhvinsK2fBVXNW+fNi0Y= # =9R97 # -----END PGP SIGNATURE----- # gpg: Signature made Thu Sep 11 17:20:41 2025 CEST # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key
Merge tag 'v6.1.152' into 6.1-main This is the 6.1.152 stable release # -----BEGIN PGP SIGNATURE----- # # iQIzBAABCgAdFiEEZH8oZUiU471FcZm+ONu9yGCSaT4FAmjC6HoACgkQONu9yGCS # aT7Dcg/6A3qGYtLnWmc+3vOQVmejLMlIktsa2AOgjyIgAlfnX0Chul9NvsZxFQMY # r9SKhFsloHisuRpeAz1djw/GnFcmz1/GQSdLzXYr8dRUDhxhCSHwd6rR7eu9NGdj # UvgIjDue5MYU9bSFMDxA2naezomHX9MfqXWPlqgBUTyMYcOeeD5Tt3N2o/WVuejj # hwusabU7KGiphOlQPoZwai+uyMXbNeYnTkDG8B1kj2phjrpDiTgli4wO1FOxcdGg # knPNZAQoti0noORoBP8fT8bM9RX6RiuJ+M5LUe9av5nDfF4VooNaZKb3eXwpCo5u # INEXwXPE1XBNY0LtoOfWyl6kYdZgFELhG1fh6JEnIs0lFYTJDMlThkkXVvbfz7nT # Nsz2p7zNMmu3Y6/UFcrk+4UiztTUbF+5WHsaKyFb2ExXfgiIbbZW4WPP/aUjU7+O # 9OkJwi7HeoHMDxHE08kPeBQVhXEsIcjmS+RUS1WsEofCV8o2wZyfID7SF7kzWNLk # ag6+jx8FMdbqWnW9D39tQqbcsOsqcRAIMJj4UYeR2aCB5uRSxero73LT+rGsE6TZ # FtlfNo1PIJqBR9ani4yYUYtpkwi3xDCFEbFECPGhoBcv/asGQkTuHDFR7uzH5F0E # LvCayi2GMvgG9jGUtSTUhsdMf3ZkEJbAtKfWZXfR+eITCWeoT1M= # =UMvW # -----END PGP SIGNATURE----- # gpg: Signature made Thu Sep 11 17:19:22 2025 CEST # gpg: using RSA key 647F28654894E3BD457199BE38DBBDC86092693E # gpg: Can't check signature: No public key
PreviousNext