| /rk3399_rockchip-uboot/fs/yaffs2/ |
| H A D | yaffs_mtdif.c | 28 static inline void translate_spare2oob(const struct yaffs_spare *spare, u8 *oob) in translate_spare2oob() argument 30 oob[0] = spare->tb0; in translate_spare2oob() 31 oob[1] = spare->tb1; in translate_spare2oob() 32 oob[2] = spare->tb2; in translate_spare2oob() 33 oob[3] = spare->tb3; in translate_spare2oob() 34 oob[4] = spare->tb4; in translate_spare2oob() 35 oob[5] = spare->tb5 & 0x3f; in translate_spare2oob() 36 oob[5] |= spare->block_status == 'Y' ? 0 : 0x80; in translate_spare2oob() 37 oob[5] |= spare->page_status == 0 ? 0 : 0x40; in translate_spare2oob() 38 oob[6] = spare->tb6; in translate_spare2oob() [all …]
|
| /rk3399_rockchip-uboot/drivers/mtd/nand/raw/ |
| H A D | lpc32xx_nand_mlc.c | 239 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_read_page_hwecc() local 264 memcpy(&oob->free[i], lpc32xx_nand_mlc_registers->buff, 6); in lpc32xx_read_page_hwecc() 266 memcpy(&oob->ecc[i], lpc32xx_nand_mlc_registers->buff, 10); in lpc32xx_read_page_hwecc() 287 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_read_page_raw() local 306 memcpy(&oob->free[i], lpc32xx_nand_mlc_registers->data, 6); in lpc32xx_read_page_raw() 308 memcpy(&oob->ecc[i], lpc32xx_nand_mlc_registers->data, 10); in lpc32xx_read_page_raw() 335 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_read_oob() local 364 memcpy(&oob->free[i], lpc32xx_nand_mlc_registers->buff, 6); in lpc32xx_read_oob() 366 memcpy(&oob->ecc[i], lpc32xx_nand_mlc_registers->buff, 10); in lpc32xx_read_oob() 389 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_write_page_hwecc() local [all …]
|
| H A D | mxc_nand.c | 446 uint8_t *oob = chip->oob_poi; local 460 chip->read_buf(mtd, oob, chip->ecc.prepad); 461 oob += chip->ecc.prepad; 464 chip->read_buf(mtd, oob, eccbytes); 465 oob += eccbytes; 468 chip->read_buf(mtd, oob, chip->ecc.postpad); 469 oob += chip->ecc.postpad; 473 size = mtd->oobsize - (oob - chip->oob_poi); 475 chip->read_buf(mtd, oob, size); 493 uint8_t *oob = chip->oob_poi; local [all …]
|
| H A D | rockchip_nand_v9.c | 284 static void rockchip_nand_read_extra_oob(struct mtd_info *mtd, u8 *oob) in rockchip_nand_read_extra_oob() argument 296 rockchip_nand_read_buf(mtd, oob + offset, len); in rockchip_nand_read_extra_oob() 299 static void rockchip_nand_write_extra_oob(struct mtd_info *mtd, u8 *oob) in rockchip_nand_write_extra_oob() argument 311 rockchip_nand_write_buf(mtd, oob + offset, len); in rockchip_nand_write_extra_oob() 336 u8 *oob = chip->oob_poi + oob_off; in rockchip_nand_hw_syndrome_pio_read_page() local 361 memcpy_fromio(oob, rknand->regs + NANDC_REG_V9_SPARE1, 4); in rockchip_nand_hw_syndrome_pio_read_page() 363 memcpy_fromio(oob, rknand->regs + NANDC_REG_V9_SPARE0, 4); in rockchip_nand_hw_syndrome_pio_read_page() 376 const u8 *oob, in rockchip_nand_make_bootrom_compat() argument 384 return oob[3] | (oob[2] << 8) | (oob[1] << 16) | (oob[0] << 24); in rockchip_nand_make_bootrom_compat() 403 const u8 *oob = chip->oob_poi + oob_off; in rockchip_nand_hw_syndrome_pio_write_page() local [all …]
|
| H A D | rockchip_nand.c | 283 static void rockchip_nand_read_extra_oob(struct mtd_info *mtd, u8 *oob) in rockchip_nand_read_extra_oob() argument 295 rockchip_nand_read_buf(mtd, oob + offset, len); in rockchip_nand_read_extra_oob() 298 static void rockchip_nand_write_extra_oob(struct mtd_info *mtd, u8 *oob) in rockchip_nand_write_extra_oob() argument 310 rockchip_nand_write_buf(mtd, oob + offset, len); in rockchip_nand_write_extra_oob() 335 u8 *oob = chip->oob_poi + oob_off; in rockchip_nand_hw_syndrome_pio_read_page() local 360 memcpy_fromio(oob, rknand->regs + NANDC_REG_V6_SPARE1, 4); in rockchip_nand_hw_syndrome_pio_read_page() 362 memcpy_fromio(oob, rknand->regs + NANDC_REG_V6_SPARE0, 4); in rockchip_nand_hw_syndrome_pio_read_page() 375 const u8 *oob, in rockchip_nand_make_bootrom_compat() argument 383 return oob[3] | (oob[2] << 8) | (oob[1] << 16) | (oob[0] << 24); in rockchip_nand_make_bootrom_compat() 402 const u8 *oob = chip->oob_poi + oob_off; in rockchip_nand_hw_syndrome_pio_write_page() local [all …]
|
| H A D | nand_base.c | 1798 uint8_t *oob = chip->oob_poi; in nand_read_page_raw_syndrome() local 1809 ret = nand_read_data_op(chip, oob, chip->ecc.prepad, in nand_read_page_raw_syndrome() 1814 oob += chip->ecc.prepad; in nand_read_page_raw_syndrome() 1817 ret = nand_read_data_op(chip, oob, eccbytes, false); in nand_read_page_raw_syndrome() 1821 oob += eccbytes; in nand_read_page_raw_syndrome() 1824 ret = nand_read_data_op(chip, oob, chip->ecc.postpad, in nand_read_page_raw_syndrome() 1829 oob += chip->ecc.postpad; in nand_read_page_raw_syndrome() 1833 size = mtd->oobsize - (oob - chip->oob_poi); in nand_read_page_raw_syndrome() 1835 ret = nand_read_data_op(chip, oob, size, false); in nand_read_page_raw_syndrome() 2155 uint8_t *oob = chip->oob_poi; in nand_read_page_syndrome() local [all …]
|
| H A D | sunxi_nand.c | 808 u8 *oob, int oob_off, in sunxi_nfc_hw_ecc_read_chunk() argument 851 memset(oob, pattern, ecc->bytes + 4); in sunxi_nfc_hw_ecc_read_chunk() 861 sunxi_nfc_randomizer_read_buf(mtd, oob, ecc->bytes + 4, true, page); in sunxi_nfc_hw_ecc_read_chunk() 872 nand->read_buf(mtd, oob, ecc->bytes + 4); in sunxi_nfc_hw_ecc_read_chunk() 876 oob, ecc->bytes + 4, in sunxi_nfc_hw_ecc_read_chunk() 887 oob); in sunxi_nfc_hw_ecc_read_chunk() 891 sunxi_nfc_randomize_bbm(mtd, page, oob); in sunxi_nfc_hw_ecc_read_chunk() 905 u8 *oob, int *cur_off, in sunxi_nfc_hw_ecc_read_extra_oob() argument 921 sunxi_nfc_read_buf(mtd, oob + offset, len); in sunxi_nfc_hw_ecc_read_extra_oob() 923 sunxi_nfc_randomizer_read_buf(mtd, oob + offset, len, in sunxi_nfc_hw_ecc_read_extra_oob() [all …]
|
| H A D | fsl_elbc_nand.c | 74 unsigned int oob; /* Non zero if operating on OOB data */ member 155 static void set_addr(struct mtd_info *mtd, int column, int page_addr, int oob) in set_addr() argument 169 (oob ? FPAR_LP_MS : 0) | column); in set_addr() 175 (oob ? FPAR_SP_MS : 0) | column); in set_addr() 183 if (oob) in set_addr() 247 static void fsl_elbc_do_read(struct nand_chip *chip, int oob) in fsl_elbc_do_read() argument 270 if (oob) in fsl_elbc_do_read() 384 ctrl->oob = 0; in fsl_elbc_cmdfunc() 412 ctrl->oob = 1; in fsl_elbc_cmdfunc() 423 set_addr(mtd, column, page_addr, ctrl->oob); in fsl_elbc_cmdfunc() [all …]
|
| H A D | am335x_spl_bch.c | 162 uint8_t *oob = &oob_data[0] + nand_ecc_pos[0]; in nand_read_page() local 175 this->read_buf(mtd, oob, eccbytes); in nand_read_page() 180 oob += eccbytes; in nand_read_page()
|
| H A D | denali.c | 731 uint8_t *oob = chip->oob_poi; in denali_read_page_raw() local 734 memcpy(oob, tmp_buf + writesize, oob_skip); in denali_read_page_raw() 735 oob += oob_skip; in denali_read_page_raw() 747 memcpy(oob, tmp_buf + pos, len); in denali_read_page_raw() 748 oob += len; in denali_read_page_raw() 751 memcpy(oob, tmp_buf + writesize + oob_skip, in denali_read_page_raw() 753 oob += len; in denali_read_page_raw() 758 len = oobsize - (oob - chip->oob_poi); in denali_read_page_raw() 759 memcpy(oob, tmp_buf + size - len, len); in denali_read_page_raw() 865 const uint8_t *oob = chip->oob_poi; in denali_write_page_raw() local [all …]
|
| H A D | fsl_ifc_nand.c | 56 unsigned int oob; /* Non zero if operating on OOB data */ member 222 static void set_addr(struct mtd_info *mtd, int column, int page_addr, int oob) in set_addr() argument 234 ifc_out32(&ifc->ifc_nand.col0, (oob ? IFC_NAND_COL_MS : 0) | column); in set_addr() 242 if (oob) in set_addr() 331 int oob, in fsl_ifc_do_read() argument 358 if (oob) in fsl_ifc_do_read() 462 ctrl->oob = 0; in fsl_ifc_cmdfunc() 514 ctrl->oob = 1; in fsl_ifc_cmdfunc() 517 set_addr(mtd, column, page_addr, ctrl->oob); in fsl_ifc_cmdfunc() 523 if (ctrl->oob) in fsl_ifc_cmdfunc()
|
| H A D | fsmc_nand.c | 348 uint8_t oob[13] __attribute__ ((aligned (2))); in fsmc_read_page_hwecc() local 375 chip->read_buf(mtd, oob + j, len); in fsmc_read_page_hwecc() 379 memcpy(&ecc_code[i], oob, 13); in fsmc_read_page_hwecc()
|
| H A D | vf610_nfc.c | 554 uint8_t *oob, int page) in vf610_nfc_correct_data() argument 571 vf610_nfc_read_buf(mtd, oob, mtd->oobsize); in vf610_nfc_correct_data() 578 flips += count_written_bits(oob, mtd->oobsize, flips_threshold); in vf610_nfc_correct_data() 585 memset(oob, 0xff, mtd->oobsize); in vf610_nfc_correct_data()
|
| H A D | atmel_nand.c | 534 uint8_t *oob = chip->oob_poi; in atmel_nand_pmecc_read_page() local 548 chip->read_buf(mtd, oob, mtd->oobsize); in atmel_nand_pmecc_read_page() 564 if (pmecc_correction(mtd, stat, buf, &oob[eccpos[0]]) != 0) in atmel_nand_pmecc_read_page() 1028 uint8_t *oob = chip->oob_poi; in atmel_nand_read_page() local 1048 ecc_pos = oob + eccpos[0]; in atmel_nand_read_page() 1052 stat = chip->ecc.correct(mtd, p, oob, NULL); in atmel_nand_read_page() 1063 chip->read_buf(mtd, oob, mtd->oobsize); in atmel_nand_read_page()
|
| H A D | omap_gpmc.c | 594 uint8_t *oob = chip->oob_poi; in omap_read_page_bch() local 601 oob += chip->ecc.layout->eccpos[0]; in omap_read_page_bch() 604 oob += eccbytes) { in omap_read_page_bch() 612 chip->read_buf(mtd, oob, eccbytes); in omap_read_page_bch()
|
| H A D | nand_bbt.c | 353 uint8_t *buf, uint8_t *oob) in scan_write_bbt() argument 361 ops.oobbuf = oob; in scan_write_bbt()
|
| /rk3399_rockchip-uboot/drivers/mtd/nand/raw/brcmnand/ |
| H A D | brcmnand.c | 1114 static int read_oob_from_regs(struct brcmnand_controller *ctrl, int i, u8 *oob, in read_oob_from_regs() argument 1126 oob[j] = oob_reg_read(ctrl, j); in read_oob_from_regs() 1138 const u8 *oob, int sas, int sector_1k) in write_oob_to_regs() argument 1150 (oob[j + 0] << 24) | in write_oob_to_regs() 1151 (oob[j + 1] << 16) | in write_oob_to_regs() 1152 (oob[j + 2] << 8) | in write_oob_to_regs() 1153 (oob[j + 3] << 0)); in write_oob_to_regs() 1599 u8 *oob, u64 *err_addr) in brcmnand_read_by_pio() argument 1632 if (oob) in brcmnand_read_by_pio() 1633 oob += read_oob_from_regs(ctrl, i, oob, in brcmnand_read_by_pio() [all …]
|
| /rk3399_rockchip-uboot/cmd/ |
| H A D | onenand.c | 62 size_t *retlen, u_char *buf, int oob) in onenand_block_read() argument 73 if (oob) in onenand_block_read() 87 if (oob) in onenand_block_read() 385 int oob = 0; in do_onenand_read() local 396 oob = 1; in do_onenand_read() 404 ret = onenand_block_read(ofs, len, &retlen, (u8 *)addr, oob); in do_onenand_read()
|
| /rk3399_rockchip-uboot/doc/ |
| H A D | README.nand | 48 nand read.oob addr ofs|partition size 75 nand write.oob addr ofs|partition size 87 a packed sequence of "data, oob, data, oob, ..." -- no alignment of 293 "nand erase clean" additionally writes JFFS2-cleanmarkers in the oob.
|
| H A D | README.mxs | 210 -o <size> change oob size (default 64 b)
|
| /rk3399_rockchip-uboot/drivers/mtd/onenand/ |
| H A D | onenand_base.c | 1419 const u_char *oob = ops->oobbuf; in onenand_write_ops_nolock() local 1464 if (oob) { in onenand_write_ops_nolock() 1471 onenand_fill_auto_oob(mtd, oobbuf, oob, oobcolumn, thisooblen); in onenand_write_ops_nolock() 1473 memcpy(oobbuf + oobcolumn, oob, thisooblen); in onenand_write_ops_nolock() 1476 oob += thisooblen; in onenand_write_ops_nolock()
|
| /rk3399_rockchip-uboot/arch/arm/dts/ |
| H A D | tegra124.dtsi | 619 clock-names = "sata", "sata-oob", "cml1", "pll_e"; 623 reset-names = "sata", "sata-oob", "sata-cold";
|
| /rk3399_rockchip-uboot/env/ |
| H A D | Kconfig | 243 "nand env.oob" command can be used to record this offset.
|