* [PATCH 1/4] drm/i915: Make intel_fuzzy_clock_check available outside of intel_display.c
2019-05-24 16:30 [[PATCH 0/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Hans de Goede
@ 2019-05-24 16:30 ` Hans de Goede
2019-05-24 16:30 ` [PATCH 2/4] drm/i915/dsi: Move logging of DSI VBT parameters to a helper function Hans de Goede
` (5 subsequent siblings)
6 siblings, 0 replies; 13+ messages in thread
From: Hans de Goede @ 2019-05-24 16:30 UTC (permalink / raw)
To: Daniel Vetter, Jani Nikula, Joonas Lahtinen,
Ville Syrjälä, Rodrigo Vivi
Cc: intel-gfx, dri-devel
The next patch in this series uses intel_fuzzy_clock_check from the
vlv_dsi.c code.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
drivers/gpu/drm/i915/intel_display.c | 2 +-
drivers/gpu/drm/i915/intel_drv.h | 1 +
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c
index 5098228f1302..ceb78f44f087 100644
--- a/drivers/gpu/drm/i915/intel_display.c
+++ b/drivers/gpu/drm/i915/intel_display.c
@@ -11942,7 +11942,7 @@ intel_modeset_pipe_config(struct drm_crtc *crtc,
return 0;
}
-static bool intel_fuzzy_clock_check(int clock1, int clock2)
+bool intel_fuzzy_clock_check(int clock1, int clock2)
{
int diff;
diff --git a/drivers/gpu/drm/i915/intel_drv.h b/drivers/gpu/drm/i915/intel_drv.h
index a38b9cff5cd0..e85cd377a652 100644
--- a/drivers/gpu/drm/i915/intel_drv.h
+++ b/drivers/gpu/drm/i915/intel_drv.h
@@ -1742,6 +1742,7 @@ int vlv_force_pll_on(struct drm_i915_private *dev_priv, enum pipe pipe,
const struct dpll *dpll);
void vlv_force_pll_off(struct drm_i915_private *dev_priv, enum pipe pipe);
int lpt_get_iclkip(struct drm_i915_private *dev_priv);
+bool intel_fuzzy_clock_check(int clock1, int clock2);
/* modesetting asserts */
void assert_panel_unlocked(struct drm_i915_private *dev_priv,
--
2.21.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 13+ messages in thread* [PATCH 2/4] drm/i915/dsi: Move logging of DSI VBT parameters to a helper function
2019-05-24 16:30 [[PATCH 0/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Hans de Goede
2019-05-24 16:30 ` [PATCH 1/4] drm/i915: Make intel_fuzzy_clock_check available outside of intel_display.c Hans de Goede
@ 2019-05-24 16:30 ` Hans de Goede
2019-06-04 17:36 ` Ville Syrjälä
2019-05-24 16:30 ` [PATCH 3/4] drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init Hans de Goede
` (4 subsequent siblings)
6 siblings, 1 reply; 13+ messages in thread
From: Hans de Goede @ 2019-05-24 16:30 UTC (permalink / raw)
To: Daniel Vetter, Jani Nikula, Joonas Lahtinen,
Ville Syrjälä, Rodrigo Vivi
Cc: intel-gfx, dri-devel
This is a preparation patch for moving the calling of *_dphy_param_init()
out of intel_dsi_vbt_init.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
drivers/gpu/drm/i915/intel_dsi_vbt.c | 77 +++++++++++++++-------------
1 file changed, 42 insertions(+), 35 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_dsi_vbt.c b/drivers/gpu/drm/i915/intel_dsi_vbt.c
index 3074448446bc..3448e8d51057 100644
--- a/drivers/gpu/drm/i915/intel_dsi_vbt.c
+++ b/drivers/gpu/drm/i915/intel_dsi_vbt.c
@@ -532,6 +532,44 @@ void intel_dsi_msleep(struct intel_dsi *intel_dsi, int msec)
msleep(msec);
}
+static void intel_dsi_log_params(struct intel_dsi *intel_dsi)
+{
+ DRM_DEBUG_KMS("Pclk %d\n", intel_dsi->pclk);
+ DRM_DEBUG_KMS("Pixel overlap %d\n", intel_dsi->pixel_overlap);
+ DRM_DEBUG_KMS("Lane count %d\n", intel_dsi->lane_count);
+ DRM_DEBUG_KMS("DPHY param reg 0x%x\n", intel_dsi->dphy_reg);
+ DRM_DEBUG_KMS("Video mode format %s\n",
+ intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_PULSE ?
+ "non-burst with sync pulse" :
+ intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_EVENTS ?
+ "non-burst with sync events" :
+ intel_dsi->video_mode_format == VIDEO_MODE_BURST ?
+ "burst" : "<unknown>");
+ DRM_DEBUG_KMS("Burst mode ratio %d\n", intel_dsi->burst_mode_ratio);
+ DRM_DEBUG_KMS("Reset timer %d\n", intel_dsi->rst_timer_val);
+ DRM_DEBUG_KMS("Eot %s\n", enableddisabled(intel_dsi->eotp_pkt));
+ DRM_DEBUG_KMS("Clockstop %s\n", enableddisabled(!intel_dsi->clock_stop));
+ DRM_DEBUG_KMS("Mode %s\n", intel_dsi->operation_mode ? "command" : "video");
+ if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
+ DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_FRONT_BACK\n");
+ else if (intel_dsi->dual_link == DSI_DUAL_LINK_PIXEL_ALT)
+ DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_PIXEL_ALT\n");
+ else
+ DRM_DEBUG_KMS("Dual link: NONE\n");
+ DRM_DEBUG_KMS("Pixel Format %d\n", intel_dsi->pixel_format);
+ DRM_DEBUG_KMS("TLPX %d\n", intel_dsi->escape_clk_div);
+ DRM_DEBUG_KMS("LP RX Timeout 0x%x\n", intel_dsi->lp_rx_timeout);
+ DRM_DEBUG_KMS("Turnaround Timeout 0x%x\n", intel_dsi->turn_arnd_val);
+ DRM_DEBUG_KMS("Init Count 0x%x\n", intel_dsi->init_count);
+ DRM_DEBUG_KMS("HS to LP Count 0x%x\n", intel_dsi->hs_to_lp_count);
+ DRM_DEBUG_KMS("LP Byte Clock %d\n", intel_dsi->lp_byte_clk);
+ DRM_DEBUG_KMS("DBI BW Timer 0x%x\n", intel_dsi->bw_timer);
+ DRM_DEBUG_KMS("LP to HS Clock Count 0x%x\n", intel_dsi->clk_lp_to_hs_count);
+ DRM_DEBUG_KMS("HS to LP Clock Count 0x%x\n", intel_dsi->clk_hs_to_lp_count);
+ DRM_DEBUG_KMS("BTA %s\n",
+ enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
+}
+
#define ICL_PREPARE_CNT_MAX 0x7
#define ICL_CLK_ZERO_CNT_MAX 0xf
#define ICL_TRAIL_CNT_MAX 0x7
@@ -635,6 +673,8 @@ static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
HS_TRAIL(trail_cnt) |
HS_EXIT_OVERRIDE |
HS_EXIT(exit_zero_cnt));
+
+ intel_dsi_log_params(intel_dsi);
}
static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
@@ -794,6 +834,8 @@ static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
DIV_ROUND_UP(2 * tlpx_ui + trail_cnt * 2 + 8,
8);
intel_dsi->clk_hs_to_lp_count += extra_byte_count;
+
+ intel_dsi_log_params(intel_dsi);
}
bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
@@ -877,41 +919,6 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
else
vlv_dphy_param_init(intel_dsi);
- DRM_DEBUG_KMS("Pclk %d\n", intel_dsi->pclk);
- DRM_DEBUG_KMS("Pixel overlap %d\n", intel_dsi->pixel_overlap);
- DRM_DEBUG_KMS("Lane count %d\n", intel_dsi->lane_count);
- DRM_DEBUG_KMS("DPHY param reg 0x%x\n", intel_dsi->dphy_reg);
- DRM_DEBUG_KMS("Video mode format %s\n",
- intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_PULSE ?
- "non-burst with sync pulse" :
- intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_EVENTS ?
- "non-burst with sync events" :
- intel_dsi->video_mode_format == VIDEO_MODE_BURST ?
- "burst" : "<unknown>");
- DRM_DEBUG_KMS("Burst mode ratio %d\n", intel_dsi->burst_mode_ratio);
- DRM_DEBUG_KMS("Reset timer %d\n", intel_dsi->rst_timer_val);
- DRM_DEBUG_KMS("Eot %s\n", enableddisabled(intel_dsi->eotp_pkt));
- DRM_DEBUG_KMS("Clockstop %s\n", enableddisabled(!intel_dsi->clock_stop));
- DRM_DEBUG_KMS("Mode %s\n", intel_dsi->operation_mode ? "command" : "video");
- if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
- DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_FRONT_BACK\n");
- else if (intel_dsi->dual_link == DSI_DUAL_LINK_PIXEL_ALT)
- DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_PIXEL_ALT\n");
- else
- DRM_DEBUG_KMS("Dual link: NONE\n");
- DRM_DEBUG_KMS("Pixel Format %d\n", intel_dsi->pixel_format);
- DRM_DEBUG_KMS("TLPX %d\n", intel_dsi->escape_clk_div);
- DRM_DEBUG_KMS("LP RX Timeout 0x%x\n", intel_dsi->lp_rx_timeout);
- DRM_DEBUG_KMS("Turnaround Timeout 0x%x\n", intel_dsi->turn_arnd_val);
- DRM_DEBUG_KMS("Init Count 0x%x\n", intel_dsi->init_count);
- DRM_DEBUG_KMS("HS to LP Count 0x%x\n", intel_dsi->hs_to_lp_count);
- DRM_DEBUG_KMS("LP Byte Clock %d\n", intel_dsi->lp_byte_clk);
- DRM_DEBUG_KMS("DBI BW Timer 0x%x\n", intel_dsi->bw_timer);
- DRM_DEBUG_KMS("LP to HS Clock Count 0x%x\n", intel_dsi->clk_lp_to_hs_count);
- DRM_DEBUG_KMS("HS to LP Clock Count 0x%x\n", intel_dsi->clk_hs_to_lp_count);
- DRM_DEBUG_KMS("BTA %s\n",
- enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
-
/* delays in VBT are in unit of 100us, so need to convert
* here in ms
* Delay (100us) * 100 /1000 = Delay / 10 (ms) */
--
2.21.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [PATCH 2/4] drm/i915/dsi: Move logging of DSI VBT parameters to a helper function
2019-05-24 16:30 ` [PATCH 2/4] drm/i915/dsi: Move logging of DSI VBT parameters to a helper function Hans de Goede
@ 2019-06-04 17:36 ` Ville Syrjälä
0 siblings, 0 replies; 13+ messages in thread
From: Ville Syrjälä @ 2019-06-04 17:36 UTC (permalink / raw)
To: Hans de Goede; +Cc: intel-gfx, dri-devel, Daniel Vetter
On Fri, May 24, 2019 at 06:30:18PM +0200, Hans de Goede wrote:
> This is a preparation patch for moving the calling of *_dphy_param_init()
> out of intel_dsi_vbt_init.
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> ---
> drivers/gpu/drm/i915/intel_dsi_vbt.c | 77 +++++++++++++++-------------
> 1 file changed, 42 insertions(+), 35 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/intel_dsi_vbt.c b/drivers/gpu/drm/i915/intel_dsi_vbt.c
> index 3074448446bc..3448e8d51057 100644
> --- a/drivers/gpu/drm/i915/intel_dsi_vbt.c
> +++ b/drivers/gpu/drm/i915/intel_dsi_vbt.c
> @@ -532,6 +532,44 @@ void intel_dsi_msleep(struct intel_dsi *intel_dsi, int msec)
> msleep(msec);
> }
>
> +static void intel_dsi_log_params(struct intel_dsi *intel_dsi)
> +{
> + DRM_DEBUG_KMS("Pclk %d\n", intel_dsi->pclk);
> + DRM_DEBUG_KMS("Pixel overlap %d\n", intel_dsi->pixel_overlap);
> + DRM_DEBUG_KMS("Lane count %d\n", intel_dsi->lane_count);
> + DRM_DEBUG_KMS("DPHY param reg 0x%x\n", intel_dsi->dphy_reg);
> + DRM_DEBUG_KMS("Video mode format %s\n",
> + intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_PULSE ?
> + "non-burst with sync pulse" :
> + intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_EVENTS ?
> + "non-burst with sync events" :
> + intel_dsi->video_mode_format == VIDEO_MODE_BURST ?
> + "burst" : "<unknown>");
> + DRM_DEBUG_KMS("Burst mode ratio %d\n", intel_dsi->burst_mode_ratio);
> + DRM_DEBUG_KMS("Reset timer %d\n", intel_dsi->rst_timer_val);
> + DRM_DEBUG_KMS("Eot %s\n", enableddisabled(intel_dsi->eotp_pkt));
> + DRM_DEBUG_KMS("Clockstop %s\n", enableddisabled(!intel_dsi->clock_stop));
> + DRM_DEBUG_KMS("Mode %s\n", intel_dsi->operation_mode ? "command" : "video");
> + if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
> + DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_FRONT_BACK\n");
> + else if (intel_dsi->dual_link == DSI_DUAL_LINK_PIXEL_ALT)
> + DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_PIXEL_ALT\n");
> + else
> + DRM_DEBUG_KMS("Dual link: NONE\n");
> + DRM_DEBUG_KMS("Pixel Format %d\n", intel_dsi->pixel_format);
> + DRM_DEBUG_KMS("TLPX %d\n", intel_dsi->escape_clk_div);
> + DRM_DEBUG_KMS("LP RX Timeout 0x%x\n", intel_dsi->lp_rx_timeout);
> + DRM_DEBUG_KMS("Turnaround Timeout 0x%x\n", intel_dsi->turn_arnd_val);
> + DRM_DEBUG_KMS("Init Count 0x%x\n", intel_dsi->init_count);
> + DRM_DEBUG_KMS("HS to LP Count 0x%x\n", intel_dsi->hs_to_lp_count);
> + DRM_DEBUG_KMS("LP Byte Clock %d\n", intel_dsi->lp_byte_clk);
> + DRM_DEBUG_KMS("DBI BW Timer 0x%x\n", intel_dsi->bw_timer);
> + DRM_DEBUG_KMS("LP to HS Clock Count 0x%x\n", intel_dsi->clk_lp_to_hs_count);
> + DRM_DEBUG_KMS("HS to LP Clock Count 0x%x\n", intel_dsi->clk_hs_to_lp_count);
> + DRM_DEBUG_KMS("BTA %s\n",
> + enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
> +}
> +
> #define ICL_PREPARE_CNT_MAX 0x7
> #define ICL_CLK_ZERO_CNT_MAX 0xf
> #define ICL_TRAIL_CNT_MAX 0x7
> @@ -635,6 +673,8 @@ static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
> HS_TRAIL(trail_cnt) |
> HS_EXIT_OVERRIDE |
> HS_EXIT(exit_zero_cnt));
> +
> + intel_dsi_log_params(intel_dsi);
> }
>
> static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
> @@ -794,6 +834,8 @@ static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
> DIV_ROUND_UP(2 * tlpx_ui + trail_cnt * 2 + 8,
> 8);
> intel_dsi->clk_hs_to_lp_count += extra_byte_count;
> +
> + intel_dsi_log_params(intel_dsi);
> }
>
> bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
> @@ -877,41 +919,6 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
> else
> vlv_dphy_param_init(intel_dsi);
>
> - DRM_DEBUG_KMS("Pclk %d\n", intel_dsi->pclk);
> - DRM_DEBUG_KMS("Pixel overlap %d\n", intel_dsi->pixel_overlap);
> - DRM_DEBUG_KMS("Lane count %d\n", intel_dsi->lane_count);
> - DRM_DEBUG_KMS("DPHY param reg 0x%x\n", intel_dsi->dphy_reg);
> - DRM_DEBUG_KMS("Video mode format %s\n",
> - intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_PULSE ?
> - "non-burst with sync pulse" :
> - intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_EVENTS ?
> - "non-burst with sync events" :
> - intel_dsi->video_mode_format == VIDEO_MODE_BURST ?
> - "burst" : "<unknown>");
> - DRM_DEBUG_KMS("Burst mode ratio %d\n", intel_dsi->burst_mode_ratio);
> - DRM_DEBUG_KMS("Reset timer %d\n", intel_dsi->rst_timer_val);
> - DRM_DEBUG_KMS("Eot %s\n", enableddisabled(intel_dsi->eotp_pkt));
> - DRM_DEBUG_KMS("Clockstop %s\n", enableddisabled(!intel_dsi->clock_stop));
> - DRM_DEBUG_KMS("Mode %s\n", intel_dsi->operation_mode ? "command" : "video");
> - if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
> - DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_FRONT_BACK\n");
> - else if (intel_dsi->dual_link == DSI_DUAL_LINK_PIXEL_ALT)
> - DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_PIXEL_ALT\n");
> - else
> - DRM_DEBUG_KMS("Dual link: NONE\n");
> - DRM_DEBUG_KMS("Pixel Format %d\n", intel_dsi->pixel_format);
> - DRM_DEBUG_KMS("TLPX %d\n", intel_dsi->escape_clk_div);
> - DRM_DEBUG_KMS("LP RX Timeout 0x%x\n", intel_dsi->lp_rx_timeout);
> - DRM_DEBUG_KMS("Turnaround Timeout 0x%x\n", intel_dsi->turn_arnd_val);
> - DRM_DEBUG_KMS("Init Count 0x%x\n", intel_dsi->init_count);
> - DRM_DEBUG_KMS("HS to LP Count 0x%x\n", intel_dsi->hs_to_lp_count);
> - DRM_DEBUG_KMS("LP Byte Clock %d\n", intel_dsi->lp_byte_clk);
> - DRM_DEBUG_KMS("DBI BW Timer 0x%x\n", intel_dsi->bw_timer);
> - DRM_DEBUG_KMS("LP to HS Clock Count 0x%x\n", intel_dsi->clk_lp_to_hs_count);
> - DRM_DEBUG_KMS("HS to LP Clock Count 0x%x\n", intel_dsi->clk_hs_to_lp_count);
> - DRM_DEBUG_KMS("BTA %s\n",
> - enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
> -
> /* delays in VBT are in unit of 100us, so need to convert
> * here in ms
> * Delay (100us) * 100 /1000 = Delay / 10 (ms) */
> --
> 2.21.0
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 3/4] drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init
2019-05-24 16:30 [[PATCH 0/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Hans de Goede
2019-05-24 16:30 ` [PATCH 1/4] drm/i915: Make intel_fuzzy_clock_check available outside of intel_display.c Hans de Goede
2019-05-24 16:30 ` [PATCH 2/4] drm/i915/dsi: Move logging of DSI VBT parameters to a helper function Hans de Goede
@ 2019-05-24 16:30 ` Hans de Goede
2019-06-04 17:35 ` Ville Syrjälä
2019-05-24 16:30 ` [PATCH 4/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (v3) Hans de Goede
` (3 subsequent siblings)
6 siblings, 1 reply; 13+ messages in thread
From: Hans de Goede @ 2019-05-24 16:30 UTC (permalink / raw)
To: Daniel Vetter, Jani Nikula, Joonas Lahtinen,
Ville Syrjälä, Rodrigo Vivi
Cc: Hans de Goede, intel-gfx, dri-devel
The vlv/icl_dphy_param_init calls do various calculations to set dphy
parameters based on the pclk.
Move the calling of vlv/icl_dphy_param_init to vlv_dsi_init to give
vlv_dsi_init a chance to tweak the pclk before these calculations are done.
This also removes the single "if (IS_ICELAKE(dev_priv))" check from
intel_dsi_vbt_init making it fully platform agnostic.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
drivers/gpu/drm/i915/icl_dsi.c | 1 +
drivers/gpu/drm/i915/intel_dsi.h | 2 ++
drivers/gpu/drm/i915/intel_dsi_vbt.c | 9 ++-------
drivers/gpu/drm/i915/vlv_dsi.c | 2 ++
4 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/drivers/gpu/drm/i915/icl_dsi.c b/drivers/gpu/drm/i915/icl_dsi.c
index 9d962ea1e635..0f43ef07efec 100644
--- a/drivers/gpu/drm/i915/icl_dsi.c
+++ b/drivers/gpu/drm/i915/icl_dsi.c
@@ -1455,6 +1455,7 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
goto err;
}
+ icl_dphy_param_init(intel_dsi);
return;
err:
diff --git a/drivers/gpu/drm/i915/intel_dsi.h b/drivers/gpu/drm/i915/intel_dsi.h
index 705a609050c0..a58d3d988d9f 100644
--- a/drivers/gpu/drm/i915/intel_dsi.h
+++ b/drivers/gpu/drm/i915/intel_dsi.h
@@ -192,5 +192,7 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id);
void intel_dsi_vbt_exec_sequence(struct intel_dsi *intel_dsi,
enum mipi_seq seq_id);
void intel_dsi_msleep(struct intel_dsi *intel_dsi, int msec);
+void icl_dphy_param_init(struct intel_dsi *intel_dsi);
+void vlv_dphy_param_init(struct intel_dsi *intel_dsi);
#endif /* _INTEL_DSI_H */
diff --git a/drivers/gpu/drm/i915/intel_dsi_vbt.c b/drivers/gpu/drm/i915/intel_dsi_vbt.c
index 3448e8d51057..022bf59418df 100644
--- a/drivers/gpu/drm/i915/intel_dsi_vbt.c
+++ b/drivers/gpu/drm/i915/intel_dsi_vbt.c
@@ -578,7 +578,7 @@ static void intel_dsi_log_params(struct intel_dsi *intel_dsi)
#define ICL_HS_ZERO_CNT_MAX 0xf
#define ICL_EXIT_ZERO_CNT_MAX 0x7
-static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
+void icl_dphy_param_init(struct intel_dsi *intel_dsi)
{
struct drm_device *dev = intel_dsi->base.base.dev;
struct drm_i915_private *dev_priv = to_i915(dev);
@@ -677,7 +677,7 @@ static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
intel_dsi_log_params(intel_dsi);
}
-static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
+void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
{
struct drm_device *dev = intel_dsi->base.base.dev;
struct drm_i915_private *dev_priv = to_i915(dev);
@@ -914,11 +914,6 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
intel_dsi->burst_mode_ratio = burst_mode_ratio;
- if (INTEL_GEN(dev_priv) >= 11)
- icl_dphy_param_init(intel_dsi);
- else
- vlv_dphy_param_init(intel_dsi);
-
/* delays in VBT are in unit of 100us, so need to convert
* here in ms
* Delay (100us) * 100 /1000 = Delay / 10 (ms) */
diff --git a/drivers/gpu/drm/i915/vlv_dsi.c b/drivers/gpu/drm/i915/vlv_dsi.c
index fce8b58f7f93..3329ccf3b346 100644
--- a/drivers/gpu/drm/i915/vlv_dsi.c
+++ b/drivers/gpu/drm/i915/vlv_dsi.c
@@ -1782,6 +1782,8 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
goto err;
}
+ vlv_dphy_param_init(intel_dsi);
+
/*
* In case of BYT with CRC PMIC, we need to use GPIO for
* Panel control.
--
2.21.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [PATCH 3/4] drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init
2019-05-24 16:30 ` [PATCH 3/4] drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init Hans de Goede
@ 2019-06-04 17:35 ` Ville Syrjälä
2019-06-05 18:13 ` Hans de Goede
0 siblings, 1 reply; 13+ messages in thread
From: Ville Syrjälä @ 2019-06-04 17:35 UTC (permalink / raw)
To: Hans de Goede; +Cc: intel-gfx, dri-devel, Rodrigo Vivi, Daniel Vetter
On Fri, May 24, 2019 at 06:30:19PM +0200, Hans de Goede wrote:
> The vlv/icl_dphy_param_init calls do various calculations to set dphy
> parameters based on the pclk.
>
> Move the calling of vlv/icl_dphy_param_init to vlv_dsi_init to give
> vlv_dsi_init a chance to tweak the pclk before these calculations are done.
>
> This also removes the single "if (IS_ICELAKE(dev_priv))" check from
> intel_dsi_vbt_init making it fully platform agnostic.
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
> drivers/gpu/drm/i915/icl_dsi.c | 1 +
> drivers/gpu/drm/i915/intel_dsi.h | 2 ++
> drivers/gpu/drm/i915/intel_dsi_vbt.c | 9 ++-------
> drivers/gpu/drm/i915/vlv_dsi.c | 2 ++
> 4 files changed, 7 insertions(+), 7 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/icl_dsi.c b/drivers/gpu/drm/i915/icl_dsi.c
> index 9d962ea1e635..0f43ef07efec 100644
> --- a/drivers/gpu/drm/i915/icl_dsi.c
> +++ b/drivers/gpu/drm/i915/icl_dsi.c
> @@ -1455,6 +1455,7 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
> goto err;
> }
>
> + icl_dphy_param_init(intel_dsi);
I think we should move the entire function into this file.
> return;
>
> err:
> diff --git a/drivers/gpu/drm/i915/intel_dsi.h b/drivers/gpu/drm/i915/intel_dsi.h
> index 705a609050c0..a58d3d988d9f 100644
> --- a/drivers/gpu/drm/i915/intel_dsi.h
> +++ b/drivers/gpu/drm/i915/intel_dsi.h
> @@ -192,5 +192,7 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id);
> void intel_dsi_vbt_exec_sequence(struct intel_dsi *intel_dsi,
> enum mipi_seq seq_id);
> void intel_dsi_msleep(struct intel_dsi *intel_dsi, int msec);
> +void icl_dphy_param_init(struct intel_dsi *intel_dsi);
> +void vlv_dphy_param_init(struct intel_dsi *intel_dsi);
>
> #endif /* _INTEL_DSI_H */
> diff --git a/drivers/gpu/drm/i915/intel_dsi_vbt.c b/drivers/gpu/drm/i915/intel_dsi_vbt.c
> index 3448e8d51057..022bf59418df 100644
> --- a/drivers/gpu/drm/i915/intel_dsi_vbt.c
> +++ b/drivers/gpu/drm/i915/intel_dsi_vbt.c
> @@ -578,7 +578,7 @@ static void intel_dsi_log_params(struct intel_dsi *intel_dsi)
> #define ICL_HS_ZERO_CNT_MAX 0xf
> #define ICL_EXIT_ZERO_CNT_MAX 0x7
>
> -static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
> +void icl_dphy_param_init(struct intel_dsi *intel_dsi)
> {
> struct drm_device *dev = intel_dsi->base.base.dev;
> struct drm_i915_private *dev_priv = to_i915(dev);
> @@ -677,7 +677,7 @@ static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
> intel_dsi_log_params(intel_dsi);
> }
>
> -static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
> +void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
> {
> struct drm_device *dev = intel_dsi->base.base.dev;
> struct drm_i915_private *dev_priv = to_i915(dev);
> @@ -914,11 +914,6 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
>
> intel_dsi->burst_mode_ratio = burst_mode_ratio;
>
> - if (INTEL_GEN(dev_priv) >= 11)
> - icl_dphy_param_init(intel_dsi);
> - else
> - vlv_dphy_param_init(intel_dsi);
> -
> /* delays in VBT are in unit of 100us, so need to convert
> * here in ms
> * Delay (100us) * 100 /1000 = Delay / 10 (ms) */
> diff --git a/drivers/gpu/drm/i915/vlv_dsi.c b/drivers/gpu/drm/i915/vlv_dsi.c
> index fce8b58f7f93..3329ccf3b346 100644
> --- a/drivers/gpu/drm/i915/vlv_dsi.c
> +++ b/drivers/gpu/drm/i915/vlv_dsi.c
> @@ -1782,6 +1782,8 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
> goto err;
> }
>
> + vlv_dphy_param_init(intel_dsi);
ditto
> +
> /*
> * In case of BYT with CRC PMIC, we need to use GPIO for
> * Panel control.
> --
> 2.21.0
--
Ville Syrjälä
Intel
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply [flat|nested] 13+ messages in thread* Re: [PATCH 3/4] drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init
2019-06-04 17:35 ` Ville Syrjälä
@ 2019-06-05 18:13 ` Hans de Goede
0 siblings, 0 replies; 13+ messages in thread
From: Hans de Goede @ 2019-06-05 18:13 UTC (permalink / raw)
To: Ville Syrjälä; +Cc: intel-gfx, dri-devel, Daniel Vetter
Hi,
On 04-06-19 19:35, Ville Syrjälä wrote:
> On Fri, May 24, 2019 at 06:30:19PM +0200, Hans de Goede wrote:
>> The vlv/icl_dphy_param_init calls do various calculations to set dphy
>> parameters based on the pclk.
>>
>> Move the calling of vlv/icl_dphy_param_init to vlv_dsi_init to give
>> vlv_dsi_init a chance to tweak the pclk before these calculations are done.
>>
>> This also removes the single "if (IS_ICELAKE(dev_priv))" check from
>> intel_dsi_vbt_init making it fully platform agnostic.
>>
>> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>> ---
>> drivers/gpu/drm/i915/icl_dsi.c | 1 +
>> drivers/gpu/drm/i915/intel_dsi.h | 2 ++
>> drivers/gpu/drm/i915/intel_dsi_vbt.c | 9 ++-------
>> drivers/gpu/drm/i915/vlv_dsi.c | 2 ++
>> 4 files changed, 7 insertions(+), 7 deletions(-)
>>
>> diff --git a/drivers/gpu/drm/i915/icl_dsi.c b/drivers/gpu/drm/i915/icl_dsi.c
>> index 9d962ea1e635..0f43ef07efec 100644
>> --- a/drivers/gpu/drm/i915/icl_dsi.c
>> +++ b/drivers/gpu/drm/i915/icl_dsi.c
>> @@ -1455,6 +1455,7 @@ void icl_dsi_init(struct drm_i915_private *dev_priv)
>> goto err;
>> }
>>
>> + icl_dphy_param_init(intel_dsi);
>
> I think we should move the entire function into this file.
I was thinking the same thing when I was writing the patch, but I was
not 100% sure. I'm glad that you think the same, I will post a
new version with this fixed (both of them).
Regards,
Hans
>
>> return;
>>
>> err:
>> diff --git a/drivers/gpu/drm/i915/intel_dsi.h b/drivers/gpu/drm/i915/intel_dsi.h
>> index 705a609050c0..a58d3d988d9f 100644
>> --- a/drivers/gpu/drm/i915/intel_dsi.h
>> +++ b/drivers/gpu/drm/i915/intel_dsi.h
>> @@ -192,5 +192,7 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id);
>> void intel_dsi_vbt_exec_sequence(struct intel_dsi *intel_dsi,
>> enum mipi_seq seq_id);
>> void intel_dsi_msleep(struct intel_dsi *intel_dsi, int msec);
>> +void icl_dphy_param_init(struct intel_dsi *intel_dsi);
>> +void vlv_dphy_param_init(struct intel_dsi *intel_dsi);
>>
>> #endif /* _INTEL_DSI_H */
>> diff --git a/drivers/gpu/drm/i915/intel_dsi_vbt.c b/drivers/gpu/drm/i915/intel_dsi_vbt.c
>> index 3448e8d51057..022bf59418df 100644
>> --- a/drivers/gpu/drm/i915/intel_dsi_vbt.c
>> +++ b/drivers/gpu/drm/i915/intel_dsi_vbt.c
>> @@ -578,7 +578,7 @@ static void intel_dsi_log_params(struct intel_dsi *intel_dsi)
>> #define ICL_HS_ZERO_CNT_MAX 0xf
>> #define ICL_EXIT_ZERO_CNT_MAX 0x7
>>
>> -static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
>> +void icl_dphy_param_init(struct intel_dsi *intel_dsi)
>> {
>> struct drm_device *dev = intel_dsi->base.base.dev;
>> struct drm_i915_private *dev_priv = to_i915(dev);
>> @@ -677,7 +677,7 @@ static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
>> intel_dsi_log_params(intel_dsi);
>> }
>>
>> -static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
>> +void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
>> {
>> struct drm_device *dev = intel_dsi->base.base.dev;
>> struct drm_i915_private *dev_priv = to_i915(dev);
>> @@ -914,11 +914,6 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
>>
>> intel_dsi->burst_mode_ratio = burst_mode_ratio;
>>
>> - if (INTEL_GEN(dev_priv) >= 11)
>> - icl_dphy_param_init(intel_dsi);
>> - else
>> - vlv_dphy_param_init(intel_dsi);
>> -
>> /* delays in VBT are in unit of 100us, so need to convert
>> * here in ms
>> * Delay (100us) * 100 /1000 = Delay / 10 (ms) */
>> diff --git a/drivers/gpu/drm/i915/vlv_dsi.c b/drivers/gpu/drm/i915/vlv_dsi.c
>> index fce8b58f7f93..3329ccf3b346 100644
>> --- a/drivers/gpu/drm/i915/vlv_dsi.c
>> +++ b/drivers/gpu/drm/i915/vlv_dsi.c
>> @@ -1782,6 +1782,8 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
>> goto err;
>> }
>>
>> + vlv_dphy_param_init(intel_dsi);
>
> ditto
>
>> +
>> /*
>> * In case of BYT with CRC PMIC, we need to use GPIO for
>> * Panel control.
>> --
>> 2.21.0
>
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 4/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (v3)
2019-05-24 16:30 [[PATCH 0/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Hans de Goede
` (2 preceding siblings ...)
2019-05-24 16:30 ` [PATCH 3/4] drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init Hans de Goede
@ 2019-05-24 16:30 ` Hans de Goede
2019-06-04 17:45 ` Ville Syrjälä
2019-05-26 12:32 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Patchwork
` (2 subsequent siblings)
6 siblings, 1 reply; 13+ messages in thread
From: Hans de Goede @ 2019-05-24 16:30 UTC (permalink / raw)
To: Daniel Vetter, Jani Nikula, Joonas Lahtinen,
Ville Syrjälä, Rodrigo Vivi
Cc: Hans de Goede, intel-gfx, dri-devel
The GOP sometimes initializes the pclk at a (slightly) different frequency
then the pclk which we've calculated.
This commit makes the DSI code read-back the pclk set by the GOP and
if that is within a reasonable margin of the calculated pclk, uses
that instead.
This fixes the first modeset being a full modeset instead of a
fast modeset on systems where the GOP pclk is different.
Changes in v2:
-Use intel_encoder_current_mode() to get the pclk setup by the GOP
Changes in v3:
-Back to the readback approach, skipping the dsi_pll.ctrl / .dev checks
in intel_pipe_config_compare() when adjust is set leads to:
[drm:pipe_config_err [i915]] *ERROR* mismatch in dsi_pll.ctrl (...)
[drm:pipe_config_err [i915]] *ERROR* mismatch in dsi_pll.div (...)
-Do the readback and pclk overriding from vlv_dsi_init(), rather then from
intel_dsi_vbt_init() as the vbt code should not be touching the hw
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
drivers/gpu/drm/i915/vlv_dsi.c | 22 ++++++++++++++++++----
1 file changed, 18 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/i915/vlv_dsi.c b/drivers/gpu/drm/i915/vlv_dsi.c
index 3329ccf3b346..49975dd84ff4 100644
--- a/drivers/gpu/drm/i915/vlv_dsi.c
+++ b/drivers/gpu/drm/i915/vlv_dsi.c
@@ -1701,7 +1701,7 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
struct drm_encoder *encoder;
struct intel_connector *intel_connector;
struct drm_connector *connector;
- struct drm_display_mode *fixed_mode;
+ struct drm_display_mode *current_mode, *fixed_mode;
enum port port;
DRM_DEBUG_KMS("\n");
@@ -1745,6 +1745,9 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
intel_connector->get_hw_state = intel_connector_get_hw_state;
intel_encoder->port = port;
+ intel_encoder->type = INTEL_OUTPUT_DSI;
+ intel_encoder->power_domain = POWER_DOMAIN_PORT_DSI;
+ intel_encoder->cloneable = 0;
/*
* On BYT/CHV, pipe A maps to MIPI DSI port A, pipe B maps to MIPI DSI
@@ -1782,6 +1785,20 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
goto err;
}
+ /* Use clock read-back from current hw-state for fastboot */
+ current_mode = intel_encoder_current_mode(intel_encoder);
+ if (current_mode) {
+ DRM_DEBUG_KMS("Calculated pclk %d GOP %d\n",
+ intel_dsi->pclk, current_mode->clock);
+ if (intel_fuzzy_clock_check(intel_dsi->pclk,
+ current_mode->clock)) {
+ DRM_DEBUG_KMS("Using GOP pclk\n");
+ intel_dsi->pclk = current_mode->clock;
+ }
+
+ kfree(current_mode);
+ }
+
vlv_dphy_param_init(intel_dsi);
/*
@@ -1799,9 +1816,6 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
}
}
- intel_encoder->type = INTEL_OUTPUT_DSI;
- intel_encoder->power_domain = POWER_DOMAIN_PORT_DSI;
- intel_encoder->cloneable = 0;
drm_connector_init(dev, connector, &intel_dsi_connector_funcs,
DRM_MODE_CONNECTOR_DSI);
--
2.21.0
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 13+ messages in thread* Re: [PATCH 4/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (v3)
2019-05-24 16:30 ` [PATCH 4/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (v3) Hans de Goede
@ 2019-06-04 17:45 ` Ville Syrjälä
0 siblings, 0 replies; 13+ messages in thread
From: Ville Syrjälä @ 2019-06-04 17:45 UTC (permalink / raw)
To: Hans de Goede; +Cc: intel-gfx, dri-devel, Daniel Vetter
On Fri, May 24, 2019 at 06:30:20PM +0200, Hans de Goede wrote:
> The GOP sometimes initializes the pclk at a (slightly) different frequency
> then the pclk which we've calculated.
>
> This commit makes the DSI code read-back the pclk set by the GOP and
> if that is within a reasonable margin of the calculated pclk, uses
> that instead.
>
> This fixes the first modeset being a full modeset instead of a
> fast modeset on systems where the GOP pclk is different.
>
> Changes in v2:
> -Use intel_encoder_current_mode() to get the pclk setup by the GOP
>
> Changes in v3:
> -Back to the readback approach, skipping the dsi_pll.ctrl / .dev checks
> in intel_pipe_config_compare() when adjust is set leads to:
> [drm:pipe_config_err [i915]] *ERROR* mismatch in dsi_pll.ctrl (...)
> [drm:pipe_config_err [i915]] *ERROR* mismatch in dsi_pll.div (...)
> -Do the readback and pclk overriding from vlv_dsi_init(), rather then from
> intel_dsi_vbt_init() as the vbt code should not be touching the hw
>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
> drivers/gpu/drm/i915/vlv_dsi.c | 22 ++++++++++++++++++----
> 1 file changed, 18 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/vlv_dsi.c b/drivers/gpu/drm/i915/vlv_dsi.c
> index 3329ccf3b346..49975dd84ff4 100644
> --- a/drivers/gpu/drm/i915/vlv_dsi.c
> +++ b/drivers/gpu/drm/i915/vlv_dsi.c
> @@ -1701,7 +1701,7 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
> struct drm_encoder *encoder;
> struct intel_connector *intel_connector;
> struct drm_connector *connector;
> - struct drm_display_mode *fixed_mode;
> + struct drm_display_mode *current_mode, *fixed_mode;
> enum port port;
>
> DRM_DEBUG_KMS("\n");
> @@ -1745,6 +1745,9 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
> intel_connector->get_hw_state = intel_connector_get_hw_state;
>
> intel_encoder->port = port;
> + intel_encoder->type = INTEL_OUTPUT_DSI;
> + intel_encoder->power_domain = POWER_DOMAIN_PORT_DSI;
> + intel_encoder->cloneable = 0;
>
> /*
> * On BYT/CHV, pipe A maps to MIPI DSI port A, pipe B maps to MIPI DSI
> @@ -1782,6 +1785,20 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
> goto err;
> }
>
> + /* Use clock read-back from current hw-state for fastboot */
> + current_mode = intel_encoder_current_mode(intel_encoder);
> + if (current_mode) {
> + DRM_DEBUG_KMS("Calculated pclk %d GOP %d\n",
> + intel_dsi->pclk, current_mode->clock);
> + if (intel_fuzzy_clock_check(intel_dsi->pclk,
> + current_mode->clock)) {
> + DRM_DEBUG_KMS("Using GOP pclk\n");
> + intel_dsi->pclk = current_mode->clock;
> + }
I wonder if we should be checking whether the mode is otherwise
identical to whatever we got from VBT? Though I suppose that shouldn't
really happen.
The whole dsi clock handling is a proper mess, but looks like ->pclk
is supposed to be the burst clock so I think this should end up doing
more or less the right thing because we seem to stuffing the DPLL
readout into the mode->clock.
Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> +
> + kfree(current_mode);
> + }
> +
> vlv_dphy_param_init(intel_dsi);
>
> /*
> @@ -1799,9 +1816,6 @@ void vlv_dsi_init(struct drm_i915_private *dev_priv)
> }
> }
>
> - intel_encoder->type = INTEL_OUTPUT_DSI;
> - intel_encoder->power_domain = POWER_DOMAIN_PORT_DSI;
> - intel_encoder->cloneable = 0;
> drm_connector_init(dev, connector, &intel_dsi_connector_funcs,
> DRM_MODE_CONNECTOR_DSI);
>
> --
> 2.21.0
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 13+ messages in thread
* ✗ Fi.CI.CHECKPATCH: warning for drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3)
2019-05-24 16:30 [[PATCH 0/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Hans de Goede
` (3 preceding siblings ...)
2019-05-24 16:30 ` [PATCH 4/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (v3) Hans de Goede
@ 2019-05-26 12:32 ` Patchwork
2019-05-26 13:01 ` ✓ Fi.CI.BAT: success " Patchwork
2019-05-27 2:38 ` ✓ Fi.CI.IGT: " Patchwork
6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2019-05-26 12:32 UTC (permalink / raw)
To: Hans de Goede; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3)
URL : https://patchwork.freedesktop.org/series/61115/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
48ee9e30a01e drm/i915: Make intel_fuzzy_clock_check available outside of intel_display.c
b5ba377aeaef drm/i915/dsi: Move logging of DSI VBT parameters to a helper function
-:55: CHECK:PARENTHESIS_ALIGNMENT: Alignment should match open parenthesis
#55: FILE: drivers/gpu/drm/i915/intel_dsi_vbt.c:575:
+ DRM_DEBUG_KMS("BTA %s\n",
+ enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
total: 0 errors, 0 warnings, 1 checks, 101 lines checked
c955601acdf9 drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init
a902d66a2145 drm/i915/dsi: Read back pclk set by GOP and use that as pclk (v3)
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 13+ messages in thread* ✓ Fi.CI.BAT: success for drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3)
2019-05-24 16:30 [[PATCH 0/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Hans de Goede
` (4 preceding siblings ...)
2019-05-26 12:32 ` ✗ Fi.CI.CHECKPATCH: warning for drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Patchwork
@ 2019-05-26 13:01 ` Patchwork
2019-05-27 2:38 ` ✓ Fi.CI.IGT: " Patchwork
6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2019-05-26 13:01 UTC (permalink / raw)
To: Hans de Goede; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3)
URL : https://patchwork.freedesktop.org/series/61115/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_6142 -> Patchwork_13093
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/
Known issues
------------
Here are the changes found in Patchwork_13093 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@i915_selftest@live_hangcheck:
- fi-skl-iommu: [PASS][1] -> [INCOMPLETE][2] ([fdo#108602] / [fdo#108744])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/fi-skl-iommu/igt@i915_selftest@live_hangcheck.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/fi-skl-iommu/igt@i915_selftest@live_hangcheck.html
#### Possible fixes ####
* igt@gem_exec_suspend@basic-s4-devices:
- fi-blb-e6850: [INCOMPLETE][3] ([fdo#107718]) -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/fi-blb-e6850/igt@gem_exec_suspend@basic-s4-devices.html
* igt@i915_selftest@live_contexts:
- fi-bdw-gvtdvm: [DMESG-FAIL][5] ([fdo#110235]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/fi-bdw-gvtdvm/igt@i915_selftest@live_contexts.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/fi-bdw-gvtdvm/igt@i915_selftest@live_contexts.html
* {igt@i915_selftest@live_vma}:
- {fi-icl-dsi}: [INCOMPLETE][7] ([fdo#107713]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/fi-icl-dsi/igt@i915_selftest@live_vma.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/fi-icl-dsi/igt@i915_selftest@live_vma.html
* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [FAIL][9] ([fdo#109485]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#108602]: https://bugs.freedesktop.org/show_bug.cgi?id=108602
[fdo#108744]: https://bugs.freedesktop.org/show_bug.cgi?id=108744
[fdo#109485]: https://bugs.freedesktop.org/show_bug.cgi?id=109485
[fdo#110235]: https://bugs.freedesktop.org/show_bug.cgi?id=110235
Participating hosts (53 -> 44)
------------------------------
Missing (9): fi-kbl-soraka fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-y fi-bdw-samus fi-byt-clapper fi-skl-6700k2
Build changes
-------------
* Linux: CI_DRM_6142 -> Patchwork_13093
CI_DRM_6142: a388075b2bdc3f714c11e90afb32d65e121987f3 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5015: cdd6b0a7630762cec14596b9863f418b48c32f46 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_13093: a902d66a21452613784beb399060bd2a5179c9ca @ git://anongit.freedesktop.org/gfx-ci/linux
== Linux commits ==
a902d66a2145 drm/i915/dsi: Read back pclk set by GOP and use that as pclk (v3)
c955601acdf9 drm/i915/dsi: Move vlv/icl_dphy_param_init call out of intel_dsi_vbt_init
b5ba377aeaef drm/i915/dsi: Move logging of DSI VBT parameters to a helper function
48ee9e30a01e drm/i915: Make intel_fuzzy_clock_check available outside of intel_display.c
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 13+ messages in thread* ✓ Fi.CI.IGT: success for drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3)
2019-05-24 16:30 [[PATCH 0/4] drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3) Hans de Goede
` (5 preceding siblings ...)
2019-05-26 13:01 ` ✓ Fi.CI.BAT: success " Patchwork
@ 2019-05-27 2:38 ` Patchwork
6 siblings, 0 replies; 13+ messages in thread
From: Patchwork @ 2019-05-27 2:38 UTC (permalink / raw)
To: Hans de Goede; +Cc: intel-gfx
== Series Details ==
Series: drm/i915/dsi: Read back pclk set by GOP and use that as pclk (version 3)
URL : https://patchwork.freedesktop.org/series/61115/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_6142_full -> Patchwork_13093_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
Known issues
------------
Here are the changes found in Patchwork_13093_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@gem_ctx_isolation@bcs0-s3:
- shard-apl: [PASS][1] -> [DMESG-WARN][2] ([fdo#108566]) +3 similar issues
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-apl4/igt@gem_ctx_isolation@bcs0-s3.html
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-apl6/igt@gem_ctx_isolation@bcs0-s3.html
* igt@gem_pwrite@small-cpu-fbr:
- shard-apl: [PASS][3] -> [INCOMPLETE][4] ([fdo#103927])
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-apl5/igt@gem_pwrite@small-cpu-fbr.html
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-apl5/igt@gem_pwrite@small-cpu-fbr.html
* igt@i915_pm_rpm@gem-mmap-cpu:
- shard-skl: [PASS][5] -> [INCOMPLETE][6] ([fdo#107807])
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl6/igt@i915_pm_rpm@gem-mmap-cpu.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl7/igt@i915_pm_rpm@gem-mmap-cpu.html
* igt@i915_pm_rpm@system-suspend-execbuf:
- shard-skl: [PASS][7] -> [INCOMPLETE][8] ([fdo#104108] / [fdo#107807])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl10/igt@i915_pm_rpm@system-suspend-execbuf.html
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl6/igt@i915_pm_rpm@system-suspend-execbuf.html
* igt@kms_cursor_crc@pipe-c-cursor-suspend:
- shard-skl: [PASS][9] -> [INCOMPLETE][10] ([fdo#110741])
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl3/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl5/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
* igt@kms_dp_dsc@basic-dsc-enable-edp:
- shard-iclb: [PASS][11] -> [SKIP][12] ([fdo#109349])
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb2/igt@kms_dp_dsc@basic-dsc-enable-edp.html
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb7/igt@kms_dp_dsc@basic-dsc-enable-edp.html
* igt@kms_flip@flip-vs-expired-vblank-interruptible:
- shard-glk: [PASS][13] -> [FAIL][14] ([fdo#102887] / [fdo#105363])
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-glk4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-glk2/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite:
- shard-iclb: [PASS][15] -> [FAIL][16] ([fdo#103167]) +4 similar issues
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- shard-snb: [PASS][17] -> [INCOMPLETE][18] ([fdo#105411])
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-snb1/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-snb1/igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a.html
* igt@kms_plane_lowres@pipe-a-tiling-x:
- shard-iclb: [PASS][19] -> [FAIL][20] ([fdo#103166])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb6/igt@kms_plane_lowres@pipe-a-tiling-x.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb1/igt@kms_plane_lowres@pipe-a-tiling-x.html
* igt@kms_psr2_su@frontbuffer:
- shard-iclb: [PASS][21] -> [SKIP][22] ([fdo#109642])
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb2/igt@kms_psr2_su@frontbuffer.html
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb7/igt@kms_psr2_su@frontbuffer.html
* igt@kms_psr@psr2_cursor_mmap_cpu:
- shard-iclb: [PASS][23] -> [SKIP][24] ([fdo#109441]) +2 similar issues
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb2/igt@kms_psr@psr2_cursor_mmap_cpu.html
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb7/igt@kms_psr@psr2_cursor_mmap_cpu.html
* igt@kms_sysfs_edid_timing:
- shard-iclb: [PASS][25] -> [FAIL][26] ([fdo#100047])
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb1/igt@kms_sysfs_edid_timing.html
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb3/igt@kms_sysfs_edid_timing.html
#### Possible fixes ####
* igt@gem_exec_schedule@preemptive-hang-render:
- shard-glk: [INCOMPLETE][27] ([fdo#103359] / [k.org#198133]) -> [PASS][28]
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-glk7/igt@gem_exec_schedule@preemptive-hang-render.html
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-glk7/igt@gem_exec_schedule@preemptive-hang-render.html
* igt@gem_workarounds@suspend-resume-context:
- shard-kbl: [DMESG-WARN][29] ([fdo#108566]) -> [PASS][30]
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-kbl1/igt@gem_workarounds@suspend-resume-context.html
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-kbl4/igt@gem_workarounds@suspend-resume-context.html
* igt@i915_pm_rpm@system-suspend:
- shard-skl: [INCOMPLETE][31] ([fdo#104108] / [fdo#107807]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl2/igt@i915_pm_rpm@system-suspend.html
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl1/igt@i915_pm_rpm@system-suspend.html
* igt@i915_pm_rpm@system-suspend-devices:
- shard-skl: [INCOMPLETE][33] ([fdo#107807]) -> [PASS][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl5/igt@i915_pm_rpm@system-suspend-devices.html
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl4/igt@i915_pm_rpm@system-suspend-devices.html
* igt@i915_suspend@sysfs-reader:
- shard-apl: [DMESG-WARN][35] ([fdo#108566]) -> [PASS][36] +6 similar issues
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-apl1/igt@i915_suspend@sysfs-reader.html
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-apl1/igt@i915_suspend@sysfs-reader.html
* igt@kms_cursor_crc@pipe-b-cursor-64x64-onscreen:
- shard-skl: [FAIL][37] ([fdo#103232]) -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl10/igt@kms_cursor_crc@pipe-b-cursor-64x64-onscreen.html
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl5/igt@kms_cursor_crc@pipe-b-cursor-64x64-onscreen.html
* igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy:
- shard-glk: [FAIL][39] ([fdo#104873]) -> [PASS][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-glk2/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-glk6/igt@kms_cursor_legacy@2x-flip-vs-cursor-legacy.html
* igt@kms_flip@flip-vs-suspend:
- shard-hsw: [INCOMPLETE][41] ([fdo#103540]) -> [PASS][42] +1 similar issue
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-hsw6/igt@kms_flip@flip-vs-suspend.html
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-hsw5/igt@kms_flip@flip-vs-suspend.html
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-skl: [INCOMPLETE][43] ([fdo#109507]) -> [PASS][44]
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl7/igt@kms_flip@flip-vs-suspend-interruptible.html
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl3/igt@kms_flip@flip-vs-suspend-interruptible.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render:
- shard-iclb: [FAIL][45] ([fdo#103167]) -> [PASS][46] +5 similar issues
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb1/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render.html
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb5/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render.html
* igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-onoff:
- shard-skl: [FAIL][47] ([fdo#103167]) -> [PASS][48]
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl4/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-onoff.html
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-spr-indfb-onoff.html
* igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite:
- shard-skl: [FAIL][49] ([fdo#103167] / [fdo#110379]) -> [PASS][50]
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl4/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl8/igt@kms_frontbuffer_tracking@fbcpsr-rgb101010-draw-pwrite.html
* igt@kms_plane_alpha_blend@pipe-b-constant-alpha-min:
- shard-skl: [FAIL][51] ([fdo#108145]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl9/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-min.html
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl2/igt@kms_plane_alpha_blend@pipe-b-constant-alpha-min.html
* igt@kms_plane_alpha_blend@pipe-b-coverage-7efc:
- shard-skl: [FAIL][53] ([fdo#108145] / [fdo#110403]) -> [PASS][54]
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl10/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl5/igt@kms_plane_alpha_blend@pipe-b-coverage-7efc.html
* igt@kms_psr@psr2_cursor_plane_onoff:
- shard-iclb: [SKIP][55] ([fdo#109441]) -> [PASS][56] +1 similar issue
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb1/igt@kms_psr@psr2_cursor_plane_onoff.html
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html
#### Warnings ####
* igt@gem_mmap_gtt@forked-big-copy-odd:
- shard-iclb: [TIMEOUT][57] ([fdo#109673]) -> [INCOMPLETE][58] ([fdo#107713] / [fdo#109100])
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-iclb3/igt@gem_mmap_gtt@forked-big-copy-odd.html
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-iclb8/igt@gem_mmap_gtt@forked-big-copy-odd.html
* igt@i915_pm_rpm@pc8-residency:
- shard-skl: [INCOMPLETE][59] ([fdo#107807]) -> [SKIP][60] ([fdo#109271])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl9/igt@i915_pm_rpm@pc8-residency.html
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl10/igt@i915_pm_rpm@pc8-residency.html
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-onoff:
- shard-skl: [FAIL][61] ([fdo#108040]) -> [FAIL][62] ([fdo#103167]) +1 similar issue
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-skl4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-onoff.html
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-skl9/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-onoff.html
* igt@prime_vgem@fence-wait-bsd1:
- shard-snb: [FAIL][63] -> [INCOMPLETE][64] ([fdo#105411])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6142/shard-snb5/igt@prime_vgem@fence-wait-bsd1.html
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/shard-snb4/igt@prime_vgem@fence-wait-bsd1.html
[fdo#100047]: https://bugs.freedesktop.org/show_bug.cgi?id=100047
[fdo#102887]: https://bugs.freedesktop.org/show_bug.cgi?id=102887
[fdo#103166]: https://bugs.freedesktop.org/show_bug.cgi?id=103166
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#103359]: https://bugs.freedesktop.org/show_bug.cgi?id=103359
[fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104108]: https://bugs.freedesktop.org/show_bug.cgi?id=104108
[fdo#104873]: https://bugs.freedesktop.org/show_bug.cgi?id=104873
[fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
[fdo#105411]: https://bugs.freedesktop.org/show_bug.cgi?id=105411
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107807]: https://bugs.freedesktop.org/show_bug.cgi?id=107807
[fdo#108040]: https://bugs.freedesktop.org/show_bug.cgi?id=108040
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#109100]: https://bugs.freedesktop.org/show_bug.cgi?id=109100
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109349]: https://bugs.freedesktop.org/show_bug.cgi?id=109349
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109507]: https://bugs.freedesktop.org/show_bug.cgi?id=109507
[fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
[fdo#109673]: https://bugs.freedesktop.org/show_bug.cgi?id=109673
[fdo#110379]: https://bugs.freedesktop.org/show_bug.cgi?id=110379
[fdo#110403]: https://bugs.freedesktop.org/show_bug.cgi?id=110403
[fdo#110741]: https://bugs.freedesktop.org/show_bug.cgi?id=110741
[k.org#198133]: https://bugzilla.kernel.org/show_bug.cgi?id=198133
Participating hosts (10 -> 10)
------------------------------
No changes in participating hosts
Build changes
-------------
* Linux: CI_DRM_6142 -> Patchwork_13093
CI_DRM_6142: a388075b2bdc3f714c11e90afb32d65e121987f3 @ git://anongit.freedesktop.org/gfx-ci/linux
IGT_5015: cdd6b0a7630762cec14596b9863f418b48c32f46 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
Patchwork_13093: a902d66a21452613784beb399060bd2a5179c9ca @ git://anongit.freedesktop.org/gfx-ci/linux
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_13093/
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
^ permalink raw reply [flat|nested] 13+ messages in thread
* [PATCH 2/4] drm/i915/dsi: Move logging of DSI VBT parameters to a helper function
2018-12-01 11:30 [PATCH 1/4] drm/i915: Make intel_fuzzy_clock_check available outside of intel_display.c Hans de Goede
@ 2018-12-01 11:30 ` Hans de Goede
0 siblings, 0 replies; 13+ messages in thread
From: Hans de Goede @ 2018-12-01 11:30 UTC (permalink / raw)
To: Jani Nikula, Joonas Lahtinen, Rodrigo Vivi,
Ville Syrjälä
Cc: Hans de Goede, intel-gfx, dri-devel
This is a preparation patch for moving the calling of *_dphy_param_init()
out of intel_dsi_vbt_init.
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
drivers/gpu/drm/i915/intel_dsi_vbt.c | 77 +++++++++++++++-------------
1 file changed, 42 insertions(+), 35 deletions(-)
diff --git a/drivers/gpu/drm/i915/intel_dsi_vbt.c b/drivers/gpu/drm/i915/intel_dsi_vbt.c
index 80bd56e96143..2afd9ddc94e8 100644
--- a/drivers/gpu/drm/i915/intel_dsi_vbt.c
+++ b/drivers/gpu/drm/i915/intel_dsi_vbt.c
@@ -510,6 +510,44 @@ int intel_dsi_vbt_get_modes(struct intel_dsi *intel_dsi)
return 1;
}
+static void intel_dsi_log_params(struct intel_dsi *intel_dsi)
+{
+ DRM_DEBUG_KMS("Pclk %d\n", intel_dsi->pclk);
+ DRM_DEBUG_KMS("Pixel overlap %d\n", intel_dsi->pixel_overlap);
+ DRM_DEBUG_KMS("Lane count %d\n", intel_dsi->lane_count);
+ DRM_DEBUG_KMS("DPHY param reg 0x%x\n", intel_dsi->dphy_reg);
+ DRM_DEBUG_KMS("Video mode format %s\n",
+ intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_PULSE ?
+ "non-burst with sync pulse" :
+ intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_EVENTS ?
+ "non-burst with sync events" :
+ intel_dsi->video_mode_format == VIDEO_MODE_BURST ?
+ "burst" : "<unknown>");
+ DRM_DEBUG_KMS("Burst mode ratio %d\n", intel_dsi->burst_mode_ratio);
+ DRM_DEBUG_KMS("Reset timer %d\n", intel_dsi->rst_timer_val);
+ DRM_DEBUG_KMS("Eot %s\n", enableddisabled(intel_dsi->eotp_pkt));
+ DRM_DEBUG_KMS("Clockstop %s\n", enableddisabled(!intel_dsi->clock_stop));
+ DRM_DEBUG_KMS("Mode %s\n", intel_dsi->operation_mode ? "command" : "video");
+ if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
+ DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_FRONT_BACK\n");
+ else if (intel_dsi->dual_link == DSI_DUAL_LINK_PIXEL_ALT)
+ DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_PIXEL_ALT\n");
+ else
+ DRM_DEBUG_KMS("Dual link: NONE\n");
+ DRM_DEBUG_KMS("Pixel Format %d\n", intel_dsi->pixel_format);
+ DRM_DEBUG_KMS("TLPX %d\n", intel_dsi->escape_clk_div);
+ DRM_DEBUG_KMS("LP RX Timeout 0x%x\n", intel_dsi->lp_rx_timeout);
+ DRM_DEBUG_KMS("Turnaround Timeout 0x%x\n", intel_dsi->turn_arnd_val);
+ DRM_DEBUG_KMS("Init Count 0x%x\n", intel_dsi->init_count);
+ DRM_DEBUG_KMS("HS to LP Count 0x%x\n", intel_dsi->hs_to_lp_count);
+ DRM_DEBUG_KMS("LP Byte Clock %d\n", intel_dsi->lp_byte_clk);
+ DRM_DEBUG_KMS("DBI BW Timer 0x%x\n", intel_dsi->bw_timer);
+ DRM_DEBUG_KMS("LP to HS Clock Count 0x%x\n", intel_dsi->clk_lp_to_hs_count);
+ DRM_DEBUG_KMS("HS to LP Clock Count 0x%x\n", intel_dsi->clk_hs_to_lp_count);
+ DRM_DEBUG_KMS("BTA %s\n",
+ enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
+}
+
#define ICL_PREPARE_CNT_MAX 0x7
#define ICL_CLK_ZERO_CNT_MAX 0xf
#define ICL_TRAIL_CNT_MAX 0x7
@@ -613,6 +651,8 @@ static void icl_dphy_param_init(struct intel_dsi *intel_dsi)
HS_TRAIL(trail_cnt) |
HS_EXIT_OVERRIDE |
HS_EXIT(exit_zero_cnt));
+
+ intel_dsi_log_params(intel_dsi);
}
static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
@@ -772,6 +812,8 @@ static void vlv_dphy_param_init(struct intel_dsi *intel_dsi)
DIV_ROUND_UP(2 * tlpx_ui + trail_cnt * 2 + 8,
8);
intel_dsi->clk_hs_to_lp_count += extra_byte_count;
+
+ intel_dsi_log_params(intel_dsi);
}
bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
@@ -855,41 +897,6 @@ bool intel_dsi_vbt_init(struct intel_dsi *intel_dsi, u16 panel_id)
else
vlv_dphy_param_init(intel_dsi);
- DRM_DEBUG_KMS("Pclk %d\n", intel_dsi->pclk);
- DRM_DEBUG_KMS("Pixel overlap %d\n", intel_dsi->pixel_overlap);
- DRM_DEBUG_KMS("Lane count %d\n", intel_dsi->lane_count);
- DRM_DEBUG_KMS("DPHY param reg 0x%x\n", intel_dsi->dphy_reg);
- DRM_DEBUG_KMS("Video mode format %s\n",
- intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_PULSE ?
- "non-burst with sync pulse" :
- intel_dsi->video_mode_format == VIDEO_MODE_NON_BURST_WITH_SYNC_EVENTS ?
- "non-burst with sync events" :
- intel_dsi->video_mode_format == VIDEO_MODE_BURST ?
- "burst" : "<unknown>");
- DRM_DEBUG_KMS("Burst mode ratio %d\n", intel_dsi->burst_mode_ratio);
- DRM_DEBUG_KMS("Reset timer %d\n", intel_dsi->rst_timer_val);
- DRM_DEBUG_KMS("Eot %s\n", enableddisabled(intel_dsi->eotp_pkt));
- DRM_DEBUG_KMS("Clockstop %s\n", enableddisabled(!intel_dsi->clock_stop));
- DRM_DEBUG_KMS("Mode %s\n", intel_dsi->operation_mode ? "command" : "video");
- if (intel_dsi->dual_link == DSI_DUAL_LINK_FRONT_BACK)
- DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_FRONT_BACK\n");
- else if (intel_dsi->dual_link == DSI_DUAL_LINK_PIXEL_ALT)
- DRM_DEBUG_KMS("Dual link: DSI_DUAL_LINK_PIXEL_ALT\n");
- else
- DRM_DEBUG_KMS("Dual link: NONE\n");
- DRM_DEBUG_KMS("Pixel Format %d\n", intel_dsi->pixel_format);
- DRM_DEBUG_KMS("TLPX %d\n", intel_dsi->escape_clk_div);
- DRM_DEBUG_KMS("LP RX Timeout 0x%x\n", intel_dsi->lp_rx_timeout);
- DRM_DEBUG_KMS("Turnaround Timeout 0x%x\n", intel_dsi->turn_arnd_val);
- DRM_DEBUG_KMS("Init Count 0x%x\n", intel_dsi->init_count);
- DRM_DEBUG_KMS("HS to LP Count 0x%x\n", intel_dsi->hs_to_lp_count);
- DRM_DEBUG_KMS("LP Byte Clock %d\n", intel_dsi->lp_byte_clk);
- DRM_DEBUG_KMS("DBI BW Timer 0x%x\n", intel_dsi->bw_timer);
- DRM_DEBUG_KMS("LP to HS Clock Count 0x%x\n", intel_dsi->clk_lp_to_hs_count);
- DRM_DEBUG_KMS("HS to LP Clock Count 0x%x\n", intel_dsi->clk_hs_to_lp_count);
- DRM_DEBUG_KMS("BTA %s\n",
- enableddisabled(!(intel_dsi->video_frmt_cfg_bits & DISABLE_VIDEO_BTA)));
-
/* delays in VBT are in unit of 100us, so need to convert
* here in ms
* Delay (100us) * 100 /1000 = Delay / 10 (ms) */
--
2.19.1
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel
^ permalink raw reply related [flat|nested] 13+ messages in thread