问题:移植spidriver时编译内核出现
ERROR: "s3c_gpio_setpull" [drivers/spi/spi_sam.ko] undefined!
ERROR: "s3c_gpio_cfgpin" [drivers/spi/spi_sam.ko] undefined!错误,请问如何解?
平台:s3c6410,Linux version 2.6.27,Android1.5
起因移植Samsung的SPIdriver spi_sam.c 和 spi_sam.h 过来时,将内核Meuconfig的SPIdriver配置成<M>,将要移植的spi_sam.c,spi_sam.h copy到/drivers/spi 下后,并在spi_sam.c 中添加#include <linux/module.h>
进行make
出现如下信息:
root@ubuntu:/usr/src/android-1.5# make
CHK include/linux/version.h
make[1]: `include/asm-arm/mach-types.h' is up to date.
CHK include/linux/utsrelease.h
CALL scripts/checksyscalls.sh
<stdin>:1097:2: warning: #warning syscall fadvise64 not implemented
<stdin>:1265:2: warning: #warning syscall migrate_pages not implemented
<stdin>:1321:2: warning: #warning syscall pselect6 not implemented
<stdin>:1325:2: warning: #warning syscall ppoll not implemented
<stdin>:1365:2: warning: #warning syscall epoll_pwait not implemented
CHK include/linux/compile.h
Kernel: arch/arm/boot/Image is ready
Kernel: arch/arm/boot/zImage is ready
Building modules, stage 2.
MODPOST 8 modules
ERROR: "s3c_gpio_setpull" [drivers/spi/spi_sam.ko] undefined!
ERROR: "s3c_gpio_cfgpin" [drivers/spi/spi_sam.ko] undefined!
make[1]: *** [__modpost] Error 1
make: *** [modules] Error 2
请问以上两个错误是什么原因?
其中s3c_gpio_setpull,s3c_gpio_cfgpin,都在gpio-config.c中定义(编译时生成了.o档),并添加了代码
EXPORT_SYMBOL_GPL(s3c_gpio_setpull);
EXPORT_SYMBOL_GPL(s3c_gpio_cfgpin);
请各位帮忙看看是什么问题,多谢,多谢啦~~
menuconfig:
--- SPI support
- Debug support for SPI drivers
*** SPI Master Controller Drivers ***
{M} Bitbanging SPI master
<M> Parallel port adapter for AVR Butterfly - (DEVELOPMENT)
<M> Parallel port adapter for LM70 eval board (DEVELOPMENT)
<M> S3C6410 SPI Driver
SPI Source Clock (PCLK) --->
*** SPI Protocol Masters ***
<M> SPI EEPROMs from most vendors
<M> User mode SPI device driver support
<M> Infineon TLE62X0 (for power switching)