aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSylvain FORET <sylvain.foret@anu.edu.au>2007-04-27 08:22:36 -0400
committerJaroslav Kysela <perex@suse.cz>2007-05-11 10:56:12 -0400
commitf16928fb53111bc23516372df7f6fed86bdfa661 (patch)
tree949715a74d22e4d1eb1a5cec04705dfcfb75059a
parente6db1119318abdc445d541b560744bd6551b1b3d (diff)
[ALSA] snd_hda_intel: fix for intel imac
Add handling of Intel-iMac-specific pinconfig of the sound card. Intel-iMac now handled as a separated subsystem. Signed-off-by: Sylvain FORET <sylvain.foret@anu.edu.au> Signed-off-by: Takashi Iwai <tiwai@suse.de> Signed-off-by: Jaroslav Kysela <perex@suse.cz>
-rw-r--r--sound/pci/hda/patch_sigmatel.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_sigmatel.c b/sound/pci/hda/patch_sigmatel.c
index 5e6d02cf6726..ab6d42207814 100644
--- a/sound/pci/hda/patch_sigmatel.c
+++ b/sound/pci/hda/patch_sigmatel.c
@@ -62,6 +62,7 @@ enum {
62 STAC_MACBOOK, 62 STAC_MACBOOK,
63 STAC_MACBOOK_PRO_V1, 63 STAC_MACBOOK_PRO_V1,
64 STAC_MACBOOK_PRO_V2, 64 STAC_MACBOOK_PRO_V2,
65 STAC_IMAC_INTEL,
65 STAC_922X_MODELS 66 STAC_922X_MODELS
66}; 67};
67 68
@@ -536,6 +537,12 @@ static unsigned int macbook_pro_v2_pin_configs[10] = {
536 0x400000fc, 0x400000fb, 537 0x400000fc, 0x400000fb,
537}; 538};
538 539
540static unsigned int imac_intel_pin_configs[10] = {
541 0x0121e230, 0x90a70120, 0x9017e110, 0x400000fe,
542 0x400000fd, 0x0181e021, 0x1145e040, 0x400000fa,
543 0x400000fc, 0x400000fb,
544};
545
539static unsigned int *stac922x_brd_tbl[STAC_922X_MODELS] = { 546static unsigned int *stac922x_brd_tbl[STAC_922X_MODELS] = {
540 [STAC_D945_REF] = ref922x_pin_configs, 547 [STAC_D945_REF] = ref922x_pin_configs,
541 [STAC_D945GTP3] = d945gtp3_pin_configs, 548 [STAC_D945GTP3] = d945gtp3_pin_configs,
@@ -544,6 +551,7 @@ static unsigned int *stac922x_brd_tbl[STAC_922X_MODELS] = {
544 [STAC_MACBOOK] = macbook_pro_v1_pin_configs, 551 [STAC_MACBOOK] = macbook_pro_v1_pin_configs,
545 [STAC_MACBOOK_PRO_V1] = macbook_pro_v1_pin_configs, 552 [STAC_MACBOOK_PRO_V1] = macbook_pro_v1_pin_configs,
546 [STAC_MACBOOK_PRO_V2] = macbook_pro_v2_pin_configs, 553 [STAC_MACBOOK_PRO_V2] = macbook_pro_v2_pin_configs,
554 [STAC_IMAC_INTEL] = imac_intel_pin_configs,
547}; 555};
548 556
549static const char *stac922x_models[STAC_922X_MODELS] = { 557static const char *stac922x_models[STAC_922X_MODELS] = {
@@ -554,6 +562,7 @@ static const char *stac922x_models[STAC_922X_MODELS] = {
554 [STAC_MACBOOK] = "macbook", 562 [STAC_MACBOOK] = "macbook",
555 [STAC_MACBOOK_PRO_V1] = "macbook-pro-v1", 563 [STAC_MACBOOK_PRO_V1] = "macbook-pro-v1",
556 [STAC_MACBOOK_PRO_V2] = "macbook-pro", 564 [STAC_MACBOOK_PRO_V2] = "macbook-pro",
565 [STAC_IMAC_INTEL] = "imac-intel",
557}; 566};
558 567
559static struct snd_pci_quirk stac922x_cfg_tbl[] = { 568static struct snd_pci_quirk stac922x_cfg_tbl[] = {
@@ -1920,6 +1929,9 @@ static int patch_stac922x(struct hda_codec *codec)
1920 case 0x106b1e00: /* MacBook Pro second generation */ 1929 case 0x106b1e00: /* MacBook Pro second generation */
1921 spec->board_config = STAC_MACBOOK_PRO_V2; 1930 spec->board_config = STAC_MACBOOK_PRO_V2;
1922 break; 1931 break;
1932 case 0x106b0700: /* Intel-based iMac */
1933 spec->board_config = STAC_IMAC_INTEL;
1934 break;
1923 } 1935 }
1924 } 1936 }
1925 1937