Project

General

Profile

Linux Can't Detect Module NAND on Custom Carrier

Added by Michael Karasoff over 11 years ago

Hello,

We are having a odd problem with a custom carrier, and wondering if anyone has come across a similar situation.

We have an AM3359/256MB NAND module that boots entirely from from NAND, with SPL, Bootloader, and UBI rootfs all located on the module's NAND. This module boots fine on the Critical Link dev kit. However, on our custom carrier, the NAND on the module does not appear.

During the Linux Kernel boot, this is what I see when boot on our Custom carrier:
[ 0.791610] omap2-nand driver initializing
[ 0.795974] No NAND device found.
[ 0.799450] No NAND device found.

This is what I see during Linux boot with the same module on the Critical Link Dev Kit carrier:
[ 0.807197] omap2-nand driver initializing
[ 0.811857] ONFI flash detected
[ 0.815259] ONFI param page 0 valid
[ 0.818903] NAND device: Manufacturer ID: 0x2c, Chip ID: 0xda (Micron MT29F2G08ABAEAWP)

We do not have the GPMC connected on our custom carrier, so the entire flash bus is dedicated to the AM3359. On our carrier, the NAND appears to work fine in the bootloader stage. We can partition and program the NAND without issue, and the Kernel loads and runs until it attempts to mount the rootfs.

Is there any other connections on the module that may impact how NAND operated on the module? Does anyone have any tips on debugging this?

Thanks,
Michael


Replies (4)

RE: Linux Can't Detect Module NAND on Custom Carrier - Added by Tim Iskander over 11 years ago

Mike,
Check the pinmux settings and connections for the rest of the GPMC signals. I would think if there was an electrical issue with using your baseboard that yo would see the issue in u-boot as well.
Does your linux kernel change the pin-muxing for any of the GPMC related pins?
  • GPMC_WAIT0
  • GPMC_OEN_RE_N
  • GPMC_CS0_N
  • GPMC_BEN0_CLE
  • GPME_ADVN_ALE
  • GPME_WE_N
  • GPMC_WP_N

cheers
/Tim

RE: Linux Can't Detect Module NAND on Custom Carrier - Added by Michael Karasoff over 11 years ago

Tim,

Thanks. I've checked the pinmux settings and could find nothing that struck me as incorrect. We are using the Crticial Link's Kernel and Bootloader from the git repo. Is it possible those pinmux settings are wrong?

What we are using the exact same module without modifying the flash image on both our custom carrier and the dev kit. That is, the module will boot to Linux successfully from NAND in the dev kit on its own with no SD or other memory inserted. I will pop it out of the dev kit and into our carrier and attempt to boot it, without modifying the NAND, on or custom carrier. Up until the point where Linux cannot detect the NAND, all boot messages are the same between the custom carrier Linux boot and the dev kit Linux boot.

Because the same NAND image boots fine on the dev kit, and all messages appear the same, I do suspect some hardware issue. We do not have the GPMC bus connected on our carrier, so I would think that GPMC bus contention is not an issue. Because the bootloader behaves well, it makes things a bit harder to track down. Are there any differences between the bootloader and Linux in regards to the NAND?

Also, I'm wondering if there are some other pins on the carrier that could impact how Linux boots and detects NAND? Is there a way we can probe (with a scope or multi-meter) the health of our module in the carrier?

Thanks,
Michael

RE: Linux Can't Detect Module NAND on Custom Carrier - Added by Michael Karasoff over 11 years ago

We got to the bottom of this. We had some pullups on some of the higher order SYSCONFIG bits, setting boot clock to 26MHz. Took those off and it boots fine.

RE: Linux Can't Detect Module NAND on Custom Carrier - Added by Tim Iskander over 11 years ago

Thats great news... I'll tuck that bit of info away for later!
cheers
/Tim

    (1-4/4)
    Go to top
    Add picture from clipboard (Maximum size: 1 GB)