Message ID | 20200826052143.17607-1-kai.heng.feng@canonical.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm/i915/lspcon: Limits to 8 bpc for RGB/YCbCr444 | expand |
On Wed, Aug 26, 2020 at 01:21:15PM +0800, Kai-Heng Feng wrote: > LSPCON only supports 8 bpc for RGB/YCbCr444. > > Set the correct bpp otherwise it renders blank screen. Hmm. Does git://github.com/vsyrjala/linux.git dp_downstream_ports_5 work? Actually better make that dp_downstream_ports_5^^^^^^^^^^^ aka. 54d846ce62a2 ("drm/i915: Do YCbCr 444->420 conversion via DP protocol converters") to avoid the experiments and hacks I have sitting on top. > > Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2195 > Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > --- > drivers/gpu/drm/i915/display/intel_lspcon.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c > index b781bf469644..c7a44fcaade8 100644 > --- a/drivers/gpu/drm/i915/display/intel_lspcon.c > +++ b/drivers/gpu/drm/i915/display/intel_lspcon.c > @@ -196,7 +196,8 @@ void lspcon_ycbcr420_config(struct drm_connector *connector, > crtc_state->port_clock /= 2; > crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444; > crtc_state->lspcon_downsampling = true; > - } > + } else > + crtc_state->pipe_bpp = 24; > } > > static bool lspcon_probe(struct intel_lspcon *lspcon) > -- > 2.17.1
Hi Ville, > On Aug 27, 2020, at 12:24 AM, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote: > > On Wed, Aug 26, 2020 at 01:21:15PM +0800, Kai-Heng Feng wrote: >> LSPCON only supports 8 bpc for RGB/YCbCr444. >> >> Set the correct bpp otherwise it renders blank screen. > > Hmm. Does > git://github.com/vsyrjala/linux.git dp_downstream_ports_5 > work? > > Actually better make that dp_downstream_ports_5^^^^^^^^^^^ aka. > 54d846ce62a2 ("drm/i915: Do YCbCr 444->420 conversion via DP protocol > converters") to avoid the experiments and hacks I have sitting on top. Can you please rebase it to mainline master or drm-tip? I am getting errors on the branch: DESCEND objtool CALL scripts/atomic/check-atomics.sh CALL scripts/checksyscalls.sh CHK include/generated/compile.h Building modules, stage 2. MODPOST 166 modules LD arch/x86/boot/compressed/vmlinux ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here ld: arch/x86/boot/compressed/head_64.o: warning: relocation in read-only section `.head.text' ld: warning: creating DT_TEXTREL in a PIE make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1 make[1]: *** [arch/x86/boot/Makefile:113: arch/x86/boot/compressed/vmlinux] Error 2 make: *** [arch/x86/Makefile:284: bzImage] Error 2 make: *** Waiting for unfinished jobs.... Kai-Heng > >> >> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2195 >> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> >> --- >> drivers/gpu/drm/i915/display/intel_lspcon.c | 3 ++- >> 1 file changed, 2 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c >> index b781bf469644..c7a44fcaade8 100644 >> --- a/drivers/gpu/drm/i915/display/intel_lspcon.c >> +++ b/drivers/gpu/drm/i915/display/intel_lspcon.c >> @@ -196,7 +196,8 @@ void lspcon_ycbcr420_config(struct drm_connector *connector, >> crtc_state->port_clock /= 2; >> crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444; >> crtc_state->lspcon_downsampling = true; >> - } >> + } else >> + crtc_state->pipe_bpp = 24; >> } >> >> static bool lspcon_probe(struct intel_lspcon *lspcon) >> -- >> 2.17.1 > > -- > Ville Syrjälä > Intel
On Thu, Aug 27, 2020 at 01:04:54PM +0800, Kai Heng Feng wrote: > Hi Ville, > > > On Aug 27, 2020, at 12:24 AM, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote: > > > > On Wed, Aug 26, 2020 at 01:21:15PM +0800, Kai-Heng Feng wrote: > >> LSPCON only supports 8 bpc for RGB/YCbCr444. > >> > >> Set the correct bpp otherwise it renders blank screen. > > > > Hmm. Does > > git://github.com/vsyrjala/linux.git dp_downstream_ports_5 > > work? > > > > Actually better make that dp_downstream_ports_5^^^^^^^^^^^ aka. > > 54d846ce62a2 ("drm/i915: Do YCbCr 444->420 conversion via DP protocol > > converters") to avoid the experiments and hacks I have sitting on top. > > Can you please rebase it to mainline master or drm-tip? git://github.com/vsyrjala/linux.git dp_downstream_ports_6 I threw out the hacks/experimental stuff. > > I am getting errors on the branch: > > DESCEND objtool > CALL scripts/atomic/check-atomics.sh > CALL scripts/checksyscalls.sh > CHK include/generated/compile.h > Building modules, stage 2. > MODPOST 166 modules > LD arch/x86/boot/compressed/vmlinux > ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here > ld: arch/x86/boot/compressed/head_64.o: warning: relocation in read-only section `.head.text' > ld: warning: creating DT_TEXTREL in a PIE > make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1 > make[1]: *** [arch/x86/boot/Makefile:113: arch/x86/boot/compressed/vmlinux] Error 2 > make: *** [arch/x86/Makefile:284: bzImage] Error 2 > make: *** Waiting for unfinished jobs.... > > Kai-Heng > > > > >> > >> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2195 > >> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> > >> --- > >> drivers/gpu/drm/i915/display/intel_lspcon.c | 3 ++- > >> 1 file changed, 2 insertions(+), 1 deletion(-) > >> > >> diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c > >> index b781bf469644..c7a44fcaade8 100644 > >> --- a/drivers/gpu/drm/i915/display/intel_lspcon.c > >> +++ b/drivers/gpu/drm/i915/display/intel_lspcon.c > >> @@ -196,7 +196,8 @@ void lspcon_ycbcr420_config(struct drm_connector *connector, > >> crtc_state->port_clock /= 2; > >> crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444; > >> crtc_state->lspcon_downsampling = true; > >> - } > >> + } else > >> + crtc_state->pipe_bpp = 24; > >> } > >> > >> static bool lspcon_probe(struct intel_lspcon *lspcon) > >> -- > >> 2.17.1 > > > > -- > > Ville Syrjälä > > Intel
> On Sep 1, 2020, at 03:48, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote: > > On Thu, Aug 27, 2020 at 01:04:54PM +0800, Kai Heng Feng wrote: >> Hi Ville, >> >>> On Aug 27, 2020, at 12:24 AM, Ville Syrjälä <ville.syrjala@linux.intel.com> wrote: >>> >>> On Wed, Aug 26, 2020 at 01:21:15PM +0800, Kai-Heng Feng wrote: >>>> LSPCON only supports 8 bpc for RGB/YCbCr444. >>>> >>>> Set the correct bpp otherwise it renders blank screen. >>> >>> Hmm. Does >>> git://github.com/vsyrjala/linux.git dp_downstream_ports_5 >>> work? >>> >>> Actually better make that dp_downstream_ports_5^^^^^^^^^^^ aka. >>> 54d846ce62a2 ("drm/i915: Do YCbCr 444->420 conversion via DP protocol >>> converters") to avoid the experiments and hacks I have sitting on top. >> >> Can you please rebase it to mainline master or drm-tip? > > git://github.com/vsyrjala/linux.git dp_downstream_ports_6 Yes this solves the issue. Thanks a lot! Any timeline this will get merged? Kai-Heng > > I threw out the hacks/experimental stuff. > >> >> I am getting errors on the branch: >> >> DESCEND objtool >> CALL scripts/atomic/check-atomics.sh >> CALL scripts/checksyscalls.sh >> CHK include/generated/compile.h >> Building modules, stage 2. >> MODPOST 166 modules >> LD arch/x86/boot/compressed/vmlinux >> ld: arch/x86/boot/compressed/pgtable_64.o:(.bss+0x0): multiple definition of `__force_order'; arch/x86/boot/compressed/kaslr_64.o:(.bss+0x0): first defined here >> ld: arch/x86/boot/compressed/head_64.o: warning: relocation in read-only section `.head.text' >> ld: warning: creating DT_TEXTREL in a PIE >> make[2]: *** [arch/x86/boot/compressed/Makefile:119: arch/x86/boot/compressed/vmlinux] Error 1 >> make[1]: *** [arch/x86/boot/Makefile:113: arch/x86/boot/compressed/vmlinux] Error 2 >> make: *** [arch/x86/Makefile:284: bzImage] Error 2 >> make: *** Waiting for unfinished jobs.... >> >> Kai-Heng >> >>> >>>> >>>> Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2195 >>>> Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> >>>> --- >>>> drivers/gpu/drm/i915/display/intel_lspcon.c | 3 ++- >>>> 1 file changed, 2 insertions(+), 1 deletion(-) >>>> >>>> diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c >>>> index b781bf469644..c7a44fcaade8 100644 >>>> --- a/drivers/gpu/drm/i915/display/intel_lspcon.c >>>> +++ b/drivers/gpu/drm/i915/display/intel_lspcon.c >>>> @@ -196,7 +196,8 @@ void lspcon_ycbcr420_config(struct drm_connector *connector, >>>> crtc_state->port_clock /= 2; >>>> crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444; >>>> crtc_state->lspcon_downsampling = true; >>>> - } >>>> + } else >>>> + crtc_state->pipe_bpp = 24; >>>> } >>>> >>>> static bool lspcon_probe(struct intel_lspcon *lspcon) >>>> -- >>>> 2.17.1 >>> >>> -- >>> Ville Syrjälä >>> Intel > > -- > Ville Syrjälä > Intel
diff --git a/drivers/gpu/drm/i915/display/intel_lspcon.c b/drivers/gpu/drm/i915/display/intel_lspcon.c index b781bf469644..c7a44fcaade8 100644 --- a/drivers/gpu/drm/i915/display/intel_lspcon.c +++ b/drivers/gpu/drm/i915/display/intel_lspcon.c @@ -196,7 +196,8 @@ void lspcon_ycbcr420_config(struct drm_connector *connector, crtc_state->port_clock /= 2; crtc_state->output_format = INTEL_OUTPUT_FORMAT_YCBCR444; crtc_state->lspcon_downsampling = true; - } + } else + crtc_state->pipe_bpp = 24; } static bool lspcon_probe(struct intel_lspcon *lspcon)
LSPCON only supports 8 bpc for RGB/YCbCr444. Set the correct bpp otherwise it renders blank screen. Closes: https://gitlab.freedesktop.org/drm/intel/-/issues/2195 Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> --- drivers/gpu/drm/i915/display/intel_lspcon.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)