USB和Ethernet协议了解与原理图分析

前言

板载硬件支持

iTop4412 开发板SOC采用Exynos4412,是一款比较成熟,性能很强的SOC。核心板板载USB3503,引出高性能HSIC,实现2路USB HOST输出。本专题主要是在Uboot中驱动USB Device - DM9621 (Davicom DM96xx USB 10/100 Ethernet),下面会简单介绍下硬件背景,怎么去初始化芯片。

说明

既然DM9621为USB转以太网的芯片,那么少不了会涉及到USB总线的相关操作,也会涉及到以太网协议的相关操作,这里需要先去阅读下相关的资料,博主就不在这里班门弄斧了,直接贴出写的比较好的博客文章。如侵权,请联系删除。

原理图分析

Exynos4412 (USB 2.0 Host Controller)

Exynos4412 SOC内部集成了USB 2.0的主机控制器,默认Uboot是不支持USB功能的,主机驱动都是三星官方提供的,只需要我们做一定配置,编译进去便可支持。下面为功能块图,详细细节请查阅手册。
USB系统组成图

USB3503 (USB HUB)

核心板板载一个USB HUB IC,也就是USB3503,与SOC和DM9621直接相连。因其使用和配置简单,我们只需要将其CTL pin进行相应的IO操作,便可使其正常工作,连接起SOC和下端的DM9621,主要的原理图如下。
USB3503原理图

DM9621 (USB Device)

最后是Davicom DM9621 USB转Ethernet网卡芯片,控制与数据传输都是通过USB总线。这里需要操作CTL pin去使能该芯片,再做相应的寄存器配置,便可正常驱动该芯片。通过USB总线与SOC进行通信,Uboot有封装完善的USB接口,非常方便。移植成功后,便可以使用Uboot的网络工具,如tftpboot, 进行相应的网络通信,下面为其主要的原理图。
在这里插入图片描述

移植步骤

看到这里,大家应该知道接下来的步骤了吧~ 步骤如下:

  • 移植USB Host Controller驱动
  • 使能USB3503 Hub
  • 移植DM9621驱动
  • 测试验证功能性

说明

由于前两项我们要编写的代码并不多,主机控制器驱动三星官方早已合并到Uboot主线中去了。接下来先简单的介绍一下DM_ETH模型吧,先把所需的知识体系搭建好,移植起来就非常的快。虽然博主一开始不是这么来的,那是因为没有人曾经这么详细的记录过~我就来做第一人吧,高手勿喷。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值