mirror of
https://github.com/Rockbox/rockbox.git
synced 2026-10-10 08:03:04 -04:00
nand-rk27xx.c held a complete transcription of the OF's NAND handling - chip detection, geometry derivation, chip select, ECC reads - inside "#if 0", written as documentation back when the FTL was still unknown. It has therefore never been compiled. Enabling it exposed three things nothing had ever caught: - flash_init() looks up ManufactureIDTbl[] and DeviceCode[], but the tables are named manufacture_id_tbl[] and device_code[] - mlc_refresh_row, flash_pend_cmd and flash_read_status_cmd are assigned but were never defined - memcpy() was used without including string.h struct flashspec_t moves to nand-target.h, with flash_spec[] and total_phy_sec declared there, because the FTL's flash primitives need the geometry flash_init() derives. The "_raw" fields describe one physical plane and the others the multi-plane view the FTL addresses; that distinction is load-bearing for the FTL's address mapping, so both are kept. flash_read_page() is renamed flash_read_page_raw(). It reads a whole page unbuffered and without ECC, and the name is needed for the FTL primitive that does the ECC read. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Change-Id: I3eb2d6f41d72b3239a0f9493e49532c242c588fa |
||
|---|---|---|
| .. | ||
| arm | ||
| coldfire | ||
| hosted | ||
| mips | ||