I have rebuilt the kernel on my Apalis iMX6 / Ixora adding the ath10k driver. When I boot, with a Silex SX-PCAEC wifi card I see the firmware is not loading.
ath10k: Could not fetch firmware file ‘firmware-2.bin’: -2
This is because I didn’t load the firmware yet (and I’m not sure how to). Is it simply a matter of copying the bin file to:
/lib/firmware/ath10k/QCA988X/hw2.0/firmware-2.bin on the target?
Yes, you can quite simply copy the firmware binary file to the proper firmware location (/lib/firmware/ath10k/...) on the rootfs. As for the firmware version, it’d be best to use the version of firmware requested by the driver (‘-2’). Although the newer firmware should work with the device, it may not be backward compatible with the older driver/kernel.
Follow the instructions to copy it to the proper firmware location [note: the firmware when downloaded with the above command may have the filename firmware-2.bin_10.1.467.3-1?raw=true]:
And finally the ideal approach is probably to backport a newer driver (and use along with a newer firmware). Unfortunately, this is a bit more work. And we’ll eventually release a 4.1 kernel for iMX6 which will anyway have a newer driver/firmware.
@Klonk, to use a backported kernel module, you’d probably want to go back to the original kernel. I don’t think it’s necessary, but you’d otherwise need to ensure the old module isn’t loaded.
I recommend backporting primarily because we don’t know what state this driver is in - generally a driver matures in later kernels, so backporting it would help ensure it’s maturity. However, it is a bit more work to go this route. Notice that the backport instructions I linked to are for native compilation. For cross-compiling, be sure to setup the cross environment to invoke the cross toolchain. You may also refer to our developer article about backporting.