• Lionel Debieve's avatar
    Add raw NAND framework · b114abb6
    Lionel Debieve authored
    
    
    The raw NAND framework supports SLC NAND devices.
    
    It introduces a new high level interface (io_mtd) that
    defines operations a driver can register to the NAND framework.
    This interface will fill in the io_mtd device specification:
    	- device_size
            - erase_size
    that could be used by the io_storage interface.
    
    NAND core source file integrates the standard read loop that
    performs NAND device read operations using a skip bad block strategy.
    A platform buffer must be defined in case of unaligned
    data. This buffer must fit to the maximum device page size
    defined by PLATFORM_MTD_MAX_PAGE_SIZE.
    
    The raw_nand.c source file embeds the specific NAND operations
    to read data.
    The read command is a raw page read without any ECC correction.
    This can be overridden by a low level driver.
    No generic support for write or erase command or software
    ECC correction.
    
    NAND ONFI detection is available and can be enabled using
    NAND_ONFI_DETECT=1.
    For non-ONFI NAND management, platform can define required
    information.
    
    Change-Id: Id80e9864456cf47f02b74938cf25d99261da8e82
    Signed-off-by: default avatarLionel Debieve <lionel.debieve@st.com>
    Signed-off-by: default avatarChristophe Kerello <christophe.kerello@st.com>
    b114abb6
raw_nand.h 4.74 KB