Changes in / [ba21938:c2f3e0b] in mainline
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/generic/include/ddi/irq.h
rba21938 rc2f3e0b 54 54 /** Read 4 bytes from the I/O space. */ 55 55 CMD_PIO_READ_32, 56 57 56 /** Write 1 byte to the I/O space. */ 58 57 CMD_PIO_WRITE_8, … … 63 62 64 63 /** 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 69 69 /** 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. 90 72 */ 91 73 CMD_PREDICATE, … … 93 75 /** Accept the interrupt. */ 94 76 CMD_ACCEPT, 95 96 77 /** Decline the interrupt. */ 97 78 CMD_DECLINE, -
kernel/generic/src/ipc/irq.c
rba21938 rc2f3e0b 404 404 (uint32_t) code->cmds[i].value); 405 405 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;424 406 case CMD_BTEST: 425 407 if ((srcarg) && (dstarg)) { -
uspace/srv/hw/netif/dp8390/dp8390.c
rba21938 rc2f3e0b 375 375 } 376 376 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) 377 void dp_check_ints(int nil_phone, device_id_t device_id, dpeth_t *dep, int isr) 387 378 { 388 379 int tsr; … … 392 383 fprintf(stderr, "dp8390: got premature interrupt\n"); 393 384 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 395 388 if (isr & (ISR_PTX | ISR_TXE)) { 396 389 if (isr & ISR_TXE) -
uspace/srv/hw/netif/dp8390/dp8390_drv.h
rba21938 rc2f3e0b 56 56 * @param[in,out] dep The network interface structure. 57 57 */ 58 void dp_check_ints(int nil_phone, device_id_t device_id, dpeth_t *dep, uint8_t isr);58 void dp_check_ints(int nil_phone, device_id_t device_id, dpeth_t *dep, int isr); 59 59 60 60 /** Probes and initializes the network interface. -
uspace/srv/hw/netif/dp8390/dp8390_module.c
rba21938 rc2f3e0b 92 92 }, 93 93 { 94 .cmd = CMD_PIO_WRITE_ A_8,94 .cmd = CMD_PIO_WRITE_8, 95 95 .addr = NULL, 96 . srcarg = 396 .value = 0xff 97 97 }, 98 98 {
Note:
See TracChangeset
for help on using the changeset viewer.