[alsa-devel] McBSP in TDM for audio codec
Hi All,
I have to support 4 channels in I2S format in TDM mode. Processor: OMAP 3703
If any one have any idea on how to go about this. Please let me know.
Thanks, learnom
Hi,
On 06/05/2012 02:37 AM, learnom learnom wrote:
Hi All,
I have to support 4 channels in I2S format in TDM mode. Processor: OMAP 3703
If any one have any idea on how to go about this. Please let me know.
The McBSP driver currently supports TDM mode (DSP mode) up to 16 channels. It should work out of box. Take a look at the following drivers: sound/soc/omap/omap-mcbsp.c sound/soc/codecs/twl4030.c sound/soc/omap/omap3beagle.c
for reference. The Beagle have twl4030 codec and it is possible to use playback with 4 channels.
Hi Peter, Thanks for the information. I was able to setup for multiple channel(by setting up xcera register). Iam able to get proper frame synchronization clock and the data is transmitted on channel0 in A partition(block0).
I want to control these channel0, 1, 2, 3 independently. For example, lets say, 1) If I want to transmit the data in channel 1 only, i want to see the channel0 null, channel1 with data, channel 2 null, channel 3 null.
2)I want to transmit data at the same time, channel 1 (data) , channel2 (Data), channel3 data, channel(data).
Can you please let me know how to recognize that the user is sending from which channel, and how to setup for these two scenarios. Thanks, learnom
On Tue, Jun 5, 2012 at 5:52 AM, Peter Ujfalusi peter.ujfalusi@ti.comwrote:
Hi,
On 06/05/2012 02:37 AM, learnom learnom wrote:
Hi All,
I have to support 4 channels in I2S format in TDM mode. Processor: OMAP 3703
If any one have any idea on how to go about this. Please let me know.
The McBSP driver currently supports TDM mode (DSP mode) up to 16 channels. It should work out of box. Take a look at the following drivers: sound/soc/omap/omap-mcbsp.c sound/soc/codecs/twl4030.c sound/soc/omap/omap3beagle.c
for reference. The Beagle have twl4030 codec and it is possible to use playback with 4 channels.
-- Péter
Hi,
On 06/06/2012 04:56 AM, learnom learnom wrote:
I want to control these channel0, 1, 2, 3 independently. For example, lets say,
- If I want to transmit the data in channel 1 only, i want to see the
channel0 null, channel1 with data, channel 2 null, channel 3 null.
2)I want to transmit data at the same time, channel 1 (data) , channel2 (Data), channel3 data, channel(data).
Can you please let me know how to recognize that the user is sending from which channel, and how to setup for these two scenarios.
User space need to make sure that it is placing the data to the correct channel. The McBSP/sDMA just see a stream of data in a memory. McBSP do have TDM mode where you can have limited control over how the channels are handled, but it still handle the data as stream and you can only tell which slot it should use and which one to ignore. This TDM programming mode is not implemented since we did not needed it so far and without a codec it is kind of hard to test it (well, with a scope the channels can bee observed but that would be all).
participants (2)
-
learnom learnom
-
Peter Ujfalusi