0

当我尝试为我的 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

这里有什么问题?

4

2 回答 2

1

是的 - Silicon Labs 网站上的驱动程序仅作为示例。

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

于 2013-07-19T21:25:52.470 回答
1

我相信答案与这篇文章有关:USB Driver Compilation Error

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

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

于 2013-07-09T19:54:56.167 回答