Kernel-4.18.0-80.el8_simple-scu-car

ASoC Simple SCU Sound Card

Simple SCU Sound Card is “Simple Sound Card” + “ALSA DPCM”.
For example, you can use this driver if you want to exchange sampling rate convert,
Mixing, etc…

Required properties:

  • compatible : “simple-scu-audio-card”

                    "renesas,rsrc-card"
    

    Optional properties:

  • simple-audio-card,name : see simple-audio-card.txt

  • simple-audio-card,cpu : see simple-audio-card.txt

  • simple-audio-card,codec : see simple-audio-card.txt

Optional subnode properties:

  • simple-audio-card,format : see simple-audio-card.txt
  • simple-audio-card,frame-master : see simple-audio-card.txt
  • simple-audio-card,bitclock-master : see simple-audio-card.txt
  • simple-audio-card,bitclock-inversion : see simple-audio-card.txt
  • simple-audio-card,frame-inversion : see simple-audio-card.txt
  • simple-audio-card,convert-rate : platform specified sampling rate convert
  • simple-audio-card,convert-channels : platform specified converted channel size (2 - 8 ch)
  • simple-audio-card,prefix : see routing
  • simple-audio-card,widgets : Please refer to widgets.txt.
  • simple-audio-card,routing : A list of the connections between audio components.
                    Each entry is a pair of strings, the first being the connection's sink,
                    the second being the connection's source. Valid names for sources.
                    use audio-prefix if some components is using same sink/sources naming.
                    it can be used if compatible was "renesas,rsrc-card";
    

Required CPU/CODEC subnodes properties:

  • sound-dai : see simple-audio-card.txt

Optional CPU/CODEC subnodes properties:

  • clocks / system-clock-frequency : see simple-audio-card.txt

Example 1. Sampling Rate Conversion

sound {
compatible = “simple-scu-audio-card”;

simple-audio-card,name = "rsnd-ak4643";
simple-audio-card,format = "left_j";
simple-audio-card,bitclock-master = <&sndcodec>;
simple-audio-card,frame-master = <&sndcodec>;

simple-audio-card,convert-rate = <48000>;

simple-audio-card,prefix = "ak4642";
simple-audio-card,routing = "ak4642 Playback", "DAI0 Playback",
        "DAI0 Capture", "ak4642 Capture";

sndcpu: simple-audio-card,cpu {
    sound-dai = <&rcar_sound>;
};

sndcodec: simple-audio-card,codec {
    sound-dai = <&ak4643>;
    system-clock-frequency = <11289600>;
};

};

Example 2. 2 CPU 1 Codec (Mixing)

sound {
compatible = “simple-scu-audio-card”;

simple-audio-card,name = "rsnd-ak4643";
simple-audio-card,format = "left_j";
simple-audio-card,bitclock-master = <&dpcmcpu>;
simple-audio-card,frame-master = <&dpcmcpu>;

simple-audio-card,prefix = "ak4642";
simple-audio-card,routing = "ak4642 Playback", "DAI0 Playback",
        "ak4642 Playback", "DAI1 Playback";

dpcmcpu: cpu@0 {
    sound-dai = <&rcar_sound 0>;
};

cpu@1 {
    sound-dai = <&rcar_sound 1>;
};

codec {
    sound-dai = <&ak4643>;
    clocks = <&audio_clock>;
};

};