Changeset 6fc0edd in mainline for uspace/srv/hw/netif/dp8390/dp8390.c


Ignore:
Timestamp:
2011-01-06T16:37:53Z (14 years ago)
Author:
Martin Decky <martin@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
b590c21
Parents:
0777f4c5
Message:

more robust interrupt processing

File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/srv/hw/netif/dp8390/dp8390.c

    r0777f4c5 r6fc0edd  
    478478}
    479479
    480 void dp_check_ints(dpeth_t *dep)
    481 {
    482         int isr, tsr;
     480void dp_check_ints(dpeth_t *dep, int isr)
     481{
     482        int tsr;
    483483        int size, sendq_tail;
    484484       
     
    486486                fprintf(stderr, "dp8390: got premature interrupt\n");
    487487       
    488         for (;;) {
    489                 isr = inb_reg0(dep, DP_ISR);
    490                 if (!isr)
    491                         break;
    492                
     488        for (; isr; isr = inb_reg0(dep, DP_ISR)) {
    493489                outb_reg0(dep, DP_ISR, isr);
    494490               
     
    524520                       
    525521                        if (!(dep->de_sendq[sendq_tail].sq_filled)) {
    526                                 /* Software bug? */
    527                                 assert(false);
    528                                
    529522                                /* Or hardware bug? */
    530523                                printf("%s: transmit interrupt, but not sending\n", dep->de_name);
     
    601594}
    602595
    603 /*===========================================================================*
    604  *                              dp_recv                                      *
    605  *===========================================================================*/
    606 static void dp_recv(dep)
    607 dpeth_t *dep;
     596static void dp_recv(dpeth_t *dep)
    608597{
    609598        dp_rcvhdr_t header;
Note: See TracChangeset for help on using the changeset viewer.