From: "Ville Syrjälä" <ville.syrjala@linux.intel.com> To: Dave Jones <davej@codemonkey.org.uk>, Linux Kernel <linux-kernel@vger.kernel.org>, Jani Nikula <jani.nikula@linux.intel.com>, Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>, intel-gfx@lists.freedesktop.org Subject: Re: [Intel-gfx] 4.17-rc2: Could not determine valid watermarks for inherited state Date: Thu, 26 Apr 2018 18:25:13 +0300 [thread overview] Message-ID: <20180426152513.GR23723@intel.com> (raw) In-Reply-To: <20180426151641.GQ23723@intel.com> On Thu, Apr 26, 2018 at 06:16:41PM +0300, Ville Syrjälä wrote: > On Thu, Apr 26, 2018 at 05:56:14PM +0300, Ville Syrjälä wrote: > > On Thu, Apr 26, 2018 at 10:27:19AM -0400, Dave Jones wrote: > > > [ 1.176131] [drm:i9xx_get_initial_plane_config] pipe A/primary A with fb: size=800x600@32, offset=0, pitch 3200, size 0x1d4c00 > > > [ 1.176161] [drm:i915_gem_object_create_stolen_for_preallocated] creating preallocated stolen object: stolen_offset=0x0000000000000000, gtt_offset=0x0000000000000000, size=0x00000000001d5000 > > > [ 1.176312] [drm:intel_alloc_initial_plane_obj.isra.127] initial plane fb obj (ptrval) > > > [ 1.176351] [drm:intel_modeset_init] pipe A active planes 0x1 > > > [ 1.176456] [drm:drm_atomic_helper_check_plane_state] Plane must cover entire CRTC > > > [ 1.176481] [drm:drm_rect_debug_print] dst: 800x600+0+0 > > > [ 1.176494] [drm:drm_rect_debug_print] clip: 1366x768+0+0 > > > > OK, so that's the problem right there. The fb we took over from the > > BIOS was 800x600, but now we're trying to set up a 1366x768 mode. > > > > We seem to be missing checks to make sure the initial fb is actually > > big enough for the mode we're currently using :( > > Actually we do read out the pipe src size as 800x600 initially, which > make sense. And we even stuff that into the mode.h/vdisplay, so up to > that point everything is pretty much correct. It goes wrong is when > intel_modeset_readout_hw_state() calls intel_mode_from_pipe_config() > as that will override the h/vdisplay with the actual crtc timings > instead of the pipe src size. > > So I suppose we should be able to just add the sanity checks for the > fb vs. h/vdisplay, and at least we should get past this error. A > slightly bigger mystery is what will happen later when our pipe src > size doesn't actually agree with the h/vdisplay. The first modeset > will correct it, but we might want some kind of extra sanitize step > for fastboot type of stuff. Hmm. Or maybe we should just stick to the pipe src size. I'm curious whether this fixes the problem? diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 0f8c7389e87d..30824beedef7 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -15284,6 +15284,8 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) memset(&crtc->base.mode, 0, sizeof(crtc->base.mode)); if (crtc_state->base.active) { intel_mode_from_pipe_config(&crtc->base.mode, crtc_state); + crtc->base.mode.hdisplay = crtc_state->pipe_src_w; + crtc->base.mode.vdisplay = crtc_state->pipe_src_h; intel_mode_from_pipe_config(&crtc_state->base.adjusted_mode, crtc_state); WARN_ON(drm_atomic_set_mode_for_crtc(crtc->base.state, &crtc->base.mode)); -- Ville Syrjälä Intel
WARNING: multiple messages have this Message-ID (diff)
From: "Ville Syrjälä" <ville.syrjala@linux.intel.com> To: Dave Jones <davej@codemonkey.org.uk>, Linux Kernel <linux-kernel@vger.kernel.org>, Jani Nikula <jani.nikula@linux.intel.com>, Joonas Lahtinen <joonas.lahtinen@linux.intel.com>, Rodrigo Vivi <rodrigo.vivi@intel.com>, intel-gfx@lists.freedesktop.org Subject: Re: 4.17-rc2: Could not determine valid watermarks for inherited state Date: Thu, 26 Apr 2018 18:25:13 +0300 [thread overview] Message-ID: <20180426152513.GR23723@intel.com> (raw) In-Reply-To: <20180426151641.GQ23723@intel.com> On Thu, Apr 26, 2018 at 06:16:41PM +0300, Ville Syrjälä wrote: > On Thu, Apr 26, 2018 at 05:56:14PM +0300, Ville Syrjälä wrote: > > On Thu, Apr 26, 2018 at 10:27:19AM -0400, Dave Jones wrote: > > > [ 1.176131] [drm:i9xx_get_initial_plane_config] pipe A/primary A with fb: size=800x600@32, offset=0, pitch 3200, size 0x1d4c00 > > > [ 1.176161] [drm:i915_gem_object_create_stolen_for_preallocated] creating preallocated stolen object: stolen_offset=0x0000000000000000, gtt_offset=0x0000000000000000, size=0x00000000001d5000 > > > [ 1.176312] [drm:intel_alloc_initial_plane_obj.isra.127] initial plane fb obj (ptrval) > > > [ 1.176351] [drm:intel_modeset_init] pipe A active planes 0x1 > > > [ 1.176456] [drm:drm_atomic_helper_check_plane_state] Plane must cover entire CRTC > > > [ 1.176481] [drm:drm_rect_debug_print] dst: 800x600+0+0 > > > [ 1.176494] [drm:drm_rect_debug_print] clip: 1366x768+0+0 > > > > OK, so that's the problem right there. The fb we took over from the > > BIOS was 800x600, but now we're trying to set up a 1366x768 mode. > > > > We seem to be missing checks to make sure the initial fb is actually > > big enough for the mode we're currently using :( > > Actually we do read out the pipe src size as 800x600 initially, which > make sense. And we even stuff that into the mode.h/vdisplay, so up to > that point everything is pretty much correct. It goes wrong is when > intel_modeset_readout_hw_state() calls intel_mode_from_pipe_config() > as that will override the h/vdisplay with the actual crtc timings > instead of the pipe src size. > > So I suppose we should be able to just add the sanity checks for the > fb vs. h/vdisplay, and at least we should get past this error. A > slightly bigger mystery is what will happen later when our pipe src > size doesn't actually agree with the h/vdisplay. The first modeset > will correct it, but we might want some kind of extra sanitize step > for fastboot type of stuff. Hmm. Or maybe we should just stick to the pipe src size. I'm curious whether this fixes the problem? diff --git a/drivers/gpu/drm/i915/intel_display.c b/drivers/gpu/drm/i915/intel_display.c index 0f8c7389e87d..30824beedef7 100644 --- a/drivers/gpu/drm/i915/intel_display.c +++ b/drivers/gpu/drm/i915/intel_display.c @@ -15284,6 +15284,8 @@ static void intel_modeset_readout_hw_state(struct drm_device *dev) memset(&crtc->base.mode, 0, sizeof(crtc->base.mode)); if (crtc_state->base.active) { intel_mode_from_pipe_config(&crtc->base.mode, crtc_state); + crtc->base.mode.hdisplay = crtc_state->pipe_src_w; + crtc->base.mode.vdisplay = crtc_state->pipe_src_h; intel_mode_from_pipe_config(&crtc_state->base.adjusted_mode, crtc_state); WARN_ON(drm_atomic_set_mode_for_crtc(crtc->base.state, &crtc->base.mode)); -- Ville Syrjälä Intel _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx
next prev parent reply other threads:[~2018-04-26 15:25 UTC|newest] Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-04-23 15:27 4.17-rc2: Could not determine valid watermarks for inherited state Dave Jones 2018-04-23 15:27 ` Dave Jones 2018-04-26 12:47 ` Jani Nikula 2018-04-26 12:47 ` Jani Nikula 2018-04-26 13:10 ` [Intel-gfx] " Ville Syrjälä 2018-04-26 14:27 ` Dave Jones 2018-04-26 14:27 ` Dave Jones 2018-04-26 14:56 ` [Intel-gfx] " Ville Syrjälä 2018-04-26 15:16 ` Ville Syrjälä 2018-04-26 15:16 ` Ville Syrjälä 2018-04-26 15:25 ` Ville Syrjälä [this message] 2018-04-26 15:25 ` Ville Syrjälä 2018-04-26 15:57 ` [Intel-gfx] " Dave Jones 2018-04-26 15:57 ` Dave Jones 2018-04-27 8:07 ` ✗ Fi.CI.CHECKPATCH: warning for " Patchwork 2018-04-27 8:24 ` ✓ Fi.CI.BAT: success " Patchwork 2018-04-27 10:28 ` ✓ Fi.CI.IGT: " Patchwork
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20180426152513.GR23723@intel.com \ --to=ville.syrjala@linux.intel.com \ --cc=davej@codemonkey.org.uk \ --cc=intel-gfx@lists.freedesktop.org \ --cc=jani.nikula@linux.intel.com \ --cc=joonas.lahtinen@linux.intel.com \ --cc=linux-kernel@vger.kernel.org \ --cc=rodrigo.vivi@intel.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.