Re: Linux USB file storage gadget with new UDC

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

>> I am able to solve the SCSI command timeout problem by adding a code
>> to check the hardware register busy bit continuously, in
>> kagen2_ep_queue():
>>
>> do {
>>   read_hardware_register_busy_bit
>> } while (hardware_is_busy)
>
> This is silly.  Drivers shouldn't poll in this way.  That's what
> interrupts are for.
>
>> however, it causes the linux prompt to be non-responsive because the
>> checking hardware register code is run continuously. If i add a
>> schedule() to the do-while loop, the kagen2_ep_queue() will not be
>> continued. How to go about fixing this dilemma?
>
> I can't say much more without seeing the code.  However, you should not
> need to wait for the hardware to do something -- instead the interrupt
> handler routine should be called when the hardware is finished.

Yes, it is silly. The hardware interrupt is not being generated for
every SCSI command received, so the driver has to poll. I put the
polling code in a thread, and this dilemma is fixed.

I still observe the SCSI_WRITE_10 command time out sometimes. When
time out happens, the gadget log shows:

g_file_storage gadget: invalid CBW: len 512 sig 0x6f007442
g_file_storage gadget: bulk-in set wedge

Is it because the gadget expects 31 byte command, but 512 byte data is
received instead?

The full UDC/gadget log is attached. Hope it is useful. If not, i will
add in more printk statements.

Thanks,
victor
EP1 OUT IRQ 0x28
[start_transfer] fffff8 6005fff0
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 4d
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 4d 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 04 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 4d
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] fffff8 fff0
g_file_storage gadget-lun0: file write 512 @ 2048 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 4d 00 00 00 00 00 00 00 00
[start_transfer] 53425355 4d
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x4d
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] fffff8 fff0
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 4e
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 4e 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 06 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 4e
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 6f007442 7000
g_file_storage gadget-lun0: file write 512 @ 3072 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 4e 00 00 00 00 00 00 00 00
[start_transfer] 53425355 4e
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x4e
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] 6f007442 7000
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 4f
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 4f 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 02 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 4f
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] fffff8 fff0
g_file_storage gadget-lun0: file write 512 @ 1024 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 4f 00 00 00 00 00 00 00 00
[start_transfer] 53425355 4f
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x4f
8: 0x0
bulk_in_complete --> 0, 13/13
[start_transfer] fffff8 fff0
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
EP1 OUT IRQ 0x28
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
EP1 OUT IRQ 0x28
[kagen2_ep_queue] 43425355 50
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 50 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 06 00 00 01 00 00 00 00 00 00 00
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 50
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 6f007442 7000
g_file_storage gadget-lun0: file write 512 @ 3072 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 50 00 00 00 00 00 00 00 00
[start_transfer] 53425355 50
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x50
8: 0x0
bulk_in_complete --> 0, 13/13
[start_transfer] 6f007442 7000
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 6f007442 7000
g_file_storage gadget: bulk_out_complete --> 0, 512/31
g_file_storage gadget: invalid CBW: len 512 sig 0x6f007442
g_file_storage gadget: bulk-in set wedge
g_file_storage gadget: after calling get_next_command
[start_transfer] 6f007442 7000
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
EP1 OUT IRQ 0x28
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
EP1 OUT IRQ 0x28
[kagen2_ep_queue] 43425355 51
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 51 00 00 00 00 6a 00 00 00 00 0a 2a
00000010: 00 00 00 00 a2 00 00 35 00 00 00 00 00 00 00
g_file_storage gadget: after calling get_next_command
[start_transfer] 43425355 51
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 36616664 6b6b6b39
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 36616664 6b6b6b39
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303030 31303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303030 31303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 33303031 53203332
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 33303031 53203332
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303030 30303020
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303030 30303020
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 313a3435 31312d20
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 313a3435 31312d20
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 31393661 32203034
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 31393661 32203034
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303038 20383030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303038 20383030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 3a323a69 3a343530
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 3a323a69 3a343530
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 20303030 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 20303030 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 3c203331 6166640a
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 3c203331 6166640a
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 31363532 20343431
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 31363532 20343431
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303030 30203030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303030 30203030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 3531312d 39303420
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 3531312d 39303420
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30203030 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30203030 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 20303431 33333432
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 20303431 33333432
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 323a6f42 3435303a
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 323a6f42 3435303a
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] a303030 36616664
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] a303030 36616664
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 34660a3c 32613231
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 34660a3c 32613231
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30302030 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30302030 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 36313030 42204320
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 36313030 42204320
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 31312d20 31332035
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 31312d20 31332035
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 32203034 34393334
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 32203034 34393334
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 33343220 33393939
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 33343220 33393939
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303020 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303020 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 35303a32 20313a34
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 35303a32 20313a34
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 35353520 34323433
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 35353520 34323433
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 20353136 6f422043
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 20353136 6f422043
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 20432037 323a6942
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 20432037 323a6942
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303030 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303030 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 3d203331 35353520
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 3d203331 35353520
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303935 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303935 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 3435303a 3020313a
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 3435303a 3020313a
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 313a3435 34203020
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 313a3435 34203020
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 39366166 20303431
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 39366166 20303431
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 20333532 30306435
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 20333532 30306435
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303130 20303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303130 20303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] a3e2031 32313466
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] a3e2031 32313466
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 203d2036 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 203d2036 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 37343434 31333434
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 37343434 31333434
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30203030 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30203030 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 61303030 30203832
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 61303030 30203832
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 32203034 31353434
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 32203034 31353434
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30203030 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30203030 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 3a694220 35303a32
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 3a694220 35303a32
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30302030 6166640a
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30302030 6166640a
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303030 30302032
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303030 30302032
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 20373237 69422053
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 20373237 69422053
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30302030 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30302030 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 312d2031 31203531
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 312d2031 31203531
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 43204320 3a323a6f
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 43204320 3a323a6f
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 34303030 30303020
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 34303030 30303020
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30203030 3935660a
g_file_storage gadget: bulk_out_complete --> 0, 512/31
EP1 OUT IRQ 0x28
g_file_storage gadget: after calling get_next_command
[start_transfer] 30203030 3935660a
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303020 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
g_file_storage gadget: after calling get_next_command
[start_transfer] 30303020 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
g_file_storage gadget: disconnect or port reset
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 30303020 30303030
g_file_storage gadget: bulk_out_complete --> 0, 512/31
g_file_storage gadget: after calling get_next_command
g_file_storage gadget: reset config
g_file_storage gadget: reset interface
g_file_storage gadget: in handle_exception loop
g_file_storage gadget: in fsg->running loop
g_file_storage gadget: in fsg->running loop
g_file_storage gadget: ep0-setup, length 8:
00000000: 80 06 00 01 00 00 40 00
g_file_storage gadget: get device descriptor
ept0 in queue len 0x12, buffer 0xc128a800
g_file_storage gadget: ep0-in, length 18:
00000000: 12 01 00 02 00 00 00 40 25 05 a5 a4 33 03 01 02
00000010: 00 01
g_file_storage gadget: disconnect or port reset
g_file_storage gadget: in handle_exception loop
g_file_storage gadget: in fsg->running loop
exit A
g_file_storage gadget: ep0-setup, length 8:
00000000: 80 06 00 01 00 00 12 00
g_file_storage gadget: get device descriptor
ept0 in queue len 0x12, buffer 0xc128a800
g_file_storage gadget: ep0-in, length 18:
00000000: 12 01 00 02 00 00 00 40 25 05 a5 a4 33 03 01 02
00000010: 00 01
g_file_storage gadget: ep0-setup, length 8:
00000000: 80 06 00 02 00 00 20 00
g_file_storage gadget: get configuration descriptor
ept0 in queue len 0x20, buffer 0xc128a800
g_file_storage gadget: ep0-in, length 32:
00000000: 09 02 20 00 01 01 04 c0 01 09 04 00 00 02 08 06
00000010: 50 05 07 05 81 02 00 02 00 07 05 01 02 00 02 01
g_file_storage gadget: ep0-setup, length 8:
00000000: 00 09 01 00 00 00 00 00
g_file_storage gadget: set configuration
g_file_storage gadget: set interface 0
g_file_storage gadget: high-speed config #1
ept0 in queue len 0x0, buffer 0xc128a800
g_file_storage gadget: in handle_exception loop
[start_transfer] 53425355 50
ept1 out queue len 0x200, buffer 0xc0c3c000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 52
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 52 00 00 00 00 00 00 00 00 00 06 00
00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
g_file_storage gadget: SCSI command: TEST UNIT READY;  Dc=6, Dn=0;  Hc=6, Hn=0
attention condition
g_file_storage gadget: before calling send_status
g_file_storage gadget: sending command-failure status
g_file_storage gadget:   sense data: SK x06, ASC x29, ASCQ x00;  info x0
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 52 00 00 00 00 00 00 00 01
[start_transfer] 53425355 52
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x52
8: 0x0
bulk_in_complete --> 0, 13/13
[start_transfer] 30303020 30303030
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 53
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 53 00 00 00 12 00 00 00 80 00 06 03
00000010: 00 00 00 12 00 00 00 00 00 00 00 00 00 00 00
g_file_storage gadget: SCSI command: REQUEST SENSE;  Dc=6, Di=18;  Hc=6, Hi=18
g_file_storage gadget: bulk-in, length 18:
00000000: 70 00 06 00 00 00 00 0a 00 00 00 00 29 00 00 00
00000010: 00 00
[start_transfer] 60070 a000000
ept1 in queue len 0x12, buffer 0xc1338000
0: 0x60070
4: 0xa000000
8: 0x0
c: 0x29
bulk_in_complete --> 0, 18/18
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 53 00 00 00 00 00 00 00 00
[start_transfer] 53425355 53
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x53
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] 60070 a000000
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 54
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 54 00 00 00 00 00 00 00 00 00 06 00
00000010: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
g_file_storage gadget: SCSI command: TEST UNIT READY;  Dc=6, Dn=0;  Hc=6, Hn=0
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 54 00 00 00 00 00 00 00 00
[start_transfer] 53425355 54
ept1 in queue len 0xd, buffer 0xc1338000
0: 0x53425355
4: 0x54
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] 53425355 53
ept1 out queue len 0x200, buffer 0xc0c3c000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 55
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 55 00 00 00 00 6a 00 00 00 00 0a 2a
00000010: 00 00 00 00 a2 00 00 35 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=27136;  Hc=10, Ho=27136
[start_transfer] 43425355 55
ept1 out queue len 0x4000, buffer 0xc0c3c000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 16384 512
before kagen2_ep_queue
EP1 OUT IRQ 0x28
after kagen2_ep_queue
kagen2_ep_queue 1024 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 1536 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 2048 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 2560 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 3072 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 3584 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 4096 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 4608 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 5120 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 5632 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 6144 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 6656 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 7168 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 7680 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 8192 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 8704 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 9216 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 9728 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 10240 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 10752 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 11264 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 11776 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 12288 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 12800 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 13312 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 13824 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 14336 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 14848 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 15360 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 15872 16384 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 16384 16384 512
EP1 OUT IRQ 0x28
[kagen2_ep_queue] 36616664 6b6b6b39
[start_transfer] 53425355 54
ept1 out queue len 0x2a00, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 10752 512
before kagen2_ep_queue
EP1 OUT IRQ 0x28
after kagen2_ep_queue
kagen2_ep_queue 1024 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 1536 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 2048 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 2560 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 3072 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 3584 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 4096 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 4608 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 5120 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 5632 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 6144 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 6656 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 7168 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 7680 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 8192 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 8704 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 9216 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 9728 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 10240 10752 512
EP1 OUT IRQ 0x28
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 10752 10752 512
[kagen2_ep_queue] 313a3435 34203020
g_file_storage gadget-lun0: file write 16384 @ 82944 -> 16384
g_file_storage gadget-lun0: file write 10752 @ 99328 -> 10752
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 55 00 00 00 00 00 00 00 00
[start_transfer] 53425355 55
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x55
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] 313a3435 34203020
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 56
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 56 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 06 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 56
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 6f007442 7000
g_file_storage gadget-lun0: file write 512 @ 3072 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 56 00 00 00 00 00 00 00 00
[start_transfer] 53425355 56
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x56
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] 6f007442 7000
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 57
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 57 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 04 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 57
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] fffff8 fff0
g_file_storage gadget-lun0: file write 512 @ 2048 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 57 00 00 00 00 00 00 00 00
[start_transfer] 53425355 57
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x57
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] fffff8 fff0
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 58
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 58 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 02 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 58
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] fffff8 fff0
g_file_storage gadget-lun0: file write 512 @ 1024 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 58 00 00 00 00 00 00 00 00
[start_transfer] 53425355 58
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x58
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] fffff8 fff0
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 59
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 59 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 06 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 59
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 6f007442 7000
g_file_storage gadget-lun0: file write 512 @ 3072 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 59 00 00 00 00 00 00 00 00
[start_transfer] 53425355 59
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x59
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] 6f007442 7000
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 5a
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 5a 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 06 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 5a
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 6f007442 7000
g_file_storage gadget-lun0: file write 512 @ 3072 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 5a 00 00 00 00 00 00 00 00
[start_transfer] 53425355 5a
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x5a
8: 0x0
bulk_in_complete --> 0, 13/13
EP1 OUT IRQ 0x28
[start_transfer] 6f007442 7000
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 31 512 31
[kagen2_ep_queue] 43425355 5b
g_file_storage gadget: bulk-out, length 31:
00000000: 55 53 42 43 5b 00 00 00 00 02 00 00 00 00 0a 2a
00000010: 00 00 00 00 07 00 00 01 00 00 00 00 00 00 00
EP1 OUT IRQ 0x28
g_file_storage gadget: SCSI command: WRITE(10);  Dc=10, Do=512;  Hc=10, Ho=512
[start_transfer] 43425355 5b
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
after kagen2_ep_queue
kagen2_ep_queue 512 512 512
[kagen2_ep_queue] 63007301 69007300
g_file_storage gadget-lun0: file write 512 @ 3584 -> 512
g_file_storage gadget: before calling send_status
g_file_storage gadget: bulk-in, length 13:
00000000: 55 53 42 53 5b 00 00 00 00 00 00 00 00
[start_transfer] 53425355 5b
ept1 in queue len 0xd, buffer 0xc0c3c000
0: 0x53425355
4: 0x5b
8: 0x0
bulk_in_complete --> 0, 13/13
[start_transfer] 63007301 69007300
ept1 out queue len 0x200, buffer 0xc1338000
before kagen2_ep_queue
#

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux