git: a15b8e32942b - stable/14 - snd_hda: add 32-bit memory quirk for Creative Sound Blaster Audigy FX

From: Gleb Smirnoff <glebius_at_FreeBSD.org>
Date: Mon, 11 Mar 2024 16:18:51 UTC
The branch stable/14 has been updated by glebius:

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

commit a15b8e32942b2cbf70c7fc71e9c82d2b292e82c3
Author:     Gleb Smirnoff <glebius@FreeBSD.org>
AuthorDate: 2024-02-23 19:30:13 +0000
Commit:     Gleb Smirnoff <glebius@FreeBSD.org>
CommitDate: 2024-03-11 16:18:42 +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
    
    (cherry picked from commit 89189224adb560af6de2bb2e13a2b1831b89101d)
---
 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 */