LINUX.ORG.RU

Сборка модуля для андройда

 ,


1

1

Есть китайский девайс с андройдом, надо чтобы на нем заработал переходник с usb на ethernet, дрова под линукс есть. До этого собирал модулями дрова на десктопе. Собрал модуль под девайс

shell@android:/ $ uname -a                                                     
Linux localhost 2.6.34 #1 PREEMPT Wed Aug 1 19:07:04 HKT 2012 armv7l GNU/Linux
так:

  • Взял ядро linux-2.6.34.14 с kernel.org.
  • Скопировал туда .config с девайса. Сконфигурировал:
    make ARCH=arm CROSS_COMPILE=/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi- prepare
    make ARCH=arm CROSS_COMPILE=/opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi- module_prepare
    
  • Собрал модуль с этим ядром, Makefile:
    TARGET	= asix
    OBJS	= asix.o
    NDKTOOLCHAIN	= /opt/android-ndk/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/arm-linux-androideabi-
    KDIR	= kernel/
    
    PWD = $(shell pwd)
    
    obj-m      := $(TARGET).o
    
    default:
    	make -C $(KDIR) ARCH=arm CROSS_COMPILE=$(NDKTOOLCHAIN) SUBDIRS=$(PWD) modules
    
    clean:
    	$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) clean
    
    .PHONY: modules clean
    

Модуль не запускается:

shell@android:/system/lib/modules # modprobe asix                              
modprobe: 'modules/asix.ko': invalid module format
Объясните, пожалуйста, что не так и как починить?


Ответ на: комментарий от ziemin

Мой asix, два других с девайса:

file *ko
8192cu.ko: ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not stripped
asix.ko:   ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not stripped
mali.ko:   ELF 32-bit LSB relocatable, ARM, version 1 (SYSV), not stripped
Не понимаю. Объясните, пожалуйста, что имелось в виду.

di
() автор топика

андройда

Just die.

anonymous
()
Ответ на: комментарий от di

Должны полностью совпадать версия ядра и версия компилятора

Black_Shadow ★★★★★
()
Ответ на: комментарий от ziemin

Да, не получится. Спасибо, за помощь.

di
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.