Ку. Имеется Asus 1011PX, вот его alsa-info.
При подключении чего угодно в разьём для наушников/микрофона динамик отключается, а в этот разъём подаётся звук. Хотелось бы иметь возможность руками переключать это на микрофон (ещё лучше - линейный вход) и обратно. В alsamixer нашёлся только переключатель Auto Mute, который позволяет не вырубать динамик при подключении наушников. Среди доступных для Capture устройств есть «Internal Mic» (работает), «Mic» и «Internal Mic 1», записывающие тихий шум.
В /proc/asound/card0/codec#0 есть 2 интересных Node:
Node 0x18 [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Control: name="Mic Boost Volume", index=0, device=0
ControlAmp: chs=3, dir=In, idx=0, ofs=0
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x80 0x80]
Pincap 0x00001734: IN OUT Detect
Vref caps: HIZ 50 GRD 80
Pin Default 0x01a19c20: [Jack] Mic at Ext Rear
Conn = 1/8, Color = Pink
DefAssociation = 0x2, Sequence = 0x0
Pin-ctls: 0x24: IN VREF_80
Unsolicited: tag=00, enabled=0
Connection: 1
0x0d
Node 0x1a [Pin Complex] wcaps 0x40018f: Stereo Amp-In Amp-Out
Control: name="Headphone Playback Switch", index=0, device=0
ControlAmp: chs=3, dir=Out, idx=0, ofs=0
Amp-In caps: ofs=0x00, nsteps=0x03, stepsize=0x2f, mute=0
Amp-In vals: [0x00 0x00]
Amp-Out caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
Amp-Out vals: [0x00 0x00]
Pincap 0x0000003c: IN OUT HP Detect
Pin Default 0x03211c1f: [Jack] HP Out at Ext Left
Conn = 1/8, Color = Black
DefAssociation = 0x1, Sequence = 0xf
Pin-ctls: 0xc0: OUT HP
Unsolicited: tag=04, enabled=1
Connection: 2
0x0c* 0x0d
Как получать числа вроде 0x03211c1f самостоятельно, я не понял. Нагуглить удалось программы hda-analyzer и hda-jack-restack. Перебор флажков и прочих контролов в первом приводил разве что к отключению вывода на динамик/наушники или микрофона; попытки настроить что-то при помощи второго - либо к ошибкам «permission denied», когда что-то занимало звуковую карту, либо к исчезновениям контролов в alsamixer (например, удалось полностью отключить взаимодействие с этим универсальным разъёмом), либо к полному исчезновению PLAYBACK и RECORD-устройств. Кстати, вторая программа предлагала перенастроить чёрный разъём либо на другие выводящие звук варианты, либо на internal mic, больше вариантов не было.
Собственно, ищу людей, которым удалось воткнуть в такой универсальный разъём микрофон или гитару и заставить их работать.
UPD: запустил livecd Fedora 18 с ядром 3.6.10, там в микшере появилась настройка Input Source: Internal Mic / Headphone Mic и работает нормально. Завтра поставлю ядро из Liquorix, наверняка заработает.
UPD2: новое ядро, действительно, решило проблему. Надеюсь, не добавило новых.