Hello,
I'm using the TI SDK 6.02.00.81 with an evaluation board trying to get mcasp2 up and running without using a codec. Basically, I'm just interested in sending i2s data across the mcasp2 lines.
I've made the following changes:
U-boot snippet changes:
{MCASP2_ACLKX, (M0 | PIN_INPUT_PULLDOWN)}, {MCASP2_FSX, (M0 | PIN_INPUT_SLEW)}, {MCASP2_FSR, (M0 | PIN_INPUT_SLEW)}, {MCASP2_AXR0, (M0 | PIN_INPUT_SLEW)}, {MCASP2_AXR1, (M0 | PIN_INPUT_SLEW)}, {MCASP2_ACLKR, (M0 | PIN_INPUT_PULLUP)},
I edited my u-boot uEnv.txt to select the am57xx-beagle-x15-common.dtb device tree to use.
Device Tree Modifications to am57xx-beagle-x15-common.dtsi:
&mcasp2 { #sound-dai-cells = <0>; assigned-clocks = <&l4per_clkctrl DRA7_MCASP2_CLKCTRL 24>; assigned-clock-parents = <&sys_clkin2>; status = "okay"; op-mode = <0>; /* MCASP_IIS_MODE */ tdm-slots = <2>; /* 16 serializers */ serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 1 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 >; tx-num-evt = <32>; rx-num-evt = <32>; };
And for a basic test, I've changed the original sound0 node to use mcasp2 instead of mcasp3:
sound0: sound0 { compatible = "simple-audio-card"; simple-audio-card,name = "TW"; simple-audio-card,widgets = "Line", "Line Out", "Line", "Line In"; simple-audio-card,routing = "Line Out", "LLOUT", "Line Out", "RLOUT", "MIC2L", "Line In", "MIC2R", "Line In"; simple-audio-card,format = "dsp_b"; simple-audio-card,bitclock-master = <&sound0_master>; simple-audio-card,frame-master = <&sound0_master>; simple-audio-card,bitclock-inversion; simple-audio-card,cpu { sound-dai = <&mcasp2>; }; sound0_master: simple-audio-card,codec { sound-dai = <&tlv320aic3104>; clocks = <&clkout2_clk>; }; };
The board boots up fine, and I've loaded a basic .wav file to playback. However, I don't see any activity coming out of mcasp2. As a sanity check, if I change back to mcasp3 for the sound0 node, I do hear sound coming out from the audio jack. What could be the reason I don't see any activity happening on the mcasp2 after making my changes?