[U-Boot-Users] Strange behavior in UPM

Alemao xcarandiru at gmail.com
Tue Jul 29 15:22:15 CEST 2008


Im using MPC8360E and NAND512W32BN6E, and they are connected like in
mpc8360e-rdk (same pins).

About the waveform, i did the tests considering "reading the electronic
signature" from the nand flash. I put the code below in a loop
(nand_base.c):

---
        /* Select the device */
        this->select_chip(mtd, 0);

        /* Send the command for reading device ID */
        this->cmdfunc(mtd, NAND_CMD_READID, 0x00, -1);

        /* Read manufacturer and device IDs */
        nand_maf_id = this->read_byte(mtd);
        nand_dev_id = this->read_byte(mtd);
---

>From nand datasheet, figure 28, when CL goes from LOW to HIGH, #W goes
from HIGH to LOW, and in I/O the value for reading the electronic
signature is passed.

But here with my board, CL is already in HIGH and then goes LOW.

As im using u-boot-1.1.4, i tried import the code from u-boot-1.3.3 and
u-boot-1.3.4-rc1. Both i got the same result.

So, as my board is _based_ in mpc8360e-rdk, i was wondering if
other configuration can affect the UPM.

Looking at the this->cmdfunc(...) (fun_cmdfunc at fsl_upm.c) it has some
calls to fsl_upm_start_pattern, fsl_upm_run_pattern... and this
functions activates the UPM. So it seems to be simple:

        command(READID)

        upm_start_pattern()
        upm_run_pattern(READID)
        upm_end_pattern()

        read_byte()

Im really curious to know what is causing the CL inversion.

Right now im trying to understand the UPM array. But its not so simple.

I have my doubts if my problem is the UPM array, since its working on
mpc8360e-rdk and the same array is in App Note from Freescale.

Cheers,

--
Alemao


On Fri, Jul 25, 2008 at 2:33 PM, Anton Vorontsov
<avorontsov at ru.mvista.com> wrote:
> On Fri, Jul 25, 2008 at 01:50:41PM -0300, Alemao wrote:
>> Hi all,
>>
>> I have a board based on the MPC8360E-RDK, and im trying to
>> make NAND at local bus works with UPM. I put the scope to
>> see what was going wrong and I got this:
>>
>>
>>                      ___
>> - the waveform in LGPL1/3 (nand CLE/ALE) should be  ___|     |___
>>                   ___    ___
>>   but was        |__|
>
> The ascii art attempt failed. ;-)
>
> [...]
>> One detail, im using u-boot-1.1.4 and i got the codes for UPM and NAND
>> from u-boot-1.3.4-rc1.
>
> Since the boards are pretty the same, I guess you can just compile
> the u-boot-1.3.3 (please try release instead of -rc, to be sure),
> and see if NAND will work. Maybe it will need really small code
> modifications for your board though.
>
> Otherwise it is hard to say where is problem is (maybe the problem in
> the 1.1.4 nand core code, not in UPM setup?).
>
> Also, you didn't mention what kind of chip the board is using.
>
> Thanks,
>
> --
> Anton Vorontsov
> email: cbouatmailru at gmail.com
> irc://irc.freenode.net/bd2
>




More information about the U-Boot mailing list