Hi Pavel,
Thank you for the response, but it doesn't really address the question. The fundamental issue is that the kernel version pre-installed on my SD card:
>root@FSL:~# uname -a
>Linux FSL 3.12.0+ #1 SMP Mon Dec 1 13:35:02 CST 2014 armv7l GNU/Linux
does not match with what's provided in the SDK:
>$ more Freescale-Linux-SDK-for-LS1021A-IOT-Rev2-v0.4-20150907-yocto.iso/meta-fsl-arm/recipes-kernel/linux/linux-ls1_3.12.bb
>...
>SRCREV = "aaa395f27e077f51c75c6aefc7bbec44732e9742"
>...
>$ cd Freescale-Linux-SDK-for-LS1021A-IOT-Rev2-v0.4-20150907-yocto.iso/sources/git2/sw-stash.freescale.net.scm.dnnpi.ls1-linux.git
>$ git show aaa395f27e077f51c75c6aefc7bbec44732e9742:Makefile
>VERSION = 3
>PATCHLEVEL = 12
>SUBLEVEL = 37
>...
Hence, 3.12.0 vs 3.12.37. Therefore, any kernel module built using the SDK cannot be loaded onto the system.
Anyway, to assist others, I've found a workaround for my issue:
>$ more Freescale-Linux-SDK-for-LS1021A-IOT-Rev2-v0.4-20150907-yocto.iso/meta-fsl-arm/recipes-kernel/linux/linux-ls1.inc
>...
>SRC_URI = "git://sw-stash.freescale.net/scm/dnnpi/ls1-linux.git;branch=LS1-SDK-Rev2.0;protocol=http"
>...
>$ cd Freescale-Linux-SDK-for-LS1021A-IOT-Rev2-v0.4-20150907-yocto.iso/sources/git2/sw-stash.freescale.net.scm.dnnpi.ls1-linux.git
>$ git branch -a
> LS1-HSSI
> LS1-IOT
> LS1-SDK
> LS1-SDK-Rev2.0
> LS1-SDK1.5
> ls1-dev
> ls1-emu
> ls1-emu-2.0
> ls1-emu2.0-rebase
>* master
You can see the kernel recipe extracts the LS1-SDK-Rev2.0 branch, which contains kernel 3.12.37. I explored the ls1-linux repository and found that at least the LS1-IOT and ls1-dev branches contain 3.12.0. To build my module, I:
- Checked out LS1-IOT
- Built the kernel
- Built my out-of-tree module against the resulting kernel
It is unlikely that the kernel resulting from (2) exactly matches what's on the SD card, but this was sufficient to build a compatible module which loads successfully.
It is frustrating that the provided SDK cannot reproduce the software shipping with this platform. In fact, the accompanying documentation never mentions fsl-image-rds, though I suspect this is what's present on my system as it serves a web page claiming "Firmware Freescale-RDS - ARM Cortex A7 V4.24"