src/dpdk/drivers/net/qede/qede_debug.c
static u32 qed_grc_dump_vfc_cam(struct ecore_hwfn *p_hwfn,
				struct ecore_ptt *p_ptt,
				u32 *dump_buf, bool dump, u8 storm_id)
{
	u32 total_size = VFC_CAM_NUM_ROWS * VFC_CAM_RESP_DWORDS;
	struct storm_defs *storm = &s_storm_defs[storm_id];
	u32 cam_addr[VFC_CAM_ADDR_DWORDS] = { 0 };
	u32 cam_cmd[VFC_CAM_CMD_DWORDS] = { 0 };
	u32 row, offset = 0;

	offset += qed_grc_dump_mem_hdr(p_hwfn,
				       dump_buf + offset,
				       dump,
				       "vfc_cam",
				       0,
				       total_size,
				       256,
				       false, "vfc_cam", storm->letter);

	if (!dump)
		return offset + total_size;

	/* Prepare CAM address */
	SET_VAR_FIELD(cam_addr, VFC_CAM_ADDR, OP, VFC_OPCODE_CAM_RD);

	/* Read VFC CAM data */
	for (row = 0; row < VFC_CAM_NUM_ROWS; row++) {
		SET_VAR_FIELD(cam_cmd, VFC_CAM_CMD, ROW, row);
		offset += qed_grc_dump_read_from_vfc(p_hwfn,
						     p_ptt,
						     storm,
						     cam_cmd,
						     VFC_CAM_CMD_DWORDS,
						     cam_addr,
						     VFC_CAM_ADDR_DWORDS,
						     VFC_CAM_RESP_DWORDS,
						     dump_buf + offset);
	}

	return offset;
}
/* Dump VFC CAM. Returns the dumped size in dwords. */
Dump VFC CAM. Returns the dumped size in dwords.
Dump VFC CAM . Returns the dumped size in dwords .
static u32 qed_grc_dump_vfc_cam(struct ecore_hwfn *p_hwfn,
				struct ecore_ptt *p_ptt,
				u32 *dump_buf, bool dump, u8 storm_id)
{
	u32 total_size = VFC_CAM_NUM_ROWS * VFC_CAM_RESP_DWORDS;
	struct storm_defs *storm = &s_storm_defs[storm_id];
	u32 cam_addr[VFC_CAM_ADDR_DWORDS] = { 0 };
	u32 cam_cmd[VFC_CAM_CMD_DWORDS] = { 0 };
	u32 row, offset = 0;
	offset += qed_grc_dump_mem_hdr(p_hwfn,
				       dump_buf + offset,
				       dump,
				       "vfc_cam",
				       0,
				       total_size,
				       256,
				       false, "vfc_cam", storm->letter);
	if (!dump)
		return offset + total_size;
	SET_VAR_FIELD(cam_addr, VFC_CAM_ADDR, OP, VFC_OPCODE_CAM_RD);
	for (row = 0; row < VFC_CAM_NUM_ROWS; row++) {
		SET_VAR_FIELD(cam_cmd, VFC_CAM_CMD, ROW, row);
		offset += qed_grc_dump_read_from_vfc(p_hwfn,
						     p_ptt,
						     storm,
						     cam_cmd,
						     VFC_CAM_CMD_DWORDS,
						     cam_addr,
						     VFC_CAM_ADDR_DWORDS,
						     VFC_CAM_RESP_DWORDS,
						     dump_buf + offset);
	}
	return offset;
}
static u32 qed_grc_dump_vfc_cam ( struct ecore_hwfn * p_hwfn , struct ecore_ptt * p_ptt , u32 * dump_buf , bool dump , u8 storm_id ) { u32 total_size = VFC_CAM_NUM_ROWS * VFC_CAM_RESP_DWORDS ; struct storm_defs * storm = & s_storm_defs [ storm_id ] ; u32 cam_addr [ VFC_CAM_ADDR_DWORDS ] = { 0 } ; u32 cam_cmd [ VFC_CAM_CMD_DWORDS ] = { 0 } ; u32 row , offset = 0 ; offset += qed_grc_dump_mem_hdr ( p_hwfn , dump_buf + offset , dump , " " , 0 , total_size , 256 , false , " " , storm -> letter ) ; if ( ! dump ) return offset + total_size ; SET_VAR_FIELD ( cam_addr , VFC_CAM_ADDR , OP , VFC_OPCODE_CAM_RD ) ; for ( row = 0 ; row < VFC_CAM_NUM_ROWS ; row ++ ) { SET_VAR_FIELD ( cam_cmd , VFC_CAM_CMD , ROW , row ) ; offset += qed_grc_dump_read_from_vfc ( p_hwfn , p_ptt , storm , cam_cmd , VFC_CAM_CMD_DWORDS , cam_addr , VFC_CAM_ADDR_DWORDS , VFC_CAM_RESP_DWORDS , dump_buf + offset ) ; } return offset ; }
Dump VFC CAM.
Dump VFC CAM .
/* Prepare CAM address */ /* Read VFC CAM data */