Aperture Controls

Cobb Accessport Reverse Engineering

NAND Flash


Test setup

The flash chip is a Micron 2Gb NAND Flash 29F2G08ABAEA. The configuration as detected by my reader is as follows:
		 
NAND ID: 0x2cda9095_0x6000000
Manufacturer: Micron

 *Page data area size 2048 bytes.
 *Page spare area size 64 bytes.
 *Each block has 64 pages
 *The chip has 1 chip-select signals.
 *There are 2048 blocks each chip-select.
 *Total 2048 blocks each chip.
 *Total memory size 256 Mbytes
 *Range 0x0 - 0xfffffff
 *Memory type: SLC NAND
		

I extracted the image from the flash chip using a "ProMan HS 057A" Chinese flash reader, with the "full info" option. After extraction I ran the image through imx-nand-convert with the -c option to error correct the image and then remove the "spare bytes" area that the physical flash uses.

After extracting and scanning the flash image, I found a NXP Flash Configuration Block header that contained this data:
m_u32Checksum = FFFFFB37
_u32FingerPrint = 46434220
_u32Version = 0001
_NANDTiming = 06193C50
_u32PageDataSize = 0800
_u32TotalPageSize = 0840
_u32SectorsPerBlock = 0040
_u32NumberOfNANDs = 0000
_u32TotalInternalDie = 0000
_u32CellType = 0000
_u32EccBlockNEccType = BCH8
_u32EccBlock0Size = 0200
_u32EccBlockNSize = 0200
_u32EccBlock0EccType = BCH8
_u32MetadataBytes = 000A
_u32NumEccBlocksPerPage = 0003
_u32EccBlockNEccLevelSDK = 0000
_u32EccBlock0SizeSDK = 0000
_u32EccBlockNSizeSDK = 0000
_u32EccBlock0EccLevelSDK = 0000
_u32NumEccBlocksPerPageSDK = 0000
_u32MetadataBytesSDK = 0000
_EraseThreshold = 0000
_BootPatch = 0000
_PatchSectors = 0000
_Firmware1_StartingSector = 0200
_Firmware2_StartingSector = 1500
_SectorsInFirmware1 = 07C2
_SectorsInFirmware2 = 07C2
_DBBTSearchAreaStartAddress = 0100
_BadBlockMarkerByte = 07CF
_BadBlockMarkerStartBit = 0000
_BBMarkerPhysicalOffset = 0800
Also in the image was what looks like a SbFileFormat header for the boot firmware based on the "STMP" magic I found. I didn't look much further into this.

The rest of the flash is occupied by an UBI-based volume manager with four filesystems contained within it.

Prev: Hardware Next: Filesystems