I am working on Cortex-A9 and M3 of ARM. I am using gcc 4.4.0, uClibc 0.9.30.1 and binutils 2.19.1 and building it for Cortex-m3. While building for m3 if I specify arch as armv7-m alonmg with cpu cortex-m3, the build fails. Using the same set, if I build the toolchain for Cortex-A9 (cpu=cortex-a9 and arch=armv7-a), the Linux kernel (2.6.28.9) and rootfs built with this toolchain works fine. But if I build a loadable kernel module, when I insmod the module it fails and gives an error as "undefined relocation: 43" from the Linux kernel. I changed to gcc 4.3.3 and built a toolchain for cortex-a8 as that was the nearest one supported, the LKM work fine. Is there any change in way LKM should be built with gcc 4.4.0? Any suggestion will be appreciated. Regards,