> -----Original Message----- > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > Sent: Friday, October 25, 2024 11:51 AM > To: Kandpal, Suraj <suraj.kandpal@xxxxxxxxx> > Cc: intel-xe@xxxxxxxxxxxxxxxxxxxxx; intel-gfx@xxxxxxxxxxxxxxxxxxxxx; Nautiyal, > Ankit K <ankit.k.nautiyal@xxxxxxxxx>; Roper, Matthew D > <matthew.d.roper@xxxxxxxxx> > Subject: Re: [PATCH 1/5] drm/i915/display: Fix the plane max height and width > limits > > On Fri, Oct 25, 2024 at 11:31:32AM +0530, Suraj Kandpal wrote: > > Fix the plane max height and width limits taking into account the > > joined pipe limits too. > > > > Bspec: 28692, 49199, 68858 > > Fixes: 63dc014e37b9 ("drm/i915/dp: Allow big joiner modes in > > intel_dp_mode_valid(), v3.") > > Signed-off-by: Suraj Kandpal <suraj.kandpal@xxxxxxxxx> > > --- > > drivers/gpu/drm/i915/display/intel_display.c | 19 ++++++++++++++++--- > > 1 file changed, 16 insertions(+), 3 deletions(-) > > > > diff --git a/drivers/gpu/drm/i915/display/intel_display.c > > b/drivers/gpu/drm/i915/display/intel_display.c > > index ef1436146325..fc578af4f394 100644 > > --- a/drivers/gpu/drm/i915/display/intel_display.c > > +++ b/drivers/gpu/drm/i915/display/intel_display.c > > @@ -8450,9 +8450,22 @@ intel_mode_valid_max_plane_size(struct > drm_i915_private *dev_priv, > > * plane so let's not advertize modes that are > > * too big for that. > > */ > > - if (DISPLAY_VER(dev_priv) >= 11) { > > - plane_width_max = 5120 * num_joined_pipes; > > - plane_height_max = 4320; > > + if (DISPLAY_VER(dev_priv) >= 20) { > > + if (num_joined_pipes > 1) { > > + plane_width_max = 8192; > > + plane_height_max = 4800; > > + } else { > > + plane_width_max = 5120; > > + plane_height_max = 4096; > > The joiner operates on horizontal lines. Why would the vertical resolution > change here? > This is what I got from the bspec when pipe are joined the vertical resolution ends up Changing Regards, Suraj Kandpal > And this is breaking ultrajoiner now. > > Frankly I have a hard time believing that there are any extra limits on plane > size imposed by the hardware for joined pipes. > If there is some kind of maximum width limit then it must be coming from the > joiner itself (eg. max line buffer width) and not from the planes. So I think this > is the wrong place to handle that. > > > + } > > + } else if (DISPLAY_VER(dev_priv) >= 11) { > > + if (num_joined_pipes > 1) { > > + plane_width_max = 7680; > > + plane_height_max = 4320; > > + } else { > > + plane_width_max = 5120; > > + plane_height_max = 4096; > > + } > > } else { > > plane_width_max = 5120; > > plane_height_max = 4096; > > -- > > 2.34.1 > > -- > Ville Syrjälä > Intel