2011年11月10日 星期四

Detect HP jack sense

  1. check /proc/asound/card0/codec#0 to know the Codec is Realtek ALC269.
  2. /sound/pci/hda/patch_realtek.c 中可以知道realtek的 Vender ID為0x10ec
    (所以ALC 269 ID為 0x10ec0269).
  3. /sound/pci/hda/hda_codec.h 中可以查到定義datasheet中的Verb ID,如圖一.
  4. present = snd_hda_codec_read(codec, nid, 0, AC_VERB_GET_PIN_SENSE, 0)
    spec->jack_present = (present & AC_PINSENSE_PRESENCE) != 0;
    
  5. spec->jack_present export出去,基本上就可以detect了 =.=(偷懶又只會這一千零一招)
圖一、Realtek ALC269 Datasheet Rev1.4


沒有留言:

張貼留言