Lines Matching refs:nand

493 static void stm32_fmc2_hwctl(struct nand_device *nand)  in stm32_fmc2_hwctl()  argument
497 if (nand->ecc.max_bit_corr != FMC2_ECC_HAM) { in stm32_fmc2_hwctl()
505 static int stm32_fmc2_read_page(struct nand_device *nand, in stm32_fmc2_read_page() argument
508 unsigned int eccsize = nand->ecc.size; in stm32_fmc2_read_page()
509 unsigned int eccbytes = nand->ecc.bytes; in stm32_fmc2_read_page()
510 unsigned int eccsteps = nand->page_size / eccsize; in stm32_fmc2_read_page()
525 for (s = 0U, i = nand->page_size + FMC2_BBM_LEN, p = (uint8_t *)buffer; in stm32_fmc2_read_page()
528 stm32_fmc2_hwctl(nand); in stm32_fmc2_read_page()
537 if (nand->ecc.max_bit_corr == FMC2_ECC_HAM) { in stm32_fmc2_read_page()
552 if (nand->ecc.max_bit_corr == FMC2_ECC_HAM) { in stm32_fmc2_read_page()
566 static void stm32_fmc2_read_data(struct nand_device *nand, in stm32_fmc2_read_data() argument
572 if (use_bus8 && (nand->buswidth == NAND_BUS_WIDTH_16)) { in stm32_fmc2_read_data()
607 if (use_bus8 && (nand->buswidth == NAND_BUS_WIDTH_16)) { in stm32_fmc2_read_data()
613 static void stm32_fmc2_write_data(struct nand_device *nand, in stm32_fmc2_write_data() argument
619 if (use_bus8 && (nand->buswidth == NAND_BUS_WIDTH_16)) { in stm32_fmc2_write_data()
655 if (use_bus8 && (nand->buswidth == NAND_BUS_WIDTH_16)) { in stm32_fmc2_write_data()
717 stm32_fmc2_read_data(req->nand, req->addr, req->length, in stm32_fmc2_exec()
723 stm32_fmc2_write_data(req->nand, req->addr, req->length, in stm32_fmc2_exec()
739 static void stm32_fmc2_setup(struct nand_device *nand) in stm32_fmc2_setup() argument
745 if (nand->buswidth == NAND_BUS_WIDTH_16) { in stm32_fmc2_setup()
749 if (nand->ecc.mode == NAND_ECC_HW) { in stm32_fmc2_setup()
750 nand->mtd_read_page = stm32_fmc2_read_page; in stm32_fmc2_setup()
758 switch (nand->ecc.max_bit_corr) { in stm32_fmc2_setup()
760 nand->ecc.bytes = 3; in stm32_fmc2_setup()
765 nand->ecc.bytes = 13; in stm32_fmc2_setup()
770 nand->ecc.bytes = 7; in stm32_fmc2_setup()
774 if ((nand->buswidth & NAND_BUS_WIDTH_16) != 0) { in stm32_fmc2_setup()
775 nand->ecc.bytes++; in stm32_fmc2_setup()