|
@@ -415,11 +415,35 @@ static void realtek_check_link ( struct net_device *netdev ) {
|
415
|
415
|
if ( rtl->have_phy_regs ) {
|
416
|
416
|
phystatus = readb ( rtl->regs + RTL_PHYSTATUS );
|
417
|
417
|
link_up = ( phystatus & RTL_PHYSTATUS_LINKSTS );
|
418
|
|
- DBGC ( rtl, "REALTEK %p PHY status is %02x\n", rtl, phystatus );
|
|
418
|
+ DBGC ( rtl, "REALTEK %p PHY status is %02x (%s%s%s%s%s%s, "
|
|
419
|
+ "Link%s, %sDuplex)\n", rtl, phystatus,
|
|
420
|
+ ( ( phystatus & RTL_PHYSTATUS_ENTBI ) ? "TBI" : "GMII" ),
|
|
421
|
+ ( ( phystatus & RTL_PHYSTATUS_TXFLOW ) ?
|
|
422
|
+ ", TxFlow" : "" ),
|
|
423
|
+ ( ( phystatus & RTL_PHYSTATUS_RXFLOW ) ?
|
|
424
|
+ ", RxFlow" : "" ),
|
|
425
|
+ ( ( phystatus & RTL_PHYSTATUS_1000MF ) ?
|
|
426
|
+ ", 1000Mbps" : "" ),
|
|
427
|
+ ( ( phystatus & RTL_PHYSTATUS_100M ) ?
|
|
428
|
+ ", 100Mbps" : "" ),
|
|
429
|
+ ( ( phystatus & RTL_PHYSTATUS_10M ) ?
|
|
430
|
+ ", 10Mbps" : "" ),
|
|
431
|
+ ( ( phystatus & RTL_PHYSTATUS_LINKSTS ) ?
|
|
432
|
+ "Up" : "Down" ),
|
|
433
|
+ ( ( phystatus & RTL_PHYSTATUS_FULLDUP ) ?
|
|
434
|
+ "Full" : "Half" ) );
|
419
|
435
|
} else {
|
420
|
436
|
msr = readb ( rtl->regs + RTL_MSR );
|
421
|
437
|
link_up = ( ! ( msr & RTL_MSR_LINKB ) );
|
422
|
|
- DBGC ( rtl, "REALTEK %p media status is %02x\n", rtl, msr );
|
|
438
|
+ DBGC ( rtl, "REALTEK %p media status is %02x (Link%s, "
|
|
439
|
+ "%dMbps%s%s%s%s%s)\n", rtl, msr,
|
|
440
|
+ ( ( msr & RTL_MSR_LINKB ) ? "Down" : "Up" ),
|
|
441
|
+ ( ( msr & RTL_MSR_SPEED_10 ) ? 10 : 100 ),
|
|
442
|
+ ( ( msr & RTL_MSR_TXFCE ) ? ", TxFlow" : "" ),
|
|
443
|
+ ( ( msr & RTL_MSR_RXFCE ) ? ", RxFlow" : "" ),
|
|
444
|
+ ( ( msr & RTL_MSR_AUX_STATUS ) ? ", AuxPwr" : "" ),
|
|
445
|
+ ( ( msr & RTL_MSR_TXPF ) ? ", TxPause" : "" ),
|
|
446
|
+ ( ( msr & RTL_MSR_RXPF ) ? ", RxPause" : "" ) );
|
423
|
447
|
}
|
424
|
448
|
|
425
|
449
|
/* Report link state */
|