[alsa-devel] Adding channels on multicodec soundcard
Steven Wawryk
stevenw at acres.com.au
Fri Jan 15 06:53:17 CET 2016
Hi,
I'm trying to write an ALSA soundcard driver module for an embedded
Zynq-based system with 4 Cirrus CS42448 codecs. Each codec has 6 analog
output channels and I'd like the "soundcard" to have 24 channels (6 to
each codec). I've been having trouble getting it to do this. The
hw_params for the codec, card and "I2S" IP core drivers all get the same
parameters, including number of channels.
When I define 4 snd_soc_dai_link's, each with 1 codec, then 4 "devices"
are set up for the card and I can access 6 channels on 1 codec (1
"device") at a time. When I define 1 snd_soc_dai_link with 4 codecs
then 1 "device" is set up and I can still only access 6 channels, but it
appears to use all 4 codecs (somehow - I haven't yet worked out the
channel allocation). I can't seem to get 24 channels to the card,
splitting into 6 channels to each of the codecs.
Can anyone suggest how I should be going about this?
The linux kernel is 3.17 from PetaLinux (Xilinx).
Cheers,
Steve
More information about the Alsa-devel
mailing list