Linux内核驱动之网络驱动(三)PHY寄存器分析_第1页
Linux内核驱动之网络驱动(三)PHY寄存器分析_第2页
Linux内核驱动之网络驱动(三)PHY寄存器分析_第3页
Linux内核驱动之网络驱动(三)PHY寄存器分析_第4页
Linux内核驱动之网络驱动(三)PHY寄存器分析_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

一一 PHY 简介简介 以太网 PHY 和 MAC 对应 OSI 模型的两个层 物理层和数据链路层 物理层的芯片称之为 PHY 以太网卡中数据链路层的芯片称之为 MAC 控制器 物理层物理层定义了数据传送与接收所需要的电与光信号 线路状态 时 钟基准 数据编码和电路等 并向数据链路层设备提供标准接口 RGMII GMII MII 数据链路层数据链路层则提供寻址机构 数据帧的构建 数据差错检查 传送 控制 向网络层 IP 层 提供标准的数据接口 二二 以太网以太网 PHY 芯片标准寄存器分析芯片标准寄存器分析 对于 PHY 标准寄存器 control register 和 status register 是最常 用的 下面是详细分析 Control Register BMCR bit15 reset bit 置 1 实现复位操作 复位后会导致外围管脚对 PHY 芯片的配 置失效同时该端口的控制 状态寄存器将恢复为默认值 需要重新 进行配置 复位过程中 bit15 保持为 1 复位完成后该位自动清零 bit14 loopback 主要用于调试以及故障诊断 bit13 speed selection LSB bit13 和 Bit6 两位联合实现对端口的速率控制功能 需要注 意的是 speed selection 只有在自动协商关闭的情况下才起作用 bit12 Auto Negotiation Enable 自动协商 AN 开关 置 1 表示打开自动协商功能 此时端 口的工作模式通过和对端 Link partner 进行 AN 来确定 必须注 意的是 对于 1000BASE T 接口 自动协商必须打开 bit11 Power Down 置 1 将进入低功耗模式 需要注意的是端口从 Power Down 模式恢复 需要复位端口以保证端口可靠的连接 bit10 Isolate 隔离开关 一般不用 bit9 Restart Auto Negotiation 重新启动自动协商 一般修改端口的自动协商能力信息 ANAR 后通过 bit9 置 1 重新启动自动协商来使端口按照新的配置 建立 link bit8 Duplex Mode 双工模式设置 只有在自动协商关闭的情况下才起作用 bit7 Collision Test 冲突信号 COL 测试开关 一般不使用 bit6 Speed Selection MSB bit13 和 Bit6 两位联合实现对端口的速率控制功能 当然只 有在自动协商关闭的情况下才起作用 1 0 1000 Mb s 0 1 100 Mb s 0 0 10 Mb s bit5 bit0 Reserved status register BMSR 该寄存器主要是用来描述 PHY 芯片的工作模式能力和当前 工作状态 bit15 100BASE T4 bit14 100BASE X Full Duplex bit13 100BASE X Half Duplex bit12 10 Mb s Full Duplex bit11 10 Mb s Half Duplex bit10 100BASE T2 Full Duplex bit9 100BASE T2 Half Duplex 寄存器中的 bit9 bit15 都是描述 PHY 芯片工作模式能力 1 表示具备该能力 0 表示不具备 bit8 Extended Status bit7 Reserved bit6 MF Preamble Suppression bit5 Auto Negotiation Complete bit5 1 表示自动协商进程已经成功结束 此时 PHY 芯片的其 他和 Link 状态相关的寄存器才是正确可靠的 bit4 Remote Fault bit4 1 表示连接对端 Link Partner 出错 一般会在其他寄 存 器 register16 31 中定义具体错误类型 bit3 Auto Negotiation Ability bit2 Link Status Link up 则该位为 1 0 则代表 Link down Link status 只有 在自动协商完成后才有效 bit1 Jabber Detect 100M 和 1000M 模式下没有意义 bit0 Extended Capability PHY Identifier Register 寄存器 2 和 3 存放 PHY 芯片的型号代码 由芯片商自行定义 一 般用来定义 PHY 芯片的型号和版本 Auto Negotiation Advertisement Register 寄存器 ANAR 是自动协商的能力通告寄存器 在 AN Enable 的前提下 端口根据该寄存器的相关配置与对端 Link partner 进 行自动协商 当 AN 配置为 Disable 状态的时候 寄存器 ANAR 的 配置不起作用 端口的工作模式由 control register 决定 尽管寄存器 1 status register 中也有端口工作模式能力的描述 但 status register 只是告诉开发人员该端口具有什么样的能力 ANAR 寄存器则根据 status register 进行相应的配置 bit15 Next Page 1 表示下一页是否也是通告能力寄存器 bit14 Reserved bit13 Remote Fault 1 表示是否传送远端错误信息 一般置 1 bit12 Reserved bit11 Asymmertic Pause 非对称暂停能力 bit10 Pause Capable bit9 是否通告 100BASE T4 能力 bit8 是否通告 100BASE TX FD 能力 bit7 是否通告 100BASE TX HD 能力 bit6 是否通告 10BASE T FD 能力 bit5 是否通告 10BASE T 能力 bit10 和 bit11 描述的功能与具体 PHY 芯片有关系 bit5 bit9 对应自动协商广播能力域 实际应用中需要参考 status register 进行配置 如果支持这种工作模式则对应位置 1 若不支持则对应位置 0 例如 et1011c 和 rtl8201 status register 显示没有 100BASE T4 的工作模式能力 那么 ANAR 寄 存器就不能配置 bit9 为 1 ANAR 寄存器没有通告 1000BASE T 能力的对应配置位 1000BASE T 的相关配置在寄存器 9 Auto Negotiation Link Partner Base Page Ability Register ANLPAR ANLPAR 保存的是本端 PHY 接收到的对端 PHY 所通告的端口能力 ANLPAR 的结构和 ANAR 基本一致 应用上 主要检测对端的自动 协商配置 bit14 1 表示接收到 Link partner Link 数据 bit13 1 表示 Link partner 探测到 remote fault 其他位表示 Link partner 的相关工作模式能力 寄存器寄存器 6 7 8 表示相关自动协商异常信息 除寄存器表示相关自动协商异常信息 除寄存器 6 的的 bit0 表表 示示 Link partner 是否支持自动协商 其他的都需要具体分析是否支持自动协商 其他的都需要具体分析 寄存器 9 保存的是 1000BASE T 模式的自动协商通告信息 对于 100M PHY 芯片 寄存器 9 为 Reserved 一般我们使用 bit8 和 bit9 就行 bit8 1000BASE T HD 半双工 bit9 1000BASE T FD 全双工 寄存器 ANAR 的自动协商通告信息寄存器没有关于 1000BASE T 的信息 1000BASE T 的自动协商通告信息就是由这两位进行配置 分别对应全双工和半双工两种工作模式 需要注意的是 1000BASE T 工作模式的自动协商是强制的 也就是要想端口 1000BASE T 模式工作正常 自动协商是必须 Enable 的 否则端 口可能出现异常 寄存器 10 描述 1000BASE T 模式下 PHY 的状态以及 Link partner 通告的端口能力 bit10 对端支持 1000BASE T HD 半双工 bit11 对端支持 1000BASE T FD 全双工 bit12 本地接收 OK bit13 对端接收 OK 寄存器 15 主要表明 PHY 是否具有 1000BASE X 或者 1000BASE T 的能力 三三 寄存器配置流程寄存器配置流程 上图是一般 PHY 芯片的初始化流程 1 复位 PHY 芯片 其实就是 control register 的 bit15 置 1 2 配置 control register 使能自动协商能力 AN 3 配置寄存器 9 配置 1000BASE T 自动协商的能力通告寄存器 4 配置 ANAR 配置 100BASE 和 10BASE 自动协商的能力通告 寄存器 5 重新启动自动协商 其实还应该有第六步那就是等待自动协商完成 不断查询 status register bit5 是否为 1 简单总结下 PHY 的标准寄存器 ANAR 用来配置

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论