Lines Matching refs:tf

204 				    const struct ata_taskfile *tf)  in ata_scsi_set_sense_information()  argument
211 information = ata_tf_read_block(tf, dev); in ata_scsi_set_sense_information()
705 static void ata_dump_status(struct ata_port *ap, struct ata_taskfile *tf) in ata_dump_status() argument
707 u8 stat = tf->status, err = tf->error; in ata_dump_status()
885 struct ata_taskfile *tf = &qc->result_tf; in ata_gen_passthru_sense() local
898 tf->status & (ATA_BUSY | ATA_DF | ATA_ERR | ATA_DRQ)) { in ata_gen_passthru_sense()
899 ata_to_sense_error(qc->ap->print_id, tf->status, tf->error, in ata_gen_passthru_sense()
928 desc[3] = tf->error; in ata_gen_passthru_sense()
929 desc[5] = tf->nsect; in ata_gen_passthru_sense()
930 desc[7] = tf->lbal; in ata_gen_passthru_sense()
931 desc[9] = tf->lbam; in ata_gen_passthru_sense()
932 desc[11] = tf->lbah; in ata_gen_passthru_sense()
933 desc[12] = tf->device; in ata_gen_passthru_sense()
934 desc[13] = tf->status; in ata_gen_passthru_sense()
940 if (tf->flags & ATA_TFLAG_LBA48) { in ata_gen_passthru_sense()
942 desc[4] = tf->hob_nsect; in ata_gen_passthru_sense()
943 desc[6] = tf->hob_lbal; in ata_gen_passthru_sense()
944 desc[8] = tf->hob_lbam; in ata_gen_passthru_sense()
945 desc[10] = tf->hob_lbah; in ata_gen_passthru_sense()
949 desc[0] = tf->error; in ata_gen_passthru_sense()
950 desc[1] = tf->status; in ata_gen_passthru_sense()
951 desc[2] = tf->device; in ata_gen_passthru_sense()
952 desc[3] = tf->nsect; in ata_gen_passthru_sense()
954 if (tf->flags & ATA_TFLAG_LBA48) { in ata_gen_passthru_sense()
956 if (tf->hob_nsect) in ata_gen_passthru_sense()
958 if (tf->hob_lbal || tf->hob_lbam || tf->hob_lbah) in ata_gen_passthru_sense()
961 desc[9] = tf->lbal; in ata_gen_passthru_sense()
962 desc[10] = tf->lbam; in ata_gen_passthru_sense()
963 desc[11] = tf->lbah; in ata_gen_passthru_sense()
981 struct ata_taskfile *tf = &qc->result_tf; in ata_gen_ata_sense() local
999 tf->status & (ATA_BUSY | ATA_DF | ATA_ERR | ATA_DRQ)) { in ata_gen_ata_sense()
1000 ata_to_sense_error(qc->ap->print_id, tf->status, tf->error, in ata_gen_ata_sense()
1006 tf->status, qc->err_mask); in ata_gen_ata_sense()
1198 struct ata_taskfile *tf = &qc->tf; in ata_scsi_start_stop_xlat() local
1208 tf->flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR; in ata_scsi_start_stop_xlat()
1209 tf->protocol = ATA_PROT_NODATA; in ata_scsi_start_stop_xlat()
1225 tf->nsect = 1; /* 1 sector, lba=0 */ in ata_scsi_start_stop_xlat()
1228 tf->flags |= ATA_TFLAG_LBA; in ata_scsi_start_stop_xlat()
1230 tf->lbah = 0x0; in ata_scsi_start_stop_xlat()
1231 tf->lbam = 0x0; in ata_scsi_start_stop_xlat()
1232 tf->lbal = 0x0; in ata_scsi_start_stop_xlat()
1233 tf->device |= ATA_LBA; in ata_scsi_start_stop_xlat()
1236 tf->lbal = 0x1; /* sect */ in ata_scsi_start_stop_xlat()
1237 tf->lbam = 0x0; /* cyl low */ in ata_scsi_start_stop_xlat()
1238 tf->lbah = 0x0; /* cyl high */ in ata_scsi_start_stop_xlat()
1241 tf->command = ATA_CMD_VERIFY; /* READ VERIFY */ in ata_scsi_start_stop_xlat()
1255 tf->command = ATA_CMD_STANDBYNOW1; in ata_scsi_start_stop_xlat()
1291 struct ata_taskfile *tf = &qc->tf; in ata_scsi_flush_xlat() local
1293 tf->flags |= ATA_TFLAG_DEVICE; in ata_scsi_flush_xlat()
1294 tf->protocol = ATA_PROT_NODATA; in ata_scsi_flush_xlat()
1297 tf->command = ATA_CMD_FLUSH_EXT; in ata_scsi_flush_xlat()
1299 tf->command = ATA_CMD_FLUSH; in ata_scsi_flush_xlat()
1379 struct ata_taskfile *tf = &qc->tf; in ata_scsi_verify_xlat() local
1387 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in ata_scsi_verify_xlat()
1388 tf->protocol = ATA_PROT_NODATA; in ata_scsi_verify_xlat()
1418 tf->flags |= ATA_TFLAG_LBA; in ata_scsi_verify_xlat()
1422 tf->command = ATA_CMD_VERIFY; in ata_scsi_verify_xlat()
1423 tf->device |= (block >> 24) & 0xf; in ata_scsi_verify_xlat()
1429 tf->flags |= ATA_TFLAG_LBA48; in ata_scsi_verify_xlat()
1430 tf->command = ATA_CMD_VERIFY_EXT; in ata_scsi_verify_xlat()
1432 tf->hob_nsect = (n_block >> 8) & 0xff; in ata_scsi_verify_xlat()
1434 tf->hob_lbah = (block >> 40) & 0xff; in ata_scsi_verify_xlat()
1435 tf->hob_lbam = (block >> 32) & 0xff; in ata_scsi_verify_xlat()
1436 tf->hob_lbal = (block >> 24) & 0xff; in ata_scsi_verify_xlat()
1441 tf->nsect = n_block & 0xff; in ata_scsi_verify_xlat()
1443 tf->lbah = (block >> 16) & 0xff; in ata_scsi_verify_xlat()
1444 tf->lbam = (block >> 8) & 0xff; in ata_scsi_verify_xlat()
1445 tf->lbal = block & 0xff; in ata_scsi_verify_xlat()
1447 tf->device |= ATA_LBA; in ata_scsi_verify_xlat()
1468 tf->command = ATA_CMD_VERIFY; in ata_scsi_verify_xlat()
1469 tf->nsect = n_block & 0xff; /* Sector count 0 means 256 sectors */ in ata_scsi_verify_xlat()
1470 tf->lbal = sect; in ata_scsi_verify_xlat()
1471 tf->lbam = cyl; in ata_scsi_verify_xlat()
1472 tf->lbah = cyl >> 8; in ata_scsi_verify_xlat()
1473 tf->device |= head; in ata_scsi_verify_xlat()
2494 ap->ops->sff_tf_read(ap, &qc->tf); in atapi_request_sense()
2499 cmd->sense_buffer[2] = qc->tf.error >> 4; in atapi_request_sense()
2512 qc->tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in atapi_request_sense()
2513 qc->tf.command = ATA_CMD_PACKET; in atapi_request_sense()
2516 qc->tf.protocol = ATAPI_PROT_DMA; in atapi_request_sense()
2517 qc->tf.feature |= ATAPI_PKT_DMA; in atapi_request_sense()
2519 qc->tf.protocol = ATAPI_PROT_PIO; in atapi_request_sense()
2520 qc->tf.lbam = SCSI_SENSE_BUFFERSIZE; in atapi_request_sense()
2521 qc->tf.lbah = 0; in atapi_request_sense()
2632 qc->tf.flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in atapi_xlat()
2634 qc->tf.flags |= ATA_TFLAG_WRITE; in atapi_xlat()
2637 qc->tf.command = ATA_CMD_PACKET; in atapi_xlat()
2678 qc->tf.lbam = (nbytes & 0xFF); in atapi_xlat()
2679 qc->tf.lbah = (nbytes >> 8); in atapi_xlat()
2682 qc->tf.protocol = ATAPI_PROT_NODATA; in atapi_xlat()
2684 qc->tf.protocol = ATAPI_PROT_PIO; in atapi_xlat()
2687 qc->tf.protocol = ATAPI_PROT_DMA; in atapi_xlat()
2688 qc->tf.feature |= ATAPI_PKT_DMA; in atapi_xlat()
2693 qc->tf.feature |= ATAPI_DMADIR; in atapi_xlat()
2813 struct ata_taskfile *tf = &(qc->tf); in ata_scsi_pass_thru() local
2824 tf->protocol = ata_scsi_map_proto(cdb[1 + cdb_offset]); in ata_scsi_pass_thru()
2825 if (tf->protocol == ATA_PROT_UNKNOWN) { in ata_scsi_pass_thru()
2840 if (ata_is_ncq(tf->protocol)) in ata_scsi_pass_thru()
2841 tf->protocol = ATA_PROT_NCQ_NODATA; in ata_scsi_pass_thru()
2845 tf->flags |= ATA_TFLAG_LBA; in ata_scsi_pass_thru()
2859 tf->hob_feature = cdb[3]; in ata_scsi_pass_thru()
2860 tf->hob_nsect = cdb[5]; in ata_scsi_pass_thru()
2861 tf->hob_lbal = cdb[7]; in ata_scsi_pass_thru()
2862 tf->hob_lbam = cdb[9]; in ata_scsi_pass_thru()
2863 tf->hob_lbah = cdb[11]; in ata_scsi_pass_thru()
2864 tf->flags |= ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2866 tf->flags &= ~ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2871 tf->feature = cdb[4]; in ata_scsi_pass_thru()
2872 tf->nsect = cdb[6]; in ata_scsi_pass_thru()
2873 tf->lbal = cdb[8]; in ata_scsi_pass_thru()
2874 tf->lbam = cdb[10]; in ata_scsi_pass_thru()
2875 tf->lbah = cdb[12]; in ata_scsi_pass_thru()
2876 tf->device = cdb[13]; in ata_scsi_pass_thru()
2877 tf->command = cdb[14]; in ata_scsi_pass_thru()
2883 tf->flags &= ~ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2885 tf->feature = cdb[3]; in ata_scsi_pass_thru()
2886 tf->nsect = cdb[4]; in ata_scsi_pass_thru()
2887 tf->lbal = cdb[5]; in ata_scsi_pass_thru()
2888 tf->lbam = cdb[6]; in ata_scsi_pass_thru()
2889 tf->lbah = cdb[7]; in ata_scsi_pass_thru()
2890 tf->device = cdb[8]; in ata_scsi_pass_thru()
2891 tf->command = cdb[9]; in ata_scsi_pass_thru()
2900 tf->hob_feature = cdb[20]; in ata_scsi_pass_thru()
2901 tf->hob_nsect = cdb[22]; in ata_scsi_pass_thru()
2902 tf->hob_lbal = cdb[16]; in ata_scsi_pass_thru()
2903 tf->hob_lbam = cdb[15]; in ata_scsi_pass_thru()
2904 tf->hob_lbah = cdb[14]; in ata_scsi_pass_thru()
2905 tf->flags |= ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2907 tf->flags &= ~ATA_TFLAG_LBA48; in ata_scsi_pass_thru()
2909 tf->feature = cdb[21]; in ata_scsi_pass_thru()
2910 tf->nsect = cdb[23]; in ata_scsi_pass_thru()
2911 tf->lbal = cdb[19]; in ata_scsi_pass_thru()
2912 tf->lbam = cdb[18]; in ata_scsi_pass_thru()
2913 tf->lbah = cdb[17]; in ata_scsi_pass_thru()
2914 tf->device = cdb[24]; in ata_scsi_pass_thru()
2915 tf->command = cdb[25]; in ata_scsi_pass_thru()
2916 tf->auxiliary = get_unaligned_be32(&cdb[28]); in ata_scsi_pass_thru()
2921 if (ata_is_ncq(tf->protocol)) in ata_scsi_pass_thru()
2922 tf->nsect = qc->hw_tag << 3; in ata_scsi_pass_thru()
2925 tf->device = dev->devno ? in ata_scsi_pass_thru()
2926 tf->device | ATA_DEV1 : tf->device & ~ATA_DEV1; in ata_scsi_pass_thru()
2928 switch (tf->command) { in ata_scsi_pass_thru()
2934 if (tf->protocol != ATA_PROT_PIO || tf->nsect != 1) { in ata_scsi_pass_thru()
2985 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE; in ata_scsi_pass_thru()
2987 tf->flags |= ATA_TFLAG_WRITE; in ata_scsi_pass_thru()
3000 if (tf->protocol == ATA_PROT_DMA && !ata_dma_enabled(dev)) { in ata_scsi_pass_thru()
3006 if (ata_is_ncq(tf->protocol) && !ata_ncq_enabled(dev)) { in ata_scsi_pass_thru()
3012 if ((cdb[1] & 0xe0) && !is_multi_taskfile(tf)) { in ata_scsi_pass_thru()
3017 if (is_multi_taskfile(tf)) { in ata_scsi_pass_thru()
3035 if (tf->command == ATA_CMD_SET_FEATURES && in ata_scsi_pass_thru()
3036 tf->feature == SETFEATURES_XFER) { in ata_scsi_pass_thru()
3056 if (tf->command >= 0x5C && tf->command <= 0x5F && !libata_allow_tpm) { in ata_scsi_pass_thru()
3135 struct ata_taskfile *tf = &qc->tf; in ata_scsi_write_same_xlat() local
3199 tf->protocol = ATA_PROT_NCQ; in ata_scsi_write_same_xlat()
3200 tf->command = ATA_CMD_FPDMA_SEND; in ata_scsi_write_same_xlat()
3201 tf->hob_nsect = ATA_SUBCMD_FPDMA_SEND_DSM & 0x1f; in ata_scsi_write_same_xlat()
3202 tf->nsect = qc->hw_tag << 3; in ata_scsi_write_same_xlat()
3203 tf->hob_feature = (size / 512) >> 8; in ata_scsi_write_same_xlat()
3204 tf->feature = size / 512; in ata_scsi_write_same_xlat()
3206 tf->auxiliary = 1; in ata_scsi_write_same_xlat()
3208 tf->protocol = ATA_PROT_DMA; in ata_scsi_write_same_xlat()
3209 tf->hob_feature = 0; in ata_scsi_write_same_xlat()
3210 tf->feature = ATA_DSM_TRIM; in ata_scsi_write_same_xlat()
3211 tf->hob_nsect = (size / 512) >> 8; in ata_scsi_write_same_xlat()
3212 tf->nsect = size / 512; in ata_scsi_write_same_xlat()
3213 tf->command = ATA_CMD_DSM; in ata_scsi_write_same_xlat()
3216 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48 | in ata_scsi_write_same_xlat()
3381 struct ata_taskfile *tf = &qc->tf; in ata_scsi_zbc_in_xlat() local
3420 tf->protocol = ATA_PROT_NCQ; in ata_scsi_zbc_in_xlat()
3421 tf->command = ATA_CMD_FPDMA_RECV; in ata_scsi_zbc_in_xlat()
3422 tf->hob_nsect = ATA_SUBCMD_FPDMA_RECV_ZAC_MGMT_IN & 0x1f; in ata_scsi_zbc_in_xlat()
3423 tf->nsect = qc->hw_tag << 3; in ata_scsi_zbc_in_xlat()
3424 tf->feature = sect & 0xff; in ata_scsi_zbc_in_xlat()
3425 tf->hob_feature = (sect >> 8) & 0xff; in ata_scsi_zbc_in_xlat()
3426 tf->auxiliary = ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES | (options << 8); in ata_scsi_zbc_in_xlat()
3428 tf->command = ATA_CMD_ZAC_MGMT_IN; in ata_scsi_zbc_in_xlat()
3429 tf->feature = ATA_SUBCMD_ZAC_MGMT_IN_REPORT_ZONES; in ata_scsi_zbc_in_xlat()
3430 tf->protocol = ATA_PROT_DMA; in ata_scsi_zbc_in_xlat()
3431 tf->hob_feature = options; in ata_scsi_zbc_in_xlat()
3432 tf->hob_nsect = (sect >> 8) & 0xff; in ata_scsi_zbc_in_xlat()
3433 tf->nsect = sect & 0xff; in ata_scsi_zbc_in_xlat()
3435 tf->device = ATA_LBA; in ata_scsi_zbc_in_xlat()
3436 tf->lbah = (block >> 16) & 0xff; in ata_scsi_zbc_in_xlat()
3437 tf->lbam = (block >> 8) & 0xff; in ata_scsi_zbc_in_xlat()
3438 tf->lbal = block & 0xff; in ata_scsi_zbc_in_xlat()
3439 tf->hob_lbah = (block >> 40) & 0xff; in ata_scsi_zbc_in_xlat()
3440 tf->hob_lbam = (block >> 32) & 0xff; in ata_scsi_zbc_in_xlat()
3441 tf->hob_lbal = (block >> 24) & 0xff; in ata_scsi_zbc_in_xlat()
3443 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48; in ata_scsi_zbc_in_xlat()
3464 struct ata_taskfile *tf = &qc->tf; in ata_scsi_zbc_out_xlat() local
3509 tf->protocol = ATA_PROT_NCQ_NODATA; in ata_scsi_zbc_out_xlat()
3510 tf->command = ATA_CMD_NCQ_NON_DATA; in ata_scsi_zbc_out_xlat()
3511 tf->feature = ATA_SUBCMD_NCQ_NON_DATA_ZAC_MGMT_OUT; in ata_scsi_zbc_out_xlat()
3512 tf->nsect = qc->hw_tag << 3; in ata_scsi_zbc_out_xlat()
3513 tf->auxiliary = sa | ((u16)all << 8); in ata_scsi_zbc_out_xlat()
3515 tf->protocol = ATA_PROT_NODATA; in ata_scsi_zbc_out_xlat()
3516 tf->command = ATA_CMD_ZAC_MGMT_OUT; in ata_scsi_zbc_out_xlat()
3517 tf->feature = sa; in ata_scsi_zbc_out_xlat()
3518 tf->hob_feature = all; in ata_scsi_zbc_out_xlat()
3520 tf->lbah = (block >> 16) & 0xff; in ata_scsi_zbc_out_xlat()
3521 tf->lbam = (block >> 8) & 0xff; in ata_scsi_zbc_out_xlat()
3522 tf->lbal = block & 0xff; in ata_scsi_zbc_out_xlat()
3523 tf->hob_lbah = (block >> 40) & 0xff; in ata_scsi_zbc_out_xlat()
3524 tf->hob_lbam = (block >> 32) & 0xff; in ata_scsi_zbc_out_xlat()
3525 tf->hob_lbal = (block >> 24) & 0xff; in ata_scsi_zbc_out_xlat()
3526 tf->device = ATA_LBA; in ata_scsi_zbc_out_xlat()
3527 tf->flags |= ATA_TFLAG_ISADDR | ATA_TFLAG_DEVICE | ATA_TFLAG_LBA48; in ata_scsi_zbc_out_xlat()
3555 struct ata_taskfile *tf = &qc->tf; in ata_mselect_caching() local
3586 tf->flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR; in ata_mselect_caching()
3587 tf->protocol = ATA_PROT_NODATA; in ata_mselect_caching()
3588 tf->nsect = 0; in ata_mselect_caching()
3589 tf->command = ATA_CMD_SET_FEATURES; in ata_mselect_caching()
3590 tf->feature = wce ? SETFEATURES_WC_ON : SETFEATURES_WC_OFF; in ata_mselect_caching()
3819 struct ata_taskfile *tf = &qc->tf; in ata_scsi_security_inout_xlat() local
3849 tf->protocol = dma ? ATA_PROT_DMA : ATA_PROT_PIO; in ata_scsi_security_inout_xlat()
3850 tf->flags |= ATA_TFLAG_DEVICE | ATA_TFLAG_ISADDR | ATA_TFLAG_LBA; in ata_scsi_security_inout_xlat()
3852 tf->flags |= ATA_TFLAG_WRITE; in ata_scsi_security_inout_xlat()
3853 tf->command = ata_scsi_trusted_op(len, send, dma); in ata_scsi_security_inout_xlat()
3854 tf->feature = secp; in ata_scsi_security_inout_xlat()
3855 tf->lbam = spsp & 0xff; in ata_scsi_security_inout_xlat()
3856 tf->lbah = spsp >> 8; in ata_scsi_security_inout_xlat()
3859 tf->nsect = len & 0xff; in ata_scsi_security_inout_xlat()
3860 tf->lbal = len >> 8; in ata_scsi_security_inout_xlat()
3863 tf->lbah = (1 << 7); in ata_scsi_security_inout_xlat()