onenand_mlc_read_ops_nolock(9)
π onenand_mlc_read_ops_nolock(9) π
okay so bestie, we're in the Kernel API Manual today and the star of the show is onenand_mlc_read_ops_nolock(9). yes that's a whole mouthful, no i will not be shortening it, it's iconic as is π
πΈ NAME πΈ
onenand_mlc_read_ops_nolock β literally the MLC OneNAND read for main and/or out-of-band. that's the whole vibe β¨
π¦ SYNOPSIS π¦
int onenand_mlc_read_ops_nolock (struct mtd_info *mtd , loff_t from ,
struct mtd_oob_ops *ops );
like, look at her go π
π ARGUMENTS π
mtdβ the MTD device structure. the main character of the data structure world, we love her π«Άfromβ the offset you're reading from. where the tea starts, basically βopsβ the oob operation description structure. it's giving instructions, it's giving structure, it's giving oob π
π DESCRIPTION π
okay so here's the lore: MLC OneNAND / Flex-OneNAND has a 4KB page size and a 4KB dataram. and because of that? read-while-load is not present. nope. not a thing here. absent. missing. she simply does not exist π
so like... don't go looking for read-while-load on these, bestie, it's not coming to the group chat π
π₯ SEE ALSO π₯
the whole friend group, fr fr β every single one of them:
onenand_readw(9)onenand_writew(9)onenand_block_address(9)onenand_bufferram_address(9)onenand_page_address(9)onenand_buffer_address(9)flexonenand_block(9)flexonenand_addr(9)onenand_get_density(9)flexonenand_region(9)onenand_command(9)onenand_read_ecc(9)onenand_wait(9)onenand_bufferram_offset(9)onenand_read_bufferram(9)onenand_sync_read_bufferram(9)onenand_write_bufferram(9)onenand_get_2x_blockpage(9)onenand_check_bufferram(9)onenand_update_bufferram(9)onenand_invalidate_bufferram(9)onenand_get_device(9)onenand_release_device(9)onenand_transfer_auto_oob(9)onenand_recover_lsb(9)onenand_read_ops_nolock(9)onenand_read_oob_nolock(9)onenand_read_oob(9)onenand_bbt_wait(9)onenand_bbt_read_oob(9)onenand_verify_oob(9)onenand_verify(9)onenand_panic_write(9)onenand_fill_auto_oob(9)onenand_write_ops_nolock(9)onenand_write_oob_nolock(9)onenand_write_oob(9)onenand_block_isbad_nolock(9)onenand_multiblock_erase(9)onenand_block_by_block_erase(9)onenand_erase(9)onenand_sync(9)onenand_block_isbad(9)onenand_default_block_markbad(9)onenand_block_markbad(9)onenand_do_lock_cmd(9)onenand_lock(9)onenand_unlock(9)onenand_check_lock_status(9)onenand_unlock_all(9)onenand_otp_command(9)onenand_otp_write_oob_nolock(9)do_otp_read(9)do_otp_write(9)do_otp_lock(9)onenand_otp_walk(9)onenand_get_fact_prot_info(9)onenand_read_fact_prot_reg(9)onenand_get_user_prot_info(9)onenand_read_user_prot_reg(9)onenand_write_user_prot_reg(9)onenand_lock_user_prot_reg(9)onenand_check_features(9)onenand_print_device_info(9)onenand_check_maf(9)flexonenand_get_boundary(9)flexonenand_get_size(9)flexonenand_check_blocks_erased(9)onenand_chip_probe(9)onenand_probe(9)onenand_suspend(9)onenand_resume(9)onenand_scan(9)onenand_release(9)
also the kernel file itself lives at ./drivers/mtd/nand/onenand/onenand_base.c β go say hi, she's the source of truth π§
ngl, that SEE ALSO list is a whole squad. iykyk π
and that's the whole page, bestie! brought to you by the Kernel API Manual, from ./drivers/mtd/nand/onenand, dated October 2026, and yes it's still called onenand_mlc_read_ops_nolock(9) β slay, periodt ππ
π¦ 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