Skip to contentSkip to conversation

hda: Correct SPDIF out default config

PATCH In review Matthew Ranostay 2 participants 2 messages Apr 11, 2008 – Apr 14, 2008

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 hda: Correct SPDIF out default config

Several laptops have have the SPDIF out defined as 'Digital other out' when it should be 'SPDIF out' in the default config.

---

pci/hda/patch_sigmatel.c +7 -0
diff -r 0dd2b6cb1506 pci/hda/patch_sigmatel.c
@@ -3778,6 +3778,13 @@ static int patch_stac927x(struct hda_cod
 		spec->mixer = stac927x_mixer;
 		break;
 	case STAC_DELL_BIOS:
+		switch (codec->subsystem_id) {
+		case 0x10280209:
+		case 0x1028022e:
+			/* correct the device field to SPDIF out */
+			stac92xx_set_config_reg(codec, 0x21, 0x01442070);
+			break;
+		};
 		/* configure the analog microphone on some laptops */
 		stac92xx_set_config_reg(codec, 0x0c, 0x90a79130);
 		/* correct the front output jack as a hp out */
#1 lore raw

At Fri, 11 Apr 2008 16:16:08 -0400,

Quoted 5 lines · Matthew Ranostay

Several laptops have have the SPDIF out defined as 'Digital other out' when it should be 'SPDIF out' in the default config.

Hmm, we really need to hurry to add the support of dynamic configuration... Hopefully merged before 2.6.27...

Anyway, applied this patch to ALSA tree now. Thanks.

Takashi

Quoted 19 lines

---
diff -r 0dd2b6cb1506 pci/hda/patch_sigmatel.c

pci/hda/patch_sigmatel.c +7 -0
@@ -3778,6 +3778,13 @@ static int patch_stac927x(struct hda_cod
 		spec->mixer = stac927x_mixer;
 		break;
 	case STAC_DELL_BIOS:
+		switch (codec->subsystem_id) {
+		case 0x10280209:
+		case 0x1028022e:
+			/* correct the device field to SPDIF out */
+			stac92xx_set_config_reg(codec, 0x21, 0x01442070);
+			break;
+		};
 		/* configure the analog microphone on some laptops */
 		stac92xx_set_config_reg(codec, 0x0c, 0x90a79130);
 		/* correct the front output jack as a hp out */