From: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
To: "Shaikh, Azhar" <azhar.shaikh@intel.com>
Cc: "intel-gfx@lists.freedesktop.org" <intel-gfx@lists.freedesktop.org>
Subject: Re: [PATCH v8] drm/i915: Fix assert_plane() warning on bootup with external display
Date: Thu, 19 Jul 2018 23:22:57 +0300 [thread overview]
Message-ID: <20180719202257.GJ5565@intel.com> (raw)
In-Reply-To: <5FFFAD06ADE1CA4381B3F0F7C6AF5828093C194F@ORSMSX109.amr.corp.intel.com>
On Thu, Jul 19, 2018 at 08:03:42PM +0000, Shaikh, Azhar wrote:
>
>
> >-----Original Message-----
> >From: Shaikh, Azhar
> >Sent: Friday, July 6, 2018 11:38 AM
> >To: intel-gfx@lists.freedesktop.org
> >Cc: ville.syrjala@linux.intel.com; Navare, Manasi D
> ><manasi.d.navare@intel.com>; Shaikh, Azhar <azhar.shaikh@intel.com>
> >Subject: [PATCH v8] drm/i915: Fix assert_plane() warning on bootup with
> >external display
> >
> >On KBL, WHL RVPs, booting up with an external display connected, triggers
> >below warning, when the BiOS brings up the external display too.
> >This warning is not seen during hotplug.
> >
> >[ 3.615226] ------------[ cut here ]------------
> >[ 3.619829] plane 1A assertion failure (expected on, current off)
> >[ 3.632039] WARNING: CPU: 2 PID: 354 at
> >drivers/gpu/drm/i915/intel_display.c:1294 assert_plane+0x71/0xbb
> >[ 3.633920] iwlwifi 0000:00:14.3: loaded firmware version 38.c0e03d94.0
> >op_mode iwlmvm
> >[ 3.647157] Modules linked in: iwlwifi cfg80211 btusb btrtl btbcm btintel
> >bluetooth ecdh_generic
> >[ 3.647163] CPU: 2 PID: 354 Comm: frecon Not tainted 4.17.0-rc7-50176-
> >g655af12d39c2 #3
> >[ 3.647165] Hardware name: Intel Corporation CoffeeLake Client
> >Platform/WhiskeyLake U DDR4 ERB, BIOS
> >CNLSFWR1.R00.X140.B00.1804040304 04/04/2018
> >[ 3.684509] RIP: 0010:assert_plane+0x71/0xbb
> >[ 3.764451] Call Trace:
> >[ 3.766888] intel_atomic_commit_tail+0xa97/0xb77
> >[ 3.771569] intel_atomic_commit+0x26a/0x279
> >[ 3.771572] drm_atomic_helper_set_config+0x5c/0x76
> >[ 3.780670] __drm_mode_set_config_internal+0x66/0x109
> >[ 3.780672] drm_mode_setcrtc+0x4c9/0x5cc
> >[ 3.780674] ? drm_mode_getcrtc+0x162/0x162
> >[ 3.789774] ? drm_mode_getcrtc+0x162/0x162
> >[ 3.798108] drm_ioctl_kernel+0x8d/0xe4
> >[ 3.801926] drm_ioctl+0x27d/0x368
> >[ 3.805311] ? drm_mode_getcrtc+0x162/0x162
> >[ 3.805314] ? selinux_file_ioctl+0x14e/0x199
> >[ 3.805317] vfs_ioctl+0x21/0x2f
> >[ 3.813812] do_vfs_ioctl+0x491/0x4b4
> >[ 3.813813] ? security_file_ioctl+0x37/0x4b
> >[ 3.813816] ksys_ioctl+0x55/0x75
> >[ 3.820672] __x64_sys_ioctl+0x1a/0x1e
> >[ 3.820674] do_syscall_64+0x51/0x5f
> >[ 3.820678] entry_SYSCALL_64_after_hwframe+0x44/0xa9
> >[ 3.828221] RIP: 0033:0x7b5e04953967
> >[ 3.835504] RSP: 002b:00007fff2eafb6f8 EFLAGS: 00000246 ORIG_RAX:
> >0000000000000010
> >[ 3.835505] RAX: ffffffffffffffda RBX: 0000000000000002 RCX:
> >00007b5e04953967
> >[ 3.835505] RDX: 00007fff2eafb730 RSI: 00000000c06864a2 RDI:
> >000000000000000f
> >[ 3.835506] RBP: 00007fff2eafb720 R08: 0000000000000000 R09:
> >0000000000000000
> >[ 3.835507] R10: 0000000000000070 R11: 0000000000000246 R12:
> >000000000000000f
> >[ 3.879988] R13: 000056bc9dd7d210 R14: 00007fff2eafb730 R15:
> >00000000c06864a2
> >[ 3.887081] Code: 48 c7 c7 06 71 a5 be 84 c0 48 c7 c2 06 fd a3 be 48 89 f9 48 0f
> >44 ca 84 db 48 0f 45 d7 48 c7 c7 df d3 a4 be 31 c0 e8 af a0 c0 ff <0f> 0b eb 2b 48
> >c7 c7 06 fd a3 be 84 c0 48 c7 c2 06 71 a5 be 48
> >[ 3.905845] WARNING: CPU: 2 PID: 354 at
> >drivers/gpu/drm/i915/intel_display.c:1294 assert_plane+0x71/0xbb
> >[ 3.920964] ---[ end trace dac692f4ac46391a ]---
> >
> >The warning is seen when mode_setcrtc() is called for pipeB during bootup
> >and before we get a mode_setcrtc() for pipeA, while doing update_crtcs() in
> >intel_atomic_commit_tail().
> >Now since, plane1A is still active after commit, update_crtcs() is done for
> >pipeA and eventually update_plane() for plane1A.
> >
> >intel_plane_state->ctl for plane1A is not updated since set_modecrtc() is
> >called for pipeB. So intel_plane_state->ctl for plane 1A will be 0x0.
> >So doing an update_plane() for plane1A, will result in clearing
> >PLANE_CTL_ENABLE bit, and hence the warning.
> >
> >To fix this warning, force all active planes to recompute their states in probe.
> >
> >Changes in v8:
> >- Actually add Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >
> >Changes in v7:
> >- Move call to intel_initial_commit() after sanitize_watermarks()
> > Otherwise the plane update will still consult potentially bogus
> > watermarks we read out from the hardware. (Ville)
> >- Carry Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> > from v6
> >
> >Changes in v6:
> >- Handle EDEADLK for drm_atomic_get_crtc_state() and
> > drm_atomic_add_affected_planes()
> >- Remove optimization of calling intel_initial_commit()
> > only when there is more than one active pipe in probe.
> >- Avoid using intel_ types.
> >
> >Changes in v5:
> >- Drop drm_modeset_lock_all_ctx() since locks will be taken later.
> >
> >Changes in v4:
> >- Handle locking in intel_initial_commit()
> >- Move the for loop inside intel_initial_commit() so that
> > drm_atomic_commit() is called only once
> >- Call intel_initial_commit() only for more than one active crtc on boot.
> >- Save the return value of intel_initial_commit() and print a message in
> > case of an error
> >
> >Changes in v3:
> >- Add comments
> >
> >Changes in v2:
> >- Force all planes to recompute their states.(Ville Syrjälä)
> >- Update the commit message
> >
> >Signed-off-by: Azhar Shaikh <azhar.shaikh@intel.com>
> >Reviewed-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
> >---
>
> Can someone please merge/push this change?
Pushed to dinq. Thanks for the patch.
--
Ville Syrjälä
Intel
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx
prev parent reply other threads:[~2018-07-19 20:23 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-07-06 18:37 [PATCH v8] drm/i915: Fix assert_plane() warning on bootup with external display Azhar Shaikh
2018-07-06 19:16 ` ✓ Fi.CI.BAT: success for drm/i915: Fix assert_plane() warning on bootup with external display (rev8) Patchwork
2018-07-07 20:20 ` ✓ Fi.CI.IGT: " Patchwork
2018-07-19 20:03 ` [PATCH v8] drm/i915: Fix assert_plane() warning on bootup with external display Shaikh, Azhar
2018-07-19 20:22 ` Ville Syrjälä [this message]
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=20180719202257.GJ5565@intel.com \
--to=ville.syrjala@linux.intel.com \
--cc=azhar.shaikh@intel.com \
--cc=intel-gfx@lists.freedesktop.org \
/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: link
Be 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.