【NanoPi T2】 6.uboot gmac网卡驱动(2) - 寄存器介绍

1.mac控制器,phy芯片,rgmii协议
2.寄存器介绍
3.驱动源码解析
4.nanopi t2 移植rtl8211e网卡驱动(首发)

s5p4418 gmac概述

在这里插入图片描述
支持千兆速度,协议为RGMII。另外支持全双工,可编程控制的帧大小,MDIO主机管理接口,专用DMA控制器。图就不贴了。总架构图如下:
在这里插入图片描述
物理连接:
在这里插入图片描述

DMA相关寄存器

在这里插入图片描述
概括解释一下,可能有错

  • register 0:总线模式寄存器,包含了数据总线的一些设置,不详细解释
  • register 1:写入任何数据都可以启动DMA发送
  • register 2:写入任何数据启动DMA接收
  • register 3:DMA接收描述符,DMA使用这个描述符的信息进行批量数据传送,里面有状态标志和目的存放地址。
  • register 4:DMA发送描述符
  • register 5:状态寄存器,不解释每一位的详细含义,只读
  • register 6:操作模式寄存器
  • register 7:中断使能寄存器
  • register 8:丢帧和缓冲区溢出控制寄存器
  • register 18:当前发送描述符(由DMA再传送的时候更新这个寄存器的值)
  • register 19:当前接收描述符(由DMA再传送的时候更新这个寄存器的值)
  • register 20:当前发送缓冲区地址(由DMA再传送的时候更新这个寄存器的值,值来自发送描述符中的缓冲区地址)
  • register 21:当前接收缓冲区地址(由DMA再传送的时候更新这个寄存器的值,值来自发送描述符中的缓冲区地址)
mac控制器相关寄存器

在这里插入图片描述
挑几个关键的解释(可能会说错):

  • register 0:mac配置寄存器,很重要的一个配置寄存器,内容比较多,主要是配置了传输速度10M/100M/1000M、双工模式、链路使能、发送接收使能、Jabber、watchdog、CRC等等。
  • register 1:帧过滤,这个可以开启网卡的混淆模式
  • register 2:mac地址高32位
  • register 3:mac地址低32位
  • register 4:GMII管理接口,表示要访问的PHY寄存器的地址(读写PHY就靠这个)
  • register 5:GMII管理接口,读写的数据
  • register 16-17:需要过滤的mac地址
  • register 54:主要是状态寄存器,只读,调试的时候可以读这个寄存器看看
PHY:rtl8211e寄存器

在这里插入图片描述

  • register0:控制寄存器,有复位、loopback(回传,调试比较有用,发送的数据会发回来,验证MII接口的连通性)、速度设置(这里设置的速度不一定就是工作状态的速度,实际速度取决于PHY链路自动协商)、电源开关、双工模式。
  • register1:PHY状态寄存器,主要有当前工作速度、网口连接状态、Jabber Detect(超时)
  • register9-10、15:千兆状态标志,读取这个可以知道PHY是否工作在千兆模式,调整gmac速度予以匹配。
资源

rtl8211e芯片手册

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值