AHCI_REG_GHC
if (ahci_wait_ne(sc, AHCI_REG_GHC,
ahci_write(sc, AHCI_REG_GHC, AHCI_REG_GHC_AE);
ahci_read(sc, AHCI_REG_GHC); /* flush */
ahci_write(sc, AHCI_REG_GHC, AHCI_REG_GHC_AE | AHCI_REG_GHC_HR);
ahci_read(sc, AHCI_REG_GHC); /* flush */
if (ahci_wait_ne(sc, AHCI_REG_GHC,
ahci_write(sc, AHCI_REG_GHC, AHCI_REG_GHC_AE);
ahci_read(sc, AHCI_REG_GHC); /* flush */
ahci_read(sc, AHCI_REG_GHC); /* flush */
AHCI_FMT_GHC, ahci_read(sc, AHCI_REG_GHC));
ahci_write(sc, AHCI_REG_GHC, AHCI_REG_GHC_AE | AHCI_REG_GHC_IE);
ahci_write(sc, AHCI_REG_GHC, 0);