参考手册:T1040 QorIQ Data Path Acceleration Architecture (DPAA) Reference Manual

MAC/BMI/QMI寄存器组成都是由下面3个部分组成的

The full register address of any DPAA register consists of all of the following:
• CCSR window base address, specified in CCSRBAR (default address 0_FE00_0000h)
• Block base address
• The specific register’s offset within that block

MAC/BMI/QMI寄存器都是FMan memory map的一部分。

针对MAC而言,每个网口,对应不同的 基地址 ,下面第一个红框,是访问MAC寄存器要用哪个到的,第二个红框的port id 在访问 QMI/BMI 寄存器的时候会用到。

从下面的Map 可以看出来,QMI 和 BMI 的基地址是一样的,就是offset 不一样

1、MAC 寄存器

MAC1  , 0xffe000000 + 0x4e0000 + offset = 0xffe4e0000 + offset

MAC2  , 0xffe000000 + 0x4e0000 + offset = 0xffe4e2000 + offset

MAC3  , 0xffe000000 + 0x4e0000 + offset = 0xffe4e4000 + offset

MAC4  , 0xffe000000 + 0x4e0000 + offset = 0xffe4e6000 + offset

MAC5  , 0xffe000000 + 0x4e0000 + offset = 0xffe4e8000 + offset

然后参考手册中 6.4.2 mEMAC Detailed Memory Map ,

offset  0x100开始是Rx Statistics Counter Registers;

offset  0x200开始是Tx Statistics Counter Registers。

比如我想看下 RX ERR 相关的统计

如果符合下面的情况,都会在这个寄存器中累积,0x13c 是高32位,0x138是 低32位

6.4.3.2.8 Receive Frame Error Counter Register (RERRn)
Incremented for each frame received with an error (except for undersized/fragment frame) :
• FIFO overflow error
• CRC error
• Payload length error
• Jabber and oversized error
• Alignment error (if supported)
• Reception of PHY/PCS error indication (0xFE, not a code error)
MAC1:# devmem 0XFFE4E0138 320x00000000# devmem 0XFFE4E013c 320x00000000MAC2:11个包# devmem 0XFFE4E213c 320x00000000# devmem 0XFFE4E2138 320x0000000B

同样的 TX 也有一个相关的统计

6.4.3.2.34 Transmit Frame Error Counter Register (TERRn)
Incremented for each frame transmitted with an error:
• FIFO overflow error
• FIFO underflow error
• memory double ECC errors
• late-collision or excessive collisions (half-duplex only) 
MAC1:# devmem 0XFFE4E023C 320x00000000# devmem 0XFFE4E0238 320x00000000MAC2:     # devmem 0XFFE4E2238 320x00000000# devmem 0XFFE4E223c 320x00000000

2、BMI/QMI 寄存器

BMI/QMI rx port寄存器, 不同的MAC 对应rx_port_id 不一样,见上面的图。

0xffe000000 + 0x400000 + 0x80000 + 0x01000* rx_port_id + offset

BMI/QMI  tx port寄存器, 不同的MAC 对应tx_port_id 不一样,见上面的图。

0xffe000000 + 0x400000 + 0x80000 + 0x01000* tx_port_id + offset

BMI Rx port寄存器请参考手册章节BMI Rx Port Registers部分,0x200开始是一些统计。

BMI Tx port寄存器请参考手册章节 BMI Tx Port Registers部分,0x200开始是一些统计。

QMI Rx port寄存器请参考手册章节 QMI Rx Port Registers部分,0x41c和0x420是一些统计。

QMI Tx port寄存器请参考手册章节 QMI Tx Port Registers部分,0x41c开始是一些统计。

3、检测脚本


echo "T1042 DPAA Frame Error Check from register"
echo ""echo "Receive Frame Error Counter Check!"
echo ""
echo "[SGMII][MAC1] High 32bit: `devmem 0XFFE4E013c 32`"
echo "[SGMII][MAC1] Low  32bit: `devmem 0XFFE4E0138 32`"
echo "[SGMII][MAC2] High 32bit: `devmem 0XFFE4E213c 32`"
echo "[SGMII][MAC2] Low  32bit: `devmem 0XFFE4E2138 32`"
echo "[RGMII][MAC4] High 32bit: `devmem 0XFFE4E613c 32`"
echo "[RGMII][MAC4] Low  32bit: `devmem 0XFFE4E6138 32`"
echo "[RGMII][MAC5] High 32bit: `devmem 0XFFE4E813c 32`"
echo "[RGMII][MAC5] Low  32bit: `devmem 0XFFE4E8138 32`"
echo ""echo "Transmit Frame Error Counter Check!"
echo ""
echo "[SGMII][MAC1] High 32bit: `devmem 0XFFE4E023c 32`"
echo "[SGMII][MAC1] Low  32bit: `devmem 0XFFE4E0238 32`"
echo "[SGMII][MAC2] High 32bit: `devmem 0XFFE4E223c 32`"
echo "[SGMII][MAC2] Low  32bit: `devmem 0XFFE4E2238 32`"
echo "[RGMII][MAC4] High 32bit: `devmem 0XFFE4E623c 32`"
echo "[RGMII][MAC4] Low  32bit: `devmem 0XFFE4E6238 32`"
echo "[RGMII][MAC5] High 32bit: `devmem 0XFFE4E823c 32`"
echo "[RGMII][MAC5] Low  32bit: `devmem 0XFFE4E8238 32`"

T1042 查看 MAC、BMI、QMI寄存器, 查看DPAA丢包情况相关推荐

  1. LS1043A 查看 MAC、BMI、QMI寄存器, 查看网口发包丢包情况

    参考手册:QorIQ LS1043A Data Path Acceleration Architecture (DPAA) Reference Manual MAC/BMI/QMI寄存器组成都是由下面 ...

  2. Mac小技巧—如何查看 Mac 的关机和重启历史

    怎么查看Mac电脑的开机记录?可能在有些情况下我们需要详细的了解一下Mac电脑开关机时间,那么开关机时间记录在哪里? 使用终端查看 Mac 的关机和重启历史记录 如果您需要查看 Mac 的关机或重启历 ...

  3. linux查看地址和,UNIX/LINUX平台下查看MAC和WWN地址的方法

    归纳了一下,在UNIX/LINUX平台下查看MAC和WWN地址的方法 查看MAC地址 hp-ux #lanscan tru64 unix #netstat -ia aix #lsdev -Cc if ...

  4. java win8 mac地址_Win8怎么查看MAC地址_Win8查看电脑MAC地址方法-192路由网

    问:Win8电脑怎么查看MAC地址?电脑用的是Win8系统,请问怎么查看这台Win8电脑的MAC地址? 答:有3种方法可以查看Win8电脑上的MAC地址: 1.在"电脑设置"中查看 ...

  5. 如何查看本机端口_怎样查看Mac的端口号以及占用情况

    在启动项目,发现地址已经被使用,错误提示信息"Failure: Address already in use "那么如何查看端口占用情况呢?小编介绍几种查看端口占用并释放的方法. ...

  6. linux怎么进入bios查看mac地址,详细教您查看本机mac地址

    在一个稳定的网络中,mac地址作为网络设备的唯一标识,一般固化在网卡信息当中,一般不能改动,有时候我需要查看mac地址,今天给大家分享一下如何查看本机电脑上的mac地址. mac地址,对于一些电脑菜鸟 ...

  7. 苹果计算机咋出记录,怎么查看Mac电脑的开机记录?

    可以使用last命令查看Mac电脑来看开机记录,同时也能查看关机记录. 首先打开mac的命令终端: 命令行终端敲入命令:last | grep reboot (查看开机时间记录) 命令行终端敲入命令: ...

  8. xp查看计算机mac地址查询,mac地址查询,教你用dos命令查看mac地址的方法

    如何进行mac地址查询?其实MAC地址也就是(Media Access Control)的缩写,MAC地址的主要作用是定义网络配置的位置.尤其当我们在需要进行设置路由器的时候我们就需要通过Mac来进行 ...

  9. sql server2008如何修改mac地址_如何查看本机的MAC地址和IP地址?

    MAC地址是每台电脑或是手机设备中唯一进行识别的编码,IP地址则是路由器分配给电脑或是手机设备联网使用的一个编码.当我们电脑或无法上网,都需要查看IP地址是否正确.那如何查看MAC地址和IP地址呢? ...

最新文章

  1. MySql事务select for update及数据的一致性处理讲解
  2. ML之FE:数据处理—特征工程的简介、使用方法、案例应用之详细攻略
  3. redis的7个应用场景
  4. 必知必会的RocketMQ消息类型
  5. PHP Yii框架中使用smarty模板
  6. 05-sqlyog的安装与基本使用
  7. java 进程 cpu占用_JAVA进程CPU占用高的故障排查 – 运维那些事
  8. java 高效加减乘除_java简单加减乘除
  9. RabbitMQ 交换机、队列、消息持久化
  10. WebGrid 在asp.net mvc中的使用和理解(译)
  11. 关于分布式服务中的中间件技术入门概述
  12. dp hp oracle 备份软件_HP-DP备份软件设置
  13. java中yml后缀文件_YML文件扩展名 - 什么是.yml以及如何打开? - ReviverSoft
  14. 【Oracle】批量造测试数据
  15. 为什么总是封板又打开涨停_一旦持有个股出现涨停板,却封不住反复打开,意味着什么?...
  16. 微信小程序检测版本是否有更新
  17. Cloudera 的开放湖仓采用dbt Core增压
  18. es6 混合commjs_ES6 模块化的时代真的来临了么?Using MJS
  19. C语言:开平方判断素数
  20. 方舟生存服务器没有响应怎么办,方舟生存进化搜服务器闪退怎么办? Fata error临时解决办法一览...

热门文章

  1. 物料分类帐之价格控制和差异分析
  2. 【C++】从无到有学习路线
  3. Linux的目录和文件管理
  4. 第一波:HTML+CSS+JavaScript数据可视化大屏平台模板实例10大通用模板,面向各行各业
  5. c语言接口与实现作用,《C语言接口与实现》
  6. 银行的主要收入有哪些?
  7. 如何使UDEV规则有效
  8. 含有外部电路设置的电磁炮Maxwell瞬态仿真
  9. c语言:十六进制转化为十进制
  10. DIY多快充协议太阳能充电器!----项目总结(文末干货分享)