STRUCT NAND_ECC_CTRL(9) | Structures | STRUCT NAND_ECC_CTRL(9) |
NAME¶
struct_nand_ecc_ctrl - Control structure for ECCSYNOPSIS¶
struct nand_ecc_ctrl { nand_ecc_modes_t mode; enum nand_ecc_algo algo; int steps; int size; int bytes; int total; int strength; int prepad; int postpad; unsigned int options; void * priv; 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, int oob_required, int page); int (* write_page_raw) (struct mtd_info *mtd, struct nand_chip *chip,const uint8_t *buf, int oob_required, int page); int (* read_page) (struct mtd_info *mtd, struct nand_chip *chip,uint8_t *buf, int oob_required, int page); int (* read_subpage) (struct mtd_info *mtd, struct nand_chip *chip,uint32_t offs, uint32_t len, uint8_t *buf, int page); int (* write_subpage) (struct mtd_info *mtd, struct nand_chip *chip,uint32_t offset, uint32_t data_len,const uint8_t *data_buf, int oob_required, int page); int (* write_page) (struct mtd_info *mtd, struct nand_chip *chip,const uint8_t *buf, int oob_required, int page); int (* write_oob_raw) (struct mtd_info *mtd, struct nand_chip *chip,int page); int (* read_oob_raw) (struct mtd_info *mtd, struct nand_chip *chip,int page); int (* read_oob) (struct mtd_info *mtd, struct nand_chip *chip, int page); int (* write_oob) (struct mtd_info *mtd, struct nand_chip *chip,int page); };
MEMBERS¶
nand_ecc_modes_t modeenum nand_ecc_algo algo
int steps
int size
int bytes
int total
int strength
int prepad
int postpad
unsigned int options
void * priv
void (*)(struct mtd_info *mtd, int mode) hwctl
int (*)(struct mtd_info *mtd, const uint8_t *dat,uint8_t *ecc_code) calculate
int (*)(struct mtd_info *mtd, uint8_t *dat, uint8_t *read_ecc,uint8_t *calc_ecc) correct
int (*)(struct mtd_info *mtd, struct nand_chip *chip,uint8_t *buf, int oob_required, int page) read_page_raw
int (*)(struct mtd_info *mtd, struct nand_chip *chip,const uint8_t *buf, int oob_required, int page) write_page_raw
int (*)(struct mtd_info *mtd, struct nand_chip *chip,uint8_t *buf, int oob_required, int page) read_page
int (*)(struct mtd_info *mtd, struct nand_chip *chip,uint32_t offs, uint32_t len, uint8_t *buf, int page) read_subpage
int (*)(struct mtd_info *mtd, struct nand_chip *chip,uint32_t offset, uint32_t data_len,const uint8_t *data_buf, int oob_required, int page) write_subpage
int (*)(struct mtd_info *mtd, struct nand_chip *chip,const uint8_t *buf, int oob_required, int page) write_page
int (*)(struct mtd_info *mtd, struct nand_chip *chip,int page) write_oob_raw
int (*)(struct mtd_info *mtd, struct nand_chip *chip,int page) read_oob_raw
int (*)(struct mtd_info *mtd, struct nand_chip *chip, int page) read_oob
int (*)(struct mtd_info *mtd, struct nand_chip *chip,int page) write_oob
AUTHOR¶
Thomas Gleixner <tglx@linutronix.de>COPYRIGHT¶
September 2017 | Kernel Hackers Manual 4.12 |