nand_ecc_ctrl Struct Reference

#include <nand.h>


Data Fields

nand_ecc_modes_t mode
int steps
int size
int bytes
int total
int prepad
int postpad
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)


Detailed Description

struct nand_ecc_ctrl - Control structure for ecc : ecc mode : number of ecc steps per page : data bytes per ecc step : ecc bytes per step : total number of ecc bytes per page : padding information for syndrome based ecc generators : padding information for syndrome based ecc generators : ECC layout control struct pointer : function to control hardware ecc generator. Must only be provided if an hardware ECC is available : function for ecc calculation or readback from ecc hardware : function for ecc correction, matching to ecc generator (sw/hw) : function to read a raw page without ECC : function to write a raw page without ECC : function to read a page according to the ecc generator requirements : function to write a page according to the ecc generator requirements : function to read chip OOB data : function to write chip OOB data

Definition at line 248 of file nand.h.


Field Documentation

nand_ecc_modes_t nand_ecc_ctrl::mode

Definition at line 249 of file nand.h.

Referenced by crisv32_nand_flash_probe(), and nand_scan_tail().

int nand_ecc_ctrl::steps

Definition at line 250 of file nand.h.

Referenced by nand_read_oob_syndrome(), nand_read_page_hwecc(), nand_read_page_swecc(), nand_read_page_syndrome(), nand_scan_tail(), nand_write_oob_syndrome(), nand_write_page_hwecc(), nand_write_page_swecc(), and nand_write_page_syndrome().

int nand_ecc_ctrl::size

Definition at line 251 of file nand.h.

Referenced by nand_read_oob_syndrome(), nand_read_page_hwecc(), nand_read_page_swecc(), nand_read_page_syndrome(), nand_scan_tail(), nand_write_oob_syndrome(), nand_write_page_hwecc(), nand_write_page_swecc(), and nand_write_page_syndrome().

int nand_ecc_ctrl::bytes

Definition at line 252 of file nand.h.

Referenced by nand_read_oob_syndrome(), nand_read_page_hwecc(), nand_read_page_swecc(), nand_read_page_syndrome(), nand_scan_tail(), nand_write_oob_syndrome(), nand_write_page_hwecc(), nand_write_page_swecc(), and nand_write_page_syndrome().

int nand_ecc_ctrl::total

Definition at line 253 of file nand.h.

Referenced by nand_read_page_hwecc(), nand_read_page_swecc(), nand_write_page_hwecc(), and nand_write_page_swecc().

int nand_ecc_ctrl::prepad

Definition at line 254 of file nand.h.

Referenced by nand_read_oob_syndrome(), nand_read_page_syndrome(), nand_write_oob_syndrome(), and nand_write_page_syndrome().

int nand_ecc_ctrl::postpad

Definition at line 255 of file nand.h.

Referenced by nand_read_oob_syndrome(), nand_read_page_syndrome(), nand_write_oob_syndrome(), and nand_write_page_syndrome().

struct nand_ecclayout* nand_ecc_ctrl::layout

Definition at line 256 of file nand.h.

Referenced by nand_fill_oob(), nand_read_page_hwecc(), nand_read_page_swecc(), nand_scan_tail(), nand_transfer_oob(), nand_write_page_hwecc(), and nand_write_page_swecc().

void(* nand_ecc_ctrl::hwctl)(struct mtd_info *mtd, int mode)

Referenced by nand_read_page_hwecc(), nand_read_page_syndrome(), nand_scan_tail(), nand_write_page_hwecc(), and nand_write_page_syndrome().

int(* nand_ecc_ctrl::calculate)(struct mtd_info *mtd, const uint8_t *dat, uint8_t *ecc_code)

Referenced by nand_read_page_hwecc(), nand_read_page_swecc(), nand_scan_tail(), nand_write_page_hwecc(), nand_write_page_swecc(), and nand_write_page_syndrome().

int(* nand_ecc_ctrl::correct)(struct mtd_info *mtd, uint8_t *dat, uint8_t *read_ecc, uint8_t *calc_ecc)

Referenced by nand_read_page_hwecc(), nand_read_page_swecc(), nand_read_page_syndrome(), and nand_scan_tail().

int(* nand_ecc_ctrl::read_page_raw)(struct mtd_info *mtd, struct nand_chip *chip, uint8_t *buf)

Referenced by nand_do_read_ops(), and nand_scan_tail().

void(* nand_ecc_ctrl::write_page_raw)(struct mtd_info *mtd, struct nand_chip *chip, const uint8_t *buf)

Referenced by nand_scan_tail(), and nand_write_page().

int(* nand_ecc_ctrl::read_page)(struct mtd_info *mtd, struct nand_chip *chip, uint8_t *buf)

Referenced by nand_do_read_ops(), and nand_scan_tail().

void(* nand_ecc_ctrl::write_page)(struct mtd_info *mtd, struct nand_chip *chip, const uint8_t *buf)

Referenced by nand_scan_tail(), and nand_write_page().

int(* nand_ecc_ctrl::read_oob)(struct mtd_info *mtd, struct nand_chip *chip, int page, int sndcmd)

Referenced by nand_do_read_oob(), and nand_scan_tail().

int(* nand_ecc_ctrl::write_oob)(struct mtd_info *mtd, struct nand_chip *chip, int page)

Referenced by nand_do_write_oob(), and nand_scan_tail().


The documentation for this struct was generated from the following file:
Generated on Fri Nov 28 00:08:49 2008 for elphel by  doxygen 1.5.1