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.

AM3358: No signal on McASP pins

Genius 13655 points
Part Number: AM3358

Hello Champs,

Customer configured McASP to I2S, but the pins are always 0v, no signal outupts.

Below are the circuit, dts and log.



mcasp0_pins: mcasp0_pins {
pinctrl-single,pins = <
0x1ac (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* rmii1_ref_clk.mcasp0_ahclkx */
0x190 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_crs.mcasp0_aclkx */
0x194 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_rxerr.mcasp0_fsx */
0x198 (PIN_OUTPUT_PULLDOWN | MUX_MODE0) /* mii1_col.mcasp0_axr0 */
0x1a8 (PIN_INPUT_PULLDOWN | MUX_MODE0) /* rmii1_ref_clk.mcasp0_axr1 */
>;
};

mcasp0_pins_sleep: mcasp0_pins_sleep {
pinctrl-single,pins = <
0x1ac (PIN_OUTPUT_PULLDOWN | MUX_MODE0)
0x190 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)
0x194 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)
0x198 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)
0x1a8 (PIN_OUTPUT_PULLDOWN | MUX_MODE0)
>;
};

&mcasp0 {
pinctrl-names = "default", "sleep";
pinctrl-0 = <&mcasp0_pins>;
pinctrl-1 = <&mcasp0_pins_sleep>;

fsl,mode = "i2s-slave";

status = "okay";

op-mode = <0>; /* MCASP_IIS_MODE */

tdm-slots = <2>;

/* 4 serializers */
serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */

1 2 0 0
>;
tx-num-evt = <32>;
rx-num-evt = <32>;
};

sound {
compatible = "fsl,imx-audio-sgtl5000";
ti,model = "AM335x-EVMSK";
ti,audio-codec = <&sgtl5000>;
ti,mcasp-controller = <&mcasp0>;
ti,codec-clock-rate = <24000000>;
ti,audio-routing =
"Mic Jack", "MIC3L";
};

clocks{
clk_24M: codec_clock {
compatible = "fixed-clock";
#clock-cells = <0>;
clock-frequency = <24000000>;
};

sgtl5000: sgtl5000@12{
compatible = "fsl,sgtl5000";
reg = <0x12>;
clocks = <&clk_24M>;
VDDA-supply = <&vaux2_reg>;
VDDIO-supply = <&vaux2_reg>;
VDDD-supply = <&vbat>;

};


root@localhost:~#cat /sys/kernel/debug/pinctrl/44e10800.pinmux/pin
pin 100 (44e10990.0): 48038000.mcasp (GPIO UNCLAIMED) function mcasp0_pins group mcasp0_pins
pin 101 (44e10994.0): 48038000.mcasp (GPIO UNCLAIMED) function mcasp0_pins group mcasp0_pins
pin 102 (44e10998.0): 48038000.mcasp (GPIO UNCLAIMED) function mcasp0_pins group mcasp0_pins
pin 103 (44e1099c.0): 48304100.ecap (GPIO UNCLAIMED) function backlight_pins group backlight_pins
pin 104 (44e109a0.0): 48060000.mmc (GPIO UNCLAIMED) function pinmux_mmc1_pins_sleep group pinmux_mmc1_pins_sleep
pin 105 (44e109a4.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 106 (44e109a8.0): 48038000.mcasp (GPIO UNCLAIMED) function mcasp0_pins group mcasp0_pins
pin 107 (44e109ac.0): 48038000.mcasp (GPIO UNCLAIMED) function mcasp0_pins group mcasp0_pins
pin 108 (44e109b0.0): (MUX UNCLAIMED) (GPIO UNCLAIMED)
pin 109 (44e109b4.0): 44e10800.pinmux (GPIO UNCLAIMED) function pinmux_clkout2_pin group pinmux_clkout2_pin
10800.pinmux/pinmux-pins
.............................................................................................

[ 2.138967] davinci_evm sound: sgtl5000 <-> 48038000.mcasp mapping ok
[ 2.147982] cpu cpu0: of_pm_voltdm_notifier_register: Fail calculating voltage latency[950000<->1260000]:-22
[ 2.159191] pinctrl-single 44e10800.pinmux: pin 44e10920.0 already requested by 48038000.mcasp; cannot claim for 4a100000.ethernet
[ 2.171064] pinctrl-single 44e10800.pinmux: pin-72 (4a100000.ethernet) status -22
[ 2.178598] pinctrl-single 44e10800.pinmux: could not request pin 72 (44e10920.0) from group cpsw_default on device pinctrl-single
[ 2.190503] cpsw 4a100000.ethernet: Error applying setting, reverse things back
[ 2.261758] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6
[ 2.267892] davinci_mdio 4a101000.mdio: no live phy, scanning all
[ 2.274463] davinci_mdio: probe of 4a101000.mdio failed with error -5
[ 2.281983] cpsw 4a100000.ethernet: Detected MACID = 10:08:2c:09:c8:61
[ 2.303192] cpsw 4a100000.ethernet: cpsw: Detected MACID = 10:08:2c:09:c8:63
[ 2.311824] omap_rtc 44e3e000.rtc: setting system clock to 2000-01-01 02:12:54 UTC (946692774)
[ 2.323677] ALSA device list:
[ 2.326681] #0: AM335x-EVMSK
[ 2.365429] kjournald starting. Commit interval 5 seconds
[ 2.372372] EXT3-fs (mmcblk0p2): using internal journal
[ 2.378912] EXT3-fs (mmcblk0p2): recovery complete
[ 2.383760] EXT3-fs (mmcblk0p2): mounted filesystem with ordered data mode
[ 2.390728] VFS: Mounted root (ext3 filesystem) on device 179:2.
[ 2.398507] devtmpfs: mounted
[ 2.401921] Freeing unused kernel memory: 256K (c083a000 - c087a000)
Mount failed for selinuxfs on /sys/fs/selinux: No such file or directory
[ 2.584363] random: init urandom read with 53 bits of entropy available
[ 2.824691] init: plymouth-upstart-bridge main process (816) terminated with status 1
[ 2.857318] init: plymouth-upstart-bridge main process ended, respawning
[ 2.964255] init: plymouth-upstart-bridge main process (827) terminated with status 1
[ 2.978178] init: plymouth-upstart-bridge main process ended, respawning
[ 2.994205] init: ureadahead main process (819) terminated with status 5
[ 3.065553] init: plymouth-upstart-bridge main process (832) terminated with status 1
[ 3.078675] init: plymouth-upstart-bridge main process ended, respawning

Ubuntu 14.04.6 LTS localhost.localdomain ttyS0

Thanks.
Rgds
Shine