ZYNQ系列(十一)ZYNQ 使用RS9900 USB转网口
第一章 Petalinux创建工程
第二章 Petalinux-config配置说明
第三章 QSPI自启动工程
第四章 将文件打包进文件系统
第五章 将文件打包进文件系统
第六章 ZYNQ下使用CMAKE创建APP工程
第七章 ZYNQ下使用CMAKE创建QT工程
第八章 ZYNQ下使用BOA
第九章 ZYNQ开机的一些配置
第十章 ZYNQ使用linux自带的按键驱动程序
第十一章 ZYNQ 使用RS9900 USB转网口
文章目录
- ZYNQ系列(十一)ZYNQ 使用RS9900 USB转网口
- 前言
- USB中CDC-ECM的了解和配置
- Ethernet Networking Control Model
- 实现
- 验证
前言
SR9900是一个高集成度、超低功耗、单芯片USB2.0转10/100M以太网控制电路。为各类应用增加低成本、小型封装、即插即用的快速以太网功能,可用于台式电脑、笔计本电脑、超便携式电脑、平板电脑、托架/端口复制器/扩展坞、游戏机、智能家居及任何有USB接口的嵌入式设备。
USB中CDC-ECM的了解和配置
USB中典型类及子类:
Ethernet Networking Control Model
以太网控制模型是用在主从设备间的以太网帧数据的交换。通信类接口用于配置和管理以太网程序,程序中包括的“以太网控制模型”子类码是通信类接口描写叙述定义。
数据接口则用于在USB总线上交换USB数据包。这些USB数以的包封装了完整的以太网包。CRC校验和不能包括在以太网收发数据包中。
检验失败的帧数据不能再发送到主机。这意味着设备必须可以缓冲至少一个完整的以太网帧数据。
实现
-
在vivado工程中使能usb0.
-
Linux内核配置支持CDC-ECM:
Device Drivers --->[*] Network device support --->USB Network Adapters ---><*> Multi-purpose USB Networking Framework-*- CDC Ethernet support (smart devices such as cable modems)
-
在设备树中使能usb的驱动。
/ {model = "Zynq ALINX Development Board";compatible = "alinx,zynq-an0701", "xlnx,zynq-7000";usb_phy0: usb_phy@0 {compatible = "ulpi-phy";#phy-cells = <0>;reg = <0xe0002000 0x1000>;view-port = <0x0170>;drv-vbus;};};&usb0 { dr_mode = "host";usb-phy = <&usb_phy0>;};
验证
将重新生成的内核下入开发板,当接入usb转网口设备时,linux打印
usb 1-1: new high-speed USB device number 3 using ci_hdrccdc_ether 1-1:2.0 eth1: register 'cdc_ether' at usb-ci_hdrc.0-1, CDC Ethernet Device, 00:e0:99:00:05:af
证明完成,下一步
ifconfig eth1 192.168.x.xxx
配置网关,则在ifconfig中就可以看到eth1这个网口了。