nand_read_pa...cc_oob_first(9)
π NAME π
hii bestie, welcome to the Kernel API Manual page for nand_read_pa...cc_oob_first(9) β yes, the title is giving βthis function name is long so the header had to abbreviateβ energy ππ
.
nand_read_page_hwecc_oob_first β Hardware ECC page read with ECC data read from OOB area.
β¨ SYNOPSIS β¨
int nand_read_page_hwecc_oob_first (struct nand_chip *chip , uint8_t
*buf , int oob_required , int page );
π ARGUMENTS π
chipβ the nand chip info structure, aka the little info hub for the chip.bufβ the buffer where the read data gets stored.oob_requiredβ the caller requires OOB data read tochip->oob_poi.pageβ the page number to read.
π¦ DESCRIPTION π¦
okay so picture this: this is Hardware ECC for large page chips, and the whole requirement is that the ECC data has to be extracted from the OOB before the actual data is read. That order is the moment, bestie β ECC first, data after π β¨.
πΈ SEE ALSO πΈ
Kernel file: ./drivers/mtd/nand/raw/nand_base.c β iconic. and the whole extended friend group in the docs is:
nand_extract_bits(9)nand_select_target(9)nand_deselect_target(9)nand_release_device(9)nand_bbm_get_next_page(9)nand_block_bad(9)nand_region_is_secured(9)nand_get_device(9)nand_check_wp(9)nand_fill_oob(9)nand_do_write_oob(9)nand_default_block_markbad(9)nand_markbad_bbm(9)nand_block_markbad_lowlevel(9)nand_block_isreserved(9)nand_block_checkbad(9)nand_soft_waitrdy(9)nand_gpio_waitrdy(9)panic_nand_wait(9)nand_reset_interface(9)nand_setup_interface(9)nand_choose_best_sdr_timings(9)nand_choose_best_nvddr_timings(9)nand_choose_best_timings(9)nand_choose_interface_config(9)nand_fill_column_cycles(9)nand_read_page_op(9)nand_read_param_page_op(9)nand_change_read_column_op(9)nand_read_oob_op(9)nand_prog_page_begin_op(9)nand_prog_page_end_op(9)nand_prog_page_op(9)nand_change_write_column_op(9)nand_readid_op(9)nand_status_op(9)nand_exit_status_op(9)nand_erase_op(9)nand_set_features_op(9)nand_get_features_op(9)nand_reset_op(9)nand_read_data_op(9)nand_write_data_op(9)struct nand_op_parser_ctx(9)nand_op_parser_must_split_instr(9)nand_op_parser_match_pat(9)nand_op_parser_exec_op(9)nand_subop_get_addr_start_off(9)nand_subop_get_num_addr_cyc(9)nand_subop_get_data_start_off(9)nand_subop_get_data_len(9)nand_reset(9)nand_get_features(9)nand_set_features(9)nand_read_page_raw_notsupp(9)nand_read_page_raw(9)nand_monolithic_read_page_raw(9)nand_read_page_raw_syndrome(9)nand_read_page_swecc(9)nand_read_subpage(9)nand_read_page_hwecc(9)nand_read_page_syndrome(9)nand_transfer_oob(9)nand_setup_read_retry(9)nand_do_read_ops(9)nand_read_oob_std(9)nand_read_oob_syndrome(9)nand_write_oob_std(9)nand_write_oob_syndrome(9)nand_do_read_oob(9)nand_read_oob(9)nand_write_page_raw_notsupp(9)nand_write_page_raw(9)nand_monolithic_write_page_raw(9)nand_write_page_raw_syndrome(9)nand_write_page_swecc(9)nand_write_page_hwecc(9)nand_write_subpage_hwecc(9)nand_write_page_syndrome(9)nand_write_page(9)nand_do_write_ops(9)panic_nand_write(9)nand_write_oob(9)nand_erase(9)nand_erase_nand(9)nand_sync(9)nand_block_isbad(9)nand_block_markbad(9)nand_suspend(9)nand_resume(9)nand_shutdown(9)nand_lock(9)nand_unlock(9)rawnand_dt_parse_gpio_cs(9)nand_scan_ident(9)nand_check_ecc_caps(9)nand_match_ecc_req(9)nand_maximize_ecc(9)nand_ecc_choose_conf(9)nand_scan_tail(9)nand_scan_with_ids(9)nand_cleanup(9)
and thatβs the tea β β this page is brought to you by source/version ./drivers/mtd/nand/raw, dated October 2026, for nand_read_pa...cc_oob_first(9). byeee, go read some NAND π
β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms