arm-trusted-firmware/drivers/io
Lionel Debieve b114abb609 Add raw NAND framework
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: Lionel Debieve <lionel.debieve@st.com>
Signed-off-by: Christophe Kerello <christophe.kerello@st.com>
2020-01-20 11:32:59 +01:00
..
io_block.c io: change seek offset to signed long long 2020-01-10 21:14:57 +01:00
io_dummy.c Sanitise includes across codebase 2019-01-04 10:43:17 +00:00
io_fip.c io: change seek offset to signed long long 2020-01-10 21:14:57 +01:00
io_memmap.c io: change seek offset to signed long long 2020-01-10 21:14:57 +01:00
io_mtd.c Add raw NAND framework 2020-01-20 11:32:59 +01:00
io_semihosting.c io: change seek offset to signed long long 2020-01-10 21:14:57 +01:00
io_storage.c io: change seek offset to signed long long 2020-01-10 21:14:57 +01:00