* fp16 support in xBGR order, and for DCE-11+ @ 2020-05-15 5:19 ` Mario Kleiner 0 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-15 5:19 UTC (permalink / raw) To: dri-devel, amd-gfx; +Cc: alexander.deucher, nicholas.kazlauskas Hi, two patches. The first one adds the xBGR ordered variants of fp16 in addition to the xRGB ordered variants that were merged just very recently. These variants are required for direct scanout of OpenGL and Vulkan rendered content, as both OpenGL (GL_RGBA16F) and Vulkan (VK_FORMAT_R16G16B16A16_SFLOAT) expect RGBA channel order for fp16, instead of the previously exposed BGRA fp16 ordering. I have a proof of concept patch against the amdvlk Vulkan driver that allows fp16 rendering and presentation with this format, but not with the xRGB format. Nicholas already has the test patch in his inbox. Results look visually correct, also when used on a HDR monitor. I also tested with Patch 2/2 on top on a Polaris11 gpu with DCE-11.2 display engine, and also got correct results, so maybe it makes sense to enable fp16 scanout support also for DCE and not only DCN? Patch 2/2 does not enable fp16 on DCE 10 or DCE 8, because i don't have hardware to test it. But it would be nice to expose fp16 on all supported display engines. Thanks, -mario _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 18+ messages in thread
* fp16 support in xBGR order, and for DCE-11+ @ 2020-05-15 5:19 ` Mario Kleiner 0 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-15 5:19 UTC (permalink / raw) To: dri-devel, amd-gfx Cc: alexander.deucher, mario.kleiner.de, nicholas.kazlauskas Hi, two patches. The first one adds the xBGR ordered variants of fp16 in addition to the xRGB ordered variants that were merged just very recently. These variants are required for direct scanout of OpenGL and Vulkan rendered content, as both OpenGL (GL_RGBA16F) and Vulkan (VK_FORMAT_R16G16B16A16_SFLOAT) expect RGBA channel order for fp16, instead of the previously exposed BGRA fp16 ordering. I have a proof of concept patch against the amdvlk Vulkan driver that allows fp16 rendering and presentation with this format, but not with the xRGB format. Nicholas already has the test patch in his inbox. Results look visually correct, also when used on a HDR monitor. I also tested with Patch 2/2 on top on a Polaris11 gpu with DCE-11.2 display engine, and also got correct results, so maybe it makes sense to enable fp16 scanout support also for DCE and not only DCN? Patch 2/2 does not enable fp16 on DCE 10 or DCE 8, because i don't have hardware to test it. But it would be nice to expose fp16 on all supported display engines. Thanks, -mario _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH 1/2] drm/amd/display: Expose support for xBGR ordered fp16 formats. 2020-05-15 5:19 ` Mario Kleiner @ 2020-05-15 5:19 ` Mario Kleiner -1 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-15 5:19 UTC (permalink / raw) To: dri-devel, amd-gfx; +Cc: alexander.deucher, nicholas.kazlauskas Expose support for DRM_FORMAT_ABGR16161616F and DRM_FORMAT_XBGR16161616F to the DRM core, complementing the already existing xRGB ordered fp16 formats. These are especially useful for creating presentable swapchains in Vulkan for VK_FORMAT_R16G16B16A16_SFLOAT. Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> --- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index 48f2b3710e7c..bd0c9eda8f93 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -3651,6 +3651,10 @@ fill_dc_plane_info_and_addr(struct amdgpu_device *adev, case DRM_FORMAT_ARGB16161616F: plane_info->format = SURFACE_PIXEL_FORMAT_GRPH_ARGB16161616F; break; + case DRM_FORMAT_XBGR16161616F: + case DRM_FORMAT_ABGR16161616F: + plane_info->format = SURFACE_PIXEL_FORMAT_GRPH_ABGR16161616F; + break; default: DRM_ERROR( "Unsupported screen format %s\n", @@ -5566,6 +5570,8 @@ static int get_plane_formats(const struct drm_plane *plane, if (plane_cap && plane_cap->pixel_format_support.fp16) { formats[num_formats++] = DRM_FORMAT_XRGB16161616F; formats[num_formats++] = DRM_FORMAT_ARGB16161616F; + formats[num_formats++] = DRM_FORMAT_XBGR16161616F; + formats[num_formats++] = DRM_FORMAT_ABGR16161616F; } break; -- 2.20.1 _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 1/2] drm/amd/display: Expose support for xBGR ordered fp16 formats. @ 2020-05-15 5:19 ` Mario Kleiner 0 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-15 5:19 UTC (permalink / raw) To: dri-devel, amd-gfx Cc: alexander.deucher, mario.kleiner.de, nicholas.kazlauskas Expose support for DRM_FORMAT_ABGR16161616F and DRM_FORMAT_XBGR16161616F to the DRM core, complementing the already existing xRGB ordered fp16 formats. These are especially useful for creating presentable swapchains in Vulkan for VK_FORMAT_R16G16B16A16_SFLOAT. Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> --- drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c index 48f2b3710e7c..bd0c9eda8f93 100644 --- a/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c +++ b/drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm.c @@ -3651,6 +3651,10 @@ fill_dc_plane_info_and_addr(struct amdgpu_device *adev, case DRM_FORMAT_ARGB16161616F: plane_info->format = SURFACE_PIXEL_FORMAT_GRPH_ARGB16161616F; break; + case DRM_FORMAT_XBGR16161616F: + case DRM_FORMAT_ABGR16161616F: + plane_info->format = SURFACE_PIXEL_FORMAT_GRPH_ABGR16161616F; + break; default: DRM_ERROR( "Unsupported screen format %s\n", @@ -5566,6 +5570,8 @@ static int get_plane_formats(const struct drm_plane *plane, if (plane_cap && plane_cap->pixel_format_support.fp16) { formats[num_formats++] = DRM_FORMAT_XRGB16161616F; formats[num_formats++] = DRM_FORMAT_ARGB16161616F; + formats[num_formats++] = DRM_FORMAT_XBGR16161616F; + formats[num_formats++] = DRM_FORMAT_ABGR16161616F; } break; -- 2.20.1 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. 2020-05-15 5:19 ` Mario Kleiner @ 2020-05-15 5:19 ` Mario Kleiner -1 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-15 5:19 UTC (permalink / raw) To: dri-devel, amd-gfx; +Cc: alexander.deucher, nicholas.kazlauskas Testing on a Polaris11 gpu with DCE-11.2 suggests that it seems to work fine there, so optimistically enable it for DCE-11 and later. Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> --- drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c index 9597fc79d7fa..a043ddae5149 100644 --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { .pixel_format_support = { .argb8888 = true, .nv12 = false, - .fp16 = false + .fp16 = true }, .max_upscale_factor = { diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c index 4a7796de2ff5..51b3fe502670 100644 --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { .pixel_format_support = { .argb8888 = true, .nv12 = false, - .fp16 = false + .fp16 = true }, .max_upscale_factor = { diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c index 9a9764cbd78d..8f362e8c1787 100644 --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { .pixel_format_support = { .argb8888 = true, .nv12 = false, - .fp16 = false + .fp16 = true }, .max_upscale_factor = { -- 2.20.1 _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply related [flat|nested] 18+ messages in thread
* [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. @ 2020-05-15 5:19 ` Mario Kleiner 0 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-15 5:19 UTC (permalink / raw) To: dri-devel, amd-gfx Cc: alexander.deucher, mario.kleiner.de, nicholas.kazlauskas Testing on a Polaris11 gpu with DCE-11.2 suggests that it seems to work fine there, so optimistically enable it for DCE-11 and later. Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> --- drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c index 9597fc79d7fa..a043ddae5149 100644 --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { .pixel_format_support = { .argb8888 = true, .nv12 = false, - .fp16 = false + .fp16 = true }, .max_upscale_factor = { diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c index 4a7796de2ff5..51b3fe502670 100644 --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { .pixel_format_support = { .argb8888 = true, .nv12 = false, - .fp16 = false + .fp16 = true }, .max_upscale_factor = { diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c index 9a9764cbd78d..8f362e8c1787 100644 --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { .pixel_format_support = { .argb8888 = true, .nv12 = false, - .fp16 = false + .fp16 = true }, .max_upscale_factor = { -- 2.20.1 _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply related [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. 2020-05-15 5:19 ` Mario Kleiner @ 2020-05-20 15:11 ` Kazlauskas, Nicholas -1 siblings, 0 replies; 18+ messages in thread From: Kazlauskas, Nicholas @ 2020-05-20 15:11 UTC (permalink / raw) To: Mario Kleiner, dri-devel, amd-gfx; +Cc: alexander.deucher On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > seems to work fine there, so optimistically enable it for > DCE-11 and later. > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> Series is: Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Thanks! > --- > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > index 9597fc79d7fa..a043ddae5149 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > index 4a7796de2ff5..51b3fe502670 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > index 9a9764cbd78d..8f362e8c1787 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. @ 2020-05-20 15:11 ` Kazlauskas, Nicholas 0 siblings, 0 replies; 18+ messages in thread From: Kazlauskas, Nicholas @ 2020-05-20 15:11 UTC (permalink / raw) To: Mario Kleiner, dri-devel, amd-gfx; +Cc: alexander.deucher On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > seems to work fine there, so optimistically enable it for > DCE-11 and later. > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> Series is: Reviewed-by: Nicholas Kazlauskas <nicholas.kazlauskas@amd.com> Thanks! > --- > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > index 9597fc79d7fa..a043ddae5149 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > index 4a7796de2ff5..51b3fe502670 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > index 9a9764cbd78d..8f362e8c1787 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. 2020-05-15 5:19 ` Mario Kleiner @ 2020-05-20 16:40 ` Harry Wentland -1 siblings, 0 replies; 18+ messages in thread From: Harry Wentland @ 2020-05-20 16:40 UTC (permalink / raw) To: Mario Kleiner, dri-devel, amd-gfx; +Cc: alexander.deucher, nicholas.kazlauskas On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > seems to work fine there, so optimistically enable it for > DCE-11 and later. > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> > --- > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > index 9597fc79d7fa..a043ddae5149 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I recommend we leave it off here. Harry > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > index 4a7796de2ff5..51b3fe502670 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > index 9a9764cbd78d..8f362e8c1787 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. @ 2020-05-20 16:40 ` Harry Wentland 0 siblings, 0 replies; 18+ messages in thread From: Harry Wentland @ 2020-05-20 16:40 UTC (permalink / raw) To: Mario Kleiner, dri-devel, amd-gfx; +Cc: alexander.deucher, nicholas.kazlauskas On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > seems to work fine there, so optimistically enable it for > DCE-11 and later. > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> > --- > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > index 9597fc79d7fa..a043ddae5149 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I recommend we leave it off here. Harry > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > index 4a7796de2ff5..51b3fe502670 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > index 9a9764cbd78d..8f362e8c1787 100644 > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > .pixel_format_support = { > .argb8888 = true, > .nv12 = false, > - .fp16 = false > + .fp16 = true > }, > > .max_upscale_factor = { > _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. 2020-05-20 16:40 ` Harry Wentland @ 2020-05-20 18:25 ` Alex Deucher -1 siblings, 0 replies; 18+ messages in thread From: Alex Deucher @ 2020-05-20 18:25 UTC (permalink / raw) To: Harry Wentland Cc: Deucher, Alexander, amd-gfx list, Maling list - DRI developers, Kazlauskas, Nicholas On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com> wrote: > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > seems to work fine there, so optimistically enable it for > > DCE-11 and later. > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> > > --- > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > index 9597fc79d7fa..a043ddae5149 100644 > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > > .pixel_format_support = { > > .argb8888 = true, > > .nv12 = false, > > - .fp16 = false > > + .fp16 = true > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > recommend we leave it off here. I'll drop this hunk for upstream. Alex > > Harry > > > }, > > > > .max_upscale_factor = { > > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > index 4a7796de2ff5..51b3fe502670 100644 > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > > .pixel_format_support = { > > .argb8888 = true, > > .nv12 = false, > > - .fp16 = false > > + .fp16 = true > > }, > > > > .max_upscale_factor = { > > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > index 9a9764cbd78d..8f362e8c1787 100644 > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > > .pixel_format_support = { > > .argb8888 = true, > > .nv12 = false, > > - .fp16 = false > > + .fp16 = true > > }, > > > > .max_upscale_factor = { > > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. @ 2020-05-20 18:25 ` Alex Deucher 0 siblings, 0 replies; 18+ messages in thread From: Alex Deucher @ 2020-05-20 18:25 UTC (permalink / raw) To: Harry Wentland Cc: Deucher, Alexander, Mario Kleiner, amd-gfx list, Maling list - DRI developers, Kazlauskas, Nicholas On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com> wrote: > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > seems to work fine there, so optimistically enable it for > > DCE-11 and later. > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> > > --- > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > index 9597fc79d7fa..a043ddae5149 100644 > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > > .pixel_format_support = { > > .argb8888 = true, > > .nv12 = false, > > - .fp16 = false > > + .fp16 = true > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > recommend we leave it off here. I'll drop this hunk for upstream. Alex > > Harry > > > }, > > > > .max_upscale_factor = { > > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > index 4a7796de2ff5..51b3fe502670 100644 > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > > .pixel_format_support = { > > .argb8888 = true, > > .nv12 = false, > > - .fp16 = false > > + .fp16 = true > > }, > > > > .max_upscale_factor = { > > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > index 9a9764cbd78d..8f362e8c1787 100644 > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > > .pixel_format_support = { > > .argb8888 = true, > > .nv12 = false, > > - .fp16 = false > > + .fp16 = true > > }, > > > > .max_upscale_factor = { > > > _______________________________________________ > dri-devel mailing list > dri-devel@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/dri-devel _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. 2020-05-20 18:25 ` Alex Deucher @ 2020-05-20 18:44 ` Mario Kleiner -1 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-20 18:44 UTC (permalink / raw) To: Alex Deucher Cc: Deucher, Alexander, Harry Wentland, amd-gfx list, Maling list - DRI developers, Kazlauskas, Nicholas [-- Attachment #1.1: Type: text/plain, Size: 3426 bytes --] On Wed, May 20, 2020 at 8:25 PM Alex Deucher <alexdeucher@gmail.com> wrote: > On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com> wrote: > > > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > > seems to work fine there, so optimistically enable it for > > > DCE-11 and later. > > > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> > > > --- > > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > index 9597fc79d7fa..a043ddae5149 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > > recommend we leave it off here. > > I'll drop this hunk for upstream. > > Alex > > Ok, no fixup patch needed from myself, thanks Alex. Does the scaling bug refer to scaling the planes (those max_downscale_factor / max_upscale_factor definitions seem to be unused) or the fp16 values itself? What about DCE 8 and DCE 10 hw capabilities wrt. fp16? Should i send fp16 enable patches for those as well? -mario > > > Harry > > > > > }, > > > > > > .max_upscale_factor = { > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > index 4a7796de2ff5..51b3fe502670 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > index 9a9764cbd78d..8f362e8c1787 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > > > _______________________________________________ > > dri-devel mailing list > > dri-devel@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > [-- Attachment #1.2: Type: text/html, Size: 4968 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. @ 2020-05-20 18:44 ` Mario Kleiner 0 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-20 18:44 UTC (permalink / raw) To: Alex Deucher Cc: Deucher, Alexander, Harry Wentland, amd-gfx list, Maling list - DRI developers, Kazlauskas, Nicholas [-- Attachment #1.1: Type: text/plain, Size: 3426 bytes --] On Wed, May 20, 2020 at 8:25 PM Alex Deucher <alexdeucher@gmail.com> wrote: > On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com> wrote: > > > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > > seems to work fine there, so optimistically enable it for > > > DCE-11 and later. > > > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com> > > > --- > > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > index 9597fc79d7fa..a043ddae5149 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > > recommend we leave it off here. > > I'll drop this hunk for upstream. > > Alex > > Ok, no fixup patch needed from myself, thanks Alex. Does the scaling bug refer to scaling the planes (those max_downscale_factor / max_upscale_factor definitions seem to be unused) or the fp16 values itself? What about DCE 8 and DCE 10 hw capabilities wrt. fp16? Should i send fp16 enable patches for those as well? -mario > > > Harry > > > > > }, > > > > > > .max_upscale_factor = { > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > index 4a7796de2ff5..51b3fe502670 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > diff --git a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > index 9a9764cbd78d..8f362e8c1787 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > > > _______________________________________________ > > dri-devel mailing list > > dri-devel@lists.freedesktop.org > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > [-- Attachment #1.2: Type: text/html, Size: 4968 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. 2020-05-20 18:44 ` Mario Kleiner @ 2020-05-20 19:07 ` Kazlauskas, Nicholas -1 siblings, 0 replies; 18+ messages in thread From: Kazlauskas, Nicholas @ 2020-05-20 19:07 UTC (permalink / raw) To: Mario Kleiner, Alex Deucher Cc: Deucher, Alexander, Harry Wentland, amd-gfx list, Maling list - DRI developers On 2020-05-20 2:44 p.m., Mario Kleiner wrote: > On Wed, May 20, 2020 at 8:25 PM Alex Deucher <alexdeucher@gmail.com > <mailto:alexdeucher@gmail.com>> wrote: > > On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com > <mailto:hwentlan@amd.com>> wrote: > > > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > > seems to work fine there, so optimistically enable it for > > > DCE-11 and later. > > > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com > <mailto:mario.kleiner.de@gmail.com>> > > > --- > > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > > > diff --git > a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > index 9597fc79d7fa..a043ddae5149 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > > recommend we leave it off here. > > I'll drop this hunk for upstream. > > Alex > > > Ok, no fixup patch needed from myself, thanks Alex. Does the scaling bug > refer to scaling the planes (those max_downscale_factor / > max_upscale_factor definitions seem to be unused) or the fp16 values itself? > > What about DCE 8 and DCE 10 hw capabilities wrt. fp16? Should i send > fp16 enable patches for those as well? > > -mario Yeah, the upscale and downscale factors were intended to block FP16 accepted and reject the commit but I guess nobody ever added those to atomic check. I reviewed the patch with the idea in mind that we already blocked this on a DC level. We can re-enable it in the caps after this is in I think. Off the top of my head I don't remember what DCE8/DCE10 supports, but I'm also not sure if they even support sending the SDP message for those to really be usable. Regards, Nicholas Kazlauskas > > > > > Harry > > > > > }, > > > > > > .max_upscale_factor = { > > > diff --git > a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > index 4a7796de2ff5..51b3fe502670 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > diff --git > a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > index 9a9764cbd78d..8f362e8c1787 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > > > _______________________________________________ > > dri-devel mailing list > > dri-devel@lists.freedesktop.org > <mailto:dri-devel@lists.freedesktop.org> > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > <https://lists.freedesktop.org/mailman/listinfo/dri-devel> > _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. @ 2020-05-20 19:07 ` Kazlauskas, Nicholas 0 siblings, 0 replies; 18+ messages in thread From: Kazlauskas, Nicholas @ 2020-05-20 19:07 UTC (permalink / raw) To: Mario Kleiner, Alex Deucher Cc: Deucher, Alexander, Harry Wentland, amd-gfx list, Maling list - DRI developers On 2020-05-20 2:44 p.m., Mario Kleiner wrote: > On Wed, May 20, 2020 at 8:25 PM Alex Deucher <alexdeucher@gmail.com > <mailto:alexdeucher@gmail.com>> wrote: > > On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com > <mailto:hwentlan@amd.com>> wrote: > > > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > > seems to work fine there, so optimistically enable it for > > > DCE-11 and later. > > > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com > <mailto:mario.kleiner.de@gmail.com>> > > > --- > > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > > > diff --git > a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > index 9597fc79d7fa..a043ddae5149 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > > recommend we leave it off here. > > I'll drop this hunk for upstream. > > Alex > > > Ok, no fixup patch needed from myself, thanks Alex. Does the scaling bug > refer to scaling the planes (those max_downscale_factor / > max_upscale_factor definitions seem to be unused) or the fp16 values itself? > > What about DCE 8 and DCE 10 hw capabilities wrt. fp16? Should i send > fp16 enable patches for those as well? > > -mario Yeah, the upscale and downscale factors were intended to block FP16 accepted and reject the commit but I guess nobody ever added those to atomic check. I reviewed the patch with the idea in mind that we already blocked this on a DC level. We can re-enable it in the caps after this is in I think. Off the top of my head I don't remember what DCE8/DCE10 supports, but I'm also not sure if they even support sending the SDP message for those to really be usable. Regards, Nicholas Kazlauskas > > > > > Harry > > > > > }, > > > > > > .max_upscale_factor = { > > > diff --git > a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > index 4a7796de2ff5..51b3fe502670 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > diff --git > a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > index 9a9764cbd78d..8f362e8c1787 100644 > > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap = { > > > .pixel_format_support = { > > > .argb8888 = true, > > > .nv12 = false, > > > - .fp16 = false > > > + .fp16 = true > > > }, > > > > > > .max_upscale_factor = { > > > > > _______________________________________________ > > dri-devel mailing list > > dri-devel@lists.freedesktop.org > <mailto:dri-devel@lists.freedesktop.org> > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > <https://lists.freedesktop.org/mailman/listinfo/dri-devel> > _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. 2020-05-20 19:07 ` Kazlauskas, Nicholas @ 2020-05-20 19:57 ` Mario Kleiner -1 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-20 19:57 UTC (permalink / raw) To: Kazlauskas, Nicholas Cc: Deucher, Alexander, Harry Wentland, amd-gfx list, Maling list - DRI developers [-- Attachment #1.1: Type: text/plain, Size: 5290 bytes --] On Wed, May 20, 2020 at 9:07 PM Kazlauskas, Nicholas < nicholas.kazlauskas@amd.com> wrote: > On 2020-05-20 2:44 p.m., Mario Kleiner wrote: > > On Wed, May 20, 2020 at 8:25 PM Alex Deucher <alexdeucher@gmail.com > > <mailto:alexdeucher@gmail.com>> wrote: > > > > On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com > > <mailto:hwentlan@amd.com>> wrote: > > > > > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > > > seems to work fine there, so optimistically enable it for > > > > DCE-11 and later. > > > > > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com > > <mailto:mario.kleiner.de@gmail.com>> > > > > --- > > > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > > > > > diff --git > > a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > > index 9597fc79d7fa..a043ddae5149 100644 > > > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap > = { > > > > .pixel_format_support = { > > > > .argb8888 = true, > > > > .nv12 = false, > > > > - .fp16 = false > > > > + .fp16 = true > > > > > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > > > recommend we leave it off here. > > > > I'll drop this hunk for upstream. > > > > Alex > > > > > > Ok, no fixup patch needed from myself, thanks Alex. Does the scaling bug > > refer to scaling the planes (those max_downscale_factor / > > max_upscale_factor definitions seem to be unused) or the fp16 values > itself? > > > > What about DCE 8 and DCE 10 hw capabilities wrt. fp16? Should i send > > fp16 enable patches for those as well? > > > > -mario > > Yeah, the upscale and downscale factors were intended to block FP16 > accepted and reject the commit but I guess nobody ever added those to > atomic check. > > I reviewed the patch with the idea in mind that we already blocked this > on a DC level. We can re-enable it in the caps after this is in I think. > > Off the top of my head I don't remember what DCE8/DCE10 supports, but > I'm also not sure if they even support sending the SDP message for those > to really be usable. > While HDR is the typical user for fp16, even on SDR displays, without any HDR signalling, fp16 should give an additional bit of precision ~ 11 bpc effective in standard 0.0 - 1.0 unorm range on a 12 bit pipeline with a 12 bpc panel or even on a 10 bpc panel with dithering. Useful for neuroscience/medical research applications or the color precision obsessed people. I take every bit i can get ;) -mario > Regards, > Nicholas Kazlauskas > > > > > > > > > Harry > > > > > > > }, > > > > > > > > .max_upscale_factor = { > > > > diff --git > > a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > > index 4a7796de2ff5..51b3fe502670 100644 > > > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap > = { > > > > .pixel_format_support = { > > > > .argb8888 = true, > > > > .nv12 = false, > > > > - .fp16 = false > > > > + .fp16 = true > > > > }, > > > > > > > > .max_upscale_factor = { > > > > diff --git > > a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > > index 9a9764cbd78d..8f362e8c1787 100644 > > > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap > = { > > > > .pixel_format_support = { > > > > .argb8888 = true, > > > > .nv12 = false, > > > > - .fp16 = false > > > > + .fp16 = true > > > > }, > > > > > > > > .max_upscale_factor = { > > > > > > > _______________________________________________ > > > dri-devel mailing list > > > dri-devel@lists.freedesktop.org > > <mailto:dri-devel@lists.freedesktop.org> > > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > > <https://lists.freedesktop.org/mailman/listinfo/dri-devel> > > > > [-- Attachment #1.2: Type: text/html, Size: 7928 bytes --] [-- Attachment #2: Type: text/plain, Size: 160 bytes --] _______________________________________________ dri-devel mailing list dri-devel@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/dri-devel ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12. @ 2020-05-20 19:57 ` Mario Kleiner 0 siblings, 0 replies; 18+ messages in thread From: Mario Kleiner @ 2020-05-20 19:57 UTC (permalink / raw) To: Kazlauskas, Nicholas Cc: Alex Deucher, Deucher, Alexander, Harry Wentland, amd-gfx list, Maling list - DRI developers [-- Attachment #1.1: Type: text/plain, Size: 5290 bytes --] On Wed, May 20, 2020 at 9:07 PM Kazlauskas, Nicholas < nicholas.kazlauskas@amd.com> wrote: > On 2020-05-20 2:44 p.m., Mario Kleiner wrote: > > On Wed, May 20, 2020 at 8:25 PM Alex Deucher <alexdeucher@gmail.com > > <mailto:alexdeucher@gmail.com>> wrote: > > > > On Wed, May 20, 2020 at 12:39 PM Harry Wentland <hwentlan@amd.com > > <mailto:hwentlan@amd.com>> wrote: > > > > > > On 2020-05-15 1:19 a.m., Mario Kleiner wrote: > > > > Testing on a Polaris11 gpu with DCE-11.2 suggests that it > > > > seems to work fine there, so optimistically enable it for > > > > DCE-11 and later. > > > > > > > > Signed-off-by: Mario Kleiner <mario.kleiner.de@gmail.com > > <mailto:mario.kleiner.de@gmail.com>> > > > > --- > > > > drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c | 2 +- > > > > drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c | 2 +- > > > > drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c | 2 +- > > > > 3 files changed, 3 insertions(+), 3 deletions(-) > > > > > > > > diff --git > > a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > > index 9597fc79d7fa..a043ddae5149 100644 > > > > --- a/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > > +++ b/drivers/gpu/drm/amd/display/dc/dce110/dce110_resource.c > > > > @@ -410,7 +410,7 @@ static const struct dc_plane_cap plane_cap > = { > > > > .pixel_format_support = { > > > > .argb8888 = true, > > > > .nv12 = false, > > > > - .fp16 = false > > > > + .fp16 = true > > > > > > Carrizo (DCE 11.0) has a HW bug where FP16 scaling doesn't work. I > > > recommend we leave it off here. > > > > I'll drop this hunk for upstream. > > > > Alex > > > > > > Ok, no fixup patch needed from myself, thanks Alex. Does the scaling bug > > refer to scaling the planes (those max_downscale_factor / > > max_upscale_factor definitions seem to be unused) or the fp16 values > itself? > > > > What about DCE 8 and DCE 10 hw capabilities wrt. fp16? Should i send > > fp16 enable patches for those as well? > > > > -mario > > Yeah, the upscale and downscale factors were intended to block FP16 > accepted and reject the commit but I guess nobody ever added those to > atomic check. > > I reviewed the patch with the idea in mind that we already blocked this > on a DC level. We can re-enable it in the caps after this is in I think. > > Off the top of my head I don't remember what DCE8/DCE10 supports, but > I'm also not sure if they even support sending the SDP message for those > to really be usable. > While HDR is the typical user for fp16, even on SDR displays, without any HDR signalling, fp16 should give an additional bit of precision ~ 11 bpc effective in standard 0.0 - 1.0 unorm range on a 12 bit pipeline with a 12 bpc panel or even on a 10 bpc panel with dithering. Useful for neuroscience/medical research applications or the color precision obsessed people. I take every bit i can get ;) -mario > Regards, > Nicholas Kazlauskas > > > > > > > > > Harry > > > > > > > }, > > > > > > > > .max_upscale_factor = { > > > > diff --git > > a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > > index 4a7796de2ff5..51b3fe502670 100644 > > > > --- a/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > > +++ b/drivers/gpu/drm/amd/display/dc/dce112/dce112_resource.c > > > > @@ -411,7 +411,7 @@ static const struct dc_plane_cap plane_cap > = { > > > > .pixel_format_support = { > > > > .argb8888 = true, > > > > .nv12 = false, > > > > - .fp16 = false > > > > + .fp16 = true > > > > }, > > > > > > > > .max_upscale_factor = { > > > > diff --git > > a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > > index 9a9764cbd78d..8f362e8c1787 100644 > > > > --- a/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > > +++ b/drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c > > > > @@ -516,7 +516,7 @@ static const struct dc_plane_cap plane_cap > = { > > > > .pixel_format_support = { > > > > .argb8888 = true, > > > > .nv12 = false, > > > > - .fp16 = false > > > > + .fp16 = true > > > > }, > > > > > > > > .max_upscale_factor = { > > > > > > > _______________________________________________ > > > dri-devel mailing list > > > dri-devel@lists.freedesktop.org > > <mailto:dri-devel@lists.freedesktop.org> > > > https://lists.freedesktop.org/mailman/listinfo/dri-devel > > <https://lists.freedesktop.org/mailman/listinfo/dri-devel> > > > > [-- Attachment #1.2: Type: text/html, Size: 7928 bytes --] [-- Attachment #2: Type: text/plain, Size: 154 bytes --] _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2020-05-20 19:58 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2020-05-15 5:19 fp16 support in xBGR order, and for DCE-11+ Mario Kleiner 2020-05-15 5:19 ` Mario Kleiner 2020-05-15 5:19 ` [PATCH 1/2] drm/amd/display: Expose support for xBGR ordered fp16 formats Mario Kleiner 2020-05-15 5:19 ` Mario Kleiner 2020-05-15 5:19 ` [PATCH 2/2] drm/amd/display: Enable fp16 also on DCE-11.0 - DCE-12 Mario Kleiner 2020-05-15 5:19 ` Mario Kleiner 2020-05-20 15:11 ` Kazlauskas, Nicholas 2020-05-20 15:11 ` Kazlauskas, Nicholas 2020-05-20 16:40 ` Harry Wentland 2020-05-20 16:40 ` Harry Wentland 2020-05-20 18:25 ` Alex Deucher 2020-05-20 18:25 ` Alex Deucher 2020-05-20 18:44 ` Mario Kleiner 2020-05-20 18:44 ` Mario Kleiner 2020-05-20 19:07 ` Kazlauskas, Nicholas 2020-05-20 19:07 ` Kazlauskas, Nicholas 2020-05-20 19:57 ` Mario Kleiner 2020-05-20 19:57 ` Mario Kleiner
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.