Exemplo n.º 1
0
/*===========================================================================*
 *				rtl8169_dump				     *
 *===========================================================================*/
static void rtl8169_dump(void)
{
	re_dtcc *dtcc;
	re_t *rep;

	rep = &re_state;

	printf("\n");
	if (rep->re_mode == REM_DISABLED)
		printf("Realtek RTL 8169 instance %d is disabled\n",
			re_instance);

	if (rep->re_mode != REM_ENABLED)
		return;

	rtl8169_update_stat(rep);

	printf("Realtek RTL 8169 statistics of instance %d:\n", re_instance);

	printf("recvErr    :%8ld\t", rep->re_stat.ets_recvErr);
	printf("sendErr    :%8ld\t", rep->re_stat.ets_sendErr);
	printf("OVW        :%8ld\n", rep->re_stat.ets_OVW);

	printf("CRCerr     :%8ld\t", rep->re_stat.ets_CRCerr);
	printf("frameAll   :%8ld\t", rep->re_stat.ets_frameAll);
	printf("missedP    :%8ld\n", rep->re_stat.ets_missedP);

	printf("packetR    :%8ld\t", rep->re_stat.ets_packetR);
	printf("packetT    :%8ld\t", rep->re_stat.ets_packetT);
	printf("transDef   :%8ld\n", rep->re_stat.ets_transDef);

	printf("collision  :%8ld\t", rep->re_stat.ets_collision);
	printf("transAb    :%8ld\t", rep->re_stat.ets_transAb);
	printf("carrSense  :%8ld\n", rep->re_stat.ets_carrSense);

	printf("fifoUnder  :%8ld\t", rep->re_stat.ets_fifoUnder);
	printf("fifoOver   :%8ld\t", rep->re_stat.ets_fifoOver);
	printf("OWC        :%8ld\n", rep->re_stat.ets_OWC);
	printf("interrupts :%8lu\n", rep->interrupts);

	printf("\nRealtek RTL 8169 Tally Counters:\n");

	dtcc = rep->v_dtcc_buf;

	if (dtcc->TxOk_high)
		printf("TxOk       :%8ld%08ld\t", dtcc->TxOk_high, dtcc->TxOk_low);
	else
		printf("TxOk       :%16lu\t", dtcc->TxOk_low);

	if (dtcc->RxOk_high)
		printf("RxOk       :%8ld%08ld\n", dtcc->RxOk_high, dtcc->RxOk_low);
	else
		printf("RxOk       :%16lu\n", dtcc->RxOk_low);

	if (dtcc->TxEr_high)
		printf("TxEr       :%8ld%08ld\t", dtcc->TxEr_high, dtcc->TxEr_low);
	else
		printf("TxEr       :%16ld\t", dtcc->TxEr_low);

	printf("RxEr       :%16ld\n", dtcc->RxEr);

	printf("Tx1Col     :%16ld\t", dtcc->Tx1Col);
	printf("TxMCol     :%16ld\n", dtcc->TxMCol);

	if (dtcc->RxOkPhy_high)
		printf("RxOkPhy    :%8ld%08ld\t", dtcc->RxOkPhy_high, dtcc->RxOkPhy_low);
	else
		printf("RxOkPhy    :%16ld\t", dtcc->RxOkPhy_low);

	if (dtcc->RxOkBrd_high)
		printf("RxOkBrd    :%8ld%08ld\n", dtcc->RxOkBrd_high, dtcc->RxOkBrd_low);
	else
		printf("RxOkBrd    :%16ld\n", dtcc->RxOkBrd_low);

	printf("RxOkMul    :%16ld\t", dtcc->RxOkMul);
	printf("MissPkt    :%16d\n", dtcc->MissPkt);

	printf("\nRealtek RTL 8169 Miscellaneous Info:\n");

	printf("re_flags   :      0x%08x\n", rep->re_flags);
	printf("tx_head    :%8d  busy %d\t",
		rep->re_tx_head, rep->re_tx[rep->re_tx_head].ret_busy);
}
/*===========================================================================*
 *				rtl8169_dump				     *
 *===========================================================================*/
static void rtl8169_dump(void)
{
	re_dtcc *dtcc;
	re_t *rep;

	rep = &re_state;

	printf("\n");

	rtl8169_update_stat(rep);

	printf("Realtek RTL 8169 driver %s:\n", netdriver_name());

	printf("interrupts :%8u\n", rep->interrupts);

	printf("\nRealtek RTL 8169 Tally Counters:\n");

	dtcc = rep->v_dtcc_buf;

	if (dtcc->TxOk_high)
		printf("TxOk       :%8u%08u\t",
		    dtcc->TxOk_high, dtcc->TxOk_low);
	else
		printf("TxOk       :%16u\t", dtcc->TxOk_low);

	if (dtcc->RxOk_high)
		printf("RxOk       :%8u%08u\n",
		    dtcc->RxOk_high, dtcc->RxOk_low);
	else
		printf("RxOk       :%16u\n", dtcc->RxOk_low);

	if (dtcc->TxEr_high)
		printf("TxEr       :%8u%08u\t",
		    dtcc->TxEr_high, dtcc->TxEr_low);
	else
		printf("TxEr       :%16u\t", dtcc->TxEr_low);

	printf("RxEr       :%16u\n", dtcc->RxEr);

	printf("Tx1Col     :%16u\t", dtcc->Tx1Col);
	printf("TxMCol     :%16u\n", dtcc->TxMCol);

	if (dtcc->RxOkPhy_high)
		printf("RxOkPhy    :%8u%08u\t",
		    dtcc->RxOkPhy_high, dtcc->RxOkPhy_low);
	else
		printf("RxOkPhy    :%16u\t", dtcc->RxOkPhy_low);

	if (dtcc->RxOkBrd_high)
		printf("RxOkBrd    :%8u%08u\n",
		    dtcc->RxOkBrd_high, dtcc->RxOkBrd_low);
	else
		printf("RxOkBrd    :%16u\n", dtcc->RxOkBrd_low);

	printf("RxOkMul    :%16u\t", dtcc->RxOkMul);
	printf("MissPkt    :%16d\n", dtcc->MissPkt);

	printf("\nRealtek RTL 8169 Miscellaneous Info:\n");

	printf("tx_head    :%8d  busy %d\t",
		rep->re_tx_head, rep->re_tx[rep->re_tx_head].ret_busy);
}