• T
    ALSA: hda - Add SPDIF mux control to AD codec auto-parser · 272f3ea3
    Takashi Iwai 提交于
    AD codecs have strange implementations for choosing the SPDIF-output
    mux source: the digital audio out widget may take the sources from
    multiple connections, where 0x01 indicates it's a PCM while others
    point ADCs.  It's obviously invalid in the HD-audio spec POV, but it's
    somehow convincing, too.  And, to make things more complex, AD1988A
    and AD1882 have deeper connection routes that aren't expressed
    correctly.
    
    In this patch, the SPDIF mux control is implemented in two ways:
    - For easier one like AD1981, AD1983, AD1884 and AD1984, where the
      SPDIF audio out widget takes just two or three sources, we can
      simply implement via the normal input_mux and connection verb
      calls.
    
    - For the complex routes like AD1988A (but not AD1988B) or AD1882, we
      prepare "faked" paths represented statically, and switch the paths
      using these static ones, instead of parsing the routes from the
      widget tree.
    Signed-off-by: NTakashi Iwai <tiwai@suse.de>
    272f3ea3
patch_analog.c 154.5 KB