ALSA: hda: i915: Allow override of gpu binding.
authorMaarten Lankhorst <maarten.lankhorst@linux.intel.com>
Mon, 9 Oct 2023 11:54:30 +0000 (13:54 +0200)
committerTakashi Iwai <tiwai@suse.de>
Thu, 19 Oct 2023 12:55:07 +0000 (14:55 +0200)
commit2e8c90386db48e425997ca644fa40876b2058b30
tree3b2e2b17c629b028ea348b0cc87f07aada48c948
parentad6413bc48f2a86847614b48a7a575f75d2521a5
ALSA: hda: i915: Allow override of gpu binding.

Selecting CONFIG_DRM selects CONFIG_VIDEO_NOMODESET, which exports
video_firmware_drivers_only(). This can be used as a first
approximation on whether i915 will be available. It's safe to use as
this is only built when CONFIG_SND_HDA_I915 is selected by CONFIG_I915.

It's not completely fool proof, as you can boot with "nomodeset
i915.modeset=1" to make i915 load regardless, or use
"i915.force_probe=!*" to never load i915, but the common case of
booting with nomodeset to disable all GPU drivers this will work as
intended.

Because of this, we add an extra module parameter,
snd_hda_core.gpu_bind that can be used to signal users intent.
-1 follows nomodeset, 0 disables binding, 1 forces wait/-EPROBE_DEFER
on binding.

Signed-off-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Reviewed-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Link: https://lore.kernel.org/r/20231009115437.99976-7-maarten.lankhorst@linux.intel.com
Signed-off-by: Takashi Iwai <tiwai@suse.de>
sound/hda/hdac_i915.c