[U-Boot] [PATCH] mmc: it's safe to ignore mmc_send_if_cond() return value

Ilya Yanok yanok at emcraft.com
Thu May 14 23:08:16 CEST 2009


Hi Alfred,

my English is not perfect really... but I'm actually having hard times
trying to understand yours... So I give you my excuses in advance for
possible misunderstandings...

alfred steele wrote:
> Looks like accidently somehow pressed  the send button. Apologize!
>
> Thanks for the much awaited reply.
>
>   
>> I've only tried my patch on i.MX27 board. I mentioned that it may work
>> on MX3's too cause the kernel driver used as a source works on both MX2
>> and MX3. You need to do some changes for my driver to work on MX3. Check
>> the pins configuration and if you have MCI clock signal enabled.
>>     
> As a quickstart, I am actually trying to look at the  mxcmci_probe()
> for the init stuff. I hope thats the correct approach for finding the
> initialization stuff.For the GPIOs  to set the signals
> right(data/clk/cmd) , i need to initialize them.
> The linux mxc_request_iomux()  api seems to be a cumbersome although
> porting it would need removing the IO_ADDRESS and the spinlock stuff.
>   

I believe it's enough to use mx31_gpio_mux() here. You just need to
figure out correct arguments. But if you'll port complete iomuxing API
from Linux and post it here I think nobody will be unhappy ;)

> What approach did you have for porting the iomux.c  linux code.As for
> the clock_enable part and attaining the prescaler and the dividers
> foer clock generation, how did you do it.  I can only see a linux api
> called clock_enable in the probe() routine for the same.
>   

We don't have clocks API in U-Boot. You need to enable the clock by
setting appropriate bit in the clocks control register manually.

> However, i did not see anything similar in your patch. Is it in the
> generic arm code location in uboot(arm/mx27/)?
>   

No, it's in board-specific part.

> Another confusion is on the spba_take_ownership()
> spba_take_ownership(SPBA_SDHC1, SPBA_MASTER_A | SPBA_MASTER_C);
> What does spba (shared peripheral bus access)do and do i have to play
> with it for the SDHC. From the manual it doesn't look like so, but is
> beiong used in the linux  board init code. I hope mx27 should be
> similar.
>   

Hmm... I didn't touch any SPBA setting on mx27... But it may be needed
on mx31... Look at the spba_take_ownership() code and if it does
somethings with registers try setting registers to the same values from
your board code.

>> you should use another function to get the clock rate on MX31. Sorry, I
>> can't debug the driver on mx31 now, you should do it yourself.
>>     
> Apologize if i had meant  that in my email, i never wanted  you
> test it on the mx31 board .  I just need some pointers to accelerate
> the development.
>   

That's all I can tell you: check pins configuration, check if the clocks
are enabled and if mx31 has more than one MMC controller check that you
are trying to talk to the one with card connector (or just try other
choices).

Regards, Ilya.



More information about the U-Boot mailing list