This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TLV320ADC3140: Linux integration with a Renesas RZ/G2L MPU

Part Number: TLV320ADC3140

Hi

I am currently trying to integrate a TLV320ADC3140 with a Renesas RZ/G2L MPU running a 5.10 linux kernel.

My issue is, that i can only record from channel 1.

The kernel is compiled with :

CONFIG_SND_SIMPLE_CARD=m
CONFIG_SND_SOC_TLV320ADCX140=m

to include drivers for the ADC.

In the device tree file I have configured the ADC as shown in the following snipper:

audio_mclock: audio_mclock {
  compatible = "fixed-clock";
  #clock-cells = <0>;
  clock-frequency = <11289600>;
};

tlv320_snd: sound {
  compatible = "simple-audio-card";
  simple-audio-card,widgets = "Microphone", "Mic";
  simple-audio-card,routing =
    "MIC1P", "Mic",
    "MIC1M", "Mic",
    "MIC2P", "Mic",
    "MIC2M", "Mic",
    "MIC3P", "Mic",
    "MIC3M", "Mic",
    "MIC4P", "Mic",
    "MIC4M", "Mic";

  simple-audio-card,dai-link@0{
    format = "i2s";
    bitclock-master = <&cpu_dai>;
    frame-master = <&cpu_dai>;
    mclk-fs = <256>;
    cpu_dai: cpu {
      sound-dai = <&ssi0>;
    };

    codec_dai: codec {
      sound-dai = <&tlv320adc3140>;
      clocks = <&audio_mclock>;
    };
  };
};


&i2c3 {
  pinctrl-0 = <&i2c3_pins>;
  pinctrl-names = "default";
  clock-frequency = <400000>;
  status = "okay";
  tlv320adc3140: codec@4c {
    #sound-dai-cells = <0>;
    compatible = "ti,tlv320adc3140";
    reg = <0x4c>;
    ti,mic-bias-source = <0>;
    ti,pdm-edge-select = <1 1 1 1>;
    ti,gpio-config = <10 0>;
    ti,gpi-config = <4 5 6 7>;

    reset-gpios = <&pinctrl RZG2L_GPIO(40, 2) GPIO_ACTIVE_HIGH>;
  };
};


When recording from the ADC I am using the following command:
sudo arecord -vv -d 1 -D default -f dat -c 4 -t wav test.wav

This only shows signal on one channel.