/kernel/linux/linux-5.10/drivers/gpu/drm/msm/disp/mdp5/ |
H A D | mdp5_pipe.c | 11 struct mdp5_hw_pipe **hwpipe, in mdp5_pipe_assign() 27 old_state = &old_global_state->hwpipe; in mdp5_pipe_assign() 28 new_state = &new_global_state->hwpipe; in mdp5_pipe_assign() 59 if (!(*hwpipe) || (hweight_long(cur->caps & ~caps) < in mdp5_pipe_assign() 60 hweight_long((*hwpipe)->caps & ~caps))) { in mdp5_pipe_assign() 84 *hwpipe = cur; in mdp5_pipe_assign() 88 if (!(*hwpipe)) in mdp5_pipe_assign() 100 DBG("%s: alloc SMP blocks", (*hwpipe)->name); in mdp5_pipe_assign() 102 (*hwpipe)->pipe, blkcfg); in mdp5_pipe_assign() 106 (*hwpipe) in mdp5_pipe_assign() 9 mdp5_pipe_assign(struct drm_atomic_state *s, struct drm_plane *plane, uint32_t caps, uint32_t blkcfg, struct mdp5_hw_pipe **hwpipe, struct mdp5_hw_pipe **r_hwpipe) mdp5_pipe_assign() argument 122 mdp5_pipe_release(struct drm_atomic_state *s, struct mdp5_hw_pipe *hwpipe) mdp5_pipe_release() argument 154 mdp5_pipe_destroy(struct mdp5_hw_pipe *hwpipe) mdp5_pipe_destroy() argument 162 struct mdp5_hw_pipe *hwpipe; mdp5_pipe_init() local [all...] |
H A D | mdp5_pipe.h | 38 struct mdp5_hw_pipe **hwpipe, 40 int mdp5_pipe_release(struct drm_atomic_state *s, struct mdp5_hw_pipe *hwpipe); 44 void mdp5_pipe_destroy(struct mdp5_hw_pipe *hwpipe);
|
H A D | mdp5_plane.c | 162 drm_printf(p, "\thwpipe=%s\n", pstate->hwpipe ? in mdp5_plane_atomic_print_state() 163 pstate->hwpipe->name : "(null)"); in mdp5_plane_atomic_print_state() 165 drm_printf(p, "\tright-hwpipe=%s\n", in mdp5_plane_atomic_print_state() 283 * hwpipe to the right LM. So, the drm_plane would in mdp5_plane_atomic_check_with_state() 338 if (!mdp5_state->hwpipe || (caps & ~mdp5_state->hwpipe->caps)) in mdp5_plane_atomic_check_with_state() 357 if (mdp5_state->hwpipe && (mdp5_state->hwpipe->blkcfg != blkcfg)) in mdp5_plane_atomic_check_with_state() 361 /* (re)assign hwpipe if needed, otherwise keep old one: */ in mdp5_plane_atomic_check_with_state() 363 /* TODO maybe we want to re-assign hwpipe sometime in mdp5_plane_atomic_check_with_state() 830 mdp5_hwpipe_mode_set(struct mdp5_kms *mdp5_kms, struct mdp5_hw_pipe *hwpipe, struct drm_framebuffer *fb, struct phase_step *step, struct pixel_ext *pe, u32 scale_config, u32 hdecm, u32 vdecm, bool hflip, bool vflip, int crtc_x, int crtc_y, unsigned int crtc_w, unsigned int crtc_h, u32 src_img_w, u32 src_img_h, u32 src_x, u32 src_y, u32 src_w, u32 src_h) mdp5_hwpipe_mode_set() argument 932 struct mdp5_hw_pipe *hwpipe = to_mdp5_plane_state(pstate)->hwpipe; mdp5_plane_mode_set() local [all...] |
H A D | mdp5_smp.c | 276 struct mdp5_hw_pipe *hwpipe = mdp5_kms->hwpipes[i]; in write_smp_fifo_regs() local 277 enum mdp5_pipe pipe = hwpipe->pipe; in write_smp_fifo_regs() 345 hwpstate = &global_state->hwpipe; in mdp5_smp_dump() 349 struct mdp5_hw_pipe *hwpipe = mdp5_kms->hwpipes[i]; in mdp5_smp_dump() local 350 struct drm_plane *plane = hwpstate->hwpipe_to_plane[hwpipe->idx]; in mdp5_smp_dump() 351 enum mdp5_pipe pipe = hwpipe->pipe; in mdp5_smp_dump()
|
H A D | mdp5_kms.c | 492 struct mdp5_hw_pipe *hwpipe = mdp5_kms->hwpipes[i]; in modeset_init() local 498 else if (hwpipe->caps & MDP_PIPE_CAP_CURSOR) in modeset_init() 705 struct mdp5_hw_pipe *hwpipe; in construct_pipes() local 707 hwpipe = mdp5_pipe_init(pipes[i], offsets[i], caps); in construct_pipes() 708 if (IS_ERR(hwpipe)) { in construct_pipes() 709 ret = PTR_ERR(hwpipe); in construct_pipes() 714 hwpipe->idx = mdp5_kms->num_hwpipes; in construct_pipes() 715 mdp5_kms->hwpipes[mdp5_kms->num_hwpipes++] = hwpipe; in construct_pipes()
|
H A D | mdp5_kms.h | 84 struct mdp5_hw_pipe_state hwpipe; member 93 * track assigned hwpipe and hw specific state. 98 struct mdp5_hw_pipe *hwpipe; member 99 struct mdp5_hw_pipe *r_hwpipe; /* right hwpipe */
|
/kernel/linux/linux-6.6/drivers/gpu/drm/msm/disp/mdp5/ |
H A D | mdp5_pipe.c | 11 struct mdp5_hw_pipe **hwpipe, in mdp5_pipe_assign() 27 old_state = &old_global_state->hwpipe; in mdp5_pipe_assign() 28 new_state = &new_global_state->hwpipe; in mdp5_pipe_assign() 59 if (!(*hwpipe) || (hweight_long(cur->caps & ~caps) < in mdp5_pipe_assign() 60 hweight_long((*hwpipe)->caps & ~caps))) { in mdp5_pipe_assign() 84 *hwpipe = cur; in mdp5_pipe_assign() 88 if (!(*hwpipe)) in mdp5_pipe_assign() 100 DBG("%s: alloc SMP blocks", (*hwpipe)->name); in mdp5_pipe_assign() 102 (*hwpipe)->pipe, blkcfg); in mdp5_pipe_assign() 106 (*hwpipe) in mdp5_pipe_assign() 9 mdp5_pipe_assign(struct drm_atomic_state *s, struct drm_plane *plane, uint32_t caps, uint32_t blkcfg, struct mdp5_hw_pipe **hwpipe, struct mdp5_hw_pipe **r_hwpipe) mdp5_pipe_assign() argument 122 mdp5_pipe_release(struct drm_atomic_state *s, struct mdp5_hw_pipe *hwpipe) mdp5_pipe_release() argument 154 mdp5_pipe_destroy(struct mdp5_hw_pipe *hwpipe) mdp5_pipe_destroy() argument 162 struct mdp5_hw_pipe *hwpipe; mdp5_pipe_init() local [all...] |
H A D | mdp5_pipe.h | 38 struct mdp5_hw_pipe **hwpipe, 40 int mdp5_pipe_release(struct drm_atomic_state *s, struct mdp5_hw_pipe *hwpipe); 44 void mdp5_pipe_destroy(struct mdp5_hw_pipe *hwpipe);
|
H A D | mdp5_plane.c | 82 drm_printf(p, "\thwpipe=%s\n", pstate->hwpipe ? in mdp5_plane_atomic_print_state() 83 pstate->hwpipe->name : "(null)"); in mdp5_plane_atomic_print_state() 85 drm_printf(p, "\tright-hwpipe=%s\n", in mdp5_plane_atomic_print_state() 206 * hwpipe to the right LM. So, the drm_plane would in mdp5_plane_atomic_check_with_state() 261 if (!mdp5_state->hwpipe || (caps & ~mdp5_state->hwpipe->caps)) in mdp5_plane_atomic_check_with_state() 280 if (mdp5_state->hwpipe && (mdp5_state->hwpipe->blkcfg != blkcfg)) in mdp5_plane_atomic_check_with_state() 284 /* (re)assign hwpipe if needed, otherwise keep old one: */ in mdp5_plane_atomic_check_with_state() 286 /* TODO maybe we want to re-assign hwpipe sometime in mdp5_plane_atomic_check_with_state() 761 mdp5_hwpipe_mode_set(struct mdp5_kms *mdp5_kms, struct mdp5_hw_pipe *hwpipe, struct drm_framebuffer *fb, struct phase_step *step, struct pixel_ext *pe, u32 scale_config, u32 hdecm, u32 vdecm, bool hflip, bool vflip, int crtc_x, int crtc_y, unsigned int crtc_w, unsigned int crtc_h, u32 src_img_w, u32 src_img_h, u32 src_x, u32 src_y, u32 src_w, u32 src_h) mdp5_hwpipe_mode_set() argument 863 struct mdp5_hw_pipe *hwpipe = to_mdp5_plane_state(pstate)->hwpipe; mdp5_plane_mode_set() local [all...] |
H A D | mdp5_smp.c | 276 struct mdp5_hw_pipe *hwpipe = mdp5_kms->hwpipes[i]; in write_smp_fifo_regs() local 277 enum mdp5_pipe pipe = hwpipe->pipe; in write_smp_fifo_regs() 345 hwpstate = &global_state->hwpipe; in mdp5_smp_dump() 349 struct mdp5_hw_pipe *hwpipe = mdp5_kms->hwpipes[i]; in mdp5_smp_dump() local 350 struct drm_plane *plane = hwpstate->hwpipe_to_plane[hwpipe->idx]; in mdp5_smp_dump() 351 enum mdp5_pipe pipe = hwpipe->pipe; in mdp5_smp_dump()
|
H A D | mdp5_kms.c | 467 struct mdp5_hw_pipe *hwpipe = mdp5_kms->hwpipes[i]; in modeset_init() local 473 else if (hwpipe->caps & MDP_PIPE_CAP_CURSOR) in modeset_init() 666 struct mdp5_hw_pipe *hwpipe; in construct_pipes() local 668 hwpipe = mdp5_pipe_init(pipes[i], offsets[i], caps); in construct_pipes() 669 if (IS_ERR(hwpipe)) { in construct_pipes() 670 ret = PTR_ERR(hwpipe); in construct_pipes() 675 hwpipe->idx = mdp5_kms->num_hwpipes; in construct_pipes() 676 mdp5_kms->hwpipes[mdp5_kms->num_hwpipes++] = hwpipe; in construct_pipes()
|
H A D | mdp5_kms.h | 84 struct mdp5_hw_pipe_state hwpipe; member 93 * track assigned hwpipe and hw specific state. 98 struct mdp5_hw_pipe *hwpipe; member 99 struct mdp5_hw_pipe *r_hwpipe; /* right hwpipe */
|