i.MX8M Plus - SPDIF Protocol Implementation Example

取消
显示结果 
显示  仅  | 搜索替代 
您的意思是: 

i.MX8M Plus - SPDIF Protocol Implementation Example

112 次查看
ramkrish
Contributor I

Hi Team,

Could someone pls suggest how to implement and validate SPDIF Protocol in i.MX8M plus?

0 项奖励
回复
3 回复数

97 次查看
yipingwang
NXP TechSupport
NXP TechSupport

Use the existing Linux ALSA Audio XCVR / S/PDIF driver on i.MX8M Plus; you normally do not implement the S/PDIF protocol from scratch. The i.MX8M Plus Audio XCVR supports eARC, ARC, and S/PDIF modes, and the Linux S/PDIF support exposes one playback device for Tx and one capture device for Rx through ALSA. 

Suggested implementation path:

Enable the kernel driver Enable:

CONFIG_SND_IMX_SPDIF

Menu path:

Copy

Device Drivers

  -> Sound card support

    -> Advanced Linux Sound Architecture

      -> ALSA for SoC audio support

        -> SoC Audio for Freescale i.MX CPUs

          -> SoC Audio support for i.MX boards with S/PDIF

The documented DT bindings are under Documentation/devicetree/bindings/sound/fsl,spdif.txt and Documentation/devicetree/bindings/sound/imx-audio-spdfif.txt . 

  • Configure the device tree For i.MX8M Plus, use the xcvr audio block and enable the sound card / DAI link. A representative configuration is:

sound-xcvr {

    compatible = "fsl,imx-audio-card";

    model = "imx-audio-xcvr";

    pri-dai-link {

        link-name = "XCVR PCM";

        cpu {

            sound-dai = <&xcvr>;

        };

    };

};

&xcvr {

    #sound-dai-cells = <0>;

    pinctrl-names = "default";

    pinctrl-0 = <&pinctrl_xcvr>;

    status = "okay";

};

For Tx pin muxing, one documented example uses MX8MP_IOMUXC_SPDIF_TX__AUDIOMIX_SPDIF1_OUT . 

  • Check board routing / jumpers If using the NXP audio board, set the physical routing for the intended S/PDIF path. For i.MX8M Plus, J1500=1-2 routes the coaxial connector to i.MX8M Plus, and J1500=4-5 routes the optical connector to i.MX8M Plus.  If routing through CPLD / HDMI card, J2511=1-3 is documented as “i.MX 8M Plus to CPLD to HDMI card.” 
  • Use ALSA / IEC958 correctly The S/PDIF Tx driver supports 32, 44.1, and 48 kHz sample rates, with S16_LE and S24_LE formats; for 24-bit output, the file must use 32 bits per channel frame with only the 24 LSBs valid.  If the path expects IEC958 subframes rather than raw PCM, do the PCM-to-IEC958 conversion in user space, for example using an ALSA PCM plugin. 

Validation steps:

aplay -l

arecord -l

Use these to identify the S/PDIF playback / capture card and device IDs. The documentation shows the S/PDIF device appearing as an ALSA card such as imxspdif [imx-spdif], device 0: S/PDIF PCM . 

Tx validation:

aplay -D hw:<card_id>,<pcm_id> audio48k24S.wav

The reference validation method uses an external optical S/PDIF receiver, such as an M-Audio Transit USB sound card with WaveLab, then records the stream externally and plays it back to check correctness. 

Rx validation:

arecord -D hw:<card_id>,<pcm_id> -c 2 -d 20 -r 48000 -f S24_LE record.wav

The sample rate passed to arecord must match the incoming S/PDIF stream sample rate.  For Rx, the application flow is to open the S/PDIF Rx PCM device, wait for the internal DPLL to lock to the input bit stream, get the input sample rate, set channel / format / rate parameters, then prepare and trigger capture. 

For protocol-level checks, use:

iecset -c <card_id>

iecset is the standard utility documented for setting or dumping IEC958 status bits, and the driver also exposes channel-status handling through the ALSA control interface. 

For i.MX8M Plus EVK-style validation, NXP also documents loopback-style Linux testing using the imxaudioxcvr card, for example recording from imxaudioxcvr and playing to wm8960audio :

arecord -Dsysdefault:CARD=imxaudioxcvr -c2 -r48000 -fS32_LE -twav | \

aplay -Dsysdefault:CARD=wm8960audio

In short: enable the i.MX S/PDIF / XCVR ALSA driver, configure the xcvr device tree and board routing, then validate Tx/Rx with aplay , arecord , iecset , and an external optical/coax S/PDIF source or sink.

0 项奖励
回复

73 次查看
ramkrish
Contributor I
Hi Yipingwang,

Could you please guide me with any reference schematics to implement SPDIF in Simplest way.
0 项奖励
回复

65 次查看
yipingwang
NXP TechSupport
NXP TechSupport

For the simplest i.MX 8M Plus S/PDIF implementation, use the i.MX Audio Board / MCIMX8M-AUD as the closest NXP reference hardware, not the base i.MX 8M Plus EVK alone. The audio board is documented as supporting i.MX 8M Plus and providing S/PDIF I/O with RCA and TOSLINK connectors, with TOSLINK support up to 192 kHz.

Recommended simple approach:

  • Use optical S/PDIF first if possible
    • Easiest hardware path: i.MX8MP SPDIF_OUT → optical TOSLINK transmitter module.
    • For receive: optical TOSLINK receiver module → i.MX8MP SPDIF_IN .
    • This avoids coaxial 75 Ω line-drive, transformer/coupling, and grounding concerns.
  • Use the i.MX 8M Plus S/PDIF pins through IOMUX
    • The i.MX 8M Plus audio subsystem includes SPDIF input and output .
    • The reference manual shows IOMUX options for AUDIOMIX_SPDIF1_OUT and AUDIOMIX_SPDIF1_IN on selectable pads.
    • In Linux, the corresponding IOMUX definitions include MX8MP_IOMUXC_SPDIF_TX__AUDIOMIX_SPDIF_OUT and MX8MP_IOMUXC_SPDIF_RX__AUDIOMIX_SPDIF_IN .
  • If you need coaxial RCA
    • Do not treat the SoC pin like a direct RCA line driver.
    • Add the proper 75 Ω S/PDIF coax output network / coupling per the selected transmitter/interface circuit.
    • Optical is usually the simpler and safer first implementation.
  • Reference material to look at
    • MCIMX8M-AUD / i.MX Audio Board : best NXP reference for S/PDIF I/O with RCA and TOSLINK on the i.MX 8M family.
    • i.MX 8M Plus Reference Manual : pinmux / IOMUX setup for AUDIOMIX_SPDIF1_IN and AUDIOMIX_SPDIF1_OUT .
    • i.MX 8M Plus datasheet : S/PDIF timing parameters are documented, including clock high/low timing.

For the simplest design, route AUDIOMIX_SPDIF1_OUT/IN to optical TOSLINK modules and use the MCIMX8M-AUD as the NXP reference point for S/PDIF I/O behavior.

0 项奖励
回复
%3CLINGO-SUB%20id%3D%22lingo-sub-2397053%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3Ei.MX8M%20Plus%20-%20Sony%20Philips%E6%95%B0%E5%AD%97%E6%8E%A5%E5%8F%A3%E6%A0%BC%E5%BC%8F(SPDIF)%20%E5%8D%8F%E8%AE%AE%E5%AE%9E%E7%8E%B0%E7%A4%BA%E4%BE%8B%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2397053%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%A4%A7%E5%AE%B6%E5%A5%BD%EF%BC%8C%3CBR%20%2F%3E%3CBR%20%2F%3E%E8%AF%B7%E9%97%AE%E6%9C%89%E4%BA%BA%E8%83%BD%E6%8C%87%E5%AF%BC%E4%B8%80%E4%B8%8B%E5%A6%82%E4%BD%95%E5%9C%A8%20i.MX8M%20plus%20%E4%B8%AD%E5%AE%9E%E7%8E%B0%E5%92%8C%E9%AA%8C%E8%AF%81%20Sony%20Philips%E6%95%B0%E5%AD%97%E6%8E%A5%E5%8F%A3%E6%A0%BC%E5%BC%8F(SPDIF)%20%E5%8D%8F%E8%AE%AE%E5%90%97%EF%BC%9F%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2397546%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20i.MX8M%20Plus%20-%20SPDIF%20Protocol%20Implementation%20Example%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2397546%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%AF%B9%E4%BA%8E%E6%9C%80%E7%AE%80%E5%8D%95%E7%9A%84%20i.MX%208M%20Plus%20S%2FPDIF%20%E5%AE%9E%E7%8E%B0%EF%BC%8C%E8%AF%B7%E4%BD%BF%E7%94%A8%20i.MX%20%E9%9F%B3%E9%A2%91%E6%9D%BF%20%2F%20MCIMX8M-AUD%20%E4%BD%9C%E4%B8%BA%E6%9C%80%E6%8E%A5%E8%BF%91%E7%9A%84%20NXP%20%E5%8F%82%E8%80%83%E7%A1%AC%E4%BB%B6%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%E4%BB%85%E4%BD%BF%E7%94%A8%E5%9F%BA%E6%9C%AC%E7%9A%84%20i.MX%208M%20Plus%20EVK%E3%80%82%E9%9F%B3%E9%A2%91%E6%9D%BF%E7%9A%84%E6%96%87%E6%A1%A3%E6%98%BE%E7%A4%BA%E5%85%B6%E6%94%AF%E6%8C%81%20i.MX%208M%20Plus%EF%BC%8C%E5%B9%B6%E6%8F%90%E4%BE%9B%E5%B8%A6%E6%9C%89%20RCA%20%E5%92%8C%20TOSLINK%20%E8%BF%9E%E6%8E%A5%E5%99%A8%E7%9A%84%20S%2FPDIF%20I%2FO%EF%BC%8CTOSLINK%20%E6%94%AF%E6%8C%81%E9%AB%98%E8%BE%BE%20192%20kHz%E3%80%82%3C%2FP%3E%0A%3CP%3E%E6%8E%A8%E8%8D%90%E7%9A%84%E7%AE%80%E6%98%93%E6%96%B9%E6%B3%95%EF%BC%9A%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E5%A6%82%E6%9E%9C%E5%8F%AF%E4%BB%A5%EF%BC%8C%E8%AF%B7%E4%BC%98%E5%85%88%E4%BD%BF%E7%94%A8%E5%85%89%E7%BA%A4%20S%2FPDIF%20%E6%8E%A5%E5%8F%A3%E3%80%82%3C%2FSTRONG%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%E6%9C%80%E7%AE%80%E5%8D%95%E7%9A%84%E7%A1%AC%E4%BB%B6%E8%B7%AF%E5%BE%84%EF%BC%9Ai.MX8MP%20SPDIF_OUT%20%E2%86%92%20%E5%85%89%E7%BA%A4%20TOSLINK%20%E5%8F%91%E5%B0%84%E5%99%A8%E6%A8%A1%E5%9D%97%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%E6%8E%A5%E6%94%B6%EF%BC%9A%E5%85%89%E7%BA%A4%20TOSLINK%20%E6%8E%A5%E6%94%B6%E5%99%A8%E6%A8%A1%E5%9D%97%20%E2%86%92%20i.MX8MP%20SPDIF_IN%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%E8%BF%99%E6%A0%B7%E5%B0%B1%E9%81%BF%E5%85%8D%E4%BA%86%E5%90%8C%E8%BD%B4%2075%20%CE%A9%20%E7%BA%BF%E8%B7%AF%E9%A9%B1%E5%8A%A8%E3%80%81%E5%8F%98%E5%8E%8B%E5%99%A8%2F%E8%80%A6%E5%90%88%E5%92%8C%E6%8E%A5%E5%9C%B0%E9%97%AE%E9%A2%98%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E9%80%9A%E8%BF%87%20IOMUX%20%E4%BD%BF%E7%94%A8%20i.MX%208M%20Plus%20%E7%9A%84%20S%2FPDIF%20%E5%BC%95%E8%84%9A%3C%2FSTRONG%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3Ei.MX%208M%20Plus%20%E9%9F%B3%E9%A2%91%E5%AD%90%E7%B3%BB%E7%BB%9F%E5%8C%85%E6%8B%AC%3CSTRONG%3ESony%20Philips%E6%95%B0%E5%AD%97%E6%8E%A5%E5%8F%A3%E6%A0%BC%E5%BC%8F(SPDIF)%20%E8%BE%93%E5%85%A5%E5%92%8C%E8%BE%93%E5%87%BA%3C%2FSTRONG%3E%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%E5%8F%82%E8%80%83%E6%89%8B%E5%86%8C%E6%98%BE%E7%A4%BA%E4%BA%86%E5%8F%AF%E9%80%89%E6%8B%A9%E7%9A%84%E7%84%8A%E7%9B%98%E4%B8%8A%E7%9A%84%20AUDIOMIX_SPDIF1_OUT%20%E5%92%8C%20AUDIOMIX_SPDIF1_IN%20%E7%9A%84%20IOMUX%20%E9%80%89%E9%A1%B9%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%E5%9C%A8%20Linux%20%E4%B8%AD%EF%BC%8C%E7%9B%B8%E5%BA%94%E7%9A%84%20IOMUX%20%E5%AE%9A%E4%B9%89%E5%8C%85%E6%8B%AC%20MX8MP_IOMUXC_SPDIF_TX__AUDIOMIX_SPDIF_OUT%20%E5%92%8C%20MX8MP_IOMUXC_SPDIF_RX__AUDIOMIX_SPDIF_IN%20%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E5%A6%82%E6%9E%9C%E6%82%A8%E9%9C%80%E8%A6%81%E5%90%8C%E8%BD%B4RCA%E6%8E%A5%E5%8F%A3%EF%BC%8C%3C%2FSTRONG%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E4%B8%8D%E8%A6%81%3C%2FSTRONG%3E%E5%B0%86%20SoC%20%E5%BC%95%E8%84%9A%E5%BD%93%E4%BD%9C%E7%9B%B4%E6%8E%A5%20RCA%20%E7%BA%BF%E8%B7%AF%E9%A9%B1%E5%8A%A8%E5%99%A8%E4%BD%BF%E7%94%A8%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%E6%A0%B9%E6%8D%AE%E6%89%80%E9%80%89%E7%9A%84%E5%8F%91%E5%B0%84%E5%99%A8%2F%E6%8E%A5%E5%8F%A3%E7%94%B5%E8%B7%AF%EF%BC%8C%E6%B7%BB%E5%8A%A0%E5%90%88%E9%80%82%E7%9A%84%2075%20%CE%A9%20S%2FPDIF%20%E5%90%8C%E8%BD%B4%E8%BE%93%E5%87%BA%E7%BD%91%E7%BB%9C%2F%E8%80%A6%E5%90%88%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%E5%85%89%E5%AD%A6%E6%96%B9%E5%BC%8F%E9%80%9A%E5%B8%B8%E6%98%AF%E6%9B%B4%E7%AE%80%E5%8D%95%E3%80%81%E6%9B%B4%E5%AE%89%E5%85%A8%E7%9A%84%E9%A6%96%E9%80%89%E6%96%B9%E6%A1%88%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E5%8F%AF%E4%BE%9B%E5%8F%82%E8%80%83%E7%9A%84%E8%B5%84%E6%96%99%3C%2FSTRONG%3E%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3EMCIMX8M-AUD%20%2F%20i.MX%20%E9%9F%B3%E9%A2%91%E6%9D%BF%3C%2FSTRONG%3E%EF%BC%9ANXP%20%E4%B8%BA%20i.MX%208M%20%E7%B3%BB%E5%88%97%E6%8F%90%E4%BE%9B%20S%2FPDIF%20I%2FO%20%E7%9A%84%E6%9C%80%E4%BD%B3%E5%8F%82%E8%80%83%E7%BA%A7%E4%BA%A7%E5%93%81%EF%BC%8C%E5%B8%A6%E6%9C%89%20RCA%20%E5%92%8C%20TOSLINK%20%E6%8E%A5%E5%8F%A3%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3Ei.MX%208M%20Plus%20%E5%8F%82%E8%80%83%E6%89%8B%E5%86%8C%3C%2FSTRONG%3E%EF%BC%9AAUDIOMIX_SPDIF1_IN%20%E5%92%8C%20AUDIOMIX_SPDIF1_OUT%20%E7%9A%84%20pinmux%20%2F%20IOMUX%20%E8%AE%BE%E7%BD%AE%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3Ei.MX%208M%20Plus%20%E6%95%B0%E6%8D%AE%E6%89%8B%E5%86%8C%3C%2FSTRONG%3E%EF%BC%9A%E8%AE%B0%E5%BD%95%E4%BA%86%20S%2FPDIF%20%E6%97%B6%E5%BA%8F%E5%8F%82%E6%95%B0%EF%BC%8C%E5%8C%85%E6%8B%AC%E6%97%B6%E9%92%9F%E9%AB%98%2F%E4%BD%8E%E6%97%B6%E5%BA%8F%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3C%2FUL%3E%0A%3CP%3E%E5%AF%B9%E4%BA%8E%E6%9C%80%E7%AE%80%E5%8D%95%E7%9A%84%E8%AE%BE%E8%AE%A1%EF%BC%8C%E5%B0%86%20AUDIOMIX_SPDIF1_OUT%2FIN%20%E8%BF%9E%E6%8E%A5%E5%88%B0%E5%85%89%E7%BA%A4%20TOSLINK%20%E6%A8%A1%E5%9D%97%EF%BC%8C%E5%B9%B6%E4%BD%BF%E7%94%A8%20MCIMX8M-AUD%20%E4%BD%9C%E4%B8%BA%20NXP%20S%2FPDIF%20I%2FO%20%E8%A1%8C%E4%B8%BA%E7%9A%84%E5%8F%82%E8%80%83%E7%82%B9%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2397501%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20i.MX8M%20Plus%20-%20SPDIF%20Protocol%20Implementation%20Example%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2397501%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%E7%8E%8B%E4%B8%80%E5%B9%B3%E6%82%A8%E5%A5%BD%EF%BC%8C%3CBR%20%2F%3E%3CBR%20%2F%3E%E8%AF%B7%E9%97%AE%E8%83%BD%E5%90%A6%E6%8F%90%E4%BE%9B%E4%B8%80%E4%BA%9B%E5%8F%82%E8%80%83%E7%94%B5%E8%B7%AF%E5%9B%BE%EF%BC%8C%E4%BB%A5%E4%BE%BF%E6%88%91%E4%BB%A5%E6%9C%80%E7%AE%80%E5%8D%95%E7%9A%84%E6%96%B9%E5%BC%8F%E5%AE%9E%E7%8E%B0Sony%20Philips%E6%95%B0%E5%AD%97%E6%8E%A5%E5%8F%A3%E6%A0%BC%E5%BC%8F%20(SPDIF)%20%E5%8A%9F%E8%83%BD%EF%BC%9F%3C%2FLINGO-BODY%3E%3CLINGO-SUB%20id%3D%22lingo-sub-2397074%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%20translate%3D%22no%22%3ERe%3A%20i.MX8M%20Plus%20-%20SPDIF%20Protocol%20Implementation%20Example%3C%2FLINGO-SUB%3E%3CLINGO-BODY%20id%3D%22lingo-body-2397074%22%20slang%3D%22en-US%22%20mode%3D%22CREATE%22%3E%3CP%3E%E5%9C%A8%20i.MX8M%20Plus%20%E4%B8%8A%E4%BD%BF%E7%94%A8%E7%8E%B0%E6%9C%89%E7%9A%84%20Linux%20ALSA%20Audio%20XCVR%20%2F%20S%2FPDIF%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%EF%BC%9B%E9%80%9A%E5%B8%B8%E6%83%85%E5%86%B5%E4%B8%8B%EF%BC%8C%E6%82%A8%3CSTRONG%3E%E4%B8%8D%E4%BC%9A%3C%2FSTRONG%3E%E4%BB%8E%E5%A4%B4%E5%BC%80%E5%A7%8B%E5%AE%9E%E7%8E%B0%20S%2FPDIF%20%E5%8D%8F%E8%AE%AE%E3%80%82i.MX8M%20Plus%20%E9%9F%B3%E9%A2%91%20XCVR%20%E6%94%AF%E6%8C%81%20eARC%E3%80%81ARC%20%E5%92%8C%20S%2FPDIF%20%E6%A8%A1%E5%BC%8F%EF%BC%8CLinux%20S%2FPDIF%20%E6%94%AF%E6%8C%81%E9%80%9A%E8%BF%87%20ALSA%20%E5%85%AC%E5%BC%80%E4%B8%80%E4%B8%AA%E7%94%A8%E4%BA%8E%20Tx%20%E7%9A%84%E6%92%AD%E6%94%BE%E8%AE%BE%E5%A4%87%E5%92%8C%E4%B8%80%E4%B8%AA%E7%94%A8%E4%BA%8E%20Rx%20%E7%9A%84%E6%8D%95%E8%8E%B7%E8%AE%BE%E5%A4%87%E3%80%82%3C%2FP%3E%0A%3CP%3E%E5%BB%BA%E8%AE%AE%E7%9A%84%E5%AE%9E%E6%96%BD%E8%B7%AF%E5%BE%84%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3E%E5%90%AF%E7%94%A8%E5%86%85%E6%A0%B8%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%3C%2FSTRONG%3E%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%E9%85%8D%E7%BD%AE_SND_IMX_SPDIF%3C%2FP%3E%0A%3CP%3E%E8%8F%9C%E5%8D%95%E8%B7%AF%E5%BE%84%EF%BC%9A%3C%2FP%3E%0A%3CP%3E%E5%A4%8D%E5%88%B6%3C%2FP%3E%0A%3CP%3E%E8%AE%BE%E5%A4%87%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%3C%2FP%3E%0A%3CP%3E-%26gt%3B%20%E5%A3%B0%E5%8D%A1%E6%94%AF%E6%8C%81%3C%2FP%3E%0A%3CP%3E-%26gt%3B%20%E9%AB%98%E7%BA%A7%20Linux%20%E9%9F%B3%E9%A2%91%E6%9E%B6%E6%9E%84%3C%2FP%3E%0A%3CP%3E-%26gt%3B%20ALSA%20%E7%94%A8%E4%BA%8E%20SoC%20%E9%9F%B3%E9%A2%91%E6%94%AF%E6%8C%81%3C%2FP%3E%0A%3CP%3E-%26gt%3B%20%E9%80%82%E7%94%A8%E4%BA%8E%E9%A3%9E%E6%80%9D%E5%8D%A1%E5%B0%94%20i.MX%20CPU%20%E7%9A%84%20SoC%20%E9%9F%B3%E9%A2%91%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20-%26gt%3B%20%E4%B8%BA%E5%B8%A6%E6%9C%89%20S%2FPDIF%20%E7%9A%84%20i.MX%20%E6%9D%BF%E6%8F%90%E4%BE%9B%20SoC%20%E9%9F%B3%E9%A2%91%E6%94%AF%E6%8C%81%E3%80%82%3C%2FP%3E%0A%3CP%3E%E8%AE%B0%E5%BD%95%E7%9A%84%20DT%20%E7%BB%91%E5%AE%9A%E4%BD%8D%E4%BA%8E%20Documentation%2Fdevicetree%2Fbindings%2Fsound%2Ffsl%2CSony%20Philips%E6%95%B0%E5%AD%97%E6%8E%A5%E5%8F%A3%E6%A0%BC%E5%BC%8F(SPDIF).txt%20%E5%92%8C%20Documentation%2Fdevicetree%2Fbindings%2Fsound%2Fimx-audio-Sony%20Philips%E6%95%B0%E5%AD%97%E6%8E%A5%E5%8F%A3%E6%A0%BC%E5%BC%8F(SPDIF)if.txt%20%E4%B8%8B%E3%80%82%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E9%85%8D%E7%BD%AE%20i.MX8M%20Plus%20%E7%9A%84%E8%AE%BE%E5%A4%87%E6%A0%91%3C%2FSTRONG%3E%EF%BC%8C%E4%BD%BF%E7%94%A8%20xcvr%20%E9%9F%B3%E9%A2%91%E6%A8%A1%E5%9D%97%E5%B9%B6%E5%90%AF%E7%94%A8%E5%A3%B0%E5%8D%A1%2FDAI%20%E9%93%BE%E8%B7%AF%E3%80%82%E5%85%B8%E5%9E%8B%E7%9A%84%E9%85%8D%E7%BD%AE%E5%A6%82%E4%B8%8B%EF%BC%9A%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3Esound-xcvr%20%7B%3C%2FP%3E%0A%3CP%3E%E5%85%BC%E5%AE%B9%20%3D%20%22fsl%2Cimx-audio-card%22%3B%3C%2FP%3E%0A%3CP%3E%E5%9E%8B%E5%8F%B7%20%3D%20%22imx-audio-xcvr%22%3B%3C%2FP%3E%0A%3CP%3Epri-dai-link%20%7B%3C%2FP%3E%0A%3CP%3E%E9%93%BE%E6%8E%A5%E5%90%8D%E7%A7%B0%20%3D%20%22XCVR%20PCM%22%3B%3C%2FP%3E%0A%3CP%3E%E4%B8%AD%E5%A4%AE%E5%A4%84%E7%90%86%E5%99%A8%20%7B%3C%2FP%3E%0A%3CP%3Esound-dai%20%3D%20%26lt%3B%26amp%3Bxcvr%26gt%3B%3B%3C%2FP%3E%0A%3CP%3E%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%26nbsp%3B%20%7D%3B%3C%2FP%3E%0A%3CP%3E%7D%3B%3C%2FP%3E%0A%3CP%3E%7D%3B%3C%2FP%3E%0A%3CP%3E%26amp%3Bxcvr%20%7B%3C%2FP%3E%0A%3CP%3E%23sound-dai-cells%20%3D%20%26lt%3B0%26gt%3B%3B%3C%2FP%3E%0A%3CP%3Epinctrl-names%20%3D%20%22default%22%3B%3C%2FP%3E%0A%3CP%3Epinctrl-0%20%3D%20%26lt%3B%26amp%3Bpinctrl_xcvr%26gt%3B%3B%3C%2FP%3E%0A%3CP%3E%E7%8A%B6%E6%80%81%20%3D%20%22%E6%AD%A3%E5%B8%B8%22%3B%3C%2FP%3E%0A%3CP%3E%7D%3B%3C%2FP%3E%0A%3CP%3E%E5%AF%B9%E4%BA%8E%20Tx%20%E5%BC%95%E8%84%9A%E5%A4%8D%E7%94%A8%EF%BC%8C%E4%B8%80%E4%B8%AA%E6%9C%89%E8%AE%B0%E5%BD%95%E7%9A%84%E7%A4%BA%E4%BE%8B%E4%BD%BF%E7%94%A8%20MX8MP_IOMUXC_SPDIF_TX__AUDIOMIX_SPDIF1_OUT%E3%80%82%3C%2FP%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E6%A3%80%E6%9F%A5%E7%94%B5%E8%B7%AF%E6%9D%BF%E5%B8%83%E7%BA%BF%2F%E8%B7%B3%E7%BA%BF%E3%80%82%3C%2FSTRONG%3E%E5%A6%82%E6%9E%9C%E4%BD%BF%E7%94%A8%20NXP%20%E9%9F%B3%E9%A2%91%E6%9D%BF%EF%BC%8C%E8%AF%B7%E8%AE%BE%E7%BD%AE%E9%A2%84%E6%9C%9F%20S%2FPDIF%20%E8%B7%AF%E5%BE%84%E7%9A%84%E7%89%A9%E7%90%86%E5%B8%83%E7%BA%BF%E3%80%82%E5%AF%B9%E4%BA%8E%20i.MX8M%20Plus%EF%BC%8CJ1500%3D1-2%20%E5%B0%86%E5%90%8C%E8%BD%B4%E8%BF%9E%E6%8E%A5%E5%99%A8%E8%BF%9E%E6%8E%A5%E5%88%B0%20i.MX8M%20Plus%EF%BC%8CJ1500%3D4-5%20%E5%B0%86%E5%85%89%E7%BA%A4%E8%BF%9E%E6%8E%A5%E5%99%A8%E8%BF%9E%E6%8E%A5%E5%88%B0%20i.MX8M%20Plus%E3%80%82%E5%A6%82%E6%9E%9C%E9%80%9A%E8%BF%87%20CPLD%20%2F%20HDMI%20%E5%8D%A1%E8%BF%9B%E8%A1%8C%E8%B7%AF%E7%94%B1%EF%BC%8C%E5%88%99%20J2511%3D1-3%20%E7%9A%84%E6%96%87%E6%A1%A3%E4%B8%BA%E2%80%9Ci.MX%208M%20Plus%20%E5%88%B0%20CPLD%20%E5%88%B0%20HDMI%20%E5%8D%A1%E2%80%9D%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CUL%3E%0A%3CLI%3E%3CSTRONG%3E%E6%AD%A3%E7%A1%AE%E4%BD%BF%E7%94%A8%20ALSA%20%2F%20IEC958%3C%2FSTRONG%3E%20S%2FPDIF%20%E5%8F%91%E9%80%81%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E6%94%AF%E6%8C%81%2032%E3%80%8144.1%20%E5%92%8C%2048%20kHz%20%E9%87%87%E6%A0%B7%E7%8E%87%EF%BC%8C%E4%BB%A5%E5%8F%8A%20S16_LE%20%E5%92%8C%20S24_LE%20%E6%A0%BC%E5%BC%8F%EF%BC%9B%E5%AF%B9%E4%BA%8E%2024%20%E4%BD%8D%E8%BE%93%E5%87%BA%EF%BC%8C%E6%96%87%E4%BB%B6%E5%BF%85%E9%A1%BB%E4%BD%BF%E7%94%A8%E6%AF%8F%E9%80%9A%E9%81%93%E5%B8%A7%2032%20%E4%BD%8D%EF%BC%8C%E5%B9%B6%E4%B8%94%E5%8F%AA%E6%9C%89%2024%20%E4%B8%AA%E6%9C%80%E4%BD%8E%E6%9C%89%E6%95%88%E4%BD%8D%E6%9C%89%E6%95%88%E3%80%82%E5%A6%82%E6%9E%9C%E8%B7%AF%E5%BE%84%E9%9C%80%E8%A6%81%E7%9A%84%E6%98%AF%20IEC958%20%E5%AD%90%E5%B8%A7%E8%80%8C%E4%B8%8D%E6%98%AF%E5%8E%9F%E5%A7%8B%20PCM%EF%BC%8C%E5%88%99%E5%9C%A8%E7%94%A8%E6%88%B7%E7%A9%BA%E9%97%B4%E4%B8%AD%E8%BF%9B%E8%A1%8C%20PCM%20%E5%88%B0%20IEC958%20%E7%9A%84%E8%BD%AC%E6%8D%A2%EF%BC%8C%E4%BE%8B%E5%A6%82%E4%BD%BF%E7%94%A8%20ALSA%20PCM%20%E6%8F%92%E4%BB%B6%E3%80%82%3C%2FLI%3E%0A%3C%2FUL%3E%0A%3CP%3E%E9%AA%8C%E8%AF%81%E6%AD%A5%E9%AA%A4%EF%BC%9A%3C%2FP%3E%0A%3CP%3Eaplay%20-l%3C%2FP%3E%0A%3CP%3E%E8%AE%B0%E5%BD%95%20-l%3C%2FP%3E%0A%3CP%3E%E4%BD%BF%E7%94%A8%E8%BF%99%E4%BA%9B%E4%BF%A1%E6%81%AF%E6%9D%A5%E8%AF%86%E5%88%AB%20S%2FPDIF%20%E6%92%AD%E6%94%BE%2F%E9%87%87%E9%9B%86%E5%8D%A1%E5%92%8C%E8%AE%BE%E5%A4%87%20ID%E3%80%82%E6%96%87%E6%A1%A3%E6%98%BE%E7%A4%BA%20S%2FPDIF%20%E8%AE%BE%E5%A4%87%E6%98%BE%E7%A4%BA%E4%B8%BA%20ALSA%20%E5%8D%A1%EF%BC%8C%E4%BE%8B%E5%A6%82%20imxspdif%20%5Bimx-spdif%5D%EF%BC%8C%E8%AE%BE%E5%A4%87%200%EF%BC%9AS%2FPDIF%20PCM%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3E%E4%BA%A4%E6%98%93%E9%AA%8C%E8%AF%81%EF%BC%9A%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3Eaplay%20-D%20hw%3A%3CCARD_ID%3E%2C%3CPCM_ID%3E%20audio48k24S.wav%3C%2FPCM_ID%3E%3C%2FCARD_ID%3E%3C%2FP%3E%0A%3CP%3E%E5%8F%82%E8%80%83%E9%AA%8C%E8%AF%81%E6%96%B9%E6%B3%95%E4%BD%BF%E7%94%A8%E5%A4%96%E9%83%A8%E5%85%89%E7%BA%A4%20S%2FPDIF%20%E6%8E%A5%E6%94%B6%E5%99%A8%EF%BC%8C%E4%BE%8B%E5%A6%82%E5%B8%A6%E6%9C%89%20WaveLab%20%E7%9A%84%20M-Audio%20Transit%20USB%20%E5%A3%B0%E5%8D%A1%EF%BC%8C%E7%84%B6%E5%90%8E%E5%A4%96%E9%83%A8%E5%BD%95%E5%88%B6%E9%9F%B3%E9%A2%91%E6%B5%81%E5%B9%B6%E5%9B%9E%E6%94%BE%E4%BB%A5%E6%A3%80%E6%9F%A5%E6%AD%A3%E7%A1%AE%E6%80%A7%E3%80%82%3C%2FP%3E%0A%3CP%3E%3CSTRONG%3E%E5%A4%84%E6%96%B9%E9%AA%8C%E8%AF%81%EF%BC%9A%3C%2FSTRONG%3E%3C%2FP%3E%0A%3CP%3Earecord%20-D%20hw%3A%3CCARD_ID%3E%2C%3CPCM_ID%3E%20-c%202%20-d%2020%20-r%2048000%20-f%20S24_LE%20record.wav%3C%2FPCM_ID%3E%3C%2FCARD_ID%3E%3C%2FP%3E%0A%3CP%3E%E4%BC%A0%E9%80%92%E7%BB%99%20arecord%20%E7%9A%84%E9%87%87%E6%A0%B7%E7%8E%87%E5%BF%85%E9%A1%BB%E4%B8%8E%E8%BE%93%E5%85%A5%E7%9A%84%20S%2FPDIF%20%E6%B5%81%E9%87%87%E6%A0%B7%E7%8E%87%E7%9B%B8%E5%8C%B9%E9%85%8D%E3%80%82%E5%AF%B9%E4%BA%8E%20Rx%EF%BC%8C%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%B5%81%E7%A8%8B%E6%98%AF%E6%89%93%E5%BC%80%20S%2FPDIF%20Rx%20PCM%20%E8%AE%BE%E5%A4%87%EF%BC%8C%E7%AD%89%E5%BE%85%E5%86%85%E9%83%A8%20DPLL%20%E9%94%81%E5%AE%9A%E5%88%B0%E8%BE%93%E5%85%A5%E6%AF%94%E7%89%B9%E6%B5%81%EF%BC%8C%E8%8E%B7%E5%8F%96%E8%BE%93%E5%85%A5%E9%87%87%E6%A0%B7%E7%8E%87%EF%BC%8C%E8%AE%BE%E7%BD%AE%E9%80%9A%E9%81%93%2F%E6%A0%BC%E5%BC%8F%2F%E9%80%9F%E7%8E%87%E5%8F%82%E6%95%B0%EF%BC%8C%E7%84%B6%E5%90%8E%E5%87%86%E5%A4%87%E5%B9%B6%E8%A7%A6%E5%8F%91%E6%8D%95%E8%8E%B7%E3%80%82%3C%2FP%3E%0A%3CP%3E%E5%AF%B9%E4%BA%8E%E5%8D%8F%E8%AE%AE%E7%BA%A7%E6%A3%80%E6%9F%A5%EF%BC%8C%E8%AF%B7%E4%BD%BF%E7%94%A8%EF%BC%9A%3C%2FP%3E%0A%3CP%3Eiecset%20-c%20%3CCARD_ID%3E%3C%2FCARD_ID%3E%3C%2FP%3E%0A%3CP%3Eiecset%20%E6%98%AF%E7%94%A8%E4%BA%8E%E8%AE%BE%E7%BD%AE%E6%88%96%E8%BD%AC%E5%82%A8%20IEC958%20%E7%8A%B6%E6%80%81%E4%BD%8D%E7%9A%84%E6%A0%87%E5%87%86%E5%AE%9E%E7%94%A8%E7%A8%8B%E5%BA%8F%EF%BC%8C%E5%B9%B6%E4%B8%94%E8%AF%A5%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%E8%BF%98%E9%80%9A%E8%BF%87%20ALSA%20%E6%8E%A7%E5%88%B6%E6%8E%A5%E5%8F%A3%E5%85%AC%E5%BC%80%E9%80%9A%E9%81%93%E7%8A%B6%E6%80%81%E5%A4%84%E7%90%86%E3%80%82%3C%2FP%3E%0A%3CP%3E%E5%AF%B9%E4%BA%8E%20i.MX8M%20Plus%20EVK%20%E9%A3%8E%E6%A0%BC%E7%9A%84%E9%AA%8C%E8%AF%81%EF%BC%8CNXP%20%E8%BF%98%E8%AE%B0%E5%BD%95%E4%BA%86%E4%BD%BF%E7%94%A8%20imxaudioxcvr%20%E5%8D%A1%E8%BF%9B%E8%A1%8C%E7%8E%AF%E5%9B%9E%E5%BC%8F%20Linux%20%E6%B5%8B%E8%AF%95%E7%9A%84%E6%96%B9%E6%B3%95%EF%BC%8C%E4%BE%8B%E5%A6%82%E4%BB%8E%20imxaudioxcvr%20%E5%BD%95%E5%88%B6%E9%9F%B3%E9%A2%91%E5%B9%B6%E6%92%AD%E6%94%BE%E5%88%B0%20wm8960audio%EF%BC%9A%3C%2FP%3E%0A%3CP%3Earecord%20-Dsysdefault%3ACARD%3Dimxaudioxcvr%20-c2%20-r48000%20-fS32_LE%20-twav%20%7C%20%5C%3C%2FP%3E%0A%3CP%3Eaplay%20-Dsysdefault%3ACARD%3Dwm8960audio%3C%2FP%3E%0A%3CP%3E%E7%AE%80%E8%80%8C%E8%A8%80%E4%B9%8B%EF%BC%9A%E5%90%AF%E7%94%A8%20i.MX%20S%2FPDIF%20%2F%20XCVR%20ALSA%20%E9%A9%B1%E5%8A%A8%E7%A8%8B%E5%BA%8F%EF%BC%8C%E9%85%8D%E7%BD%AE%20xcvr%20%E8%AE%BE%E5%A4%87%E6%A0%91%E5%92%8C%E6%9D%BF%E8%B7%AF%E7%94%B1%EF%BC%8C%E7%84%B6%E5%90%8E%E4%BD%BF%E7%94%A8%20aplay%E3%80%81arecord%E3%80%81iecset%20%E5%92%8C%E5%A4%96%E9%83%A8%E5%85%89%E7%BA%A4%2F%E5%90%8C%E8%BD%B4%20S%2FPDIF%20%E6%BA%90%E6%88%96%E6%8E%A5%E6%94%B6%E5%99%A8%E9%AA%8C%E8%AF%81%20Tx%2FRx%E3%80%82%3C%2FP%3E%3C%2FLINGO-BODY%3E