pio_orb_rmw(D3X)
pio_orb_rmw - I/O-bus read-modify-write cycle routines
As shipped in IRIX 6.5.5. Unchanged since IRIX 6.5.
NAME pio_orb_rmw - I/O-bus read-modify-write cycle routines SYNOPSIS pio_orb_rmw(piomap_t *piomap, iopaddr_t pioaddr, unsigned char mask); DESCRIPTION This function perform I/O-bus atomic read-modify-write operations. pio_orb_rmw(D3X), pio_orh_rmw(D3X), or pio_orw_rmw(D3X) read a byte, half-word, or word (respectively) from the address pointed to by pioaddr. The routine then ORs the byte, half-word, or word with the mask in mask and writes the result to the address, pioaddr (overwriting the original value). piomap is the PIO map returned from pio_mapalloc(D3X). The address, pioaddr, must be correctly aligned for the given transfer. Return Values None Note To prevent any other I/O-bus cycles during this operation, these routines lock the I/O bus.