VirtualBox

vbox的更動 11159 路徑 trunk/src/VBox/Devices/Storage


忽略:
時間撮記:
2008-8-5 下午11:23:18 (16 年 以前)
作者:
vboxsync
訊息:

GC->RC: ATA and AHCI.

位置:
trunk/src/VBox/Devices/Storage
檔案:
修改 2 筆資料

圖例:

未更動
新增
刪除
  • trunk/src/VBox/Devices/Storage/ATAController.h

    r11144 r11159  
    166166    R0PTRTYPE(uint8_t *) pbIOBufferR0;
    167167    /** Pointer to the I/O buffer. */
    168     RCPTRTYPE(uint8_t *) pbIOBufferGC;
     168    RCPTRTYPE(uint8_t *) pbIOBufferRC;
    169169#if 1 /*HC_ARCH_BITS == 64*/
    170170    RTRCPTR Aligmnent0; /**< Align the statistics at an 8-byte boundrary. */
     
    238238    R0PTRTYPE(struct ATACONTROLLER *)   pControllerR0;
    239239    /** Pointer to device instance. */
    240     PPDMDEVINSGC                        pDevInsGC;
     240    PPDMDEVINSRC                        pDevInsRC;
    241241    /** Pointer to controller instance. */
    242     RCPTRTYPE(struct ATACONTROLLER *)   pControllerGC;
     242    RCPTRTYPE(struct ATACONTROLLER *)   pControllerRC;
    243243} ATADevState;
    244244
     
    335335    PPDMDEVINSR0        pDevInsR0;
    336336    /** Pointer to device instance. */
    337     PPDMDEVINSGC        pDevInsGC;
     337    PPDMDEVINSRC        pDevInsRC;
    338338
    339339    /** Set when the destroying the device instance and the thread must exit. */
     
    371371#ifndef VBOX_DEVICE_STRUCT_TESTCASE
    372372
    373 #define ATADEVSTATE_2_CONTROLLER(pIf)          ( (pIf)->CTXALLSUFF(pController) )
    374 #define ATADEVSTATE_2_DEVINS(pIf)              ( (pIf)->CTXALLSUFF(pDevIns) )
    375 #define CONTROLLER_2_DEVINS(pController)       ( (pController)->CTXALLSUFF(pDevIns) )
     373#define ATADEVSTATE_2_CONTROLLER(pIf)          ( (pIf)->CTX_SUFF(pController) )
     374#define ATADEVSTATE_2_DEVINS(pIf)              ( (pIf)->CTX_SUFF(pDevIns) )
     375#define CONTROLLER_2_DEVINS(pController)       ( (pController)->CTX_SUFF(pDevIns) )
    376376#define PDMIBASE_2_ATASTATE(pInterface)        ( (ATADevState *)((uintptr_t)(pInterface) - RT_OFFSETOF(ATADevState, IBase)) )
    377377
  • trunk/src/VBox/Devices/Storage/DevATA.cpp

    r11151 r11159  
    754754        RTStrPrintf(aSerial, sizeof(aSerial), "VB%08x-%08x", Uuid.au32[0], Uuid.au32[3]);
    755755
    756     p = (uint16_t *)s->CTXALLSUFF(pbIOBuffer);
     756    p = (uint16_t *)s->CTX_SUFF(pbIOBuffer);
    757757    memset(p, 0, 512);
    758758    p[0] = RT_H2LE_U16(0x0040);
     
    878878        RTStrPrintf(aSerial, sizeof(aSerial), "VB%08x-%08x", Uuid.au32[0], Uuid.au32[3]);
    879879
    880     p = (uint16_t *)s->CTXALLSUFF(pbIOBuffer);
     880    p = (uint16_t *)s->CTX_SUFF(pbIOBuffer);
    881881    memset(p, 0, 512);
    882882    /* Removable CDROM, 50us response, 12 byte packets */
     
    11211121    iLBA = ataGetSector(s);
    11221122    Log(("%s: %d sectors at LBA %d\n", __FUNCTION__, cSectors, iLBA));
    1123     rc = ataReadSectors(s, iLBA, s->CTXALLSUFF(pbIOBuffer), cSectors);
     1123    rc = ataReadSectors(s, iLBA, s->CTX_SUFF(pbIOBuffer), cSectors);
    11241124    if (VBOX_SUCCESS(rc))
    11251125    {
     
    11681168    iLBA = ataGetSector(s);
    11691169    Log(("%s: %d sectors at LBA %d\n", __FUNCTION__, cSectors, iLBA));
    1170     rc = ataWriteSectors(s, iLBA, s->CTXALLSUFF(pbIOBuffer), cSectors);
     1170    rc = ataWriteSectors(s, iLBA, s->CTX_SUFF(pbIOBuffer), cSectors);
    11711171    if (VBOX_SUCCESS(rc))
    11721172    {
     
    13431343    {
    13441344        case 2048:
    1345             rc = s->pDrvBlock->pfnRead(s->pDrvBlock, (uint64_t)s->iATAPILBA * s->cbATAPISector, s->CTXALLSUFF(pbIOBuffer), s->cbATAPISector * cSectors);
     1345            rc = s->pDrvBlock->pfnRead(s->pDrvBlock, (uint64_t)s->iATAPILBA * s->cbATAPISector, s->CTX_SUFF(pbIOBuffer), s->cbATAPISector * cSectors);
    13461346            break;
    13471347        case 2352:
    13481348            {
    1349                 uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1349                uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    13501350
    13511351                for (uint32_t i = s->iATAPILBA; i < s->iATAPILBA + cSectors; i++)
     
    14141414
    14151415    if (s->uTxDir == PDMBLOCKTXDIR_TO_DEVICE)
    1416         Log3(("ATAPI PT data write (%d): %.*Vhxs\n", cbTransfer, cbTransfer, s->CTXALLSUFF(pbIOBuffer)));
     1416        Log3(("ATAPI PT data write (%d): %.*Vhxs\n", cbTransfer, cbTransfer, s->CTX_SUFF(pbIOBuffer)));
    14171417
    14181418    /* Simple heuristics: if there is at least one sector of data
     
    14431443        uint32_t iATAPILBA, cSectors, cReqSectors;
    14441444        size_t cbCurrTX;
    1445         uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1445        uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    14461446
    14471447        switch (s->aATAPICmd[0])
     
    15171517    }
    15181518    else
    1519         rc = s->pDrvBlock->pfnSendCmd(s->pDrvBlock, s->aATAPICmd, (PDMBLOCKTXDIR)s->uTxDir, s->CTXALLSUFF(pbIOBuffer), &cbTransfer, &uATAPISenseKey, 30000 /**< @todo timeout */);
     1519        rc = s->pDrvBlock->pfnSendCmd(s->pDrvBlock, s->aATAPICmd, (PDMBLOCKTXDIR)s->uTxDir, s->CTX_SUFF(pbIOBuffer), &cbTransfer, &uATAPISenseKey, 30000 /**< @todo timeout */);
    15201520    if (pProf) { STAM_PROFILE_ADV_STOP(pProf, b); }
    15211521
     
    15551555                 * Motivation: changing the VM configuration should be as
    15561556                 * invisible as possible to the guest. */
    1557                 Log3(("ATAPI PT inquiry data before (%d): %.*Vhxs\n", cbTransfer, cbTransfer, s->CTXALLSUFF(pbIOBuffer)));
    1558                 ataSCSIPadStr(s->CTXALLSUFF(pbIOBuffer) + 8, "VBOX", 8);
    1559                 ataSCSIPadStr(s->CTXALLSUFF(pbIOBuffer) + 16, "CD-ROM", 16);
    1560                 ataSCSIPadStr(s->CTXALLSUFF(pbIOBuffer) + 32, "1.0", 4);
     1557                Log3(("ATAPI PT inquiry data before (%d): %.*Vhxs\n", cbTransfer, cbTransfer, s->CTX_SUFF(pbIOBuffer)));
     1558                ataSCSIPadStr(s->CTX_SUFF(pbIOBuffer) + 8, "VBOX", 8);
     1559                ataSCSIPadStr(s->CTX_SUFF(pbIOBuffer) + 16, "CD-ROM", 16);
     1560                ataSCSIPadStr(s->CTX_SUFF(pbIOBuffer) + 32, "1.0", 4);
    15611561            }
    15621562            if (cbTransfer)
    1563                 Log3(("ATAPI PT data read (%d): %.*Vhxs\n", cbTransfer, cbTransfer, s->CTXALLSUFF(pbIOBuffer)));
     1563                Log3(("ATAPI PT data read (%d): %.*Vhxs\n", cbTransfer, cbTransfer, s->CTX_SUFF(pbIOBuffer)));
    15641564        }
    15651565        s->iSourceSink = ATAFN_SS_NULL;
     
    16071607static bool atapiReadCapacitySS(ATADevState *s)
    16081608{
    1609     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1609    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    16101610
    16111611    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    16211621static bool atapiReadDiscInformationSS(ATADevState *s)
    16221622{
    1623     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1623    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    16241624
    16251625    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    16471647static bool atapiReadTrackInformationSS(ATADevState *s)
    16481648{
    1649     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1649    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    16501650
    16511651    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    16761676static bool atapiGetConfigurationSS(ATADevState *s)
    16771677{
    1678     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1678    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    16791679
    16801680    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    17111711static bool atapiInquirySS(ATADevState *s)
    17121712{
    1713     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1713    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    17141714
    17151715    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    17391739static bool atapiModeSenseErrorRecoverySS(ATADevState *s)
    17401740{
    1741     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1741    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    17421742
    17431743    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    17671767static bool atapiModeSenseCDStatusSS(ATADevState *s)
    17681768{
    1769     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1769    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    17701770
    17711771    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    18151815static bool atapiRequestSenseSS(ATADevState *s)
    18161816{
    1817     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1817    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    18181818
    18191819    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    18321832static bool atapiMechanismStatusSS(ATADevState *s)
    18331833{
    1834     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1834    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    18351835
    18361836    Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
     
    18511851static bool atapiReadTOCNormalSS(ATADevState *s)
    18521852{
    1853     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer), *q, iStartTrack;
     1853    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer), *q, iStartTrack;
    18541854    bool fMSF;
    18551855    uint32_t cbSize;
     
    19131913static bool atapiReadTOCMultiSS(ATADevState *s)
    19141914{
    1915     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer);
     1915    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer);
    19161916    bool fMSF;
    19171917
     
    19451945static bool atapiReadTOCRawSS(ATADevState *s)
    19461946{
    1947     uint8_t *pbBuf = s->CTXALLSUFF(pbIOBuffer), *q, iStartTrack;
     1947    uint8_t *pbBuf = s->CTX_SUFF(pbIOBuffer), *q, iStartTrack;
    19481948    bool fMSF;
    19491949    uint32_t cbSize;
     
    20372037
    20382038    pbPacket = s->aATAPICmd;
    2039     pbBuf = s->CTXALLSUFF(pbIOBuffer);
     2039    pbBuf = s->CTX_SUFF(pbIOBuffer);
    20402040    switch (pbPacket[0])
    20412041    {
     
    23902390
    23912391    pbPacket = s->aATAPICmd;
    2392     pbBuf = s->CTXALLSUFF(pbIOBuffer);
     2392    pbBuf = s->CTX_SUFF(pbIOBuffer);
    23932393    switch (pbPacket[0])
    23942394    {
     
    26792679{
    26802680    s->fDMA = !!(s->uATARegFeature & 1);
    2681     memcpy(s->aATAPICmd, s->CTXALLSUFF(pbIOBuffer), ATAPI_PACKET_SIZE);
     2681    memcpy(s->aATAPICmd, s->CTX_SUFF(pbIOBuffer), ATAPI_PACKET_SIZE);
    26822682    s->uTxDir = PDMBLOCKTXDIR_NONE;
    26832683    s->cbTotalTransfer = 0;
     
    35183518    {
    35193519        Assert(s->uTxDir == PDMBLOCKTXDIR_TO_DEVICE);
    3520         p = s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart;
     3520        p = s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart;
    35213521#ifndef IN_RING3
    35223522        /* All but the last transfer unit is simple enough for GC, but
     
    35503550    {
    35513551        Assert(s->uTxDir == PDMBLOCKTXDIR_FROM_DEVICE);
    3552         p = s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart;
     3552        p = s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart;
    35533553#ifndef IN_RING3
    35543554        /* All but the last transfer unit is simple enough for GC, but
     
    36603660                       (int)pDesc, pBuffer, cbBuffer));
    36613661                if (uTxDir == PDMBLOCKTXDIR_FROM_DEVICE)
    3662                     PDMDevHlpPhysWrite(pDevIns, pBuffer, s->CTXALLSUFF(pbIOBuffer) + iIOBufferCur, dmalen);
     3662                    PDMDevHlpPhysWrite(pDevIns, pBuffer, s->CTX_SUFF(pbIOBuffer) + iIOBufferCur, dmalen);
    36633663                else
    3664                     PDMDevHlpPhysRead(pDevIns, pBuffer, s->CTXALLSUFF(pbIOBuffer) + iIOBufferCur, dmalen);
     3664                    PDMDevHlpPhysRead(pDevIns, pBuffer, s->CTX_SUFF(pbIOBuffer) + iIOBufferCur, dmalen);
    36653665                iIOBufferCur += dmalen;
    36663666                cbTotalTransfer -= dmalen;
     
    47164716#ifdef IN_GC
    47174717        for (uint32_t i = 0; i < cbTransfer; i += cb)
    4718             MMGCRamWriteNoTrapHandler((char *)GCDst + i, s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart + i, cb);
     4718            MMGCRamWriteNoTrapHandler((char *)GCDst + i, s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart + i, cb);
    47194719#else /* !IN_GC */
    4720         rc = PGMPhysWriteGCPtrDirty(PDMDevHlpGetVM(pDevIns), GCDst, s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart, cbTransfer);
     4720        rc = PGMPhysWriteGCPtrDirty(PDMDevHlpGetVM(pDevIns), GCDst, s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart, cbTransfer);
    47214721        Assert(rc == VINF_SUCCESS);
    47224722#endif /* IN_GC */
    47234723
    47244724        if (cbTransfer)
    4725             Log3(("%s: addr=%#x val=%.*Vhxs\n", __FUNCTION__, Port, cbTransfer, s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart));
     4725            Log3(("%s: addr=%#x val=%.*Vhxs\n", __FUNCTION__, Port, cbTransfer, s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart));
    47264726        s->iIOBufferPIODataStart += cbTransfer;
    47274727        *pGCPtrDst = (RTGCPTR)((RTGCUINTPTR)GCDst + cbTransfer);
     
    47734773#ifdef IN_GC
    47744774        for (uint32_t i = 0; i < cbTransfer; i += cb)
    4775             MMGCRamReadNoTrapHandler(s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart + i, (char *)GCSrc + i, cb);
     4775            MMGCRamReadNoTrapHandler(s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart + i, (char *)GCSrc + i, cb);
    47764776#else /* !IN_GC */
    4777         rc = PGMPhysReadGCPtr(PDMDevHlpGetVM(pDevIns), s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart, GCSrc, cbTransfer);
     4777        rc = PGMPhysReadGCPtr(PDMDevHlpGetVM(pDevIns), s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart, GCSrc, cbTransfer);
    47784778        Assert(rc == VINF_SUCCESS);
    47794779#endif /* IN_GC */
    47804780
    47814781        if (cbTransfer)
    4782             Log3(("%s: addr=%#x val=%.*Vhxs\n", __FUNCTION__, Port, cbTransfer, s->CTXALLSUFF(pbIOBuffer) + s->iIOBufferPIODataStart));
     4782            Log3(("%s: addr=%#x val=%.*Vhxs\n", __FUNCTION__, Port, cbTransfer, s->CTX_SUFF(pbIOBuffer) + s->iIOBufferPIODataStart));
    47834783        s->iIOBufferPIODataStart += cbTransfer;
    47844784        *pGCPtrSrc = (RTGCPTR)((RTGCUINTPTR)GCSrc + cbTransfer);
     
    49094909{
    49104910    if (s->pbIOBufferR3)
    4911         s->pbIOBufferGC = MMHyperR3ToRC(PDMDevHlpGetVM(pDevIns), s->pbIOBufferR3);
     4911        s->pbIOBufferRC = MMHyperR3ToRC(PDMDevHlpGetVM(pDevIns), s->pbIOBufferR3);
    49124912}
    49134913
     
    49224922    for (uint32_t i = 0; i < RT_ELEMENTS(pData->aCts); i++)
    49234923    {
    4924         pData->aCts[i].pDevInsGC += offDelta;
    4925         pData->aCts[i].aIfs[0].pDevInsGC += offDelta;
    4926         pData->aCts[i].aIfs[0].pControllerGC += offDelta;
     4924        pData->aCts[i].pDevInsRC += offDelta;
     4925        pData->aCts[i].aIfs[0].pDevInsRC += offDelta;
     4926        pData->aCts[i].aIfs[0].pControllerRC += offDelta;
    49274927        ataRelocBuffer(pDevIns, &pData->aCts[i].aIfs[0]);
    4928         pData->aCts[i].aIfs[1].pDevInsGC += offDelta;
    4929         pData->aCts[i].aIfs[1].pControllerGC += offDelta;
     4928        pData->aCts[i].aIfs[1].pDevInsRC += offDelta;
     4929        pData->aCts[i].aIfs[1].pControllerRC += offDelta;
    49304930        ataRelocBuffer(pDevIns, &pData->aCts[i].aIfs[1]);
    49314931    }
     
    50935093        Assert(pIf->pbIOBufferR3);
    50945094        Assert(pIf->pbIOBufferR0 == MMHyperR3ToR0(pVM, pIf->pbIOBufferR3));
    5095         Assert(pIf->pbIOBufferGC == MMHyperR3ToRC(pVM, pIf->pbIOBufferR3));
     5095        Assert(pIf->pbIOBufferRC == MMHyperR3ToRC(pVM, pIf->pbIOBufferR3));
    50965096    }
    50975097    else
     
    51065106            return VERR_NO_MEMORY;
    51075107        pIf->pbIOBufferR0 = MMHyperR3ToR0(pVM, pIf->pbIOBufferR3);
    5108         pIf->pbIOBufferGC = MMHyperR3ToRC(pVM, pIf->pbIOBufferR3);
     5108        pIf->pbIOBufferRC = MMHyperR3ToRC(pVM, pIf->pbIOBufferR3);
    51095109    }
    51105110
     
    53605360            SSMR3PutU32(pSSMHandle, pData->aCts[i].aIfs[j].cbIOBuffer);
    53615361            if (pData->aCts[i].aIfs[j].cbIOBuffer)
    5362                 SSMR3PutMem(pSSMHandle, pData->aCts[i].aIfs[j].CTXALLSUFF(pbIOBuffer), pData->aCts[i].aIfs[j].cbIOBuffer);
     5362                SSMR3PutMem(pSSMHandle, pData->aCts[i].aIfs[j].CTX_SUFF(pbIOBuffer), pData->aCts[i].aIfs[j].cbIOBuffer);
    53635363            else
    5364                 Assert(pData->aCts[i].aIfs[j].CTXALLSUFF(pbIOBuffer) == NULL);
     5364                Assert(pData->aCts[i].aIfs[j].CTX_SUFF(pbIOBuffer) == NULL);
    53655365        }
    53665366    }
     
    54665466            if (pData->aCts[i].aIfs[j].cbIOBuffer)
    54675467            {
    5468                 if (pData->aCts[i].aIfs[j].CTXALLSUFF(pbIOBuffer))
    5469                     SSMR3GetMem(pSSMHandle, pData->aCts[i].aIfs[j].CTXALLSUFF(pbIOBuffer), pData->aCts[i].aIfs[j].cbIOBuffer);
     5468                if (pData->aCts[i].aIfs[j].CTX_SUFF(pbIOBuffer))
     5469                    SSMR3GetMem(pSSMHandle, pData->aCts[i].aIfs[j].CTX_SUFF(pbIOBuffer), pData->aCts[i].aIfs[j].cbIOBuffer);
    54705470                else
    54715471                {
     
    54825482            }
    54835483            else
    5484                 Assert(pData->aCts[i].aIfs[j].CTXALLSUFF(pbIOBuffer) == NULL);
     5484                Assert(pData->aCts[i].aIfs[j].CTX_SUFF(pbIOBuffer) == NULL);
    54855485        }
    54865486    }
     
    56025602        pData->aCts[i].pDevInsR3 = pDevIns;
    56035603        pData->aCts[i].pDevInsR0 = PDMDEVINS_2_R0PTR(pDevIns);
    5604         pData->aCts[i].pDevInsGC = PDMDEVINS_2_GCPTR(pDevIns);
     5604        pData->aCts[i].pDevInsRC = PDMDEVINS_2_GCPTR(pDevIns);
    56055605        pData->aCts[i].DelayIRQMillies = (uint32_t)DelayIRQMillies;
    56065606        for (uint32_t j = 0; j < RT_ELEMENTS(pData->aCts[i].aIfs); j++)
     
    56095609            pData->aCts[i].aIfs[j].pDevInsR3 = pDevIns;
    56105610            pData->aCts[i].aIfs[j].pDevInsR0 = PDMDEVINS_2_R0PTR(pDevIns);
    5611             pData->aCts[i].aIfs[j].pDevInsGC = PDMDEVINS_2_GCPTR(pDevIns);
     5611            pData->aCts[i].aIfs[j].pDevInsRC = PDMDEVINS_2_GCPTR(pDevIns);
    56125612            pData->aCts[i].aIfs[j].pControllerR3 = &pData->aCts[i];
    56135613            pData->aCts[i].aIfs[j].pControllerR0 = MMHyperR3ToR0(PDMDevHlpGetVM(pDevIns), &pData->aCts[i]);
    5614             pData->aCts[i].aIfs[j].pControllerGC = MMHyperR3ToRC(PDMDevHlpGetVM(pDevIns), &pData->aCts[i]);
     5614            pData->aCts[i].aIfs[j].pControllerRC = MMHyperR3ToRC(PDMDevHlpGetVM(pDevIns), &pData->aCts[i]);
    56155615            pData->aCts[i].aIfs[j].IBase.pfnQueryInterface = ataQueryInterface;
    56165616            pData->aCts[i].aIfs[j].IMountNotify.pfnMountNotify = ataMountNotify;
     
    57955795                pIf->pbIOBufferR3 = NULL;
    57965796                pIf->pbIOBufferR0 = NIL_RTR0PTR;
    5797                 pIf->pbIOBufferGC = NIL_RTGCPTR;
     5797                pIf->pbIOBufferRC = NIL_RTGCPTR;
    57985798                LogRel(("PIIX3 ATA: LUN#%d: no unit\n", pIf->iLUN));
    57995799            }
注意: 瀏覽 TracChangeset 來幫助您使用更動檢視器

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette