diff options
Diffstat (limited to 'firmware/usbstack/usb_storage.c')
-rw-r--r-- | firmware/usbstack/usb_storage.c | 10 |
1 files changed, 0 insertions, 10 deletions
diff --git a/firmware/usbstack/usb_storage.c b/firmware/usbstack/usb_storage.c index bde774e5f0..4bac1bcf8a 100644 --- a/firmware/usbstack/usb_storage.c +++ b/firmware/usbstack/usb_storage.c | |||
@@ -546,7 +546,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
546 | 546 | ||
547 | case SCSI_MODE_SENSE_10: { | 547 | case SCSI_MODE_SENSE_10: { |
548 | if(! lun_present) { | 548 | if(! lun_present) { |
549 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
550 | send_csw(UMS_STATUS_FAIL); | 549 | send_csw(UMS_STATUS_FAIL); |
551 | cur_sense_data.sense_key=SENSE_NOT_READY; | 550 | cur_sense_data.sense_key=SENSE_NOT_READY; |
552 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; | 551 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; |
@@ -579,7 +578,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
579 | MIN(sizeof(struct mode_sense_data_10), length)); | 578 | MIN(sizeof(struct mode_sense_data_10), length)); |
580 | break; | 579 | break; |
581 | default: | 580 | default: |
582 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
583 | send_csw(UMS_STATUS_FAIL); | 581 | send_csw(UMS_STATUS_FAIL); |
584 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; | 582 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; |
585 | cur_sense_data.asc=ASC_INVALID_FIELD_IN_CBD; | 583 | cur_sense_data.asc=ASC_INVALID_FIELD_IN_CBD; |
@@ -590,7 +588,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
590 | } | 588 | } |
591 | case SCSI_MODE_SENSE_6: { | 589 | case SCSI_MODE_SENSE_6: { |
592 | if(! lun_present) { | 590 | if(! lun_present) { |
593 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
594 | send_csw(UMS_STATUS_FAIL); | 591 | send_csw(UMS_STATUS_FAIL); |
595 | cur_sense_data.sense_key=SENSE_NOT_READY; | 592 | cur_sense_data.sense_key=SENSE_NOT_READY; |
596 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; | 593 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; |
@@ -626,7 +623,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
626 | MIN(sizeof(struct mode_sense_data_6), length)); | 623 | MIN(sizeof(struct mode_sense_data_6), length)); |
627 | break; | 624 | break; |
628 | default: | 625 | default: |
629 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
630 | send_csw(UMS_STATUS_FAIL); | 626 | send_csw(UMS_STATUS_FAIL); |
631 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; | 627 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; |
632 | cur_sense_data.asc=ASC_INVALID_FIELD_IN_CBD; | 628 | cur_sense_data.asc=ASC_INVALID_FIELD_IN_CBD; |
@@ -660,7 +656,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
660 | } | 656 | } |
661 | else | 657 | else |
662 | { | 658 | { |
663 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
664 | send_csw(UMS_STATUS_FAIL); | 659 | send_csw(UMS_STATUS_FAIL); |
665 | cur_sense_data.sense_key=SENSE_NOT_READY; | 660 | cur_sense_data.sense_key=SENSE_NOT_READY; |
666 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; | 661 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; |
@@ -680,7 +675,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
680 | } | 675 | } |
681 | else | 676 | else |
682 | { | 677 | { |
683 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
684 | send_csw(UMS_STATUS_FAIL); | 678 | send_csw(UMS_STATUS_FAIL); |
685 | cur_sense_data.sense_key=SENSE_NOT_READY; | 679 | cur_sense_data.sense_key=SENSE_NOT_READY; |
686 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; | 680 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; |
@@ -692,7 +686,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
692 | case SCSI_READ_10: | 686 | case SCSI_READ_10: |
693 | logf("scsi read10 %d",lun); | 687 | logf("scsi read10 %d",lun); |
694 | if(! lun_present) { | 688 | if(! lun_present) { |
695 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
696 | send_csw(UMS_STATUS_FAIL); | 689 | send_csw(UMS_STATUS_FAIL); |
697 | cur_sense_data.sense_key=SENSE_NOT_READY; | 690 | cur_sense_data.sense_key=SENSE_NOT_READY; |
698 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; | 691 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; |
@@ -714,7 +707,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
714 | //logf("scsi read %d %d", current_cmd.sector, current_cmd.count); | 707 | //logf("scsi read %d %d", current_cmd.sector, current_cmd.count); |
715 | 708 | ||
716 | if((current_cmd.sector + current_cmd.count) > block_count) { | 709 | if((current_cmd.sector + current_cmd.count) > block_count) { |
717 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
718 | send_csw(UMS_STATUS_FAIL); | 710 | send_csw(UMS_STATUS_FAIL); |
719 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; | 711 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; |
720 | cur_sense_data.asc=ASC_LBA_OUT_OF_RANGE; | 712 | cur_sense_data.asc=ASC_LBA_OUT_OF_RANGE; |
@@ -731,7 +723,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
731 | case SCSI_WRITE_10: | 723 | case SCSI_WRITE_10: |
732 | logf("scsi write10 %d",lun); | 724 | logf("scsi write10 %d",lun); |
733 | if(! lun_present) { | 725 | if(! lun_present) { |
734 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
735 | send_csw(UMS_STATUS_FAIL); | 726 | send_csw(UMS_STATUS_FAIL); |
736 | cur_sense_data.sense_key=SENSE_NOT_READY; | 727 | cur_sense_data.sense_key=SENSE_NOT_READY; |
737 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; | 728 | cur_sense_data.asc=ASC_MEDIUM_NOT_PRESENT; |
@@ -751,7 +742,6 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
751 | cbw->command_block[8]); | 742 | cbw->command_block[8]); |
752 | /* expect data */ | 743 | /* expect data */ |
753 | if((current_cmd.sector + current_cmd.count) > block_count) { | 744 | if((current_cmd.sector + current_cmd.count) > block_count) { |
754 | usb_drv_stall(EP_MASS_STORAGE, true,true); | ||
755 | send_csw(UMS_STATUS_FAIL); | 745 | send_csw(UMS_STATUS_FAIL); |
756 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; | 746 | cur_sense_data.sense_key=SENSE_ILLEGAL_REQUEST; |
757 | cur_sense_data.asc=ASC_LBA_OUT_OF_RANGE; | 747 | cur_sense_data.asc=ASC_LBA_OUT_OF_RANGE; |