Qualcomm Fast Path For LEDE

root@openwrt:~# insmod ext4
module is already loaded - ext4
~# insmod ext4
failed to insert /lib/modules/4.19.72/ext4.ko

this is the dmesg:

~# dmesg
[    0.000000] Linux version 4.19.72 (gwlim@openwrt.org) (gcc version 7.4.0 (Ope                                     nWrt GCC 7.4.0 r11009-1cf2495d48)) #0 Sat Sep 14 15:11:45 2019
[    0.000000] CPU0 revision is: 00019750 (MIPS 74Kc)
[    0.000000] MIPS: machine is TP-Link TL-WR1043ND v2
[    0.000000] SoC: Qualcomm Atheros QCA9558 ver 1 rev 0
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 04000000 @ 00000000 (usable)
[    0.000000] Primary instruction cache 64kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 32kB, 4-way, VIPT, cache aliases, linesize 32                                      bytes
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x0000000000000000-0x0000000003ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000000000-0x0000000003ffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x0000000003ffffff]
[    0.000000] On node 0 totalpages: 16384
[    0.000000]   Normal zone: 128 pages used for memmap
[    0.000000]   Normal zone: 0 pages reserved
[    0.000000]   Normal zone: 16384 pages, LIFO batch:3
[    0.000000] random: get_random_bytes called from 0x80561734 with crng_init=0
[    0.000000] pcpu-alloc: s0 r0 d32768 u32768 alloc=1*32768
[    0.000000] pcpu-alloc: [0] 0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 16256
[    0.000000] Kernel command line: console=ttyS0,115200n8 rootfstype=squashfs,j                                     ffs2
[    0.000000] Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
[    0.000000] Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Writing ErrCtl register=00000000
[    0.000000] Readback ErrCtl register=00000000
[    0.000000] Memory: 58068K/65536K available (4399K kernel code, 140K rwdata,                                      576K rodata, 1212K init, 112K bss, 7468K reserved, 0K cma-reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS: 51
[    0.000000] CPU clock: 720.000 MHz
[    0.000000] clocksource: MIPS: mask: 0xffffffff max_cycles: 0xffffffff, max_i                                     dle_ns: 5309056796 ns
[    0.000008] sched_clock: 32 bits at 360MHz, resolution 2ns, wraps every 59652                                     32126ns
[    0.000055] Calibrating delay loop... 359.42 BogoMIPS (lpj=718848)
[    0.028027] pid_max: default: 32768 minimum: 301
[    0.028178] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.028194] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.031777] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, ma                                     x_idle_ns: 7645041785100000 ns
[    0.031801] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.031896] pinctrl core: initialized pinctrl subsystem
[    0.033043] NET: Registered protocol family 16
[    0.056007] clocksource: Switched to clocksource MIPS
[    0.056967] NET: Registered protocol family 2
[    0.057696] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096                                      bytes)
[    0.057729] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.057761] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.057787] TCP: Hash tables configured (established 1024 bind 1024)
[    0.057911] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.057947] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.058206] NET: Registered protocol family 1
[    0.058243] PCI: CLS 0 bytes, default 32
[    0.061570] workingset: timestamp_bits=30 max_order=14 bucket_order=0
[    0.066465] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.066479] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORIT                                     Y) (c) 2001-2006 Red Hat, Inc.
[    0.076450] io scheduler noop registered
[    0.076466] io scheduler deadline registered (default)
[    0.077132] ar7200-usb-phy 18030000.usb-phy0: phy reset is missing
[    0.078816] pinctrl-single 1804002c.pinmux: 544 pins, size 68
[    0.079299] gpio-export gpio-export: 1 gpio(s) exported
[    0.080086] Serial: 8250/16550 driver, 16 ports, IRQ sharing enabled
[    0.082113] console [ttyS0] disabled
[    0.082161] 18020000.uart: ttyS0 at MMIO 0x18020000 (irq = 9, base_baud = 250                                     0000) is a 16550A
[    0.428169] console [ttyS0] enabled
[    0.446481] m25p80 spi0.0: s25fl064k (8192 Kbytes)
[    0.451393] 3 fixed-partitions partitions found on MTD device spi0.0
[    0.457843] Creating 3 MTD partitions on "spi0.0":
[    0.462715] 0x000000000000-0x000000020000 : "u-boot"
[    0.468517] 0x000000020000-0x0000007f0000 : "firmware"
[    0.476335] 2 tplink-fw partitions found on MTD device firmware
[    0.482387] Creating 2 MTD partitions on "firmware":
[    0.487447] 0x000000000000-0x0000001b049c : "kernel"
[    0.493202] 0x0000001b049c-0x0000007d0000 : "rootfs"
[    0.498893] mtd: device 3 (rootfs) set to be root filesystem
[    0.505985] 1 squashfs-split partitions found on MTD device rootfs
[    0.512320] 0x0000005f0000-0x0000007d0000 : "rootfs_data"
[    0.518498] 0x0000007f0000-0x000000800000 : "art"
[    0.524802] libphy: Fixed MDIO Bus: probed
[    0.849809] libphy: ag71xx_mdio: probed
[    0.856575] switch0: Atheros AR8327 rev. 4 switch registered on mdio-bus.0
[    1.164001] random: fast init done
[    1.441343] ag71xx 19000000.eth: connected to PHY at mdio-bus.0:00 [uid=004dd                                     034, driver=Atheros AR8216/AR8236/AR8316]
[    1.452790] eth0: Atheros AG71xx at 0xb9000000, irq 4, mode: rgmii
[    1.777608] ag71xx 1a000000.eth: connected to PHY at fixed-0:00 [uid=00000000                                     , driver=Generic PHY]
[    1.787299] eth1: Atheros AG71xx at 0xba000000, irq 5, mode: sgmii
[    1.795642] NET: Registered protocol family 10
[    1.804577] Segment Routing with IPv6
[    1.808453] NET: Registered protocol family 17
[    1.813022] bridge: filtering via arp/ip/ip6tables is no longer available by                                      default. Update your scripts to load br_netfilter if you need this.
[    1.826169] 8021q: 802.1Q VLAN Support v1.8
[    1.839861] VFS: Mounted root (squashfs filesystem) readonly on device 31:3.
[    1.853569] Freeing unused kernel memory: 1212K
[    1.858186] This architecture does not have kernel memory protection.
[    1.864722] Run /sbin/init as init process
[    2.858329] init: Console is alive
[    2.862041] init: - watchdog -
[    5.048382] kmodloader: loading kernel modules from /etc/modules-boot.d/*
[    5.147705] usbcore: registered new interface driver usbfs
[    5.153398] usbcore: registered new interface driver hub
[    5.158886] usbcore: registered new device driver usb
[    5.169672] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    5.177830] ehci-platform: EHCI generic platform driver
[    5.183388] ehci-platform 1b000000.usb: EHCI Host Controller
[    5.189202] ehci-platform 1b000000.usb: new USB bus registered, assigned bus                                      number 1
[    5.197258] ehci-platform 1b000000.usb: irq 13, io mem 0x1b000000
[    5.216026] ehci-platform 1b000000.usb: USB 2.0 started, EHCI 1.00
[    5.223023] hub 1-0:1.0: USB hub found
[    5.227223] hub 1-0:1.0: 1 port detected
[    5.232509] kmodloader: done loading kernel modules from /etc/modules-boot.d/                                     *
[    5.250254] init: - preinit -
[    6.188099] usb 1-1: new high-speed USB device number 2 using ehci-platform
[    6.388354] random: procd: uninitialized urandom read (4 bytes read)
[    6.462947] random: jshn: uninitialized urandom read (4 bytes read)
[    6.621057] random: jshn: uninitialized urandom read (4 bytes read)
[    8.021781] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[    8.027842] IPv6: ADDRCONF(NETDEV_UP): eth1.1: link is not ready
[    9.061142] eth1: link up (1000Mbps/Full duplex)
[    9.065872] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[    9.072706] IPv6: ADDRCONF(NETDEV_CHANGE): eth1.1: link becomes ready
[   11.364452] jffs2: notice: (446) jffs2_build_xattr_subsystem: complete buildi                                     ng xattr subsystem, 5 of xdatum (2 unchecked, 3 orphan) and 26 of xref (3 dead,                                      0 orphan) found.
[   11.384876] mount_root: switching to jffs2 overlay
[   11.427759] overlayfs: upper fs does not support tmpfile.
[   11.444384] urandom-seed: Seeding with /etc/urandom.seed
[   11.540680] eth1: link down
[   11.561738] procd: - early -
[   11.564808] procd: - watchdog -
[   12.133908] procd: - watchdog -
[   12.137409] procd: - ubus -
[   12.206609] urandom_read: 5 callbacks suppressed
[   12.206616] random: ubusd: uninitialized urandom read (4 bytes read)
[   12.222203] random: ubusd: uninitialized urandom read (4 bytes read)
[   12.231304] procd: - init -
[   12.964990] urngd: v1.0.0 started.
[   13.139412] random: crng init done
[   13.667550] kmodloader: loading kernel modules from /etc/modules.d/*
[   13.682301] NET: Registered protocol family 38
[   13.697444] kmodloader: failed to find dependency crc16
[   13.758152] kmodloader: failed to find dependency crc16
[   13.767281] tun: Universal TUN/TAP device driver, 1.6
[   13.773845] kmodloader: failed to find dependency crc16
[   13.781388] kmodloader: failed to find dependency crc16
[   13.790836] l2tp_core: L2TP core driver, V2.0
[   13.796188] kmodloader: failed to find dependency crc16
[   13.802678] l2tp_netlink: L2TP netlink interface
[   13.808448] kmodloader: failed to find dependency crc16
[   13.818707] kmodloader: failed to find dependency crc16
[   13.874190] gre: GRE over IPv4 demultiplexor driver
[   13.879845] kmodloader: failed to find dependency crc16
[   13.887399] ip_gre: GRE over IPv4 tunneling driver
[   13.952213] kmodloader: failed to find dependency crc16
[   14.020374] kmodloader: failed to find dependency crc16
[   14.028964] kmodloader: failed to find dependency crc16
[   14.035957] kmodloader: failed to find dependency crc16
[   14.044289] kmodloader: failed to find dependency crc16
[   14.055468] kmodloader: failed to find dependency crc16
[   14.062414] kmodloader: failed to find dependency crc16
[   14.069474] kmodloader: failed to find dependency crc16
[   14.088273] kmodloader: failed to find dependency crc16
[   14.115178] kmodloader: failed to find dependency crc16
[   14.136408] kmodloader: failed to find dependency crc16
[   14.152327] kmodloader: failed to find dependency crc16
[   14.166300] kmodloader: failed to find dependency crc16
[   14.182454] kmodloader: failed to find dependency crc16
[   14.193837] kmodloader: failed to find dependency crc16
[   14.208357] kmodloader: failed to find dependency crc16
[   14.240587] kmodloader: failed to find dependency crc16
[   14.265600] kmodloader: failed to find dependency crc16
[   14.280474] kmodloader: failed to find dependency crc16
[   14.294488] kmodloader: failed to find dependency crc16
[   14.309761] kmodloader: failed to find dependency crc16
[   14.322730] kmodloader: failed to find dependency crc16
[   14.348354] cryptodev: driver 1.10 loaded.
[   14.356746] kmodloader: failed to find dependency crc16
[   14.388640] kmodloader: failed to find dependency crc16
[   14.442325] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[   14.457376] kmodloader: failed to find dependency crc16
[   14.477179] ohci-platform: OHCI generic platform driver
[   14.512441] kmodloader: failed to find dependency crc16
[   14.553077] uhci_hcd: USB Universal Host Controller Interface driver
[   14.567094] kmodloader: failed to find dependency crc16
[   14.580483] Mirror/redirect action on
[   14.588358] kmodloader: failed to find dependency crc16
[   14.620383] kmodloader: failed to find dependency crc16
[   14.640443] kmodloader: failed to find dependency crc16
[   14.654973] kmodloader: failed to find dependency crc16
[   14.668114] kmodloader: failed to find dependency crc16
[   14.674926] kmodloader: failed to find dependency crc16
[   14.681906] kmodloader: failed to find dependency crc16
[   14.688916] kmodloader: failed to find dependency crc16
[   14.695540] u32 classifier
[   14.698343]     input device check on
[   14.702069]     Actions configured
[   14.706229] kmodloader: failed to find dependency crc16
[   14.712841] kmodloader: failed to find dependency crc16
[   14.720251] kmodloader: failed to find dependency crc16
[   14.728675] kmodloader: failed to find dependency crc16
[   14.735513] kmodloader: failed to find dependency crc16
[   14.742665] kmodloader: failed to find dependency crc16
[   14.766027] kmodloader: failed to find dependency crc16
[   14.771706] kmodloader: failed to find dependency scsi_mod
[   14.777391] kmodloader: failed to find dependency scsi_mod
[   14.783074] kmodloader: failed to find dependency scsi_mod
[   14.789612] kmodloader: failed to find dependency scsi_mod
[   14.795302] kmodloader: failed to find dependency scsi_mod
[   14.800979] kmodloader: failed to find dependency scsi_mod
[   14.806650] kmodloader: failed to find dependency scsi_mod
[   14.812317] kmodloader: failed to find dependency scsi_mod
[   14.817989] kmodloader: failed to find dependency scsi_mod
[   14.823660] kmodloader: failed to find dependency scsi_mod
[   14.829335] kmodloader: failed to find dependency scsi_mod
[   14.835004] kmodloader: failed to find dependency scsi_mod
[   14.842622] Loading modules backported from Linux version v5.3-rc4-0-gd45331b                                     00ddb
[   14.850346] Backport generated by backports.git v5.3-rc4-1-0-g4ec72687
[   14.887706] wireguard: WireGuard 0.0.20190702 loaded. See www.wireguard.com f                                     or information.
[   14.896329] wireguard: Copyright (C) 2015-2019 Jason A. Donenfeld <Jason@zx2c                                     4.com>. All Rights Reserved.
[   14.940488] xt_time: kernel timezone is -0000
[   15.012924] PPP generic driver version 2.4.2
[   15.019904] PPP MPPE Compression module registered
[   15.026411] NET: Registered protocol family 24
[   15.032632] PPTP driver version 0.8.5
[   15.065865] l2tp_ppp: PPPoL2TP kernel driver, V2.0
[   15.098297] ath: EEPROM regdomain: 0x0
[   15.098305] ath: EEPROM indicates default country code should be used
[   15.098308] ath: doing EEPROM country->regdmn map search
[   15.098320] ath: country maps to regdmn code: 0x3a
[   15.098325] ath: Country alpha2 being used: US
[   15.098328] ath: Regpair used: 0x3a
[   15.118556] ieee80211 phy0: Selected rate control algorithm 'minstrel_ht'
[   15.119946] ieee80211 phy0: Atheros AR9550 Rev:0 mem=0xb8100000, irq=12
[   15.159154] kmodloader: 12 modules could not be probed
[   15.169283] kmodloader: missing dependency crc16
[   15.183272] kmodloader: - ext4 - 1
[   15.188388] kmodloader: dependency not loaded usb-storage
[   15.248636] kmodloader: - ums-alauda - 1
[   15.252777] kmodloader: dependency not loaded usb-storage
[   15.258388] kmodloader: missing dependency scsi_mod
[   15.263462] kmodloader: - ums-cypress - 2
[   15.267661] kmodloader: dependency not loaded usb-storage
[   15.273272] kmodloader: - ums-datafab - 1
[   15.277472] kmodloader: dependency not loaded usb-storage
[   15.283077] kmodloader: - ums-freecom - 1
[   15.287275] kmodloader: dependency not loaded usb-storage
[   15.292887] kmodloader: - ums-isd200 - 1
[   15.296999] kmodloader: dependency not loaded usb-storage
[   15.308195] kmodloader: - ums-jumpshot - 1
[   15.316174] kmodloader: dependency not loaded usb-storage
[   15.328182] kmodloader: - ums-karma - 1
[   15.336181] kmodloader: dependency not loaded usb-storage
[   15.348276] kmodloader: - ums-sddr09 - 1
[   15.354241] kmodloader: dependency not loaded usb-storage
[   15.408222] kmodloader: - ums-sddr55 - 1
[   15.412342] kmodloader: dependency not loaded usb-storage
[   15.417947] kmodloader: - ums-usbat - 1
[   15.421968] kmodloader: missing dependency scsi_mod
[   15.427052] kmodloader: - usb-storage - 1
[   22.522077] fast-classifier: starting up
[   22.526268] fast-classifier: registered
[   25.349799] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
[   25.356925] eth1: link up (1000Mbps/Full duplex)
[   25.370153] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
[   25.389887] br-lan: port 1(eth1.1) entered blocking state
[   25.395415] br-lan: port 1(eth1.1) entered disabled state
[   25.401199] device eth1.1 entered promiscuous mode
[   25.406107] device eth1 entered promiscuous mode
[   25.481391] br-lan: port 1(eth1.1) entered blocking state
[   25.486913] br-lan: port 1(eth1.1) entered forwarding state
[   25.492737] IPv6: ADDRCONF(NETDEV_UP): br-lan: link is not ready
[   25.544730] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   25.573164] IPv6: ADDRCONF(NETDEV_UP): eth0.2: link is not ready
[   26.378825] IPv6: ADDRCONF(NETDEV_CHANGE): br-lan: link becomes ready
[   26.565343] eth0: link up (1000Mbps/Full duplex)
[   26.593494] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   26.632124] IPv6: ADDRCONF(NETDEV_CHANGE): eth0.2: link becomes ready
[   28.992786] pppoe-wan: renamed from ppp0
[   30.707318] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   30.775399] br-lan: port 2(wlan0) entered blocking state
[   30.780840] br-lan: port 2(wlan0) entered disabled state
[   30.786549] device wlan0 entered promiscuous mode
[   39.115122] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   39.121803] br-lan: port 2(wlan0) entered blocking state
[   39.127249] br-lan: port 2(wlan0) entered forwarding state
[  327.061928] pppoe-wan: renamed from ppp0
[54664.413121] pppoe-wan: renamed from ppp0
[82019.266398] ext4: Unknown symbol crc16 (err -2)

After reading a little the dmesg log i've installed kmod-lib-crc16 from tar.gz archieve and now it fails to see the usb plugged into the router.

Lsmod | grep ext4:  
crc16                   1024  1 ext4
crypto_hash             8736  8 ppp_mppe,cryptodev,algif_hash,sha1_generic,authenc,ext4,jbd2,crypto_null
ext4                  392736  0
jbd2                   49904  1 ext4
mbcache                 3088  1 ext4

update: installed all libs and kmods needed, formatted the usb to ext4 using

mkfs.ext4 /dev/sda1

Can't mount sda1 --> mount: mounting /dev/sda1 on /mnt failed: No such file or directory

so fdisk -l :

Device     Boot Start      End  Sectors  Size Id Type
/dev/sda1  *     2048 15364095 15362048  7.3G  c W95 FAT32 (LBA)

WHY??

Have you installed all the required kmods?

 dependencies for kmod-fs-ext4:
 *      kmod-lib-crc16
 *      kmod-crypto-crc32c

missing dependency scsi_mod
missing dependency crc16

Don't do nodeps when kmods are provided whatever is missing install from the tar.gz

kmod-lib-crc16 is installed, scsi-core also.
I'm trying to install kmod-crypto-crc32c but without -nodeps i get this

Collected errors:
 * satisfy_dependencies_for: Cannot satisfy the following dependencies for kmod-crypto-crc32c:
 *      kernel (= 4.19.72-1-23e25f21c0f86dda925f0fc261a08d10)
 * opkg_install_cmd: Cannot install package kmod-crypto-crc32c.

what can i do if the error is the kernel version? the package is from the tar.gz.

You are probably using an older image with newer kmods.
Each time I upload the firmware I will push the kmods and the firmware has to match the updated kmods

Hello again,

I'm using the image from here september image+kmod .

The image comes with its kmods.

Hi, I can concur @lordwerther problem, happened to me too, with the appropriate kmod-file.
I solved the issue by using the --force-depends option.

I've had to stick to @shunjou 's 4.14 kernel build to get a nice, bug-free experience.

I tried to install nfs-kernel-server, ntfs-3g, kmod-usb-storage, block-mount (I run an NFS server for Kodi to stream videos for my parents on their Android boxes) on this but ran into a kernel version error. Is this a straight-forward thing to get working or is it more complicated? (Archer C7 v2)

Many thanks for all your work on this @gwlim, I've lurked a long time and always appreciated your speed contributions.

Have you tried my advice, a few posts up?

Thank you, I did but I got a Segmentation Fault error.

@gwlim

will there be any new builds ? ? *tplink wr1024nd v2

Need one help,I enabled shortcut-fe for my build ,Although throughtput is increased but very limited
packets cuptured with pcap library in router (for i.e. running the traffic in downlink direction,wan to lan)

Who do I need to talk to about suspected bug in the MAP-T package. I'm new to this forum and have set up a working environment using MAP-T but there seems to be a problem establishing TCP connections . Before I start digging deeper would like to know of anyone has come across this problem and which forum I should start asking the question.

@gwlim any chance a build for TP-Link C2600 ? Currently running on 19.07.1 and speeds both on wired and wireless are about half of what my connection can do (300 / 150 mbps) even with flow offload enabled. Perhaps i'm missing something as there was a post that SFE should be almost same to flow offload on 4.14 kernel but speed is less than expected.

1 Like

Have you investigated any of the techniques shown in the R7800 performance thread for increasing performance?

Hey, @gwlim would you explain how to compile the sfe in general for other devices and will it be possible to compile just .ipk to install sfe into the devices or do we need to completely compile it from source. If yes, would you help with an howto?

Yes, there is still a big diffrence in performance if I compare new "nat-offload" since Kernel 4.14 to SFE. Already with my TP-Link D7 Routers which work with C7-Images from gwlim after adapting the bootloader to a Archer C7 (thanks again to @blinkstar88) work with a much higher performance when I use sfe. Wifi to WAN is around 180 Mbit/s with nat-offloading and around 400 Mbit/s with active sfe. LAN to WAN is aroung 400 Mbit/s with nat-offloading and around 600 Mbit/s with active sfe.

I am still suprised how you managed to get from the TP1043 a performance of 700 Mbit/s constant. The device has a much slower CPU and older architecture! - So if people have still advices to improve performance please let me know.

1 Like

I found this post in 2021 and I am very surprised by the miracle done here, I tried to compile for my own versions but the patch script is unfortunately outdated and with broken links.

@gwlim I saw on github that you've updated some routers to 2021. Could you also provide the script to apply the updated patch, please? thankful

OpenWRT 19.xx, 21.02 and master already have software flow offload, courtesy of the Linux kernel. It's probably better to use that if it suit your needs.

But if you really want to try QCA's SFE, you may want to reference this commit from my repo here:

It is for OpenWRT 21.02-SNAPSHOT, but should be easily adaptable for OpenWRT with Linux kernel 5.4.x.

HTH.

2 Likes

Sorry for the ignorance, I've tried everything but I couldn't include the code to an openwrt build... I've researched a lot in all this time so far but I don't know how to include SFE in an openwrt build like the official openwrt 21.02 .
Could you tell me how?