0

こんにちは、usbtouchscreen.cをカーネルドライバにコンパイルする際にエラーが発生しました。usbtouchsreen.cファイルも投稿に添付しました。

 CC      drivers/input/touchscreen/usbtouchscreen.o
drivers/input/touchscreen/usbtouchscreen.c: In function 'usbtouch_free_buffers':
drivers/input/touchscreen/usbtouchscreen.c:856: error: implicit declaration of function 'usb_buffer_free'
drivers/input/touchscreen/usbtouchscreen.c: In function 'usbtouch_probe':
drivers/input/touchscreen/usbtouchscreen.c:890: error: implicit declaration of function 'usb_buffer_alloc'
drivers/input/touchscreen/usbtouchscreen.c:891: warning: assignment makes pointer from integer without a cast
make[3]: *** [drivers/input/touchscreen/usbtouchscreen.o] Error 1
make[2]: *** [drivers/input/touchscreen] Error 2
make[1]: *** [drivers/input] Error 2
make: *** [drivers] Error 2

私はここにソースを含めました:http://pastebin.com/GTsic7Bg

4

1 に答える 1

1

あなたのドライバーはかなり古いものですか (またはおそらく古いカーネル用ですか)? おそらく、この名前変更を見てみたいと思うでしょう:

https://lkml.org/lkml/2010/4/12/132

少なくとも最新のカーネルにあるようです:

http://lxr.linux.no/linux+ */drivers/usb/core/usb.c#L698

実際には 2.6.34 かそこらに入ったようです。

于 2012-12-26T21:50:57.817 に答える