[alsa-devel] [PATCH] ALSA: hda/patch_sigmatel: Add AmigaOne X1000 pin configs

Darren Stevens darren at stevens-zone.net
Fri Jan 20 18:58:01 CET 2017


The AmigaOne X1000 has a Sigmatel STAC92HD700 attached to the HD Audio
on an ATI SB600. Add the required settings to enable sound.

Signed-off-by: Darren Stevens <darren at stevens-zone.net>

---

diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 37b70f8..51947a6 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -166,6 +166,7 @@ enum {
    STAC_D965_VERBS,
    STAC_DELL_3ST,
    STAC_DELL_BIOS,
+   STAC_NEMO_DEFAULT,
    STAC_DELL_BIOS_AMIC,
    STAC_DELL_BIOS_SPDIF,
    STAC_927X_DELL_DMIC,
@@ -1360,6 +1361,23 @@ static int stac_create_spdif_mux_ctls(struct hda_codec
*codec)
    {}
 };
 
+static const struct hda_pintbl nemo_pin_configs[] = {
+   { 0x0a, 0x02214020 },
+   { 0x0b, 0x02A19080 },
+   { 0x0c, 0x0181304E },
+   { 0x0d, 0x01014010 },
+   { 0x0e, 0x01A19040 },
+   { 0x0f, 0x01011012 },
+   { 0x10, 0x01016011 },
+   { 0x11, 0x01012014 },
+   { 0x12, 0x103301F0 },
+   { 0x13, 0x00000000 },
+   { 0x14, 0x00000000 },
+   { 0x21, 0x01442170 },
+   { 0x22, 0x00000000 },
+   { 0x23, 0x00000000 },
+   {}
+};
 
 static void stac9200_fixup_panasonic(struct hda_codec *codec,
                     const struct hda_fixup *fix, int action)
@@ -3883,6 +3901,10 @@ static void stac927x_fixup_volknob(struct hda_codec
*codec,
        .type = HDA_FIXUP_PINS,
        .v.pins = d965_5st_no_fp_pin_configs,
    },
+   [STAC_NEMO_DEFAULT] = {
+               .type = HDA_FIXUP_PINS,
+       .v.pins = nemo_pin_configs,
+   },
    [STAC_DELL_3ST] = {
        .type = HDA_FIXUP_PINS,
        .v.pins = dell_3st_pin_configs,
@@ -3939,6 +3961,7 @@ static void stac927x_fixup_volknob(struct hda_codec
*codec,
    { .id = STAC_D965_5ST_NO_FP, .name = "5stack-no-fp" },
    { .id = STAC_DELL_3ST, .name = "dell-3stack" },
    { .id = STAC_DELL_BIOS, .name = "dell-bios" },
+   { .id = STAC_NEMO_DEFAULT, .name = "nemo-default" },    
    { .id = STAC_DELL_BIOS_AMIC, .name = "dell-bios-amic" },
    { .id = STAC_927X_VOLKNOB, .name = "volknob" },
    {}
@@ -3977,6 +4000,8 @@ static void stac927x_fixup_volknob(struct hda_codec
*codec,
               "Intel D965", STAC_D965_5ST),
    SND_PCI_QUIRK_MASK(PCI_VENDOR_ID_INTEL, 0xff00, 0x2500,
               "Intel D965", STAC_D965_5ST),
+   /* Nemo */
+   SND_PCI_QUIRK(0x1888, 0x1000, "AmigaOne X1000", STAC_NEMO_DEFAULT),
    /* volume-knob fixes */
    SND_PCI_QUIRK_VENDOR(0x10cf, "FSC", STAC_927X_VOLKNOB),
    {} /* terminator */
@@ -5036,6 +5061,7 @@ static int patch_stac9872(struct hda_codec *codec)
    HDA_CODEC_ENTRY(0x83847683, "STAC9221D A2", patch_stac922x),
    HDA_CODEC_ENTRY(0x83847618, "STAC9227", patch_stac927x),
    HDA_CODEC_ENTRY(0x83847619, "STAC9227", patch_stac927x),
+   HDA_CODEC_ENTRY(0x83847638, "STAC92HD700", patch_stac927x),
    HDA_CODEC_ENTRY(0x83847616, "STAC9228", patch_stac927x),
    HDA_CODEC_ENTRY(0x83847617, "STAC9228", patch_stac927x),
    HDA_CODEC_ENTRY(0x83847614, "STAC9229", patch_stac927x),



More information about the Alsa-devel mailing list