drm_crtc_add_crc_entry(9)
π drm_crtc_add_crc_entry(9) π
okay so bestie, we're in the Kernel API Manual today and the star of the show is drm_crtc_add_crc_entry(9) β¨ it's giving "tiny function, huge responsibilities" ngl π«Ά
πΈ NAME πΈ
drm_crtc_add_crc_entry β Add entry with CRC information for a frame π
π¦ SYNOPSIS π¦
int drm_crtc_add_crc_entry (struct drm_crtc *crtc , bool has_frame ,
uint32_t frame , uint32_t *crcs );
like, look at her. four args. no notes. π
β¨ ARGUMENTS β¨
crtcβ the CRTC that this frame belongs to π like whose frame is this anywayhas_frameβ abooltelling us whether this entry actually has a frame number to go with it π«Ά sometimes yes, sometimes no, we don't judgeframeβ the number of the frame these CRCs are all about π₯ (uint32_t, in case you were wondering)crcsβ array of CRC values π and its length has to match#drm_crtc_crc.values_cnt, no cap, that's the vibe check π
π DESCRIPTION π
so for each and every frame, the driver goes and polls the source of CRCs for new data π« and then it calls this function to add them to the buffer β the very same buffer that userspace reads from. that's it. that's the whole gig. iconic honestly π
like it's literally the handoff: driver gets the numbers, this function tucks them into the buffer, userspace comes along and reads them. middle manager energy but make it kernel π§
π SEE ALSO π
- Kernel file
./drivers/gpu/drm/drm_debugfs_crc.cπ CRC ABI(9)β
bestie reminder:crcslength must match#drm_crtc_crc.values_cntβ don't come for me if you skip that π
and that's the page!! mwah π this little writeup lives in ./drivers/gpu/drm, dated October 2026, and it's filed under drm_crtc_add_crc_entry(9) β slay, go read some CRC ABI now, ily π«Άπβ¨
π¦ 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