[alsa-devel] Macbook Air 2,1 - no mic nor main speakers

Takashi Iwai tiwai at suse.de
Mon Feb 22 08:55:15 CET 2010


At Sun, 21 Feb 2010 22:30:58 -0800,
Reimundo Heluani wrote:
> 
> On Sat, 2010-02-06 at 10:27 -0800, Reimundo Heluani wrote:
> > Hello list, this came up a year ago and Takashi's answer was "a broken
> > bios". I was hoping someone here could point me to documentation to read
> > in order to diagnose the problem if indeed is a broken bios. I don't
> > want to start randombly reading the driver's code.
> > 
> > Macbook Air 2,1
> > 2.6.32-gentoo-r3 SMP x86_64
> > Alsa Driver 1.0.21 libs 1.0.22
> > nVidia Corporation MCP79 High Definition Audio (rev b1)
> > HDA NVidia at 0x93380000 irq 19
> > 00:08.0 0403: 10de:0ac0 (rev b1)  Subsystem: 10de:cb79
> > Codec: Realtek ALC889A
> > 
> > Booting with snd_hda_intel.model=mbp3 get sound on headphones, but not on mainspeakers. The mic never worked.
> > 
> 
> Hello again, I found out that puting the pin in 0x18 as a PIN_OUT I get
> sound in the internal speaker. Currently I can change patch_realtek.c to
> load the driver using an "mba21" model and I get sound on the main
> speaker. One of the (many) problems I have is that I need to use
> something like
> 
> {0x18, AC_VERB_SET_PIN_WIDGET_CONTROL, (PIN_OUT | AC_PINCTL_VREF_50) } 
> 
> otherwise it goes into HiZ and I get no audio. Looking at that
> patch_realtek.c I don't see anything similar. Anyway, I don't have a
> clue about ALSA, I just started reading the HDA specification and looked
> over patch_realtek.c and came up with the small change below to have a
> working main speaker. I'd appreciate if you had any suggestion for the
> mic or to point me towards the right documentation.

The change looks almost good -- except for one place.

>   
> + /* Macbook Air don't know how this works */
> + static void alc885_mba21_setup (struct hda_codec *codec)
> + {
> + 	struct alc_spec *spec = codec->spec;
> + 
> + 	spec->autocfg.speaker_pins[0] = 0x18;

Does this device have no dedicated headphone output pin?
Usually it's either 0x14 or 0x15.

Also, please make a patch in a unified diff format.

If the patch is ready for merge, please post it (and add me to Cc)
with a proper changelog and your sign-off.


thanks,

Takashi


More information about the Alsa-devel mailing list