- Timestamp:
- May 6, 2011 7:10:27 PM (14 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Storage/DevAHCI.cpp
r36972 r36990 1905 1905 pAhciPort->regIE = 0; 1906 1906 pAhciPort->regCMD = AHCI_PORT_CMD_CPD | /* Cold presence detection */ 1907 AHCI_PORT_CMD_HPCP | /* Hotplugging supported. */ 1907 1908 AHCI_PORT_CMD_SUD | /* Device has spun up. */ 1908 1909 AHCI_PORT_CMD_POD; /* Port is powered on. */ … … 7925 7926 ahciMediumRemoved(pAhciPort); 7926 7927 7928 if (!(fFlags & PDM_TACH_FLAGS_NOT_HOT_PLUG)) 7929 { 7930 /* 7931 * Inform the guest about the removed device. 7932 */ 7933 pAhciPort->regSSTS = 0; 7934 ASMAtomicAndU32(&pAhciPort->regCMD, ~AHCI_PORT_CMD_CPS); 7935 ASMAtomicOrU32(&pAhciPort->regIS, AHCI_PORT_IS_CPDS | AHCI_PORT_IS_PRCS); 7936 ASMAtomicOrU32(&pAhciPort->regSERR, AHCI_PORT_SERR_N); 7937 if ( (pAhciPort->regIE & AHCI_PORT_IE_CPDE) 7938 || (pAhciPort->regIE & AHCI_PORT_IE_PCE) 7939 || (pAhciPort->regIE & AHCI_PORT_IE_PRCE)) 7940 ahciHbaSetInterrupt(pAhciPort->CTX_SUFF(pAhci), pAhciPort->iLUN, VERR_IGNORED); 7941 } 7942 7927 7943 /* 7928 7944 * Zero some important members. … … 8030 8046 if (RT_SUCCESS(rc) && pAhciPort->fATAPI) 8031 8047 ahciMediumInserted(pAhciPort); 8048 8049 /* Inform the guest about the added device in case of hotplugging. */ 8050 if ( RT_SUCCESS(rc) 8051 && !(fFlags & PDM_TACH_FLAGS_NOT_HOT_PLUG)) 8052 { 8053 /* 8054 * Initialize registers 8055 */ 8056 ASMAtomicOrU32(&pAhciPort->regCMD, AHCI_PORT_CMD_CPS); 8057 ASMAtomicOrU32(&pAhciPort->regIS, AHCI_PORT_IS_CPDS | AHCI_PORT_IS_PRCS | AHCI_PORT_IS_PCS); 8058 ASMAtomicOrU32(&pAhciPort->regSERR, AHCI_PORT_SERR_X | AHCI_PORT_SERR_N); 8059 if ( (pAhciPort->regIE & AHCI_PORT_IE_CPDE) 8060 || (pAhciPort->regIE & AHCI_PORT_IE_PCE) 8061 || (pAhciPort->regIE & AHCI_PORT_IE_PRCE)) 8062 ahciHbaSetInterrupt(pAhciPort->CTX_SUFF(pAhci), pAhciPort->iLUN, VERR_IGNORED); 8063 } 8032 8064 } 8033 8065 }
Note:
See TracChangeset
for help on using the changeset viewer.