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.

Reply via email to