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.

TLV320ADC6140: PinMux for TLV320ADCX140 Sound driver

Part Number: TLV320ADC6140
Other Parts Discussed in Thread: TLV320ADC5140

Hi

Can someone point me to correct Pinmux connection for TLV320ADCX140 Sound driver?

https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git/tree/sound/soc/codecs/tlv320adcx140.c?h=for-next

This links talks about McASP Design Guide - Tips, Tricks, and Practical Example but needs to know which mode Codec needs to configure for above driver?

http://www.ti.com/lit/an/sprack0/sprack0.pdf

I am using Beagle Bone pocket as development board for AM335x processor McASP port. 

Thanks

  • Biren,

    We are using the Beagle Bone black with the McASP peripheral in I2S/TDM mode. The device binding tree example shows the pinmux

    https://git.ti.com/gitweb?p=ti-analog-linux-kernel/dmurphy-analog.git;a=commit;h=3fc068a34a591d818467da60e06d777b8c7357a9

    51 &mcasp0 {
    52         #sound-dai-cells = <0>;
    53         pinctrl-names = "default";
    54         pinctrl-0 = <&mcasp0_pins>;
    55         status = "okay";
    56         op-mode = <0>;  /* MCASP_IIS_MODE */
    57         tdm-slots = <2>;
    58         serial-dir = <  /* 0: INACTIVE, 1: TX, 2: RX */
    59                         2 1 0 0
    60                 >;
    61         tx-num-evt = <32>;
    62         rx-num-evt = <32>;
    63 };
    65 / {
    66         memory@80000000 {
    67                 device_type = "memory";
    68                 reg = <0x80000000 0x20000000>; /* 512 MB */
    69         };
    71         clk_mcasp0_fixed: clk_mcasp0_fixed {
    72                 #clock-cells = <0>;
    73                 compatible = "fixed-clock";
    74                 clock-frequency = <24576000>;
    75         };
    77         clk_mcasp0: clk_mcasp0 {
    78                 #clock-cells = <0>;
    79                 compatible = "gpio-gate-clock";
    80                 clocks = <&clk_mcasp0_fixed>;
    81                 enable-gpios = <&gpio1 27 0>; /* BeagleBone Black Clk enable on GPIO1_27 */
    82         };
    85         sound {
    86                 compatible = "simple-audio-card";
    87                 simple-audio-card,name = "TI BeagleBone Black";
    88                 simple-audio-card,format = "i2s";
    89                 simple-audio-card,bitclock-master = <&dailink0_master>;
    90                 simple-audio-card,frame-master = <&dailink0_master>;
    91                 simple-audio-card,widgets =
    92                         "Microphone", "Mic Jack";
    93                 simple-audio-card,routing =
    94                         "MIC1P",                "Mic Jack",
    95                         "MIC1P",                "Mic Jack";
    97                 dailink0_master: simple-audio-card,cpu {
    98                         sound-dai = <&mcasp0>;
    99                         clocks = <&clk_mcasp0>;
    100                 };
    102                 simple-audio-card,codec {
    103                         sound-dai = <&tlv320adc5140>;
    104                 };
    105         };
    106 };

    There is a little documentation here:

    https://git.ti.com/gitweb?p=ti-analog-linux-kernel/dmurphy-analog.git;a=blob;f=Documentation/devicetree/bindings/sound/tlv320adcx140.yaml;h=1433ff62b14f0264ae5278d40a612da8a82ad718;hb=47d53a01e1835c56eec2f301b93156c494f3e068

    Best regards,
    Pedro