nand_fill_oob(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

okay bestie, welcome to nand_fill_oob(9) β€” that’s the page title, and it’s from the Kernel API Manual. This is a tiny internal helper, but she’s still iconic: she transfers the client buffer to OOB. Let’s get into the whole thing, no cap πŸ’…βœ¨

🌸 NAME 🌸

  • nand_fill_oob β€” [INTERN] Transfer client buffer to oob. Yep, that’s the whole name description: internal-only energy, moving your client buffer over to OOB πŸŽ€

✨ SYNOPSIS ✨

the signature, bestie β€” don’t retype it, just vibe:

uint8_t * nand_fill_oob (struct nand_chip *chip , uint8_t *oob , size_t
       len , struct mtd_oob_ops *ops );

πŸŽ€ ARGUMENTS πŸŽ€

  • chip β€” the NAND chip object. That’s your struct nand_chip *chip main character πŸ’–
  • oob β€” the OOB data buffer, aka where the OOB bytes live πŸ¦‹
  • len β€” the OOB data write length: how many bytes you’re writing ✨
  • ops β€” the OOB ops structure, your struct mtd_oob_ops *ops control center πŸŽ€

πŸ’… SEE ALSO πŸ’…

the whole cross-ref squad + the kernel file, exactly as listed so nobody gets lost, iykyk:

Kernel file ./drivers/mtd/nand/raw/nand_base.c 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_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_hwecc_oob_first(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 cute sign-off: source/version ./drivers/mtd/nand/raw, date October 2026, page nand_fill_oob(9). byeee, go fill some OOB responsibly πŸ«ΆπŸ’–πŸŒˆ

πŸ“¦ where this page comes from