This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

OMAP-L138: Bootloader support for non ONFI compliant NAND devices

Part Number: OMAP-L138
Other Parts Discussed in Thread: OMAP-L132,

Hello

I have been using the application note"Using the OMAP-L132/L138 Bootloader" (SPRAB41E), to determine whether a NAND device that I am looking to use is supported. The NAND device is a 2Gb device with 4bit ECC organised as (128M +4M) x 16bit. The device is non ONFI compliant and has a device ID of 0xBA.

According to the app note, if the the OMAP-L138 bootloader finds that the NAND device is not ONFI compliant, it reads the device ID and attempts to use the device parameters from one of its supported devices. In this case, 0xBA is not in the supported list so the bootloader then attempts to obtain parameters from reading the fourth ID byte. The expected contents of the fourth ID byte for the device to be supported include the BUS field to be 0 (i.e. 8 bit data bus).

The NAND device has a fourth ID byte of 0x55 which makes the BUS field bit a 1, as it is a 16bit wide device. This would appear that it is not supported. Is this correct? Is there any workaround where I could use this device? What would the bootloader actually do if it encountered this NAND device?

Kind regards

Neil

  • Hi Neil,

    The team is notified. They will post their feedback directly here.

    BR
    Tsvetolin Shulev
  • Can you please provide the full part number of the NAND. Your interpretation of the NAND boot sequence is correct . Additionally, you can download the Serial flash and boot tools for this device here to look at the NAND driver used in the boot ROM

    THe NAND info table is provided here:

    OMAP-L138_FlashAndBootUtils_2_40\OMAP-L138\Common\src\device_nand.c

    File OMAP-L138_FlashAndBootUtils_2_40\Common\drivers\src\nand.c shows that the driver would return Error in NAND_open and the ROM will exit with the error flag.

    Regards,

    Rahul

  • Hi Rahul

    Thanks for the info.

    I had a look at the code and it seems that the bus width check is different to what the app note describes. In LOCAL_flashGetDetails(), which is called from NAND_open(), the bus width bit (BUS) in the fourth byte of the device's ID bytes is checked against the bus width that is set in the OMAP boot mode (LCD pins). It would appear to only return a FAIL if they don't match. However, the app note seems to imply that the bus width bit (BUS) is only expecting BUS to be set to 8-bit mode for the bootloader to access the NAND. Is this an error in the app note?

    The part I am considering is IS34MW02G164-BLI.
    The datasheet can be viewed at the URL: www.issi.com/.../34-35MW02G084-164.pdf
    I would be very grateful if you could verify if this part is supported by the OMAP bootloader.

    Kind regards
    Neil

  • Neil,

    I can confirm that 16 bit BUSwidth is supported as in if the 6th bit of the fourth ID bit on the NAND is 1, the ROM detects the buswidth to be 16.
    In general though, we are not in a position to provide complete compatibility information for all the NAND parts available in the market especially if they are not ONFI compatible, so we recommend that you evaluate this by either creating a platform with a NAND socket or create a small subset of boards with that NAND and test for compatibility.

    We have in general created the following resources in addition to the bootloader application notes :
    processors.wiki.ti.com/.../Determining_compatibility_between_ROM_Bootloader_(RBL)_and_Raw_NAND_devices
    processors.wiki.ti.com/.../List_of_NANDs_devices_supported_by_TI_RBLs

    All the devices specified contain the same EMIFA IP and are based on the same ROM source code baseline.

    Regards,
    Rahul
  • Hi Rahul

    Thanks for the confirmation and the additional literature.

    We are intending to try the NAND out on a few boards, but I just wanted to check that the NAND device had a chance of being compatible.

    Thanks for your help

    Kind regards

    Neil