海思3559:百兆网口的配置

简介: 百兆网口的配置

前言

海思3559的开发板网口是默认支持千兆/百兆的,这里的自适应,是从RJ45出来后和PC侧的自适应,而实际上3559对于网口的设置,默认都是RGMII模式,除了对应的软件配置,硬件部分需要通过上拉电阻的方法和phy芯片的的支持决定3559最终要选择那个模式,比如PHY芯片只支持到百兆,硬件部分就需要配置成RMII模式,对应的软件配置也需要对应的改为RMII,官方文档不知道是没有写还是太杂了没找到,这里补充完整的移植方法。此外,不同的SDK版本需要改不同的参数,这里给出Hi3559AV100_SDK_V2.0.3.1的改法用于参考

Uboot:

配置表格:

 /Hi3559AV100_SDK_V2.0.3.1/osdrv/tools/pc/uboot_tools/Hi3559AV100-DMEB_8L_T-DDR4_2664M_4GB_16bitx4-A73_1608M.xlsm其中的IOCFG_REG87要从0x91改为0x94,具体含义参考pinout表格

c10827f3164b40a5bcb866fc312fd3c6.png

头文件

 /Hi3559AV100_SDK_V2.0.3.1/osdrv/opensource/uboot/u-boot-2016.11/include/configs/hi3559av100.h要把phy0(看具体使用情况)工作模式同样改为rmii

83  /*Network configuration*  
84  #define CONFIG PHY GIGE 
85  #ifdef CONFIG NET HIGMACV300  
2
8786#define CONFIG GMAC NUMS#define CONFIG HIGMAC PHYO ADDR1
88  #define CONFIG HIGMAC PHY0 INTERFACE MODE 1 /* rgmii 2, rmii 1, mii 0 */  
3
89  #define CONFIG HIGMAC PHY1 ADDR.  
90  #define CONFIG HIGMAC PHY1 INTERFACE MODE 2 /* rqmii 2, rmii 1, mii 0 */  
91  #define CONFIG HIGMAC DESC 4 WORD 
92  #define CONFIG SYS FAULT ECHO LINK DOWN 1 
93  #endif  
94  Hx--1024

kernel

设备树:

 Hi3559AV100_SDK_V2.0.3.1/osdrv/opensource/kernel/linux-4.9.y_multi-core/arch/arm64/boot/dts/hisilicon路径下

 .hi3559av100-demb-flash.dtb.dts.tmp修改

&higmac {
phy-handle =<&ethphy>; phy-mode ="rmii";};
&higmac1{
phy-handle =<&ethphy1>; phy-mode ="rmii";
:{  Hx--1024

 hi3559av100-demb.dts修改

&higmac {
phy-handle =<&ethphy>; phy-mode ="rmii";
};
&higmac1{
phy-handle =<&ethphy1>; phy-mode ="rmii";
};
Hx--1024

补充说明

 phy的具体配置可以参考厂家提供的技术手册

 软件到手后,最基本的可以在uboot阶段通过mii指令,读到phy寄存器正确的状态

mii

mii - MII utility commands
Usage:
mii device - list available devices
mii device - set current device
mii info - display MII PHY info
mii read - read MII PHY register
mii write - write MII PHY register
mii dump - pretty-print (0-5 only)

mii device示例,会输出MDC/MDIO总线设备

uboot>mii device                                                           
MII devices: 'FSL_MDIO0' 'FM_TGEC_MDIO'
Current device: 'FSL_MDIO0'

 mii info打印输出,PHY后面跟的就是addr

uboot> mii info
PHY 0x00: OUI = 0x5043, Model = 0x1D, Rev = 0x01, 1000baseT, FDX
PHY 0x01: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x02: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x03: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x04: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x05: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x06: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
PHY 0x07: OUI = 0x0000, Model = 0x00, Rev = 0x00,  10baseT, HDX
mii read - read MII PHY register
  mii write - write MII PHY register

上述两个命令,需要根据具体的芯片手册寄存器设置来进行配置。以下命令为示例

mii write 0 0 0x8000    向地址为0的phy芯片的0寄存器写入0x8000
mii  read 0 0     读取地址为0的phy芯片的寄存器0的值

 部分uboot也支持直接使用mdio指令,需要时自行查录

奇怪的问题:读寄存器状态不对

 如果连读寄存器的状态都存在问题时,(博主遇到了读同样的寄存器,连着读读到的值竟然不一样,有00有ff有正常的0x7949)首先需要协调硬件工程师 就复位,时钟,电源挨个检查,大概率是硬件问题。最后果然检查到电源部分有个电阻阻值不对,导致工作电压不稳定进而影响了寄存器的配置


相关文章
|
11月前
|
芯片
自带恒压恒流环路的降压型单片车充专用芯片
一、基本概述 XL2009是一款高效降压型DC-DC转换器,固定180KHz开关频率,可以提供最高2.5A输出电流能力,具有低纹波,出色的线性调整率与负载调整率特点。XL2009内置固定频率振荡器与频率补偿电路,简化了电路设计。 PWM 控 制 环 路 可 以 调 节 占 空 比 从0~100%之间线性变化。内置过电流保护功能,当 输 出 短 路 时 , 操 作 频 率 由 180KHz 降 至48KHz。内部补偿模块可以减少外围元器件数量。 二、产品特点 8V到36V宽输入电压范围 输出1.25V到32V可调 最大占空比100% 最小压降0.3V 固定180KHz开关频率
|
9月前
|
运维 测试技术 网络性能优化
|
11月前
|
编解码 网络协议 芯片
以太网口硬件知识分享
该文介绍了网络通信的基本原理,涉及PHY、MAC和RJ45接口的角色。PHY芯片负责物理层的信号处理,MAC则处理帧同步和MAC地址。网络通信中,MAC通常集成在CPU内,PHY通过MDIO总线与MAC交互,配置PHY芯片实现不同模式和功能。文中还提到了常见的网络信号模式(如MII、RMII)及其差异,并指出网络变压器的作用。此外,文章详细解析了KSZ8081RNB PHY芯片的电路原理,包括底板和扩展板的网口设计,以及网口电路和PCB设计的注意事项。最后,提供了网口问题的排查思路。
239 0
|
11月前
|
前端开发 芯片 网络架构
单口千兆以太网物理层芯片
一、基本介绍 YT8521S是一款单口千兆以太网物理层芯片,YT8521S是一款高度集成的以太网收发器,符合10BASE-Te、100BASE-TX和1000BASE-T IEEE 802.3标准。它提供了传输和接收所需的所有物理层功能通过CAT.5E UTP电缆的以太网数据包。 YT8521S采用最先进的DSP技术和模拟前端(AFE)实现高速数据通过UTP电缆进行传输和接收。交叉检测和自动校正、极性等功能校正、自适应均衡、串扰消除、回声消除、定时恢复和纠错在YT8521S中实现以提供10Mbps、100Mbps和100Mbps的鲁棒传输和接收能力,或1000Mbps。 MAC和PHY之
251 2
|
11月前
|
安全 网络安全 网络架构
【网络奇缘】- 如何自己动手做一个五类|以太网|RJ45|网络电缆
【网络奇缘】- 如何自己动手做一个五类|以太网|RJ45|网络电缆
88 0
网络基础 - 如何区分百兆网线和千兆网线?
网络基础 - 如何区分百兆网线和千兆网线?
280 0
网络基础 - 如何区分百兆网线和千兆网线?
|
数据中心
光纤跳线检测方法,校园网如何用光纤跳线连接?
在光纤跳线在连接设备之前一定要先检测光纤跳线是否合格,否则当光纤跳线都已全部布线好才发现故障导致光纤链路无法正常工作,到那时就会造成没有必要的麻烦。那么光纤跳线如何检测呢?下面易天光通信(ETU-LINK)教给大家几个简单的办法: 方法一:通过红光笔检测光纤跳线是否连通,确定光纤跳线没有断点或故障即可使用; 方法二:使用光回波损耗测试仪测量光纤跳线的插入损耗和回波损耗,一般插入损耗值小于0.3dB,回波损耗值大于45dB,测量结果满足要求即可使用; 方法三:使用光功率计或OTDR光时域反射仪测量光纤接头损耗和光纤衰减(甚至可以检测光纤故障点),只要符合标准即可使用。
1531 0