Comment 30 for bug 253422

i486 (andreasreinhardt) wrote :

From studying the datasheet of the ALC272 (which is used in Samsung's NC10), the jack must be polled periodically if headphones are connected. Herefore, sending the following verb is required:

(NID) (Verb) (Param)
0x21 0xF09 0

If this method returns a one in the MSB of the 32bit word (1<<31), headphones are connected. The according sequence to deactivate the internal speakers then is:

0x21 0x707 C0 (Enable headphone out pin)
0x21 0x3 B000 (Unmute headphone pin)
0x14 0x4 B080 (Mute internal speakers)

While the sequence to deactivate the headphones (when not attached) would be:

0x14 0x70C 02 (Enable external amplifier power)
0x14 0x3 0xB000 (Unmute speaker pin)
0x21 0x3 0xB080 (Mute headphones)

I have tried to set these with hda-verb, but didn't quite make it as there is no /dev/sdn/hw* device. Hence, I could not try things out. Hope this helps anyway.