nand_do_write_oob(9)
π nand_do_write_oob(9) β the "NAND write out-of-band" one (Kernel API Manual, bestie)
okay so you found the kernel API manual page for nand_do_write_oob, and honestly? iconic choice. let's get into it π«Ά
β¨ NAME β¨
nand_do_write_oob β [MTD Interface] NAND write out-of-band, periodt.
π¦ SYNOPSIS π¦
int nand_do_write_oob (struct nand_chip *chip , loff_t to , struct
mtd_oob_ops *ops );
like, that's the whole vibe. three args, one int coming back at you β¨
πΈ ARGUMENTS πΈ
chipβ the NAND chip object itself, aka the main character πtoβ the offset you're writing to, literally where the magic happensopsβ the oob operation description structure, aka the little instruction card that says what we're doing
π DESCRIPTION π
NAND write out-of-band. that's it, that's the whole description ngl β short and mysterious, we love a minimal queen π
π₯ SEE ALSO π₯
bestie. bestie. sit down. the SEE ALSO list on this one is long long, like it's giving "linked to the entire NAND subsystem" energy π but every single one of these is real and you're gonna get through them:
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_fill_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)
ngl that's like a whole friend group π but they're all in ./drivers/mtd/nand/raw/nand_base.c, so if you need the lore, that's where it lives.
πΈππ and that's the page!! this came out of ./drivers/mtd/nand/raw, dated October 2026, and it's the nand_do_write_oob(9) page β go write some out-of-band data, bestie, you've got this π
β¨π¦
π¦ 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