Windows appears to put the AHCI port into 'Partial power management state'
during reboot, the command puts it back into 'active state'.
AHCI/1: link down 0x00000231 (SCR STAT register)
->
AHCI/1: link up 0x00000133
Signed-off-by: Andrej Krutak andrej.krutak@sysgo.com
Message-ID: <
1531455205.6484.
1704814463638@ox.sysgo.com>
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
ahci_port_writel(ctrl, pnr, PORT_CMD, cmd);
/* spin up */
- cmd |= PORT_CMD_SPIN_UP;
+ cmd &= ~PORT_CMD_ICC_MASK;
+ cmd |= PORT_CMD_SPIN_UP | PORT_CMD_POWER_ON | PORT_CMD_ICC_ACTIVE;
ahci_port_writel(ctrl, pnr, PORT_CMD, cmd);
u32 end = timer_calc(AHCI_LINK_TIMEOUT);
for (;;) {