Upgrade IDE maximum to UDMA/100 and add IDENTIFY word 93 (80-conductor cable detection)

This commit is contained in:
RichardG867
2020-10-13 19:20:14 -03:00
parent 7a71d9ece8
commit 124866baaa
4 changed files with 7 additions and 4 deletions

View File

@@ -412,7 +412,7 @@ ide_get_max(ide_t *ide, int type)
return -1;
case TYPE_UDMA: /* UDMA */
if (!ide_boards[ide->board]->force_ata3 && (ide_bm[ide->board] != NULL))
return 4 /*2*/;
return 5;
return -1;
default:
@@ -620,6 +620,9 @@ ide_identify(ide_t *ide)
ide->buffer[88] |= d;
ide_log("PIDENTIFY DMA Mode: %04X, %04X\n", ide->buffer[62], ide->buffer[63]);
}
if (max_udma >= 4)
ide->buffer[93] = 0x6000; /* Drive reports 80-conductor cable */
}

View File

@@ -2013,7 +2013,7 @@ mo_get_max(int ide_has_dma, int type)
ret = ide_has_dma ? 1 : -1;
break;
case TYPE_UDMA:
ret = ide_has_dma ? 4 /*2*/ : -1;
ret = ide_has_dma ? 5 : -1;
break;
}

View File

@@ -2242,7 +2242,7 @@ zip_get_max(int ide_has_dma, int type)
ret = ide_has_dma ? 1 : -1;
break;
case TYPE_UDMA:
ret = ide_has_dma ? 4 /*2*/ : -1;
ret = ide_has_dma ? 5 : -1;
break;
}

View File

@@ -2601,7 +2601,7 @@ scsi_cdrom_get_max(int ide_has_dma, int type)
ret = ide_has_dma ? 2 : -1;
break;
case TYPE_UDMA:
ret = ide_has_dma ? 4 /*2*/ : -1;
ret = ide_has_dma ? 5 : -1;
break;
default:
ret = -1;