And since CONFIG_SPARD_WLAN_SUPPORT=y is set as well, it isn’t needed to do the fix in the Makefile either, as long as you do not disable it during kernel configuration. That option does not actually enable the Spreadtrum/UNISOC driver, which is not even part of that kernel tree. It only toggles the build of the AIC8800 driver, as a weird copy&paste mistake.
But then enable_extension “radxa-aic8800” implies the removal of the in-tree driver when building actual images, without properly disabling it in the config. I didn’t know because we build the kernel package only with the ./compile.sh kernel command, where extensions are not applied.
No idea why Armbian is holding on that DKMS extension in the first place. It is trivial to moreless copy it as in-tree driver where missing, saving users from all the DKMS hassle and overhead. And if it needs an update for a recent Linux version (like currently for Linux 7.1), the DKMS build fails as well, leaving users in a fragile mid-upgrade situation that is hard to solve without some APT+dpkg knowledge, while it would be recognized quickly through CI, to either fix or disable the driver temporarily.
As far as I understand, AIC8800 sources used by the Rockchip kernel have a long running error preventing the driver from being built, that’s why armbian builds it as an external module
Our vendor kernel builds contain the driver. I think it is the other way round: The extension removes the in-tree driver, probably so that it does not conflict. I remember DKMS needs to be forced to build drivers if they are present in-tree already.
If there was any issues with the sources, they could remove the in-tree driver there, or fix it, or copy&paste Radxa’s sources (with like 3 line changes needed only, this is how we do for our mainline Linux builds), which are the ones used for the DKMS extension.
EDIT: Armbian’s own vendor-rk35xx kernel builds contain the driver as well: Index of /apt/pool/main/l/linux-6.1.115/
Only seeed ones do not, since one needs to pass the reComputer BOARD= target, which applies the extension.
Because you reconfigure the kernel config, which most likely removes CONFIG_SPARD_WLAN_SUPPORT in any case, since it does not exist in any Kconfig. Skip KERNEL_CONFIGURE=yes, and it should remain. Otherwise, indeed, you need to fix that bug. Probably this is also what @urostor remembers. But it applies only when the kernel is reconfigured. And the fix is trivial, patch suggested already.