sata_mv add temporary 3 second init delay for SiliconImage PMs
sata_mv does not yet fully support hotplug (coming soon, though). This means that the driver may not find a Silicon Image port-multiplier when first loaded, because those devices take in exceess of 3 seconds to sync up the SATA PHY (most devices do this in mere microseconds). So, as a short-term interim measure, here we insert a 3-second pause on initial driver load, once per controller board (not once per port!), to allow the Silicon Image port-multipliers to be detected later. This will be removed again (soon!) once hotplug is fully implemented/working. Signed-off-by: Mark Lord <mlord@pobox.com> Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
This commit is contained in:
parent
8a74f1a468
commit
094e50b2f7
1 changed files with 7 additions and 0 deletions
|
@ -2105,6 +2105,13 @@ static int mv6_reset_hc(struct mv_host_priv *hpriv, void __iomem *mmio,
|
|||
printk(KERN_ERR DRV_NAME ": can't clear global reset\n");
|
||||
rc = 1;
|
||||
}
|
||||
/*
|
||||
* Temporary: wait 3 seconds before port-probing can happen,
|
||||
* so that we don't miss finding sleepy SilXXXX port-multipliers.
|
||||
* This can go away once hotplug is fully/correctly implemented.
|
||||
*/
|
||||
if (rc == 0)
|
||||
msleep(3000);
|
||||
done:
|
||||
return rc;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue