We inspect the requests under the assumption that they will be marked as
completed when they are removed from the queue. Currently however, in the
process of wedging the requests will be removed from the queue before they
are completed, so rearrange the code to complete the fences before the
locks
Currently we allocate a scratch page for each engine, but since we only
ever write into it for post-sync operations, it is not exposed to
userspace nor do we care for coherency. As we then do not care about its
contents, we can use one page for all, reducing our allocations and
avoid complications
We inspect the requests under the assumption that they will be marked as
completed when they are removed from the queue. Currently however, in the
process of wedging the requests will be removed from the queue before they
are completed, so rearrange the code to complete the fences before the
locks
Braswell is really picky about having our writes posted to memory before
we execute or else the GPU may see stale values. A wmb() is insufficient
as it only ensures the writes are visible to other cores, we need a full
mb() to ensure the writes are in memory and visible to the GPU.
The most
If all else fails and we are stuck eternally waiting for the undying
request, abandon all hope.
Signed-off-by: Chris Wilson
---
drivers/gpu/drm/i915/selftests/intel_hangcheck.c | 12 +---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git
Ensure that the sync registers are cleared every time we restart the
ring to avoid stale values from creeping in from random neutrinos.
Signed-off-by: Chris Wilson
---
drivers/gpu/drm/i915/intel_ringbuffer.c | 7 +++
1 file changed, 7 insertions(+)
diff --git
Impose a restraint that we have all vma pinned for a request prior to
its allocation. This is to simplify request construction, and should
facilitate unravelling the lock interdependencies later.
Signed-off-by: Chris Wilson
---
drivers/gpu/drm/i915/selftests/huge_pages.c | 31 +++--
Currently we face a severe problem on Braswell that manifests as invalid
ppGTT accesses. The code tries to maintain the PDP (page directory
pointers) inside the context in two ways, direct write into the context
and a pipelined LRI update. The direct write into the context is
fundamentally racy as
== Series Details ==
Series: series starting with [1/7] drm/i915: Complete the fences as they are
cancelled due to wedging
URL : https://patchwork.freedesktop.org/series/53348/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
a7232ddbd965 drm/i915: Complete the fences as they
== Series Details ==
Series: series starting with [1/7] drm/i915: Complete the fences as they are
cancelled due to wedging
URL : https://patchwork.freedesktop.org/series/53348/
State : warning
== Summary ==
$ dim sparse origin/drm-tip
Sparse version: v0.5.2
Commit: drm/i915: Complete the
== Series Details ==
Series: series starting with drm/i915: Complete the fences as they are
cancelled due to wedging (rev2)
URL : https://patchwork.freedesktop.org/series/53308/
State : failure
== Summary ==
Applying: drm/i915: Complete the fences as they are cancelled due to wedging
== Series Details ==
Series: series starting with [1/4] drm/i915: Make intel_fuzzy_clock_check
available outside of intel_display.c
URL : https://patchwork.freedesktop.org/series/53350/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5237_full -> Patchwork_10991_full
== Series Details ==
Series: series starting with [1/7] drm/i915: Complete the fences as they are
cancelled due to wedging
URL : https://patchwork.freedesktop.org/series/53348/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5237_full -> Patchwork_10990_full
== Series Details ==
Series: series starting with [1/4] drm/i915/dsi: Fix pipe_bpp for handling for
6 bpc pixel-formats
URL : https://patchwork.freedesktop.org/series/53352/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5237_full -> Patchwork_10992_full
== Series Details ==
Series: series starting with [1/7] drm/i915: Complete the fences as they are
cancelled due to wedging
URL : https://patchwork.freedesktop.org/series/53348/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5237 -> Patchwork_10990
== Series Details ==
Series: drm/fbdev: Make skip_vt_switch the default (rev3)
URL : https://patchwork.freedesktop.org/series/53094/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5234_full -> Patchwork_10980_full
Summary
If we exit vlv_dsi_init() because we failed to find a fixed_mode, then
we've already called drm_connector_init() and we should call
drm_connector_cleanup() to unregister the connector object.
Signed-off-by: Hans de Goede
---
drivers/gpu/drm/i915/vlv_dsi.c | 4 +++-
1 file changed, 3
There are 3 problems with the dsi code's pipe_bpp handling for 6 bpc
pixel-formats which this commit addresses:
1) It assumes that the pipe_bpp is the same as the bpp going over the dsi
lanes. This assumption is not valid for MIPI_DSI_FMT_RGB666, where pipe_bpp
should be 18 so that we do proper
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
---
drivers/gpu/drm/i915/intel_dsi_vbt.c | 77 +++-
1 file changed, 42 insertions(+), 35 deletions(-)
diff --git
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
The next patch in this series uses intel_fuzzy_clock_check from the
vlv_dsi.c code.
Signed-off-by: Hans de Goede
---
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
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
== Series Details ==
Series: series starting with [1/4] drm/i915/dsi: Fix pipe_bpp for handling for
6 bpc pixel-formats
URL : https://patchwork.freedesktop.org/series/53352/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
7325fa834a45 drm/i915/dsi: Fix pipe_bpp for handling for
== Series Details ==
Series: Restore workarounds after engine reset and unify their handling (rev2)
URL : https://patchwork.freedesktop.org/series/53313/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_5235_full -> Patchwork_10981_full
== Series Details ==
Series: series starting with [1/4] drm/i915: Make intel_fuzzy_clock_check
available outside of intel_display.c
URL : https://patchwork.freedesktop.org/series/53350/
State : warning
== Summary ==
$ dim checkpatch origin/drm-tip
39f8e6ecede8 drm/i915: Make
== Series Details ==
Series: series starting with [1/4] drm/i915/dsi: Fix pipe_bpp for handling for
6 bpc pixel-formats
URL : https://patchwork.freedesktop.org/series/53352/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5237 -> Patchwork_10992
== Series Details ==
Series: series starting with [1/4] drm/i915: Make intel_fuzzy_clock_check
available outside of intel_display.c
URL : https://patchwork.freedesktop.org/series/53350/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5237 -> Patchwork_10991
The display engine has 2 dithering enable bits which both need to be set
for dithering to happen, 1 in the PIPECONF register which is taken care of
by i9xx_set_pipeconf() and a second bit at the encoder level.
The dsi code was not setting the encoder level dithering enable bit causing
dithering
On devices with a burst_mode_ratio which is not 100 (1:1), the pclk
will have a different value then drm_display_mode.clock .
On a Prowise PT301 tablet where vbt.lfp_lvds_vbt_mode.clock is 66100 and
burst_mode_ratio is 130 this leads to the following errors:
[drm:pipe_config_err [i915]] *ERROR*
== Series Details ==
Series: series starting with [CI,1/2] drm/i915/skl: Rework MOCS tables to keep
common part in a define
URL : https://patchwork.freedesktop.org/series/53337/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5236_full -> Patchwork_10983_full
Quoting Chris Wilson (2018-12-01 09:52:31)
> Braswell is really picky about having our writes posted to memory before
> we execute or else the GPU may see stale values. A wmb() is insufficient
> as it only ensures the writes are visible to other cores, we need a full
> mb() to ensure the writes
== Series Details ==
Series: series starting with [v3,1/2] drm/i915: Add HAS_DISPLAY() and use it
URL : https://patchwork.freedesktop.org/series/53341/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_5237_full -> Patchwork_10985_full
== Series Details ==
Series: i915/dp/fec: Fix static check warning
URL : https://patchwork.freedesktop.org/series/53342/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_5237_full -> Patchwork_10986_full
Summary
---
Quoting Anusha (2018-11-30 23:14:28)
> From: Anusha Srivatsa
>
> Fix indentation error in the commit:
> commit 08cadae8e157 ("i915/dp/fec: Cache the FEC_CAPABLE DPCD register")
>
> Fixes: 08cadae8e157 ("i915/dp/fec: Cache the FEC_CAPABLE DPCD register")
> Reported-by: Dan Carpenter
> Cc:
== Series Details ==
Series: drm/i915/icl: combo port vswing programming changes per BSPEC (rev2)
URL : https://patchwork.freedesktop.org/series/53340/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_5237_full -> Patchwork_10987_full
35 matches
Mail list logo