答复: SDHC driver of RTEMS
Sebastian Huber
sebastian.huber at embedded-brains.de
Tue Aug 6 06:00:17 UTC 2013
On 2013-08-06 03:34, ruizx wrote:
> Sebastian Huber wrote:
>> On 2013-08-05 12:51, 芮正新 wrote:
>>> Thanks for your reply.
>>> Can you give me some advices to resolve my problems?
>>
>> I would look at the latest errata documents from Freescale and the
>> Linux driver.
>>
>> I would also test the driver without a file system. Just use the
>> bdbuf (or event the driver IO control) directly. Example:
>>
>> http://git.rtems.org/rtems/tree/testsuites/libtests/block16/init.c
>
> This example do not define CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS, so BRDA task could not start.
> I found that if defined CONFIGURE_BDBUF_MAX_READ_AHEAD_BLOCKS, the problem appeared,
> and if not define the macro, there was no problem, but the multi-block command never used, just single block read.
> Single block access has slow speed and efficiency.
Yes, the single block transfers are very inefficient.
Its easy to get the block device transfer request handling wrong since the
interface is a bit complex. You need two loops. You may have a look at
transfer_pio_polled() in
http://git.rtems.org/rtems/tree/c/src/lib/libbsp/powerpc/gen5200/ide/ata.c
>
> PS:
> Sorry for my bad maillist tool, it took some Chinese characters to mails previous.
> I've corrected it and changed my maillist account to the new one.
I didn't notice any problems.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the users
mailing list