All of lore.kernel.org
 help / color / mirror / Atom feed
From: Rodrigo Vivi <rodrigo.vivi@intel.com>
To: Dave Hansen <dave.hansen@intel.com>,
	Zack Rusin <zack.rusin@broadcom.com>,
	 <dri-devel@lists.freedesktop.org>
Cc: Jani Nikula <jani.nikula@linux.intel.com>,
	intel-gfx <intel-gfx@lists.freedesktop.org>,
	<intel-xe@lists.freedesktop.org>
Subject: Re: Nasty console and xe driver interactions
Date: Thu, 15 Oct 2026 09:37:18 -0400	[thread overview]
Message-ID: <atDXDlI-EhrA791a@intel.com> (raw)
In-Reply-To: <5e79d3c0-5b2c-4e6c-ba38-3b723daf7109@intel.com>

On Wed, Oct 14, 2026 at 04:04:18PM -0700, Dave Hansen wrote:
> I've got a custom kernel that has CONFIG_DRM_XE=y. I moved a disk from
> an old NUC to a new Panther Lake one, and from it being SATA-attached to
> USB-attached.
> 
> The new system was hanging after GRUB:
> 
> 	Loading Linux ...
> 	Loading initial ramdisk ...
> 	<nothing>
> 
> Turns out, the root cause of the boot hang was my USB adapter needing a
> rootdelay=15. But it took me a couple of hours, and a USB debug cable to
> figure it out. Why?
> 
> Because the xe driver was falling over itself and presumably sabotaging
> the firmware framebuffer in the process:
> 
> > [    1.505387] xe 0000:00:02.0: vgaarb: deactivate vga console
> > [    1.507298] xe 0000:00:02.0: [drm] Running in SR-IOV PF mode
> > [    1.512831] xe 0000:00:02.0: [drm] Tile0: GT0: GuC firmware xe/ptl_guc_70.bin not found
> > [    1.512873] xe 0000:00:02.0: [drm] Tile0: GT0: GuC firmware(s) can be downloaded from https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git
> > [    1.512881] xe 0000:00:02.0: [drm] *ERROR* Tile0: GT0: Failed to initialize uC (-ENOENT)
> > [    1.512894] xe 0000:00:02.0: probe with driver xe failed with error -2
> 
> So instead of getting a nice message about my root disk problems, I just
> got a hang after GRUB. Basically, missing XE firmware results in a
> system which is undebuggable for normal humans*.
> 
> There seem to have been similar issues in the past:
> 
> > https://lore.kernel.org/lkml/20251229215906.3688205-1-zack.rusin@broadcom.com/

Cc: dri-devel
Cc: Zack

This definitely looks the right overall solution to the failed probe.
So the VGA can be put back.

> 
> Any chance that could be looked at again? This was a pretty insidious
> failure mode.
> 
>  * Normal humans don't have USB debug cables lying around

Agree. and mandatory FW or initramfs/initrd flows also don't help.

So, perhaps what could be done in this specific case while we don't have
the proper one is something like trying to pre-fetch the mandatory fw.
Before we steal the fb. Something like:

(Untested warning)

https://github.com/rodrigovivi/linux/commit/5589d2883a604d52e89f44620e16d16c7fd278e8


  reply	other threads:[~2026-10-15 13:37 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-10-14 23:04 Nasty console and xe driver interactions Dave Hansen
2026-10-15 13:37 ` Rodrigo Vivi [this message]
2026-10-15 15:30   ` Dave Hansen
2026-10-15 16:10     ` Rodrigo Vivi
2026-10-15 16:41       ` Zack Rusin
2026-10-15 16:41         ` Zack Rusin

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=atDXDlI-EhrA791a@intel.com \
    --to=rodrigo.vivi@intel.com \
    --cc=dave.hansen@intel.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=jani.nikula@linux.intel.com \
    --cc=zack.rusin@broadcom.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: 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.