Greetings,
because I want to test IPFire (Mini Appliance) with more recent wifi-modules (also Qualcomm Atheros Chipsets), I need to patch the ath11k and ath12k driver within the linux-kernel. The patched versions of the drivers are already part of more recent stable linux-kernels like 6.8 or 6.9 but not of the longterm 6.6 IPFire uses for obvious reasons.
The patch is necessary because of the limited MSI vectors of the Mini Appliance or more specific the well aged AMD-based architecture.
I tried it with the patch files from patchwork.kernel.org for ath11k
and ath12k
or version 2
as well as created some own patchfiles with “diff -Naur” (between the old and new “ath11k”-folder and the old and new “ath12k”-folder respectively, within linux-kernel/drivers/net/wireless/ath/)
I copied the patchfile to /src/patches/linux/ in the IPFire source structure and made an entry in the linux-lfs.
The patching itself works without any problems but at the near end, the compilation fails when the linux kernel is about to be built (stage2 at the very end, just before building the installer).
The _build.ipfire.log just spits out
make[3]: *** [scripts/Makefile.build:480: drivers] Error 2
make[2]: *** [/usr/src/linux-6.6.32/Makefile:1913: .] Error 2
make[1]: *** [Makefile:234: ___sub-make] Error 2
make[1]:Leaving directory '/usr/src/linux-6.6.32'
make: *** [linux:143: /usr/src/log/linux-6.6.32-ipfire] Error 2
As far as I understand (I’m not a pro, not even a semi) the output is hierarchic (make[1] fails because of make[2], which fails because of make[3]) and it points to the files and lines where the error occures.
make[3] → linux-kernel/scripts/Makefile.build line “480” → with reference to the “drivers”-subfolder
make[2] → linux-kernel/Makefile line “1913” → with reference to the linux-kernel-folder itself
make[1] → I don’t understand
and the last “make” → I guess it points to the linux-lfs (line 143 is where the patch-file is referenced).
Unfortunately, I cannot find any further information about why specifially the build failes (what file or function in a file is causing the process to break).
As Build Environment I use IPFire 186 itself (not on the APU-Board, but on a Lenovo Thinkpad) and without the patched ath*k-folders it works just fine.
Any ideas for a motivated non-programmer?
Greetings
Alex