- Build the latest driver with your pingconfig patch.
Patch, which adds an "intel-imac-20" pinconfig attached.
- Unload the driver module. - Remove /etc/asound.state (or whatever alsactl stores -- the path is depending on distro) - Load the module again; at this state, mixers are muted - Get the first codec dump here once
initial-codec attached.
- Unmute the playbacks as usual. Check playback.
Playback works.
- Turn on only "Capture Switch". Don't adjust "Capture Volume" and "Mux Capture Volume" if they are zero. Test recording once here. Get codec dump again.
Recording doesn't work. Codec diff: Node 0x02 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out Amp-Out caps: N/A - Amp-Out vals: [0x7f 0x7f] + Amp-Out vals: [0xff 0xff] Power: 0x0 Node 0x03 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out Amp-Out caps: N/A - Amp-Out vals: [0x7f 0x7f] + Amp-Out vals: [0xff 0xff] Power: 0x0 Node 0x04 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out Amp-Out caps: N/A - Amp-Out vals: [0x7f 0x7f] + Amp-Out vals: [0xff 0xff] Power: 0x0 Node 0x05 [Audio Output] wcaps 0xd0c05: Stereo Amp-Out Amp-Out caps: N/A - Amp-Out vals: [0x7f 0x7f] + Amp-Out vals: [0xff 0xff] Power: 0x0
- If not working, try resetting the input source. Test recording. Get codec dump.
Reseting the input source doesn't result a difference in the codec info and recording still doesn't work.
- Raise "Capture Volume". Test recording, get codec dump.
After this recording works! Woho! :-) Node 0x17 [Audio Selector] wcaps 0x300903: Stereo Amp-In Amp-In caps: N/A - Amp-In vals: [0x0e 0x0e] + Amp-In vals: [0x00 0x00] Connection: 1 0x12
- Raise "Mux Capture Volume". Test recording, get codec dump.
For the sake of the test I have also umuted and increased Mux, which results the following diff and a non-working recording Node 0x12 [Audio Selector] wcaps 0x30010d: Stereo Amp-Out Amp-Out caps: ofs=0x00, nsteps=0x04, stepsize=0x27, mute=0 - Amp-Out vals: [0x04 0x04] + Amp-Out vals: [0x00 0x00] Connection: 7 0x0e 0x15 0x0f 0x0b* 0x0c 0x0d 0x0a Regards. -- Ivan N. Zlatev Web: http://www.i-nZ.net "It's all some kind of whacked out conspiracy."
Attachment:
initial-codec
Description: Binary data
diff -r be73500bd42a pci/hda/patch_sigmatel.c --- a/pci/hda/patch_sigmatel.c Sat May 19 17:21:04 2007 +0200 +++ b/pci/hda/patch_sigmatel.c Fri May 18 20:48:01 2007 +0100 @@ -64,6 +64,7 @@ enum { STAC_MACBOOK_PRO_V1, STAC_MACBOOK_PRO_V2, STAC_IMAC_INTEL, + STAC_IMAC_INTEL_20, STAC_922X_MODELS }; @@ -567,6 +568,12 @@ static unsigned int imac_intel_pin_confi 0x400000fc, 0x400000fb, }; +static unsigned int imac_intel_20_pin_configs[10] = { + 0x0121E21F, 0x90A7012E, 0x9017E110, 0x400000FD, + 0x400000FE, 0x0181E020, 0x1145E230, 0x11C5E240, + 0x400000FC, 0x400000FB, +}; + static unsigned int *stac922x_brd_tbl[STAC_922X_MODELS] = { [STAC_D945_REF] = ref922x_pin_configs, [STAC_D945GTP3] = d945gtp3_pin_configs, @@ -576,6 +583,7 @@ static unsigned int *stac922x_brd_tbl[ST [STAC_MACBOOK_PRO_V1] = macbook_pro_v1_pin_configs, [STAC_MACBOOK_PRO_V2] = macbook_pro_v2_pin_configs, [STAC_IMAC_INTEL] = imac_intel_pin_configs, + [STAC_IMAC_INTEL_20] = imac_intel_20_pin_configs, }; static const char *stac922x_models[STAC_922X_MODELS] = { @@ -587,6 +595,7 @@ static const char *stac922x_models[STAC_ [STAC_MACBOOK_PRO_V1] = "macbook-pro-v1", [STAC_MACBOOK_PRO_V2] = "macbook-pro", [STAC_IMAC_INTEL] = "imac-intel", + [STAC_IMAC_INTEL_20] = "imac-intel-20", }; static struct snd_pci_quirk stac922x_cfg_tbl[] = { @@ -2022,6 +2031,9 @@ static int patch_stac922x(struct hda_cod case 0x106b0700: /* Intel-based iMac */ spec->board_config = STAC_IMAC_INTEL; break; + case 0x106b1700: /* Intel iMac 20 */ + spec->board_config = STAC_IMAC_INTEL_20; + break; } }
_______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel