mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-25 15:15:33 +08:00
drm: mali-dp: Fix bug on scaling with rotation
In the case, when the user wants to scale and rotate a layer by 90/270 degrees, the scaling engine input dimensions' parameters ie width and height needs to be swapped with respect to the layer's input dimensions. This means scaling engine input height should be set to layer's input width and scaling engine input width should be set to layer's input height. Signed-off-by: Ayan Halder <ayan.halder@arm.com> Signed-off-by: Liviu Dudau <liviu.dudau@arm.com>
This commit is contained in:
parent
e0521c05c1
commit
6cc3a505dc
@ -288,8 +288,14 @@ static int malidp_crtc_atomic_check_scaling(struct drm_crtc *crtc,
|
||||
s->enhancer_enable = ((h_upscale_factor >> 16) >= 2 ||
|
||||
(v_upscale_factor >> 16) >= 2);
|
||||
|
||||
s->input_w = pstate->src_w >> 16;
|
||||
s->input_h = pstate->src_h >> 16;
|
||||
if (pstate->rotation & MALIDP_ROTATED_MASK) {
|
||||
s->input_w = pstate->src_h >> 16;
|
||||
s->input_h = pstate->src_w >> 16;
|
||||
} else {
|
||||
s->input_w = pstate->src_w >> 16;
|
||||
s->input_h = pstate->src_h >> 16;
|
||||
}
|
||||
|
||||
s->output_w = pstate->crtc_w;
|
||||
s->output_h = pstate->crtc_h;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user