Lines Matching full:oob
1307 "error: ECC too large for OOB (ECC bytes %d, spare sector %d)\n", in brcmstb_choose_ecc_layout()
1359 /* Helper functions for reading and writing OOB registers */
1398 * read_oob_from_regs - read data from OOB registers
1401 * @oob: buffer to read to
1402 * @sas: spare area sector size (i.e., OOB size per FLASH_CACHE)
1405 static int read_oob_from_regs(struct brcmnand_controller *ctrl, int i, u8 *oob, in read_oob_from_regs() argument
1411 /* Adjust OOB values for 1K sector size */ in read_oob_from_regs()
1417 oob[j] = oob_reg_read(ctrl, j); in read_oob_from_regs()
1422 * write_oob_to_regs - write data to OOB registers
1424 * @oob: buffer to write from
1425 * @sas: spare area sector size (i.e., OOB size per FLASH_CACHE)
1429 const u8 *oob, int sas, int sector_1k) in write_oob_to_regs() argument
1434 /* Adjust OOB values for 1K sector size */ in write_oob_to_regs()
1441 (oob[j + 0] << 24) | in write_oob_to_regs()
1442 (oob[j + 1] << 16) | in write_oob_to_regs()
1443 (oob[j + 2] << 8) | in write_oob_to_regs()
1444 (oob[j + 3] << 0)); in write_oob_to_regs()
2037 u8 *oob, u64 *err_addr) in brcmnand_read_by_pio() argument
2060 if (oob) in brcmnand_read_by_pio()
2061 oob += read_oob_from_regs(ctrl, i, oob, in brcmnand_read_by_pio()
2136 u64 addr, unsigned int trans, u32 *buf, u8 *oob) in brcmnand_read() argument
2150 if (ctrl->dma_trans && !oob && flash_dma_buf_ok(buf)) { in brcmnand_read()
2166 if (oob) in brcmnand_read()
2167 memset(oob, 0x99, mtd->oobsize); in brcmnand_read()
2170 oob, &err_addr); in brcmnand_read()
2215 oob, &err_addr); in brcmnand_read()
2232 u8 *oob = oob_required ? (u8 *)chip->oob_poi : NULL; in brcmnand_read_page() local
2237 mtd->writesize >> FC_SHIFT, (u32 *)buf, oob); in brcmnand_read_page()
2245 u8 *oob = oob_required ? (u8 *)chip->oob_poi : NULL; in brcmnand_read_page_raw() local
2252 mtd->writesize >> FC_SHIFT, (u32 *)buf, oob); in brcmnand_read_page_raw()
2280 u64 addr, const u32 *buf, u8 *oob) in brcmnand_write() argument
2299 if (use_dma(ctrl) && !oob && flash_dma_buf_ok(buf)) { in brcmnand_write()
2319 } else if (oob) { in brcmnand_write()
2324 if (oob) { in brcmnand_write()
2325 oob += write_oob_to_regs(ctrl, i, oob, in brcmnand_write()
2351 void *oob = oob_required ? chip->oob_poi : NULL; in brcmnand_write_page() local
2354 brcmnand_write(mtd, chip, host->last_addr, (const u32 *)buf, oob); in brcmnand_write_page()
2364 void *oob = oob_required ? chip->oob_poi : NULL; in brcmnand_write_page_raw() local
2368 brcmnand_write(mtd, chip, host->last_addr, (const u32 *)buf, oob); in brcmnand_write_page_raw()
2503 "%lluMiB total, %uKiB blocks, %u%s pages, %uB OOB, %u-bit", in brcmnand_print_cfg()
2546 "brcm,nand-oob-sector-size", in brcmnand_setup_dev()