[PATCH] ALSA: hda: intel: Introduce msi64 parameter to override 64-bit MSI restriction
Arnd Bergmann
arnd at arndb.de
Mon Dec 22 08:18:26 PST 2025
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 <gaohan at iscas.ac.cn>
> ---
> +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
More information about the linux-riscv
mailing list