STRUCT NAND_OPERATION(9)
π struct nand_operation(9) β NAND operation descriptor π
Okay bestie, welcome to the struct nand_operation(9) page in the Kernel API Manual. Weβre doing the NAND operation descriptor today, and itβs lowkey iconic β¨.
π NAME π
struct nand_operation β NAND operation descriptor. Thatβs the whole name-and-one-liner situation π«Ά.
π¦ SYNOPSIS π¦
Hereβs the shape of the struct, no cap:
struct nand_operation {
unsigned int cs;
bool deassert_wp;
const struct nand_op_instr *instrs;
unsigned int ninstrs;
};
πΈ Members πΈ
csβ the CS line to select for this NAND operation.deassert_wpβ set totruewhen the operation requires the WP pin to be de-asserted (ERASE,PROG, ...).instrsβ array of instructions to execute.ninstrsβ length of theinstrsarray.
π Description π
This is the actual operation structure that will be passed to chip->exec_op. Thatβs the tea β β itβs the real descriptor doing the rounds.
π₯ SEE ALSO π₯
Kernel file: ./include/linux/mtd/rawnand.h β and hereβs the whole friend group, because we donβt leave anyone out:
struct nand_parameters(9)struct nand_id(9)struct nand_ecc_step_info(9)struct nand_ecc_caps(9)struct nand_ecc_ctrl(9)struct nand_sdr_timings(9)struct nand_nvddr_timings(9)enum nand_interface_type(9)struct nand_interface_config(9)nand_interface_is_sdr(9)nand_interface_is_nvddr(9)nand_get_sdr_timings(9)nand_get_nvddr_timings(9)struct nand_op_cmd_instr(9)struct nand_op_addr_instr(9)struct nand_op_data_instr(9)struct nand_op_waitrdy_instr(9)enum nand_op_instr_type(9)struct nand_op_instr(9)struct nand_subop(9)struct nand_op_parser_addr_constraints(9)struct nand_op_parser_data_constraints(9)struct nand_op_parser_pattern_elem(9)struct nand_op_parser_pattern(9)struct nand_op_parser(9)struct nand_controller_ops(9)struct nand_controller(9)struct nand_legacy(9)struct nand_chip_ops(9)struct nand_manufacturer(9)struct nand_secure_region(9)struct nand_chip(9)nand_get_interface_config(9)struct nand_flash_dev(9)nand_opcode_8bits(9)nand_get_data_buf(9)
Okay bye bestie! The footer source/version line was ./include/linux/mtd, and the date on it is October 2026. Go read some kernel headers, 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