Hey all,

I'm submitting a patch for getting the headphone jack (so it mutes the 
internal speakers when you plug in headphones) and microphone to both work at 
the same time.  Here is the current scenario (ripped from my blog: 
http://www.jasonparekh.com):

"The current (2006/11/12) state of ALSA for the MacBook (and MBP, ..?) is 
pretty strange: If you're using a vanilla kernel, chances are your headphone 
sensing works (when you plug in headphones, your internal laptop speakers 
mute and you hear audio from your headphones). If you're using a 
mactel-patched kernel (or the generic Ubuntu kernel, maybe other distros that 
prepatch with mactel), chances are your microphone has the ability to work 
(you have to toggle between Line-in and Mic on the ALSA mixer for it to 
work), but your headphone sensing doesn’t (when you plug in headphones, you 
hear audio from both the internal speakers and the headphones).

After screwing around with the ALSA driver source code, the Windows driver 
files, and the Microsoft and Intel spec sheets, I've found a solution that 
allows for both the microphone and the headphone sensing to work!"

Summary:  After looking through the spec sheets, I'm not sure why the solution 
works, but I assure you it does work.  We disable the internal speaker NID 
(0x0c) and move its pin config to the 0x0d NID.  This fix allows 1) regular 
internal speakers to work normally, 2) internal speakers to mute when 
headphones are plugged in (and of course the audio being routed to the 
headphones), 3) the microphone to work, 4) the line-in to work.

There is still the problem where you have to toggle between Line-in and Mic 
once each boot for the microphone to work, I'll look at this more in detail 
when I have free time.  A quick solution to that (also ripped from the blog):

amixer sset 'Input Source' 'Line'
amixer sset 'Input Source' 'Mic'

jason



Patch:

Index: kernel/mactel-patches-2.6.17/sigmatel_audio.patch
===================================================================
--- kernel/mactel-patches-2.6.17/sigmatel_audio.patch   (revision 57)
+++ kernel/mactel-patches-2.6.17/sigmatel_audio.patch   (working copy)
@@ -22,7 +22,7 @@
  };

 +static unsigned int apple_pin_configs[10] = {
-+      0x0121E230, 0x90A70120, 0x9017E110, 0x400000FE,
++      0x0121E230, 0x90A70120, 0x400000FE, 0x9017E110,
 +      0x400000FD, 0x0181E021, 0x1145E040, 0x400000FA,
 +      0x400000FC, 0x400000FB,
 +};
Index: kernel/mactel-patches-2.6.18/sigmatel_audio.patch
===================================================================
--- kernel/mactel-patches-2.6.18/sigmatel_audio.patch   (revision 57)
+++ kernel/mactel-patches-2.6.18/sigmatel_audio.patch   (working copy)
@@ -15,7 +15,7 @@
  };

 +static unsigned int apple_pin_configs[10] = {
-+      0x0121E230, 0x90A70120, 0x9017E110, 0x400000FE,
++      0x0121E230, 0x90A70120, 0x400000FE, 0x9017E110,
 +      0x400000FD, 0x0181E021, 0x1145E040, 0x400000FA,
 +      0x400000FC, 0x400000FB,
 +};

-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
Mactel-linux-devel mailing list
Mactel-linux-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mactel-linux-devel

Reply via email to