Silabs Usb CP210x驱动程序错误

时间:2013-05-03 12:21:14

标签: linux makefile serial-port raspberry-pi uart

当我尝试为Silabs USB转UART桥安装驱动程序时遇到问题。

我从这里下载了驱动程序:http://www.silabs.com/products/mcu/Pages/USBtoUARTBridgeVCPDrivers.aspx

我正在尝试将其安装在我的带有内核3.6.11

的覆盆子中

在说明中我可以看到以下内容:

make (your cp2010x driver)
cp cp2010x.ko to /libmodules/<kernel>/kernel/driver/usb/serial
insmod /libmodules/<kernel>/kernel/driver/usb/serial/usbserial.ko
insmod xp2010x.ko

但是,当我尝试调用MAKE时出现此错误:

root@raspberrypi:/home/pi/Desktop/vcp/Linux1# make
make -C /lib/modules/3.6.11+/build M=/home/pi/Desktop/vcp/Linux1 modules
make[1]: Entering directory `/usr/src/linux'

  CC [M]  /home/pi/Desktop/vcp/Linux1/cp210x.o
/home/pi/Desktop/vcp/Linux1/cp210x.c:164:12: error: ´usb_serial_probe´ undeclared here (not in a function)

/home/pi/Desktop/vcp/Linux1/cp210x.c:165:16: error: ´usb_serial_disconnect´ undeclared here (not in a function)

/home/pi/Desktop/vcp/Linux1/cp210x.c: In function ´cp210x_init´:

/home/pi/Desktop/vcp/Linux1/cp210x.c:989:2: error: implicit declaration of function ´usb_serial_register´ [-Werror=implicit-function-declaration]

/home/pi/Desktop/vcp/Linux1/cp210x.c:996:3: error: implicit declaration of function ´usb_serial_deregister´ [-Werror=implicit-function-declaration]

cc1:某些警告被视为错误

make[2]: *** [/home/pi/Desktop/vcp/Linux1/cp210x.o] Error 1

make[1]: *** [_module_/home/pi/Desktop/vcp/Linux1] Error 2

make[1]: Leaving directory `/usr/src/linux'

make: *** [all] Error 2

这里有什么问题?

2 个答案:

答案 0 :(得分:1)

我认为答案与此帖有关:USB Driver Compilation Error

Linux内核中的USB串行驱动程序API似乎发生了变化,您正在编译的silabs驱动程序适用于较旧的内核。有一些数据结构已经改变,所以我认为必须修改silab驱动程序才能在linux 3.6.x及更高版本上运行。

自发布此问题以来,您是否取得了任何进展?

答案 1 :(得分:1)

是的 - Silicon Labs网站上的驱动程序就是一个例子。

这里推荐的路径是进入内核的源代码,并在那里获取驱动程序。或者,如果您可以执行'make menuconfig',则可以添加CP210x USB串行驱动程序以供分发。从3.x开始,内核是最新的,并保持所有CP210x设备的正确串行通信。