ATA_WAIT_REGISTER(9) libata Library ATA_WAIT_REGISTER(9)
NAME ata_wait_register - wait until register value changes
SYNOPSIS u32 ata_wait_register(struct ata_port * ap, void __iomem * reg, u32 mask, u32 val, unsigned long interval, unsigned long timeout);
ARGUMENTS ap ATA port to wait register for, can be NULL
reg IO-mapped register
mask Mask to apply to read register value
val Wait condition
interval polling interval in milliseconds
timeout timeout in milliseconds
DESCRIPTION Waiting for some bits of register to change is a common operation for ATA controllers. This function reads 32bit LE IO-mapped register reg and tests for the following condition.
(*reg & mask) != val
If the condition is met, it returns; otherwise, the process is repeated after interval_msec until timeout.
LOCKING Kernel thread context (may sleep)
RETURNS The final register value.
AUTHOR Jeff Garzik Author.
COPYRIGHT Kernel Hackers Manual 2.6. July 2015 ATA_WAIT_REGISTER(9)