ARM开发板上交叉编译usb转串口驱动

问题

这两天为了做gps和arm的通讯,不得不捣鼓这个东东。开发板是创维特jx2410,usb转串口线的芯片是pl2303。还好是这个芯片,让我没费多少力气,就达成了目的。因为linux对它已经支持了,我们只要编译、加载它的驱动就ok了。

驱动源码

一般来说USB转串口的驱动已经集成在内核中,我们无需下载,只需要在编译时进行一些配置即可.
因此在编译之前我们需要确认自己的内核中有没有USB转串口的驱动.
usb转串口的驱动位于内核源码根目录下/drivers/usb/serial

ARM开发板上交叉编译usb转串口驱动_第1张图片
主要的源码包括usb-serial.c, option.c
针对不同的芯片还有cp210x.cpl2303.c
例如在我们本例中使用的就是pl2303

内核配置

使用make menuconfig进行配置

主要配置信息如下

usb support

USB Serial Converter Surpport相关的选项。

USB Serial Converter Surpport这个配置成M

然后usb generic serial driver选中,
usb prolific 2303 single port serial driver配成M。

具体配置如下图所示
首先打开menuconfig,进入Device Drivers驱动配置页面

进入usb support USB驱动配置页面主要配置信息如下
usb support
ARM开发板上交叉编译usb转串口驱动_第2张图片

选择USB Serial Converter Surpport相关的选项。

ARM开发板上交叉编译usb转串口驱动_第3张图片

选中USB Serial Converter Surpport
usb generic serial driver
ARM开发板上交叉编译usb转串口驱动_第4张图片

最后选择对应的芯片,注意这里选择为M,将驱动编译成模块,动态加载

编译内核和驱动模块

make zImage
ARM开发板上交叉编译usb转串口驱动_第5张图片
make modules

加载驱动

最后在源码目录下pl2303.ko 就是我们需要的驱动,在板子上直接insmod即可

ARM开发板上交叉编译usb转串口驱动_第6张图片

你可能感兴趣的:(开发,ARM,交叉编译)