SPDIFRX Linux driver

Stable: 12.07.2023 - 10:24 / Revision: 12.07.2023 - 10:23

I am here to prevent the first-page-empty bug!


Template:ArticleMainWriter Template:ArticleApprovedVersion


1 Article purpose

This article introduces the SPDIFRX Linux® driver for the SPDIFRX internal peripheral.

2 Short Description

The SPDIFRX[1]Linux driver is an ASoC CPU DAI driver implemented in the Linux ALSA framework.

3 Configuration

3.1 Kernel Configuration

Activate the SPDIFRX[1]Linux driver in the kernel configuration using the Linux Menuconfig tool: Menuconfig or how to configure kernel

[*] Device Drivers
    [*] Sound card support
        [*] Advanced Linux Sound Architecture
            [*] ALSA for SoC audio support
                STMicroelectronics STM32 SOC audio support
	             [*] STM32 S/PDIF receiver (SPDIFRX) support

3.2 Device tree

Refer to the SPDIFRX device tree configuration article when configuring the SPDIFRX Linux kernel driver.

4 How to use

The SAI driver is accessed from userland through an ALSA device. Refer to ALSA overview to see how to list and use ALSA devices.

5 How to debug

The debugfs and procfs file systems can be checked to get information about the SPDFIRX driver and the resources it uses. A none exhaustive list of these file system entries is provided below. Refer to ALSA overview to get more details about debugging tools.

  • debugfs entries:
$ cat /sys/kernel/debug/regmap/xxx.audio-controller/registers
  • procfs entries:
$ cat /proc/interrupts

6 Source code location

sound/soc/stm/stm32_spdifrx.c : implements the SPDIFRX driver.

7 References

IMPORTANT NOTICE – READ CAREFULLY
STMicroelectronics NV and its subsidiaries ("ST") reserve the right to make changes, corrections, enhancements, modifications, and improvements to ST products and/or to this document at any time without notice. Purchasers should obtain the latest relevant information on ST products before placing orders. ST products are sold pursuant to ST’s terms and conditions of sale in place at the time of order acknowledgment.

Purchasers are solely responsible for the choice, selection, and use of ST products and ST assumes no liability for application assistance or the design of purchasers’ products.

No license, express or implied, to any intellectual property right is granted by ST herein.

Resale of ST products with provisions different from the information set forth herein shall void any warranty granted by ST for such product.

ST and the ST logo are trademarks of ST. For additional information about ST trademarks, refer to www.st.com/trademarks. All other product or service names are the property of their respective owners.

Information in this document supersedes and replaces information previously supplied in any prior versions of this document.