Construindo o módulo do kernel para Android
Eu preciso adicionar o módulo FTDI USB ao kernel Android (Android 2.3.1, Linux 2.6.32), então eu peguei o kernel 2.6.32 e tentei construir o módulo:
<code>make modules ARCH=arm CROSS_COMPILE=arm-none-eabi- </code>
Mas quando tentei fazer 'insmod ftdi_sio.ko', a mensagem de erro foi
<code>insmod: init_module 'ftdi_sio.ko' failed (Exec format error) </code>
Na saída do dmesg eu encontrei este
<code>ftdi_sio: version magic '2.6.32.27 preempt mod_unload ARMv5 ' should be '2.6.32.27 preempt mod_unload ARMv7 ' </code>
Eu tentei adicionar sinalizador 'armv7-a' (como eu li em documentos Android NDK)
<code>make modules ARCH=arm CROSS_COMPILE=arm-linux-androideabi- CFLAGS='-march=armv7-a -mfloat-abi=softfp' </code>
Além disso, eu tentei seguir cross-compiladores: arm-none-eabi-, arm-eabi-, arm-linux-android-eabi
Toda vez que o resultado foi o mesmo - ARMv5 na versão mágica. Como posso construir o módulo para o ARMv7?