doc_set_extra_page_mode(9)
π doc_set_extra_page_mode(9) π
okay bestie, this little icon is straight from the Kernel API Manual, and the vibe is βletβs go poke the flash page layout.β β¨
πΈ NAME πΈ
doc_set_extra_page_mode β change flash page layout π
β¨ SYNOPSIS β¨
int doc_set_extra_page_mode (struct docg3 *docg3 );
π ARGUMENTS π
docg3β the device π»
π DESCRIPTION π
okay so normally, the flash page is split into the data (512 bytes) and the out of band data (16 bytes). π«Ά For each one, 4 more bytes can be accessed β and thatβs literally where the wear leveling counters are stored. π
to access this last area of 4 bytes, a special mode must be input to the flash ASIC. thatβs the whole assignment, no cap. π
and the return tea β: returns 0 if no error occurred, -EIO else. periodt. β¨
π¦ SEE ALSO π¦
Kernel file ./drivers/mtd/devices/docg3.c β and hereβs the whole friend group, all linked:
doc_delay(9)doc_read_data_area(9)doc_write_data_area(9)doc_set_reliable_mode(9)doc_set_asic_mode(9)doc_set_device_id(9)doc_setup_addr_sector(9)doc_setup_writeaddr_sector(9)doc_read_seek(9)doc_write_seek(9)doc_read_page_ecc_init(9)doc_write_page_ecc_init(9)doc_ecc_disable(9)doc_hamming_ecc_init(9)doc_ecc_bch_fix_data(9)doc_read_page_prepare(9)doc_read_page_getbytes(9)doc_write_page_putbytes(9)doc_get_bch_hw_ecc(9)doc_page_finish(9)doc_read_page_finish(9)calc_block_sector(9)doc_read_oob(9)doc_block_isbad(9)doc_get_erase_count(9)doc_get_op_status(9)doc_write_erase_wait_status(9)doc_erase_block(9)doc_erase(9)doc_write_page(9)doc_guess_autoecc(9)doc_fill_autooob(9)doc_backup_oob(9)doc_write_oob(9)doc_set_driver_info(9)doc_probe_device(9)doc_release_device(9)docg3_resume(9)docg3_suspend(9)docg3_probe(9)docg3_release(9)
mwah π source/version + date sign-off: ./drivers/mtd/devices Β· October 2026 Β· doc_set_extra_page_mode(9). bye bestie π«Άβ¨
π¦ 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