Name

struct nand_ecc_ctrl — Control structure for ecc

Synopsis

struct nand_ecc_ctrl {
  nand_ecc_modes_t mode;
  int steps;
  int size;
  int bytes;
  int total;
  int prepad;
  int postpad;
  struct nand_ecclayout * layout;
  void (* hwctl) (struct mtd_info *mtd, int mode);
  int (* calculate) (struct mtd_info *mtd,const uint8_t *dat,uint8_t *ecc_code);
  int (* correct) (struct mtd_info *mtd, uint8_t *dat,uint8_t *read_ecc,uint8_t *calc_ecc);
  int (* read_page_raw) (struct mtd_info *mtd,struct nand_chip *chip,uint8_t *buf);
  void (* write_page_raw) (struct mtd_info *mtd,struct nand_chip *chip,const uint8_t *buf);
  int (* read_page) (struct mtd_info *mtd,struct nand_chip *chip,uint8_t *buf);
  void (* write_page) (struct mtd_info *mtd,struct nand_chip *chip,const uint8_t *buf);
  int (* read_oob) (struct mtd_info *mtd,struct nand_chip *chip,int page,int sndcmd);
  int (* write_oob) (struct mtd_info *mtd,struct nand_chip *chip,int page);
};  

Members

mode

ecc mode

steps

number of ecc steps per page

size

data bytes per ecc step

bytes

ecc bytes per step

total

total number of ecc bytes per page

prepad

padding information for syndrome based ecc generators

postpad

padding information for syndrome based ecc generators

layout

ECC layout control struct pointer

hwctl

function to control hardware ecc generator. Must only be provided if an hardware ECC is available

calculate

function for ecc calculation or readback from ecc hardware

correct

function for ecc correction, matching to ecc generator (sw/hw)

read_page_raw

function to read a raw page without ECC

write_page_raw

function to write a raw page without ECC

read_page

function to read a page according to the ecc generator requirements

write_page

function to write a page according to the ecc generator requirements

read_oob

function to read chip OOB data

write_oob

function to write chip OOB data