当我尝试为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
这里有什么问题?
答案 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设备的正确串行通信。