dpu_encoder_..._tx_complete(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… dpu_encoder_wait_for_tx_complete β€” the Kernel API Manual page, but make it make sense πŸŽ€

okay so bestie, you found the manual page for dpu_encoder_..._tx_complete(9) β€” yes the title got truncated, it's giving "my name is too long for the terminal", we love that for her. This page lives in the Kernel API Manual and honestly? She's short. She's sweet. She's about waiting. Let's get into it ✨


🌸 NAME 🌸

dpu_encoder_wait_for_tx_complete β€” literally just: wait for the encoder to transfer pixels to the panel. That's it. That's the whole job. She waits. πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

int dpu_encoder_wait_for_tx_complete (struct drm_encoder *drm_enc );

no cap, that's the whole signature. one argument, one int coming back.


πŸŽ€ ARGUMENTS πŸŽ€

  • drm_enc β€” encoder pointer. that's it, that's the whole description the original gave us, so we're not gonna invent lore, bestie 🫢 it's the encoder. the pointer to it. iconic behaviour honestly.

✨ DESCRIPTION ✨

So the vibe here is: you're waiting on the hardware to transfer, like, all the pixels to the panel. Every last one. The full fit. πŸ”₯

And here's the cute part β€” physical encoders map this differently depending on their type, so the wait looks different depending on who's doing it:

  • vid mode β†’ vsync_irq
  • cmd mode β†’ pp_done

iykyk. different encoder, different signal, same energy: wait. πŸ’œ


πŸ’– RETURN πŸ’–

  • 0 β€” success, slay, we're done waiting πŸŽ‰
  • -EWOULDBLOCK β€” if it's already signaled. not an error-error, just a "girl, it already happened" moment πŸ™ˆ
  • error otherwise β€” any other error, bestie. that's the whole spec.

🌈 SEE ALSO 🌈

okay this is the part where the page goes absolutely feral with cross-references, so buckle up 🧚 this is a long list and we are not skipping a single one:

that's forty-two entries plus the source file, and yes I counted, and yes I'm obsessed with whoever maintains this list πŸ˜­πŸ’€

also if you're ever typing a leading underscore in a function name, that's your cue that it's the internal-flavoured one. just saying, iykyk πŸ‘‘

and that's the whole page, bestie!! 🫢 straight from ./drivers/gpu/drm/msm/disp/dpu1, dated October 2026, filed under dpu_encoder_..._tx_complete(9) β€” go forth and wait for those pixels, you absolute main character πŸ’–πŸŒŸ

πŸ“¦ where this page comes from