• W. Trevor King's avatar
    ALSA: hda/via - Add beep controls to VIA codecs · 4738465c
    W. Trevor King authored
    My codec has a beep-generating node:
    
      $ cat /proc/asound/card1/codec#0
      Codec: VIA VT1802
      ...
      Vendor Id: 0x11068446
      Subsystem Id: 0x15587410
      Revision Id: 0x100000
      ...
      Node 0x22 [Beep Generator Widget] wcaps 0x70040c: Mono Amp-Out
        Amp-Out caps: ofs=0x0a, nsteps=0x12, stepsize=0x05, mute=1
        Amp-Out vals:  [0x0a]
        Power states:  D0 D1 D2 D3
        Power: setting=D0, actual=D0
      ...
    
    But I was missing the:
    
      Control: name=...
    
    entries that I need to manage this widget from alsamixer.  With this
    patch (based on the similar Mono Amp-Out handling in
    patch_conexant.c), I get a new:
    
      input: HDA Digital PCBeep as /devices/pci0000:00/0000:00:1b.0/sound/card1/hdaudioC1D0/input15
    
    entry in dmesg and controls to manage that beep:
    
      $ cat /proc/asound/card1/codec#0 | grep -A5 Beep
      Node 0x22 [Beep Generator Widget] wcaps 0x70040c: Mono Amp-Out
        Control: name="Beep Playback Volume", index=0, device=0
          ControlAmp: chs=1, dir=Out, idx=0, ofs=0
        Control: name="Beep Playback Switch", index=0, device=0
          ControlAmp: chs=1, dir=Out, idx=0, ofs=0
        Amp-Out caps: ofs=0x0a, nsteps=0x12, stepsize=0x05, mute=1
        Amp-Out vals:  [0x12]
        Power states:  D0 D1 D2 D3
        Power: setting=D0, actual=D0
    
    [rebased and modified for the latest tree by tiwai]
    Signed-off-by: default avatarW. Trevor King <wking@tremily.us>
    Signed-off-by: default avatarTakashi Iwai <tiwai@suse.de>
    4738465c
patch_via.c 33.3 KB