Repository navigation
Releases
Releases · elsangithub/mt7663-driver
Release v1.0.12
Changes in v1.0.12:
Fixed
- Multi-Kernel Compatibility for DFS Radar CAC Event (
cfg80211_cac_event):- Corrected preprocessor guard in
os/linux/gl_p2p_kal.cto#if KERNEL_VERSION(6, 12, 0) <= CFG80211_VERSION_CODE. - Resolves fatal compilation failure
error: too many arguments to function 'cfg80211_cac_event'on Linux kernels 6.1 through 6.11 (such as Debian 12 standard 6.1, Linux 6.6 LTS, and Ubuntu 24.04 6.8), while preserving 5-argument MLO signature compatibility for Linux 6.12+.
- Corrected preprocessor guard in
- Multi-Driver Coexistence Architecture & System Namespacing (
mt7668Parity):- Isolated SDIO bus driver identifier to
.name = "wlan_mt7663_sdio"inos/linux/hif/sdio/sdio.c, eliminating-EBUSYbus registration conflicts with other WLAN drivers. - Added module active guard (
if lsmod | grep -q "^wlan_mt7663") and multi-bus wildcard discovery (*mmc*/*sd*) tomt7663-shutdown.servicefor deterministic quiesce without interfering with other hardware. - Namespaced system tuning files to prevent package collisions:
/usr/lib/udev/mt7663-irq-tune.sh,/etc/sysctl.d/99-mt7663-throughput.conf, and/etc/udev/rules.d/99-mt7663-performance.rules. - Automated
mt7663-shutdown.serviceenablement indebian/postinstand cleanup disable indebian/prerm.
- Isolated SDIO bus driver identifier to
- Procfs Root & MET Profiling Namespacing (
/proc/net/wlan_mt7663&/proc/net/wlan_mt7663_met):- Isolated procfs root directory from generic
"wlan"to"wlan_mt7663"inos/linux/gl_proc.cand MET procfs directory to"wlan_mt7663_met"inos/linux/gl_kal.c. - Resolves kernel warning call trace
proc_dir_entry 'net/wlan' already registeredwhen bothwlan_mt7663andwlan_mt7668kernel modules are loaded simultaneously at boot.
- Isolated procfs root directory from generic
Release v1.0.11
Changes in v1.0.11:
Fixed
- Universal SDIO Controller Device Matching (
ffe03000*):- Updated
mt7663-shutdown.serviceto dynamically discover and unbind/sys/bus/platform/drivers/meson-gx-mmc/ffe03000*using wildcard matching. - Simplified IRQ affinity matching in
wlan-irq-tune.shto pattern/ffe03000/. - Ensures seamless operation across kernel versions and DTB variants regardless of whether the platform bus device is named
ffe03000.mmcorffe03000.sd.
- Updated
- UsrMerge Packaging Compliance (
build-deb.sh):- Relocated firmware installation destination from
./lib/firmware/to./usr/lib/firmware/inbuild-deb.sh. - Prevents
dpkg -xextraction from converting/libinto a physical directory, which broke the mandatory/lib -> usr/libsymlink on modern Debian/Armbian systems and caused fatalrun-init: can't execute '/sbin/init': No such file or directorykernel panics.
- Relocated firmware installation destination from
- Multi-Kernel Compatibility for Station Update (
cfg80211_new_sta&cfg80211_del_sta):- Corrected kernel version preprocessor guard in
os/linux/gl_p2p_kal.cto#if (CFG80211_VERSION_CODE >= KERNEL_VERSION(6, 14, 0)). - Fixes fatal kernel oops and
main_threadcrash when stations associate on Linux 5.10 LTS and 6.12 LTS (6.12.114-ophub), while preserving upstreamstruct wireless_dev *signature compatibility for Linux 6.18+.
- Corrected kernel version preprocessor guard in
cfg80211_opsCallback Signatures (os/linux/gl_cfg80211.c&os/linux/include/gl_cfg80211.h):- Restored standard
struct net_device *ndevparameter type acrossadd_key,get_key,del_key,set_default_mgmt_key,get_station,change_station,add_station, anddel_station. - Eliminates bogus pointer dereferencing (
wdev->netdev) and fixeserrno=11failures during hostapd station flag updates.
- Restored standard
- WPA2/WPA3 Data-Plane Queue Unlocking (
fgIsTxKeyReady):- Explicitly mark station transmission as allowed (
fgIsTxKeyReady = TRUE) and update station queue record (qmUpdateStaRec) uponNL80211_STA_FLAG_AUTHORIZEDand pairwise key installation inmtk_cfg_change_stationandmtk_p2p_cfg80211_add_key. - Resolves client loop where device connected to Wi-Fi but showed "terhubung tanpa internet" due to blocked data queues.
- Explicitly mark station transmission as allowed (
- Global Station Record Lookup Fallback (
nicEventAddPkeyDone&nicRxProcessEventPacket):- Added fallback search via
cnmGetAnyStaRecByAddressto prevent BSS index mismatch on virtual interfaceap0from dropping key completion events.
- Added fallback search via
Release v1.0.10
[1.0.8 / 1.0.10] - 2026-10-31
Changed
- Decoupled Architecture (Pure Kernel DKMS Driver):
- Decoupled the WSGI Web UI dashboard, Python runtime files, hotspot daemon, and routing scripts out of
mt7663-dkmsinto the standalone companion package:mt7663-router-webui. - Reduced
mt7663-dkmspackage dependencies strictly todkms (>= 2.1.0.0)andbuild-essential. Zero background daemons, zero external dependencies, and minimal memory footprint.
- Decoupled the WSGI Web UI dashboard, Python runtime files, hotspot daemon, and routing scripts out of
- Modular Kernel Parameter (
ap_mode):- Added kernel module parameter
ap_modeviamodule_param(ap_mode, int, 0644)inos/linux/gl_init.c:ap_mode=0(default): Pure Wi-Fi Client mode (wlan0only). Highly stable, lightweight, and ideal for standard desktop/server operations.ap_mode=1: Dynamically instantiates the dedicated virtual interfaceap0alongsidewlan0for Dual-Band Concurrent (DBDC) SoftAP Hotspot & Repeater operations when paired withmt7663-router-webui.
- Added kernel module parameter
Added
- Modern Linux 6.7+ & 6.18+ (Ophub) cfg80211 wdev Compatibility:
- Updated
kalP2PGOStationUpdateinos/linux/gl_p2p_kal.cto passstruct wireless_dev *wdevtocfg80211_new_sta()andcfg80211_del_sta()for kernels >= 6.7.0, preventing kernel oops during station association.
- Updated
- WPA2/WPA3 Key Handshake Exception Patch (
wlanoidSetAddKey):- Adjusted key index bitmask in
common/wlan_oid.cto permitIS_AUTHENTICATOR(BIT(28)), eliminating key handshake drops during AP encryption setup.
- Adjusted key index bitmask in
- TX1 Overflow Fast-Path Interrupt Recovery:
- Added immediate interrupt acknowledgement for
WASR_TX1_OVER_FLOWinnic/nic.c, preventing SDIO bus stalls and dmesg log floods under heavy bidirectional network saturation.
- Added immediate interrupt acknowledgement for
- State Machine Null-Pointer Guards (
ais_fsm.c):- Protected 6 AIS FSM event transitions against null pointer dereference (
prAdapter->prAisBssInfo != NULL), eliminating kernel panics during rapid interface state transitions.
- Protected 6 AIS FSM event transitions against null pointer dereference (
v1.0.8-rc5
Immutable
release. Only release title and notes can be modified.
Changes in v1.0.8-rc5:
Changed
- Decoupled Architecture (Pure Kernel DKMS Driver):
- Decoupled the WSGI Web UI dashboard, Python runtime files, hotspot daemon, and routing scripts out of
mt7663-dkmsinto the standalone companion package:mt7663-router-webui. - Reduced
mt7663-dkmspackage dependencies strictly todkms (>= 2.1.0.0)andbuild-essential. Zero background daemons, zero external dependencies, and minimal memory footprint.
- Decoupled the WSGI Web UI dashboard, Python runtime files, hotspot daemon, and routing scripts out of
- Modular Kernel Parameter (
ap_mode):- Added kernel module parameter
ap_modeviamodule_param(ap_mode, int, 0644)inos/linux/gl_init.c:ap_mode=0(default): Pure Wi-Fi Client mode (wlan0only). Highly stable, lightweight, and ideal for standard desktop/server operations.ap_mode=1: Dynamically instantiates the dedicated virtual interfaceap0alongsidewlan0for Dual-Band Concurrent (DBDC) SoftAP Hotspot & Repeater operations when paired withmt7663-router-webui.
- Added kernel module parameter
Added
- Modern Linux 6.7+ & 6.18+ (Ophub) cfg80211 wdev Compatibility:
- Updated
kalP2PGOStationUpdateinos/linux/gl_p2p_kal.cto passstruct wireless_dev *wdevtocfg80211_new_sta()andcfg80211_del_sta()for kernels >= 6.7.0, preventing kernel oops during station association.
- Updated
- WPA2/WPA3 Key Handshake Exception Patch (
wlanoidSetAddKey):- Adjusted key index bitmask in
common/wlan_oid.cto permitIS_AUTHENTICATOR(BIT(28)), eliminating key handshake drops during AP encryption setup.
- Adjusted key index bitmask in
- TX1 Overflow Fast-Path Interrupt Recovery:
- Added immediate interrupt acknowledgement for
WASR_TX1_OVER_FLOWinnic/nic.c, preventing SDIO bus stalls and dmesg log floods under heavy bidirectional network saturation.
- Added immediate interrupt acknowledgement for
- State Machine Null-Pointer Guards (
ais_fsm.c):- Protected 6 AIS FSM event transitions against null pointer dereference (
prAdapter->prAisBssInfo != NULL), eliminating kernel panics during rapid interface state transitions.
- Protected 6 AIS FSM event transitions against null pointer dereference (
v1.0.8-rc3
Immutable
release. Only release title and notes can be modified.
Changes in v1.0.8-rc3:
Fixed
- Hotspot Client Discovery in Status Command: Enhanced
/usr/sbin/mt7663-hotspot statusto accurately detect, deduplicate, and display connected client stations with their hostname, IP address, MAC, and ARP reachability state by reading activednsmasqDHCP leases andip neightables instead of relying on MediaTek's unpopulatediw dev ap0 station dump. - Automated Release Notes & Native CLI Pipeline: Transitioned CI/CD release workflow to native GitHub CLI (
gh release create) with automated changelog extraction directly fromCHANGELOG.mdfor seamless atomic release asset publishing.
v1.0.8-rc1
Immutable
release. Only release title and notes can be modified.
Changes in v1.0.8-rc1:
Added
- Dual-Band 5 GHz 802.11ac SoftAP / Hotspot Mode Support (
ap0): Added high-performance Wi-Fi Hotspot mode operating on a dedicated virtual interface (ap0) alongside pure Client (wlan0) mode without interference or regression. - Turnkey Hotspot Utility & Service (
mt7663-hotspot): Integrated hotspot CLI tool (/usr/sbin/mt7663-hotspot), systemd service (mt7663-hotspot.service), and hostapd configuration template (/etc/hostapd/hostapd-mt7663.conf) with automatic IP gateway setup, DHCP Option 26 (MTU 1408), and NAT Masquerade packet routing. - NetworkManager AP Isolation (
99-mt7663-unmanaged-ap0.conf): Bundled NetworkManager rule designatingap0as unmanaged so NetworkManager leaves AP operations solely tohostapdwhile continuing to managewlan0client mode smoothly.
Fixed
- Linux >= 6.7 cfg80211 Association Kernel Oops: Updated
kalP2PGOStationUpdateinos/linux/gl_p2p_kal.cto passstruct wireless_dev *wdevinstead ofnet_devicetocfg80211_new_sta()andcfg80211_del_sta(), resolving kernel crashes upon client station association. - Amlogic SDIO Buffer Overflow & Firmware Assert (
wsys_i #565): Enforced hardware-safe MTU of 1408 (mtu = 1408,max_mtu = 1408) across all dynamic AP/P2P interfaces ingl_p2p_cfg80211.candgl_p2p.c, preventing Ethernet frame overflow on Amlogic Meson G12A (max_req_size = 1536). - TX1 Overflow Fast-Path Interrupt Handling: Added immediate acknowledgement and clearing of
WASR_TX1_OVER_FLOWinnic/nic.cto prevent interrupt storms and maintain stable hardware communication. - P2P Station Flag Error (errno=11): Updated
mtk_cfg_change_stationinos/linux/gl_cfg80211.cto cleanly return success for AP interfaces, eliminating hostapd station flag failure warnings.
Release v1.0.7 - Linux Kernel 5.10 LTS Support & Universal Cross-Kernel Packaging
Immutable
release. Only release title and notes can be modified.
Changes in v1.0.7:
Added
- Full Linux Kernel 5.10 LTS Support: Expanded native compatibility to include Linux Kernel 5.10 LTS (e.g.
5.10.272-ophub) on FiberHome HG680-FJ. - Universal DTB Collection (
dtbfix/): Bundled pre-compiled Device Tree blobs (meson-g12a-hg680-fj-uni.dtb,fixed.dtb,ori.dtb) to provide seamless 32kHz reference clocking and MicroSD hardware stability across both Kernel 5.10 and Kernel 6.x. - Dynamic Cross-Kernel Toolchain Alignment: Enhanced
debian/postinstself-healing logic to conditionally inspect header sources forsymsearch.c, enabling automatic, zero-interventionmodpostrebuilding across both Kernel 5.x and Kernel 6.x under Debian 12 Bookworm.
Fixed
- Pre-installation Kernel Guard: Replaced obsolete Kernel < 6.0 warning in
debian/preinstwith informative guidance directing Kernel 5.x users to the universal DTB. - DTC Audio Routing Escape Bug: Resolved string-splitting octal escape sequence glitch (
Lineout\x08U2) in Device Tree compilation, ensuring 100% clean ALSA DAPM routing withoutaxg-sound-cardwarnings indmesg.
Release v1.0.6 - Production Ready with Automated CI/CD & Self-Healing DKMS Packaging
Full Changelog: v1.0.5...v1.0.6
Release v1.0.5 - Modern Linux 6.18+ Timer API Bridge & Silent Production Logging
Changes in v1.0.5:
Added
- Linux 6.18+ Modern Kernel Support: Added backward/forward compatibility bridge for Linux 6.18+ timer subsystem modernization (
timer_delete_sync(),timer_delete(), andcontainer_offrom_timer mapping) alongsideFB_EVENT_BLANKfallback, while maintaining 100% native compatibility with Linux 6.12 LTS. - Pre-installation Kernel Guard (
preinst): Automatically detects running kernel during package installation (dpkg -i) and warns if running on Kernel < 6.0, detailing FiberHome HG680-FJ's hardware DTB dependency onmeson-g12-pwm-v2. - Makefile Kernel Architecture Check: Emits diagnostic compile-time warning if targeting Kernel < 6.0.
- Kernel Focus Realignment: Shifted project focus and roadmap exclusively to modern 6.x series (Linux 6.12+ LTS & 6.18+ LTS).
Changed
- Silent Production Logging: Completely silenced all development debug messages (
[scan-start],[scan-set-ch],[wlanoidSetAddKey],[wlan-ack],[wlan-cfg], and[wlan-bufbin]), eliminating red error text and log spam indmesg. - Clean Kernel Dmesg: Driver is now whisper-quiet and zero-spam in production kernel environments.
- Version Leap: Skipped v1.0.4 directly to v1.0.5 per project release schedule.
Release v1.0.3 - Native SMP CPU Affinity, Instant Udev IRQ Mapping & 802.11ac Boost
Changes in v1.0.3:
Added
- Native SMP CPU Affinity: Thread workers
rx_threadandhif_threadinos/linux/gl_kal.cdynamically bind to online CPUs excluding CPU0 (set_cpus_allowed_ptr), ensuring packet and SDIO bus processing never contend with system timers or OS scheduler on CPU0. - Udev Instant IRQ Mapping: Replaced external systemd service with instantaneous
99-wlan-performance.rulesudev trigger, dynamically settingffe03000.mmcSDIO IRQ SMP affinity to CPU 2,3 upon network device registration with zero race conditions. - 802.11ac High-Throughput Aggregation: Enabled
AmsduInAmpduTx 1andVhtAmsduInAmpduTx 1inwifi_mt7661.cfgto allow multi-MSDU packing per AMPDU over 5GHz radio. - VHT Beamforming & RX Diversity: Enabled
StaVHTBfee 1(Explicit VHT Beamformee) andStbcRx 1(Space-Time Block Coding) in firmware configuration for enhanced SNR and signal reception from multi-antenna routers. - HIF Processing Loop Expansion: Doubled
HifTxLoopto 32 andOsTxLoopto 16 for higher batch processing under sustained network load.
Removed
- Redundant
wlan-tune.servicesystemd unit file (now completely handled natively by udev).