Lines Matching refs:chip

57 	struct nand_chip *chip = mtd_to_nand(mtd);  in nand_davinci_read_buf()  local
58 const u32 *nand = chip->IO_ADDR_R; in nand_davinci_read_buf()
102 struct nand_chip *chip = mtd_to_nand(mtd); in nand_davinci_write_buf() local
103 const u32 *nand = chip->IO_ADDR_W; in nand_davinci_write_buf()
363 static int nand_davinci_write_page(struct mtd_info *mtd, struct nand_chip *chip, in nand_davinci_write_page() argument
374 saved_ecc_layout = chip->ecc.layout; in nand_davinci_write_page()
375 chip->ecc.layout = &nand_keystone_rbl_4bit_layout_oobfirst; in nand_davinci_write_page()
376 mtd->oobavail = chip->ecc.layout->oobavail; in nand_davinci_write_page()
379 chip->cmdfunc(mtd, NAND_CMD_SEQIN, 0x00, page); in nand_davinci_write_page()
382 status = chip->ecc.write_page_raw(mtd, chip, buf, in nand_davinci_write_page()
385 status = chip->ecc.write_page(mtd, chip, buf, in nand_davinci_write_page()
394 chip->cmdfunc(mtd, NAND_CMD_PAGEPROG, -1, -1); in nand_davinci_write_page()
395 status = chip->waitfunc(mtd, chip); in nand_davinci_write_page()
405 chip->ecc.layout = saved_ecc_layout; in nand_davinci_write_page()
422 static int nand_davinci_read_page_hwecc(struct mtd_info *mtd, struct nand_chip *chip, in nand_davinci_read_page_hwecc() argument
425 int i, eccsize = chip->ecc.size; in nand_davinci_read_page_hwecc()
426 int eccbytes = chip->ecc.bytes; in nand_davinci_read_page_hwecc()
427 int eccsteps = chip->ecc.steps; in nand_davinci_read_page_hwecc()
430 uint8_t *ecc_code = chip->buffers->ecccode; in nand_davinci_read_page_hwecc()
431 uint8_t *ecc_calc = chip->buffers->ecccalc; in nand_davinci_read_page_hwecc()
432 struct nand_ecclayout *saved_ecc_layout = chip->ecc.layout; in nand_davinci_read_page_hwecc()
436 chip->ecc.layout = &nand_keystone_rbl_4bit_layout_oobfirst; in nand_davinci_read_page_hwecc()
437 mtd->oobavail = chip->ecc.layout->oobavail; in nand_davinci_read_page_hwecc()
440 eccpos = chip->ecc.layout->eccpos; in nand_davinci_read_page_hwecc()
443 chip->cmdfunc(mtd, NAND_CMD_READOOB, 0, page); in nand_davinci_read_page_hwecc()
444 chip->read_buf(mtd, chip->oob_poi, mtd->oobsize); in nand_davinci_read_page_hwecc()
445 chip->cmdfunc(mtd, NAND_CMD_READ0, 0, page); in nand_davinci_read_page_hwecc()
447 for (i = 0; i < chip->ecc.total; i++) in nand_davinci_read_page_hwecc()
448 ecc_code[i] = chip->oob_poi[eccpos[i]]; in nand_davinci_read_page_hwecc()
453 chip->ecc.hwctl(mtd, NAND_ECC_READ); in nand_davinci_read_page_hwecc()
454 chip->read_buf(mtd, p, eccsize); in nand_davinci_read_page_hwecc()
455 chip->ecc.calculate(mtd, p, &ecc_calc[i]); in nand_davinci_read_page_hwecc()
457 stat = chip->ecc.correct(mtd, p, &ecc_code[i], NULL); in nand_davinci_read_page_hwecc()
466 chip->ecc.layout = saved_ecc_layout; in nand_davinci_read_page_hwecc()
789 int board_nand_init(struct nand_chip *chip) __attribute__((weak));
791 int board_nand_init(struct nand_chip *chip) in board_nand_init() argument
793 davinci_nand_init(chip); in board_nand_init()