_dpu_rm_che...nnected_blks(9)
β¨ _dpu_rm_che...nnected_blks(9) β¨
okay so bestie, welcome to the Kernel API Manual π
β yes, the whole function name is literally _dpu_rm_check_lm_and_get_connected_blks and no, we are not abbreviating it, the header up there is just being dramatic and cutting it off. pull up a chair, this one's a vibe check on whether your layer mixer + its hardwired besties (looking at you, pingpong π) are actually available before you go reserving them.
πΈ NAME πΈ
_dpu_rm_check_lm_and_get_connected_blks β checks if the proposed layer mixer meets the proposed use case requirements, including hardwired dependent blocks like pingpong π«Ά
π SYNOPSIS π
bool _dpu_rm_check_lm_and_get_connected_blks (struct dpu_rm *rm , struct
dpu_global_state *global_state , uint32_t crtc_id , int lm_idx , int
*pp_idx , int *dspp_idx , struct msm_display_topology *topology );
like, yes that's the whole signature, and yes it returns a bool β she's a yes-or-no girlie π
π¦ ARGUMENTS π¦
rmβ the dpu resource manager handle ποΈ your whole resource situation lives in hereglobal_stateβ resources shared across multiple kms objects π (shared custody, basically)crtc_idβ the crtc id that's requesting the allocation πββοΈ she's asking, politelylm_idxβ the index of the proposed layer mixer inrm->mixer_blks[]. the function checks whether this lm β plus all the other hardwired blocks connected to the lm (pp) β is available and appropriate β¨pp_idxβ output parameter π«Ά the index of the pingpong block attached to the layer mixer, living inrm->pingpong_blks[].dspp_idxβ output parameter π the index of the dspp block attached to the layer mixer, inrm->dspp_blks[].topologyβ the selected topology for the display πΌοΈ the whole look she's going for
real talk:pp_idxanddspp_idxare output parameters β they're where the function hands you back the indices it found. don't come for her if they're not what you expected going in π
β RETURN β
true if the lm matches all the requirements β
π
false otherwise βπ
it's giving simple, it's giving honest. no cap.
π₯ SEE ALSO π₯
kernel file ./drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c β and her whole friend group:
dpu_rm_init(9)_dpu_rm_get_lm_peer(9)dpu_rm_release(9)dpu_rm_reserve(9)dpu_rm_reserve_sspp(9)dpu_rm_release_all_sspp(9)dpu_rm_get_assigned_resources(9)dpu_rm_print_state(9)
and that's the whole page bestie π§β¨ sign-off time: this one lives in ./drivers/gpu/drm/msm/disp/dpu1, dated October 2026, and yeah, the running header still says _dpu_rm_che...nnected_blks(9) because even the manpage generator gave up halfway through that name ππ ily, go check your layer mixers π
π¦ 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