Debounce sata phy status
int sata_link_debounce(struct ata_link * link, const unsigned long * params, unsigned long deadline);
link
ATA link to debounce SATA phy status for
params
timing parameters { interval, duratinon, timeout } in msec
deadline
deadline jiffies for the operation
Make sure SStatus of link reaches stable state, determined by holding the same value where DET is not 1 for duration polled every interval, before timeout. Timeout constraints the beginning of the stable state. Because DET gets stuck at 1 on some controllers after hot unplugging, this functions waits until timeout then returns 0 if DET is stable at 1.
timeout is further limited by deadline. The sooner of the two is used.
Kernel thread context (may sleep)
0 on success, -errno on failure.
Jeff Garzik
Author.