On Thu, Apr 04, 2024 at 05:25:29PM -0400, Rodrigo Vivi wrote:
> On Thu, Apr 04, 2024 at 04:53:07PM +0300, Imre Deak wrote:
> > On Thu, Apr 04, 2024 at 04:29:04PM +0300, Imre Deak wrote:
> > > Stable team, please backport the following upstream commit to 6.8:
> > >
> > > commit 7a51a2aa2384
On Thu, Apr 04, 2024 at 11:33:29PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä
>
> Remove the tall tale about fastboot vs. user mode vs.
> adjusted mode. crtc->mode == crtc->state->mode, so none
> of this makes any sense. I suppose it may have been true
> long ago in the past.
>
>
On Thu, Apr 04, 2024 at 11:33:28PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä
>
> crtc->mode is legacy junk and shouldn't really be used with
> atomic drivers.
>
> Most (all?) atomic drivers do end up still calling
> drm_atomic_helper_update_legacy_modeset_state() at some
> point, so
On Thu, Apr 04, 2024 at 11:33:27PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä
>
> Prefer drm_mode_destroy() over bare kfree(), for consistency
> and setting a good example.
>
> Signed-off-by: Ville Syrjälä
> ---
> drivers/gpu/drm/drm_client_modeset.c | 4 ++--
> 1 file changed, 2
On Thu, Apr 04, 2024 at 11:33:26PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä
>
> Drop the "has" from drm_connector_has_preferred_mode() to better
> describe what it does.
>
> Signed-off-by: Ville Syrjälä
> ---
> drivers/gpu/drm/drm_client_modeset.c | 8
> 1 file changed, 4
On Thu, Apr 04, 2024 at 11:33:25PM +0300, Ville Syrjala wrote:
> From: Ville Syrjälä
>
> The modes[] array contains pointers to modes on the connectors'
> mode lists, which are protected by dev->mode_config.mutex.
> Thus we need to extend modes[] the same protection or by the
> time we use it
Hi all,
After merging the drm-intel tree, today's linux-next build (htmldocs)
produced these warnings:
include/drm/display/drm_dp_helper.h:126: warning: Function parameter or struct
member 'mode' not described in 'drm_dp_as_sdp'
include/drm/display/drm_dp_helper.h:126: warning: Excess struct
== Series Details ==
Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev3)
URL : https://patchwork.freedesktop.org/series/131797/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_14528 -> Patchwork_131797v3
== Series Details ==
Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev3)
URL : https://patchwork.freedesktop.org/series/131797/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
== Series Details ==
Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev3)
URL : https://patchwork.freedesktop.org/series/131797/
State : warning
== Summary ==
Error: dim checkpatch failed
64805a6e8087 drm/i915: Update pipes in reverse order for bigjoiner
-:86:
== Series Details ==
Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev2)
URL : https://patchwork.freedesktop.org/series/131797/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_14528 -> Patchwork_131797v2
== Series Details ==
Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev2)
URL : https://patchwork.freedesktop.org/series/131797/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
== Series Details ==
Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev2)
URL : https://patchwork.freedesktop.org/series/131797/
State : warning
== Summary ==
Error: dim checkpatch failed
f817bfecf2ae drm/i915: Update pipes in reverse order for bigjoiner
-:86:
From: Vidya Srinivas
We need bigjoiner support with MST functionality
for MST monitor resolutions > 5K to work.
Adding support for the same.
v2: Addressed review comments from Jani.
Revert rejection of MST bigjoiner modes and add
functionality
v3: Fixed pipe_mismatch WARN for
From: Stanislav Lisovskiy
Handle only bigjoiner masters in skl_commit_modeset_enables/disables,
slave crtcs should be handled by master hooks. Same for encoders.
That way we can also remove a bunch of checks like
intel_crtc_is_bigjoiner_slave.
v2: - Moved skl_pfit_enable, intel_dsc_enable,
From: Ville Syrjälä
Reorganize the crtc disable path to only deal with the
master pipes/transcoders in intel_old_crtc_state_disables()
and offload the handling of joined pipes to hsw_crtc_disable().
This makes the whole thing much more sensible since we can
actually control the order in which we
From: Ville Syrjälä
Loop over all joined pipes at relevant points in the MST
modeset sequence.
Carved out from Vidya's earlier big patch, with naming/etc.
changed to match the earlier hsw_crtc_enable() stuff.
Reviewed-by: Arun R Murthy
Co-developed-by: Vidya Srinivas
Signed-off-by: Vidya
From: Ville Syrjälä
Unify the master vs. slave handling in
intel_ddi_post_disable_hdmi_or_sst() by looping over all the
pipes in one go.
This also lets us move the intel_crtc_vblank_off() calls to
happen in a consistent place vs. the transcoder disable.
Previously we did the master vs. slaves
From: Ville Syrjälä
Extract the "not-MST" stuff from intel_ddi_post_disable() so that
the whole thing isn't so cluttered.
The bigjoiner slave handling was outside of the !MST check,
but it really should have been inside it as its the counterpart
to the master handling inside the check. So we
From: Ville Syrjälä
Pull the "does joiner need DSC?" check into a helper. MST will
want to use this too at some point.
Tested-by: Vidya Srinivas
Reviewed-by: Uma Shankar
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/i915/display/intel_dp.c | 26 ++---
From: Ville Syrjälä
Add a small helper to compute the set of pipes that the current
crtc is using.
And we have at least one trivial place in
intel_ddi_update_active_dpll() where we can use it
immediately, so let's do that.
v2: Use the name 'pipe_crtc' for the per-pipe crtc pointer
Tested-by:
From: Ville Syrjälä
Pass the connector explicitly to intel_dp_need_bigjoiner()
so that it'll actually check the correct place for the
bigjoiner force flag.
Tested-by: Vidya Srinivas
Reviewed-by: Uma Shankar
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/i915/display/intel_dp.c | 10
From: Ville Syrjälä
intel_dp_mst_compute_config() is missing the "does the
joiner need DSC?" check despite claiming to have a lot
of other joiner/dsc stuff in there (albeit disabled).
Replicate the logic from the SST side.
TODO: refactor all this duplicated code!
Tested-by: Vidya Srinivas
From: Ville Syrjälä
Rename intel_dp_can_bigjoiner() to intel_dp_has_bigjoiner()
to better reflect its function.
Tested-by: Vidya Srinivas
Reviewed-by: Vandita Kulkarni
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/i915/display/intel_dp.c | 4 ++--
drivers/gpu/drm/i915/display/intel_dp.h
From: Ville Syrjälä
Currently intel_modeset_pipe_config_late() is called after the
bigjoiner state copy, and it will actually not do anything for
bigjoiner slaves. This can lead to a mismatched state between
the master and slave.
The two things that we do in the encoder .compute_config_late()
From: Ville Syrjälä
All joined pipes share the same transcoder/timing generator.
Currently we just do the commits per-pipe, which doesn't really
work if we need to change switch between non-VRR and VRR timings
generators on the fly, or even when sending the push to the
transcoder. For now just
From: Ville Syrjälä
All joined pipes share the same transcoder/timing generator.
Currently we just do the commits per-pipe, which doesn't really
work if we need to change the timings at the same time. For
now just disable live M/N updates when bigjoiner is needed.
Tested-by: Vidya Srinivas
From: Ville Syrjälä
The current modeset sequence can't handle port sync and bigjoiner
at the same time. Refuse port sync when bigjoiner is needed,
at least until we fix the modeset sequence.
v2: Add a FIXME (Vandite)
Tested-by: Vidya Srinivas
Reviewed-by: Vandita Kulkarni
Signed-off-by:
From: Ville Syrjälä
Bigjoiner seem to be causing all kinds of grief to the PSR
code currently. I don't believe there is any hardware issue
but the code simply not handling this correctly. For now
just disable PSR when bigjoiner is needed.
Signed-off-by: Ville Syrjälä
---
From: Ville Syrjälä
With bigjoiner the master crtc is the one that will send out the
uapi event/etc. We want that to happen after all the slaves are
done, so let's try to do the commits in reverse order so that
the master comes last.
Even worse, the modeset helper will simply complete the
From: Ville Syrjälä
New revision of the bigjoiner modeset sequence redesign.
Changes in v2:
- Reject PSR+bigjoiner combo
- Commit pipes in reverse order to avoid issues with
slave pipe commits being completed prematurely.
Should fix the gamma/DSB problems of v1.
- Address review comments
-
On Thu, Apr 04, 2024 at 04:53:07PM +0300, Imre Deak wrote:
> On Thu, Apr 04, 2024 at 04:29:04PM +0300, Imre Deak wrote:
> > Stable team, please backport the following upstream commit to 6.8:
> >
> > commit 7a51a2aa2384 ("drm/i915/dp: Fix DSC state HW readout for SST
> > connectors")
>
> Just
== Series Details ==
Series: drm/client: Use after free and debug improvements
URL : https://patchwork.freedesktop.org/series/132050/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_14528 -> Patchwork_132050v1
Summary
== Series Details ==
Series: drm/client: Use after free and debug improvements
URL : https://patchwork.freedesktop.org/series/132050/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
== Series Details ==
Series: drm/client: Use after free and debug improvements
URL : https://patchwork.freedesktop.org/series/132050/
State : warning
== Summary ==
Error: dim checkpatch failed
8d2ac6e9d5da drm/client: Fully protect modes[] with dev->mode_config.mutex
014b518172bd drm/client:
From: Ville Syrjälä
Switch to the canonical [CONNECTOR:%d:%s] etc. format for
printing out kms objects.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_client_modeset.c | 65 +++-
1 file changed, 35 insertions(+), 30 deletions(-)
diff --git
From: Ville Syrjälä
Switch to per-device debugs so that we know which
device we're dealing with.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_probe_helper.c | 35 ++
1 file changed, 16 insertions(+), 19 deletions(-)
diff --git
From: Ville Syrjälä
Get rid of all the redundant debugs and just wait until the end
to print which mode (and of which type) we picked.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_client_modeset.c | 65 +---
1 file changed, 31 insertions(+), 34 deletions(-)
From: Ville Syrjälä
Use a consistent method for picking the first mode from the
connnector's mode list.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_client_modeset.c | 17 ++---
1 file changed, 10 insertions(+), 7 deletions(-)
diff --git
From: Ville Syrjälä
Use the array notation rather that the pointer notation for
function arguments. This makes it clear to the reader that
we are in fact dealing with an array rather than a single
pointer. Functionally the two are equivalent.
Signed-off-by: Ville Syrjälä
---
From: Ville Syrjälä
Use drm_dev_dbg() & co. so that we know which device we're
dealing with.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_client_modeset.c | 117 ++-
1 file changed, 60 insertions(+), 57 deletions(-)
diff --git
From: Ville Syrjälä
The modes used by the client code live on the connectors' mode
lists, which are not owned by the client code, and thus it has
no business modifying the modes. Mark the modes const to make
that fact abundantly clear.
Signed-off-by: Ville Syrjälä
---
From: Ville Syrjälä
Remove the tall tale about fastboot vs. user mode vs.
adjusted mode. crtc->mode == crtc->state->mode, so none
of this makes any sense. I suppose it may have been true
long ago in the past.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_client_modeset.c | 10
From: Ville Syrjälä
crtc->mode is legacy junk and shouldn't really be used with
atomic drivers.
Most (all?) atomic drivers do end up still calling
drm_atomic_helper_update_legacy_modeset_state() at some
point, so crtc->mode does still get populated, and this
does work for now. But eventually
From: Ville Syrjälä
Prefer drm_mode_destroy() over bare kfree(), for consistency
and setting a good example.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_client_modeset.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/drm_client_modeset.c
From: Ville Syrjälä
Drop the "has" from drm_connector_has_preferred_mode() to better
describe what it does.
Signed-off-by: Ville Syrjälä
---
drivers/gpu/drm/drm_client_modeset.c | 8
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/drm_client_modeset.c
From: Ville Syrjälä
The modes[] array contains pointers to modes on the connectors'
mode lists, which are protected by dev->mode_config.mutex.
Thus we need to extend modes[] the same protection or by the
time we use it the elements may already be pointing to
freed/reused memory.
Cc:
From: Ville Syrjälä
Various improvements to the drm/client code:
- Fix a use after free (fairly routinely hit by i915 CI)
- Debug print improvements
- Cleanups/etc.
Ville Syrjälä (12):
drm/client: Fully protect modes[] with dev->mode_config.mutex
drm/client:
Hi Dave and Sima,
Here goes drm-intel-fixes-2024-04-04:
Display fixes:
- A few DisplayPort related fixes (Imre, Arun, Ankit, Ville)
- eDP PSR fixes (Jouni)
Core/GT fixes:
- Remove some VM space restrictions on older platforms (Andi)
- Disable automatic load CCS load balancing (Andi)
Thanks,
tree/branch:
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
branch HEAD: 2b3d5988ae2cb5cd945ddbc653f0a71706231fdd Add linux-next specific
files for 20240404
Error/Warning reports:
https://lore.kernel.org/oe-kbuild-all/202404041707.4bl4ifti-...@intel.com
https
== Series Details ==
Series: drm/i915: limit eDP MSO pipe only for display version 20 and below
(rev3)
URL : https://patchwork.freedesktop.org/series/129123/
State : failure
== Summary ==
CI Bug Log - changes from CI_DRM_14527 -> Patchwork_129123v3
On 3/19/2024 3:16 PM, Maxime Ripard wrote:
On Mon, Mar 18, 2024 at 04:37:58PM +0200, Jani Nikula wrote:
On Mon, 11 Mar 2024, Mitul Golani wrote:
An Adaptive-Sync-capable DP protocol converter indicates its
support by setting the related bit in the DPCD register. This
is valid for DP and
Hi Dave and Sima,
Please pull the drm-xe-fixes for this week targeting v6.9-rc3.
This is a little late in the week as I was waiting a critical fix to be
applied to get our CI back. This is mainly due to some stress tests
creating hundreds of exec queues and that not playing nice with the
On Thu, Apr 04, 2024 at 04:29:04PM +0300, Imre Deak wrote:
> Stable team, please backport the following upstream commit to 6.8:
>
> commit 7a51a2aa2384 ("drm/i915/dp: Fix DSC state HW readout for SST
> connectors")
Just noticed that the above commit is not yet upstream, still only
queued in
The pipes that can be used for eDP MSO are limited to pipe A (and
sometimes also pipe B) only for display version 20 and below.
Modify the function that returns the pipe mask for eDP MSO so that
these limitations only apply to version 20 and below, enabling all
pipes otherwise.
Bspec: 68923
Cc:
Stable team, please backport the following upstream commit to 6.8:
commit 7a51a2aa2384 ("drm/i915/dp: Fix DSC state HW readout for SST connectors")
Thanks,
Imre
On Thu, 04 Apr 2024, Suraj Kandpal wrote:
> Limit minimum brightness to 20 when using aux based brightness
> control to avoid letting the screen going completely blank.
Why "20"? What does it mean? Why don't we have this in the VBT like for
PWM backlight?
>
> Signed-off-by: Suraj Kandpal
> ---
== Series Details ==
Series: drm/i915/display: DMC wakelock implementation (rev4)
URL : https://patchwork.freedesktop.org/series/131124/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_14523 -> Patchwork_131124v4
Summary
== Series Details ==
Series: drm/i915/display: DMC wakelock implementation (rev4)
URL : https://patchwork.freedesktop.org/series/131124/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
== Series Details ==
Series: drm/i915/display: DMC wakelock implementation (rev4)
URL : https://patchwork.freedesktop.org/series/131124/
State : warning
== Summary ==
Error: dim checkpatch failed
a1ccddb4cdb9 drm/i915/display: add support for DMC wakelocks
Traceback (most recent call last):
We only need DMC wakelocks when we allow DC5 and DC6 states. Add the
calls to enable and disable DMC wakelock accordingly.
Signed-off-by: Luca Coelho
---
drivers/gpu/drm/i915/display/intel_display_power_well.c | 7 +++
drivers/gpu/drm/i915/display/intel_dmc.c| 4
2
This feature should be disabled by default until properly tested and
mature. Add a module parameter to enable the feature for testing,
while keeping it disabled by default for now.
Reviewed-by: Uma Shankar
Signed-off-by: Luca Coelho
---
drivers/gpu/drm/i915/display/intel_display_params.c | 5
Only allow running DMC wakelock code if the display version is 20 or
greater. Also check if DMC is loaded before enabling.
Signed-off-by: Luca Coelho
---
.../drm/i915/display/intel_display_driver.c | 1 +
drivers/gpu/drm/i915/display/intel_dmc_wl.c | 26 +++
2 files
In order to reduce the DC5->DC2 restore time, wakelocks have been
introduced in DMC so the driver can tell it when registers and other
memory areas are going to be accessed and keep their respective blocks
awake.
Implement this in the driver by adding the concept of DMC wakelocks.
When the driver
Hi,
This is the sixth version of my series, the fourth as a proper
patchset.
These are the changes:
In v4:
* removed the call to init from the first patch (gets added later);
* added a flag to check if the wakelock is taken in DMC, so we
don't try to take it again if get() is called
== Series Details ==
Series: series starting with [rebase,1/3] drm: Add drm_vblank_work_flush_all().
URL : https://patchwork.freedesktop.org/series/132028/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_14523 -> Patchwork_132028v1
== Series Details ==
Series: series starting with [rebase,1/3] drm: Add drm_vblank_work_flush_all().
URL : https://patchwork.freedesktop.org/series/132028/
State : warning
== Summary ==
Error: dim sparse failed
Sparse version: v0.6.2
Fast mode used, each commit won't be checked separately.
== Series Details ==
Series: series starting with [rebase,1/3] drm: Add drm_vblank_work_flush_all().
URL : https://patchwork.freedesktop.org/series/132028/
State : warning
== Summary ==
Error: dim checkpatch failed
5903cab7008f drm: Add drm_vblank_work_flush_all().
-:33:
Hi Dave, Sima,
here's the drm-misc-fixes PR for this week.
Best regards
Thomas
drm-misc-fixes-2024-04-04:
Short summary of fixes pull:
display:
- fix typos in kerneldoc
nouveau:
- uvmm: fix remap address calculation
- minor cleanups
panfrost:
- fix power-transition timeouts
prime:
- unbreak
In case of legacy cursor update, the cursor VMA needs to be unpinned
only after vblank. This exceeds the lifetime of the whole atomic commit.
Any trick I attempted to keep the atomic commit alive didn't work, as
drm_atomic_helper_setup_commit() force throttles on any old commit that
wasn't
From: Ville Syrjälä
The cursor hardware only does sync updates, and thus the hardware
will be scanning out from the old fb until the next start of vblank.
So in order to make the legacy cursor fastpath actually safe we
should not unpin the old fb until we're sure the hardware has
ceased
From: Maarten Lankhorst
In some cases we want to flush all vblank work, right before vblank_off
for example. Add a simple function to make this possible.
Signed-off-by: Maarten Lankhorst
---
drivers/gpu/drm/drm_vblank_work.c | 22 ++
include/drm/drm_vblank_work.h | 2
> -Original Message-
> From: Jani Nikula
> Sent: Thursday, April 4, 2024 2:34 PM
> To: Kandpal, Suraj ; intel-gfx@lists.freedesktop.org
> Cc: Borah, Chaitanya Kumar ; Shankar,
> Uma ; Nautiyal, Ankit K
> ; Murthy, Arun R ;
> Syrjala, Ville ; Kumar, Naveen1
> ;
On Thu, 2024-03-21 at 08:22 +, Shankar, Uma wrote:
>
> > -Original Message-
> > From: Coelho, Luciano
> > Sent: Monday, March 18, 2024 7:08 PM
> > To: intel-gfx@lists.freedesktop.org
> > Cc: intel...@lists.freedesktop.org; Shankar, Uma ;
> > ville.syrj...@linux.intel.com; Nikula,
On Thu, 2024-03-21 at 08:08 +, Shankar, Uma wrote:
>
> > -Original Message-
> > From: Coelho, Luciano
> > Sent: Monday, March 18, 2024 7:08 PM
> > To: intel-gfx@lists.freedesktop.org
> > Cc: intel...@lists.freedesktop.org; Shankar, Uma ;
> > ville.syrj...@linux.intel.com; Nikula,
On Thu, 2024-03-21 at 08:02 +, Shankar, Uma wrote:
>
> > -Original Message-
> > From: Coelho, Luciano
> > Sent: Monday, March 18, 2024 7:08 PM
> > To: intel-gfx@lists.freedesktop.org
> > Cc: intel...@lists.freedesktop.org; Shankar, Uma ;
> > ville.syrj...@linux.intel.com; Nikula,
On Thu, 04 Apr 2024, Suraj Kandpal wrote:
> As of now whenerver HDR is switched on we use the PWM to change the
> backlight as opposed to AUX based backlight changes in terms of nits.
> This patch writes to the appropriate DPCD registers to enable aux
> based backlight using values in nits.
>
>
== Series Details ==
Series: drm/i915: Implemnt vblank sycnhronized mbus joining changes (rev4)
URL : https://patchwork.freedesktop.org/series/131700/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_14520 -> Patchwork_131700v4
78 matches
Mail list logo