# ALSA codec drivers Source: [https://docs.qualcomm.com/doc/80-70014-16/topic/alsa_codec_drivers.html](https://docs.qualcomm.com/doc/80-70014-16/topic/alsa_codec_drivers.html) The codec class driver is generic and hardware-independent ALSA complaint driver that configures the codec and WSA power AMP to provide audio capture and playback. ## Device tree configurations The device tree is a data structure and language used to describe hardware components on a System-on-Chip (SoC). It was created by the Open Firmware standards to unify the discovery of hardware devices connected to the SoC. The device tree abstracts hardware discovery from the Linux kernel source code, eliminating the need for hard-coded hardware information. In addition to the entries of the hardware components, device tree entries also contains DAI links for PCM nodes on the SoC. DAI links for PCM nodes are defined in device tree and generally adhere to the following format: wsa-dai-link { link-name = "CODEC_DMA-LPAIF_WSA-RX-0"; cpu { sound-dai = <&q6apmbedai WSA_CODEC_DMA_RX_0>; }; codec { sound-dai = <&left_spkr>, <&right_spkr>, <&swr2 0>, <&lpass_wsa_macro 0>; }; }; Copy to clipboard In this code snippet, the back-end DAI of WSA is defined. `cpu` denotes the entry for CPU. The platform DAI and `codec` node entry is for the codec DAI link. The name signifies a DAI-link stream name and is used by AGM to configure back-ends. **Parent Topic:** [Configure Hardware](https://docs.qualcomm.com/doc/80-70014-16/topic/configure.html) Last Published: Jul 15, 2024 [Previous Topic Audio hardware interfaces](https://docs.qualcomm.com/bundle/publicresource/80-70014-16/topics/audio_hardware_interfaces.md) [Next Topic Customize](https://docs.qualcomm.com/bundle/publicresource/80-70014-16/topics/customize.md)