Lines Matching refs:args

487 	u8 args[4], *argbuf = NULL, *sensebuf = NULL;  in ata_cmd_ioctl()  local
495 if (copy_from_user(args, arg, sizeof(args))) in ata_cmd_ioctl()
504 if (args[3]) { in ata_cmd_ioctl()
505 argsize = ATA_SECT_SIZE * args[3]; in ata_cmd_ioctl()
524 scsi_cmd[4] = args[2]; in ata_cmd_ioctl()
525 if (args[0] == ATA_CMD_SMART) { /* hack -- ide driver does this too */ in ata_cmd_ioctl()
526 scsi_cmd[6] = args[3]; in ata_cmd_ioctl()
527 scsi_cmd[8] = args[1]; in ata_cmd_ioctl()
531 scsi_cmd[6] = args[1]; in ata_cmd_ioctl()
533 scsi_cmd[14] = args[0]; in ata_cmd_ioctl()
558 args[0] = desc[13]; /* status */ in ata_cmd_ioctl()
559 args[1] = desc[3]; /* error */ in ata_cmd_ioctl()
560 args[2] = desc[5]; /* sector count (0:7) */ in ata_cmd_ioctl()
561 if (copy_to_user(arg, args, sizeof(args))) in ata_cmd_ioctl()
573 && copy_to_user(arg + sizeof(args), argbuf, argsize)) in ata_cmd_ioctl()
596 u8 args[7], *sensebuf = NULL; in ata_task_ioctl() local
602 if (copy_from_user(args, arg, sizeof(args))) in ata_task_ioctl()
613 scsi_cmd[4] = args[1]; in ata_task_ioctl()
614 scsi_cmd[6] = args[2]; in ata_task_ioctl()
615 scsi_cmd[8] = args[3]; in ata_task_ioctl()
616 scsi_cmd[10] = args[4]; in ata_task_ioctl()
617 scsi_cmd[12] = args[5]; in ata_task_ioctl()
618 scsi_cmd[13] = args[6] & 0x4f; in ata_task_ioctl()
619 scsi_cmd[14] = args[0]; in ata_task_ioctl()
644 args[0] = desc[13]; /* status */ in ata_task_ioctl()
645 args[1] = desc[3]; /* error */ in ata_task_ioctl()
646 args[2] = desc[5]; /* sector count (0:7) */ in ata_task_ioctl()
647 args[3] = desc[7]; /* lbal */ in ata_task_ioctl()
648 args[4] = desc[9]; /* lbam */ in ata_task_ioctl()
649 args[5] = desc[11]; /* lbah */ in ata_task_ioctl()
650 args[6] = desc[12]; /* select */ in ata_task_ioctl()
651 if (copy_to_user(arg, args, sizeof(args))) in ata_task_ioctl()
1953 static void ata_scsi_rbuf_fill(struct ata_scsi_args *args, in ata_scsi_rbuf_fill() argument
1954 unsigned int (*actor)(struct ata_scsi_args *args, u8 *rbuf)) in ata_scsi_rbuf_fill() argument
1958 struct scsi_cmnd *cmd = args->cmd; in ata_scsi_rbuf_fill()
1962 rc = actor(args, rbuf); in ata_scsi_rbuf_fill()
1967 args->done(cmd); in ata_scsi_rbuf_fill()
1981 static unsigned int ata_scsiop_inq_std(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_std() argument
2018 if (ata_id_removable(args->id)) in ata_scsiop_inq_std()
2021 if (args->dev->class == ATA_DEV_ZAC) { in ata_scsiop_inq_std()
2028 ata_id_string(args->id, &rbuf[16], ATA_ID_PROD, 16); in ata_scsiop_inq_std()
2031 ata_id_string(args->id, &rbuf[32], ATA_ID_FW_REV + 2, 4); in ata_scsiop_inq_std()
2033 ata_id_string(args->id, &rbuf[32], ATA_ID_FW_REV, 4); in ata_scsiop_inq_std()
2038 if (args->dev->class == ATA_DEV_ZAC) in ata_scsiop_inq_std()
2056 static unsigned int ata_scsiop_inq_00(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_00() argument
2083 static unsigned int ata_scsiop_inq_80(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_80() argument
2093 ata_id_string(args->id, (unsigned char *) &rbuf[4], in ata_scsiop_inq_80()
2111 static unsigned int ata_scsiop_inq_83(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_83() argument
2123 ata_id_string(args->id, (unsigned char *) rbuf + num, in ata_scsiop_inq_83()
2135 ata_id_string(args->id, (unsigned char *) rbuf + num, ATA_ID_PROD, in ata_scsiop_inq_83()
2138 ata_id_string(args->id, (unsigned char *) rbuf + num, ATA_ID_SERNO, in ata_scsiop_inq_83()
2142 if (ata_id_has_wwn(args->id)) { in ata_scsiop_inq_83()
2149 ata_id_string(args->id, (unsigned char *) rbuf + num, in ata_scsiop_inq_83()
2167 static unsigned int ata_scsiop_inq_89(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_89() argument
2192 memcpy(&rbuf[60], &args->id[0], 512); in ata_scsiop_inq_89()
2196 static unsigned int ata_scsiop_inq_b0(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_b0() argument
2210 min_io_sectors = 1 << ata_id_log2_per_physical_sector(args->id); in ata_scsiop_inq_b0()
2222 if (ata_id_has_trim(args->id)) { in ata_scsiop_inq_b0()
2230 static unsigned int ata_scsiop_inq_b1(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_b1() argument
2232 int form_factor = ata_id_form_factor(args->id); in ata_scsiop_inq_b1()
2233 int media_rotation_rate = ata_id_rotation_rate(args->id); in ata_scsiop_inq_b1()
2244 static unsigned int ata_scsiop_inq_b2(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_inq_b2() argument
2265 static unsigned int ata_scsiop_noop(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_noop() argument
2386 static unsigned int ata_scsiop_mode_sense(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_mode_sense() argument
2388 struct ata_device *dev = args->dev; in ata_scsiop_mode_sense()
2389 u8 *scsicmd = args->cmd->cmnd, *p = rbuf; in ata_scsiop_mode_sense()
2439 p += ata_msense_caching(args->id, p, page_control == 1); in ata_scsiop_mode_sense()
2448 p += ata_msense_caching(args->id, p, page_control == 1); in ata_scsiop_mode_sense()
2457 if (ata_dev_supports_fua(args->id) && (dev->flags & ATA_DFLAG_LBA48) && in ata_scsiop_mode_sense()
2482 ata_scsi_set_sense(args->cmd, ILLEGAL_REQUEST, 0x24, 0x0); in ata_scsiop_mode_sense()
2487 ata_scsi_set_sense(args->cmd, ILLEGAL_REQUEST, 0x39, 0x0); in ata_scsiop_mode_sense()
2502 static unsigned int ata_scsiop_read_cap(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_read_cap() argument
2504 struct ata_device *dev = args->dev; in ata_scsiop_read_cap()
2516 if (args->cmd->cmnd[0] == READ_CAPACITY) { in ata_scsiop_read_cap()
2553 if (ata_id_has_trim(args->id) && in ata_scsiop_read_cap()
2557 if (ata_id_has_zero_after_trim(args->id) && in ata_scsiop_read_cap()
2577 static unsigned int ata_scsiop_report_luns(struct ata_scsi_args *args, u8 *rbuf) in ata_scsiop_report_luns() argument
3554 struct ata_scsi_args args; in ata_scsi_simulate() local
3558 args.dev = dev; in ata_scsi_simulate()
3559 args.id = dev->id; in ata_scsi_simulate()
3560 args.cmd = cmd; in ata_scsi_simulate()
3561 args.done = cmd->scsi_done; in ata_scsi_simulate()
3573 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_std); in ata_scsi_simulate()
3576 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_00); in ata_scsi_simulate()
3579 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_80); in ata_scsi_simulate()
3582 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_83); in ata_scsi_simulate()
3585 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_89); in ata_scsi_simulate()
3588 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_b0); in ata_scsi_simulate()
3591 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_b1); in ata_scsi_simulate()
3594 ata_scsi_rbuf_fill(&args, ata_scsiop_inq_b2); in ata_scsi_simulate()
3604 ata_scsi_rbuf_fill(&args, ata_scsiop_mode_sense); in ata_scsi_simulate()
3608 ata_scsi_rbuf_fill(&args, ata_scsiop_read_cap); in ata_scsi_simulate()
3613 ata_scsi_rbuf_fill(&args, ata_scsiop_read_cap); in ata_scsi_simulate()
3619 ata_scsi_rbuf_fill(&args, ata_scsiop_report_luns); in ata_scsi_simulate()
3639 ata_scsi_rbuf_fill(&args, ata_scsiop_noop); in ata_scsi_simulate()
3645 ata_scsi_rbuf_fill(&args, ata_scsiop_noop); in ata_scsi_simulate()