ASoC: change set_tdm_slot api to allow slot_width override.
Extend set_tdm_slot to allow the user to arbitrarily set the frame width and active TX/RX slots. Updates magician.c and wm9081.c for the new set_tdm_slot(). wm9081.c still doesn't handle the slot_width override. While being there, correct an incorrect use of SlotsPerFrm(7) use in bitmask on pxa-ssp.c (SSCR0_SlotsPerFrm(x) is (((x) - 1) << 24)) ). (this series is meant for Mark's for-2.6.32 branch) Signed-off-by: Daniel Ribeiro <drwyrm@gmail.com> Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
This commit is contained in:
committed by
Mark Brown
parent
9029bb316b
commit
a5479e389e
@ -1214,8 +1214,9 @@ static int wm9081_set_sysclk(struct snd_soc_dai *codec_dai,
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* FIXME: Needs to handle slot_width */
|
||||
static int wm9081_set_tdm_slot(struct snd_soc_dai *dai,
|
||||
unsigned int mask, int slots)
|
||||
unsigned int tx_mask, unsigned int rx_mask, int slots, int slot_width)
|
||||
{
|
||||
struct snd_soc_codec *codec = dai->codec;
|
||||
unsigned int aif1 = wm9081_read(codec, WM9081_AUDIO_INTERFACE_1);
|
||||
@ -1227,7 +1228,7 @@ static int wm9081_set_tdm_slot(struct snd_soc_dai *dai,
|
||||
|
||||
aif1 |= (slots - 1) << WM9081_AIFDAC_TDM_MODE_SHIFT;
|
||||
|
||||
switch (mask) {
|
||||
switch (rx_mask) {
|
||||
case 1:
|
||||
break;
|
||||
case 2:
|
||||
|
Reference in New Issue
Block a user