Other Parts Discussed in Thread: TLV320AIC3106
Tool/software: Linux
Hi All,
I am using PSDK (3.02) and using Beaglebone Black to connect a codec SAF775x. I am writing a codec driver for this codec. I need to configure McASP0 so that it is able to generate BCLK and LRCLK with sampling rate 44.1KHz
For MCASP0 I am using the following connection from the expansion header P9 of Beaglebone for configuring mcasp0. I have disabled HDMI audio and added mcasp0 in device tree. I am only using AXR0 as i am only configuring a playback channel.
A13 | SPI1_SCLK | P9.31 | MCASP0_ACLKX | Bit Clock |
B13 | SPI1_D0 | P9.29 | MCASP0_FSX | Word Clock |
D12 | SPI1_D1 | P9.30 | MCASP0_AXR0 | Tx |
Device tree addition:
&mcasp0 {
#sound-dai-cells = <0>;
pinctrl-names = "default";
pinctrl-0 = <&mcasp0_pins>;
status = "okay";
op-mode = <0>; /* MCASP_IIS_MODE */
tdm-slots = <2>;
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */
1 0 0 0
>;
tx-num-evt = <32>;
rx-num-evt = <32>;
};
mcasp0_pins: mcasp0_pins {
pinctrl-single,pins = <
AM33XX_IOPAD(0x990, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /*mcasp0_aclkx.mcasp0_aclkx */
AM33XX_IOPAD(0x994, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mcasp0.mcasp0_fsx */
AM33XX_IOPAD(0x998, PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mcasp0.mcasp0_axr0 */
>;
};
/ {
sound {
compatible = "simple-audio-card";
simple-audio-card,name = "TI BeagleBone Black";
simple-audio-card,format = "i2s";
simple-audio-card,bitclock-master = <&sound_master>;
simple-audio-card,frame-master = <&sound_master>;
sound_master:simple-audio-card,cpu {
sound-dai = <&mcasp0>;
system-clock-frequency = <24000000>;
};
simple-audio-card,codec {
sound-dai = <&saf775x>;
};
};
};
My pcm device is detected. I have done basic implementation of codec driver and registered it as a sound card. But my MCASP0 clock is not being generated. I have not done any changes in mcasp driver.
Please Suggest me the configuation or any changes required in mcasp
Thanks
Deep