cmdinfo 101 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo; cmdinfo 116 drivers/usb/storage/uas.c cmdinfo = (void *)&cmnd->SCp; cmdinfo 118 drivers/usb/storage/uas.c if (!(cmdinfo->state & IS_IN_WORK_LIST)) cmdinfo 123 drivers/usb/storage/uas.c cmdinfo->state &= ~IS_IN_WORK_LIST; cmdinfo 142 drivers/usb/storage/uas.c static void uas_add_work(struct uas_cmd_info *cmdinfo) cmdinfo 144 drivers/usb/storage/uas.c struct scsi_pointer *scp = (void *)cmdinfo; cmdinfo 149 drivers/usb/storage/uas.c cmdinfo->state |= IS_IN_WORK_LIST; cmdinfo 155 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo; cmdinfo 166 drivers/usb/storage/uas.c cmdinfo = (void *)&cmnd->SCp; cmdinfo 169 drivers/usb/storage/uas.c cmdinfo->state &= ~COMMAND_INFLIGHT; cmdinfo 204 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 211 drivers/usb/storage/uas.c prefix, status, cmdinfo->uas_tag, cmdinfo 229 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo; cmdinfo 234 drivers/usb/storage/uas.c cmdinfo = (void *)&cmnd->SCp; cmdinfo 236 drivers/usb/storage/uas.c if (cmdinfo->state & SUBMIT_CMD_URB) cmdinfo 237 drivers/usb/storage/uas.c usb_free_urb(cmdinfo->cmd_urb); cmdinfo 240 drivers/usb/storage/uas.c if (!(cmdinfo->state & DATA_IN_URB_INFLIGHT)) cmdinfo 241 drivers/usb/storage/uas.c usb_free_urb(cmdinfo->data_in_urb); cmdinfo 242 drivers/usb/storage/uas.c if (!(cmdinfo->state & DATA_OUT_URB_INFLIGHT)) cmdinfo 243 drivers/usb/storage/uas.c usb_free_urb(cmdinfo->data_out_urb); cmdinfo 248 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 252 drivers/usb/storage/uas.c if (cmdinfo->state & (COMMAND_INFLIGHT | cmdinfo 257 drivers/usb/storage/uas.c devinfo->cmnd[cmdinfo->uas_tag - 1] = NULL; cmdinfo 266 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 269 drivers/usb/storage/uas.c cmdinfo->state |= direction | SUBMIT_STATUS_URB; cmdinfo 272 drivers/usb/storage/uas.c uas_add_work(cmdinfo); cmdinfo 307 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo; cmdinfo 332 drivers/usb/storage/uas.c cmdinfo = (void *)&cmnd->SCp; cmdinfo 334 drivers/usb/storage/uas.c if (!(cmdinfo->state & COMMAND_INFLIGHT)) { cmdinfo 344 drivers/usb/storage/uas.c data_in_urb = usb_get_urb(cmdinfo->data_in_urb); cmdinfo 345 drivers/usb/storage/uas.c data_out_urb = usb_get_urb(cmdinfo->data_out_urb); cmdinfo 347 drivers/usb/storage/uas.c cmdinfo->state &= ~COMMAND_INFLIGHT; cmdinfo 351 drivers/usb/storage/uas.c if (!cmdinfo->data_in_urb || cmdinfo 352 drivers/usb/storage/uas.c (cmdinfo->state & DATA_IN_URB_INFLIGHT)) { cmdinfo 359 drivers/usb/storage/uas.c if (!cmdinfo->data_out_urb || cmdinfo 360 drivers/usb/storage/uas.c (cmdinfo->state & DATA_OUT_URB_INFLIGHT)) { cmdinfo 367 drivers/usb/storage/uas.c cmdinfo->state &= ~COMMAND_INFLIGHT; cmdinfo 371 drivers/usb/storage/uas.c data_in_urb = usb_get_urb(cmdinfo->data_in_urb); cmdinfo 372 drivers/usb/storage/uas.c data_out_urb = usb_get_urb(cmdinfo->data_out_urb); cmdinfo 397 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 405 drivers/usb/storage/uas.c if (cmdinfo->data_in_urb == urb) { cmdinfo 406 drivers/usb/storage/uas.c cmdinfo->state &= ~DATA_IN_URB_INFLIGHT; cmdinfo 407 drivers/usb/storage/uas.c cmdinfo->data_in_urb = NULL; cmdinfo 408 drivers/usb/storage/uas.c } else if (cmdinfo->data_out_urb == urb) { cmdinfo 409 drivers/usb/storage/uas.c cmdinfo->state &= ~DATA_OUT_URB_INFLIGHT; cmdinfo 410 drivers/usb/storage/uas.c cmdinfo->data_out_urb = NULL; cmdinfo 417 drivers/usb/storage/uas.c if (cmdinfo->state & SUBMIT_CMD_URB) { cmdinfo 449 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 460 drivers/usb/storage/uas.c urb->stream_id = cmdinfo->uas_tag; cmdinfo 471 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 485 drivers/usb/storage/uas.c urb->stream_id = cmdinfo->uas_tag; cmdinfo 499 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 516 drivers/usb/storage/uas.c iu->tag = cpu_to_be16(cmdinfo->uas_tag); cmdinfo 561 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 566 drivers/usb/storage/uas.c if (cmdinfo->state & SUBMIT_STATUS_URB) { cmdinfo 570 drivers/usb/storage/uas.c cmdinfo->state &= ~SUBMIT_STATUS_URB; cmdinfo 573 drivers/usb/storage/uas.c if (cmdinfo->state & ALLOC_DATA_IN_URB) { cmdinfo 574 drivers/usb/storage/uas.c cmdinfo->data_in_urb = uas_alloc_data_urb(devinfo, GFP_ATOMIC, cmdinfo 576 drivers/usb/storage/uas.c if (!cmdinfo->data_in_urb) cmdinfo 578 drivers/usb/storage/uas.c cmdinfo->state &= ~ALLOC_DATA_IN_URB; cmdinfo 581 drivers/usb/storage/uas.c if (cmdinfo->state & SUBMIT_DATA_IN_URB) { cmdinfo 582 drivers/usb/storage/uas.c usb_anchor_urb(cmdinfo->data_in_urb, &devinfo->data_urbs); cmdinfo 583 drivers/usb/storage/uas.c err = usb_submit_urb(cmdinfo->data_in_urb, GFP_ATOMIC); cmdinfo 585 drivers/usb/storage/uas.c usb_unanchor_urb(cmdinfo->data_in_urb); cmdinfo 589 drivers/usb/storage/uas.c cmdinfo->state &= ~SUBMIT_DATA_IN_URB; cmdinfo 590 drivers/usb/storage/uas.c cmdinfo->state |= DATA_IN_URB_INFLIGHT; cmdinfo 593 drivers/usb/storage/uas.c if (cmdinfo->state & ALLOC_DATA_OUT_URB) { cmdinfo 594 drivers/usb/storage/uas.c cmdinfo->data_out_urb = uas_alloc_data_urb(devinfo, GFP_ATOMIC, cmdinfo 596 drivers/usb/storage/uas.c if (!cmdinfo->data_out_urb) cmdinfo 598 drivers/usb/storage/uas.c cmdinfo->state &= ~ALLOC_DATA_OUT_URB; cmdinfo 601 drivers/usb/storage/uas.c if (cmdinfo->state & SUBMIT_DATA_OUT_URB) { cmdinfo 602 drivers/usb/storage/uas.c usb_anchor_urb(cmdinfo->data_out_urb, &devinfo->data_urbs); cmdinfo 603 drivers/usb/storage/uas.c err = usb_submit_urb(cmdinfo->data_out_urb, GFP_ATOMIC); cmdinfo 605 drivers/usb/storage/uas.c usb_unanchor_urb(cmdinfo->data_out_urb); cmdinfo 609 drivers/usb/storage/uas.c cmdinfo->state &= ~SUBMIT_DATA_OUT_URB; cmdinfo 610 drivers/usb/storage/uas.c cmdinfo->state |= DATA_OUT_URB_INFLIGHT; cmdinfo 613 drivers/usb/storage/uas.c if (cmdinfo->state & ALLOC_CMD_URB) { cmdinfo 614 drivers/usb/storage/uas.c cmdinfo->cmd_urb = uas_alloc_cmd_urb(devinfo, GFP_ATOMIC, cmnd); cmdinfo 615 drivers/usb/storage/uas.c if (!cmdinfo->cmd_urb) cmdinfo 617 drivers/usb/storage/uas.c cmdinfo->state &= ~ALLOC_CMD_URB; cmdinfo 620 drivers/usb/storage/uas.c if (cmdinfo->state & SUBMIT_CMD_URB) { cmdinfo 621 drivers/usb/storage/uas.c usb_anchor_urb(cmdinfo->cmd_urb, &devinfo->cmd_urbs); cmdinfo 622 drivers/usb/storage/uas.c err = usb_submit_urb(cmdinfo->cmd_urb, GFP_ATOMIC); cmdinfo 624 drivers/usb/storage/uas.c usb_unanchor_urb(cmdinfo->cmd_urb); cmdinfo 628 drivers/usb/storage/uas.c cmdinfo->cmd_urb = NULL; cmdinfo 629 drivers/usb/storage/uas.c cmdinfo->state &= ~SUBMIT_CMD_URB; cmdinfo 630 drivers/usb/storage/uas.c cmdinfo->state |= COMMAND_INFLIGHT; cmdinfo 641 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 681 drivers/usb/storage/uas.c memset(cmdinfo, 0, sizeof(*cmdinfo)); cmdinfo 682 drivers/usb/storage/uas.c cmdinfo->uas_tag = idx + 1; /* uas-tag == usb-stream-id, so 1 based */ cmdinfo 683 drivers/usb/storage/uas.c cmdinfo->state = SUBMIT_STATUS_URB | ALLOC_CMD_URB | SUBMIT_CMD_URB; cmdinfo 687 drivers/usb/storage/uas.c cmdinfo->state |= ALLOC_DATA_IN_URB | SUBMIT_DATA_IN_URB; cmdinfo 690 drivers/usb/storage/uas.c cmdinfo->state |= ALLOC_DATA_IN_URB | SUBMIT_DATA_IN_URB; cmdinfo 693 drivers/usb/storage/uas.c cmdinfo->state |= ALLOC_DATA_OUT_URB | SUBMIT_DATA_OUT_URB; cmdinfo 699 drivers/usb/storage/uas.c cmdinfo->state &= ~(SUBMIT_DATA_IN_URB | SUBMIT_DATA_OUT_URB); cmdinfo 704 drivers/usb/storage/uas.c if (cmdinfo->state & SUBMIT_STATUS_URB) { cmdinfo 708 drivers/usb/storage/uas.c uas_add_work(cmdinfo); cmdinfo 725 drivers/usb/storage/uas.c struct uas_cmd_info *cmdinfo = (void *)&cmnd->SCp; cmdinfo 736 drivers/usb/storage/uas.c cmdinfo->state |= COMMAND_ABORTED; cmdinfo 739 drivers/usb/storage/uas.c devinfo->cmnd[cmdinfo->uas_tag - 1] = NULL; cmdinfo 740 drivers/usb/storage/uas.c if (cmdinfo->state & DATA_IN_URB_INFLIGHT) cmdinfo 741 drivers/usb/storage/uas.c data_in_urb = usb_get_urb(cmdinfo->data_in_urb); cmdinfo 742 drivers/usb/storage/uas.c if (cmdinfo->state & DATA_OUT_URB_INFLIGHT) cmdinfo 743 drivers/usb/storage/uas.c data_out_urb = usb_get_urb(cmdinfo->data_out_urb);