elbc_fcm_ctrl 158 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = ctrl->nand; elbc_fcm_ctrl 161 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->page = page_addr; elbc_fcm_ctrl 185 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->addr = priv->vbase + buf_num * 1024; elbc_fcm_ctrl 186 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index = column; elbc_fcm_ctrl 190 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index += priv->page_size ? 2048 : 512; elbc_fcm_ctrl 195 drivers/mtd/nand/raw/fsl_elbc_nand.c buf_num, elbc_fcm_ctrl->addr, priv->vbase, elbc_fcm_ctrl 196 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index, elbc_fcm_ctrl 208 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = ctrl->nand; elbc_fcm_ctrl 213 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->use_mdr) elbc_fcm_ctrl 214 drivers/mtd/nand/raw/fsl_elbc_nand.c out_be32(&lbc->mdr, elbc_fcm_ctrl->mdr); elbc_fcm_ctrl 232 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->status = ctrl->irq_status; elbc_fcm_ctrl 234 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->use_mdr) elbc_fcm_ctrl 235 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->mdr = in_be32(&lbc->mdr); elbc_fcm_ctrl 237 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->use_mdr = 0; elbc_fcm_ctrl 239 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->status != LTESR_CC) { elbc_fcm_ctrl 243 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->status, elbc_fcm_ctrl->mdr); elbc_fcm_ctrl 250 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->max_bitflips = 0; elbc_fcm_ctrl 252 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->read_bytes == mtd->writesize + mtd->oobsize) { elbc_fcm_ctrl 269 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->max_bitflips = 1; elbc_fcm_ctrl 313 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = ctrl->nand; elbc_fcm_ctrl 316 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->use_mdr = 0; elbc_fcm_ctrl 319 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->read_bytes = 0; elbc_fcm_ctrl 321 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index = 0; elbc_fcm_ctrl 338 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->read_bytes = mtd->writesize + mtd->oobsize; elbc_fcm_ctrl 339 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index += column; elbc_fcm_ctrl 351 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index = column; elbc_fcm_ctrl 363 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->read_bytes = mtd->writesize + mtd->oobsize; elbc_fcm_ctrl 382 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->read_bytes = 256; elbc_fcm_ctrl 383 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->use_mdr = 1; elbc_fcm_ctrl 384 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->mdr = column; elbc_fcm_ctrl 414 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->read_bytes = 0; elbc_fcm_ctrl 415 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->use_mdr = 1; elbc_fcm_ctrl 428 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->column = column; elbc_fcm_ctrl 429 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->use_mdr = 1; elbc_fcm_ctrl 434 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->oob = 1; elbc_fcm_ctrl 437 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->oob = 0; elbc_fcm_ctrl 464 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->oob) elbc_fcm_ctrl 473 drivers/mtd/nand/raw/fsl_elbc_nand.c set_addr(mtd, column, page_addr, elbc_fcm_ctrl->oob); elbc_fcm_ctrl 481 drivers/mtd/nand/raw/fsl_elbc_nand.c "writing %d bytes.\n", elbc_fcm_ctrl->index); elbc_fcm_ctrl 487 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->oob || elbc_fcm_ctrl->column != 0 || elbc_fcm_ctrl 488 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index != mtd->writesize + mtd->oobsize) elbc_fcm_ctrl 490 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index - elbc_fcm_ctrl->column); elbc_fcm_ctrl 507 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->read_bytes = 1; elbc_fcm_ctrl 514 drivers/mtd/nand/raw/fsl_elbc_nand.c setbits8(elbc_fcm_ctrl->addr, NAND_STATUS_WP); elbc_fcm_ctrl 546 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = priv->ctrl->nand; elbc_fcm_ctrl 551 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->status = 0; elbc_fcm_ctrl 555 drivers/mtd/nand/raw/fsl_elbc_nand.c if ((unsigned int)len > bufsize - elbc_fcm_ctrl->index) { elbc_fcm_ctrl 559 drivers/mtd/nand/raw/fsl_elbc_nand.c len, bufsize - elbc_fcm_ctrl->index); elbc_fcm_ctrl 560 drivers/mtd/nand/raw/fsl_elbc_nand.c len = bufsize - elbc_fcm_ctrl->index; elbc_fcm_ctrl 563 drivers/mtd/nand/raw/fsl_elbc_nand.c memcpy_toio(&elbc_fcm_ctrl->addr[elbc_fcm_ctrl->index], buf, len); elbc_fcm_ctrl 571 drivers/mtd/nand/raw/fsl_elbc_nand.c in_8(&elbc_fcm_ctrl->addr[elbc_fcm_ctrl->index] + len - 1); elbc_fcm_ctrl 573 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index += len; elbc_fcm_ctrl 583 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = priv->ctrl->nand; elbc_fcm_ctrl 586 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->index < elbc_fcm_ctrl->read_bytes) elbc_fcm_ctrl 587 drivers/mtd/nand/raw/fsl_elbc_nand.c return in_8(&elbc_fcm_ctrl->addr[elbc_fcm_ctrl->index++]); elbc_fcm_ctrl 599 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = priv->ctrl->nand; elbc_fcm_ctrl 606 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->read_bytes - elbc_fcm_ctrl->index); elbc_fcm_ctrl 607 drivers/mtd/nand/raw/fsl_elbc_nand.c memcpy_fromio(buf, &elbc_fcm_ctrl->addr[elbc_fcm_ctrl->index], avail); elbc_fcm_ctrl 608 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->index += avail; elbc_fcm_ctrl 623 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = priv->ctrl->nand; elbc_fcm_ctrl 625 drivers/mtd/nand/raw/fsl_elbc_nand.c if (elbc_fcm_ctrl->status != LTESR_CC) elbc_fcm_ctrl 631 drivers/mtd/nand/raw/fsl_elbc_nand.c return (elbc_fcm_ctrl->mdr & 0xff) | NAND_STATUS_WP; elbc_fcm_ctrl 640 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = ctrl->nand; elbc_fcm_ctrl 649 drivers/mtd/nand/raw/fsl_elbc_nand.c return elbc_fcm_ctrl->max_bitflips; elbc_fcm_ctrl 685 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = ctrl->nand; elbc_fcm_ctrl 717 drivers/mtd/nand/raw/fsl_elbc_nand.c chip->controller = &elbc_fcm_ctrl->controller; elbc_fcm_ctrl 832 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = priv->ctrl->nand; elbc_fcm_ctrl 840 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->chips[priv->bank] = NULL; elbc_fcm_ctrl 852 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl; elbc_fcm_ctrl 893 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl = kzalloc(sizeof(*elbc_fcm_ctrl), GFP_KERNEL); elbc_fcm_ctrl 894 drivers/mtd/nand/raw/fsl_elbc_nand.c if (!elbc_fcm_ctrl) { elbc_fcm_ctrl 899 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->counter++; elbc_fcm_ctrl 901 drivers/mtd/nand/raw/fsl_elbc_nand.c nand_controller_init(&elbc_fcm_ctrl->controller); elbc_fcm_ctrl 902 drivers/mtd/nand/raw/fsl_elbc_nand.c fsl_lbc_ctrl_dev->nand = elbc_fcm_ctrl; elbc_fcm_ctrl 904 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl = fsl_lbc_ctrl_dev->nand; elbc_fcm_ctrl 908 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->chips[bank] = priv; elbc_fcm_ctrl 958 drivers/mtd/nand/raw/fsl_elbc_nand.c struct fsl_elbc_fcm_ctrl *elbc_fcm_ctrl = fsl_lbc_ctrl_dev->nand; elbc_fcm_ctrl 965 drivers/mtd/nand/raw/fsl_elbc_nand.c elbc_fcm_ctrl->counter--; elbc_fcm_ctrl 966 drivers/mtd/nand/raw/fsl_elbc_nand.c if (!elbc_fcm_ctrl->counter) { elbc_fcm_ctrl 968 drivers/mtd/nand/raw/fsl_elbc_nand.c kfree(elbc_fcm_ctrl);