IOMUX Configuration for SAI

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

IOMUX Configuration for SAI

Jump to solution
948 Views
paul_katarzis
Contributor III

I am working on a custom board equipped with an i.MX8 QXP. The lines SAI1_TXFS, SAI1_TXC, SAI1_RXD, and SAI1_TXD are connected to an audio codec. The only thing between the i.MX8 and the audio codec on each line are series resistors with values of 22 ohm or 0 ohms. In particular, on the SAI1_TXFS line, there is a 22 ohm resistor near the i.MX8 and a 0 ohm resistor near the audio codec. When I use a scope to measure the frame sync signal on the side of the 22 ohm resistor connected directly to the i.MX8 I see a maximum voltage of about 3.3 V as expected. However, on the other side of the 22 ohm resistor the maximum voltage is about 0.8 V. This seems to indicate that there is a large amount of current on this line. I actually see something similar on all SAI1 lines.

My device tree includes fsl-imx8qxp.dtsi and adds the following:

pinctrl_sai1: sai1grp {
fsl,pins = <
SC_P_FLEXCAN0_TX_ADMA_SAI1_TXFS 0x06000060
SC_P_FLEXCAN0_RX_ADMA_SAI1_TXC 0x06000060
SC_P_FLEXCAN1_TX_ADMA_SAI1_RXD 0x06000060
SC_P_FLEXCAN1_RX_ADMA_SAI1_TXD 0x06000060
>;
};

&sai1 {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_sai1>;

status = "okay";
};

The sai1grp node is defined within the iomuxc node. Could my pinctrl configuration be causing this issue?

Tags (3)
0 Kudos
1 Solution
885 Views
paul_katarzis
Contributor III

The issue has been resolved. The following statement I made was an error:

"The only thing between the i.MX8 and the audio codec on each line are series resistors with values of 22 ohm or 0 ohms."

There were some level shifter chips connected to the lines that I believed were disabled, but they were not. Now that they are properly removed from the lines, everything works as expected. However, it would still be interesting to know if the pinctrl configurations I am using are reasonable. I see on the i.MX8 QXP MEK board that all lines for SAI 1 except TXD use the configuration value 0x06000040.

View solution in original post

0 Kudos
1 Reply
886 Views
paul_katarzis
Contributor III

The issue has been resolved. The following statement I made was an error:

"The only thing between the i.MX8 and the audio codec on each line are series resistors with values of 22 ohm or 0 ohms."

There were some level shifter chips connected to the lines that I believed were disabled, but they were not. Now that they are properly removed from the lines, everything works as expected. However, it would still be interesting to know if the pinctrl configurations I am using are reasonable. I see on the i.MX8 QXP MEK board that all lines for SAI 1 except TXD use the configuration value 0x06000040.

0 Kudos