Hi Team,
CODEC: TLV320AIC3104 External Codec.
CHANGES:
+ sound-tlv320aic3x {
+ compatible = "simple-audio-card";
+ simple-audio-card,name = "tlv320aic3x-Codec";
+ simple-audio-card,format = "i2s";
+ simple-audio-card,frame-master = <&cpudai1>;
+ simple-audio-card,bitclock-master = <&cpudai1>;
+
+ simple-audio-card,widgets =
+ "Line", "Line Out",
+ "Line", "Line In",
+ "Headphone", "Headphone Jack",
+ "Speaker", "speaker";
+ simple-audio-card,routing =
+ "Line Out", "HPLCOM",
+ "Line Out", "HPRCOM",
+ "LINE1L", "Line In",
+ "LINE1R", "Line In",
+ "Headphone Jack", "HPLOUT",
+ "Headphone Jack", "HPROUT",
+ "speaker", "LLOUT",
+ "speaker", "RLOUT";
+
+ cpudai1: simple-audio-card,cpu {
+ sound-dai = <&sai1>;
+ dai-tdm-slot-num = <2>;
+ dai-tdm-slot-width = <32>;
+ };
+
+ simple-audio-card,codec {
+ sound-dai = <&tlv320aic3x>;
+ clocks = <&clk IMX8MM_CLK_SAI1_ROOT>;
+ };
+ };
BUS-I2C3
+ tlv320aic3x: codec@18 {
+ compatible = "ti,tlv320aic3104";
+ reg = <0x18>;
+ #sound-dai-cells = <0>;
+ reset-gpios = <&gpio4 28 GPIO_ACTIVE_LOW>;
+ DRVDD-supply = <®_3p3v>;
+ AVDD-supply = <®_3p3v>;
+ IOVDD-supply = <®_3p3v>;
+ DVDD-supply = <®_1p8v>;
+ };
Need your help to solve following errors
E tlv320aic3x-codec 2-0018: Unable to sync registers 0x3-0x3. -6
E tlv320aic3x-codec 2-0018: ASoC: error at soc_component_write_no_lock on tlv320aic3x-codec.2-0018: -6
E tlv320aic3x-codec 2-0018: ASoC: error at soc_component_write_no_lock on tlv320aic3x-codec.2-0018: -6
E tlv320aic3x-codec 2-0018: Unable to sync registers 0x3-0x3. -6
E tlv320aic3x-codec 2-0018: ASoC: error at soc_component_write_no_lock on tlv320aic3x-codec.2-0018: -6
E tlv320aic3x-codec 2-0018: ASoC: error at soc_component_write_no_lock on tlv320aic3x-codec.2-0018: -6
Latest LOGS:
[ 75.803029] i2c i2c-2: Divyesh <i2c_imx_xfer_common>
[ 75.808085] i2c i2c-2: Divyesh <i2c_imx_start>
[ 75.812859] i2c i2c-2: Divyesh <i2c_imx_xfer_common> transfer message: 0
[ 75.819683] i2c i2c-2: Divyesh <i2c_imx_write> write slave address: addr=0x30
[ 75.826995] i2c i2c-2: Divyesh <i2c_imx_trx_complete> TRX complete
[ 75.833236] i2c i2c-2: Divyesh <i2c_imx_acked> No ACK
[ 75.838413] i2c i2c-2: Divyesh <i2c_imx_xfer_common> exit with: error: -6
[ 75.845333] tlv320aic3x-codec 2-0018: ASoC: error at snd_soc_component_update_bits on tlv320aic3x-codec.2-0018: -6
[ 75.855766] i2c i2c-2: Divyesh <i2c_imx_xfer_common>
[ 75.860781] i2c i2c-2: Divyesh <i2c_imx_start>
[ 75.865489] i2c i2c-2: Divyesh <i2c_imx_xfer_common> transfer message: 0
[ 75.872335] i2c i2c-2: Divyesh <i2c_imx_write> write slave address: addr=0x30
[ 75.879741] i2c i2c-2: Divyesh <i2c_imx_trx_complete> TRX complete
[ 75.885980] i2c i2c-2: Divyesh <i2c_imx_acked> No ACK
[ 75.891086] i2c i2c-2: Divyesh <i2c_imx_xfer_common> exit with: error: -6
[ 75.897933] tlv320aic3x-codec 2-0018: ASoC: error at snd_soc_component_update_bits on tlv320aic3x-codec.2-0018: -6
Please check Image and Boot logs:
TAG to search in txt file: divyeh ,tlv320aic.
I think master IMX8MMEVK is not able to communicate with slave address 00011000 (0x18).
Question is: If we are using TLV320AIC3104EVM Board only then what are the changes needed.
Currently We are giving MCLK,BCLK,WCLK,DIN,DOUT,SCL,SDL and 5V to TLV320AIC3104EVM board. In order to set slave address 0x18 ,do we need to make any configurations?
Could you please explain what other changes need to be done.
NOTE: TRIED WITH 1B slave address.
Hi Divyesh
>I think master IMX8MMEVK is not able to communicate with slave address 00011000 (0x18).
>Question is: If we are using TLV320AIC3104EVM Board only then what are the changes needed.
one can look at sect.4.2 Interface Selection TLV320AIC3104EVM User Guide
TLV320AIC3104EVM-PDK User's Guide
Best regards
igor
Hi,
Section 4.2 has GUI related changes.
We are not using any software for testing.
We have direct connection to imx8mm evk board.
Note: Not using USB MODEMV board for aic3104evm.
may be suggested to apply to tech support vendor of that board:
Best regards
igor