工具/软件:TI-RTOS
1) 1) EMAC_GET_STATS_v4在 PORT_num 为1时返回垃圾。
EMAC_GET_STATS_v4调用 EMAC_socGetInitCfg()、当"port_num"为1时、它返回-1和无效指针。
如果我调用 EMAC_POLL ()、参数"port_num"是 EMAC 端口号。 emac_get_statistics()说明参数"port_num"也是 EMAC 端口号。
port_num 的测试 错误。 EMAC_NUM_MAX_MAC_PORT 用于 EMAC_HwAttrs_V4结构的 PORT[EMAC_NUM_MAX_MAC_PORTS]字段的定义。 EMACInitCfg 的定义为"EMAC_HwAttrs_V4 EMACInitCfg[1]"。
int32_t EMAC_socGetInitCfg (uint32_t port_num、EMAC_HwAttrs_V4 *配置)
{
int32_t ret = 0;
if (port_num < EMAC_NUM_MAX_MAC_ports -1U)
{
*cfg = EMACInitCfg[port_num];
}
其他
{
RET =-1;
}
回程;
}
并且 EMAC_GET_STATS_v4不测试 EMAC_socGetInitCfg ()的返回、并且始终返回 EMAC_DRV_RESULT_OK。
2) 2)评估 EMAC_statists_T:
/*!
* @简要 EMAC 统计信息
* 统计结构用于检索当前计数
系统 中各种数据包事件的*。 这些值表示
* 上次读取统计数据时的增量值。
*
实际上 、EMAC_GET_STATS_v4会将从 MPU 寄存器读取的值以及添加到 EMAC_statists_T 参数中
已安装的组件:
CCS 7.2
GCC ARM 编译器4.9.3
PROCESSOR_SDK_RTOS_AM437X 4.00.04
AM437x PDK v1.0.7
BIOS 6.46.05.55
xdctools 3.32.02.25_core
电路板:AM437X 入门套件
此致、
Marcio。