For some reason we need to have the serializer the complete opposite of yours!
For example you had: serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 1 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 We needed to use: serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 2 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 But perhaps its because above that we also had different settings: you had (that 8 must be a typo): 0x1ac 0x20 /* mcasp0_ahclkx, INPUT | MODE0 */ 0x19c 0x22 /* mcasp0_axr2, INPUT | MODE2 */ 0x194 0x20 /* mcasp0_fsx, INPUT | MODE0 */ 0x198 0x08 /* mcasp0_axr0, OUTPUT | MODE0 */ 0x190 0x20 /* mcasp0_aclkx, INPUT | MODE0 */ We used (which worked): 0x1ac 0x00 /* mcasp0_ahclkx, OUTPUT | MODE0 */ 0x19c 0x22 /* mcasp0_axr2, INPUT | MODE2 */ 0x194 0x20 /* mcasp0_fsx, INPUT | MODE0 */ 0x198 0x20 /* mcasp0_axr0, INPUT | MODE0 */ 0x190 0x20 /* mcasp0_aclkx, INPUT | MODE0 */ That said we are off the AudioCape now with the extra pins and using an XMOS based USB Streamer ADC/DAC for I2S testing back and forth and it is working fantastic! Here are the final values we used for AXR0-3, 4 I2S lines, 4 channels in, 4 channels out (and attached the file) We have only tested 2 channels in and 4 out however. /* * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com/ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ /dts-v1/; /plugin/; / { compatible = "ti,beaglebone", "ti,beaglebone-black"; /* identification */ part-number = "BB-BONE-AUDI-04"; version = "00A0", "A0"; /* state the resources this cape uses */ exclusive-use = /* the pin header uses */ "P9.25", /* mcasp0: mcasp0_ahclkx */ "P9.29", /* mcasp0: mcasp0_fsx */ "P9.31", /* mcasp0: mcasp0_aclkx */ "P9.30", /* mcasp0: mcasp0_axr0 */ "P9.41", /* mcasp0: mcasp0_axr1 */ "P9.28", /* mcasp0: mcasp0_axr2 */ "P9.27", /* mcasp0: mcasp0_axr3 */ /* the hardware ip uses */ "mcasp0"; fragment@0 { target = <&am33xx_pinmux>; __overlay__ { i2c2_pins: pinmux_i2c2_pins { pinctrl-single,pins = < 0x150 0x72 /*spi0_scl.i2c2_sda,SLEWCTRL_SLOW | INPUT_PULLUP |MODE2*/ 0x154 0x72 /*spi0_d0.i2c2_scl,SLEWCTRL_SLOW | INPUT_PULLUP | MODE2*/ >; }; bone_audio_cape_audio_pins: pinmux_bone_audio_cape_audio_pins { pinctrl-single,pins = < 0x1ac 0x00 /* mcasp0_ahclkx, OUTPUT | MODE0 */ 0x194 0x20 /* mcasp0_fsx, INPUT | MODE0 */ 0x190 0x20 /* mcasp0_aclkx, INPUT | MODE0 */ 0x198 0x20 /* mcasp0_axr0, INPUT | MODE0 */ 0x1a8 0x20 /* mcasp0_axr1, INPUT | MODE0 */ 0x19c 0x22 /* mcasp0_axr2, INPUT | MODE2 */ 0x1a4 0x22 /* mcasp0_axr3, INPUT | MODE2 */ >; }; }; }; fragment@1 { target = <&i2c2>; __overlay__ { #address-cells = <1>; #size-cells = <0>; clock-frequency = <100000>; status = "okay"; pinctrl-names = "default"; pinctrl-0 = <&i2c2_pins>; tlv320aic3x: tlv320aic3x@18 { compatible = "ti,tlv320aic3x"; reg = <0x18>; status = "okay"; }; }; }; fragment@2 { target = <&mcasp0>; __overlay__ { pinctrl-names = "default"; pinctrl-0 = <&bone_audio_cape_audio_pins>; status = "okay"; op-mode = <0>; /* MCASP_IIS_MODE */ tdm-slots = <2>; num-serializer = <16>; serial-dir = < /* 0: INACTIVE, 1: TX, 2: RX */ 2 2 1 1 0 0 0 0 0 0 0 0 0 0 0 0 >; tx-num-evt = <1>; rx-num-evt = <1>; }; }; fragment@3 { target = <&ocp>; __overlay__ { sound { compatible = "ti,da830-evm-audio"; ti,model = "DA830 EVM"; ti,audio-codec = <&tlv320aic3x>; ti,mcasp-controller = <&mcasp0>; ti,codec-clock-rate = <12000000>; ti,audio-routing = "Headphone Jack", "HPLOUT", "Headphone Jack", "HPROUT", "LINE1L", "Line In", "LINE1R", "Line In"; }; }; }; }; -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
