Re: [PATCH] ALSA: hda: intel: Introduce msi64 parameter to override 64-bit MSI restriction

"Arnd Bergmann" <[email protected]>
Newsgroups dev.linux.lists.sophgo,org.infradead.lists.linux-riscv,org.kernel.vger.linux-kernel,org.kernel.vger.linux-sound
Message-ID <[email protected]>
On Sat, Dec 20, 2025, at 18:05, Han Gao wrote:
> Sophgo SG2042 MSI driver does not support 32-bit MSI.
> Introduce an 'msi64' kernel parameter to bypass NO_MSI64 for ATI/HDMI.
>
> Signed-off-by: Han Gao <[email protected]>
> ---
> +module_param(msi64, bool, 0444);
> +MODULE_PARM_DESC(msi64, "Force use msi 64bit.");

This does not seem like an appropriate use for a module
parameter. There are very few things we want to use those
for in new code, and working around hardware bugs is
clearly not one.

> @@ -1903,7 +1906,7 @@ static int azx_first_init(struct azx *chip)
>  		chip->gts_present = true;
>  #endif
> 
> -	if (chip->msi && chip->driver_caps & AZX_DCAPS_NO_MSI64) {
> +	if (chip->msi && chip->driver_caps & AZX_DCAPS_NO_MSI64 && !msi64) {
>  		dev_dbg(card->dev, "Disabling 64bit MSI\n");
>  		pci->no_64bit_msi = true;
>  	}

The behavior is also wrong: if the system can use neither 32-bit
MSI nor 64-bit MSI, this would accidentally try to use the
64-bit variant and then cause runtime issues.

I would expect the only possible fallback to be using legacy IntX
interrupts, or returning a probe failure if that doesn't work
either.

      Arnd
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.