Integrating TLV320AIC31 through McBSP

Hi,

I am currently working on a integration of a TLV320AIC31 codec with
Beagleboard through the McBSP interface. The pinmux interconnections
are mapped as following:

BCLK -> McBSP3_CLKX
WCLK -> McBSP3_FSX
DOUT -> McBSP3_DR
DIN <- McBSP3_DX

So this part should be solved. I've also modified the sound/soc/omap/
omap3beagle.c for correct ASoC glueing for the TLV320AIC31 codec
(which is in the kernel already). Although I am not sure about what
should be done in the arch/arm/mach-omap2/board-omap3beagle.c file, it
contains the following structs for the audio data handling (which is
orginially written for the integrated TWL4030/TPS69590 codec):

static struct twl4030_codec_audio_data beagle_audio_data;

static struct twl4030_codec_data beagle_codec_data = {
  .audio_mclk = 26000000,
  .audio = &beagle_audio_data,
};

I have searched through the architecture files that uses the TLV codec
by default (board-n8x0.c etc) and I have difficulties to make the
translation for my TLV codec in the omap3beagle.c file. I see that the
N810 uses a aic3x_pdata with .gpio_reset and setup_data and I'm not
sure how to make this on the beagle (if needed?). If someone could
come with some clarifying information on how it should be done I would
be very grateful.

Thanks in advance!

Regards
Juha

Are you sure this is correct? My understanding was that the CLKX and
FSX pins were outputs. If you want the codec to be a master and drive
the McBSP clock inputs then you'll want to connect to the CLKR and FSR
input pins. These are only available on the expansion connector for
McBSP1.

Eric

Thanks, totally missed that when reading the OMAP3530 TRM, think I
need to make some changes then.

Does anyone have any ideas on what changes needs to be done in linux/
arch/arm/mach-omap2/board-omap3beagle.c for the TLV320AIC31 through
McBSP? I'm still quite lost here.

Juha