Share via


SectorInfo (Compact 2013)

3/26/2014

This structure emulates the typical physical layout of the actual extra area of flash. The FAL portion of the NAND flash block driver supplied by Microsoft makes use of 8 bytes of the Sector Extra Info area.

Syntax

typedef struct _SectorInfo {
  DWORD dwReserved1;
  BYTE bOEMReserved;
  BYTE bBadBlock;
  WORD wReserved2;
} SectorInfo, *PSectorInfo;

Members

  • dwReserved1
    Reserved. Used by the FAL to hold the logical to physical sector mapping information.
  • bOEMReserved
    For use by OEM. One of the following (2 bits are recognized by the FAL):

    #define OEM_BLOCK_RESERVED 0x01
    #define OEM_BLOCK_READONLY 0x02
    

    Any sectors that the OEM does not want the FAL to touch should have both of these bits set. This includes the sectors including the boot loader and any other flash data that sits before the MBR. Note also that because only full blocks can be erased, all sectors within a block should have the same values for these fields.

  • bBadBlock
    Indicates if a block is bad.
  • wReserved2
    Reserved. Used by the FAL to maintain state information about the sector.

Remarks

The SectorInfo data structure was designed to emulate the typical physical layout of the actual extra area of flash.

The following is a typical representation of how the extra area is utilized:

- - - - - - - - - - - - - - - -

|R|R|R|R|O|V|R|R|E|E|E|E|E|E|E|E|

- - - - - - - - - - - - - - - -

The following table describes each element.

Element

Description

R

Reserved bytes used by the FAL

O

Byte for use by the OEM

V

Byte indicating if the block is valid (a.k.a. bad)

E

Bytes typically used for by the FMD for ECC

Requirements

Header

fmd.h

See Also

Reference

Flash Media Driver Structures
Flash Media Driver Reference