* [PATCH 4.15] drm/amd/display: call set csc_default if enable adjustment is false
@ 2017-12-29 11:11 Daniel Drake
[not found] ` <20171229111118.10645-1-drake-6IF/jdPJHihWk0Htik3J/w@public.gmane.org>
0 siblings, 1 reply; 3+ messages in thread
From: Daniel Drake @ 2017-12-29 11:11 UTC (permalink / raw)
To: alexander.deucher, christian.koenig
Cc: Yuehin.Lau, chiu, linux, dri-devel, amd-gfx
From: Yue Hin Lau <Yuehin.Lau@amd.com>
Signed-off-by: Yue Hin Lau <Yuehin.Lau@amd.com>
Reviewed-by: Eric Bernstein <Eric.Bernstein@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
[drake@endlessm.com: backport to 4.15]
Signed-off-by: Daniel Drake <drake@endlessm.com>
---
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h | 2 +-
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c | 6 ++----
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 2 ++
drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h | 2 +-
4 files changed, 6 insertions(+), 6 deletions(-)
Testing Acer Aspire TC-380 engineering sample (Raven Ridge), the display
comes up with an excessively green tint. This patch (from amd-staging-drm-next)
solves the issue. Can it be included in Linux 4.15?
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h
index a9782b1aba47..34daf895f848 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h
@@ -1360,7 +1360,7 @@ void dpp1_cm_set_output_csc_adjustment(
void dpp1_cm_set_output_csc_default(
struct dpp *dpp_base,
- const struct default_adjustment *default_adjust);
+ enum dc_color_space colorspace);
void dpp1_cm_set_gamut_remap(
struct dpp *dpp,
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c
index 40627c244bf5..ed1216b53465 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c
@@ -225,14 +225,13 @@ void dpp1_cm_set_gamut_remap(
void dpp1_cm_set_output_csc_default(
struct dpp *dpp_base,
- const struct default_adjustment *default_adjust)
+ enum dc_color_space colorspace)
{
struct dcn10_dpp *dpp = TO_DCN10_DPP(dpp_base);
uint32_t ocsc_mode = 0;
- if (default_adjust != NULL) {
- switch (default_adjust->out_color_space) {
+ switch (colorspace) {
case COLOR_SPACE_SRGB:
case COLOR_SPACE_2020_RGB_FULLRANGE:
ocsc_mode = 0;
@@ -253,7 +252,6 @@ void dpp1_cm_set_output_csc_default(
case COLOR_SPACE_UNKNOWN:
default:
break;
- }
}
REG_SET(CM_OCSC_CONTROL, 0, CM_OCSC_MODE, ocsc_mode);
diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
index 961ad5c3b454..05dc01e54531 100644
--- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
+++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c
@@ -2097,6 +2097,8 @@ static void program_csc_matrix(struct pipe_ctx *pipe_ctx,
tbl_entry.color_space = color_space;
//tbl_entry.regval = matrix;
pipe_ctx->plane_res.dpp->funcs->opp_set_csc_adjustment(pipe_ctx->plane_res.dpp, &tbl_entry);
+ } else {
+ pipe_ctx->plane_res.dpp->funcs->opp_set_csc_default(pipe_ctx->plane_res.dpp, colorspace);
}
}
static bool is_lower_pipe_tree_visible(struct pipe_ctx *pipe_ctx)
diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h b/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h
index 83a68460edcd..9420dfb94d39 100644
--- a/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h
+++ b/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h
@@ -64,7 +64,7 @@ struct dpp_funcs {
void (*opp_set_csc_default)(
struct dpp *dpp,
- const struct default_adjustment *default_adjust);
+ enum dc_color_space colorspace);
void (*opp_set_csc_adjustment)(
struct dpp *dpp,
--
2.14.1
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 3+ messages in thread[parent not found: <20171229111118.10645-1-drake-6IF/jdPJHihWk0Htik3J/w@public.gmane.org>]
* Re: [PATCH 4.15] drm/amd/display: call set csc_default if enable adjustment is false [not found] ` <20171229111118.10645-1-drake-6IF/jdPJHihWk0Htik3J/w@public.gmane.org> @ 2017-12-31 15:17 ` Alex Deucher [not found] ` <CADnq5_P85jbAC4y4ESotA6WC9JCLVwR7OzFxRhr-6P1QgqdaXA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 0 siblings, 1 reply; 3+ messages in thread From: Alex Deucher @ 2017-12-31 15:17 UTC (permalink / raw) To: Daniel Drake Cc: Yuehin.Lau-5C7GfCeVMHo, Chris Chiu, Maling list - DRI developers, amd-gfx list, Deucher, Alexander, Linux Upstreaming Team, Christian Koenig On Fri, Dec 29, 2017 at 6:11 AM, Daniel Drake <drake@endlessm.com> wrote: > From: Yue Hin Lau <Yuehin.Lau@amd.com> > > Signed-off-by: Yue Hin Lau <Yuehin.Lau@amd.com> > Reviewed-by: Eric Bernstein <Eric.Bernstein@amd.com> > Acked-by: Harry Wentland <harry.wentland@amd.com> > Signed-off-by: Alex Deucher <alexander.deucher@amd.com> > [drake@endlessm.com: backport to 4.15] > Signed-off-by: Daniel Drake <drake@endlessm.com> > --- > drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h | 2 +- > drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c | 6 ++---- > drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 2 ++ > drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h | 2 +- > 4 files changed, 6 insertions(+), 6 deletions(-) > > Testing Acer Aspire TC-380 engineering sample (Raven Ridge), the display > comes up with an excessively green tint. This patch (from amd-staging-drm-next) > solves the issue. Can it be included in Linux 4.15? Looks ok to me. Unless Harry or Leo have any objections, I'll add it to my queue. Thanks! Alex > > diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h > index a9782b1aba47..34daf895f848 100644 > --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h > +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h > @@ -1360,7 +1360,7 @@ void dpp1_cm_set_output_csc_adjustment( > > void dpp1_cm_set_output_csc_default( > struct dpp *dpp_base, > - const struct default_adjustment *default_adjust); > + enum dc_color_space colorspace); > > void dpp1_cm_set_gamut_remap( > struct dpp *dpp, > diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c > index 40627c244bf5..ed1216b53465 100644 > --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c > +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c > @@ -225,14 +225,13 @@ void dpp1_cm_set_gamut_remap( > > void dpp1_cm_set_output_csc_default( > struct dpp *dpp_base, > - const struct default_adjustment *default_adjust) > + enum dc_color_space colorspace) > { > > struct dcn10_dpp *dpp = TO_DCN10_DPP(dpp_base); > uint32_t ocsc_mode = 0; > > - if (default_adjust != NULL) { > - switch (default_adjust->out_color_space) { > + switch (colorspace) { > case COLOR_SPACE_SRGB: > case COLOR_SPACE_2020_RGB_FULLRANGE: > ocsc_mode = 0; > @@ -253,7 +252,6 @@ void dpp1_cm_set_output_csc_default( > case COLOR_SPACE_UNKNOWN: > default: > break; > - } > } > > REG_SET(CM_OCSC_CONTROL, 0, CM_OCSC_MODE, ocsc_mode); > diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c > index 961ad5c3b454..05dc01e54531 100644 > --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c > +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c > @@ -2097,6 +2097,8 @@ static void program_csc_matrix(struct pipe_ctx *pipe_ctx, > tbl_entry.color_space = color_space; > //tbl_entry.regval = matrix; > pipe_ctx->plane_res.dpp->funcs->opp_set_csc_adjustment(pipe_ctx->plane_res.dpp, &tbl_entry); > + } else { > + pipe_ctx->plane_res.dpp->funcs->opp_set_csc_default(pipe_ctx->plane_res.dpp, colorspace); > } > } > static bool is_lower_pipe_tree_visible(struct pipe_ctx *pipe_ctx) > diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h b/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h > index 83a68460edcd..9420dfb94d39 100644 > --- a/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h > +++ b/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h > @@ -64,7 +64,7 @@ struct dpp_funcs { > > void (*opp_set_csc_default)( > struct dpp *dpp, > - const struct default_adjustment *default_adjust); > + enum dc_color_space colorspace); > > void (*opp_set_csc_adjustment)( > struct dpp *dpp, > -- > 2.14.1 > > _______________________________________________ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 3+ messages in thread
[parent not found: <CADnq5_P85jbAC4y4ESotA6WC9JCLVwR7OzFxRhr-6P1QgqdaXA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>]
* Re: [PATCH 4.15] drm/amd/display: call set csc_default if enable adjustment is false [not found] ` <CADnq5_P85jbAC4y4ESotA6WC9JCLVwR7OzFxRhr-6P1QgqdaXA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> @ 2018-01-03 14:40 ` Harry Wentland 0 siblings, 0 replies; 3+ messages in thread From: Harry Wentland @ 2018-01-03 14:40 UTC (permalink / raw) To: Alex Deucher, Daniel Drake Cc: Yuehin.Lau-5C7GfCeVMHo, Chris Chiu, amd-gfx list, Maling list - DRI developers, Deucher, Alexander, Linux Upstreaming Team, Christian Koenig On 2017-12-31 10:17 AM, Alex Deucher wrote: > On Fri, Dec 29, 2017 at 6:11 AM, Daniel Drake <drake@endlessm.com> wrote: >> From: Yue Hin Lau <Yuehin.Lau@amd.com> >> >> Signed-off-by: Yue Hin Lau <Yuehin.Lau@amd.com> >> Reviewed-by: Eric Bernstein <Eric.Bernstein@amd.com> >> Acked-by: Harry Wentland <harry.wentland@amd.com> >> Signed-off-by: Alex Deucher <alexander.deucher@amd.com> >> [drake@endlessm.com: backport to 4.15] >> Signed-off-by: Daniel Drake <drake@endlessm.com> >> --- >> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h | 2 +- >> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c | 6 ++---- >> drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c | 2 ++ >> drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h | 2 +- >> 4 files changed, 6 insertions(+), 6 deletions(-) >> >> Testing Acer Aspire TC-380 engineering sample (Raven Ridge), the display >> comes up with an excessively green tint. This patch (from amd-staging-drm-next) >> solves the issue. Can it be included in Linux 4.15? > > Looks ok to me. Unless Harry or Leo have any objections, I'll add it > to my queue. > No objections. Thanks, Daniel. Harry > Thanks! > > Alex > > >> >> diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h >> index a9782b1aba47..34daf895f848 100644 >> --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h >> +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp.h >> @@ -1360,7 +1360,7 @@ void dpp1_cm_set_output_csc_adjustment( >> >> void dpp1_cm_set_output_csc_default( >> struct dpp *dpp_base, >> - const struct default_adjustment *default_adjust); >> + enum dc_color_space colorspace); >> >> void dpp1_cm_set_gamut_remap( >> struct dpp *dpp, >> diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c >> index 40627c244bf5..ed1216b53465 100644 >> --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c >> +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_dpp_cm.c >> @@ -225,14 +225,13 @@ void dpp1_cm_set_gamut_remap( >> >> void dpp1_cm_set_output_csc_default( >> struct dpp *dpp_base, >> - const struct default_adjustment *default_adjust) >> + enum dc_color_space colorspace) >> { >> >> struct dcn10_dpp *dpp = TO_DCN10_DPP(dpp_base); >> uint32_t ocsc_mode = 0; >> >> - if (default_adjust != NULL) { >> - switch (default_adjust->out_color_space) { >> + switch (colorspace) { >> case COLOR_SPACE_SRGB: >> case COLOR_SPACE_2020_RGB_FULLRANGE: >> ocsc_mode = 0; >> @@ -253,7 +252,6 @@ void dpp1_cm_set_output_csc_default( >> case COLOR_SPACE_UNKNOWN: >> default: >> break; >> - } >> } >> >> REG_SET(CM_OCSC_CONTROL, 0, CM_OCSC_MODE, ocsc_mode); >> diff --git a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c >> index 961ad5c3b454..05dc01e54531 100644 >> --- a/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c >> +++ b/drivers/gpu/drm/amd/display/dc/dcn10/dcn10_hw_sequencer.c >> @@ -2097,6 +2097,8 @@ static void program_csc_matrix(struct pipe_ctx *pipe_ctx, >> tbl_entry.color_space = color_space; >> //tbl_entry.regval = matrix; >> pipe_ctx->plane_res.dpp->funcs->opp_set_csc_adjustment(pipe_ctx->plane_res.dpp, &tbl_entry); >> + } else { >> + pipe_ctx->plane_res.dpp->funcs->opp_set_csc_default(pipe_ctx->plane_res.dpp, colorspace); >> } >> } >> static bool is_lower_pipe_tree_visible(struct pipe_ctx *pipe_ctx) >> diff --git a/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h b/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h >> index 83a68460edcd..9420dfb94d39 100644 >> --- a/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h >> +++ b/drivers/gpu/drm/amd/display/dc/inc/hw/dpp.h >> @@ -64,7 +64,7 @@ struct dpp_funcs { >> >> void (*opp_set_csc_default)( >> struct dpp *dpp, >> - const struct default_adjustment *default_adjust); >> + enum dc_color_space colorspace); >> >> void (*opp_set_csc_adjustment)( >> struct dpp *dpp, >> -- >> 2.14.1 >> >> _______________________________________________ >> amd-gfx mailing list >> amd-gfx@lists.freedesktop.org >> https://lists.freedesktop.org/mailman/listinfo/amd-gfx > _______________________________________________ > amd-gfx mailing list > amd-gfx@lists.freedesktop.org > https://lists.freedesktop.org/mailman/listinfo/amd-gfx > _______________________________________________ amd-gfx mailing list amd-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/amd-gfx ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2018-01-03 14:40 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-12-29 11:11 [PATCH 4.15] drm/amd/display: call set csc_default if enable adjustment is false Daniel Drake
[not found] ` <20171229111118.10645-1-drake-6IF/jdPJHihWk0Htik3J/w@public.gmane.org>
2017-12-31 15:17 ` Alex Deucher
[not found] ` <CADnq5_P85jbAC4y4ESotA6WC9JCLVwR7OzFxRhr-6P1QgqdaXA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2018-01-03 14:40 ` Harry Wentland
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox