Audio codecs hardware components


Template:ArticleMainWriter Template:ArticleApprovedVersion

Warning white.png Warning
cs42l51 bindings linked forced to 4.20. Version to be removed on next kernel rebase


1 Article purpose[edit]

The purpose of this article is to:

  • list the audio codec hardware components that might be integrated in the different STM32MPU boards
  • link these components to the corresponding software framework(s)
  • point to the datasheet(s) of these components
  • explain, when necessary, how to configure these components.

2 Software frameworks[edit]

Domain Peripheral Software frameworks Comment
Cortex-A7
secure
(OP-TEE)
Cortex-A7
non-secure
(Linux)
Cortex-M4

(STM32Cube)
Audio Wolfson wm8994 ALSA framework DAC & ADC audio codec
Audio Cirrus cs42l51 ALSA framework DAC & ADC audio codec
Audio Silab sil9022 ALSA framework HDMI transmitter
Audio ST MP34DT01-M ALSA framework Digital microphone

3 Wolfson wm8994[edit]

The WM8994 is a highly integrated ultra-low power hi-fi CODEC rich in multimedia features.

For details and the datasheet please contact the WM8994 codec provider.

3.1 Linux driver[edit]

Bindings: Documentation/devicetree/bindings/sound/wm8994.txt

Sources:

4 Cirrus cs42l51[edit]

The CS42L51 is a highly integrated, 24-bit, low-power stereo CODEC.

For details and the datasheet please contact the CS42L51 codec provider.

4.1 Linux driver[edit]

Bindings: Documentation/devicetree/bindings/sound/cs42l51.txt (v4.20)

Sources: sound/soc/codecs/cs42l51.c

5 Silab sil9022[edit]

The SiI9022A HDMI transmitter supports the HDMI® Specification on a wide range of mobile products.

For details and the datasheet please contact the SiI9022A HDMI transmitter provider.

5.1 Linux driver[edit]

Bindings: Documentation/devicetree/bindings/display/bridge/sii902x.txt

Sources: drivers/gpu/drm/bridge/sii902x.c

6 ST MP34DT01-M[edit]

The MP34DT01-M is an ultra-compact, low-power, omnidirectional, digital MEMS microphone.

Datasheet: https://www.st.com/resource/en/datasheet/mp34dt01-m.pdf

6.1 Linux driver[edit]

Bindings: Documentation/devicetree/bindings/sound/dmic.txt Sources: sound/soc/codecs/dmic.c