[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z6pc5SYaMhOfXeDz@wunner.de>
Date: Mon, 10 Feb 2025 21:09:09 +0100
From: Lukas Wunner <lukas@...ner.de>
To: Aditya Garg <gargaditya08@...e.com>
Cc: Lleyton Gray <lleyton@...alabs.com>, Ard Biesheuvel <ardb@...nel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-efi@...r.kernel.org" <linux-efi@...r.kernel.org>
Subject: Re: [PATCH] x86/efistub: Add options for forcing Apple set_os
protocol
On Wed, Jan 01, 2025 at 11:39:13AM +0000, Aditya Garg wrote:
> We have had issues with other people unable to use their eGPU if their
> Mac doesn't have the apple set os quirk. We probably could do dual VGA
> checks suggested by Lukas, but will it work with GPU hotplug?
About hotplug: There is a tiny time window when the EFI stub runs
during which an eGPU may be hotplugged and incorrectly not be
detected. I.e. the quirk is not applied. I don't think this can
be fixed.
If an eGPU is hotplugged while EFI boot services are still running,
Apple's EFI Thunderbolt driver will set up a tunnel to the device
and it will then be visible to the kernel's efi stub. E.g. if you
hold down the Option key during boot and attach an eGPU, then
select the operating system to boot, the eGPU should correctly be
seen by the efi stub and the quirk is applied.
However hotplugging an eGPU at exactly the moment when the efi stub
runs results in a race between the efi stub doing all the initialization
and exiting boot services on the one hand, and the EFI Thunderbolt
driver bringing up the eGPU on the other hand.
But IMO this is "good enough".
Thanks,
Lukas
Powered by blists - more mailing lists