Re: SATA link power management issues

Tejun Heo
2015-01-12T13:16:10Z

Hello,

What you're experiencing looks like the ssd behaving badly after link
state transition. I wonder whether the right solution is plugging
PHYRDY IRQ for a while after LPM state change. Does the following
path make any difference?

Thanks.

diff --git a/drivers/ata/libahci.c b/drivers/ata/libahci.c
index 97683e4..684f45d 100644
--- a/drivers/ata/libahci.c
+++ b/drivers/ata/libahci.c
@@ -735,8 +735,8 @@ static int ahci_set_lpm(struct ata_link *link, enum ata_lpm_policy policy,
sata_link_scr_lpm(link, policy, false);

/* turn PHYRDY IRQ back on */
- pp->intr_mask |= PORT_IRQ_PHYRDY;
- writel(pp->intr_mask, port_mmio + PORT_IRQ_MASK);
+ //pp->intr_mask |= PORT_IRQ_PHYRDY;
+ //writel(pp->intr_mask, port_mmio + PORT_IRQ_MASK);
}

return 0;

--
tejun