spi_nor_erase_die(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… spi_nor_erase_die(9) β€” like, the whole die, gone πŸ’…

okay bestie, gather round, because this is a page from the Kernel API Manual and the function is literally called spi_nor_erase_die β€” yes, the entire die, we're not doing the little sector thing today, we're going full send ✨


🌸 NAME 🌸

spi_nor_erase_die β€” erase the entire die. that's it. that's the whole vibe. the whole die. all of it. 🫢


✨ SYNOPSIS ✨

int spi_nor_erase_die (struct spi_nor *nor , loff_t addr , size_t
die_size );

it gives you back an int, because of course it does, that's the standard "did it work or not" energy πŸ’«


πŸŽ€ ARGUMENTS πŸŽ€

  • nor β€” pointer to struct spi_nor. your main character struct, the spi nor flash representation, we love her πŸ‘‘
  • addr β€” address of the die. where the die lives, geographically speaking πŸ—ΊοΈ
  • die_size β€” size of the die. how much die we're erasing, like a measurement, not a guess, please be accurate bestie πŸ“

πŸ”₯ RETURN πŸ”₯

  • 0 on success πŸŽ‰
  • -errno otherwise 😭

that's it. that's the contract. no in-between, no "maybe", zero ambiguity, we stan a decisive return value πŸ’…


πŸ¦‹ SEE ALSO πŸ¦‹

bestie. okay. sit down. the kernel file ./drivers/mtd/spi-nor/core.c has, and I cannot stress this enough, so many friends, and they're all here:

spi_nor_get_cmd_ext(9), spi_nor_spimem_setup_op(9), spi_nor_spimem_bounce(9), spi_nor_spimem_exec_op(9), spi_nor_spimem_read_data(9), spi_nor_read_data(9), spi_nor_spimem_write_data(9), spi_nor_write_data(9), spi_nor_read_any_reg(9), spi_nor_write_any_volatile_reg(9), spi_nor_write_enable(9), spi_nor_write_disable(9), spi_nor_read_id(9), spi_nor_read_sr(9), spi_nor_read_cr(9), spi_nor_set_4byte_addr_mode_en4b_ex4b(9), spi_nor_set_4byte_addr_mode_wren_en4b_ex4b(9), spi_nor_set_4byte_addr_mode_brwr(9), spi_nor_sr_ready(9), spi_nor_use_parallel_locking(9), spi_nor_ready(9), spi_nor_wait_till_ready_with_timeout(9), spi_nor_wait_till_ready(9), spi_nor_global_block_unlock(9), spi_nor_write_sr(9), spi_nor_write_sr1_and_check(9), spi_nor_write_16bit_sr_and_check(9), spi_nor_write_16bit_cr_and_check(9), spi_nor_write_16bit_sr_cr_and_check(9), spi_nor_write_sr_and_check(9), spi_nor_write_sr_cr_and_check(9), spi_nor_write_sr2(9), spi_nor_read_sr2(9), spi_nor_div_by_erase_size(9), spi_nor_find_best_erase_type(9), spi_nor_init_erase_cmd(9), spi_nor_destroy_erase_cmd_list(9), spi_nor_init_erase_cmd_list(9), spi_nor_erase_multi_sectors(9), spi_nor_sr1_bit6_quad_enable(9), spi_nor_sr2_bit1_quad_enable(9), spi_nor_sr2_bit7_quad_enable(9), spi_nor_spimem_check_read_pp_op(9), spi_nor_spimem_check_readop(9), spi_nor_spimem_check_pp(9), spi_nor_spimem_adjust_hwcaps(9), spi_nor_set_erase_type(9), spi_nor_mask_erase_type(9), spi_nor_init_uniform_erase_map(9), spi_nor_select_uniform_erase(9), spi_nor_manufacturer_init_params(9), spi_nor_no_sfdp_init_params(9), spi_nor_init_flags(9), spi_nor_init_fixup_flags(9), spi_nor_late_init_params(9), spi_nor_sfdp_init_params_deprecated(9), spi_nor_init_params_deprecated(9), spi_nor_init_default_params(9), spi_nor_init_params(9), spi_nor_quad_enable(9), spi_nor_set_4byte_addr_mode(9), spi_nor_soft_reset(9)

like I said. a lot of friends. it's giving family reunion and honestly? iconic. iykyk πŸ’–


ngl the SEE ALSO list is longer than the page itself and that's just the energy we're bringing today. no cap. 🌈

and that's the page, bestie!! from the ./drivers/mtd/spi-nor manual section, dated October 2026 β€” go erase that whole die, you absolute legend, slay πŸ’œπŸŽ€β­

πŸ“¦ where this page comes from