Repository navigation
Release v2.0.0
Changes in v2.0.0:
🚀 Major Architectural Leap (Elsangithub Production Release)
This release represents a major evolutionary jump for the MediaTek MT7668 SDIO Wi-Fi driver, bringing it to full functional, throughput, and packaging parity with the acclaimed mt7663-driver ecosystem. The headline capability is the porting and introduction of Dedicated AP Mode (ap_mode / ap0), turning FiberHome HG680-FJ (Amlogic S905X2 / Meson G12A) TV boxes into enterprise-grade 5 GHz 802.11ac Hotspot Routers and Wi-Fi Repeaters.
Added
- Dedicated AP Mode & Modular Kernel Parameter (
ap_mode):- Implemented dynamic runtime module parameter
ap_modeinos/linux/gl_init.c:ap_mode=0(Default): Pure client station mode (wlan0only). Zero overhead, maximum stability for general desktop/server deployments.ap_mode=1: Dedicated SoftAP mode. Automatically registers and instantiates the virtual interfaceap0alongsidewlan0at driver probe time. Ideal for companion routing packages likemt7663-router-webuiand standalonehostapd.ap_mode=2: Dual AP mode (dual AP virtual interfaces).ap_mode=3: P2P + AP concurrent mode.
- Added configuration template file
/etc/modprobe.d/mt7668.conf.
- Implemented dynamic runtime module parameter
- Native SMP Multi-Core CPU Affinity in Kernel C (
gl_kal.c):- Implemented
set_cpus_allowed_ptronhif_thread,rx_thread, andmain_threaddirectly inside kernel thread entry points. - Automatically isolates all network traffic processing from CPU0 (
cpumask_clear_cpu(0, &mask)), balancing worker threads dynamically across CPU 1, 2, and 3 to prevent CPU0 bottlenecks.
- Implemented
- FIFO Underflow & Overflow Fast-Path (
nic/nic.c):- Implemented instant hardware interrupt acknowledgement and fast-path clearing for
WASR_RX0_UNDER_FLOW,WASR_RX1_UNDER_FLOW, andWASR_TX1_OVER_FLOW. - Prevents SDIO bus stalls and chip panic resets (
glResetTrigger) during heavy bidirectional traffic floods.
- Implemented instant hardware interrupt acknowledgement and fast-path clearing for
- Dynamic Hardware IRQ Balancing & RPS Rules:
- Bundled
/usr/lib/udev/wlan-irq-tune.shand/etc/udev/rules.d/99-wlan-performance.rules. - Automatically migrates SDIO hardware interrupts (
ffe03000.mmc) to CPU 2 and 3 (smp_affinity_list: 2,3). - Activates Receive Packet Steering (RPS mask
e/0b1110) onwlan0to offload TCP/IP network stack processing to CPU 1, 2, and 3.
- Bundled
- Hard Dummy Bluetooth Driver Blacklist:
- Enforced
install btmtksdio /bin/true,install btmtk /bin/true, and in-treemt76driver blacklists in/etc/modprobe.d/blacklist-mt7668-bluetooth.confto completely prevent SDIO bus collision on boot.
- Enforced
- Automatic Firmware Backup & Clean Firmware Bundle:
- Bundled clean, verified firmware files in
system/lib/firmware/(EEPROM_MT7668.bin,TxPwrLimit_MT76x8.dat,WIFI_RAM_CODE_MT7668.bin,WIFI_RAM_CODE2_SDIO_MT7668.bin,mt7668_patch_e2_hdr.bin,wifi.cfg). - Added automated preinst safety routine creating
/lib/firmware/backup_stock_mt7668/before package extraction.
- Bundled clean, verified firmware files in
- Modern Debian Packaging Architecture (
debian/):- Standardized versioned
debian/directory structure (control,preinst,postinst,prerm). - Automated DKMS self-healing in
postinst(detects and cleans legacy versions, auto-rebuildsmodpostif host glibc toolchain mismatches). - Automated CI/CD release workflow via GitHub Actions (
.github/workflows/release.yml).
- Standardized versioned
Changed
- Balanced Thermal Profile (
wifi.cfg):- Fine-tuned queue loops (
HifTxLoop 16,OsTxLoop 8) and disabled unnecessary VHT beamforming/STBC calculation for cooler daily operation (~53 °C).
- Fine-tuned queue loops (
- DKMS Configuration (
dkms.conf):- Upgraded
PACKAGE_VERSIONto"2.0.0".
- Upgraded
- Kernel 6.8+ & Modern Upstream Compatibility:
- Updated
cfg80211_cac_eventsignature handling inos/linux/gl_p2p_kal.cacross Linux kernels (distinguishing 4-arg in 6.8+, 5-arg in 6.1..6.7, and 4-arg in 3.14..6.0). - Updated
cfg80211_ch_switch_notifysignature handling inmgmt/p2p_func.cto support puncturing bitmap parameters in Linux 6.8+ and 6.12+. - Safely guarded unexported
kallsyms_on_each_symbolinos/linux/gl_kal.con Linux 5.7+ when kernelCONFIG_LIVEPATCHis active.
- Updated
Removed
- Pruned obsolete and unused
.bakfiles from source tree (gl_init.c.bak,sdio.c.bak).