Quantcast
Channel: Raspberry Pi Forums
Viewing all articles
Browse latest Browse all 4858

Interfacing (DSI, CSI, I2C, etc.) • Re: Simple-audio-card I2s audio issues (bookworm)

$
0
0
A little update on this, it seems to be broken again on the latest Rasperry OS version

Code:

Linux raspberrypi 6.6.20+rpt-rpi-2712 #1 SMP PREEMPT Debian 1:6.6.20-1+rpt1 (2024-03-07) aarch64 GNU/Linux
The overlay below now gives the following error

Code:

[    6.398476] designware-i2s 1f000a4000.i2s: ASoC: error at snd_soc_dai_set_tdm_slot on 1f000a4000.i2s: -22[    6.398485] designware-i2s 1f000a4000.i2s: simple-card: set_tdm_slot error[    6.398487]  1f000a4000.i2s-dit-hifi: ASoC: error at snd_soc_link_init on 1f000a4000.i2s-dit-hifi: -22
This was working flawlessly on 6.1, even installing this image https://downloads.raspberrypi.org/raspi ... 023-12-06/ it works fine, however after an upgrade, or using the imagers default the above error appears. I have taken a look through a bunch of the included overlays and I can't see anything different. My overlay is below, any pointers would be greatly appreciated!

Code:

//Device tree overlay for generic stereo audio codec. ex) Asahi kasei AK4556/dts-v1/;/plugin/;/ {    compatible = "brcm,bcm2708";    fragment@0 {        target = <&sound>;        __overlay__ {            compatible = "simple-audio-card";            simple-audio-card,name = "PiMost";            status="okay";            capture_link: simple-audio-card,dai-link@0 {                format = "i2s";                // Set RasPi to I2S slave                bitclock-master = <&r_codec_dai>;                frame-master = <&r_codec_dai>;                r_cpu_dai: cpu {                    sound-dai = <&i2s>;                // TDM slot configuration for stereo                    dai-tdm-slot-num = <2>;                    dai-tdm-slot-width = <16>;                };                r_codec_dai: codec {                    sound-dai = <&codec_in>;                };            };            playback_link: simple-audio-card,dai-link@1 {                format = "i2s";                // Set RasPi to I2S slave                bitclock-master = <&p_codec_dai>;                frame-master = <&p_codec_dai>;                p_cpu_dai: cpu {                    sound-dai = <&i2s>;                // TDM slot configuration for stereo                    dai-tdm-slot-num = <2>;                    dai-tdm-slot-width = <16>;                };                p_codec_dai: codec {                    sound-dai = <&codec_out>;                };            };        };    };    fragment@1 {        target-path = "/";        __overlay__ {            codec_out: spdif-transmitter {                #address-cells = <0>;                #size-cells = <0>;                #sound-dai-cells = <0>;                /*                    "linux,spdif-dit" is used in generic I2S(transmitter) driver.                    You can see details "linux,spdif-dit" by bellow command                    modinfo snd_soc_spdif_tx                */                compatible = "linux,spdif-dit";                status = "okay";            };            codec_in: spdif-receiver {                #address-cells = <0>;                #size-cells = <0>;                #sound-dai-cells = <0>;                /*                    "linux,spdif-dir" is used in generic I2S(receiver) driver.                    You can see details "linux,spdif-dir" by bellow command                    modinfo snd_soc_spdif_rx                */                compatible = "linux,spdif-dir";                status = "okay";            };        };    };    fragment@2 {        target = <&i2s>;        __overlay__ {            #sound-dai-cells = <0>;            status = "okay";        };    };};

Statistics: Posted by Rhys_m — Mon Mar 18, 2024 10:14 pm



Viewing all articles
Browse latest Browse all 4858

Trending Articles