AM335X的USB otg网卡(RNDIS /Ethernet Gadget)调试
重新编译内核(2.6.29)
2.6.29内核
Device Drivers ---> USB support ---> USB Gadget Support --->
其中 USB Peripheral Controller 选 S3C2410 USB Device Controller
然后再选一个内核自带的Gadget驱动程序来做演示,这里就选 Ethernet Gadget (with CDC Ethernet support)
因为这个驱动不需要传入参数,所以给个Y而不是M,省事

make之后烧写zImage到mini1440
等到Linux完全启动之后,拔下usb slave口的接头再插上,就会弹出发现(RNDIS /Ethernet Gadget)设备的信息
只是这个RNDIS 驱动实在难搞,据说在 activesync 里有,但是我装了没有反应
只有自己下载了微软的RNDIS USB kit 2005,抽取出驱动并自己改了模板里的inf文件才算安装成功
我改好的RNDIS网卡驱动下载
http://download.csdn.net/source/1742242
inf文件里只改了vid和pid,这个可以从设备管理器里查到(即使还没有驱动程序)

这里vid是0525 pid a4a2
后来想想完全可以吧制造商什么的也改了,那应该很好玩
然后就多了一个网络连接,设置为ip 192.168.1.2 网关192.168.1.1 子网掩码255.255.255.0
此时这个网络连接还是断开状态
dnw连接开发板,ifconfig usb0 192.168.1.1 ,就会发现网络联通了 (kangear注:测试OK)
互ping可以,还可以http://192.168.1.1访问开发板里内置的web服务器 (kangear注:测试OK)
至于使用开发板让PC上网,这个应该是很多wm手机具备的功能,RNDIS我想就是为了这个目的设计的。
可以mini2440里没有iptable什么复杂的包转发程序,将usb0通过eth0实现转发,我还不能自己添加,只能到此为止了。
alex@alex-desktop:~$ ftp 192.168.0.202
Connected to 192.168.0.202.
220 FriendlyARM FTP server (Version 6.4/OpenBSD/Linux-ftpd-0.17) ready.
Name (192.168.0.202:alex):
331 Password required for alex.
Password:
530 Login incorrect.
Login failed.
ftp>
以下是转载的关键部分:
最后还有一个问题,就是开发板有网卡,还模拟USB为网卡的情况,一定要保证usb虚拟的网卡和WINDOWS上USB网卡在同一个IP段,并且不能和开发板原先的网卡的IP段一样,要不累死你都PING不到~
着是我网卡设置的情况
windows
usb网卡
IP:192.168.2.50 掩码:255.255.255.0 网关:(这个随意,看个人喜好,如果设置网关最好开发板也设置)192.168.2.1
正常网卡
IP:192.168.1.235 掩码:255.255.255.0 网关:192.168.1.1
开发板
usb网卡
IP:192.168.2.70 掩码:255.255.255.0 网关:192.168.2.1
正常网卡
IP:192.168.1.70 掩码:255.255.255.0 网关:192.168.1.1
查看开发板网关
route -n
设置开发板网关
route add default gw 192.168.2.1
这样之后应该就能和WINDOWS PING通了~
kangear的测试结果:
- [root@localhost 桌面]# ftp 192.168.2.230
- Connected to 192.168.2.230 (192.168.2.230).
- 220 FriendlyARM FTP server (Version 6.4/OpenBSD/Linux-ftpd-0.17) ready.
- Name (192.168.2.230:root): plg
- 331 Password required for plg.
- Password:
- 230 User plg logged in.
- Remote system type is UNIX.
- Using binary mode to transfer files.
- ftp>
- ftp>
AM335X的USB otg网卡(RNDIS /Ethernet Gadget)调试的更多相关文章
- imx6 usb otg config 配置
imx6 usb的host和slave配置,配置之后,安装gadget模块,就能够在host和slave之间切换. 参考文档: i.MX 6Dual/6Quad Linux Reference Man ...
- USB OTG to PC USB API简介
本API分为四部分:Linux或Android内核 (主要是gadget驱动).linux端API及其DEMO.Windows 驱动.Windows API及其Demo. 一.linux.Androi ...
- USB otg 学习笔记
1 USB OTG的工作原理 OTG补充规范对USB2.0的最重要的扩展是其更具节能性的电源管理和允许设备以主机和外设两种形式工作.OTG有两种设备类型:两用OTG设备(Dualrole device ...
- USB OTG
OTG检测的原理是:USB OTG标准在完全兼容USB2.0标准的基础上,增添了电源管理(节省功耗)功能,它允许设备既可作为主机,也可作为外设操作(两用OTG).USB OTG技术可实现没有主机时设备 ...
- USB OTG介绍(转载)
1. 概要 OTG设备使用插头中的ID引脚来区分A/B Device,ID接地被称作为A-Device,为连接时候的USB Host,A-Device始终为总线提供电力,ID悬空被称作为B-Devic ...
- USB OTG学习
1. 概要 OTG设备使用插头中的ID引脚来区分A/B Device,ID接地被称作为A-Device,为连接时候的USB Host,A-Device始终为总线提供电力,ID悬空被称作为B-Devic ...
- Android技术宅:自制USB OTG数据线
作为一名Android技术宅,USB OTG是你必须了解的,所谓USB OTG就是你可以利用手机或平板上用来充电.与电脑传输数据的micro USB接口来连接其他USB外设,如游戏手柄.鼠标.键盘.U ...
- USB OTG ID 检测原理
OTG 检测的原理是: USB OTG标准在完全兼容USB2.0标准的基础上,增添了电源管理(节省功耗)功能,它允许设备既可作为主机,也可作为外设操作(两用OTG).USB OTG技术可实现没有主机时 ...
- 详述USB OTG发展及协议标准
USB On-The-Go 扩大了USB 的应用领域,将USB 从传统的PC 与外设通讯的模式,扩展到移动电子和嵌入式领域中,抛开主机PC,实现通常的外设与外设之间点对点(Point to Point ...
随机推荐
- 08_Python编码与解码
一.编码的由来 因为计算机只能处理010101二进制数据,如果要处理文本,图像,视频等,需要我们把数据转换成01010二进制格式才能被计算机处理 最先出现的是ASCII,用8位一个字节来表示,成为单字 ...
- 洛谷 [P2825] 游戏
二分图匹配的匈牙利算法 这道题,如果没有硬石头的限制,那么就与ZJOI 2007矩阵游戏完全一样,但是如果有了硬石头的限制,我们就不能将整行整列作为元素建图,我们可以以硬石头为边界,将每一行.每一列分 ...
- AJAX面试题都在这里
AJAX常见面试题 什么是AJAX,为什么要使用Ajax AJAX是"Asynchronous JavaScript and XML"的缩写.他是指一种创建交互式网页应用的网页开发 ...
- jQuery源码研究——怎么看源码
废话 这几天有想看源码的想法,于是就开始了源码的研究,经过几天的摸索发现看源码还是有点技巧在里面的,想着把这些东东写下来作为一个小总结. 在一个多月前我对Vue源码进行了一次研究,那时看源码的方式基本 ...
- 听说你开发.NET还在用VS,小哥哥给你推荐全平台的Rider
本文地址:http://www.cnblogs.com/likeli/p/8461010.html 前言 .NET平台的开发一直都只能使用Visual Studio来开发,自从dotnet core ...
- html中meta标签及用法理解
自己一直想成为高级前端开发工程师,而自学.奈何最近感觉自学收效甚微,一度迷茫. 不破不立,打算改变这样的状态. 春节后上班第一天,今年打算好好实现自己的前端梦想. 重新整理.总结前端技术. 废话,就不 ...
- Hive metastore表结构设计分析
今天总结下,Hive metastore的结构设计.什么是metadata呢,对于它的描述,可以理解为数据的数据,主要是描述数据的属性的信息.它是用来支持如存储位置.历史数据.资源查找.文件记录等功能 ...
- git添加本地仓库与远程仓库连接
在本地建立一个文件夹,需要与远程git仓库进行连接,具体方法: <1>首先进入所在文件目录执行: git init 初始化git,紧接着 git add . git commit -m ...
- Java中简单Http请求
1. 概述 在这篇快速教程中,我们将使用Java内置类HttpUrlConnection来实现一个Http请求. 2. HttpUrlConnection HttpUrlConnection类允许我们 ...
- Java GC分析记录
Java GC记录 近来.项目没有特别忙碌的时候,抽空看了下生产环境的项目运行状况,我们的项目一直运行速度不是很快,偶尔会出现卡顿的现象,这点给人的体验感觉也就不那么好了.先抛个测试环境截图(生产环境 ...