FMC外设用于将STM32 MPU与SLC 8位或16位NAND闪存设备接口。
FMC NAND控制器支持:
与静态内存映射设备的接口,包括:
NOR Flash memory
Static or pseudo-static random access memory (SRAM, PSRAM)
NAND Flash memory with 4-bit/8-bit BCH hardware ECC
- 支持8bit,16bit数据宽度
- 可编程纠错能力(ECC)使用BCH8,BCH4或Hamming
- 支持可编程的页面大小为2048、4096和8192字节
- 支持可编程的存储器时序
Domain | Peripheral | Runtime allocation | Comment | |||
---|---|---|---|---|---|---|
Instance | Cortex-A7 secure (OP-TEE) | Cortex-A7 non-secure (Linux) | Cortex-M4 (STM32Cube) | |||
Mass storage | FMC | FMC | ☐ |
&fmc { pinctrl-names = "default", "sleep"; pinctrl-0 = <&fmc_pins_a>; pinctrl-1 = <&fmc_sleep_pins_a>; #address-cells = <1>; #size-cells = <0>; status = "okay"; nand: nand@0 { reg = <0>; nand-on-flash-bbt; #address-cells = <1>; #size-cells = <1>; nand-ecc-strength = <4>; nand-ecc-step-size = <512>; partition@0 { label = "fsbl"; reg = <0x0 0x200000>; }; partition@200000 { label = "ssbl1"; reg = <0x200000 0x400000>; }; partition@40000 { label = "ssbl2"; reg = <0x400000 0x600000>; }; partition@600000 { label = "UBI"; reg = <0x600000 0xf800000>; }; }; };