X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=Modules%2FStorage%2FATA%2Fmain.c;h=ad55035674576a3c450e44c24d44bd1b6eb9b74b;hb=3998cfbbadb005bf3ad52ea2538dc21f82864ddc;hp=be77348ab7a26c3ace02e7b99c9febe635d5d00e;hpb=321d008781422b7d7137e9acc1ba0e84dec79ff1;p=tpg%2Facess2.git diff --git a/Modules/Storage/ATA/main.c b/Modules/Storage/ATA/main.c index be77348a..ad550356 100644 --- a/Modules/Storage/ATA/main.c +++ b/Modules/Storage/ATA/main.c @@ -2,7 +2,7 @@ * Acess2 IDE Harddisk Driver * - main.c */ -#define DEBUG 0 +#define DEBUG 1 #include #include #include @@ -497,6 +497,7 @@ Uint64 ATA_ReadFS(tVFS_Node *Node, Uint64 Offset, Uint64 Length, void *Buffer) { int ret = DrvUtil_ReadBlock(Offset, Length, Buffer, ATA_ReadRaw, SECTOR_SIZE, disk); + Log("ATA_ReadFS: disk=%i, Offset=%lli, Length=%lli", disk, Offset, Length); Debug_HexDump("ATA_ReadFS", Buffer, Length); LEAVE('i', ret); return ret; @@ -679,12 +680,7 @@ int ATA_ReadDMA(Uint8 Disk, Uint64 Address, Uint Count, void *Buffer) ATA_int_BusMasterWriteByte( cont << 3, 9 ); // Read and start // Wait for transfer to complete - val = 0; - while( gaATA_IRQs[cont] == 0 && !(val & 0x4) ) { - val = ATA_int_BusMasterReadByte( (cont << 3) + 2 ); - //LOG("val = 0x%02x", val); - Threads_Yield(); - } + while( gaATA_IRQs[cont] == 0 ) Threads_Yield(); // Complete Transfer ATA_int_BusMasterWriteByte( cont << 3, 8 ); // Read and stop