我是靠谱客的博主 明亮小土豆,最近开发中收集的这篇文章主要介绍MT7628 OpenWRT21 SIM8202驱动ppp拨号rndis拨号1、模块USB设备概述2、驱动调试使用场景3、USB串口驱动添加4、USB网口驱动调试 5、PPP拨号6、rndis拨号,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1、模块USB设备概述

使用MT7628通过USB连接SIM8202。SIM8202的VID是0x1e0e,PID9011。添加驱动后USB描述如下:

2、驱动调试使用场景

        1、PPP拨号:只需要配置 USB 转串口的驱动就 足够了。模块的 USB 设备中包含 2 个虚拟串口,其中 interface number 1 的虚 拟串口用可以用来 PPP 拨号,这个串口也可以发送 AT 命令。

        2、NDIS拨号:不但要配 置 USB 转串口的驱动,也要配置 USB 转网卡的驱动。

3、USB串口驱动添加

        1、usb serial的内核配置支持确保

CONFIG_USB_SERIAL=y
CONFIG_USB_SERIAL_WWAN=y
CONFIG_USB_SERIAL_OPTION=y

        2、增加VID/PID并跳过interface 2~5

{kernel}/drivers/usb/serial/option.c中添加VID、PID

方法一:       

#define SIMCOM_SIM8200_VID 0x05C6 
#define SIMCOM_SIM8200_PID 0x90DB

static const struct usb_device_id option_ids[] = {
#if 1
{USB_DEVICE(SIMCOM_SIM8200_VID, SIMCOM_SIM8200_PID), 
.driver_info =  RSVD(2) | RSVD(3) | RSVD(4) | RSVD(5)
}, 
#endif

方法二:

        添加PID/VID

#define SIMCOM_SIM8200_VID 0x05C6 
#define SIMCOM_SIM8200_PID 0x90DB

static const struct usb_device_id option_ids[] = {

#if 1
{USB_DEVICE(SIMCOM_SIM8200_VID, SIMCOM_SIM8200_PID)}, 
#endif

        过滤掉interface 2

    if (serial->dev->descriptor.idVendor == SIMCOM_SIM8200_VID && 
         serial->dev->descriptor.idProduct == SIMCOM_SIM8200_PID && 
         (serial->interface->cur_altsetting->desc.bInterfaceNumber == 2 )|| 
        (serial->interface->cur_altsetting->desc.bInterfaceNumber == 3 ) || 
        (serial->interface->cur_altsetting->desc.bInterfaceNumber == 4 ) || 
        (serial->interface->cur_altsetting->desc.bInterfaceNumber == 5 )) 
             return -ENODEV; 
	/* Store the device flags so we can use them during attach. */
	usb_set_serial_data(serial, (void *)device_flags);

	return 0;

编译后,内核开机找到模块会打印相关信息

/dev/ttyUSB0、/dev/ttyUSB1就会生成, 可以通过这些设备发送AT指令或者PPP拨号

4、USB网口驱动调试

        首先需将这个配置项打开

CONFIG_USBNET=y

将提供的qmi_wwan_simcom.c放在 drivers/net/usb 目录下,并且修改同目录的Makefile

obj-$(CONFIG_USB_USBNET)	+= usbnet.o qmi_wwan_simcom.o

驱动编译到内核后,开机会打印以下信息

 5、PPP拨号

进入路由器后台Network->Interface->Add interface,配置如下

 防火墙改到wan

在控制台ifconfig会看到多一个接口

6、rndis拨号

需要在openwrt选中rndis-host,将SIM8200切换到rndis模式,通过AT指令

AT+SIMCOMATI
AT+CSQ
AT+CPSI?
AT+CNMP=2
AT+CUSBCFG=USBID,1E0E,9011

重启路由器内核会打印如下信息

 进入路由器后台Network->Interface->Add interface,配置如下

更改防火墙到wan

进入控制台输入ifconfig

最后

以上就是明亮小土豆为你收集整理的MT7628 OpenWRT21 SIM8202驱动ppp拨号rndis拨号1、模块USB设备概述2、驱动调试使用场景3、USB串口驱动添加4、USB网口驱动调试 5、PPP拨号6、rndis拨号的全部内容,希望文章能够帮你解决MT7628 OpenWRT21 SIM8202驱动ppp拨号rndis拨号1、模块USB设备概述2、驱动调试使用场景3、USB串口驱动添加4、USB网口驱动调试 5、PPP拨号6、rndis拨号所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(76)

评论列表共有 0 条评论

立即
投稿
返回
顶部