You've already forked linux-apfs
mirror of
https://github.com/linux-apfs/linux-apfs.git
synced 2026-05-01 15:00:59 -07:00
ide: add support for CFA specified transfer modes (take 3)
Add support for the CompactFlash specific PIO modes 5/6 and MWDMA modes 3/4. Since there were no PIO5 capable hard drives produced and one would also need 66 MHz IDE clock to actually get the difference WRT the address setup timings programmed, I decided to simply replace the old non-standard PIO mode 5 timings with the CFA specified ones. Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Cc: stf_xl@wp.pl Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
This commit is contained in:
committed by
Bartlomiej Zolnierkiewicz
parent
c4199930b1
commit
74638c8482
@@ -261,6 +261,14 @@ static unsigned int ide_get_mode_mask(ide_drive_t *drive, u8 base, u8 req_mode)
|
||||
break;
|
||||
case XFER_MW_DMA_0:
|
||||
mask = id[ATA_ID_MWDMA_MODES];
|
||||
|
||||
/* Also look for the CF specific MWDMA modes... */
|
||||
if (ata_id_is_cfa(id) && (id[ATA_ID_CFA_MODES] & 0x38)) {
|
||||
u8 mode = ((id[ATA_ID_CFA_MODES] & 0x38) >> 3) - 1;
|
||||
|
||||
mask |= ((2 << mode) - 1) << 3;
|
||||
}
|
||||
|
||||
if (port_ops && port_ops->mdma_filter)
|
||||
mask &= port_ops->mdma_filter(drive);
|
||||
else
|
||||
|
||||
Reference in New Issue
Block a user