SDIO firmware download error

Dan Williams dcbw at redhat.com
Tue Mar 30 16:29:30 EDT 2010


On Thu, 2010-03-11 at 13:49 +0530, Alagu Sankar wrote:
> Trying my luck with a different subject as the previous one was rejected..
> 
> I am in the process of adding SDIO Support for Davinci and using the
> Libertas SDIO driver as my standard test setup.  I am using the Linux
> 2.6.33-rc6 Linux kernel and the associated libertas driver. I have
> access to 8385, 8686 and 8688 cards from different vendors, with
> diferent firmware versions. I would like to get some inputs from the
> list for the following issue that I am facing.
> 
> When I use the libertas driver as is, the helper download is always
> successful, but the primary firmware loading fails after the first
> transfer.  I get a req_size of 17 after the initial 16 byte transfer,
> indicating that the error bit is set. For a typical working setup,
> there is a 16 byte transfer, followed by a 12 byte transfer and so on.
>  If I introduce a delay of 2 milli-seconds between each transfer of
> the helper firmware, then there is no problem in downloading the
> primary firmware.  Even enabling the debug message
> "lbs_deb_sdio("sending %d bytes chunk\n", chunk_size);" alone would
> result in successful firmware download.

If we can reproduce this issue on some other platform (to determine that
the host controller is *not* the culprit) I'm not necessarily opposed to
adding a small delay during helper firmware download in the driver.  But
beyond adding some debugging prints to the MMC layer to conclusively
determine that the HC is responding correctly or incorrectly to the
transfers, I'm not really sure.  Are you aware of any errata for your
SDIO controller that might affect this?

Dan


> Except for this 2ms delay during the helper firmware download,
> eveything else remains the same and the driver works perfectly fine
> afterwards.  With this delay I have a 100% success rate with
> 8385/8686/8688 cards and associated firmwares.  Without the delay
> there is a 100% failure for 8385/8686 cards, but 70%success rate for
> 8688 card. i.e even without the delay the 8688 firmware dowload would
> be succesfull 7 out of 10 times.
> 
> The problem could be in the davinci host driver that i have modified,
> but I would like to know what can trigger an error during the firmware
> download, so that I focus on the right place.  There are absolutely no
> SD bus errors during any of the transfers.  Tried both Davinci DM355
> and DM365 EVM platforms with the same result. Any help from the group
> is appreciated.
> 
> - Alagu
> 
> _______________________________________________
> libertas-dev mailing list
> libertas-dev at lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/libertas-dev





More information about the libertas-dev mailing list