From ac9d8521c394dac1dc050674d74599c497377a8f Mon Sep 17 00:00:00 2001 From: Chris Fries Date: Wed, 20 Oct 2010 13:08:29 -0500 Subject: [PATCH] [ARM]: tegra: stingray: Use CPCAP CODEC in Network (PCM) mode Change the data format for I2S2 to be DSP mode, to support mono capture from the microphone. Signed-off-by: Iliyan Malchev --- arch/arm/mach-tegra/board-stingray.c | 12 +++--------- 1 file changed, 3 insertions(+), 9 deletions(-) diff --git a/arch/arm/mach-tegra/board-stingray.c b/arch/arm/mach-tegra/board-stingray.c index 064efbe4929f..acee60bc6eaa 100644 --- a/arch/arm/mach-tegra/board-stingray.c +++ b/arch/arm/mach-tegra/board-stingray.c @@ -288,17 +288,11 @@ static struct tegra_audio_platform_data tegra_audio2_pdata = { .i2s_clk_rate = 240000000, .dap_clk = "clk_dev1", .audio_sync_clk = "audio_2x", - .mode = I2S_BIT_FORMAT_I2S, - /* TODO: Figure out how to capture data without left/right swaps, - * or capture mono. - * nVidia reports packed 16 bit I2S capture isn't working right. - * Check for Bluetooth SCO impact before changing. - * Also change I2S bus width to match. - */ + .mode = I2S_BIT_FORMAT_DSP, /* Using COCEC in network mode */ .fifo_fmt = I2S_FIFO_16_LSB, .bit_size = I2S_BIT_SIZE_16, - .i2s_bus_width = 16, /* Using 16 bit LSB format data, the dma is 16 bit. */ - .dsp_bus_width = 16, /* When using DSP mode, this should be 16 bit. */ + .i2s_bus_width = 16, /* Capturing a single timeslot, mono 16 bits */ + .dsp_bus_width = 16, }; static char *usb_functions_mtp[] = { "mtp" }; -- 2.34.1