Message ID | 20241009-sm8650-v6-11-hmd-pocf-mdss-quad-upstream-21-v2-11-76d4f5d413bf@linaro.org (mailing list archive) |
---|---|
State | Not Applicable |
Headers | show |
Series | drm/msm/dpu: Support quad pipe with dual-DSI | expand |
On Wed, Oct 09, 2024 at 04:50:24PM GMT, Jun Nie wrote: > Share SSPP info for multi-rect case if virtual plane is not enabled. > Otherwise, the 2nd half of DMA content is not displayed due to sspp > pointer of r_pipe is null. Fixes? > > Signed-off-by: Jun Nie <jun.nie@linaro.org> > --- > drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > index 904ebec1c8a18..898fc2937954e 100644 > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > @@ -1042,6 +1042,11 @@ static int dpu_plane_atomic_check(struct drm_plane *plane, > pipe->multirect_index = DPU_SSPP_RECT_0; > pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; > > + /* > + * Signifies that r_pipe is to be used if the width of the 2nd > + * pipe is not 0. This does not apply to virtual plane case. > + */ > + r_pipe->sspp = pipe->sspp; > r_pipe->multirect_index = DPU_SSPP_RECT_1; > r_pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; > } > > -- > 2.34.1 >
Dmitry Baryshkov <dmitry.baryshkov@linaro.org> 于2024年10月10日周四 21:21写道: > > On Wed, Oct 09, 2024 at 04:50:24PM GMT, Jun Nie wrote: > > Share SSPP info for multi-rect case if virtual plane is not enabled. > > Otherwise, the 2nd half of DMA content is not displayed due to sspp > > pointer of r_pipe is null. > > Fixes? Yeah. It is to fix bug in non virtual plane mode. Do you suggest to split to another patch set? > > > > > Signed-off-by: Jun Nie <jun.nie@linaro.org> > > --- > > drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 5 +++++ > > 1 file changed, 5 insertions(+) > > > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > > index 904ebec1c8a18..898fc2937954e 100644 > > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > > @@ -1042,6 +1042,11 @@ static int dpu_plane_atomic_check(struct drm_plane *plane, > > pipe->multirect_index = DPU_SSPP_RECT_0; > > pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; > > > > + /* > > + * Signifies that r_pipe is to be used if the width of the 2nd > > + * pipe is not 0. This does not apply to virtual plane case. > > + */ > > + r_pipe->sspp = pipe->sspp; > > r_pipe->multirect_index = DPU_SSPP_RECT_1; > > r_pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; > > } > > > > -- > > 2.34.1 > > > > -- > With best wishes > Dmitry
On Fri, 11 Oct 2024 at 09:54, Jun Nie <jun.nie@linaro.org> wrote: > > Dmitry Baryshkov <dmitry.baryshkov@linaro.org> 于2024年10月10日周四 21:21写道: > > > > On Wed, Oct 09, 2024 at 04:50:24PM GMT, Jun Nie wrote: > > > Share SSPP info for multi-rect case if virtual plane is not enabled. > > > Otherwise, the 2nd half of DMA content is not displayed due to sspp > > > pointer of r_pipe is null. > > > > Fixes? > > Yeah. It is to fix bug in non virtual plane mode. Do you suggest to split > to another patch set? No, I suggest to add Fixes trailer and to move fixes to the top of the series. > > > > > > > > Signed-off-by: Jun Nie <jun.nie@linaro.org> > > > --- > > > drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 5 +++++ > > > 1 file changed, 5 insertions(+) > > > > > > diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > > > index 904ebec1c8a18..898fc2937954e 100644 > > > --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > > > +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c > > > @@ -1042,6 +1042,11 @@ static int dpu_plane_atomic_check(struct drm_plane *plane, > > > pipe->multirect_index = DPU_SSPP_RECT_0; > > > pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; > > > > > > + /* > > > + * Signifies that r_pipe is to be used if the width of the 2nd > > > + * pipe is not 0. This does not apply to virtual plane case. > > > + */ > > > + r_pipe->sspp = pipe->sspp; > > > r_pipe->multirect_index = DPU_SSPP_RECT_1; > > > r_pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; > > > } > > > > > > -- > > > 2.34.1 > > > > > > > -- > > With best wishes > > Dmitry
diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c index 904ebec1c8a18..898fc2937954e 100644 --- a/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c +++ b/drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c @@ -1042,6 +1042,11 @@ static int dpu_plane_atomic_check(struct drm_plane *plane, pipe->multirect_index = DPU_SSPP_RECT_0; pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; + /* + * Signifies that r_pipe is to be used if the width of the 2nd + * pipe is not 0. This does not apply to virtual plane case. + */ + r_pipe->sspp = pipe->sspp; r_pipe->multirect_index = DPU_SSPP_RECT_1; r_pipe->multirect_mode = DPU_SSPP_MULTIRECT_PARALLEL; }
Share SSPP info for multi-rect case if virtual plane is not enabled. Otherwise, the 2nd half of DMA content is not displayed due to sspp pointer of r_pipe is null. Signed-off-by: Jun Nie <jun.nie@linaro.org> --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 5 +++++ 1 file changed, 5 insertions(+)