Re: [Freedreno] [PATCH v3 6/7] drm/msm/dsi: Add phy configuration for MSM8226

2023-06-07 Thread Jeykumar Sankaran
On 6/1/2023 10:00 AM, Luca Weiss wrote: MSM8226 uses a modified PLL lock sequence compared to MSM8974, which is based on the function dsi_pll_enable_seq_m in the msm-3.10 kernel. Worth noting that the msm-3.10 downstream kernel also will try other sequences in case this one doesn't work, but

Re: [Freedreno] [PATCH v3 5/7] drm/msm/dsi: Add configuration for MSM8226

2023-06-06 Thread Jeykumar Sankaran
MSM_DSI_6G_VER_MINOR_V1_0_20x1002 #define MSM_DSI_6G_VER_MINOR_V1_1 0x1001 #define MSM_DSI_6G_VER_MINOR_V1_1_1 0x10010001 #define MSM_DSI_6G_VER_MINOR_V1_2 0x1002 Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v3 4/7] drm/msm/mdp5: Add MDP5 configuration for MSM8226

2023-06-06 Thread Jeykumar Sankaran
ig = { .hw = _config } }, { .revision = 6, .config = { .hw = _config } }, Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 3/6] drm/msm/dpu: split interrupt address arrays

2023-05-25 Thread Jeykumar Sankaran
On 5/22/2023 2:45 PM, Dmitry Baryshkov wrote: There is no point in having a single enum (and a single array) for both DPU < 7.0 and DPU >= 7.0 interrupt registers. Instead define a single enum and two IRQ address arrays. Signed-off-by: Dmitry Baryshkov ---

Re: [Freedreno] [PATCH v3 1/9] drm/msm/dpu: fix SSPP register definitions

2023-05-24 Thread Jeykumar Sankaran
On 5/18/2023 3:22 PM, Dmitry Baryshkov wrote: Reorder SSPP register definitions to sort them in the ascending order. Move register bitfields after the register definitions. Signed-off-by: Dmitry Baryshkov --- Reviewed-by: Jeykumar Sankaran drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c

Re: [Freedreno] [PATCH v2 1/9] drm/msm/dpu: fix SSPP register definitions

2023-05-05 Thread Jeykumar Sankaran
On 5/2/2023 8:05 AM, Dmitry Baryshkov wrote: Reorder SSPP register definitions to sort them in the ascending order. Move register bitfields after the register definitions. Signed-off-by: Dmitry Baryshkov --- drivers/gpu/drm/msm/disp/dpu1/dpu_hw_sspp.c | 66 +++-- 1 file

Re: [Freedreno] [PATCH v2 9/9] drm/msm/dpu: use common helper for WB and SSPP QoS setup

2023-05-05 Thread Jeykumar Sankaran
ags: QoS control mode (enum dpu_plane_qos) */ static void _dpu_plane_set_qos_ctrl(struct drm_plane *plane, struct dpu_sw_pipe *pipe, @@ -1086,10 +1065,6 @@ static void dpu_plane_sspp_update_pipe(struct drm_plane *plane, } _dpu_plane_set_qos_lut(plane, pipe, fmt, pipe_cfg); - _dpu_plane_set_danger_lut(plane, pipe, fmt); - _dpu_plane_set_qos_ctrl(plane, pipe, - pipe->sspp->idx != SSPP_CURSOR0 && - pipe->sspp->idx != SSPP_CURSOR1); if (pipe->sspp->idx != SSPP_CURSOR0 && pipe->sspp->idx != SSPP_CURSOR1) Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 8/9] drm/msm/dpu: remove struct dpu_hw_pipe_qos_cfg

2023-05-05 Thread Jeykumar Sankaran
pdpu->pipe - SSPP_VIG0, - pipe_qos_cfg.danger_safe_en, + enable, pdpu->is_rt_pipe); pipe->sspp->ops.setup_qos_ctrl(pipe->sspp, - _qos_cfg); + enable); } /** Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 7/9] drm/msm/dpu: drop DPU_PLANE_QOS_PANIC_CTRL

2023-05-05 Thread Jeykumar Sankaran
;r_pipe, enable, DPU_PLANE_QOS_PANIC_CTRL); + _dpu_plane_set_qos_ctrl(plane, >r_pipe, enable); pm_runtime_put_sync(_kms->pdev->dev); } #endif Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 6/9] drm/msm/dpu: simplify qos_ctrl handling

2023-05-05 Thread Jeykumar Sankaran
pipe_qos_cfg.danger_safe_en, - pipe_qos_cfg.vblank_en, - pipe_qos_cfg.creq_vblank, - pipe_qos_cfg.danger_vblank, pdpu->is_rt_pipe); pipe->sspp->ops.setup_qos_ctrl(pipe->sspp, Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 5/9] drm/msm/dpu: drop DPU_PLANE_QOS_VBLANK_CTRL

2023-05-05 Thread Jeykumar Sankaran
/* this feature overrules previous VBLANK_CTRL */ pipe_qos_cfg.vblank_en = false; pipe_qos_cfg.creq_vblank = 0; /* clear vblank bits */ } Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 4/9] drm/msm/dpu: rearrange QoS setting code

2023-05-05 Thread Jeykumar Sankaran
_dpu_plane_set_ot_limit(plane, pipe, pipe_cfg, frame_rate); - } if (pstate->needs_qos_remap) _dpu_plane_set_qos_remap(plane, pipe); Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 3/9] drm/msm/dpu: fix the condition for (not) applying QoS to CURSOR SSPP

2023-05-05 Thread Jeykumar Sankaran
lane_set_ot_limit(plane, pipe, pipe_cfg, frame_rate); } Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v2 2/9] drm/msm/dpu: simplify CDP programming

2023-05-05 Thread Jeykumar Sankaran
pipe->sspp->ops.setup_cdp(pipe, fmt, + perf->cdp_cfg[DPU_PERF_CDP_USAGE_RT].rd_enable); } } Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH 2/9] drm/msm/dpu: simplify CDP programming

2023-05-01 Thread Jeykumar Sankaran
On 4/30/2023 1:57 PM, Dmitry Baryshkov wrote: Get rid of intermediatory configuration structure and defines. Pass the format and the enablement bit directly to the new helper. The WB_CDP_CNTL register ignores BIT(2), so we can write it for both SSPP and WB CDP settings. Signed-off-by: Dmitry

Re: [Freedreno] [PATCH 3/9] drm/msm/dpu: fix the condition for (not) applying QoS to CURSOR SSPP

2023-05-01 Thread Jeykumar Sankaran
On 4/30/2023 1:57 PM, Dmitry Baryshkov wrote: The function dpu_plane_sspp_update_pipe() contains code to skip enabling the QoS and OT limitis for CURSOR pipes. However all DPU since sdm845 repurpose DMA SSPP for the cursor planes because they lack the real CURSOR SSPP. Fix the condition to

Re: [Freedreno] [PATCH 3/3] drm/msm/dpu: access CSC/CSC10 registers directly

2023-04-26 Thread Jeykumar Sankaran
tures)) { - idx += CSC_10BIT_OFFSET; + offset += CSC_10BIT_OFFSET; csc10 = true; } - dpu_hw_csc_setup(>hw, idx, data, csc10); + dpu_hw_csc_setup(>hw, offset, data, csc10); } static void dpu_hw_sspp_setup_solidfill(struct dpu_sw_pipe *pipe, u32 color) Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH 2/3] drm/msm/dpu: access QSEED registers directly

2023-04-26 Thread Jeykumar Sankaran
uct dpu_hw_sspp *ctx) { - u32 idx; - - if (!ctx || _sspp_subblk_offset(ctx, DPU_SSPP_SCALER_QSEED3, )) + if (!ctx) return 0; - return dpu_hw_get_scaler3_ver(>hw, idx); + return dpu_hw_get_scaler3_ver(>hw, + ctx->cap->sblk->scaler_blk.base); } /* Reviewed-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH 1/3] drm/msm/dpu: drop SSPP's SRC subblock

2023-04-26 Thread Jeykumar Sankaran
On 4/21/2023 5:08 PM, Dmitry Baryshkov wrote: The src_blk declares a lame copy of main SSPP register space. It's offset is always 0. It's length has been fixed to 0x150, while SSPP's length is now correct. Drop the src_blk and access SSPP registers without additional subblock lookup.

Re: [Freedreno] [PATCH 03/11] drm/msm/dpu: use hsync/vsync polarity set by the encoder

2023-04-20 Thread Jeykumar Sankaran
On 4/19/2023 7:41 AM, Arnaud Vrac wrote: Do not override the hsync/vsync polarity passed by the encoder when setting up intf timings. The same logic was used in both the encoder and intf code to set the DP and DSI polarities, so those interfaces are not impacted. However for HDMI, the

Re: [Freedreno] [PATCH 02/11] drm/msm/dpu: use the actual lm maximum width instead of a hardcoded value

2023-04-20 Thread Jeykumar Sankaran
On 4/19/2023 3:23 PM, Dmitry Baryshkov wrote: On 19/04/2023 17:41, Arnaud Vrac wrote: This avoids using two LMs instead of one when the display width is lower than the maximum supported value. For example on MSM8996/MSM8998, the actual maxwidth is 2560, so we would use two LMs for 1280x720

Re: [Freedreno] [PATCH 5/5] drm/msm/dpu1: Handle the reg bus ICC path

2023-04-19 Thread Jeykumar Sankaran
On 4/19/2023 12:48 PM, Konrad Dybcio wrote: On 19.04.2023 21:06, Jeykumar Sankaran wrote: On 4/17/2023 8:30 AM, Konrad Dybcio wrote: Apart from the already handled data bus (MAS_MDP_Pn<->DDR), there's another path that needs to be handled to ensure MDSS functions properly,

Re: [Freedreno] [PATCH 0/5] MDSS reg bus interconnect

2023-04-19 Thread Jeykumar Sankaran
On 4/17/2023 8:30 AM, Konrad Dybcio wrote: Apart from the already handled data bus (MAS_MDP_Pn<->DDR), there's another path that needs to be handled to ensure MDSS functions properly, namely the "reg bus", a.k.a the CPU-MDSS interconnect. Gating that path may have a variety of effects.. from

Re: [Freedreno] [PATCH 1/5] dt-bindings: display/msm: Add reg bus interconnect

2023-04-19 Thread Jeykumar Sankaran
Resending the question as the previous one was sent only to the freedreno list. Apologies for spamming! On 4/17/2023 8:30 AM, Konrad Dybcio wrote: Apart from the already handled data bus (MAS_MDP_Pn<->DDR), there's another path that needs to be handled to ensure MDSS functions properly, namely

Re: [Freedreno] [PATCH 5/5] drm/msm/dpu1: Handle the reg bus ICC path

2023-04-19 Thread Jeykumar Sankaran
On 4/17/2023 8:30 AM, Konrad Dybcio wrote: Apart from the already handled data bus (MAS_MDP_Pn<->DDR), there's another path that needs to be handled to ensure MDSS functions properly, namely the "reg bus", a.k.a the CPU-MDSS interconnect. Gating that path may have a variety of effects.. from

Re: [Freedreno] [PATCH 1/5] dt-bindings: display/msm: Add reg bus interconnect

2023-04-19 Thread Jeykumar Sankaran
On 4/17/2023 8:30 AM, Konrad Dybcio wrote: Apart from the already handled data bus (MAS_MDP_Pn<->DDR), there's another path that needs to be handled to ensure MDSS functions properly, namely the "reg bus", a.k.a the CPU-MDSS interconnect. Gating that path may have a variety of effects.. from

Re: [Freedreno] [PATCH 0/5] MDSS reg bus interconnect

2023-04-19 Thread Jeykumar Sankaran
On 4/17/2023 8:30 AM, Konrad Dybcio wrote: Apart from the already handled data bus (MAS_MDP_Pn<->DDR), there's another path that needs to be handled to ensure MDSS functions properly, namely the "reg bus", a.k.a the CPU-MDSS interconnect. Gating that path may have a variety of effects.. from

Re: [Freedreno] [RFC] Expanding drm_mode_modeinfo flags

2019-07-28 Thread Jeykumar Sankaran
On 2019-07-24 07:48, Sean Paul wrote: On Mon, Jul 22, 2019 at 04:50:43PM -0700, Jeykumar Sankaran wrote: On 2019-07-19 07:29, Sean Paul wrote: > On Fri, Jul 19, 2019 at 05:15:28PM +0300, Ville Syrjälä wrote: > > On Fri, Jul 19, 2019 at 09:55:58AM -0400, Sean Paul wrote: > > &

Re: [Freedreno] [RFC] Expanding drm_mode_modeinfo flags

2019-07-22 Thread Jeykumar Sankaran
On 2019-07-19 07:29, Sean Paul wrote: On Fri, Jul 19, 2019 at 05:15:28PM +0300, Ville Syrjälä wrote: On Fri, Jul 19, 2019 at 09:55:58AM -0400, Sean Paul wrote: > On Fri, Jul 19, 2019 at 11:05:53AM +0200, Daniel Vetter wrote: > > On Thu, Jul 18, 2019 at 11:18:42AM -0700, Jeykumar Sanka

Re: [Freedreno] [RFC] Expanding drm_mode_modeinfo flags

2019-07-18 Thread Jeykumar Sankaran
On 2019-07-16 02:07, Daniel Vetter wrote: On Thu, Jul 11, 2019 at 11:46:44AM -0700, Jeykumar Sankaran wrote: Hello All, drm_mode_modeinfo::flags is a 32 bit field currently used to describe the properties of a connector mode. I see the least order 22 bits are already

[Freedreno] [RFC PATCH] drm: add mode flags in uapi for seamless mode switch

2019-07-11 Thread Jeykumar Sankaran
Add drm mode flag values to expose mode capabilities to perform dynamic seamless mode switch. This change also exposes the backing panel type associated with a mode for panels which can dynamically switch between video and command display modes. Signed-off-by: Jeykumar Sankaran --- include/uapi

[Freedreno] [RFC] Expanding drm_mode_modeinfo flags

2019-07-11 Thread Jeykumar Sankaran
er vendors for their growing need for drm_mode specific capabilities. Please provide your inputs on the options or any upstream friendly recommendation to handle such custom use cases. Thanks and Regards, Jeykumar S. Jeykumar Sankaran (1): drm: add mode flags in uapi for sea

Re: [Freedreno] drm/msm/dpu: Correct dpu encoder spinlock initialization

2019-07-02 Thread Jeykumar Sankaran
On 2019-07-02 11:21, Jeykumar Sankaran wrote: On 2019-07-01 03:29, d...@codeaurora.org wrote: On 2019-06-26 03:10, Jeykumar Sankaran wrote: On 2019-06-24 22:44, d...@codeaurora.org wrote: On 2019-06-25 03:56, Jeykumar Sankaran wrote: On 2019-06-23 23:27, Shubhashree Dhar wrote: dpu encoder

Re: [Freedreno] drm/msm/dpu: Correct dpu encoder spinlock initialization

2019-07-02 Thread Jeykumar Sankaran
On 2019-07-01 03:29, d...@codeaurora.org wrote: On 2019-06-26 03:10, Jeykumar Sankaran wrote: On 2019-06-24 22:44, d...@codeaurora.org wrote: On 2019-06-25 03:56, Jeykumar Sankaran wrote: On 2019-06-23 23:27, Shubhashree Dhar wrote: dpu encoder spinlock should be initialized during dpu

Re: [Freedreno] drm/msm/dpu: Correct dpu encoder spinlock initialization

2019-06-25 Thread Jeykumar Sankaran
On 2019-06-24 22:44, d...@codeaurora.org wrote: On 2019-06-25 03:56, Jeykumar Sankaran wrote: On 2019-06-23 23:27, Shubhashree Dhar wrote: dpu encoder spinlock should be initialized during dpu encoder init instead of dpu encoder setup which is part of commit. There are chances that vblank

Re: [Freedreno] drm/msm/dpu: Correct dpu encoder spinlock initialization

2019-06-24 Thread Jeykumar Sankaran
On 2019-06-23 23:27, Shubhashree Dhar wrote: dpu encoder spinlock should be initialized during dpu encoder init instead of dpu encoder setup which is part of commit. There are chances that vblank control uses the uninitialized spinlock if not initialized during encoder init. Not much can be

Re: [Freedreno] [PATCH v2 4/7] drm/msm/dpu: dont use encoder->crtc in atomic path

2019-03-06 Thread Jeykumar Sankaran
On 2019-03-04 10:09, Sean Paul wrote: On Wed, Feb 13, 2019 at 05:19:13PM -0800, Jeykumar Sankaran wrote: encoder->crtc is not really meaningful for atomic path. Use crtc->encoder_mask to identify the crtc attached with an encoder. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/ms

Re: [Freedreno] [PATCH v2 1/4] drm/msm/dpu: add atomic private object to dpu crtc

2019-03-05 Thread Jeykumar Sankaran
On 2019-03-04 13:32, Sean Paul wrote: On Wed, Feb 13, 2019 at 05:52:19PM -0800, Jeykumar Sankaran wrote: Subclass drm private object state for DPU for handling driver specific data. Adds atomic private object to dpu crtc to track hw resources per display. Provide helper function to retrieve DPU

[Freedreno] [PATCH v2 0/4] reserve RM resources in private obj state

2019-02-13 Thread Jeykumar Sankaran
up RM iterator API's. Thanks and Regards, Jeykumar S. Jeykumar Sankaran (4): drm/msm/dpu: add atomic private object to dpu crtc drm/msm/dpu: track HW resources using private object state drm/msm/dpu: remove reserve in encoder mode_set drm/msm/dpu: remove mode_set_complete drivers/gpu/drm

[Freedreno] [PATCH v2 4/4] drm/msm/dpu: remove mode_set_complete

2019-02-13 Thread Jeykumar Sankaran
This flag was introduced as a fix to notify modeset complete when hw reservations were happening in both atomic_check and atomic_commit paths. Now that we are reserving only in atomic_check, we can get rid of this flag. changes in v2: - none Signed-off-by: Jeykumar Sankaran Reviewed

Re: [Freedreno] [PATCH v2 0/7] move dpu resource parsing to encoder modeset

2019-02-13 Thread Jeykumar Sankaran
On 2019-02-13 17:19, Jeykumar Sankaran wrote: Fixing some of the low hanging fruits by moving the hw resource parsing and assignment to encoder modeset. This series prepares DPU resource management to switch to state based resource tracking which is implemented in the next incoming changes

[Freedreno] [PATCH v2 4/7] drm/msm/dpu: dont use encoder->crtc in atomic path

2019-02-13 Thread Jeykumar Sankaran
encoder->crtc is not really meaningful for atomic path. Use crtc->encoder_mask to identify the crtc attached with an encoder. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 7 ++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drive

[Freedreno] [PATCH v2 2/7] drm/msm/dpu: remove phys_vid subclass

2019-02-13 Thread Jeykumar Sankaran
Not holding any video encoder specific data. Get rid of it. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h | 11 --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 18 -- 2 files changed, 4 insertions(+), 25 deletions

[Freedreno] [PATCH v2 0/7] move dpu resource parsing to encoder modeset

2019-02-13 Thread Jeykumar Sankaran
Fixing some of the low hanging fruits by moving the hw resource parsing and assignment to encoder modeset. This series prepares DPU resource management to switch to state based resource tracking which is implemented in the next incoming changes. Thanks. Jeykumar Sankaran (7): drm/msm/dpu

[Freedreno] [PATCH v2 6/7] drm/msm/dpu: assign intf to encoder in mode_set

2019-02-13 Thread Jeykumar Sankaran
Iterate and assign HW intf block to physical encoders in encoder modeset. Moving all the HW block assignments to encoder modeset to allow easy switching to state based resource management. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c| 22

[Freedreno] [PATCH v2 7/7] drm/msm/dpu: check split role for single flush

2019-02-13 Thread Jeykumar Sankaran
Removing unwanted access of crtc_state for finding this information. Use split role information to know whether we have slave ctl. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 14 +- 1 file changed, 1 insertion(+), 13 deletions(-) diff

[Freedreno] [PATCH v2 3/7] drm/msm/dpu: release resources on modeset failure

2019-02-13 Thread Jeykumar Sankaran
release resources allocated in mode_set if any of the hw check fails. Most of these checks are not necessary and they will be removed in the follow up patches with state based resource allocations. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 7 +-- 1

[Freedreno] [PATCH v2 5/7] drm/msm/dpu: map mixer/ctl hw blocks in encoder modeset

2019-02-13 Thread Jeykumar Sankaran
After resource allocation, iterate and populate mixer/ctl hw blocks in encoder modeset thereby centralizing all the resource mapping to the CRTC. This change is made for easy switching to state based allocation using private objects later in this series. Signed-off-by: Jeykumar Sankaran

[Freedreno] [PATCH v2 1/7] drm/msm/dpu: move hw_inf encoder baseclass

2019-02-13 Thread Jeykumar Sankaran
Both video and command physical encoders will have a hw interface assigned to it. So there is really no need to track the hw block in specific encoder subclass. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h | 4 +- .../gpu/drm/msm/disp/dpu1

[Freedreno] [PATCH 2/2] drm/msm/dpu: remove phys_vid subclass

2019-02-06 Thread Jeykumar Sankaran
Not holding any video encoder specific data. Get rid of it. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h | 11 --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys_vid.c | 18 -- 2 files changed, 4 insertions(+), 25 deletions

[Freedreno] [PATCH 1/2] drm/msm/dpu: move hw_inf encoder baseclass

2019-02-06 Thread Jeykumar Sankaran
Both video and command physical encoders will have a hw interface assigned to it. So there is really no need to track the hw block in specific encoder subclass. Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder_phys.h | 4 +- .../gpu/drm/msm/disp/dpu1

Re: [Freedreno] [PATCH 4/4] drm/msm: dpu: Don't queue the frame_done watchdog for cursor

2019-02-06 Thread Jeykumar Sankaran
the cursor moves without a synchronous frame following it up before the timeout expires. Since we don't wait for frame_done, and don't handle it, we shouldn't modify the watchdog. Signed-off-by: Sean Paul --- Reviewed-by: Jeykumar Sankaran drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 19

Re: [Freedreno] [PATCH 3/4] drm/msm: dpu: Untangle frame_done timeout units

2019-02-06 Thread Jeykumar Sankaran
also dropped the timeout from the previous 60 frames to 5. That seems like more than enough time to give up on a frame, and my guess is that no one intended for the timeout to _actually_ be 60 frames. Signed-off-by: Sean Paul Reviewed-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp

Re: [Freedreno] [PATCH 2/4] drm/msm: dpu: Simplify frame_done watchdog timeout calculation

2019-02-06 Thread Jeykumar Sankaran
_dpu_encoder_kickoff_phys(dpu_enc, async); Reviewed-by: Jeykumar Sankaran -- Jeykumar S ___ Freedreno mailing list Freedreno@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/freedreno

Re: [Freedreno] [PATCH 1/4] drm/msm: Use drm_mode_vrefresh instead of mode->vrefresh

2019-02-06 Thread Jeykumar Sankaran
On 2019-01-28 12:42, Sean Paul wrote: From: Sean Paul Use the drm_mode_vrefresh helper where we need refresh rate in case vrefresh is empty. Signed-off-by: Sean Paul Reviewed-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 6 +++--- drivers/gpu/drm/msm

Re: [Freedreno] [PATCH 1/1] drm/msm/dpu: remove struct encoder_kickoff_params

2019-01-02 Thread Jeykumar Sankaran
On 2018-12-21 11:41, Bruce Wang wrote: The contents of struct encoder_kickoff_params are never used. Remove the structure and all remnants of it from function calls. Signed-off-by: Bruce Wang --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 7 ++-

[Freedreno] [PATCH v4 3/3] drm/msm/dpu: add display port support in DPU

2018-12-17 Thread Jeykumar Sankaran
/87 Signed-off-by: Jeykumar Sankaran Reviewed-by: Jordan Crouse Reviewed-by: Sean Paul --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 8 ++-- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 58 + 2 files changed, 54 insertions(+), 12 deletions(-) diff --git

[Freedreno] [PATCH v4 1/3] drm/msm/dpu: fix documentation for intf_type

2018-12-17 Thread Jeykumar Sankaran
Fix intf_type description in msm_disp_info to show that it represents drm encoder mode of the display. changes in v3: - introduced in the series changes in v4: - none Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.h | 2 +- 1 file changed, 1 insertion(+), 1

[Freedreno] [PATCH v4 2/3] drm/msm/dpu: handle failures while initializing displays

2018-12-17 Thread Jeykumar Sankaran
Bail out KMS hw init on display initialization failures with proper error logging. changes in v3: - introduced in the series changes in v4: - avoid duplicate return on errors (Sean Paul) - avoid spamming errors on failures (Jordon Crouse) Signed-off-by: Jeykumar Sankaran

Re: [Freedreno] [PATCH v3 2/3] drm/msm/dpu: handle failures while initializing displays

2018-12-17 Thread Jeykumar Sankaran
On 2018-12-14 07:22, Sean Paul wrote: On Thu, Dec 13, 2018 at 10:51:03AM -0800, Jeykumar Sankaran wrote: Bail out KMS hw init on display initialization failures with proper error logging. changes in v3: - introduced in the series Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm

Re: [Freedreno] [PATCH v3 2/3] drm/msm/dpu: handle failures while initializing displays

2018-12-17 Thread Jeykumar Sankaran
On 2018-12-14 07:22, Sean Paul wrote: On Thu, Dec 13, 2018 at 10:51:03AM -0800, Jeykumar Sankaran wrote: Bail out KMS hw init on display initialization failures with proper error logging. changes in v3: - introduced in the series Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm

[Freedreno] [PATCH v5 4/5] drm/msm: clean up display thread

2018-12-14 Thread Jeykumar Sankaran
tip with [1] (Sean Paul) [1] https://patchwork.freedesktop.org/patch/255105/ Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.c | 43 ++- drivers/gpu/drm/msm/msm_drv.h | 1 - 2 files changed, 2 insertions(+), 42 deletions(-) diff --git

[Freedreno] [PATCH v5 3/5] drm/msm/dpu: use msm wq for idle power collapse

2018-12-14 Thread Jeykumar Sankaran
: - use msm wq for delayed works changes in v5: - none Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 25 +++-- 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c b/drivers

[Freedreno] [PATCH v5 1/5] drm/msm/dpu: use kthread_destroy_worker to release msm workers

2018-12-14 Thread Jeykumar Sankaran
use kthread_destroy_worker to destroy workers and release their associated kthreads. changes in v3: - introduced in the series changes in v4: - none changes in v5: - none Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.c | 6 ++ 1 file changed, 2

[Freedreno] [PATCH v5 2/5] drm/msm/dpu: use msm wq for vblank events

2018-12-14 Thread Jeykumar Sankaran
for vblank events changes in v5: - none Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.c | 9 - drivers/gpu/drm/msm/msm_drv.h | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index

[Freedreno] [PATCH v5 5/5] drm/msm: subclass work object for vblank events

2018-12-14 Thread Jeykumar Sankaran
optimization on system wq (Sean Paul) changes in v3: - none changes in v4: - move flush_workqueue before irq uninstall changes in v5: - none Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.c | 71 ++- drivers/gpu/drm/msm

[Freedreno] [PATCH v3 3/3] drm/msm/dpu: add display port support in DPU

2018-12-13 Thread Jeykumar Sankaran
(Jordan Crouse) changes in v3: - add dp support after fixing the current code base for error logging (Sean Paul) [1] https://lwn.net/Articles/768265/ [2] https://lkml.org/lkml/2018/11/17/87 Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 8

[Freedreno] [PATCH v3 1/3] drm/msm/dpu: fix documentation for intf_type

2018-12-13 Thread Jeykumar Sankaran
Fix intf_type description in msm_disp_info to show that it represents drm encoder mode of the display. changes in v3: - introduced in the series Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git

[Freedreno] [PATCH v2 3/6] drm/msm/dpu: clean up dpu_rm_check_property_topctl declaration

2018-12-07 Thread Jeykumar Sankaran
Definition was removed already. Clean up header declaration. changes in v2: - none Signed-off-by: Jeykumar Sankaran Reviewed-by: Sean Paul --- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h | 8 1 file changed, 8 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h b

[Freedreno] [PATCH v2 4/6] drm/msm/dpu: remove encoder from crtc mixer struct

2018-12-07 Thread Jeykumar Sankaran
Not actively used. Clean up the crtc mixer struct. changes in v2: - none Signed-off-by: Jeykumar Sankaran Reviewed-by: Sean Paul --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 2 -- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.h | 2 -- 2 files changed, 4 deletions(-) diff --git a/drivers

[Freedreno] [PATCH v2 1/6] drm/msm/dpu: avoid tracking reservations in RM

2018-12-07 Thread Jeykumar Sankaran
the support from RM. Replace rsvp with the corresponding encoder id to tag the HW blocks reserved. It prepares DPU to get rid of RM altogether and track reservations using private states. changes in v2: - none Signed-off-by: Jeykumar Sankaran Reviewed-by: Sean Paul --- drivers/gpu/drm/msm

[Freedreno] [PATCH v2 5/6] drm/msm/dpu: clean up redundant hw type

2018-12-07 Thread Jeykumar Sankaran
struct dpu_hw_blk has hw block type info. Remove duplicate type tracking in struct dpu_rm_hw_blk. changes in v2: - remove redundant type in trace api's (Sean Paul) Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c| 22 +- drivers/gpu

[Freedreno] [PATCH v2 2/6] drm/msm/dpu: remove dev from RM

2018-12-07 Thread Jeykumar Sankaran
Not used. Remove from RM. changes in v2: - none Signed-off-by: Jeykumar Sankaran Reviewed-by: Sean Paul --- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 3 +-- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.c | 7 ++- drivers/gpu/drm/msm/disp/dpu1/dpu_rm.h | 6 +- 3 files changed, 4

[Freedreno] [PATCH v2 6/6] drm/msm/dpu: maintain hw_mdp in kms

2018-12-07 Thread Jeykumar Sankaran
hw_mdp block is common for displays. No need to reserve per display. changes in v2: - use IS_ERR for error checking (Jordan Crouse) Signed-off-by: Jeykumar Sankaran Reviewed-by: Sean Paul --- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 11 +++ drivers/gpu/drm/msm/disp/dpu1

[Freedreno] [PATCH v2 0/6] DPU resource manager cleanup

2018-12-07 Thread Jeykumar Sankaran
First set of clean up patches for DPU resource manager. Removes/realigns some of the redudant RM interfaces. Eventual plan is to migrate resource maintenence using private state objects. Thanks and Regards, Jeykumar S Jeykumar Sankaran (6): drm/msm/dpu: avoid tracking reservations in RM drm

Re: [Freedreno] [PATCH v2 5/5] drm/msm: subclass work object for vblank events

2018-12-07 Thread Jeykumar Sankaran
On 2018-12-07 09:22, Sean Paul wrote: On Mon, Dec 03, 2018 at 12:27:42PM -0800, Jeykumar Sankaran wrote: On 2018-12-03 06:21, Sean Paul wrote: > On Fri, Nov 30, 2018 at 04:21:15PM -0800, Jeykumar Sankaran wrote: > > On 2018-11-30 12:07, Sean Paul wrote: > > > On Fri, Nov 30,

[Freedreno] [PATCH v4 2/5] drm/msm/dpu: use msm wq for vblank events

2018-12-06 Thread Jeykumar Sankaran
for vblank events Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.c | 9 - drivers/gpu/drm/msm/msm_drv.h | 2 +- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/drivers/gpu/drm/msm/msm_drv.c b/drivers/gpu/drm/msm/msm_drv.c index 956f0599..37740b8 100644

[Freedreno] [PATCH v4 5/5] drm/msm: subclass work object for vblank events

2018-12-06 Thread Jeykumar Sankaran
optimization on system wq (Sean Paul) changes in v3: - none changes in v4: - move flush_workqueue before irq uninstall Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.c | 71 ++- drivers/gpu/drm/msm/msm_drv.h | 7 - 2 files

[Freedreno] [PATCH v4 1/5] drm/msm/dpu: use kthread_destroy_worker to release msm workers

2018-12-06 Thread Jeykumar Sankaran
use kthread_destroy_worker to destroy workers and release their associated kthreads. changes in v3: - introduced in the series changes in v4: - none Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/msm_drv.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions

[Freedreno] [PATCH v4 4/5] drm/msm: clean up display thread

2018-12-06 Thread Jeykumar Sankaran
Since there are no clients using these threads, cleaning it up. changes in v2: - switch all the dependent clients to use system wq before removing the disp_threads (Sean Paul) changes in v3: - none changes in v4: - none Signed-off-by: Jeykumar Sankaran

[Freedreno] [PATCH v4 3/5] drm/msm/dpu: use msm wq for idle power collapse

2018-12-06 Thread Jeykumar Sankaran
: - use msm wq for delayed works Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 25 +++-- 1 file changed, 7 insertions(+), 18 deletions(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c b/drivers/gpu/drm/msm/disp/dpu1

Re: [Freedreno] [PATCH v2 5/5] drm/msm: subclass work object for vblank events

2018-12-06 Thread Jeykumar Sankaran
On 2018-12-06 10:56, Jeykumar Sankaran wrote: On 2018-11-07 07:55, Sean Paul wrote: On Tue, Nov 06, 2018 at 02:36:30PM -0800, Jeykumar Sankaran wrote: msm maintains a separate structure to define vblank work definitions and a list to track events submitted to the workqueue. We can avoid

Re: [Freedreno] [PATCH v2 5/5] drm/msm: subclass work object for vblank events

2018-12-06 Thread Jeykumar Sankaran
On 2018-11-07 07:55, Sean Paul wrote: On Tue, Nov 06, 2018 at 02:36:30PM -0800, Jeykumar Sankaran wrote: msm maintains a separate structure to define vblank work definitions and a list to track events submitted to the workqueue. We can avoid this redundant list and its protection mechanism

[Freedreno] [PATCH v6] arm64: dts: qcom: sdm845: Add dpu to sdm845 dts file

2018-12-04 Thread Jeykumar Sankaran
er (Jordan) Changes in v6: - Separating this patch out of the series - fix phy-names Signed-off-by: Jeykumar Sankaran Signed-off-by: Sean Paul --- arch/arm64/boot/dts/qcom/sdm845.dtsi | 203 +++ 1 file changed, 203 insertions(+) diff --git a/arch/

Re: [Freedreno] [PATCH v2] drm/msm/dpu: add display port support in DPU

2018-12-04 Thread Jeykumar Sankaran
On 2018-12-03 06:47, Sean Paul wrote: On Tue, Nov 27, 2018 at 02:28:30PM -0800, Jeykumar Sankaran wrote: Add display port support in DPU by creating hooks for DP encoder enumeration and encoder mode initialization. This change is based on the SDM845 Display port driver changes[1]. changes

[Freedreno] [PATCH v5 1/3] arm64: dts: qcom: sdm845: Add dpu to sdm845 dts file

2018-12-03 Thread Jeykumar Sankaran
er (Jordan) Signed-off-by: Jeykumar Sankaran Signed-off-by: Sean Paul --- arch/arm64/boot/dts/qcom/sdm845.dtsi | 203 +++ 1 file changed, 203 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sdm845.dtsi b/arch/arm64/boot/dts/qcom/sdm845.dtsi index 1419b0

Re: [Freedreno] [PATCH v2 5/5] drm/msm: subclass work object for vblank events

2018-12-03 Thread Jeykumar Sankaran
On 2018-12-03 06:21, Sean Paul wrote: On Fri, Nov 30, 2018 at 04:21:15PM -0800, Jeykumar Sankaran wrote: On 2018-11-30 12:07, Sean Paul wrote: > On Fri, Nov 30, 2018 at 11:45:55AM -0800, Jeykumar Sankaran wrote: > > On 2018-11-29 14:15, Sean Paul wrote: > > > On Tue, Nov 20,

Re: [Freedreno] [PATCH v3 14/24] drm/msm: dpu: Grab the modeset locks in frame_event

2018-12-03 Thread Jeykumar Sankaran
Sankaran Signed-off-by: Sean Paul --- I see Daniel's comments are addressed. So .. Reviewed-by: Jeykumar Sankaran drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 15 ++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c b/drivers/gpu

Re: [Freedreno] [PATCH v2 12/24] drm/msm: dpu: Move crtc runtime resume to encoder

2018-12-03 Thread Jeykumar Sankaran
to be called while holding the modeset locks (although it sometimes is), this presents a race condition. Now that we have ->enabled on the virtual encoders, and a lock to protect it, just call resume on each encoder and only restore the ones that are enabled. Changes in v2: - None Cc: Jeykumar Sanka

Re: [Freedreno] [PATCH v2 11/24] drm/msm: dpu: Add ->enabled to dpu_encoder_virt

2018-12-03 Thread Jeykumar Sankaran
On 2018-11-16 10:42, Sean Paul wrote: From: Sean Paul Add a bool to dpu_encoder_virt to track whether the encoder is enabled or not. Repurpose the enc_lock mutex to ensure that it is consistent with the hw state. Changes in v2: - None Cc: Jeykumar Sankaran Signed-off-by: Sean Paul

Re: [Freedreno] [PATCH v2 04/24] drm/msm: dpu: Don't use power_event for vbif_init_memtypes

2018-12-03 Thread Jeykumar Sankaran
On 2018-11-16 10:42, Sean Paul wrote: From: Sean Paul power_events are only used for pm_runtime, and that's all handled in dpu_kms. So just call vbif_init_memtypes at the correct times. Changes in v2: - Removed obsolete comment (Jeykumar) Cc: Jeykumar Sankaran Signed-off-by: Sean Paul

Re: [Freedreno] [PATCH v2 15/24] drm/msm: dpu: Stop using encoder->crtc pointer

2018-12-03 Thread Jeykumar Sankaran
On 2018-11-26 13:53, Sean Paul wrote: On Mon, Nov 19, 2018 at 12:03:53PM -0800, Jeykumar Sankaran wrote: On 2018-11-16 13:14, Sean Paul wrote: > On Fri, Nov 16, 2018 at 12:05:09PM -0800, Jeykumar Sankaran wrote: > > On 2018-11-16 10:42, Sean Paul wrote: > > > From: Sean Paul

Re: [Freedreno] [Patch v3 ] drm/msm/dpu: Correct dpu destroy and disable order

2018-12-01 Thread Jeykumar Sankaran
pending work if not scheduled. Changes in v2: - Removed double spacings [Jeykumar] Changes in v3: - Fix clock on issue during bootup [Rajendra] Signed-off-by: Jayant Shekhar --- Acked-by: Jeykumar Sankaran drivers/gpu/drm/msm/disp/dpu1/dpu_mdss.c | 6 ++ 1 file changed, 2 insertions

Re: [Freedreno] [PATCH v2 5/5] drm/msm: subclass work object for vblank events

2018-11-30 Thread Jeykumar Sankaran
On 2018-11-30 12:07, Sean Paul wrote: On Fri, Nov 30, 2018 at 11:45:55AM -0800, Jeykumar Sankaran wrote: On 2018-11-29 14:15, Sean Paul wrote: > On Tue, Nov 20, 2018 at 02:04:14PM -0800, Jeykumar Sankaran wrote: > > On 2018-11-07 07:55, Sean Paul wrote: > > > On Tue, Nov 06,

[Freedreno] [PATCH] drm/msm/dpu: set geometry for iommu domain

2018-11-27 Thread Jeykumar Sankaran
Specify geometry for DPU iommu domain which sets the address space for gem allocations. Signed-off-by: Jeykumar Sankaran Suggested-by: Jordan Crouse Suggested-by: Vivek Gautam --- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/drivers/gpu/drm

[Freedreno] [PATCH v2] drm/msm/dpu: add display port support in DPU

2018-11-27 Thread Jeykumar Sankaran
(Jordan Crouse) [1] https://lwn.net/Articles/768265/ [2] https://lkml.org/lkml/2018/11/17/87 Signed-off-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c | 8 ++--- drivers/gpu/drm/msm/disp/dpu1/dpu_kms.c | 47 + 2 files changed, 45 insertions

Re: [Freedreno] [PATCH v2 5/5] drm/msm: subclass work object for vblank events

2018-11-20 Thread Jeykumar Sankaran
On 2018-11-07 07:55, Sean Paul wrote: On Tue, Nov 06, 2018 at 02:36:30PM -0800, Jeykumar Sankaran wrote: msm maintains a separate structure to define vblank work definitions and a list to track events submitted to the workqueue. We can avoid this redundant list and its protection mechanism

Re: [Freedreno] [PATCH v2 24/24] drm/msm: dpu: Remove crtc_lock

2018-11-19 Thread Jeykumar Sankaran
On 2018-11-16 10:42, Sean Paul wrote: From: Sean Paul Each time it's called we're holding the crtc modeset lock, so it's redundant. Changes in v2: - None Signed-off-by: Sean Paul Reviewed-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1/dpu_crtc.c | 11 --- drivers/gpu

Re: [Freedreno] [PATCH v2 21/24] drm/msm: dpu: Don't bother checking ->enabled in dpu_crtc_vblank

2018-11-19 Thread Jeykumar Sankaran
On 2018-11-16 10:42, Sean Paul wrote: From: Sean Paul The drm_crtc_vblank_on/off calls in enable/disable guarantee that we won't call this function when crtc is not enabled. Changes in v2: - None Signed-off-by: Sean Paul Reviewed-by: Jeykumar Sankaran --- drivers/gpu/drm/msm/disp/dpu1

Re: [Freedreno] [PATCH v2 22/24] drm/msm: dpu: Separate crtc assignment from vblank enable

2018-11-19 Thread Jeykumar Sankaran
the assigned crtc will always be valid). As such, we don't need to use modeset locks or the crtc_lock in the vblank_enable/disable routine to be sure state is consistent. ...I think. Changes in v2: - Changed crtc check in toggle_vblank to != (Jeykumar) Cc: Jeykumar Sankaran Signed-off-by: Sean Paul

  1   2   3   4   >