nand_op_parser_exec_op(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

✨ nand_op_parser_exec_op(9) ✨

okay bestie, welcome to the Kernel API Manual 🌸 this one's about nand_op_parser_exec_op and honestly it's giving "the middle-manager of NAND operations" and I mean that with love πŸ’…


πŸŽ€ NAME πŸŽ€

nand_op_parser_exec_op β€” the exec_op parser, aka the girl who reads the patterns and makes the split happen ✨


πŸ¦‹ SYNOPSIS πŸ¦‹

int nand_op_parser_exec_op (struct nand_chip *chip , const struct
nand_op_parser *parser , const struct nand_operation *op , bool
check_only );

πŸ’– ARGUMENTS πŸ’–

  • chip β€” the NAND chip, the main character of this whole situation πŸ‘‘
  • parser β€” the patterns description, handed to you by the controller driver 🫢
  • op β€” the NAND operation we're trying to address, like the actual task on the group chat πŸ“‹
  • check_only β€” when true, the function only checks if op can be handled but does not execute the operation. so it's a vibe check, not a full send πŸ™ˆ

🌈 DESCRIPTION 🌈

okay so this is a helper function, and its whole personality is "ease integration of NAND controller drivers that only support a limited set of instruction sequences" 😌 the supported sequences are described in parser, and the framework takes care of splitting op into multiple sub-operations (if required) and passes them back to the ->exec callback of the matching pattern β€” but only if check_only is set to false. like, if you said check only, she's not gonna execute anything, respect the boundary πŸ’…

NAND controller drivers should call this function from their own ->exec_op implementation. that's the assignment, no cap πŸ“

Returns 0 on success, a negative error code otherwise πŸ”₯ and a failure can be caused by an unsupported operation (none of the supported patterns is able to handle the requested operation), or an error returned by one of the matching pattern->exec hook. so basically two ways to not slay 😭


🧚 SEE ALSO 🧚

Kernel file ./drivers/mtd/nand/raw/nand_base.c β€” and here's the full squad, every single one, because we don't leave anyone out of the group chat πŸ’œ


that's the whole page bestie, every last crumb πŸ“ this came from ./drivers/mtd/nand/raw, dated October 2026 β€” so go forth, call it from your ->exec_op, and remember: check first, execute later πŸ’…βœ¨πŸŽ€

πŸ“¦ where this page comes from