205,6 → 205,58 |
} |
|
/*===========================================================================* |
* dp8390_dump * |
*===========================================================================*/ |
void dp8390_dump( dpeth_t * dep ) |
{ |
// dpeth_t *dep; |
int /*i,*/ isr; |
|
// printf("\n"); |
// for (i= 0, dep = &de_table[0]; i<DE_PORT_NR; i++, dep++) |
// { |
#if XXX |
if (dep->de_mode == DEM_DISABLED) |
printf("dp8390 port %d is disabled\n", i); |
else if (dep->de_mode == DEM_SINK) |
printf("dp8390 port %d is in sink mode\n", i); |
#endif |
|
if (dep->de_mode != DEM_ENABLED) |
// continue; |
return; |
|
// printf("dp8390 statistics of port %d:\n", i); |
|
printf("recvErr :%8ld\t", dep->de_stat.ets_recvErr); |
printf("sendErr :%8ld\t", dep->de_stat.ets_sendErr); |
printf("OVW :%8ld\n", dep->de_stat.ets_OVW); |
|
printf("CRCerr :%8ld\t", dep->de_stat.ets_CRCerr); |
printf("frameAll :%8ld\t", dep->de_stat.ets_frameAll); |
printf("missedP :%8ld\n", dep->de_stat.ets_missedP); |
|
printf("packetR :%8ld\t", dep->de_stat.ets_packetR); |
printf("packetT :%8ld\t", dep->de_stat.ets_packetT); |
printf("transDef :%8ld\n", dep->de_stat.ets_transDef); |
|
printf("collision :%8ld\t", dep->de_stat.ets_collision); |
printf("transAb :%8ld\t", dep->de_stat.ets_transAb); |
printf("carrSense :%8ld\n", dep->de_stat.ets_carrSense); |
|
printf("fifoUnder :%8ld\t", dep->de_stat.ets_fifoUnder); |
printf("fifoOver :%8ld\t", dep->de_stat.ets_fifoOver); |
printf("CDheartbeat:%8ld\n", dep->de_stat.ets_CDheartbeat); |
|
printf("OWC :%8ld\t", dep->de_stat.ets_OWC); |
|
isr= inb_reg0(dep, DP_ISR); |
printf("dp_isr = 0x%x + 0x%x, de_flags = 0x%x\n", isr, |
inb_reg0(dep, DP_ISR), dep->de_flags); |
// } |
} |
|
/*===========================================================================* |
* do_init * |
*===========================================================================*/ |
int do_init( dpeth_t * dep, int mode ){ |
588,10 → 640,11 |
/*===========================================================================* |
* dp_check_ints * |
*===========================================================================*/ |
void dp_check_ints(dep) |
void dp_check_ints(dep, isr) |
dpeth_t *dep; |
int isr; |
{ |
int isr, tsr; |
int /*isr,*/ tsr; |
int size, sendq_tail; |
|
if (!(dep->de_flags & DEF_ENABLED)) |
599,7 → 652,7 |
|
for(;;) |
{ |
isr = inb_reg0(dep, DP_ISR); |
// isr = inb_reg0(dep, DP_ISR); |
if (!isr) |
break; |
outb_reg0(dep, DP_ISR, isr); |
720,6 → 773,7 |
dep->de_flags |= DEF_STOPPED; |
break; |
} |
isr = inb_reg0(dep, DP_ISR); |
} |
if ((dep->de_flags & (DEF_READING|DEF_STOPPED)) == |
(DEF_READING|DEF_STOPPED)) |
1504,8 → 1558,8 |
if (r < 0) |
panic("", "dp8390: send failed:", r); |
|
dep->de_read_s = 0; |
*/ dep->de_flags &= ~(DEF_PACK_SEND | DEF_PACK_RECV); |
*/ dep->de_read_s = 0; |
dep->de_flags &= ~(DEF_PACK_SEND | DEF_PACK_RECV); |
} |
|
/*===========================================================================* |