Re: [Freedreno] [PATCH v9 12/15] drm/msm: Add deadline based boost support

2023-03-03 Thread Dmitry Baryshkov
On 03/03/2023 19:03, Rob Clark wrote: On Fri, Mar 3, 2023 at 2:10 AM Dmitry Baryshkov wrote: On 03/03/2023 01:53, Rob Clark wrote: From: Rob Clark Track the nearest deadline on a fence timeline and set a timer to expire shortly before to trigger boost if the fence has not yet been signaled.

Re: [Freedreno] [PATCH] dt-bindings: yamllint: Require a space after a comment '#'

2023-03-03 Thread Jakub Kicinski
On Fri, 3 Mar 2023 15:42:23 -0600 Rob Herring wrote: > Enable yamllint to check the prefered commenting style of requiring a > space after a comment character '#'. Fix the cases in the tree which > have a warning with this enabled. Most cases just need a space after the > '#'. A couple of cases wi

Re: [Freedreno] [PATCH] dt-bindings: yamllint: Require a space after a comment '#'

2023-03-03 Thread Dmitry Baryshkov
On 03/03/2023 23:42, Rob Herring wrote: Enable yamllint to check the prefered commenting style of requiring a space after a comment character '#'. Fix the cases in the tree which have a warning with this enabled. Most cases just need a space after the '#'. A couple of cases with comments which we

Re: [Freedreno] [PATCH v3] drm/msm/dp: check core_initialized flag at both host_init() and host_deinit()

2023-03-03 Thread Dmitry Baryshkov
On 04/03/2023 00:45, Kuogee Hsieh wrote: On 3/2/2023 11:04 AM, Dmitry Baryshkov wrote: On Thu, 2 Mar 2023 at 20:41, Kuogee Hsieh wrote: On 3/1/2023 1:15 PM, Dmitry Baryshkov wrote: On 01/03/2023 18:57, Kuogee Hsieh wrote: On 2/28/2023 6:16 PM, Dmitry Baryshkov wrote: On Wed, 1 Mar 2023 at

Re: [Freedreno] [PATCH v3] drm/msm/dp: check core_initialized flag at both host_init() and host_deinit()

2023-03-03 Thread Kuogee Hsieh
On 3/2/2023 11:04 AM, Dmitry Baryshkov wrote: On Thu, 2 Mar 2023 at 20:41, Kuogee Hsieh wrote: On 3/1/2023 1:15 PM, Dmitry Baryshkov wrote: On 01/03/2023 18:57, Kuogee Hsieh wrote: On 2/28/2023 6:16 PM, Dmitry Baryshkov wrote: On Wed, 1 Mar 2023 at 02:17, Kuogee Hsieh wrote: There is a

Re: [Freedreno] [PATCH] dt-bindings: yamllint: Require a space after a comment '#'

2023-03-03 Thread Conor Dooley
On Fri, Mar 03, 2023 at 03:42:23PM -0600, Rob Herring wrote: > Enable yamllint to check the prefered commenting style of requiring a > space after a comment character '#'. Fix the cases in the tree which > have a warning with this enabled. Most cases just need a space after the > '#'. A couple of c

[Freedreno] [PATCH] dt-bindings: yamllint: Require a space after a comment '#'

2023-03-03 Thread Rob Herring
Enable yamllint to check the prefered commenting style of requiring a space after a comment character '#'. Fix the cases in the tree which have a warning with this enabled. Most cases just need a space after the '#'. A couple of cases with comments which were not intended to be comments are reveale

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Matt Turner
On Fri, Mar 3, 2023 at 10:08 AM Tvrtko Ursulin wrote: > > > On 03/03/2023 14:48, Rob Clark wrote: > > On Fri, Mar 3, 2023 at 1:58 AM Tvrtko Ursulin > > wrote: > >> > >> > >> On 03/03/2023 03:21, Rodrigo Vivi wrote: > >>> On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: > From: Rob

Re: [Freedreno] [PATCH v9 12/15] drm/msm: Add deadline based boost support

2023-03-03 Thread Rob Clark
On Fri, Mar 3, 2023 at 2:10 AM Dmitry Baryshkov wrote: > > On 03/03/2023 01:53, Rob Clark wrote: > > From: Rob Clark > > > > Track the nearest deadline on a fence timeline and set a timer to expire > > shortly before to trigger boost if the fence has not yet been signaled. > > > > v2: rebase > >

[Freedreno] [PATCH v2 4/4] drm/msm/adreno: clean up component ops indentation

2023-03-03 Thread Johan Hovold
Clean up the component ops initialisers which were indented one level too far. Signed-off-by: Johan Hovold --- drivers/gpu/drm/msm/adreno/adreno_device.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/gpu/drm/msm/adreno/adreno_device.c b/drivers/gpu/drm/msm/adre

[Freedreno] [PATCH v2 3/4] drm/msm/adreno: drop bogus pm_runtime_set_active()

2023-03-03 Thread Johan Hovold
The runtime PM status can only be updated while runtime PM is disabled. Drop the bogus pm_runtime_set_active() call that was made after enabling runtime PM and which (incidentally but correctly) left the runtime PM status set to 'suspended'. Fixes: 2c087a336676 ("drm/msm/adreno: Load the firmware

[Freedreno] [PATCH v2 2/4] drm/msm/adreno: fix runtime PM imbalance at gpu load

2023-03-03 Thread Johan Hovold
A recent commit moved enabling of runtime PM to GPU load time (first open()) but failed to update the error paths so that runtime PM is disabled if initialisation of the GPU fails. This would trigger a warning about the unbalanced disable count on the next open() attempt. Note that pm_runtime_put_

[Freedreno] [PATCH v2 0/4] drm/msm/adreno: fix runtime PM imbalance at unbind

2023-03-03 Thread Johan Hovold
As reported by Bjorn, we can end up with an unbalanced runtime PM disable count if unbind() is called before the DRM device is opened (e.g. if component bind fails due to the panel driver not having been loaded yet). As runtime PM must currently stay disabled until the firmware has been loaded, fi

[Freedreno] [PATCH v2 1/4] drm/msm/adreno: fix runtime PM imbalance at unbind

2023-03-03 Thread Johan Hovold
A recent commit moved enabling of runtime PM from adreno_gpu_init() to adreno_load_gpu() (called on first open()), which means that unbind() may now be called with runtime PM disabled in case the device was never opened in between. Make sure to only forcibly suspend and disable runtime PM at unbin

Re: [Freedreno] [PATCH v9 11/15] drm/atomic-helper: Set fence deadline for vblank

2023-03-03 Thread Ville Syrjälä
On Fri, Mar 03, 2023 at 07:45:05AM -0800, Rob Clark wrote: > On Fri, Mar 3, 2023 at 7:12 AM Ville Syrjälä > wrote: > > > > On Thu, Mar 02, 2023 at 03:53:33PM -0800, Rob Clark wrote: > > > From: Rob Clark > > > > > > For an atomic commit updating a single CRTC (ie. a pageflip) calculate > > > the

Re: [Freedreno] [PATCH v9 11/15] drm/atomic-helper: Set fence deadline for vblank

2023-03-03 Thread Rob Clark
On Fri, Mar 3, 2023 at 7:12 AM Ville Syrjälä wrote: > > On Thu, Mar 02, 2023 at 03:53:33PM -0800, Rob Clark wrote: > > From: Rob Clark > > > > For an atomic commit updating a single CRTC (ie. a pageflip) calculate > > the next vblank time, and inform the fence(s) of that deadline. > > > > v2: Com

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Rob Clark
On Fri, Mar 3, 2023 at 7:20 AM Ville Syrjälä wrote: > > On Fri, Mar 03, 2023 at 05:00:03PM +0200, Ville Syrjälä wrote: > > On Fri, Mar 03, 2023 at 06:48:43AM -0800, Rob Clark wrote: > > > On Fri, Mar 3, 2023 at 1:58 AM Tvrtko Ursulin > > > wrote: > > > > > > > > > > > > On 03/03/2023 03:21, Rodri

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Rob Clark
On Fri, Mar 3, 2023 at 7:08 AM Tvrtko Ursulin wrote: > > > On 03/03/2023 14:48, Rob Clark wrote: > > On Fri, Mar 3, 2023 at 1:58 AM Tvrtko Ursulin > > wrote: > >> > >> > >> On 03/03/2023 03:21, Rodrigo Vivi wrote: > >>> On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: > From: Rob C

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Ville Syrjälä
On Fri, Mar 03, 2023 at 05:00:03PM +0200, Ville Syrjälä wrote: > On Fri, Mar 03, 2023 at 06:48:43AM -0800, Rob Clark wrote: > > On Fri, Mar 3, 2023 at 1:58 AM Tvrtko Ursulin > > wrote: > > > > > > > > > On 03/03/2023 03:21, Rodrigo Vivi wrote: > > > > On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob

Re: [Freedreno] [PATCH v9 11/15] drm/atomic-helper: Set fence deadline for vblank

2023-03-03 Thread Ville Syrjälä
On Thu, Mar 02, 2023 at 03:53:33PM -0800, Rob Clark wrote: > From: Rob Clark > > For an atomic commit updating a single CRTC (ie. a pageflip) calculate > the next vblank time, and inform the fence(s) of that deadline. > > v2: Comment typo fix (danvet) > > Signed-off-by: Rob Clark > Reviewed-by

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Tvrtko Ursulin
On 03/03/2023 14:48, Rob Clark wrote: On Fri, Mar 3, 2023 at 1:58 AM Tvrtko Ursulin wrote: On 03/03/2023 03:21, Rodrigo Vivi wrote: On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: From: Rob Clark missing some wording here... v2: rebase Signed-off-by: Rob Clark --- dr

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Ville Syrjälä
On Fri, Mar 03, 2023 at 06:48:43AM -0800, Rob Clark wrote: > On Fri, Mar 3, 2023 at 1:58 AM Tvrtko Ursulin > wrote: > > > > > > On 03/03/2023 03:21, Rodrigo Vivi wrote: > > > On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: > > >> From: Rob Clark > > >> > > > > > > missing some wording

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Rob Clark
On Thu, Mar 2, 2023 at 7:21 PM Rodrigo Vivi wrote: > > On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: > > From: Rob Clark > > > > missing some wording here... the wording should be "Pls replace this patch, kthx" ;-) > > > v2: rebase > > > > Signed-off-by: Rob Clark > > --- > > dri

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Rob Clark
On Fri, Mar 3, 2023 at 1:58 AM Tvrtko Ursulin wrote: > > > On 03/03/2023 03:21, Rodrigo Vivi wrote: > > On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: > >> From: Rob Clark > >> > > > > missing some wording here... > > > >> v2: rebase > >> > >> Signed-off-by: Rob Clark > >> --- > >>

Re: [Freedreno] [Intel-gfx] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Andi Shyti
On Fri, Mar 03, 2023 at 09:58:36AM +, Tvrtko Ursulin wrote: > > On 03/03/2023 03:21, Rodrigo Vivi wrote: > > On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: > > > From: Rob Clark > > > > > > > missing some wording here... > > > > > v2: rebase > > > > > > Signed-off-by: Rob Clar

[Freedreno] [PATCH v4 17/30] drm/msm/dpu: drop redundant plane dst check from dpu_crtc_atomic_check()

2023-03-03 Thread Dmitry Baryshkov
The helper drm_atomic_helper_check_plane_state() already checks whether the scaled and clipped plane falls into the CRTC visible region (and clears plane_state->visible if it doesn't). Drop the redundant check from dpu_crtc_atomic_check(). Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshko

[Freedreno] [PATCH v4 25/30] drm/msm/dpu: rework static color fill code

2023-03-03 Thread Dmitry Baryshkov
Rework static color fill code to separate the pipe / pipe_cfg handling. This is a preparation for the r_pipe support. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 69 +-- 1 file changed, 40 insertions(+), 29 deletions(-) diff --git a/driver

[Freedreno] [PATCH v4 27/30] drm/msm/dpu: add support for wide planes

2023-03-03 Thread Dmitry Baryshkov
Typically SSPP can support rectangle with width up to 2560. However it's possible to use multirect feature and split source to use the SSPP to output two consecutive rectangles. This commit brings in this capability to support wider screen resolutions. Signed-off-by: Dmitry Baryshkov --- drivers

[Freedreno] [PATCH v4 21/30] drm/msm/dpu: simplify dpu_plane_validate_src()

2023-03-03 Thread Dmitry Baryshkov
The plane's clipped coordinates has already been validated against FB size in the drm_atomic_plane_check(). There is no need to check them again. Remove corresponding checks and inline dpu_plane_validate_src(). Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 30 ++

[Freedreno] [PATCH v4 13/30] drm/msm/dpu: rename dpu_hw_sspp_cfg to dpu_sw_pipe_cfg

2023-03-03 Thread Dmitry Baryshkov
As struct dpu_hw_sspp_cfg describes only the source and destination rectangles, it is a software pipe configuration now. Rename it accordingly. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 2 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h | 6 +++--- driver

[Freedreno] [PATCH v4 22/30] drm/msm/dpu: rework dpu_plane_sspp_atomic_update()

2023-03-03 Thread Dmitry Baryshkov
Split pipe-dependent code from dpu_plane_sspp_atomic_update() into the separate function dpu_plane_sspp_update_pipe(). This is one of preparational steps to add r_pipe support. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 113 -- 1 file chan

[Freedreno] [PATCH v4 30/30] drm/msm/dpu: drop smart_dma_rev from dpu_caps

2023-03-03 Thread Dmitry Baryshkov
The code doesn't use dpu_caps::smart_dma_rev field. It checks if the corresponding feature is enabled in the SSPP features. Drop the smart_dma_rev field completely. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c | 13 - drivers/gpu/drm/msm/disp/dpu

[Freedreno] [PATCH v4 29/30] drm/msm/dpu: enable SmartDMA for the rest of the platforms

2023-03-03 Thread Dmitry Baryshkov
Enable SmartDMA features for the rest of the platforms where it is supposed to work. Signed-off-by: Dmitry Baryshkov --- .../gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c| 54 --- 1 file changed, 23 insertions(+), 31 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_hw_ca

[Freedreno] [PATCH v4 28/30] drm/msm/dpu: populate SmartDMA features in hw catalog

2023-03-03 Thread Dmitry Baryshkov
Downstream driver uses dpu->caps->smart_dma_rev to update sspp->cap->features with the bit corresponding to the supported SmartDMA version. Upstream driver does not do this, resulting in SSPP subdriver not enabling setup_multirect callback. Add corresponding SmartDMA SSPP feature bits to dpu hw cat

[Freedreno] [PATCH v4 26/30] drm/msm/dpu: split pipe handling from _dpu_crtc_blend_setup_mixer

2023-03-03 Thread Dmitry Baryshkov
Rework _dpu_crtc_blend_setup_mixer() to split away pipe handling to a separate functon. This is a preparation for the r_pipe support. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 79 +++- 1 file changed, 50 insertions(+), 29 deletions(-) dif

[Freedreno] [PATCH v4 23/30] drm/msm/dpu: rework dpu_plane_atomic_check()

2023-03-03 Thread Dmitry Baryshkov
Split pipe-dependent code from dpu_plane_atomic_check() into the separate function dpu_plane_atomic_check_pipe(). This is one of preparational steps to add r_pipe support. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 90 ++- 1 file changed,

[Freedreno] [PATCH v4 16/30] drm/msm/dpu: move the rest of plane checks to dpu_plane_atomic_check()

2023-03-03 Thread Dmitry Baryshkov
Move plane state updates from dpu_crtc_atomic_check() to the function where they belong: to dpu_plane_atomic_check(). Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 18 +- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 18 ++ drivers/

[Freedreno] [PATCH v4 24/30] drm/msm/dpu: rework plane CSC setting

2023-03-03 Thread Dmitry Baryshkov
Rework the code flushing CSC settings for the plane. Separate out the pipe and pipe_cfg as a preparation for r_pipe support. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 47 +-- 1 file changed, 27 insertions(+), 2

[Freedreno] [PATCH v4 14/30] drm/msm/dpu: drop src_split and multirect check from dpu_crtc_atomic_check

2023-03-03 Thread Dmitry Baryshkov
Neither source split nor multirect are properly supported at this moment. Both of these checks depend on normalized_zpos being equal for several planes (which is never the case for normalized zpos). Drop these checks to simplify dpu_crtc_atomic_check(). The actual support for either of these featur

[Freedreno] [PATCH v4 20/30] drm/msm/dpu: add dpu_hw_sspp_cfg to dpu_plane_state

2023-03-03 Thread Dmitry Baryshkov
Now as all accesses to pipe_cfg and pstate have been cleaned, add struct dpu_hw_sspp_cfg to struct dpu_plane_state, so that dpu_plane_atomic_check() and dpu_plane_atomic_update() do not have a chance to disagree about src/dst rectangles (currently dpu_plane_atomic_check() uses unclipped rectangles,

[Freedreno] [PATCH v4 05/30] drm/msm/dpu: move pipe_hw to dpu_plane_state

2023-03-03 Thread Dmitry Baryshkov
In preparation to adding fully virtualized planes, move struct dpu_hw_sspp instance from struct dpu_plane to struct dpu_plane_state, as it will become a part of state (variable, changes during runtime) rather than part of a plane (ideally should be statically allocated during boot). The sspp point

[Freedreno] [PATCH v4 18/30] drm/msm/dpu: rewrite plane's QoS-related functions to take dpu_sw_pipe and dpu_format

2023-03-03 Thread Dmitry Baryshkov
Rewrite dpu_plane's QoS related functions to take struct dpu_sw_pipe and struct dpu_format as arguments rather than fetching them from the pstate or drm_framebuffer. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 98 +++

[Freedreno] [PATCH v4 15/30] drm/msm/dpu: don't use unsupported blend stages

2023-03-03 Thread Dmitry Baryshkov
The dpu_crtc_atomic_check() compares blending stage with DPU_STAGE_MAX (maximum amount of blending stages supported by the driver), however we should compare it against .max_mixer_blendstages, the maximum blend stage supported by the mixer. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshk

[Freedreno] [PATCH v4 06/30] drm/msm/dpu: drop dpu_plane_pipe function

2023-03-03 Thread Dmitry Baryshkov
There no more need for the dpu_plane_pipe() function, crtc code can access pstate->pipe_hw.idx directly. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 4 ++-- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 5 - drivers/gpu/drm/msm/di

[Freedreno] [PATCH v4 19/30] drm/msm/dpu: make _dpu_plane_calc_clk accept mode directly

2023-03-03 Thread Dmitry Baryshkov
Rework bandwidth/clock calculation functions to use mode directly rather than fetching it through the plane data. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 39 ++- 1 file changed, 17 insertions(+), 22 deletions

[Freedreno] [PATCH v4 11/30] drm/msm/dpu: move stride programming to dpu_hw_sspp_setup_sourceaddress

2023-03-03 Thread Dmitry Baryshkov
Move stride programming to dpu_hw_sspp_setup_sourceaddress(), so that dpu_hw_sspp_setup_rects() programs only source and destination rectangles. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 57 +++-- 1 file changed,

[Freedreno] [PATCH v4 08/30] drm/msm/dpu: use dpu_sw_pipe for dpu_hw_sspp callbacks

2023-03-03 Thread Dmitry Baryshkov
Where feasible, use dpu_sw_pipe rather than a combo of dpu_hw_sspp and multirect_index/_mode arguments. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 59 + drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h | 46 +--

[Freedreno] [PATCH v4 12/30] drm/msm/dpu: remove dpu_hw_fmt_layout from struct dpu_hw_sspp_cfg

2023-03-03 Thread Dmitry Baryshkov
Remove dpu_hw_fmt_layout instance from struct dpu_hw_sspp_cfg, leaving only src_rect and dst_rect. This way all the pipes used by the plane will have a common layout instance (as the framebuffer is shared between them), while still keeping a separate src/dst rectangle configuration for each pipe.

[Freedreno] [PATCH v4 09/30] drm/msm/dpu: pass dpu_format to _dpu_hw_sspp_setup_scaler3()

2023-03-03 Thread Dmitry Baryshkov
There is no need to pass full dpu_hw_sspp_cfg instance to _dpu_hw_sspp_setup_scaler3, pass just struct dpu_format pointer. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 9 - drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h | 9 ++

[Freedreno] [PATCH v4 10/30] drm/msm/dpu: clean up SRC addresses when setting up SSPP for solid fill

2023-03-03 Thread Dmitry Baryshkov
Set SSPP_SRCn_ADDR registers to 0 while setting up solid fill, as we can not be sure that the previous address is still valid. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 5 + 1 file changed, 5 insertions(+) diff --git a/driv

[Freedreno] [PATCH v4 07/30] drm/msm/dpu: introduce struct dpu_sw_pipe

2023-03-03 Thread Dmitry Baryshkov
Wrap SSPP and multirect index/mode into a single structure that represents software view on the pipe used. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c| 9 +- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.h | 16 ++- drivers/gpu/drm/

[Freedreno] [PATCH v4 04/30] drm/msm/dpu: drop EAGAIN check from dpu_format_populate_layout

2023-03-03 Thread Dmitry Baryshkov
The pipe's layout is not cached, corresponding data structure is zeroed out each time in the dpu_plane_sspp_atomic_update(), right before the call to _dpu_plane_set_scanout() -> dpu_format_populate_layout(). Drop plane_addr comparison against previous layout and corresponding EAGAIN handling. Rev

[Freedreno] [PATCH v4 00/30] drm/msm/dpu: wide planes support

2023-03-03 Thread Dmitry Baryshkov
This patchset brings in multirect usage to support using two SSPP rectangles for a single plane. Full virtual planes support is omitted from this pull request, it will come later. Changes since v3: - moved if (!pipe->sspp) checks back to the calling site, the caller should know if there is a ba

[Freedreno] [PATCH v4 03/30] drm/msm/dpu: move SSPP debugfs creation to dpu_kms.c

2023-03-03 Thread Dmitry Baryshkov
As SSPP blocks are now visible through dpu_kms->rm.sspp_blocks, move SSPP debugfs creation from dpu_plane to dpu_kms. We are going to break the 1:1 correspondence between planes and SSPPs, so it makes no sense anymore to create SSPP debugfs entries in dpu_plane.c Reviewed-by: Abhinav Kumar Signed

[Freedreno] [PATCH v4 02/30] drm/msm/dpu: move SSPP allocation to the RM

2023-03-03 Thread Dmitry Baryshkov
Follow the example of all other hw blocks and initialize SSPP blocks in Resource Manager. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c | 17 - drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c| 22 ++ drive

[Freedreno] [PATCH v4 01/30] drm/msm/dpu: rename struct dpu_hw_pipe(_cfg) to dpu_hw_sspp(_cfg)

2023-03-03 Thread Dmitry Baryshkov
For all hardware blocks except SSPP the corresponding struct is named after the block. Rename dpu_hw_pipe (SSPP structure) to dpu_hw_sspp. Also rename struct dpu_hw_pipe_cfg to dpu_hw_sspp_cfg to follow this change. Reviewed-by: Abhinav Kumar Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/

Re: [Freedreno] [PATCH v3 26/27] drm/msm/dpu: split pipe handling from _dpu_crtc_blend_setup_mixer

2023-03-03 Thread Dmitry Baryshkov
On 09/02/2023 01:44, Abhinav Kumar wrote: On 2/3/2023 10:21 AM, Dmitry Baryshkov wrote: Rework _dpu_crtc_blend_setup_mixer() to split away pipe handling to a separate functon. This is a preparation for the r_pipe support. Signed-off-by: Dmitry Baryshkov ---   drivers/gpu/drm/msm/disp/dpu1/dp

Re: [Freedreno] [PATCH v3 15/27] drm/msm/dpu: move the rest of plane checks to dpu_plane_atomic_check()

2023-03-03 Thread Dmitry Baryshkov
On 15/02/2023 02:08, Dmitry Baryshkov wrote: On 15/02/2023 01:25, Abhinav Kumar wrote: Hi Dmitry Sorry for the late response on this one. On 2/3/2023 2:55 PM, Dmitry Baryshkov wrote: On 04/02/2023 00:44, Abhinav Kumar wrote: On 2/3/2023 10:21 AM, Dmitry Baryshkov wrote: Move plane state u

Re: [Freedreno] [PATCH 3/4] drm/msm/adreno: drop redundant pm_runtime_disable()

2023-03-03 Thread Johan Hovold
Hi Rob, Sorry about the late follow-up on this. Went down a bit of a DRM rabbit hole this week. On Wed, Feb 22, 2023 at 11:09:16AM -0800, Rob Clark wrote: > On Tue, Feb 21, 2023 at 2:16 AM Johan Hovold wrote: > > > > Since commit 4b18299b3365 ("drm/msm/adreno: Defer enabling runpm until > > hw_i

Re: [Freedreno] [PATCH v9 12/15] drm/msm: Add deadline based boost support

2023-03-03 Thread Dmitry Baryshkov
On 03/03/2023 01:53, Rob Clark wrote: From: Rob Clark Track the nearest deadline on a fence timeline and set a timer to expire shortly before to trigger boost if the fence has not yet been signaled. v2: rebase Signed-off-by: Rob Clark --- drivers/gpu/drm/msm/msm_fence.c | 74 ++

Re: [Freedreno] [PATCH v9 13/15] drm/msm: Add wait-boost support

2023-03-03 Thread Dmitry Baryshkov
On 03/03/2023 01:53, Rob Clark wrote: From: Rob Clark Add a way for various userspace waits to signal urgency. Signed-off-by: Rob Clark --- drivers/gpu/drm/msm/msm_drv.c | 12 drivers/gpu/drm/msm/msm_gem.c | 5 + include/uapi/drm/msm_drm.h| 14 -- 3 file

Re: [Freedreno] [PATCH v9 14/15] drm/msm/atomic: Switch to vblank_start helper

2023-03-03 Thread Dmitry Baryshkov
On 03/03/2023 01:53, Rob Clark wrote: From: Rob Clark Drop our custom thing and switch to drm_crtc_next_vblank_start() for calculating the time of the start of the next vblank period. Signed-off-by: Rob Clark It took me a while to dig into the differences between old and proposed paths. Lo

Re: [Freedreno] [PATCH v9 15/15] drm/i915: Add deadline based boost support

2023-03-03 Thread Tvrtko Ursulin
On 03/03/2023 03:21, Rodrigo Vivi wrote: On Thu, Mar 02, 2023 at 03:53:37PM -0800, Rob Clark wrote: From: Rob Clark missing some wording here... v2: rebase Signed-off-by: Rob Clark --- drivers/gpu/drm/i915/i915_request.c | 20 1 file changed, 20 insertions(+) d