public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
From: victor <victor@keyasic.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] USB mass storage gadget patch
Date: Mon, 5 Nov 2012 14:45:20 +0800	[thread overview]
Message-ID: <011b01cdbb21$25f46160$71dd2420$@keyasic.com> (raw)
In-Reply-To: 20121102141909.14571cb3@amdc308.digital.local

Lukasz,

>>> 2) Now I can use the patch and process till SCSI MODE_SELECT_6 
>>> command, and then problem is encountered. Basically the SCSI
>>> MODE_SELECT_6 is sent to EP1 Out, then data is sent to EP1 out, and 
>>> the fsg_main_thread only sees the data. I change the code to force 
>>> the CSW.
>>
>>Can you explain further problems which you encounter?
>>
>>I'm using this UMS version internally (the version which you pointed out
with the link) for debugging our targets.
>>
>>I'm using Debian Linux as a host with standard tools like dd and
parted/fdisk. I don't have any problems with it (even with debug messages
enabled).
>>
>>
>
>In cmd_usb_mass_storage.c, do_usb_mass_storage(), the while(1) loop, the
usb_gadget_handle_interrupts() will handle the interrupts that is triggered,
and received data
> from EP1 out, and bh-state >is set to BUF_STATE_FULL in
bulk_out_complete(). And then fsg_main_thread() in file_storage.c is called.
And then get_next_command() is called. 
>And then start_transfer() is called. In that function, the bh->state will
be set to BUF_STATE_BUSY. Because of this change, for two consecutive data
from EP1 out, one data is missed.

>I can send the full source code to you if it is helpful. Thanks.

On further research into this, when receiving the SCSI_MODE_SELECT_6
command, in bulk_out_complete(), the bh pointer is 0x1b872e4

====== debug statement from console ======
0x43425355 0x507bc10 0x18 0x15060000 0x18000010 0x0 0x0 
bulk_out_complete 0x1b872e4

Then, in get_next_command(), before calling start_transfer(), the bh pointer
becomes 0x1b87304. 

This changes in bh pointer can cause data not to be processed by the usb
mass storage gadget code. 

Regards,
Victor


================================================================================================
CONFIDENTIALITY NOTE:
This e-mail and any attachments may contain confidential information and may be protected by legal privilege. If you are not the intended addressee (or authorized to receive for the addressee). be aware that any disclosure, copying, distribution or use of this e-mail or any attachment is prohibited. If you have received this e-mail in error, please notify us immediately by returning it to the sender and delete this copy from your system. Thank you for your cooperation.
KeyASIC Inc.
================================================================================================

  parent reply	other threads:[~2012-11-05  6:45 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-11-02 11:07 [U-Boot] USB mass storage gadget patch victor
2012-11-02 13:19 ` Lukasz Majewski
2012-11-05  2:30   ` victor
2012-11-05  6:45   ` victor [this message]
2012-11-06  6:46   ` victor
2012-11-06  9:03     ` Lukasz Majewski
2012-11-06  9:58       ` victor
2012-11-06 11:08       ` victor
2012-11-22  2:24       ` victor
  -- strict thread matches above, loose matches on Subject: below --
2012-11-02 11:43 victor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='011b01cdbb21$25f46160$71dd2420$@keyasic.com' \
    --to=victor@keyasic.com \
    --cc=u-boot@lists.denx.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox