char *prefix = "      ";
        unsigned int i;
 
-       pr_debug("executing subop:\n");
+       pr_debug("executing subop (CS%d):\n", ctx->subop.cs);
 
        for (i = 0; i < ctx->ninstrs; i++) {
                instr = &ctx->instrs[i];
                           const struct nand_operation *op, bool check_only)
 {
        struct nand_op_parser_ctx ctx = {
+               .subop.cs = op->cs,
                .subop.instrs = op->instrs,
                .instrs = op->instrs,
                .ninstrs = op->ninstrs,
 
 
 /**
  * struct nand_subop - a sub operation
+ * @cs: the CS line to select for this NAND sub-operation
  * @instrs: array of instructions
  * @ninstrs: length of the @instrs array
  * @first_instr_start_off: offset to start from for the first instruction
  * controller driver.
  */
 struct nand_subop {
+       unsigned int cs;
        const struct nand_op_instr *instrs;
        unsigned int ninstrs;
        unsigned int first_instr_start_off;