[alsa-devel] [PATCH v3] davinci-mcasp: Add support for multichannel playback
michal.bachraty at streamunlimited.com
Fri Mar 1 15:42:07 CET 2013
Thanks for testing.
> One thing that has to be considered by users of the driver is that the
> 'serial-dir' DT property has to contain enough '1' entries for
> multichannel playback (or enough '2's for multichannel record). So this
> information is not actually something that describes the hardware, but
> rather some resource that can be and should be allocated dynamically by
> the driver at run-time. Should we consider dropping this property?
Not really, ' serial-dir' also configures specific serializer binded with
certain AXR pin . That means, when you have harware, which do not have aviable
AXR0, you can enable other ARX pin.
serial-dir = < 1 0 0 0 >; /* 0: INACTIVE, 1: TX, 2: RX */
// activate serializer 0, active pin ARX0 in Transmit mode, first audio
// channels are played on ARX0 pin
serial-dir = < 0 1 1 2 >; /* 0: INACTIVE, 1: TX, 2: RX */
// activate serializer 1,2,3 active pin ARX1 in TX mode, ARX2, in TX mode,
// ARX3 in RX mode
In this case, if you are using TDM mode with 2 slots, first two channels will
be played on ARX1 and second two on ARX2.
McAsp fills data for serializers in loop (receive and playback has separate
loop), so if you have configuration:
serial-dir = < 1 2 0 1 >; /* 0: INACTIVE, 1: TX, 2: RX */
// first two channels are played on ARX0 pin, and second two on ARX3
More information about the Alsa-devel