[libata passthru] address slave devices correctly

This commit is contained in:
Mark Lord 2005-11-13 16:22:06 -05:00 committed by Jeff Garzik
parent e12a1be6e8
commit dcc2d1e7f0
1 changed files with 6 additions and 0 deletions

View File

@ -2276,6 +2276,12 @@ ata_scsi_pass_thru(struct ata_queued_cmd *qc, const u8 *scsicmd)
tf->device = scsicmd[8];
tf->command = scsicmd[9];
}
/*
* If slave is possible, enforce correct master/slave bit
*/
if (qc->ap->flags & ATA_FLAG_SLAVE_POSS)
tf->device = qc->dev->devno ?
tf->device | ATA_DEV1 : tf->device & ~ATA_DEV1;
/*
* Filter SET_FEATURES - XFER MODE command -- otherwise,