Home
last modified time | relevance | path

Searched refs:oob (Results 1 – 25 of 98) sorted by relevance

1234

/openbmc/u-boot/fs/yaffs2/
H A Dyaffs_mtdif.c28 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 …]
/openbmc/linux/drivers/mtd/parsers/
H A Dsharpslpart.c132 static int sharpsl_nand_get_logical_num(u8 *oob) in sharpsl_nand_get_logical_num() argument
137 if (oob[NAND_NOOB_LOGADDR_00] == oob[NAND_NOOB_LOGADDR_10] && in sharpsl_nand_get_logical_num()
138 oob[NAND_NOOB_LOGADDR_01] == oob[NAND_NOOB_LOGADDR_11]) { in sharpsl_nand_get_logical_num()
141 } else if (oob[NAND_NOOB_LOGADDR_10] == oob[NAND_NOOB_LOGADDR_20] && in sharpsl_nand_get_logical_num()
142 oob[NAND_NOOB_LOGADDR_11] == oob[NAND_NOOB_LOGADDR_21]) { in sharpsl_nand_get_logical_num()
145 } else if (oob[NAND_NOOB_LOGADDR_20] == oob[NAND_NOOB_LOGADDR_00] && in sharpsl_nand_get_logical_num()
146 oob[NAND_NOOB_LOGADDR_21] == oob[NAND_NOOB_LOGADDR_01]) { in sharpsl_nand_get_logical_num()
153 us = oob[good0] | oob[good1] << 8; in sharpsl_nand_get_logical_num()
171 u8 *oob; in sharpsl_nand_init_ftl() local
173 oob = kzalloc(mtd->oobsize, GFP_KERNEL); in sharpsl_nand_init_ftl()
[all …]
/openbmc/linux/drivers/mtd/
H A Dsm_ftl.c148 static int sm_read_lba(struct sm_oob *oob) in sm_read_lba() argument
157 if (!memcmp(oob, erased_pattern, SM_OOB_SIZE)) in sm_read_lba()
161 lba_test = *(uint16_t *)oob->lba_copy1 ^ *(uint16_t*)oob->lba_copy2; in sm_read_lba()
166 lba = sm_get_lba(oob->lba_copy1); in sm_read_lba()
169 lba = sm_get_lba(oob->lba_copy2); in sm_read_lba()
174 static void sm_write_lba(struct sm_oob *oob, uint16_t lba) in sm_write_lba() argument
186 oob->lba_copy1[0] = oob->lba_copy2[0] = tmp[0]; in sm_write_lba()
187 oob->lba_copy1[1] = oob->lba_copy2[1] = tmp[1]; in sm_write_lba()
217 static int sm_correct_sector(uint8_t *buffer, struct sm_oob *oob) in sm_correct_sector() argument
223 if (ecc_sw_hamming_correct(buffer, ecc, oob->ecc1, SM_SMALL_PAGE, in sm_correct_sector()
[all …]
H A Dnftlcore.c168 size_t *retlen, uint8_t *buf, uint8_t *oob) in nftl_write() argument
177 ops.oobbuf = oob; in nftl_write()
241 struct nftl_oob oob; in NFTL_foldchain() local
268 (char *)&oob); in NFTL_foldchain()
270 foldmark = oob.u.c.FoldMark | oob.u.c.FoldMark1; in NFTL_foldchain()
281 status = oob.b.Status | oob.b.Status1; in NFTL_foldchain()
380 oob.u.c.FoldMark = oob.u.c.FoldMark1 = cpu_to_le16(FOLD_MARK_IN_PROGRESS); in NFTL_foldchain()
381 oob.u.c.unused = 0xffffffff; in NFTL_foldchain()
383 8, &retlen, (char *)&oob.u); in NFTL_foldchain()
420 memset(&oob, 0xff, sizeof(struct nftl_oob)); in NFTL_foldchain()
[all …]
H A Dinftlcore.c177 size_t *retlen, uint8_t *buf, uint8_t *oob) in inftl_write() argument
185 ops.oobbuf = oob; in inftl_write()
244 struct inftl_oob oob; in INFTL_foldchain() local
274 (char *)&oob) < 0) in INFTL_foldchain()
277 status = oob.b.Status | oob.b.Status1; in INFTL_foldchain()
347 memset(&oob, 0xff, sizeof(struct inftl_oob)); in INFTL_foldchain()
348 oob.b.Status = oob.b.Status1 = SECTOR_USED; in INFTL_foldchain()
352 movebuf, (char *)&oob); in INFTL_foldchain()
466 struct inftl_oob oob; in INFTL_findwriteunit() local
574 + 8, 8, &retlen, (char *)&oob.u); in INFTL_findwriteunit()
[all …]
/openbmc/linux/drivers/mtd/nand/raw/
H A Dsm_common.h39 static inline int sm_sector_valid(struct sm_oob *oob) in sm_sector_valid() argument
41 return hweight16(oob->data_status) >= 5; in sm_sector_valid()
44 static inline int sm_block_valid(struct sm_oob *oob) in sm_block_valid() argument
46 return hweight16(oob->block_status) >= 7; in sm_block_valid()
49 static inline int sm_block_erased(struct sm_oob *oob) in sm_block_erased() argument
55 if (!memcmp(oob, erased_pattern, sizeof(*oob))) in sm_block_erased()
H A Dsunxi_nand.c715 static void sunxi_nfc_hw_ecc_get_prot_oob_bytes(struct nand_chip *nand, u8 *oob, in sunxi_nfc_hw_ecc_get_prot_oob_bytes() argument
721 oob); in sunxi_nfc_hw_ecc_get_prot_oob_bytes()
725 sunxi_nfc_randomize_bbm(nand, page, oob); in sunxi_nfc_hw_ecc_get_prot_oob_bytes()
729 const u8 *oob, int step, in sunxi_nfc_hw_ecc_set_prot_oob_bytes() argument
737 memcpy(user_data, oob, sizeof(user_data)); in sunxi_nfc_hw_ecc_set_prot_oob_bytes()
739 oob = user_data; in sunxi_nfc_hw_ecc_set_prot_oob_bytes()
742 writel(sunxi_nfc_buf_to_user_data(oob), in sunxi_nfc_hw_ecc_set_prot_oob_bytes()
759 static int sunxi_nfc_hw_ecc_correct(struct nand_chip *nand, u8 *data, u8 *oob, in sunxi_nfc_hw_ecc_correct() argument
784 if (oob) in sunxi_nfc_hw_ecc_correct()
785 memset(oob, pattern, ecc->bytes + 4); in sunxi_nfc_hw_ecc_correct()
[all …]
H A Dsm_common.c103 struct sm_oob oob; in sm_block_markbad() local
106 memset(&oob, -1, SM_OOB_SIZE); in sm_block_markbad()
107 oob.block_status = 0x0F; in sm_block_markbad()
114 ops.oobbuf = (void *)&oob; in sm_block_markbad()
H A Dnand_base.c385 static uint8_t *nand_fill_oob(struct nand_chip *chip, uint8_t *oob, size_t len, in nand_fill_oob() argument
401 memcpy(chip->oob_poi + ops->ooboffs, oob, len); in nand_fill_oob()
402 return oob + len; in nand_fill_oob()
405 ret = mtd_ooblayout_set_databytes(mtd, oob, chip->oob_poi, in nand_fill_oob()
408 return oob + len; in nand_fill_oob()
2999 uint8_t *oob = chip->oob_poi; in nand_read_page_raw_syndrome() local
3014 ret = nand_read_data_op(chip, oob, chip->ecc.prepad, in nand_read_page_raw_syndrome()
3019 oob += chip->ecc.prepad; in nand_read_page_raw_syndrome()
3022 ret = nand_read_data_op(chip, oob, eccbytes, false, false); in nand_read_page_raw_syndrome()
3026 oob += eccbytes; in nand_read_page_raw_syndrome()
[all …]
/openbmc/u-boot/drivers/mtd/nand/raw/
H A Dlpc32xx_nand_mlc.c238 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_read_page_hwecc() local
263 memcpy(&oob->free[i], lpc32xx_nand_mlc_registers->buff, 6); in lpc32xx_read_page_hwecc()
265 memcpy(&oob->ecc[i], lpc32xx_nand_mlc_registers->buff, 10); in lpc32xx_read_page_hwecc()
286 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_read_page_raw() local
305 memcpy(&oob->free[i], lpc32xx_nand_mlc_registers->data, 6); in lpc32xx_read_page_raw()
307 memcpy(&oob->ecc[i], lpc32xx_nand_mlc_registers->data, 10); in lpc32xx_read_page_raw()
334 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_read_oob() local
363 memcpy(&oob->free[i], lpc32xx_nand_mlc_registers->buff, 6); in lpc32xx_read_oob()
365 memcpy(&oob->ecc[i], lpc32xx_nand_mlc_registers->buff, 10); in lpc32xx_read_oob()
388 struct lpc32xx_oob *oob = (struct lpc32xx_oob *)chip->oob_poi; in lpc32xx_write_page_hwecc() local
[all …]
H A Dmxc_nand.c445 uint8_t *oob = chip->oob_poi; local
459 chip->read_buf(mtd, oob, chip->ecc.prepad);
460 oob += chip->ecc.prepad;
463 chip->read_buf(mtd, oob, eccbytes);
464 oob += eccbytes;
467 chip->read_buf(mtd, oob, chip->ecc.postpad);
468 oob += chip->ecc.postpad;
472 size = mtd->oobsize - (oob - chip->oob_poi);
474 chip->read_buf(mtd, oob, size);
492 uint8_t *oob = chip->oob_poi; local
[all …]
H A Dnand_base.c1245 uint8_t *oob = chip->oob_poi; in nand_read_page_raw_syndrome() local
1253 chip->read_buf(mtd, oob, chip->ecc.prepad); in nand_read_page_raw_syndrome()
1254 oob += chip->ecc.prepad; in nand_read_page_raw_syndrome()
1257 chip->read_buf(mtd, oob, eccbytes); in nand_read_page_raw_syndrome()
1258 oob += eccbytes; in nand_read_page_raw_syndrome()
1261 chip->read_buf(mtd, oob, chip->ecc.postpad); in nand_read_page_raw_syndrome()
1262 oob += chip->ecc.postpad; in nand_read_page_raw_syndrome()
1266 size = mtd->oobsize - (oob - chip->oob_poi); in nand_read_page_raw_syndrome()
1268 chip->read_buf(mtd, oob, size); in nand_read_page_raw_syndrome()
1559 uint8_t *oob = chip->oob_poi; in nand_read_page_syndrome() local
[all …]
H A Dsunxi_nand.c807 u8 *oob, int oob_off, in sunxi_nfc_hw_ecc_read_chunk() argument
850 memset(oob, pattern, ecc->bytes + 4); in sunxi_nfc_hw_ecc_read_chunk()
860 sunxi_nfc_randomizer_read_buf(mtd, oob, ecc->bytes + 4, true, page); in sunxi_nfc_hw_ecc_read_chunk()
871 nand->read_buf(mtd, oob, ecc->bytes + 4); in sunxi_nfc_hw_ecc_read_chunk()
875 oob, ecc->bytes + 4, in sunxi_nfc_hw_ecc_read_chunk()
886 oob); in sunxi_nfc_hw_ecc_read_chunk()
890 sunxi_nfc_randomize_bbm(mtd, page, oob); in sunxi_nfc_hw_ecc_read_chunk()
904 u8 *oob, int *cur_off, in sunxi_nfc_hw_ecc_read_extra_oob() argument
920 sunxi_nfc_read_buf(mtd, oob + offset, len); in sunxi_nfc_hw_ecc_read_extra_oob()
922 sunxi_nfc_randomizer_read_buf(mtd, oob + offset, len, in sunxi_nfc_hw_ecc_read_extra_oob()
[all …]
H A Dfsl_elbc_nand.c73 unsigned int oob; /* Non zero if operating on OOB data */ member
154 static void set_addr(struct mtd_info *mtd, int column, int page_addr, int oob) in set_addr() argument
168 (oob ? FPAR_LP_MS : 0) | column); in set_addr()
174 (oob ? FPAR_SP_MS : 0) | column); in set_addr()
182 if (oob) in set_addr()
246 static void fsl_elbc_do_read(struct nand_chip *chip, int oob) in fsl_elbc_do_read() argument
269 if (oob) in fsl_elbc_do_read()
383 ctrl->oob = 0; in fsl_elbc_cmdfunc()
411 ctrl->oob = 1; in fsl_elbc_cmdfunc()
422 set_addr(mtd, column, page_addr, ctrl->oob); in fsl_elbc_cmdfunc()
[all …]
H A Ddenali.c730 uint8_t *oob = chip->oob_poi; in denali_read_page_raw() local
733 memcpy(oob, tmp_buf + writesize, oob_skip); in denali_read_page_raw()
734 oob += oob_skip; in denali_read_page_raw()
746 memcpy(oob, tmp_buf + pos, len); in denali_read_page_raw()
747 oob += len; in denali_read_page_raw()
750 memcpy(oob, tmp_buf + writesize + oob_skip, in denali_read_page_raw()
752 oob += len; in denali_read_page_raw()
757 len = oobsize - (oob - chip->oob_poi); in denali_read_page_raw()
758 memcpy(oob, tmp_buf + size - len, len); in denali_read_page_raw()
864 const uint8_t *oob = chip->oob_poi; in denali_write_page_raw() local
[all …]
/openbmc/linux/tools/testing/selftests/net/af_unix/
H A Dtest_unix_oob.c182 char oob; in main() local
225 read_oob(pfd, &oob); in main()
227 if (!signal_recvd || len != 63 || oob != '@') { in main()
229 signal_recvd, len, oob); in main()
246 read_oob(pfd, &oob); in main()
247 if (!signal_recvd || len != 127 || oob != '#') { in main()
249 signal_recvd, len, oob); in main()
271 read_oob(pfd, &oob); in main()
273 if (!signal_recvd || len != 127 || oob != '%' || atmark != 1) { in main()
276 signal_recvd, len, oob, atmark); in main()
[all …]
/openbmc/qemu/tests/qapi-schema/
H A Doob-coroutine.err1 oob-coroutine.json: In command 'oob-command-1':
2 oob-coroutine.json:2: flags 'allow-oob' and 'coroutine' are incompatible
H A Doob-test.err1 oob-test.json: In command 'oob-command-1':
2 oob-test.json:2: flag 'allow-oob' may only use true value
H A Dqapi-schema-test.out35 gen=True success_response=True boxed=False oob=False preconfig=False
178 gen=True success_response=True boxed=False oob=False preconfig=False
182 gen=True success_response=True boxed=False oob=False preconfig=False
187 gen=True success_response=True boxed=False oob=False preconfig=False
189 gen=True success_response=False boxed=False oob=False preconfig=False
191 gen=True success_response=True boxed=False oob=False preconfig=False coroutine=True
196 gen=True success_response=True boxed=False oob=False preconfig=False
200 gen=True success_response=True boxed=False oob=False preconfig=False
202 gen=True success_response=True boxed=True oob=False preconfig=False
204 gen=True success_response=True boxed=True oob=False preconfig=False
[all …]
H A Doob-test.json1 # Check against oob illegal value
2 { 'command': 'oob-command-1', 'allow-oob': 'some-string' }
H A Doob-coroutine.json1 # Check that incompatible flags allow-oob and coroutine are rejected
2 { 'command': 'oob-command-1', 'allow-oob': true, 'coroutine': true }
/openbmc/qemu/qapi/
H A Dqmp-dispatch.c141 bool oob; in qmp_dispatch() local
164 oob = false; in qmp_dispatch()
168 oob = true; in qmp_dispatch()
189 if (oob && !(cmd->options & QCO_ALLOW_OOB)) { in qmp_dispatch()
206 assert(!(oob && qemu_in_coroutine())); in qmp_dispatch()
247 assert(!oob && qemu_in_coroutine() && !(cmd->options & QCO_COROUTINE)); in qmp_dispatch()
/openbmc/linux/drivers/mtd/nand/raw/brcmnand/
H A Dbrcmnand.c251 u8 *oob; member
259 u8 *oob, u32 len, u8 dma_cmd);
1453 static int read_oob_from_regs(struct brcmnand_controller *ctrl, int i, u8 *oob, in read_oob_from_regs() argument
1465 oob[j] = oob_reg_read(ctrl, j); in read_oob_from_regs()
1477 const u8 *oob, int sas, int sector_1k) in write_oob_to_regs() argument
1495 (oob[j + 0] << 24) | in write_oob_to_regs()
1496 (oob[j + 1] << 16) | in write_oob_to_regs()
1497 (oob[j + 2] << 8) | in write_oob_to_regs()
1498 (oob[j + 3] << 0)); in write_oob_to_regs()
1502 plast[k++] = oob[j++]; in write_oob_to_regs()
[all …]
/openbmc/u-boot/doc/
H A DREADME.mediatek111 nandinfo: Desired NAND device type, a combination of page size, oob size and
113 2k+64 : for Serial NAND, 2KiB page size + 64B oob size
114 2k+120 : for Serial NAND, 2KiB page size + 120B oob size
115 2k+128 : for Serial NAND, 2KiB page size + 128B oob size
116 4k+256 : for Serial NAND, 4KiB page size + 256B oob size
117 1g:2k+64 : for Parallel NAND, 2KiB page size + 64B oob size, total 1Gbit size
118 2g:2k+64 : for Parallel NAND, 2KiB page size + 64B oob size, total 2Gbit size
119 4g:2k+64 : for Parallel NAND, 2KiB page size + 64B oob size, total 4Gbit size
120 2g:2k+128: for Parallel NAND, 2KiB page size + 128B oob size, total 2Gbit size
121 4g:2k+128: for Parallel NAND, 2KiB page size + 128B oob size, total 4Gbit size
/openbmc/linux/drivers/mtd/tests/
H A Dreadtest.c83 int pg, oob; in dump_eraseblock() local
101 for (oob = 0; oob < n;) { in dump_eraseblock()
105 for (j = 0; j < 32 && oob < n; j++, oob++, i++) in dump_eraseblock()

1234