[PATCH] drm/i915: Implement Dbuf overlap detection feature starting from LNL

2024-08-05 Thread Stanislav Lisovskiy
ned-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display_device.c | 6 ++ drivers/gpu/drm/i915/display/intel_display_device.h | 2 ++ drivers/gpu/drm/i915/display/intel_display_irq.c| 7 +++ drivers/gpu/drm/i915/i915_reg.h | 2 ++ 4 files chan

[PATCH 5/6] drm/i915: Compute config and mode valid changes for ultrajoiner

2024-07-11 Thread Stanislav Lisovskiy
Implement required changes for mode validation and compute config, to support Ultrajoiner. This also includes required DSC changes and checks. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 5 +- drivers/gpu/drm/i915/display/intel_display.h | 3

[PATCH 6/6] drm/i915: Add new abstraction layer to handle pipe order for different joiners

2024-07-11 Thread Stanislav Lisovskiy
oiner type used, but also using different "priority" arrays for each of those. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 19 ++--- drivers/gpu/drm/i915/display/intel_display.c | 73 +++- drivers/gpu/drm/i915/display/intel

[PATCH 4/6] drm/i915: Implement hw state readout and checks for ultrajoiner

2024-07-11 Thread Stanislav Lisovskiy
Ultrajoiner mode has some new bits and states to be read out from the hw. Lets make changes accordingly. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 125 ++ .../gpu/drm/i915/display/intel_vdsc_regs.h| 3 + 2 files changed, 100

[PATCH 3/6] drm/i915: Add bigjoiner and uncompressed joiner hw readout sanity checks

2024-07-11 Thread Stanislav Lisovskiy
Adding sanity checks for primary and secondary bigjoiner/uncompressed bitmasks, should make it easier to spot possible issues. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 25 +++- 1 file changed, 24 insertions(+), 1 deletion(-) diff

[PATCH 2/6] drm/i915: Split current joiner hw state readout

2024-07-11 Thread Stanislav Lisovskiy
We need to add a new sanity checks and also do some preparations for adding ultrajoiner hw state readout. Lets first split reading of the uncompressed joiner and bigjoiner bit masks into separate functions. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 65

[PATCH 0/6] Ultrajoiner basic functionality series

2024-07-11 Thread Stanislav Lisovskiy
This patch series attempts to implement basic support for Ultrajoiner functionality. Stanislav Lisovskiy (6): drm/i915: Add some essential functionality for joiners drm/i915: Split current joiner hw state readout drm/i915: Add bigjoiner and uncompressed joiner hw readout sanity checks

[PATCH 1/6] drm/i915: Add some essential functionality for joiners

2024-07-11 Thread Stanislav Lisovskiy
sh between bigjoiner primaries and secondaries(such as DSC register programming). Create correspondent helper functions and start using them, in order be prepared for adding ultrajoiner functionality. Signed-off-by: Stanislav Lisovskiy --- .../gpu/drm/i915/display/intel_atomic_plane.c | 2 +-

[PATCH 4/4] drm/i915: Add new abstraction layer to handle pipe order for different joiners

2024-06-26 Thread Stanislav Lisovskiy
oiner type used, but also using different "priority" arrays for each of those. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 19 ++--- drivers/gpu/drm/i915/display/intel_display.c | 73 +++- drivers/gpu/drm/i915/display/intel

[PATCH 2/4] drm/i915: Implement hw state readout for ultrajoiner

2024-06-26 Thread Stanislav Lisovskiy
sanity check(for example all the pipes which are used in ultrajoiner, should also belong to bigjoiner) SIgned-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 162 +++--- .../gpu/drm/i915/display/intel_vdsc_regs.h| 3 + 2 files changed, 142

[PATCH 3/4] drm/i915: Compute config and mode valid changes for ultrajoiner

2024-06-26 Thread Stanislav Lisovskiy
Implement required changes for mode validation and compute config, to support Ultrajoiner. This also includes required DSC changes and checks. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 5 +- drivers/gpu/drm/i915/display/intel_display.h | 3

[PATCH 1/4] drm/i915: Add some essential functionality for joiners

2024-06-26 Thread Stanislav Lisovskiy
sh between bigjoiner primaries and secondaries(such as DSC register programming). Create correspondent helper functions and start using them, in order be prepared for adding ultrajoiner functionality. Signed-off-by: Stanislav Lisovskiy --- .../gpu/drm/i915/display/intel_atomic_plane.c | 2 +-

[PATCH 0/4] Ultrajoiner basic functionality series

2024-06-26 Thread Stanislav Lisovskiy
This patch series attempts to implement basic support for Ultrajoiner functionality. Stanislav Lisovskiy (4): drm/i915: Add some essential functionality for joiners drm/i915: Implement hw state readout for ultrajoiner drm/i915: Compute config and mode valid changes for ultrajoiner drm

[PATCH 1/3] drm/i915: Rename all bigjoiner to joiner

2024-06-07 Thread Stanislav Lisovskiy
now(Ville) Signed-off-by: Stanislav Lisovskiy --- .../gpu/drm/i915/display/intel_atomic_plane.c | 4 +- drivers/gpu/drm/i915/display/intel_cdclk.c| 4 +- .../drm/i915/display/intel_crtc_state_dump.c | 8 +- drivers/gpu/drm/i915/display/intel_cursor.c | 4 +- drivers/gpu/drm/i9

[PATCH 3/3] drm/i915: Add some essential functionality for joiners

2024-06-03 Thread Stanislav Lisovskiy
sh between bigjoiner primaries and secondaries(such as DSC register programming). Create correspondent helper functions and start using them, in order be prepared for adding ultrajoiner functionality. Signed-off-by: Stanislav Lisovskiy --- .../gpu/drm/i915/display/intel_atomic_plane.c | 2 +-

[PATCH 2/3] drm/i915: Rename bigjoiner master/slave to bigjoiner primary/secondary

2024-06-03 Thread Stanislav Lisovskiy
According to BSpec we now should call "master" pipes, "primary" pipes and "slave" pipes, should be "secondary" pipes. Signed-off-by: Stanislav Lisovskiy --- .../gpu/drm/i915/display/intel_atomic_plane.c | 20 +- .../drm/i915/display/intel_crtc_stat

[PATCH 1/3] drm/i915: Rename all bigjoiner to joiner

2024-06-03 Thread Stanislav Lisovskiy
Lets unify both bigjoiner and ultrajoiner under simple "joiner" name, because in future we might have multiple configurations, involving multiple bigjoiners, ultrajoiner, however it is possible to use same api for handling both. Signed-off-by: Stanislav Lisovskiy --- .../gpu/drm/i9

[PATCH 0/3] Ultrajoiner basic functionality series

2024-06-03 Thread Stanislav Lisovskiy
, which make it possible for us to distinguish between bigjoiner primary/secondary pipes, check if ultrajoiner is used and other essential functions mostly required for DSC register programming. In rest of the cases we going to be refering both to Bigjoiner and Ultrajoiner as "joiner".

[PATCH 4/5] drm/i915: Compute config and mode valid changes for ultrajoiner

2024-05-20 Thread Stanislav Lisovskiy
Implement required changes for mode validation and compute config, to support Ultrajoiner. This also includes required DSC changes and checks. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 5 +- drivers/gpu/drm/i915/display/intel_display.h | 3

[PATCH 2/5] drm/i915: Implement basic functions for ultrajoiner support

2024-05-20 Thread Stanislav Lisovskiy
Lets implement or change basic functions required for ultrajoiner support from atomic commit/modesetting point of view. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 66 +--- 1 file changed, 56 insertions(+), 10 deletions(-) diff --git a

[PATCH 5/5] drm/i915: Add new abstraction layer to handle pipe order for different joiners

2024-05-20 Thread Stanislav Lisovskiy
oiner type used, but also using different "priority" arrays for each of those. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 19 ++--- drivers/gpu/drm/i915/display/intel_display.c | 73 +++- drivers/gpu/drm/i915/display/intel

[PATCH 3/5] drm/i915: Implement hw state readout for ultrajoiner

2024-05-20 Thread Stanislav Lisovskiy
Ultrajoiner mode has some new bits and states to be read out from the hw. Lets make changes accordingly. SIgned-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 56 +++ .../gpu/drm/i915/display/intel_vdsc_regs.h| 2 + 2 files changed, 46

[PATCH 1/5] drm/i915: Rename all bigjoiner to joiner

2024-05-20 Thread Stanislav Lisovskiy
Lets unify both bigjoiner and ultrajoiner under simple "joiner" name, because in future we might have multiple configurations, involving multiple bigjoiners, ultrajoiner, however it is possible to use same api for handling both. Signed-off-by: Stanislav Lisovskiy --- .../gpu/drm/i9

[PATCH 0/5] Ultrajoiner basic functionality series

2024-05-20 Thread Stanislav Lisovskiy
This patch series attempts to implement basic support for Ultrajoiner functionality. Stanislav Lisovskiy (5): drm/i915: Rename all bigjoiner to joiner drm/i915: Implement basic functions for ultrajoiner support drm/i915: Implement hw state readout for ultrajoiner drm/i915: Compute config

[PATCH 4/4] drm/i915: Implement vblank synchronized MBUS join changes

2024-03-25 Thread Stanislav Lisovskiy
le Syrjälä) - Constified new_crtc_state in intel_mbus_joined_pipe(Ville Syrjälä) - Removed pipe_select variable(Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 6 +- drivers/gpu/drm/i915/display/skl_watermark.c | 119 +++ drivers/gp

[PATCH 3/4] drm/i915: Loop over all active pipes in intel_mbus_dbox_update

2024-03-25 Thread Stanislav Lisovskiy
We need to loop through all active pipes, not just the ones, that are in current state, because disabling and enabling even a particular pipe affects credits in another one. Reviewed-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/skl_watermark.c | 7

[PATCH 2/4] drm/i915: Use old mbus_join value when increasing CDCLK

2024-03-25 Thread Stanislav Lisovskiy
ue in intel_set_cdclk(Ville Syrjälä) Reviewed-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_cdclk.c | 12 +++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_cdclk.c b/drivers/gpu/drm/i915/di

[PATCH 1/4] drm/i915: Update mbus in intel_dbuf_mbus_update and do it properly

2024-03-25 Thread Stanislav Lisovskiy
separately if mbus_join state didn't change, so lets add one degree of freedom and make it possible. Reviewed-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/skl_watermark.c | 54 +--- 1 file changed, 35 insertions(+), 19 deletions(-) diff

[PATCH 0/4] Enable fastset for mbus_join state change

2024-03-25 Thread Stanislav Lisovskiy
Currently fastset is not supported, if mbus join state changes, so whenever we have to switch mbus state, we have to force a full modeset. This patch series makes fastset possible from MBUS state point of view. Stanislav Lisovskiy (4): drm/i915: Update mbus in intel_dbuf_mbus_update and do it

[PATCH 3/3] drm/i915: Implement vblank synchronized MBUS join changes

2024-03-25 Thread Stanislav Lisovskiy
le Syrjälä) - Constified new_crtc_state in intel_mbus_joined_pipe(Ville Syrjälä) - Removed pipe_select variable(Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 6 +- drivers/gpu/drm/i915/display/skl_watermark.c | 119 +++ drivers/gp

[PATCH 4/5] drm/i915: Loop over all active pipes in intel_mbus_dbox_update

2024-03-22 Thread Stanislav Lisovskiy
We need to loop through all active pipes, not just the ones, that are in current state, because disabling and enabling even a particular pipe affects credits in another one. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/skl_watermark.c | 7 +-- 1 file changed, 1

[PATCH 3/5] drm/i915: Use old mbus_join value when increasing CDCLK

2024-03-22 Thread Stanislav Lisovskiy
In order to make sure we are not breaking the proper sequence lets to updates step by step and don't change MBUS join value during MDCLK/CDCLK programming stage. MBUS join programming would be taken care by pre/post ddb hooks. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/di

[PATCH 5/5] drm/i915: Implement vblank synchronized MBUS join changes

2024-03-22 Thread Stanislav Lisovskiy
ready call correspondent check and update at pre_plane dbuf update, so the only thing left is to have a non-modeset version of that. If active pipes stay the same then fastset is possible and only MBUS join state/ddb allocation updates would be committed. Signed-off-by: Stanislav Lisovskiy --- drivers/gp

[PATCH 1/5] drm/i915: Update mbus in intel_dbuf_mbus_update and do it properly

2024-03-22 Thread Stanislav Lisovskiy
According to BSpec we need to do correspondent MBUS updates before or after DBUF reallocation, depending on whether we are enabling or disabling mbus joining(typical scenario is swithing between multiple and single displays). Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display

[PATCH 2/5] drm/i915: Break intel_dbuf_mbus_update into 2 separate parts

2024-03-22 Thread Stanislav Lisovskiy
We need to be able to update dbuf min tracker and mdclk ratio separately if mbus_join state didn't change, so lets add one degree of freedom and make it possible. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/skl_watermark.c | 55 1 file change

[PATCH 0/5] Enable fastset for mbus_join state change

2024-03-22 Thread Stanislav Lisovskiy
Currently fastset is not supported, if mbus join state changes, so whenever we have to switch mbus state, we have to force a full modeset. This patch series makes fastset possible from MBUS state point of view. Stanislav Lisovskiy (5): drm/i915: Update mbus in intel_dbuf_mbus_update and do it

[PATCH 5/6] drm/i915: Handle joined pipes inside hsw_crtc_enable()

2024-03-20 Thread Stanislav Lisovskiy
intel_ddi_enable_hdmi_or_sst symmetrical to intel_ddi_post_disable_hdmi_or_sst and move it also under non-mst check. v4: - Fix intel_enable_ddi sequence - Call intel_crtc_update_active_timings for slave pipes as well Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 45

[PATCH 5/6] drm/i915: Handle joined pipes inside hsw_crtc_enable()

2024-03-18 Thread Stanislav Lisovskiy
intel_ddi_enable_hdmi_or_sst symmetrical to intel_ddi_post_disable_hdmi_or_sst and move it also under non-mst check. v4: - Fix intel_enable_ddi sequence Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 45 -- drivers/gpu/drm/i915/display/intel_display.c | 162

[PATCH 3/6] drm/i915: Utilize intel_crtc_joined_pipe_mask() more

2024-03-13 Thread Stanislav Lisovskiy
that. Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 34 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm/i915/display/intel_ddi.c

[PATCH 6/6] drm/i915: Allow bigjoiner for MST

2024-03-13 Thread Stanislav Lisovskiy
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 mst_master_transco

[PATCH 5/6] drm/i915: Handle joined pipes inside hsw_crtc_enable()

2024-03-13 Thread Stanislav Lisovskiy
intel_ddi_enable_hdmi_or_sst symmetrical to intel_ddi_post_disable_hdmi_or_sst and move it also under non-mst check. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 30 +++- drivers/gpu/drm/i915/display/intel_display.c | 162 +-- drivers/gpu/drm/i915/display

[PATCH 2/6] drm/i915: Extract intel_ddi_post_disable_hdmi_or_sst()

2024-03-13 Thread Stanislav Lisovskiy
that in as well. There is no functional change here as we don't currently support bigjoiner+MST anyway. Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 37 +++- 1 file changed, 23 insertions(+), 14 deletions(-)

[PATCH 4/6] drm/i915: Handle joined pipes inside hsw_crtc_disable()

2024-03-13 Thread Stanislav Lisovskiy
. per-transcoder modeset steps. v2: Fixed rebase conflict(intel_crtc_state_disables signature had changed) Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 62 +++- 1 file changed, 35 insertions(+), 27 deletions

[PATCH 1/6] drm/i915: Add a small helper to compute the set of pipes for crtc

2024-03-13 Thread Stanislav Lisovskiy
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: - Fixed conflicts, part of patch didn't apply, because of master_crtc rename(Stan) Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy --

[PATCH 0/6] Bigjoiner refactoring

2024-03-13 Thread Stanislav Lisovskiy
logic. Stanislav Lisovskiy (5): drm/i915: Add a small helper to compute the set of pipes for crtc drm/i915: Extract intel_ddi_post_disable_hdmi_or_sst() drm/i915: Utilize intel_crtc_joined_pipe_mask() more drm/i915: Handle joined pipes inside hsw_crtc_disable() drm/i915: Handle joined pipes

[PATCH 6/6] drm/i915: Allow bigjoiner for MST

2024-03-08 Thread Stanislav Lisovskiy
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 mst_master_transco

[PATCH 5/6] drm/i915: Handle joined pipes inside hsw_crtc_enable()

2024-03-08 Thread Stanislav Lisovskiy
intel_enable_ddi, so that it is now finally symmetrical with the disable case, because currently for some weird reason we are calling those from skl_commit_modeset_enables, while for the disable case those are called from the ddi disable hooks. Signed-off-by: Stanislav Lisovskiy

[PATCH 4/6] drm/i915: Handle joined pipes inside hsw_crtc_disable()

2024-03-08 Thread Stanislav Lisovskiy
. per-transcoder modeset steps. v2: Fixed rebase conflict(intel_crtc_state_disables signature had changed) Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy Credits-to: Ville Syrjälä --- drivers/gpu/drm/i915/display/intel_display.c | 62 +++- 1 file changed, 35

[PATCH 3/6] drm/i915: Utilize intel_crtc_joined_pipe_mask() more

2024-03-08 Thread Stanislav Lisovskiy
that. Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy Credits-to: Ville Syrjälä --- drivers/gpu/drm/i915/display/intel_ddi.c | 34 1 file changed, 17 insertions(+), 17 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_ddi.c b/drivers/gpu/drm

[PATCH 2/6] drm/i915: Extract intel_ddi_post_disable_hdmi_or_sst()

2024-03-08 Thread Stanislav Lisovskiy
that in as well. There is no functional change here as we don't currently support bigjoiner+MST anyway. Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy Credits-to: Ville Syrjälä --- drivers/gpu/drm/i915/display/intel_ddi.c | 37 +++- 1 file changed,

[PATCH 1/6] Add a small helper to compute the set of pipes that the current crtc is using.

2024-03-08 Thread Stanislav Lisovskiy
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: - Fixed conflicts, part of patch didn't apply, because of master_crtc rename(Stan) Signed-off-by: Ville Syrjälä Signed-off-by: Stanislav Lisovskiy

[PATCH 0/6] Bigjoiner refactoring

2024-03-08 Thread Stanislav Lisovskiy
logic. Stanislav Lisovskiy (5): Add a small helper to compute the set of pipes that the current crtc is using. drm/i915: Extract intel_ddi_post_disable_hdmi_or_sst() drm/i915: Utilize intel_crtc_joined_pipe_mask() more drm/i915: Handle joined pipes inside hsw_crtc_disable() drm/i915

[PATCH 2/2] drm/i915: Implement vblank synchronized MBUS join changes

2024-02-28 Thread Stanislav Lisovskiy
- Do vblank wait only for the first pipe, if mbus is joined - Check also if new/old_dbuf_state is not NULL, before getting single pipe and active pipes. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c | 13 ++- drivers/gpu/drm/i915/display/skl_waterm

[PATCH 1/2] drm/i915: Update mbus in intel_dbuf_mbus_update and do it properly

2024-02-28 Thread Stanislav Lisovskiy
display MBUS registers should be updated with correspondent values _before_ Dbuf reallocation happens, however if we are switching from single display to multiple then it should happen _after_ DDB reallocation(i.e plane programming). Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display

[PATCH 0/2] Enable fastset for mbus_join state change

2024-02-28 Thread Stanislav Lisovskiy
Currently fastset is not supported, if mbus join state changes, so whenever we have to switch mbus state, we have to force a full modeset. This patch series makes fastset possible from MBUS state point of view. Stanislav Lisovskiy (2): drm/i915: Update mbus in intel_dbuf_mbus_update and do it

[PATCH 3/3] drm/i915: Fix bigjoiner case for DP2.0

2024-02-21 Thread Stanislav Lisovskiy
Patch calculates bigjoiner pipes in mst compute. Patch also passes bigjoiner bool to validate plane max size. Signed-off-by: vsrini4 Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_dp_mst.c | 19 --- 1 file changed, 12 insertions(+), 7 deletions

[PATCH 2/3] Start separating pipe vs transcoder set logic for bigjoiner during modeset

2024-02-21 Thread Stanislav Lisovskiy
-transcoder path (for master pipe that will be called from intel_encoders_enable/intel_enable_ddi) - Fix stupid mistake with using crtc->pipe for the mask, instead of BIT(crtc->pipe) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c

[PATCH 1/3] drm/i915/bigjoiner: Refactor bigjoiner state readout

2024-02-21 Thread Stanislav Lisovskiy
Don't call enabled_bigjoiner_pipes twice, lets just move intel_get_bigjoiner_config earlier, because it is anyway calling same function. Also cleanup hsw_enabled_transcoders from irrelevant bigjoiner code. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c

[PATCH 0/3] Bigjoiner refactoring

2024-02-21 Thread Stanislav Lisovskiy
logic. Stanislav Lisovskiy (3): drm/i915/bigjoiner: Refactor bigjoiner state readout Start separating pipe vs transcoder set logic for bigjoiner during modeset drm/i915: Fix bigjoiner case for DP2.0 drivers/gpu/drm/i915/display/intel_ddi.c | 21 +- drivers/gpu/drm/i915/display

[PATCH 3/3] drm/i915: Fix bigjoiner case for DP2.0

2024-02-20 Thread Stanislav Lisovskiy
Patch calculates bigjoiner pipes in mst compute. Patch also passes bigjoiner bool to validate plane max size. Signed-off-by: vsrini4 Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_dp_mst.c | 19 --- 1 file changed, 12 insertions(+), 7 deletions

[PATCH 2/3] Start separating pipe vs transcoder set logic for bigjoiner during modeset

2024-02-20 Thread Stanislav Lisovskiy
hooks. Use unified iteration cycle for all of those, while enabling/disabling transcoder only for those pipes where its needed(Ville Syrjälä) v3: Move all the intel_encoder_* calls under transcoder code path(Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915

[PATCH 1/3] drm/i915/bigjoiner: Refactor bigjoiner state readout

2024-02-20 Thread Stanislav Lisovskiy
Don't call enabled_bigjoiner_pipes twice, lets just move intel_get_bigjoiner_config earlier, because it is anyway calling same function. Also cleanup hsw_enabled_transcoders from irrelevant bigjoiner code. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c

[PATCH 0/3] Bigjoiner refactoring

2024-02-20 Thread Stanislav Lisovskiy
logic. Stanislav Lisovskiy (3): drm/i915/bigjoiner: Refactor bigjoiner state readout Start separating pipe vs transcoder set logic for bigjoiner during modeset drm/i915: Fix bigjoiner case for DP2.0 drivers/gpu/drm/i915/display/intel_ddi.c | 3 +- drivers/gpu/drm/i915/display

[PATCH 3/3] drm/i915: Disable SAGV on bw init, to force QGV point recalculation

2024-02-20 Thread Stanislav Lisovskiy
stricted/unrestricted same time) - Fix argument sequence for adl_qgv_bw(Ville Syrjälä) v6: Fix wrong platform checks, not to break everything else. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 73 ++-- drivers/gpu/drm/i915/display/skl_wat

[PATCH 1/3] drm/i915: Add meaningful traces for QGV point info error handling

2024-02-20 Thread Stanislav Lisovskiy
device and adding those traces manually. v2: - Make the debug more generic and move it to intel_dram_detect (Gustavo Sousa) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 4 +++- drivers/gpu/drm/i915/soc/intel_dram.c | 2 ++ 2 files changed, 5 insert

[PATCH 2/3] drm/i915: Extract code required to calculate max qgv/psf gv point

2024-02-20 Thread Stanislav Lisovskiy
we disable SAGV, which might be actually causing some issues in that case. v2: - Introduce helper adl_qgv_bw(counterpart to adl_psf_bw) (Ville Syrjälä) - Don't restrict psf gv points for SAGV disable case (Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/d

[PATCH 0/3] QGV/SAGV related fixes

2024-02-20 Thread Stanislav Lisovskiy
We have couple of customer issues, related to SAGV/QGV point calculation. Those patches contain fixes plus some additional debugs for those issues. Stanislav Lisovskiy (3): drm/i915: Add meaningful traces for QGV point info error handling drm/i915: Extract code required to calculate max qgv

[PATCH 2/3] drm/i915: Extract code required to calculate max qgv/psf gv point

2024-02-19 Thread Stanislav Lisovskiy
we disable SAGV, which might be actually causing some issues in that case. v2: - Introduce helper adl_qgv_bw(counterpart to adl_psf_bw) (Ville Syrjälä) - Don't restrict psf gv points for SAGV disable case (Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/d

[PATCH 3/3] drm/i915: Disable SAGV on bw init, to force QGV point recalculation

2024-02-19 Thread Stanislav Lisovskiy
stricted/unrestricted same time) - Fix argument sequence for adl_qgv_bw(Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 63 +++-- 1 file changed, 59 insertions(+), 4 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel

[PATCH 1/3] drm/i915: Add meaningful traces for QGV point info error handling

2024-02-19 Thread Stanislav Lisovskiy
device and adding those traces manually. v2: - Make the debug more generic and move it to intel_dram_detect (Gustavo Sousa) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 4 +++- drivers/gpu/drm/i915/soc/intel_dram.c | 2 ++ 2 files changed, 5 insert

[PATCH 0/3] QGV/SAGV related fixes

2024-02-19 Thread Stanislav Lisovskiy
We have couple of customer issues, related to SAGV/QGV point calculation. Those patches contain fixes plus some additional debugs for those issues. Stanislav Lisovskiy (3): drm/i915: Add meaningful traces for QGV point info error handling drm/i915: Extract code required to calculate max qgv

[PATCH 3/3] Start separating pipe vs transcoder set logic for bigjoiner during modeset

2024-02-13 Thread Stanislav Lisovskiy
hooks. Use unified iteration cycle for all of those, while enabling/disabling transcoder only for those pipes where its needed(Ville Syrjälä) v3: Move all the intel_encoder_* calls under transcoder code path(Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915

[PATCH 3/3] Start separating pipe vs transcoder set logic for bigjoiner during modeset

2024-02-02 Thread Stanislav Lisovskiy
hooks. Use unified iteration cycle for all of those, while enabling/disabling transcoder only for those pipes where its needed(Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_ddi.c | 3 +- drivers/gpu/drm/i915/display/intel_display.c | 116

[PATCH 1/3] drm/i915: Add bigjoiner force enable option to debugfs

2024-01-29 Thread Stanislav Lisovskiy
similar conflicts v7: - Move bigjoiner force option to intel_connector(Ville Syrjälä) - Use DEFINE_SHOW_STORE_ATTRIBUTE instead of defining fops manually.(Ville Syrjälä) v8: - Pass intel_connector to debugfs_create_file, instead of drm_connector. (Jani Nikula) Signed-off-by: S

[PATCH 1/3] drm/i915: Add bigjoiner force enable option to debugfs

2024-01-18 Thread Stanislav Lisovskiy
similar conflicts v7: - Move bigjoiner force option to intel_connector(Ville Syrjälä) - Use DEFINE_SHOW_STORE_ATTRIBUTE instead of defining fops manually.(Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- .../drm/i915/display/intel_display_debugfs.c | 47 +++ .../

[PATCH 2/3] drm/i915: Extract code required to calculate max qgv/psf gv point

2024-01-17 Thread Stanislav Lisovskiy
we disable SAGV, which might be actually causing some issues in that case. v2: - Introduce helper adl_qgv_bw(counterpart to adl_psf_bw) (Ville Syrjälä) - Don't restrict psf gv points for SAGV disable case (Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/d

[PATCH 3/3] drm/i915: Disable SAGV on bw init, to force QGV point recalculation

2024-01-17 Thread Stanislav Lisovskiy
we still need to address the case, when no display is connected, which anyway requires much more changes. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 24 drivers/gpu/drm/i915/display/intel_bw.h | 2 ++ 2 files changed, 26 in

[PATCH 1/3] drm/i915: Add meaningful traces for QGV point info error handling

2024-01-17 Thread Stanislav Lisovskiy
device and adding those traces manually. v2: - Make the debug more generic and move it to intel_dram_detect (Gustavo Sousa) Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 4 +++- drivers/gpu/drm/i915/soc/intel_dram.c | 2 ++ 2 files changed, 5 insert

[PATCH 0/3] QGV/SAGV related fixes

2024-01-17 Thread Stanislav Lisovskiy
We have couple of customer issues, related to SAGV/QGV point calculation. Those patches contain fixes plus some additional debugs for those issues. Stanislav Lisovskiy (3): drm/i915: Add meaningful traces for QGV point info error handling drm/i915: Extract code required to calculate max qgv

[PATCH 2/3] drm/i915/bigjoiner: Refactor bigjoiner state readout

2024-01-08 Thread Stanislav Lisovskiy
Don't call enabled_bigjoiner_pipes twice, lets just move intel_get_bigjoiner_config earlier, because it is anyway calling same function. Also cleanup hsw_enabled_transcoders from irrelevant bigjoiner code. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c

[PATCH 3/3] Start separating pipe vs transcoder set logic for bigjoiner during modeset

2024-01-08 Thread 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. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display

[PATCH 1/3] drm/i915: Add bigjoiner force enable option to debugfs

2024-01-08 Thread Stanislav Lisovskiy
similar conflicts Signed-off-by: Stanislav Lisovskiy --- .../drm/i915/display/intel_display_debugfs.c | 59 +++ .../drm/i915/display/intel_display_types.h| 2 + drivers/gpu/drm/i915/display/intel_dp.c | 3 +- 3 files changed, 63 insertions(+), 1 deletion(-) diff --git a

[PATCH 0/3] Bigjoiner refactoring

2024-01-08 Thread Stanislav Lisovskiy
logic. Stanislav Lisovskiy (3): drm/i915: Add bigjoiner force enable option to debugfs drm/i915/bigjoiner: Refactor bigjoiner state readout Start separating pipe vs transcoder set logic for bigjoiner during modeset drivers/gpu/drm/i915/display/intel_ddi.c | 3 +- drivers/gpu/drm

[PATCH 3/3] Start separating pipe vs transcoder set logic for bigjoiner during modeset

2024-01-08 Thread 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. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display

[PATCH 2/3] drm/i915/bigjoiner: Refactor bigjoiner state readout

2024-01-08 Thread Stanislav Lisovskiy
Don't call enabled_bigjoiner_pipes twice, lets just move intel_get_bigjoiner_config earlier, because it is anyway calling same function. Also cleanup hsw_enabled_transcoders from irrelevant bigjoiner code. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_display.c

[PATCH 1/3] drm/i915: Add bigjoiner force enable option to debugfs

2024-01-08 Thread Stanislav Lisovskiy
from i915_bigjoiner_enable_show (Ville Syrjälä) - Added eDP connector check to intel_connector_debugfs_add (Ville Syrjälä) - Removed debug message in order to prevent dmesg flooding (Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- .../drm/i915/display/intel_display_debu

[PATCH 0/3] Bigjoiner refactoring

2024-01-08 Thread Stanislav Lisovskiy
logic. Stanislav Lisovskiy (3): drm/i915: Add bigjoiner force enable option to debugfs drm/i915/bigjoiner: Refactor bigjoiner state readout Start separating pipe vs transcoder set logic for bigjoiner during modeset drivers/gpu/drm/i915/display/intel_ddi.c | 3 +- drivers/gpu/drm

[Intel-gfx] [PATCH 3/3] drm/i915: Disable SAGV on bw init, to force QGV point recalculation

2023-12-01 Thread Stanislav Lisovskiy
after init. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 25 - drivers/gpu/drm/i915/display/intel_bw.h | 2 ++ 2 files changed, 26 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm

[Intel-gfx] [PATCH 3/3] drm/i915: Disable SAGV on bw init, to force QGV point recalculation

2023-11-29 Thread Stanislav Lisovskiy
are available, driver will recalculate and update those then after next commit. v2: - Added trace to see which QGV/PSF GV point is used when SAGV is disabled. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 23 ++- drivers/gpu/drm/i915

[Intel-gfx] [PATCH 3/3] drm/i915: Disable SAGV on bw init, to force QGV point recalculation

2023-11-28 Thread Stanislav Lisovskiy
are available, driver will recalculate and update those then after next commit. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 20 +++- drivers/gpu/drm/i915/display/intel_bw.h | 1 + 2 files changed, 20 insertions(+), 1 deletion(-) diff --git a

[Intel-gfx] [PATCH 1/3] drm/i915: Add meaningful traces for QGV point info error handling

2023-11-28 Thread Stanislav Lisovskiy
device and adding those traces manually. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 4 +++- drivers/gpu/drm/i915/soc/intel_dram.c | 2 ++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/drivers/gpu/drm/i9

[Intel-gfx] [PATCH 2/3] drm/i915: Extract code required to calculate max qgv/psf gv point

2023-11-28 Thread Stanislav Lisovskiy
we disable SAGV, which might be actually causing some issues in that case. Signed-off-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c | 82 - 1 file changed, 65 insertions(+), 17 deletions(-) diff --git a/drivers/gpu/drm/i915/display/intel_bw.c b/d

[Intel-gfx] [PATCH 0/3] QGV/SAGV related fixes

2023-11-28 Thread Stanislav Lisovskiy
We have couple of customer issues, related to SAGV/QGV point calculation. Those patches contain fixes plus some additional debugs for those issues. Stanislav Lisovskiy (3): drm/i915: Add meaningful traces for QGV point info error handling drm/i915: Extract code required to calculate max qgv

[Intel-gfx] [PATCH] drm/i915: Add bigjoiner force enable option to debugfs

2023-11-16 Thread Stanislav Lisovskiy
from i915_bigjoiner_enable_show (Ville Syrjälä) - Added eDP connector check to intel_connector_debugfs_add (Ville Syrjälä) - Removed debug message in order to prevent dmesg flooding (Ville Syrjälä) Signed-off-by: Stanislav Lisovskiy --- .../drm/i915/display/intel_display_debu

[Intel-gfx] [PATCH] drm/i915/adl: Initialize all GV points as restricted in bw_state

2023-10-24 Thread Stanislav Lisovskiy
ff-by: Stanislav Lisovskiy --- drivers/gpu/drm/i915/display/intel_bw.c| 7 --- drivers/gpu/drm/i915/display/intel_bw.h| 1 + drivers/gpu/drm/i915/display/intel_modeset_setup.c | 13 + 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/driver

[Intel-gfx] [PATCH] drm/i915: Add bigjoiner force enable option to debugfs

2023-10-18 Thread Stanislav Lisovskiy
ually the DISPLAY_VER. v3: - Switch to intel_connector from drm_connector(Jani Nikula) - Remove redundant modeset lock(Jani Nikula) - Use kstrtobool_from_user for boolean value(Jani Nikula) v4: - Apply the changes to proper function(Jani Nikula) Signed-off-by: Stanislav Liso

[Intel-gfx] [PATCH] drm/i915: Add bigjoiner force enable option to debugfs

2023-10-12 Thread Stanislav Lisovskiy
ually the DISPLAY_VER. v3: - Switch to intel_connector from drm_connector(Jani Nikula) - Remove redundant modeset lock(Jani Nikula) - Use kstrtobool_from_user for boolean value(Jani Nikula) Signed-off-by: Stanislav Lisovskiy --- .../drm/i915/display/intel_display_debugfs.c

[Intel-gfx] [PATCH] drm/i915: Add bigjoiner force enable option to debugfs

2023-10-09 Thread Stanislav Lisovskiy
ually the DISPLAY_VER. Signed-off-by: Stanislav Lisovskiy --- .../drm/i915/display/intel_display_debugfs.c | 71 +++ .../drm/i915/display/intel_display_types.h| 2 + drivers/gpu/drm/i915/display/intel_dp.c | 6 +- 3 files changed, 78 insertions(+), 1 deletion(-)

[Intel-gfx] [PATCH] drm/i915: Add bigjoiner force enable option to debugfs

2023-10-06 Thread Stanislav Lisovskiy
For validation purposes, it might be useful to be able to force Bigjoiner mode, even if current dotclock/resolution do not require that. Lets add such to option to debugfs. Signed-off-by: Stanislav Lisovskiy --- .../drm/i915/display/intel_display_debugfs.c | 71 +++ .../drm

[Intel-gfx] [PATCH 2/2] drm/i915: Implement vblank synchronized MBUS join changes

2023-08-18 Thread Stanislav Lisovskiy
plit mbus and dbox programming into to pre/post plane update parts, how it should be done according to BSpec. Signed-off-by: Stanislav Lisovskiy Tested-by: Khaled Almahallawy --- drivers/gpu/drm/i915/display/intel_display.c | 2 -- drivers/gpu/drm/i915/display/skl_watermark.c | 36 +++

  1   2   3   4   5   6   7   8   9   >