Add RTL8812EU/RTL8822EU adapter support (untested on hardware)#104
Open
wkumik wants to merge 1 commit into
Open
Add RTL8812EU/RTL8822EU adapter support (untested on hardware)#104wkumik wants to merge 1 commit into
wkumik wants to merge 1 commit into
Conversation
Update the devourer submodule to current master, whose Jaguar3 backend supports the RTL8812EU/RTL8822EU (e.g. LB-LINK BL-M8812EU2) alongside the existing RTL8812AU family. The chip generation is auto-detected from the SYS_CFG2 chip-id at plug-in. Port the native layer to the new IRtlDevice API: - bring-up is InitWrite + StartRxLoop instead of the blocking Init; on Jaguar3 this keeps RX open across the TX bring-up (cfg.rx.enable_with_tx) and starts the coex runtime thread that sustained TX needs, and on Jaguar1 it matches the old Init exactly - stop goes through StopRxLoop()/Stop() instead of the should_stop flag - drop the manual libusb event thread (devourer pumps its own events) - point the driver's per-adapter lock at the app files dir (no /tmp on Android) and give the driver a real Logger (lands in logcat under the "devourer" tag) - TxFrame takes the chip-agnostic IRtlDevice* Add the 0bda:a81a (RTL8812EU) and 0bda:a82a / 0bda:e822 (RTL8822EU) USB IDs to the device filter. Compile-tested only (arm64-v8a + armeabi-v7a); not yet verified on RTL8812EU or RTL8812AU hardware. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01M1hdzm5Fs8XKS1AqymRm7r
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Warning
What
Adds support for RTL8812EU / RTL8822EU adapters (e.g. the LB-LINK BL-M8812EU2), the widely available successor to the EOL'd RTL8812AU, by updating the
devourersubmodule to current master and porting the native layer to its new multi-generationIRtlDeviceAPI.Upstream devourer now dispatches on the hardware chip-id (
SYS_CFG2) at plug-in: RTL8812AU-family adapters take the Jaguar1 path (same code lineage as before), RTL8812EU/8822EU take the Jaguar3 path. This build compiles in Jaguar1 + Jaguar3-8822E support.Changes
73f1cb4).IRtlDevice:InitWrite+StartRxLoopinstead of the old blockingInit. On Jaguar3 this is required for TX+RX on one USB handle (cfg.rx.enable_with_txmust be declared before bring-up) and it starts the coex runtime thread without which the 8822E silences its antenna during sustained TX. On Jaguar1,InitWrite+StartRxLoopis exactly whatInitdid internally, so 8812AU behavior is unchanged.StopRxLoop()+Stop()(clean chip power-down) instead of poking the removedshould_stopfield.libusb_handle_eventsthread is dropped — devourer's RX loop pumps events itself./tmp).Logger, which lands in logcat under thedevourertag.IRtlDevice*.0BDA:A81A(RTL8812EU),0BDA:A82A/0BDA:E822(RTL8822EU).Notes for testers
adb logcat -s devourershows the bring-up; expectCreating RtlJaguar3Device (PID 0xa81a, chip-id 0x17)for an 8812EU andCreating RtlJaguarDevicefor an 8812AU.SetTxPowersemantics changed upstream from a pre-efuse fallback to a real flat TXAGC override on all generations), channel/bandwidth switching, and adapter hot-replug.🤖 Generated with Claude Code
https://claude.ai/code/session_01M1hdzm5Fs8XKS1AqymRm7r