I have done a lot of work with the the i2s interface on PiS and it works fine except one thing
It should output a masterclock on pin
68 PDM_CLK_M_M2 I2S0_8CH_MCLK GPIO2_A4 7
I use mostly the dummy-codec and it should output the master clock but it doesn’t regardless configuration.
I can in dmesg see “dummy-codec get mclk success” but still no master clock on the pin.
Is the hardware connection ok? something else I am missing?
Rockpi S I2S masterclock
Heya - Can you post the dt overlay that you’re using? We maybe are looking in a similar direction, but for different reasons:
Please look at my thread here
For TDM 8ch I believe you should use the dsp_b format
simple-audio-card,format = “dsp_b”;
That works fine for me with internal clock and standard codec.
// Definitions for DAC-8ch
/dts-v1/;
/plugin/;
/ {
compatible = “radxa,rockpis”, “rockchip,rk3308”;
fragment@0 {
target = <&i2s_8ch_0>;
__overlay__ {
#sound-dai-cells = <0>;
status = "okay";
};
};
fragment@1 {
target = <&i2s_8ch_2>;
__overlay__ {
#sound-dai-cells = <0>;
status = "disabled";
};
};
fragment@2 {
target-path = "/";
__overlay__ {
pcm5102a {
#sound-dai-cells = <0>;
status = "okay";
};
sound {
simple-audio-card,name = "Multi-ch-DAC";
simple-audio-card,format = "dsp_b";
status = "okay";
cpu {
dai-tdm-slot-num = <8>;
dai-tdm-slot-width = <16>;
};
};
};
};
};
Its a while but when working I found the inputs noisey but here was what I used to use.
Never seemed to be an option as an overlay.
https://wiki.radxa.com/Device-tree-overlays