onenand_get_fact_prot_info(9)
β¨ onenand_get_fact_prot_info(9) β¨
okay bestie, so this one is a page from the Kernel API Manual β and it's all about onenand_get_fact_prot_info, which lives in the MTD Interface world π. grab your strawberry drink, we're reading factory OTP info together π
πΈ NAME πΈ
onenand_get_fact_prot_info β [MTD Interface] Read factory OTP info. that's the whole vibe, no cap β¨
π¦ SYNOPSIS π¦
int onenand_get_fact_prot_info (struct mtd_info *mtd , size_t len ,
size_t *retlen , struct otp_info *buf );
look at her, four arguments, she's serving main character energy π
π ARGUMENTS π
mtdβ the MTD device structure. this is the device we're talking to, she's the one π«Άlenβ number of bytes to read. tell her how much you want, be specific πretlenβ pointer to variable to store the number of read bytes. she writes back how much she actually read, so you're not left guessing πbufβ the databuffer to put/get data. this is where the data goes, it's giving the little basket π§Ί
β DESCRIPTION β
Read factory OTP info. literally that's the description, no extra lore, and honestly? iconic for her β¨
π SEE ALSO π
Kernel file ./drivers/mtd/nand/onenand/onenand_base.c β and omg the friend group is HUGE, here's everyone:
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_mlc_read_ops_nolock(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_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)π
(not me listing every single one β but bestie, they ALL have to be here, so here they all are π«Ά)
ok that's the whole page!! she's short, she's sweet, she reads factory OTP info, periodt π
and a lil sign-off: this beauty comes from the kernel path ./drivers/mtd/nand/onenand, dated October 2026, and she answers to the name onenand_get_fact_prot_info(9). slay πβ¨
π¦ 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