Changes in / [ba21938:c2f3e0b] in mainline


Ignore:
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/include/ddi/irq.h

    rba21938 rc2f3e0b  
    5454        /** Read 4 bytes from the I/O space. */
    5555        CMD_PIO_READ_32,
    56        
    5756        /** Write 1 byte to the I/O space. */
    5857        CMD_PIO_WRITE_8,
     
    6362       
    6463        /**
    65          * Write 1 byte from the source argument
    66          * to the I/O space.
    67          */
    68         CMD_PIO_WRITE_A_8,
     64         * Perform a bit test on the source argument and store the result into
     65         * the destination argument.
     66         */
     67        CMD_BTEST,
     68       
    6969        /**
    70          * Write 2 bytes from the source argument
    71          * to the I/O space.
    72          */
    73         CMD_PIO_WRITE_A_16,
    74         /**
    75          * Write 4 bytes from the source argument
    76          * to the I/O space.
    77          */
    78         CMD_PIO_WRITE_A_32,
    79        
    80         /**
    81          * Perform a bit masking on the source argument
    82          * and store the result into the destination argument.
    83          */
    84         CMD_BTEST,
    85        
    86         /**
    87          * Predicate the execution of the following
    88          * N commands by the boolean value of the source
    89          * argument.
     70         * Predicate the execution of the following N commands by the boolean
     71         * value of the source argument.
    9072         */
    9173        CMD_PREDICATE,
     
    9375        /** Accept the interrupt. */
    9476        CMD_ACCEPT,
    95        
    9677        /** Decline the interrupt. */
    9778        CMD_DECLINE,
  • kernel/generic/src/ipc/irq.c

    rba21938 rc2f3e0b  
    404404                            (uint32_t) code->cmds[i].value);
    405405                        break;
    406                 case CMD_PIO_WRITE_A_8:
    407                         if (srcarg) {
    408                                 pio_write_8((ioport8_t *) code->cmds[i].addr,
    409                                     (uint8_t) scratch[srcarg]);
    410                         }
    411                         break;
    412                 case CMD_PIO_WRITE_A_16:
    413                         if (srcarg) {
    414                                 pio_write_16((ioport16_t *) code->cmds[i].addr,
    415                                     (uint16_t) scratch[srcarg]);
    416                         }
    417                         break;
    418                 case CMD_PIO_WRITE_A_32:
    419                         if (srcarg) {
    420                                 pio_write_32((ioport32_t *) code->cmds[i].addr,
    421                                     (uint32_t) scratch[srcarg]);
    422                         }
    423                         break;
    424406                case CMD_BTEST:
    425407                        if ((srcarg) && (dstarg)) {
  • uspace/srv/hw/netif/dp8390/dp8390.c

    rba21938 rc2f3e0b  
    375375}
    376376
    377 static uint8_t isr_acknowledge(dpeth_t *dep)
    378 {
    379         uint8_t isr = inb_reg0(dep, DP_ISR) & 0x7f;
    380         if (isr != 0)
    381                 outb_reg0(dep, DP_ISR, isr);
    382        
    383         return isr;
    384 }
    385 
    386 void dp_check_ints(int nil_phone, device_id_t device_id, dpeth_t *dep, uint8_t isr)
     377void dp_check_ints(int nil_phone, device_id_t device_id, dpeth_t *dep, int isr)
    387378{
    388379        int tsr;
     
    392383                fprintf(stderr, "dp8390: got premature interrupt\n");
    393384       
    394         for (; isr != 0; isr = isr_acknowledge(dep)) {
     385        for (; isr; isr = inb_reg0(dep, DP_ISR)) {
     386                outb_reg0(dep, DP_ISR, isr);
     387               
    395388                if (isr & (ISR_PTX | ISR_TXE)) {
    396389                        if (isr & ISR_TXE)
  • uspace/srv/hw/netif/dp8390/dp8390_drv.h

    rba21938 rc2f3e0b  
    5656 *  @param[in,out] dep The network interface structure.
    5757 */
    58 void dp_check_ints(int nil_phone, device_id_t device_id, dpeth_t *dep, uint8_t isr);
     58void dp_check_ints(int nil_phone, device_id_t device_id, dpeth_t *dep, int isr);
    5959
    6060/** Probes and initializes the network interface.
  • uspace/srv/hw/netif/dp8390/dp8390_module.c

    rba21938 rc2f3e0b  
    9292        },
    9393        {
    94                 .cmd = CMD_PIO_WRITE_A_8,
     94                .cmd = CMD_PIO_WRITE_8,
    9595                .addr = NULL,
    96                 .srcarg = 3
     96                .value = 0xff
    9797        },
    9898        {
Note: See TracChangeset for help on using the changeset viewer.