diff options
Diffstat (limited to 'firmware/usbstack/usb_storage.c')
-rw-r--r-- | firmware/usbstack/usb_storage.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/firmware/usbstack/usb_storage.c b/firmware/usbstack/usb_storage.c index 59339eb1c3..9488f8aecc 100644 --- a/firmware/usbstack/usb_storage.c +++ b/firmware/usbstack/usb_storage.c | |||
@@ -879,6 +879,7 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
879 | cur_sense_data.ascq=0; | 879 | cur_sense_data.ascq=0; |
880 | } | 880 | } |
881 | else { | 881 | else { |
882 | trigger_cpu_boost(); | ||
882 | cur_cmd.last_result = ata_read_sectors(IF_MV2(cur_cmd.lun,) | 883 | cur_cmd.last_result = ata_read_sectors(IF_MV2(cur_cmd.lun,) |
883 | cur_cmd.sector, | 884 | cur_cmd.sector, |
884 | MIN(BUFFER_SIZE/SECTOR_SIZE, | 885 | MIN(BUFFER_SIZE/SECTOR_SIZE, |
@@ -916,6 +917,7 @@ static void handle_scsi(struct command_block_wrapper* cbw) | |||
916 | cur_sense_data.ascq=0; | 917 | cur_sense_data.ascq=0; |
917 | } | 918 | } |
918 | else { | 919 | else { |
920 | trigger_cpu_boost(); | ||
919 | receive_block_data(cur_cmd.data[0], | 921 | receive_block_data(cur_cmd.data[0], |
920 | MIN(BUFFER_SIZE, | 922 | MIN(BUFFER_SIZE, |
921 | cur_cmd.count*SECTOR_SIZE)); | 923 | cur_cmd.count*SECTOR_SIZE)); |
@@ -951,6 +953,7 @@ static void receive_block_data(void *data,int size) | |||
951 | 953 | ||
952 | static void send_csw(int status) | 954 | static void send_csw(int status) |
953 | { | 955 | { |
956 | cancel_cpu_boost(); | ||
954 | tb.csw->signature = htole32(CSW_SIGNATURE); | 957 | tb.csw->signature = htole32(CSW_SIGNATURE); |
955 | tb.csw->tag = cur_cmd.tag; | 958 | tb.csw->tag = cur_cmd.tag; |
956 | tb.csw->data_residue = 0; | 959 | tb.csw->data_residue = 0; |