Fix ATAPI DMA. We need to set the proper flags for DMA modes.
This commit is contained in:
parent
31532d6fec
commit
eb109cd6d5
@ -670,9 +670,11 @@ ata_generic_command(struct ata_request *request)
|
||||
int timeout = 5000;
|
||||
|
||||
/* issue packet command to controller */
|
||||
if (request->flags & ATA_R_DMA)
|
||||
ATA_IDX_OUTB(ch, ATA_FEATURE, ATA_F_DMA);
|
||||
ATA_IDX_OUTB(ch, ATA_CYL_LSB, request->transfersize);
|
||||
ATA_IDX_OUTB(ch, ATA_CYL_MSB, request->transfersize >> 8);
|
||||
ATA_IDX_OUTB(ch, ATA_COMMAND, ATA_PACKET_CMD);
|
||||
ATA_IDX_OUTB(ch, ATA_COMMAND, ATA_PACKET_CMD);
|
||||
|
||||
/* command interrupt device ? just return and wait for interrupt */
|
||||
if ((atadev->param.config & ATA_DRQ_MASK) == ATA_DRQ_INTR)
|
||||
|
Loading…
x
Reference in New Issue
Block a user