Skip to content

Per-kernel driver fixes round 4: kernel 6.16/6.18 green for all 8 drivers#53

Merged
EmbeddedAndroid merged 1 commit into
masterfrom
kernel-6.16-6.18-fixes
May 14, 2026
Merged

Per-kernel driver fixes round 4: kernel 6.16/6.18 green for all 8 drivers#53
EmbeddedAndroid merged 1 commit into
masterfrom
kernel-6.16-6.18-fixes

Conversation

@EmbeddedAndroid
Copy link
Copy Markdown
Owner

Fourth pass of per-kernel-version maintenance. Closes the kernel 6.16 (whinlatter) and 6.18 (wrynose) gaps surfaced by the nightly compile matrix; the native (driver, kernel) compile matrix is now 40 / 40 green.

Three new EmbeddedAndroid forks were created for drivers where the upstream is either stuck on the legacy compat (rtl8723bu / rtl8723du / 8814au already had forks) or has unfixed regressions in tip-of-branch:

  • EmbeddedAndroid/8812au-20210820 (from morrownr 9704072d)
  • EmbeddedAndroid/8821au-20210708 (from morrownr 250cdad)
  • EmbeddedAndroid/88x2bu-20210702 (from morrownr fe48647)

Shared patch set across all forks for this round:

  • Makefile + hal/phydm/phydm.mk: rename EXTRA_CFLAGS to ccflags-y and switch $(src) to $(M) for the include search paths. Kernel 6.16 dropped EXTRA_CFLAGS handling in the external-module build path, so without this the -I/include flags get silently dropped and #include <drv_types.h> + #include "../../hal/phydm/phydm_precomp.h" both stop resolving.
  • include/osdep_service_linux.h: kernel 6.16 compat shim mapping del_timer / del_timer_sync / from_timer onto timer_delete / timer_delete_sync / timer_container_of (the old spellings are gone in 6.16).
  • core/crypto/sha256.{c,h} + core/crypto/sha256-prf.c (8812au, 8821au) and core/rtw_security.c (rtl8723bu): rename sha256_init / hmac_sha256 / hmac_sha256_vector / hmac_sha256_kdf / sha256_prf / sha256_prf_bits / tls_prf_sha256 with rtw_ prefix. Kernel 6.18 added these symbols to its crypto subsystem; identically-named driver-local exports were colliding.
  • os_dep/[linux/]ioctl_cfg80211.c: add int radio_idx parameter to set_wiphy_params / set_tx_power / get_tx_power callbacks on kernel >= 6.17 (88x2bu had a 6.18 guard upstream; corrected to 6.17 where it actually landed).

Native compile matrix at this PR's SRCREVs:

Driver 6.6 6.12 6.14 6.16 6.18
rtl8192eu OK OK OK OK OK
rtl8723bu OK OK OK OK OK
rtl8723du OK OK OK OK OK
rtl8812au OK OK OK OK OK
rtl8814au OK OK OK OK OK
rtl8821au OK OK OK OK OK
rtl8821cu OK OK OK OK OK
rtl88x2bu OK OK OK OK OK

Round 4 of per-kernel maintenance. Brings every driver in the
layer green on linux 6.16 and 6.18 (in addition to the existing
6.6 / 6.12 / 6.14 coverage). The native compile matrix is now
8 drivers x 5 kernels, 40 / 40 OK.

Three new EmbeddedAndroid forks were created for drivers where
upstream is either stuck (morrownr regressions) or unmaintained:

- EmbeddedAndroid/8812au-20210820 (from morrownr 9704072d)
- EmbeddedAndroid/8821au-20210708 (from morrownr 250cdad)
- EmbeddedAndroid/88x2bu-20210702 (from morrownr fe48647)

The shared patch set across these forks plus the existing
rtl8723bu / rtl8723du / 8814au forks:

- Makefile: EXTRA_CFLAGS -> ccflags-y and $(src) -> $(M); kernel
  6.16 dropped EXTRA_CFLAGS handling in the external-module build
  path so all -I/include search paths were silently dropped.
- hal/phydm/phydm.mk where present: same migration; otherwise
  #include "../../hal/phydm/phydm_precomp.h" stops resolving.
- include/osdep_service_linux.h: kernel 6.16 compat shim mapping
  del_timer / del_timer_sync / from_timer onto the new
  timer_delete / timer_delete_sync / timer_container_of names.
- core/rtw_security.c (rtl8723bu) and core/crypto/sha256.* (8812au,
  8821au): rename sha256_init / hmac_sha256 / sha256_prf and
  friends with rtw_ prefix to avoid kernel 6.18 crypto symbol
  clashes.
- os_dep/[linux/]ioctl_cfg80211.c: add int radio_idx parameter to
  set_wiphy_params, set_tx_power and get_tx_power on kernel >= 6.17.
@EmbeddedAndroid EmbeddedAndroid merged commit cc3b71b into master May 14, 2026
6 checks passed
@EmbeddedAndroid EmbeddedAndroid deleted the kernel-6.16-6.18-fixes branch May 14, 2026 06:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant