Am 29.12.20 um 22:10 schrieb Zhan Liu:
[Why]
Driver cannot change amdgpu framebuffer (afb) format while doing
page flip. Force system doing so will cause ioctl error, and result in
breaking several functionalities including FreeSync.
If afb format is forced to change during page flip, following message
will appear in dmesg.log:
"[drm:drm_mode_page_flip_ioctl [drm]]
Page flip is not allowed to change frame buffer format."
[How]
Do not change afb format while doing page flip. It is okay to check
whether afb format is valid here, however, forcing afb format change
shouldn't happen here.
I don't think this we can do this.
It is perfectly valid for a page flip to switch between linear and tiled
formats on an I+A or A+A laptop.
Christian.
Signed-off-by: Zhan Liu <zhan.liu@xxxxxxx>
---
drivers/gpu/drm/amd/amdgpu/amdgpu_display.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Thanks Nick and Bas. Here is my second patch for review.
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
index a638709e9c92..8a12e27ff4ec 100644
--- a/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
+++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_display.c
@@ -832,7 +832,8 @@ static int convert_tiling_flags_to_modifier(struct amdgpu_framebuffer *afb)
if (!format_info)
return -EINVAL;
- afb->base.format = format_info;
+ if (!afb->base.format)
+ afb->base.format = format_info;
}
}
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel