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.

OMAPL138 nand ecc err

Other Parts Discussed in Thread: OMAPL138, OMAP-L138

HI, 

    When we used OMAPL138 to design the board and ported the LINUX system, something went wrong

CPU: omapl138

OS: LINUX3.3(KERNEL)

FS: UBIFS

Hardware design reference board: OMAPL138 LCDK

FUNCTION: NAND FLASH HW ECC

My NAND FLASH CHIP: MT29F8G16ADADAH4. and LCDK use chip is MT29F4G16ABADAH4

problem phenomenon:  When boot the kernel, UART cycle print :  UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read 64 bytes, and boot kernel failed.

If the problem is not clearly described, please tell me.

  • Hi,

    Can you post the full bootlog?

    Best Regards,
    Yordan

  • Hi,

    Kernel 3.3 is too old and not supported. Could you move to the latest ProcSDK 6.0 (Kernel 4.19)?

    Rex

  • Hi,

    The Linux Processor SDK can be downloaded from

    http://software-dl.ti.com/processor-sdk-linux/esd/OMAPL138/latest/index_FDS.html

    After you migrate to ProcSDK 6.0, please give it a try by following the instruction described in 3.1.1.5.3 NAND boot for OMAP-L138,

    http://software-dl.ti.com/processor-sdk-linux/esd/docs/latest/linux/Foundational_Components_U-Boot.html#nand

    Rex

  • NAND device: Manufacturer ID: 0x2c, Chip ID: 0xc3 (Micron NAND 1GiB 3,3V 16-bit)
    ---------------------chip->ecc.size = 512
    ---------------------mtd->writesize = 2048
    ---------------------mtd->subpage_sft = 2
    ---------------------chip->subpagesize = 512
    Bad block table found at page 524224, version 0x01
    Bad block table found at page 524160, version 0x01
    Creating 5 MTD partitions on "davinci_nand.1":
    0x000000000000-0x000000020000 : "u-boot env"
    0x000000020000-0x0000000a0000 : "u-boot"
    0x0000000a0000-0x0000003a0000 : "kernel"
    0x0000003a0000-0x0000103a0000 : "filesystem"
    0x0000103a0000-0x000040000000 : "data"
    davinci_nand davinci_nand.1: controller rev. 2.5
    UBI: attaching mtd3 to ubi0
    UBI: physical eraseblock size:   131072 bytes (128 KiB)
    UBI: logical eraseblock size:    126976 bytes
    UBI: smallest flash I/O unit:    2048
    UBI: sub-page size:              512
    UBI: VID header offset:          2048 (aligned 2048)
    UBI: data offset:                4096
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 0:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 1:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 2:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 3:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 4:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 5:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 7:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 8:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 9:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 10:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 512 bytes from PEB 10:2048, read 512 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 11:0, read 64 bytes
    ata1: SATA link down (SStatus 0 SControl 300)
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 12:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 13:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 512 bytes from PEB 13:2048, read 512 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 14:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 512 bytes from PEB 14:2048, read 512 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 15:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 512 bytes from PEB 15:2048, read 512 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 16:0, read 64 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 512 bytes from PEB 16:2048, read 512 bytes
    UBI error: ubi_io_read: error -74 (ECC error) while reading 64 bytes from PEB 17:0, read 64 bytes

  • HI,

       Thanks for your help.  I will try ProcSDK 6.0 (Kernel 4.19).

        and I wonder if kernel 3.3 has an NAND ECC patch?  I see kernel nand init code : /* 4 bit mode is not supported with 16 bit NAND */

  • Hi,

    We haven't heard back from you on trying ProcSDK 6.0. Is the issue resolved with 6.0 release?

    If it is resolved, please click "Resolved". For new issues, please submit a new thread. Thanks!

    Rex