Lines Matching refs:tf
206 const struct ata_taskfile *tf) in ata_scsi_set_sense_information() argument
213 information = ata_tf_read_block(tf, dev); in ata_scsi_set_sense_information()
668 static void ata_dump_status(unsigned id, struct ata_taskfile *tf) in ata_dump_status() argument
670 u8 stat = tf->command, err = tf->feature; in ata_dump_status()
853 struct ata_taskfile *tf = &qc->result_tf; in ata_gen_passthru_sense() local
868 tf->command & (ATA_BUSY | ATA_DF | ATA_ERR | ATA_DRQ)) { in ata_gen_passthru_sense()
869 ata_to_sense_error(qc->ap->print_id, tf->command, tf->feature, in ata_gen_passthru_sense()
899 desc[3] = tf->feature; /* == error reg */ in ata_gen_passthru_sense()
900 desc[5] = tf->nsect; in ata_gen_passthru_sense()
901 desc[7] = tf->lbal; in ata_gen_passthru_sense()
902 desc[9] = tf->lbam; in ata_gen_passthru_sense()
903 desc[11] = tf->lbah; in ata_gen_passthru_sense()
904 desc[12] = tf->device; in ata_gen_passthru_sense()
905 desc[13] = tf->command; /* == status reg */ in ata_gen_passthru_sense()
911 if (tf->flags & ATA_TFLAG_LBA48) { in ata_gen_passthru_sense()
913 desc[4] = tf->hob_nsect; in ata_gen_passthru_sense()
914 desc[6] = tf->hob_lbal; in ata_gen_passthru_sense()
915 desc[8] = tf->hob_lbam; in ata_gen_passthru_sense()
916 desc[10] = tf->hob_lbah; in ata_gen_passthru_sense()
920 desc[0] = tf->feature; in ata_gen_passthru_sense()
921 desc[1] = tf->command; /* status */ in ata_gen_passthru_sense()
922 desc[2] = tf->device; in ata_gen_passthru_sense()
923 desc[3] = tf->nsect; in ata_gen_passthru_sense()
925 if (tf->flags & ATA_TFLAG_LBA48) { in ata_gen_passthru_sense()
927 if (tf->hob_nsect) in ata_gen_passthru_sense()
929 if (tf->hob_lbal || tf->hob_lbam || tf->hob_lbah) in ata_gen_passthru_sense()
932 desc[9] = tf->lbal; in ata_gen_passthru_sense()
933 desc[10] = tf->lbam; in ata_gen_passthru_sense()
934 desc[11] = tf->lbah; in ata_gen_passthru_sense()
952 struct ata_taskfile *tf = &qc->result_tf; in ata_gen_ata_sense() local
972 tf->command & (ATA_BUSY | ATA_DF | ATA_ERR | ATA_DRQ)) { in ata_gen_ata_sense()
973 ata_to_sense_error(qc->ap->print_id, tf->command, tf->feature, in ata_gen_ata_sense()
979 tf->command, qc->err_mask); in ata_gen_ata_sense()
1171 struct ata_taskfile *tf = &qc->tf; in ata_scsi_start_stop_xlat() local
1181 tf->flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR; in ata_scsi_start_stop_xlat()
1182 tf->protocol = ATA_PROT_NODATA; in ata_scsi_start_stop_xlat()
1198 tf->nsect = 1; /* 1 sector, lba=0 */ in ata_scsi_start_stop_xlat()
1201 tf->flags |= ATA_TFLAG_LBA; in ata_scsi_start_stop_xlat()
1203 tf->lbah = 0x0; in ata_scsi_start_stop_xlat()
1204 tf->lbam = 0x0; in ata_scsi_start_stop_xlat()
1205 tf->lbal = 0x0; in ata_scsi_start_stop_xlat()
1206 tf->device |= ATA_LBA; in ata_scsi_start_stop_xlat()
1209 tf->lbal = 0x1; /* sect */ in ata_scsi_start_stop_xlat()
1210 tf->lbam = 0x0; /* cyl low */ in ata_scsi_start_stop_xlat()
1211 tf->lbah = 0x0; /* cyl high */ in ata_scsi_start_stop_xlat()
1214 tf->command = ATA_CMD_VERIFY; /* READ VERIFY */ in ata_scsi_start_stop_xlat()
1228 tf->command = ATA_CMD_STANDBYNOW1; in ata_scsi_start_stop_xlat()
1264 struct ata_taskfile *tf = &qc->tf; in ata_scsi_flush_xlat() local
1266 tf->flags |= ATA_TFLAG_DEVICE; in ata_scsi_flush_xlat()
1267 tf->protocol = ATA_PROT_NODATA; in ata_scsi_flush_xlat()
1270 tf->command = ATA_CMD_FLUSH_EXT; in ata_scsi_flush_xlat()
1272 tf->command = ATA_CMD_FLUSH; in ata_scsi_flush_xlat()
1386 struct ata_taskfile *tf = &qc->tf; in ata_scsi_verify_xlat() local
1394 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in ata_scsi_verify_xlat()
1395 tf->protocol = ATA_PROT_NODATA; in ata_scsi_verify_xlat()
1422 tf->flags |= ATA_TFLAG_LBA; in ata_scsi_verify_xlat()
1426 tf->command = ATA_CMD_VERIFY; in ata_scsi_verify_xlat()
1427 tf->device |= (block >> 24) & 0xf; in ata_scsi_verify_xlat()
1433 tf->flags |= ATA_TFLAG_LBA48; in ata_scsi_verify_xlat()
1434 tf->command = ATA_CMD_VERIFY_EXT; in ata_scsi_verify_xlat()
1436 tf->hob_nsect = (n_block >> 8) & 0xff; in ata_scsi_verify_xlat()
1438 tf->hob_lbah = (block >> 40) & 0xff; in ata_scsi_verify_xlat()
1439 tf->hob_lbam = (block >> 32) & 0xff; in ata_scsi_verify_xlat()
1440 tf->hob_lbal = (block >> 24) & 0xff; in ata_scsi_verify_xlat()
1445 tf->nsect = n_block & 0xff; in ata_scsi_verify_xlat()
1447 tf->lbah = (block >> 16) & 0xff; in ata_scsi_verify_xlat()
1448 tf->lbam = (block >> 8) & 0xff; in ata_scsi_verify_xlat()
1449 tf->lbal = block & 0xff; in ata_scsi_verify_xlat()
1451 tf->device |= ATA_LBA; in ata_scsi_verify_xlat()
1475 tf->command = ATA_CMD_VERIFY; in ata_scsi_verify_xlat()
1476 tf->nsect = n_block & 0xff; /* Sector count 0 means 256 sectors */ in ata_scsi_verify_xlat()
1477 tf->lbal = sect; in ata_scsi_verify_xlat()
1478 tf->lbam = cyl; in ata_scsi_verify_xlat()
1479 tf->lbah = cyl >> 8; in ata_scsi_verify_xlat()
1480 tf->device |= head; in ata_scsi_verify_xlat()
1609 rc = ata_build_rw_tf(&qc->tf, qc->dev, block, n_block, tf_flags, in ata_scsi_rw_xlat()
2532 ap->ops->sff_tf_read(ap, &qc->tf); in atapi_request_sense()
2537 cmd->sense_buffer[2] = qc->tf.feature >> 4; in atapi_request_sense()
2550 qc->tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in atapi_request_sense()
2551 qc->tf.command = ATA_CMD_PACKET; in atapi_request_sense()
2554 qc->tf.protocol = ATAPI_PROT_DMA; in atapi_request_sense()
2555 qc->tf.feature |= ATAPI_PKT_DMA; in atapi_request_sense()
2557 qc->tf.protocol = ATAPI_PROT_PIO; in atapi_request_sense()
2558 qc->tf.lbam = SCSI_SENSE_BUFFERSIZE; in atapi_request_sense()
2559 qc->tf.lbah = 0; in atapi_request_sense()
2674 qc->tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in atapi_xlat()
2676 qc->tf.flags |= ATA_TFLAG_WRITE; in atapi_xlat()
2680 qc->tf.command = ATA_CMD_PACKET; in atapi_xlat()
2721 qc->tf.lbam = (nbytes & 0xFF); in atapi_xlat()
2722 qc->tf.lbah = (nbytes >> 8); in atapi_xlat()
2725 qc->tf.protocol = ATAPI_PROT_NODATA; in atapi_xlat()
2727 qc->tf.protocol = ATAPI_PROT_PIO; in atapi_xlat()
2730 qc->tf.protocol = ATAPI_PROT_DMA; in atapi_xlat()
2731 qc->tf.feature |= ATAPI_PKT_DMA; in atapi_xlat()
2736 qc->tf.feature |= ATAPI_DMADIR; in atapi_xlat()
2856 struct ata_taskfile *tf = &(qc->tf); in ata_scsi_pass_thru() local
2867 tf->protocol = ata_scsi_map_proto(cdb[1 + cdb_offset]); in ata_scsi_pass_thru()
2868 if (tf->protocol == ATA_PROT_UNKNOWN) { in ata_scsi_pass_thru()
2883 if (ata_is_ncq(tf->protocol)) in ata_scsi_pass_thru()
2884 tf->protocol = ATA_PROT_NCQ_NODATA; in ata_scsi_pass_thru()
2888 tf->flags |= ATA_TFLAG_LBA; in ata_scsi_pass_thru()
2901 tf->hob_feature = cdb[3]; in ata_scsi_pass_thru()
2902 tf->hob_nsect = cdb[5]; in ata_scsi_pass_thru()
2903 tf->hob_lbal = cdb[7]; in ata_scsi_pass_thru()
2904 tf->hob_lbam = cdb[9]; in ata_scsi_pass_thru()
2905 tf->hob_lbah = cdb[11]; in ata_scsi_pass_thru()
2906 tf->flags |= ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2908 tf->flags &= ~ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2913 tf->feature = cdb[4]; in ata_scsi_pass_thru()
2914 tf->nsect = cdb[6]; in ata_scsi_pass_thru()
2915 tf->lbal = cdb[8]; in ata_scsi_pass_thru()
2916 tf->lbam = cdb[10]; in ata_scsi_pass_thru()
2917 tf->lbah = cdb[12]; in ata_scsi_pass_thru()
2918 tf->device = cdb[13]; in ata_scsi_pass_thru()
2919 tf->command = cdb[14]; in ata_scsi_pass_thru()
2924 tf->flags &= ~ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2926 tf->feature = cdb[3]; in ata_scsi_pass_thru()
2927 tf->nsect = cdb[4]; in ata_scsi_pass_thru()
2928 tf->lbal = cdb[5]; in ata_scsi_pass_thru()
2929 tf->lbam = cdb[6]; in ata_scsi_pass_thru()
2930 tf->lbah = cdb[7]; in ata_scsi_pass_thru()
2931 tf->device = cdb[8]; in ata_scsi_pass_thru()
2932 tf->command = cdb[9]; in ata_scsi_pass_thru()
2940 tf->hob_feature = cdb[20]; in ata_scsi_pass_thru()
2941 tf->hob_nsect = cdb[22]; in ata_scsi_pass_thru()
2942 tf->hob_lbal = cdb[16]; in ata_scsi_pass_thru()
2943 tf->hob_lbam = cdb[15]; in ata_scsi_pass_thru()
2944 tf->hob_lbah = cdb[14]; in ata_scsi_pass_thru()
2945 tf->flags |= ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2947 tf->flags &= ~ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2949 tf->feature = cdb[21]; in ata_scsi_pass_thru()
2950 tf->nsect = cdb[23]; in ata_scsi_pass_thru()
2951 tf->lbal = cdb[19]; in ata_scsi_pass_thru()
2952 tf->lbam = cdb[18]; in ata_scsi_pass_thru()
2953 tf->lbah = cdb[17]; in ata_scsi_pass_thru()
2954 tf->device = cdb[24]; in ata_scsi_pass_thru()
2955 tf->command = cdb[25]; in ata_scsi_pass_thru()
2956 tf->auxiliary = get_unaligned_be32(&cdb[28]); in ata_scsi_pass_thru()
2960 if (ata_is_ncq(tf->protocol)) in ata_scsi_pass_thru()
2961 tf->nsect = qc->hw_tag << 3; in ata_scsi_pass_thru()
2964 tf->device = dev->devno ? in ata_scsi_pass_thru()
2965 tf->device | ATA_DEV1 : tf->device & ~ATA_DEV1; in ata_scsi_pass_thru()
2967 switch (tf->command) { in ata_scsi_pass_thru()
2973 if (tf->protocol != ATA_PROT_PIO || tf->nsect != 1) { in ata_scsi_pass_thru()
3024 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in ata_scsi_pass_thru()
3026 tf->flags |= ATA_TFLAG_WRITE; in ata_scsi_pass_thru()
3039 if (tf->protocol == ATA_PROT_DMA && dev->dma_mode == 0) { in ata_scsi_pass_thru()
3045 if (ata_is_ncq(tf->protocol) && !ata_ncq_enabled(dev)) { in ata_scsi_pass_thru()
3051 if ((cdb[1] & 0xe0) && !is_multi_taskfile(tf)) { in ata_scsi_pass_thru()
3056 if (is_multi_taskfile(tf)) { in ata_scsi_pass_thru()
3074 if (tf->command == ATA_CMD_SET_FEATURES && in ata_scsi_pass_thru()
3075 tf->feature == SETFEATURES_XFER) { in ata_scsi_pass_thru()
3095 if (tf->command >= 0x5C && tf->command <= 0x5F && !libata_allow_tpm) { in ata_scsi_pass_thru()
3174 struct ata_taskfile *tf = &qc->tf; in ata_scsi_write_same_xlat() local
3238 tf->protocol = ATA_PROT_NCQ; in ata_scsi_write_same_xlat()
3239 tf->command = ATA_CMD_FPDMA_SEND; in ata_scsi_write_same_xlat()
3240 tf->hob_nsect = ATA_SUBCMD_FPDMA_SEND_DSM & 0x1f; in ata_scsi_write_same_xlat()
3241 tf->nsect = qc->hw_tag << 3; in ata_scsi_write_same_xlat()
3242 tf->hob_feature = (size / 512) >> 8; in ata_scsi_write_same_xlat()
3243 tf->feature = size / 512; in ata_scsi_write_same_xlat()
3245 tf->auxiliary = 1; in ata_scsi_write_same_xlat()
3247 tf->protocol = ATA_PROT_DMA; in ata_scsi_write_same_xlat()
3248 tf->hob_feature = 0; in ata_scsi_write_same_xlat()
3249 tf->feature = ATA_DSM_TRIM; in ata_scsi_write_same_xlat()
3250 tf->hob_nsect = (size / 512) >> 8; in ata_scsi_write_same_xlat()
3251 tf->nsect = size / 512; in ata_scsi_write_same_xlat()
3252 tf->command = ATA_CMD_DSM; in ata_scsi_write_same_xlat()
3255 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48 | in ata_scsi_write_same_xlat()
3420 struct ata_taskfile *tf = &qc->tf; in ata_scsi_zbc_in_xlat() local
3459 tf->protocol = ATA_PROT_NCQ; in ata_scsi_zbc_in_xlat()
3460 tf->command = ATA_CMD_FPDMA_RECV; in ata_scsi_zbc_in_xlat()
3461 tf->hob_nsect = ATA_SUBCMD_FPDMA_RECV_ZAC_MGMT_IN & 0x1f; in ata_scsi_zbc_in_xlat()
3462 tf->nsect = qc->hw_tag << 3; in ata_scsi_zbc_in_xlat()
3463 tf->feature = sect & 0xff; in ata_scsi_zbc_in_xlat()
3464 tf->hob_feature = (sect >> 8) & 0xff; in ata_scsi_zbc_in_xlat()
3465 tf->auxiliary = ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES | (options << 8); in ata_scsi_zbc_in_xlat()
3467 tf->command = ATA_CMD_ZAC_MGMT_IN; in ata_scsi_zbc_in_xlat()
3468 tf->feature = ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES; in ata_scsi_zbc_in_xlat()
3469 tf->protocol = ATA_PROT_DMA; in ata_scsi_zbc_in_xlat()
3470 tf->hob_feature = options; in ata_scsi_zbc_in_xlat()
3471 tf->hob_nsect = (sect >> 8) & 0xff; in ata_scsi_zbc_in_xlat()
3472 tf->nsect = sect & 0xff; in ata_scsi_zbc_in_xlat()
3474 tf->device = ATA_LBA; in ata_scsi_zbc_in_xlat()
3475 tf->lbah = (block >> 16) & 0xff; in ata_scsi_zbc_in_xlat()
3476 tf->lbam = (block >> 8) & 0xff; in ata_scsi_zbc_in_xlat()
3477 tf->lbal = block & 0xff; in ata_scsi_zbc_in_xlat()
3478 tf->hob_lbah = (block >> 40) & 0xff; in ata_scsi_zbc_in_xlat()
3479 tf->hob_lbam = (block >> 32) & 0xff; in ata_scsi_zbc_in_xlat()
3480 tf->hob_lbal = (block >> 24) & 0xff; in ata_scsi_zbc_in_xlat()
3482 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48; in ata_scsi_zbc_in_xlat()
3503 struct ata_taskfile *tf = &qc->tf; in ata_scsi_zbc_out_xlat() local
3548 tf->protocol = ATA_PROT_NCQ_NODATA; in ata_scsi_zbc_out_xlat()
3549 tf->command = ATA_CMD_NCQ_NON_DATA; in ata_scsi_zbc_out_xlat()
3550 tf->feature = ATA_SUBCMD_NCQ_NON_DATA_ZAC_MGMT_OUT; in ata_scsi_zbc_out_xlat()
3551 tf->nsect = qc->hw_tag << 3; in ata_scsi_zbc_out_xlat()
3552 tf->auxiliary = sa | ((u16)all << 8); in ata_scsi_zbc_out_xlat()
3554 tf->protocol = ATA_PROT_NODATA; in ata_scsi_zbc_out_xlat()
3555 tf->command = ATA_CMD_ZAC_MGMT_OUT; in ata_scsi_zbc_out_xlat()
3556 tf->feature = sa; in ata_scsi_zbc_out_xlat()
3557 tf->hob_feature = all; in ata_scsi_zbc_out_xlat()
3559 tf->lbah = (block >> 16) & 0xff; in ata_scsi_zbc_out_xlat()
3560 tf->lbam = (block >> 8) & 0xff; in ata_scsi_zbc_out_xlat()
3561 tf->lbal = block & 0xff; in ata_scsi_zbc_out_xlat()
3562 tf->hob_lbah = (block >> 40) & 0xff; in ata_scsi_zbc_out_xlat()
3563 tf->hob_lbam = (block >> 32) & 0xff; in ata_scsi_zbc_out_xlat()
3564 tf->hob_lbal = (block >> 24) & 0xff; in ata_scsi_zbc_out_xlat()
3565 tf->device = ATA_LBA; in ata_scsi_zbc_out_xlat()
3566 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48; in ata_scsi_zbc_out_xlat()
3594 struct ata_taskfile *tf = &qc->tf; in ata_mselect_caching() local
3628 tf->flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR; in ata_mselect_caching()
3629 tf->protocol = ATA_PROT_NODATA; in ata_mselect_caching()
3630 tf->nsect = 0; in ata_mselect_caching()
3631 tf->command = ATA_CMD_SET_FEATURES; in ata_mselect_caching()
3632 tf->feature = wce ? SETFEATURES_WC_ON : SETFEATURES_WC_OFF; in ata_mselect_caching()
3866 struct ata_taskfile *tf = &qc->tf; in ata_scsi_security_inout_xlat() local
3896 tf->protocol = dma ? ATA_PROT_DMA : ATA_PROT_PIO; in ata_scsi_security_inout_xlat()
3897 tf->flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR | ATA_TFLAG_LBA; in ata_scsi_security_inout_xlat()
3899 tf->flags |= ATA_TFLAG_WRITE; in ata_scsi_security_inout_xlat()
3900 tf->command = ata_scsi_trusted_op(len, send, dma); in ata_scsi_security_inout_xlat()
3901 tf->feature = secp; in ata_scsi_security_inout_xlat()
3902 tf->lbam = spsp & 0xff; in ata_scsi_security_inout_xlat()
3903 tf->lbah = spsp >> 8; in ata_scsi_security_inout_xlat()
3906 tf->nsect = len & 0xff; in ata_scsi_security_inout_xlat()
3907 tf->lbal = len >> 8; in ata_scsi_security_inout_xlat()
3910 tf->lbah = (1 << 7); in ata_scsi_security_inout_xlat()