I tried to compile a module to Android Dev Phone 1. I tested it with a sample hello module. I used the kernel source 2.6.25 and cross compile toolchain arm-eabi-4.2.1. Such as:
CROSS_COMPILE=.../prebult/linux-x86/toolchain/arm-eabi-4.2.1/bin/arm- eabi- I added the additional string to the extraversion variable at the beginning of Makefile. Then I recompiled the module and called the command "modinfo hello.ko", it showed as "vermagic: 2.6.25-01843- gfea26b0 mod_unload ARMv5". Then I copied the hello.ko into the phone. But when I used the following insmod command: "./busybox insmod hello.ko" I got an error message: " insmod: cannot insert 'hello.ko': invalid module format (-1): Exec format error" Then I used dmesg, it showed: " hello: version magic '2.6.25-01843- gfea26b0 mod_unload ARMv5 ' should be '2.6.25-01843-gfea26b0 preempt mod_unload ARMv6". What is the "preempt mod_unload ARMv6"? How to change from ARMv5 to ARMv6? How to add the "preempt" version. By the way, when I called " cat /proc/version " for the phone, it showed as " Linux version 2.6.25-01843-gfea26b0 (android- bu...@apa27.mtv.corp.google.com) (gcc version 4.2.1) #6 PREEMPT Mon Oct 6 14:13:36 PDT 2008" How to set "#6 PREEMPT" ? Thank you for your help in advance. Best Regards, Jeff --~--~---------~--~----~------------~-------~--~----~ unsubscribe: android-kernel+unsubscr...@googlegroups.com website: http://groups.google.com/group/android-kernel -~----------~----~----~----~------~----~------~--~---