ALSA driver for external audio codec USB modem on SoC

I have a USB modem that exports a PCM interface that is fed to an I2C audio codec.

connection diagram

The codec is supported as the ALSA SoC codec and I am developing a driver to control audio levels through ALSA mixers.

I think I have two options:

  • or create a dummy SoC soundcard with a codec like an aux ( snd_soc_aux_dev

    ) device . The codec configuration is fixed in the init () function and ALSA does not control the PCM interface, only the layers. Thus, I do not use all the functions already implemented in the codec driver to set the clock, speeds, formats.
  • or create a modem sound card that exports DAI with the correct speed and format settings. This way I can use the codec driver implementation for all functions.

Where should I put such a driver? As a USB driver extension or as a SoC?


source to share

All Articles