Re: [PATCH 4/9] drm/i915: Introduce fb->min_alignment

2024-05-28 Thread Ville Syrjälä
On Tue, May 28, 2024 at 02:27:52PM +0300, Imre Deak wrote: > On Mon, May 13, 2024 at 08:59:37PM +0300, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Different planes could have different alignment requirements > > even for the same format/modifier. Collect the

Re: [PATCH 8/9] drm/i915: Update plane alignment requirements for TGL+

2024-05-28 Thread Ville Syrjälä
On Tue, May 28, 2024 at 04:22:59PM +0300, Imre Deak wrote: > On Mon, May 13, 2024 at 08:59:41PM +0300, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Currently we still use the SKL+ PLANE_SURF alignment even > > for TGL+ even though the hardware no longer needs i

Re: [PATCH v2 12/21] drm/i915/dp: Use check link state work in the detect handler

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 06:29:21PM +0300, Imre Deak wrote: > On Thu, May 23, 2024 at 06:08:40PM +0300, Ville Syrjälä wrote: > > On Mon, May 20, 2024 at 09:58:10PM +0300, Imre Deak wrote: > > > Simplify things by retraining a DP link if a bad link is detected in the > > &g

Re: [PATCH v2 19/21] drm/i915/dp: Add debugfs entry to force link training failure

2024-05-23 Thread Ville Syrjälä
intel_connector *connector) > { > struct dentry *root = connector->base.debugfs_entry; > @@ -1818,4 +1865,7 @@ void intel_dp_link_training_debugfs_add(struct > intel_connector *connector) > > debugfs_create_file("i915_dp_max_lane_count", 0444, root, > connector, _dp_max_lane_count_fops); > + > + debugfs_create_file("i915_dp_force_link_training_failure", 0644, root, > + connector, > _dp_force_link_training_failure_fops); > } > -- > 2.43.3 -- Ville Syrjälä Intel

Re: [PATCH v2 14/21] drm/i915/dp: Disable link retraining after the last fallback step

2024-05-23 Thread Ville Syrjälä
return; > } > > - intel_dp_schedule_fallback_link_training(state, intel_dp, crtc_state); > + if (intel_dp_schedule_fallback_link_training(state, intel_dp, > crtc_state)) > + return; > + > + intel_dp->link.retrain_disabled = true; > + > + if (!passed) > + lt_err(intel_dp, DP_PHY_DPRX, "Can't reduce link training > parameters after failure\n"); > + else > + lt_dbg(intel_dp, DP_PHY_DPRX, "Can't reduce link training > parameters after forced failure\n"); The forced failure stuff is in later patch, is it not? > } > > void intel_dp_128b132b_sdp_crc16(struct intel_dp *intel_dp, > -- > 2.43.3 -- Ville Syrjälä Intel

Re: [PATCH v2 17/21] drm/i915/dp: Add debugfs entries to set a target link rate/lane count

2024-05-23 Thread Ville Syrjälä
int lane_count; > + int ret; > + > + lane_count = parse_lane_count(ubuf, len); > + if (lane_count < 0) > + return lane_count; > + > + ret = > drm_modeset_lock_single_interruptible(>drm.mode_config.connection_mutex); > + if (ret) > + return ret; > + > + intel_dp = intel_connector_to_intel_dp(connector); > + > + intel_dp_reset_link_params(intel_dp); > + intel_dp->link.requested_lane_count = lane_count; > + > + drm_modeset_unlock(>drm.mode_config.connection_mutex); > + > + *offp += len; > + > + return len; > +} > +DEFINE_SHOW_STORE_ATTRIBUTE(i915_dp_set_lane_count); > + > +void intel_dp_link_training_debugfs_add(struct intel_connector *connector) > +{ > + struct dentry *root = connector->base.debugfs_entry; > + > + if (connector->base.connector_type != DRM_MODE_CONNECTOR_DisplayPort && > + connector->base.connector_type != DRM_MODE_CONNECTOR_eDP) > + return; > + > + debugfs_create_file("i915_dp_set_link_rate", 0644, root, > + connector, _dp_set_link_rate_fops); > + > + debugfs_create_file("i915_dp_set_lane_count", 0644, root, > + connector, _dp_set_lane_count_fops); > +} > diff --git a/drivers/gpu/drm/i915/display/intel_dp_link_training.h > b/drivers/gpu/drm/i915/display/intel_dp_link_training.h > index f658230960333..42e7fc6cb171a 100644 > --- a/drivers/gpu/drm/i915/display/intel_dp_link_training.h > +++ b/drivers/gpu/drm/i915/display/intel_dp_link_training.h > @@ -9,6 +9,7 @@ > #include > > struct intel_atomic_state; > +struct intel_connector; > struct intel_crtc_state; > struct intel_dp; > > @@ -44,4 +45,7 @@ static inline u8 intel_dp_training_pattern_symbol(u8 > pattern) > > void intel_dp_128b132b_sdp_crc16(struct intel_dp *intel_dp, >const struct intel_crtc_state *crtc_state); > + > +void intel_dp_link_training_debugfs_add(struct intel_connector *connector); > + > #endif /* __INTEL_DP_LINK_TRAINING_H__ */ > -- > 2.43.3 -- Ville Syrjälä Intel

Re: [PATCH v2 12/21] drm/i915/dp: Use check link state work in the detect handler

2024-05-23 Thread Ville Syrjälä
p_check_link_state(intel_dp); I would like to see this hack nuked entirely. But that could be a followup. > > /* > * Clearing NACK and defer counts to get their exact values > -- > 2.43.3 -- Ville Syrjälä Intel

Re: [PATCH v2 09/21] drm/i915/dp: Pass atomic state to link training function

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 05:54:10PM +0300, Ville Syrjälä wrote: > On Thu, May 23, 2024 at 05:47:36PM +0300, Imre Deak wrote: > > On Thu, May 23, 2024 at 05:41:17PM +0300, Ville Syrjälä wrote: > > > On Mon, May 20, 2024 at 09:58:07PM +0300, Imre Deak wrote: >

Re: [PATCH v2 09/21] drm/i915/dp: Pass atomic state to link training function

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 05:47:36PM +0300, Imre Deak wrote: > On Thu, May 23, 2024 at 05:41:17PM +0300, Ville Syrjälä wrote: > > On Mon, May 20, 2024 at 09:58:07PM +0300, Imre Deak wrote: > > > From: Imre Deak > > > > > > The next patch adds sending a modese

Re: [PATCH v2 09/21] drm/i915/dp: Pass atomic state to link training function

2024-05-23 Thread Ville Syrjälä
al_levels(struct intel_dp *intel_dp, > const struct intel_crtc_state *crtc_state, > enum drm_dp_phy dp_phy); > -void intel_dp_start_link_train(struct intel_dp *intel_dp, > +void intel_dp_start_link_train(struct intel_atomic_state *state, > +struct intel_dp *intel_dp, > const struct intel_crtc_state *crtc_state); > void intel_dp_stop_link_train(struct intel_dp *intel_dp, > const struct intel_crtc_state *crtc_state); > -- > 2.43.3 -- Ville Syrjälä Intel

Re: [PATCH v2 07/21] drm/i915/dp: Recheck link state after modeset

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 04:46:30PM +0300, Imre Deak wrote: > On Thu, May 23, 2024 at 04:30:18PM +0300, Ville Syrjälä wrote: > > On Mon, May 20, 2024 at 09:58:05PM +0300, Imre Deak wrote: > > > Recheck the link state after a passing link training, with a 2 sec delay > > >

Re: [PATCH] drm/i915/dpt: Make DPT object unshrinkable

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 02:14:56PM +0100, Tvrtko Ursulin wrote: > > On 23/05/2024 13:24, Ville Syrjälä wrote: > > On Thu, May 23, 2024 at 01:07:24PM +0100, Tvrtko Ursulin wrote: > >> > >> On 23/05/2024 12:19, Ville Syrjälä wrote: > >>> On Thu, May 23

Re: [PATCH v2 07/21] drm/i915/dp: Recheck link state after modeset

2024-05-23 Thread Ville Syrjälä
lttpr_count); > > + if (passed) { > + intel_ddi_queue_link_check(dig_port, 2000); > + return; > + } > + > /* >* Ignore the link failure in CI >* > @@ -1495,13 +1502,12 @@ void intel_dp_start_link_train(struct intel_dp > *intel_dp, >* For test cases which rely on the link training or processing of HPDs >* ignore_long_hpd flag can unset from the testcase. >*/ > - if (!passed && i915->display.hotplug.ignore_long_hpd) { > + if (i915->display.hotplug.ignore_long_hpd) { > lt_dbg(intel_dp, DP_PHY_DPRX, "Ignore the link failure\n"); > return; > } > > - if (!passed) > - intel_dp_schedule_fallback_link_training(intel_dp, crtc_state); > + intel_dp_schedule_fallback_link_training(intel_dp, crtc_state); > } > > void intel_dp_128b132b_sdp_crc16(struct intel_dp *intel_dp, > -- > 2.43.3 -- Ville Syrjälä Intel

Re: [PATCH v2 07/21] drm/i915/dp: Recheck link state after modeset

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 04:23:44PM +0300, Ville Syrjälä wrote: > On Wed, May 22, 2024 at 04:38:54PM +0300, Imre Deak wrote: > > On Mon, May 20, 2024 at 09:58:05PM +0300, Imre Deak wrote: > > > [...] > > > +static void intel_ddi_link_check_work_fn(struct work_struct *wo

Re: [PATCH v2 07/21] drm/i915/dp: Recheck link state after modeset

2024-05-23 Thread Ville Syrjälä
; +_port->check_link_work, > > msecs_to_jiffies(delay_ms)); > > +} > > + > > static int intel_hdmi_reset_link(struct intel_encoder *encoder, > > struct drm_modeset_acquire_ctx *ctx) > > { > > @@ -4911,6 +4943,8 @@ void intel_ddi_init(struct drm_i915_private *dev_priv, > > > > dig_port->aux_ch = AUX_CH_NONE; > > > > + intel_ddi_init_link_check_work(dig_port); > > + > > encoder = _port->base; > > encoder->devdata = devdata; > > -- Ville Syrjälä Intel

Re: [PATCH 16/16] drm/i915: pass dev_priv explicitly to PIPEGCMAX

2024-05-23 Thread Ville Syrjälä
v_priv, PIPEGCMAX(dev_priv, pipe, 1), > + lut[i].green); nit: the newline breaks the pattern in a somewhat ugly way Series is Reviewed-by: Ville Syrjälä > + intel_de_write_fw(dev_priv, PIPEGCMAX(dev_priv, pipe, 2), lut[i].blue); > } > > static void i965

Re: [PATCH v2 06/21] drm/i915/dp: Use a commit modeset for link retraining MST links

2024-05-23 Thread Ville Syrjälä
crtc_state, INTEL_OUTPUT_DP_MST)) { > + mst_output = true; > + break; > + } I was pondering if we need a bit more care to make sure all the pipes agree, but I suppose if that wasn't the case check_digital_port_conflicts() would have a failed at its j

Re: [PATCH] drm/i915/dpt: Make DPT object unshrinkable

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 01:07:24PM +0100, Tvrtko Ursulin wrote: > > On 23/05/2024 12:19, Ville Syrjälä wrote: > > On Thu, May 23, 2024 at 09:25:45AM +0100, Tvrtko Ursulin wrote: > >> > >> On 22/05/2024 16:29, Vidya Srinivas wrote: > >>> In

Re: [PATCH 06/13] drm/i915: Define SEL_FETCH_PLANE registers via PICK_EVEN_2RANGES()

2024-05-23 Thread Ville Syrjälä
On Thu, May 23, 2024 at 12:15:53PM +0300, Jani Nikula wrote: > On Thu, 16 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Instead of that huge _PICK() let's use PICK_EVEN_2RANGES() > > for the SEL_FETCH_PLANE registers. A bit more tedious to have &

Re: [PATCH] drm/i915/dpt: Make DPT object unshrinkable

2024-05-23 Thread Ville Syrjälä
gt; > + !obj->is_dpt; > > Is there a reason i915_gem_object_make_unshrinkable() cannot be used to > mark the object at a suitable place? Do you have a suitable place in mind? i915_gem_object_make_unshrinkable() contains some magic ingredients so doesn't look like it can be called willy nilly. Anyways, looks like I forgot to reply that I already pushed this with this extra comment added: /* TODO: make DPT shrinkable when it has no bound vmas */ -- Ville Syrjälä Intel

Re: [PATCH v2 05/21] drm/i915: Factor out function to modeset commit a set of pipes

2024-05-22 Thread Ville Syrjälä
On Mon, May 20, 2024 at 09:58:03PM +0300, Imre Deak wrote: > Factor out a function to modeset commit a set of pipes, which a later > patch will reuse for DP link retraining. > > Signed-off-by: Imre Deak Reviewed-by: Ville Syrjälä > --- > drivers/gpu/drm/i915/display/in

Re: [PATCH v2 04/21] drm/i915/dp: Sanitize intel_dp_get_link_train_fallback_values()

2024-05-22 Thread Ville Syrjälä
+ return current_lane_count >> 1; > + > + return -1; whereas this is if (ok) success; fail; I'd rearrange one of them so the logic is the same way around in both. Otherwise lgtm Reviewed-by: Ville Syrjälä > +} >

Re: [PATCH v2 03/21] drm/i915/dp: Move link train fallback to intel_dp_link_training.c

2024-05-22 Thread Ville Syrjälä
On Mon, May 20, 2024 at 09:58:01PM +0300, Imre Deak wrote: > Move the functions used to reduce the link parameters during link > training to intel_dp_link_training.c . > > Signed-off-by: Imre Deak Reviewed-by: Ville Syrjälä > --- > drivers/gpu/drm/i915/display/int

Re: [PATCH v2 01/21] drm/i915/dp_mst: Align TUs to avoid splitting symbols across MTPs

2024-05-22 Thread Ville Syrjälä
> follow-up patch will remove the limitation for those. > > Bspec: 49266, 68922 > > Signed-off-by: Imre Deak Reviewed-by: Ville Syrjälä > --- > drivers/gpu/drm/i915/display/intel_dp_mst.c | 27 ++--- > 1 file changed, 23 insertions(+), 4 delet

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

2024-05-22 Thread Ville Syrjälä
On Wed, May 22, 2024 at 11:01:32AM +0300, Lisovskiy, Stanislav wrote: > On Tue, May 21, 2024 at 09:09:16PM +0300, Ville Syrjälä wrote: > > On Tue, May 21, 2024 at 11:25:31AM +0300, Lisovskiy, Stanislav wrote: > > > On Mon, May 20, 2024 at 09:24:45PM +0300, Ville Syrjälä wrote: &

Re: [PATCH] drm/probe-helper: Call drm_mode_validate_ycbcr420() before connector->mode_valid()

2024-05-21 Thread Ville Syrjälä
On Tue, May 21, 2024 at 02:09:19PM +0200, Daniel Vetter wrote: > On Thu, May 16, 2024 at 08:33:24PM +0300, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Make life easier for drivers by filtering out unwanted YCbCr 4:2:0 > > only modes prior to calling the c

Re: [PATCH 2/7] drm/i915: Extract intel_dp_has_dsc()

2024-05-21 Thread Ville Syrjälä
On Tue, May 21, 2024 at 12:51:03PM +0300, Jani Nikula wrote: > On Mon, 20 May 2024, Ville Syrjälä wrote: > > On Mon, May 20, 2024 at 01:47:34PM +0300, Jani Nikula wrote: > >> On Fri, 17 May 2024, Ville Syrjala wrote: > >> > From: Ville Syrjälä > >> >

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

2024-05-21 Thread Ville Syrjälä
On Tue, May 21, 2024 at 11:25:31AM +0300, Lisovskiy, Stanislav wrote: > On Mon, May 20, 2024 at 09:24:45PM +0300, Ville Syrjälä wrote: > > On Mon, May 20, 2024 at 10:38:36AM +0300, Stanislav Lisovskiy wrote: > > > Lets implement or change basic functions required for ultrajoiner

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

2024-05-20 Thread Ville Syrjälä
perhaps need: - all bigjoiner masters within the entire set of joined pipes - all bigjoiner slaves within the entire set of joined pipes (inverse of the above) The one slight snag here is that the "bigjoiner" name is a bit incorrect for uncompressed joiner, but unless we want to come up with some other name for these then I guess we'll just have to live with it. The other option is we try to come up with some generic names for the two levels of pipe roles. -- Ville Syrjälä Intel

Re: [PATCH 03/13] drm/i915: Add separate define for SEL_FETCH_CUR_CTL()

2024-05-20 Thread Ville Syrjälä
On Mon, May 20, 2024 at 12:27:20PM +0300, Jani Nikula wrote: > On Thu, 16 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Split the cursor stuff from the rest of the selective fetch > > plane registers so that we can collect all cursor registers >

Re: [PATCH] drm/i915: Bump max TMDS bitrate to 6 Gbps on ADL/DG2+

2024-05-20 Thread Ville Syrjälä
On Mon, May 20, 2024 at 01:37:26PM +0300, Jani Nikula wrote: > On Thu, 16 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Bspec lists the mas TMDS bitrate as 6 Gbps on ADL/DG2. > > *max > > There's also ADL-S with display 12 and 6 Gbps suppor

Re: [PATCH] drm/i915/dpt: Make DPT object unshrinkable

2024-05-20 Thread Ville Syrjälä
for this. > - return i915_gem_object_type_has(obj, I915_GEM_OBJECT_IS_SHRINKABLE); > + return i915_gem_object_type_has(obj, I915_GEM_OBJECT_IS_SHRINKABLE) && > + !obj->is_dpt; > } > > static inline bool > -- > 2.34.1 -- Ville Syrjälä Intel

Re: [PATCH 02/13] drm/i915: Clean up the cursor register defines

2024-05-20 Thread Ville Syrjälä
On Mon, May 20, 2024 at 12:10:30PM +0300, Jani Nikula wrote: > On Thu, 16 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Group the cursor register defines such that everything to > > do with one register is in one place. > > > > Sign

Re: [PATCH 2/7] drm/i915: Extract intel_dp_has_dsc()

2024-05-20 Thread Ville Syrjälä
On Mon, May 20, 2024 at 01:47:34PM +0300, Jani Nikula wrote: > On Fri, 17 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Extract a helper to check whether the source+sink combo > > supports DSC. That basic check is needed both during mode > > val

Re: [PATCH 01/13] drm/i915: Add skl+ plane name aliases to enum plane_id

2024-05-17 Thread Ville Syrjälä
On Fri, May 17, 2024 at 06:33:46PM +0300, Jani Nikula wrote: > On Thu, 16 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Using PLANE_PRIMARY + PLANE_SPRITE? on skl+ results in a bunch > > of unnecessary head scratching. Add aliases using the skl+ plane

Re: [PATCH 0/8] drm/i915: pass dev_priv explicitly to CUR* registers

2024-05-15 Thread Ville Syrjälä
c | 13 +--- > drivers/gpu/drm/i915/gvt/display.c| 8 ++--- > drivers/gpu/drm/i915/gvt/fb_decoder.c | 6 ++-- > drivers/gpu/drm/i915/intel_gvt_mmio_table.c | 24 +++--- > 7 files changed, 56 insertions(+), 48 deletions(-) > > -- > 2.39.2 -- Ville Syrjälä Intel

Re: [PATCH 16/16] drm/i915: Handle SKL+ WM/DDB registers next to all other plane registers

2024-05-15 Thread Ville Syrjälä
On Mon, May 13, 2024 at 11:52:08PM +0300, Jani Nikula wrote: > On Fri, 10 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Having the plane WM/DDB regitster write functions in skl_watermarks.c > > is rather annoying when trying to implement DSB based p

Re: [PATCH 10/16] drm/i915: Shuffle the skl+ plane register definitions

2024-05-13 Thread Ville Syrjälä
On Mon, May 13, 2024 at 02:28:11PM +0300, Jani Nikula wrote: > On Fri, 10 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Rearrange the plane skl+ universal plane register definitions: > > - keep everything related to the same register in one place &

Re: [PATCH 0/9] drm/i915: Plane fb refactoring

2024-05-10 Thread Ville Syrjälä
On Mon, May 06, 2024 at 03:57:09PM +0300, Ville Syrjala wrote: > From: Ville Syrjälä > > A bit of cleanup/refactoring around plane fb stuff. > This is mainly prep work for a slightly bigger rework > of alignment handling. > > Ville Syrjälä (9): > drm/i915: Split g

Re: [PATCH 1/5] drm/i915: don't include CML PCI IDs in CFL

2024-05-10 Thread Ville Syrjälä
On Fri, May 10, 2024 at 01:24:12PM +0300, Jani Nikula wrote: > On Wed, 08 May 2024, Ville Syrjälä wrote: > > On Wed, May 08, 2024 at 02:45:10PM +0300, Jani Nikula wrote: > >> On Wed, 08 May 2024, Ville Syrjälä wrote: > >> > On Tue, May 07, 2024 at 09:47:

Re: [PATCH] drm/i915/pps: Disable DPLS_GATING around pps sequence

2024-05-09 Thread Ville Syrjälä
> +#define DPLS_GATING_DISABLE REG_BIT(29) > + > /* Plane CSC Registers */ > #define _PLANE_CSC_RY_GY_1_A 0x70210 > #define _PLANE_CSC_RY_GY_2_A 0x70310 > -- > 2.43.2 -- Ville Syrjälä Intel

Re: [PATCH] drm/xe: Nuke xe's copy of intel_fbdev_fb.h

2024-05-08 Thread Ville Syrjälä
On Tue, May 07, 2024 at 11:53:40AM +0300, Jani Nikula wrote: > On Mon, 06 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > For some reason xe and i915 each have an identical (fortunately) > > copy of intel_fbdev_fb.h. The xe copy actually onl

Re: [PATCH 3/5] drm/i915: Use drm_crtc_vblank_crtc()

2024-05-08 Thread Ville Syrjälä
On Wed, May 08, 2024 at 12:12:32PM +0300, Jani Nikula wrote: > On Mon, 08 Apr 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Replace the open coded drm_crtc_vblank_crtc() with the real > > thing. > > > > Cc: intel-gfx@lists.freedeskt

Re: [PATCH 2/5] drm/amdgpu: Use drm_crtc_vblank_crtc()

2024-05-08 Thread Ville Syrjälä
On Wed, May 08, 2024 at 09:47:50AM -0400, Alex Deucher wrote: > On Mon, Apr 8, 2024 at 3:06 PM Ville Syrjala > wrote: > > > > From: Ville Syrjälä > > > > Replace the open coded drm_crtc_vblank_crtc() with the real > > thing. > > > > Cc: Alex

Re: [PATCH 1/5] drm/i915: don't include CML PCI IDs in CFL

2024-05-08 Thread Ville Syrjälä
On Wed, May 08, 2024 at 02:45:10PM +0300, Jani Nikula wrote: > On Wed, 08 May 2024, Ville Syrjälä wrote: > > On Tue, May 07, 2024 at 09:47:16AM -0400, Rodrigo Vivi wrote: > >> On Tue, May 07, 2024 at 03:56:48PM +0300, Jani Nikula wrote: > >> > It's confusing for INTE

Re: [PATCH] drm/i915/display/dp: Remove UHBR13.5 for icl

2024-05-08 Thread Ville Syrjälä
could you have a DG2 > without the limitation? Do we need to check for that instead of blanket > removal of UHBR 13.5 for DG2? And if we do remove it entirely then we should do it fully. That is, don't leave behind unused PLL tables and whatnot. -- Ville Syrjälä Intel

Re: [PATCH 1/5] drm/i915: don't include CML PCI IDs in CFL

2024-05-08 Thread Ville Syrjälä
DS(info), \ > > - INTEL_CML_GT2_IDS(info), \ > > - INTEL_CML_U_GT1_IDS(info), \ > > - INTEL_CML_U_GT2_IDS(info) > > + INTEL_AML_CFL_GT2_IDS(info) > > Why only CML and not AML and WHL as well? Why do we even have CML as a separate platform? The only difference I can see is is that we do allow_read_ctx_timestamp() for CML but not for CFL. Does that even make sense? -- Ville Syrjälä Intel

Re: [RFC PATCH 2/3] drm/xe/display: allow creation of case I915_FORMAT_MOD_4_TILED_XE2_CCS type framebuffer

2024-05-07 Thread Ville Syrjälä
pecting GOP to enable compression? > break; > default: > drm_dbg(_priv->drm, > -- > 2.43.2 -- Ville Syrjälä Intel

Re: [RFC PATCH 3/3] drm/i915/display: allow creation of case I915_FORMAT_MOD_4_TILED_XE2_CCS type framebuffer

2024-05-07 Thread Ville Syrjälä
t;modifier == I915_FORMAT_MOD_4_TILED) { > + (fb->modifier == I915_FORMAT_MOD_4_TILED || > + fb->modifier == I915_FORMAT_MOD_4_TILED_XE2_CCS)) { > plane_ctl |= PLANE_CTL_RENDER_DECOMPRESSION_ENABLE; If we got to the trouble of adding a new modifier then we should just let skl_plane_ctl_tiling() handle this, like it does for every other platform. > } > > -- > 2.43.2 -- Ville Syrjälä Intel

Re: [PATCH v2] drivers/i915/intel_bios: Fix parsing backlight BDB data

2024-05-07 Thread Ville Syrjälä
gt; > Fixes: 700034566d68 ("drm/i915/bios: Define more BDB contents") > Cc: sta...@vger.kernel.org > Cc: Jani Nikula > Cc: Ville Syrjälä > Signed-off-by: Karthikeyan Ramasubramanian > --- > > Changes in v2: > - removed checking the block size of the backlight

Re: [PATCH 7/9] drm/i915: Change intel_fbdev_fb_alloc() reuturn type

2024-05-06 Thread Ville Syrjälä
On Mon, May 06, 2024 at 07:51:47PM +0300, Ville Syrjälä wrote: > On Mon, May 06, 2024 at 05:16:50PM +0300, Jani Nikula wrote: > > > > *return in subject > > > > On Mon, 06 May 2024, Ville Syrjala wrote: > > > From: Ville Syrjälä > > > > &g

Re: [PATCH 7/9] drm/i915: Change intel_fbdev_fb_alloc() reuturn type

2024-05-06 Thread Ville Syrjälä
On Mon, May 06, 2024 at 05:16:50PM +0300, Jani Nikula wrote: > > *return in subject > > On Mon, 06 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Change intel_fbdev_fb_alloc() to return struct intel_fb instead > > of struct drm_framebuff

Re: [PATCH 2/9] drm/i915: Clean up skl+ plane stride limits

2024-05-06 Thread Ville Syrjälä
On Mon, May 06, 2024 at 05:03:59PM +0300, Jani Nikula wrote: > On Mon, 06 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > skl_plane_max_stride() is pretty messy. Streamline it and > > split it into clear skl+ vs. adl+ variants. > > > > TO

Re: [PATCH] drm/i915/display/dp: Remove UHBR13.5 for icl

2024-05-06 Thread Ville Syrjälä
On Mon, May 06, 2024 at 12:15:13PM +, Murthy, Arun R wrote: > > > -Original Message- > > From: Ville Syrjälä > > Sent: Monday, May 6, 2024 5:36 PM > > To: Murthy, Arun R > > Cc: intel-gfx@lists.freedesktop.org; Nikula, Jani > > Subject:

Re: [PATCH 1/3] drm/i915: pass dev_priv explicitly to PIPE_CRC_CTL

2024-05-06 Thread Ville Syrjälä
On Mon, May 06, 2024 at 01:09:02PM +0300, Jani Nikula wrote: > Avoid the implicit dev_priv local variable use, and pass dev_priv > explicitly to the PIPE_CRC_CTL register macro. > > Signed-off-by: Jani Nikula Reviewed-by: Ville Syrjälä > --- > drivers/gpu/drm/i915/displa

Re: [PATCH 2/3] drm/i915: pass dev_priv explicitly to PIPE_CRC_*

2024-05-06 Thread Ville Syrjälä
e)), I believe the _IVB variants could be defined without needing dev_priv. But this works as well so Reviewed-by: Ville Syrjälä >0, 0, 0, 0); > } > > @@ -364,11 +364,11 @@ static void ivb_pipe_crc_irq_handler(struct > drm_i915_private *dev_priv, >

Re: [PATCH 3/3] drm/i915: pass dev_priv explicitly to PORT_DFT2_G4X

2024-05-06 Thread Ville Syrjälä
viewed-by: Ville Syrjälä > > Signed-off-by: Jani Nikula > --- > drivers/gpu/drm/i915/display/intel_pipe_crc.c | 8 > drivers/gpu/drm/i915/i915_reg.h | 2 +- > 2 files changed, 5 insertions(+), 5 deletions(-) > > diff --git a/drivers/gpu/drm/i915

Re: [PATCH] drm/i915/display/dp: Remove UHBR13.5 for icl

2024-05-06 Thread Ville Syrjälä
162000, 216000, 27, 324000, 432000, 54, 648000, 81, > - 100, 135, > + 100, > }; > static const int bxt_rates[] = { > 162000, 216000, 243000, 27, 324000, 432000, 54 > -- > 2.25.1 -- Ville Syrjälä Intel

Re: [PATCH 31/35] drm/i915/bios: Define VBT block 57 (Vswing PreEmphasis Table) contents

2024-05-06 Thread Ville Syrjälä
On Mon, May 06, 2024 at 12:42:03PM +0300, Jani Nikula wrote: > On Fri, 03 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Define the contents of VBT block 57 (Vswing PreEmphasis Table). > > > > The contents is highly platform specific. The colum

Re: [PATCH 04/35] drm/i915/bios: Get rid of "LVDS" from all LFP data stuff

2024-05-06 Thread Ville Syrjälä
On Mon, May 06, 2024 at 12:19:01PM +0300, Jani Nikula wrote: > On Fri, 03 May 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > The LFP data applies to all kinds of display interfaces, so > > stop calling things by the "LVDS" name. > > >

Re: [PATCH v2 3/4] drm/i915/display: split out intel_fbc_regs.h from i915_reg.h

2024-04-26 Thread Ville Syrjälä
On Fri, Apr 26, 2024 at 01:51:36PM +0300, Jani Nikula wrote: > Clean up i915_reg.h. > > v2: Drop chicken regs and comments (Ville) > > Signed-off-by: Jani Nikula Reviewed-by: Ville Syrjälä > --- > drivers/gpu/drm/i915/display/intel_fbc.c | 1 + > driv

Re: [PATCH 09/14] drm/i915/dpio: Derive the phy from the port rather than pipe in encoder hooks

2024-04-23 Thread Ville Syrjälä
should be done in some other patch? I think it should have been part of commit f70a68bc1d18 ("drm/i915: convert vlv_dpio_read()/write() from pipe to phy") but got missed. This patch is basically what was left from a similar change I had in my branch. I can split this hunk out into a separate patch. -- Ville Syrjälä Intel

Re: [PATCH 13/14] drm/i915/dpio: Clean up the vlv/chv PHY register bits

2024-04-23 Thread Ville Syrjälä
On Mon, Apr 22, 2024 at 03:46:01PM +0300, Jani Nikula wrote: > On Mon, 22 Apr 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Use REG_BIT() & co. for the vlv/chv DPIO PHY registers. > > > > Signed-off-by: Ville Syrjälä > > What a PITA p

Re: [PATCH v10 6/6] drm/i915/display: force qgv check after the hw state readout

2024-04-19 Thread Ville Syrjälä
omic check right after the > + * hw state readout > + */ > + bool force_check_qgv; > + > int min_cdclk[I915_MAX_PIPES]; > unsigned int data_rate[I915_MAX_PIPES]; > u8 num_active_planes[I915_MAX_PIPES]; > -- > 2.34.1 -- Ville Syrjälä Intel

Re: [PATCH v10 1/6] drm/i915/display: Add meaningful traces for QGV point info error handling

2024-04-19 Thread Ville Syrjälä
; @@ -681,6 +681,8 @@ void intel_dram_detect(struct drm_i915_private *i915) > if (ret) > return; > > + drm_dbg_kms(>drm, "Num qgv points %u\n", > dram_info->num_qgv_points); > + This doesn't seem to belong here. > drm_dbg_kms(>drm, "DRAM channels: %u\n", dram_info->num_channels); > > drm_dbg_kms(>drm, "Watermark level 0 adjustment needed: %s\n", > -- > 2.34.1 -- Ville Syrjälä Intel

Re: ✓ Fi.CI.BAT: success for drm/i915: BXT/GLK per-lane vswing and PHY reg cleanup (rev3)

2024-04-19 Thread Ville Syrjälä
> igt@i915_selftest@l...@gem.html > >> > >> > >> [i915#10366]: https://gitlab.freedesktop.org/drm/intel/issues/10366 > >> > >> > >> Build changes > >> - > >> > >> * Linux: CI_DRM_14597 -> Patchwork_132390v3 > >> > >> CI-20190529: 20190529 > >> CI_DRM_14597: 64a20aacb61e4ce6d8a0b3dc6e4bff72e316ffa3 @ > >> git://anongit.freedesktop.org/gfx-ci/linux > >> IGT_7810: 189483744e9ff56ea573e07a049c5365404c7ecb @ > >> https://gitlab.freedesktop.org/drm/igt-gpu-tools.git > >> Patchwork_132390v3: 64a20aacb61e4ce6d8a0b3dc6e4bff72e316ffa3 @ > >> git://anongit.freedesktop.org/gfx-ci/linux > >> > >> == Logs == > >> > >> For more details see: > >> https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_132390v3/index.html > > > > -- > > Jani Nikula, Intel > > -- > Jani Nikula, Intel -- Ville Syrjälä Intel

Re: [PATCH 4/6] drm/i915: Eliminate extra frame from skl-glk sync->async flip change

2024-04-19 Thread Ville Syrjälä
6] drm/i915: Eliminate extra frame from skl-glk > > sync->async > > flip change > > > > From: Ville Syrjälä > > > > On bdw-glk the sync->async flip change takes an extra frame due to the > > double > > buffering behaviour of the async flip pl

Re: [PATCH 2/6] drm/i915: Reject async flips if we need to change DDB/watermarks

2024-04-19 Thread Ville Syrjälä
drm/i915: Reject async flips if we need to change > > DDB/watermarks > > > > From: Ville Syrjälä > > > > DDB/watermarks are always double buffered on the vblank, so we can't safely > > change them during async flips. Currently this never happens, but we

Re: [PATCH 1/6] drm/i915: Align PLANE_SURF to 16k on ADL for async flips

2024-04-19 Thread Ville Syrjälä
1/6] drm/i915: Align PLANE_SURF to 16k on ADL for async > > flips > > > > From: Ville Syrjälä > > > > On ADL async flips apparently generate DMAR and GGTT faults (with > > accompanying visual glitches) unless PLANE_SURF is aligned to at least 16k. > > Bump

Re: [PATCH 1/5] drm/vblank: Introduce drm_crtc_vblank_crtc()

2024-04-18 Thread Ville Syrjälä
On Tue, Apr 09, 2024 at 06:02:49PM +0300, Dmitry Baryshkov wrote: > On Mon, Apr 08, 2024 at 10:06:07PM +0300, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Make life easier by providing a function that hands > > out the the correct drm_vblank_crtc for a give

Re: [PATCH 6/8] drm/i915/dpio: s/ddi/dpio/ for bxt/glk PHY stuff

2024-04-17 Thread Ville Syrjälä
On Mon, Apr 15, 2024 at 03:39:41PM +0300, Jani Nikula wrote: > On Fri, 12 Apr 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Since all of this lives in intel_dpio_phy.c let's rename the > > bxt/glk functions to have bxt_dpio_phy_ namespace. > >

Re: [PATCH v1] drm/xe: no need to call fixup_initial_plane_config in XE

2024-04-16 Thread Ville Syrjälä
t rid rid of the async flip abuse in xe. > plane_config_fini(plane_config); > } > } > -- > 2.34.1 -- Ville Syrjälä Intel

Re: [PATCH 1/2] drm/i915: Add SCLKGATE_DIS register definition

2024-04-16 Thread Ville Syrjälä
_MMIO(0x45260) > #define WM_MISC_DATA_PARTITION_5_6 (1 << 0) > > -- > 2.43.2 -- Ville Syrjälä Intel

Re: [PATCH 3/6] drm/i915/display: split out intel_fbc_regs.h from i915_reg.h

2024-04-12 Thread Ville Syrjälä
On Fri, Apr 12, 2024 at 06:50:57PM +0300, Jani Nikula wrote: > On Fri, 12 Apr 2024, Ville Syrjälä wrote: > > On Fri, Apr 12, 2024 at 05:52:55PM +0300, Jani Nikula wrote: > >> +/* > >> + * Framebuffer compression (915+ only) > >> + */ > > > &

Re: [PATCH 5/6] drm/i915/display: split out intel_dpio_regs.h from i915_reg.h

2024-04-12 Thread Ville Syrjälä
V_CMN_DW13_CH00x8134 > -#define _CHV_CMN_DW0_CH1 0x8080 > -#define DPIO_CHV_S1_DIV_SHIFT 21 > -#define DPIO_CHV_P1_DIV_SHIFT 13 /* 3 bits */ > -#define DPIO_CHV_P2_DIV_SHIFT 8 /* 5 bits */ > -#define DPIO_CHV_K_DIV_SHIFT 4 > -#define DPIO_PLL_FREQLOCK (1 << 1) > -#define DPIO_PLL_LOCK (1 << 0) > -#define CHV_CMN_DW13(ch) _PIPE(ch, _CHV_CMN_DW13_CH0, _CHV_CMN_DW0_CH1) > - > -#define _CHV_CMN_DW14_CH00x8138 > -#define _CHV_CMN_DW1_CH1 0x8084 > -#define DPIO_AFC_RECAL (1 << 14) > -#define DPIO_DCLKP_EN (1 << 13) > -#define CHV_BUFLEFTENA2_DISABLE(0 << 17) /* CL2 DW1 only */ > -#define CHV_BUFLEFTENA2_NORMAL (1 << 17) /* CL2 DW1 only */ > -#define CHV_BUFLEFTENA2_FORCE (3 << 17) /* CL2 DW1 only */ > -#define CHV_BUFLEFTENA2_MASK (3 << 17) /* CL2 DW1 only */ > -#define CHV_BUFRIGHTENA2_DISABLE (0 << 19) /* CL2 DW1 only */ > -#define CHV_BUFRIGHTENA2_NORMAL(1 << 19) /* CL2 DW1 only */ > -#define CHV_BUFRIGHTENA2_FORCE (3 << 19) /* CL2 DW1 only */ > -#define CHV_BUFRIGHTENA2_MASK (3 << 19) /* CL2 DW1 only */ > -#define CHV_CMN_DW14(ch) _PIPE(ch, _CHV_CMN_DW14_CH0, _CHV_CMN_DW1_CH1) > - > -#define _CHV_CMN_DW19_CH00x814c > -#define _CHV_CMN_DW6_CH1 0x8098 > -#define DPIO_ALLDL_POWERDOWN_SHIFT_CH1 30 /* CL2 DW6 only */ > -#define DPIO_ANYDL_POWERDOWN_SHIFT_CH1 29 /* CL2 DW6 only */ > -#define DPIO_DYNPWRDOWNEN_CH1 (1 << 28) /* CL2 DW6 only */ > -#define CHV_CMN_USEDCLKCHANNEL (1 << 13) > - > -#define CHV_CMN_DW19(ch) _PIPE(ch, _CHV_CMN_DW19_CH0, _CHV_CMN_DW6_CH1) > - > -#define CHV_CMN_DW28 0x8170 > -#define DPIO_CL1POWERDOWNEN(1 << 23) > -#define DPIO_DYNPWRDOWNEN_CH0 (1 << 22) > -#define DPIO_SUS_CLK_CONFIG_ON (0 << 0) > -#define DPIO_SUS_CLK_CONFIG_CLKREQ (1 << 0) > -#define DPIO_SUS_CLK_CONFIG_GATE (2 << 0) > -#define DPIO_SUS_CLK_CONFIG_GATE_CLKREQ(3 << 0) > - > -#define CHV_CMN_DW30 0x8178 > -#define DPIO_CL2_LDOFUSE_PWRENB(1 << 6) > -#define DPIO_LRC_BYPASS(1 << 3) > - > -#define _TXLANE(ch, lane, offset) ((ch ? 0x2400 : 0) + \ > - (lane) * 0x200 + (offset)) > - > -#define CHV_TX_DW0(ch, lane) _TXLANE(ch, lane, 0x80) > -#define CHV_TX_DW1(ch, lane) _TXLANE(ch, lane, 0x84) > -#define CHV_TX_DW2(ch, lane) _TXLANE(ch, lane, 0x88) > -#define CHV_TX_DW3(ch, lane) _TXLANE(ch, lane, 0x8c) > -#define CHV_TX_DW4(ch, lane) _TXLANE(ch, lane, 0x90) > -#define CHV_TX_DW5(ch, lane) _TXLANE(ch, lane, 0x94) > -#define CHV_TX_DW6(ch, lane) _TXLANE(ch, lane, 0x98) > -#define CHV_TX_DW7(ch, lane) _TXLANE(ch, lane, 0x9c) > -#define CHV_TX_DW8(ch, lane) _TXLANE(ch, lane, 0xa0) > -#define CHV_TX_DW9(ch, lane) _TXLANE(ch, lane, 0xa4) > -#define CHV_TX_DW10(ch, lane) _TXLANE(ch, lane, 0xa8) > -#define CHV_TX_DW11(ch, lane) _TXLANE(ch, lane, 0xac) > -#define DPIO_FRC_LATENCY_SHFIT 8 > -#define CHV_TX_DW14(ch, lane) _TXLANE(ch, lane, 0xb8) > -#define DPIO_UPAR_SHIFT30 > - > /* BXT PHY registers */ > #define _BXT_PHY0_BASE 0x6C000 > #define _BXT_PHY1_BASE 0x162000 > -- > 2.39.2 -- Ville Syrjälä Intel

Re: [PATCH 4/6] drm/i915/display: split out intel_sprite_regs.h from i915_reg.h

2024-04-12 Thread Ville Syrjälä
w file mode 100644 > index ..caf4b58e9a27 > --- /dev/null > +++ b/drivers/gpu/drm/i915/display/intel_sprite_regs.h > @@ -0,0 +1,349 @@ > +/* SPDX-License-Identifier: MIT */ > +/* Copyright © 2024 Intel Corporation */ > + > +#ifndef __INTEL_SPRITE_REGS__ > +#d

Re: [PATCH 2/6] drm/i915/color: move palette registers to intel_color_regs.h

2024-04-12 Thread Ville Syrjälä
_PICK_EVEN_2RANGES(pipe, 2, > \ > + _PALETTE_A, _PALETTE_B, > \ > + _CHV_PALETTE_C, > _CHV_PALETTE_C) + \ > + (i) * 4) > + >

Re: [PATCH 1/6] drm/i915/audio: move LPE audio regs to intel_audio_regs.h

2024-04-12 Thread Ville Syrjälä
On Fri, Apr 12, 2024 at 05:52:53PM +0300, Jani Nikula wrote: > There are too few registers to warrant a dedicated file for LPE audio > regs, but the audio reg file is better than i915_reg.h. > > Signed-off-by: Jani Nikula Reviewed-by: Ville Syrjälä > --- > drivers/gp

Re: [PATCH 3/6] drm/i915/display: split out intel_fbc_regs.h from i915_reg.h

2024-04-12 Thread Ville Syrjälä
) > -#define CHICKEN_FBC_STRIDE(x) > REG_FIELD_PREP(CHICKEN_FBC_STRIDE_MASK, (x)) > - > #define _CHICKEN_PIPESL_1_A 0x420b0 > #define _CHICKEN_PIPESL_1_B 0x420b4 > #define CHICKEN_PIPESL_1(pipe) _MMIO_PIPE(pipe, _CHICKEN_PIPESL_1_A, > _CHICKEN_PIPESL_1_B) > diff --git a/drivers/gpu/drm/i915/intel_clock_gating.c > b/drivers/gpu/drm/i915/intel_clock_gating.c > index 7e70ee4fbd84..1dc5281b2ade 100644 > --- a/drivers/gpu/drm/i915/intel_clock_gating.c > +++ b/drivers/gpu/drm/i915/intel_clock_gating.c > @@ -28,6 +28,7 @@ > #include "display/intel_de.h" > #include "display/intel_display.h" > #include "display/intel_display_trace.h" > +#include "display/intel_fbc_regs.h" > #include "display/skl_watermark.h" > > #include "gt/intel_engine_regs.h" > diff --git a/drivers/gpu/drm/i915/intel_gvt_mmio_table.c > b/drivers/gpu/drm/i915/intel_gvt_mmio_table.c > index 87ecc5104fd9..70d661bffcc2 100644 > --- a/drivers/gpu/drm/i915/intel_gvt_mmio_table.c > +++ b/drivers/gpu/drm/i915/intel_gvt_mmio_table.c > @@ -10,6 +10,7 @@ > #include "display/intel_dmc_regs.h" > #include "display/intel_dp_aux_regs.h" > #include "display/intel_dpio_phy.h" > +#include "display/intel_fbc_regs.h" > #include "display/intel_fdi_regs.h" > #include "display/intel_lvds_regs.h" > #include "display/intel_psr_regs.h" > -- > 2.39.2 -- Ville Syrjälä Intel

Re: [PATCH] drm/i915: Don't enable hwmon for selftests

2024-04-11 Thread Ville Syrjälä
On Wed, Apr 10, 2024 at 10:09:32PM -0700, Dixit, Ashutosh wrote: > On Wed, 10 Apr 2024 04:42:46 -0700, Ville Syrjälä wrote: > > > > On Tue, Apr 09, 2024 at 09:28:55PM -0700, Ashutosh Dixit wrote: > > > There are no hwmon selftests so there is no need to enable hwmon for &g

Re: ✗ Fi.CI.BAT: failure for drm/i915: Bigjoiner modeset sequence redesign and MST support (rev4)

2024-04-10 Thread Ville Syrjälä
On Wed, Apr 10, 2024 at 05:34:13PM +0300, Ville Syrjälä wrote: > On Tue, Apr 09, 2024 at 06:12:09PM -, Patchwork wrote: > > == Series Details == > > > > Series: drm/i915: Bigjoiner modeset sequence redesign and MST support (rev4) > > URL : https://patchwork.fr

Re: ✗ Fi.CI.BAT: failure for drm/i915: Bigjoiner modeset sequence redesign and MST support (rev4)

2024-04-10 Thread Ville Syrjälä
i915]:__live_retire [i915] <3> [396.903434] i915 :00:02.0: [drm] *ERROR* live_active_wait count: 0 <3> [396.903443] i915 :00:02.0: [drm] *ERROR* live_active_wait preallocated barriers? no <3> [396.904085] i915/i915_active_live_selftests: live_active_wait failed with error -22 Looks very much unrelated to these changes. Please wave this one through. -- Ville Syrjälä Intel

Re: [PATCH v4] drm/i915/panelreplay: Panel replay workaround with VRR

2024-04-10 Thread Ville Syrjälä
ntel_crtc_compute_config() in my current WIP DSB plane update branch. The problem with PSR is that it seems to want to use it before that. The question no one has yet answered is whether PSR actually wants to consult the undelayed transcoder vblank or the delayed vblank. I'm think the former is more likely (with PSR being a transcoder level feature), in which case the chicken vs. egg sitation will simply disappear. But someone will need to confirm that. The other potential chicken vs. egg looks to be VRR on setups where TRANS_SET_CONTEXT_LATENCY isn't a thing. The question there is how the vblank delay is configured when using VRR. I'm pretty sure I did figure this out already, but can't remember right now what the conclusion was. So that needs to be double checked as well. I was also pondering whether we should try to leave adjusted_mode.crtc_vblank_start alone and instead just reflect the delayed vblank in pipe_mode.crtc_vblank_start? That might be useful if there are other places later on in the atomic_check/etc. that needs to know the position of the undelayed vblank. But that would have big implications to eg. the vblank timestamping code, so probably not entirely feasible. -- Ville Syrjälä Intel

Re: [PATCH] drm/i915: Don't enable hwmon for selftests

2024-04-10 Thread Ville Syrjälä
intel_gt_driver_unregister(gt); > > - i915_hwmon_unregister(dev_priv); > + if (!is_selftest()) > + i915_hwmon_unregister(dev_priv); > > i915_perf_unregister(dev_priv); > i915_pmu_unregister(dev_priv); > -- > 2.41.0 -- Ville Syrjälä Intel

Re: [PATCH v2 3/4] drm/i915/bios: switch to struct drm_edid and struct drm_edid_product_id

2024-04-09 Thread Ville Syrjälä
is that struct drm_edid_product_id and struct > lvds_pnp_id describe identical data, albeit with slightly different > member definitions. > > Cc: Ville Syrjälä > Acked-by: Melissa Wen > Signed-off-by: Jani Nikula > --- > drivers/gpu/drm/i915/display/intel_bios.c | 43 ++

Re: [PATCH 0/8] drm/i915: drm_i915_private and xe_device cleanups

2024-04-08 Thread Ville Syrjälä
k to display substruct > drm/xe/display: remove unused xe->enabled_irq_mask Looks reasonable. Series is Reviewed-by: Ville Syrjälä > > drivers/gpu/drm/i915/display/intel_cdclk.c| 23 > drivers/gpu/drm/i915/display/intel_crt.c | 2 +- > drivers/gpu/drm/i915/d

Re: [PATCH 1/4] drm/edid: add drm_edid_get_product_id()

2024-04-08 Thread Ville Syrjälä
nector, > const struct drm_edid *edid); > int drm_edid_connector_add_modes(struct drm_connector *connector); > bool drm_edid_is_digital(const struct drm_edid *drm_edid); > +void drm_edid_get_product_id(const struct drm_edid *drm_edid, > + struct drm_edid_product_id *id); > > const u8 *drm_find_edid_extension(const struct drm_edid *drm_edid, > int ext_id, int *ext_index); > -- > 2.39.2 -- Ville Syrjälä Intel

Re: [PATCH 2/4] drm/edid: add drm_edid_print_product_id()

2024-04-08 Thread Ville Syrjälä
d_modes(struct drm_connector > *connector); > bool drm_edid_is_digital(const struct drm_edid *drm_edid); > void drm_edid_get_product_id(const struct drm_edid *drm_edid, > struct drm_edid_product_id *id); > +void drm_edid_print_product_id(struct drm_printer *p, > +const struct drm_edid_product_id *id, bool raw); > > const u8 *drm_find_edid_extension(const struct drm_edid *drm_edid, > int ext_id, int *ext_index); > -- > 2.39.2 -- Ville Syrjälä Intel

Re: [PATCH 1/2] drm/i915: move rawclk init to intel_cdclk_init()

2024-04-08 Thread Ville Syrjälä
On Mon, Apr 08, 2024 at 08:28:27PM +0300, Ville Syrjälä wrote: > On Mon, Apr 08, 2024 at 08:23:14PM +0300, Jani Nikula wrote: > > The rawclk initialization is a bit out of place in > > intel_device_info_runtime_init(). Move it to intel_cdclk_init(), with a > &g

Re: [PATCH 1/2] drm/i915: move rawclk init to intel_cdclk_init()

2024-04-08 Thread Ville Syrjälä
ice_info.c > index a0a43ea07f11..48f0957392f9 100644 > --- a/drivers/gpu/drm/i915/intel_device_info.c > +++ b/drivers/gpu/drm/i915/intel_device_info.c > @@ -370,10 +370,6 @@ void intel_device_info_runtime_init(struct > drm_i915_private *dev_priv) > "Disabling ppGTT for VT-d support\n"); > runtime->ppgtt_type = INTEL_PPGTT_NONE; > } > - > - runtime->rawclk_freq = intel_read_rawclk(dev_priv); > - drm_dbg(_priv->drm, "rawclk rate: %d kHz\n", runtime->rawclk_freq); > - > } > > /* > -- > 2.39.2 -- Ville Syrjälä Intel

Re: [PATCH 11/12] drm/client: Streamline mode selection debugs

2024-04-08 Thread Ville Syrjälä
On Mon, Apr 08, 2024 at 09:46:44AM +0200, Thomas Zimmermann wrote: > Hi > > Am 05.04.24 um 21:58 schrieb Ville Syrjälä: > > On Fri, Apr 05, 2024 at 09:57:07AM +0200, Thomas Zimmermann wrote: > >> Hi > >> > >> Am 04.04.24 um 22:33 schrieb Ville Syrjala:

Re: [PATCH v0 02/14] drm/amdgpu,drm/radeon: Make I2C terminology more inclusive

2024-04-08 Thread Ville Syrjälä
ach > an agreement. > > I raised the same question to Wolfram. I don't know where that discussion happened, but my opinion is NAK to "client". Life is already confusing enough with these renames, so let's not make it even more confusing by inventing new names nowhere to be found in the spec. And let's especially not invent names that don't even fit the purpose. "Client" makes me think of "client/server" or some real world analogy. Neither of which seem to have any resemblence to how the term would be used for i2c. -- Ville Syrjälä Intel

Re: [PATCH v2 7/7] drm: prefer DRM_MODE_FMT/ARG over drm_mode_debug_printmodeline()

2024-04-08 Thread Ville Syrjälä
ogging of modes, in the right drm debug > category, and inline with the rest of the logging instead of split to > multiple lines. > > Suggested-by: Ville Syrjälä > Signed-off-by: Jani Nikula Reviewed-by: Ville Syrjälä > --- > drivers/gpu/drm/drm_atomic_uapi.c | 6 +++--- >

Re: [PATCH v2 01/17] drm/i915: Update pipes in reverse order for bigjoiner

2024-04-08 Thread Ville Syrjälä
1/17] drm/i915: Update pipes in reverse order for > > bigjoiner > > > > 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

Re: [PATCH v2 6/7] drm/crtc-helper: switch to drm device based logging and warns

2024-04-08 Thread Ville Syrjälä
drm_connector_for_each_possible_encoder(connector, encoder) > return encoder; > > @@ -564,8 +566,6 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set, > int ret; > int i; > > - DRM_DEBUG_KMS("\n"); > - >

Re: [PATCH] drm/i915/pps: move pps debugfs file to intel_pps.c

2024-04-08 Thread Ville Syrjälä
private *dev_priv, enum pipe pipe) > { > i915_reg_t pp_reg; > diff --git a/drivers/gpu/drm/i915/display/intel_pps.h > b/drivers/gpu/drm/i915/display/intel_pps.h > index a2c2467e3c22..07ef96ca8da2 100644 > --- a/drivers/gpu/drm/i915/display/intel_pps.h > +++ b/drivers/gpu/drm/i915/display/intel_pps.h > @@ -51,6 +51,8 @@ void vlv_pps_init(struct intel_encoder *encoder, > void intel_pps_unlock_regs_wa(struct drm_i915_private *i915); > void intel_pps_setup(struct drm_i915_private *i915); > > +void intel_pps_connector_debugfs_add(struct intel_connector *connector); > + > void assert_pps_unlocked(struct drm_i915_private *i915, enum pipe pipe); > > #endif /* __INTEL_PPS_H__ */ > -- > 2.39.2 -- Ville Syrjälä Intel

Re: [PATCH 01/12] drm/client: Fully protect modes[] with dev->mode_config.mutex

2024-04-05 Thread Ville Syrjälä
On Fri, Apr 05, 2024 at 11:39:33PM +0300, Dmitry Baryshkov wrote: > On Fri, 5 Apr 2024 at 22:17, Ville Syrjälä > wrote: > > > > On Fri, Apr 05, 2024 at 06:24:01AM +0300, Dmitry Baryshkov wrote: > > > On Thu, Apr 04, 2024 at 11:33:25PM +0300, Ville Syrjala wrote:

Re: [PATCH 10/12] drm/client: Use [CONNECTOR:%d:%s] formatting

2024-04-05 Thread Ville Syrjälä
On Fri, Apr 05, 2024 at 11:23:01AM +0300, Jani Nikula wrote: > On Thu, 04 Apr 2024, Ville Syrjala wrote: > > From: Ville Syrjälä > > > > Switch to the canonical [CONNECTOR:%d:%s] etc. format for > > printing out kms objects. > > I've been pinging for reviews on

Re: [PATCH 11/12] drm/client: Streamline mode selection debugs

2024-04-05 Thread Ville Syrjälä
On Fri, Apr 05, 2024 at 09:57:07AM +0200, Thomas Zimmermann wrote: > Hi > > Am 04.04.24 um 22:33 schrieb Ville Syrjala: > > From: Ville Syrjälä > > > > Get rid of all the redundant debugs and just wait until the end > > to print which mode (and of which ty

Re: [PATCH v2 01/17] drm/i915: Update pipes in reverse order for bigjoiner

2024-04-05 Thread Ville Syrjälä
7] drm/i915: Update pipes in reverse order for > > bigjoiner > > > > 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 >

  1   2   3   4   5   6   7   8   9   10   >