diff -r 73ea206103e6 -r 43365a9b78a3 kernel/eka/drivers/pbus/mmc/mmccd_init.cpp --- a/kernel/eka/drivers/pbus/mmc/mmccd_init.cpp Wed Jun 23 19:44:53 2010 +0300 +++ b/kernel/eka/drivers/pbus/mmc/mmccd_init.cpp Tue Jul 06 15:50:07 2010 +0300 @@ -278,6 +278,16 @@ break; #if !defined(__WINS__) + if ((mi.iFlags & TMMCMachineInfo::ESupportsDMA) == TMMCMachineInfo::ESupportsDMA) + { + err = LocDrv::RegisterDmaDevice(pMedia, + KMMCardHighCapBlockSize, + pS->MaxDataTransferLength(), + pS->DmaAlignment()); + if (err != KErrNone) + break; + } + if (demandPagingSupported && demandPagingInfo.iSlotNumber == i) { err = LocDrv::RegisterPagingDevice( @@ -295,16 +305,6 @@ if (err != KErrNone) break; } - - if ((mi.iFlags & TMMCMachineInfo::ESupportsDMA) == TMMCMachineInfo::ESupportsDMA) - { - err = LocDrv::RegisterDmaDevice(pMedia, - KMMCardHighCapBlockSize, - pS->MaxDataTransferLength(), - pS->DmaAlignment()); - if (err != KErrNone) - break; - } #endif // __WINS__ driveListIndex+= drivesPerSlot;