git: 89189224adb5 - main - snd_hda: add 32-bit memory quirk for Creative Sound Blaster Audigy FX

From: Gleb Smirnoff <glebius_at_FreeBSD.org>
Date: Fri, 23 Feb 2024 19:33:05 UTC
The branch main has been updated by glebius:

URL: https://cgit.FreeBSD.org/src/commit/?id=89189224adb560af6de2bb2e13a2b1831b89101d

commit 89189224adb560af6de2bb2e13a2b1831b89101d
Author:     Gleb Smirnoff <glebius@FreeBSD.org>
AuthorDate: 2024-02-23 19:30:13 +0000
Commit:     Gleb Smirnoff <glebius@FreeBSD.org>
CommitDate: 2024-02-23 19:30:13 +0000

    snd_hda: add 32-bit memory quirk for Creative Sound Blaster Audigy FX
    
    Despite still being in production the device appeared not able to use
    memory above BUS_SPACE_MAXADDR_32BIT, and if your desktop has a lot of
    memory there is a high chance driver would allocate inaccessible memory.
    
    Submitted by:   wulf
    Reviewed by:    mav
---
 sys/dev/sound/pci/hda/hdac.c | 1 +
 sys/dev/sound/pci/hda/hdac.h | 1 +
 2 files changed, 2 insertions(+)

diff --git a/sys/dev/sound/pci/hda/hdac.c b/sys/dev/sound/pci/hda/hdac.c
index 1f06692ba36e..704bcad3822c 100644
--- a/sys/dev/sound/pci/hda/hdac.c
+++ b/sys/dev/sound/pci/hda/hdac.c
@@ -201,6 +201,7 @@ static const struct {
 	{ HDA_VMWARE,        "VMware",		0, 0 },
 	{ HDA_SIS_966,       "SiS 966/968",	0, 0 },
 	{ HDA_ULI_M5461,     "ULI M5461",	0, 0 },
+	{ HDA_CREATIVE_SB1570,	"Creative SB Audigy FX", 0, HDAC_QUIRK_64BIT },
 	/* Unknown */
 	{ HDA_INTEL_ALL,  "Intel",		0, 0 },
 	{ HDA_NVIDIA_ALL, "NVIDIA",		0, 0 },
diff --git a/sys/dev/sound/pci/hda/hdac.h b/sys/dev/sound/pci/hda/hdac.h
index 31bdc9130d9b..53c101f3119b 100644
--- a/sys/dev/sound/pci/hda/hdac.h
+++ b/sys/dev/sound/pci/hda/hdac.h
@@ -192,6 +192,7 @@
 
 /* Creative */
 #define CREATIVE_VENDORID	0x1102
+#define	HDA_CREATIVE_SB1570	HDA_MODEL_CONSTRUCT(CREATIVE, 0x0012)
 #define HDA_CREATIVE_ALL	HDA_MODEL_CONSTRUCT(CREATIVE, 0xffff)
 
 /* VIA */