summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 6504d74)
raw | patch | inline | side by side (parent: 6504d74)
author | Peeyush Gupta <a0875211@ti.com> | |
Fri, 29 May 2020 09:23:04 +0000 (14:53 +0530) | ||
committer | Peeyush Gupta <a0875211@ti.com> | |
Fri, 29 May 2020 09:23:04 +0000 (14:53 +0530) |
tas2562-codec.c | patch | blob | history |
diff --git a/tas2562-codec.c b/tas2562-codec.c
index 53035fec6987ee9e1b0d26059ab0a40c05f3f8f8..c8e83540d54b30a55f78cb4dd0265e2cddbb7b10 100644 (file)
--- a/tas2562-codec.c
+++ b/tas2562-codec.c
TAS2562_INTERRUPTCONFIGURATION,
TAS2562_INTERRUPTCONFIGURATION_LTCHINTCLEAR_MASK,
TAS2562_INTERRUPTCONFIGURATION_LTCHINTCLEAR);
-
+ msleep(50);
/*Power up sequence*/
n_result = p_tas2562->update_bits(p_tas2562,
chn, TAS2562_POWERCONTROL,
if(p_tas2562->mn_tdm_mode)
p_tas2562->mn_asi_format = SND_SOC_DAIFMT_CBS_CFS
| SND_SOC_DAIFMT_IB_NF
- | SND_SOC_DAIFMT_DSP_B;
+ | SND_SOC_DAIFMT_DSP_A;
else
p_tas2562->mn_asi_format = SND_SOC_DAIFMT_CBS_CFS
| SND_SOC_DAIFMT_IB_NF
n_result = p_tas2562->write(p_tas2562, channel_both,
TAS2562_INTERRUPTMASKREG1,
TAS2562_INTERRUPTMASKREG1_DISABLE);
-
+ msleep(50);
/*Power up sequence*/
n_result = p_tas2562->update_bits(p_tas2562,
chn, TAS2562_POWERCONTROL,
ret = -EINVAL;
}
+ dev_err(p_tas2562->dev, " %s:fmt 0x%x\n", __func__, fmt);
switch (fmt & SND_SOC_DAIFMT_INV_MASK) {
case SND_SOC_DAIFMT_NB_NF:
dev_info(p_tas2562->dev, "INV format: NBNF\n");
switch (fmt & SND_SOC_DAIFMT_FORMAT_MASK) {
case (SND_SOC_DAIFMT_I2S):
tdm_rx_start_slot = 1;
+ dev_err(p_tas2562->dev, " SND_SOC_DAIFMT_I2S tdm_rx_start_slot = 1\n");
break;
case (SND_SOC_DAIFMT_DSP_A):
tdm_rx_start_slot = 1;
+ dev_err(p_tas2562->dev, "SND_SOC_DAIFMT_DSP_A tdm_rx_start_slot =1\n");
break;
case (SND_SOC_DAIFMT_DSP_B):
tdm_rx_start_slot = 0;
+ dev_err(p_tas2562->dev, "SND_SOC_DAIFMT_DSP_B tdm_rx_start_slot = 0\n");
break;
case (SND_SOC_DAIFMT_LEFT_J):
tdm_rx_start_slot = 0;
+ dev_err(p_tas2562->dev, "SND_SOC_DAIFMT_LEFT_J tdm_rx_start_slot = 0\n");
break;
default:
dev_err(p_tas2562->dev, "DAI Format is not found, fmt=0x%x\n", fmt);
{
int ret = -1;
- if ((p_tas2562->mn_slot_width != 16) ||
- (p_tas2562->mn_slot_width != 24) ||
- (p_tas2562->mn_slot_width != 32)) {
+ if ((slot_width != 16) &&
+ (slot_width != 24) &&
+ (slot_width != 32)) {
dev_err(p_tas2562->dev, "Unspoorted slotwidth %d\n", slot_width);
return ret;
}
ret = p_tas2562->update_bits(p_tas2562, channel_both,
TAS2562_TDMCONFIGURATIONREG2,
TAS2562_TDMCONFIGURATIONREG2_RXWLEN32_MASK,
- TAS2562_TDMCONFIGURATIONREG2_RXWLEN32_32BITS);
+ TAS2562_TDMCONFIGURATIONREG2_RXWLEN32_24BITS);
p_tas2562->mn_ch_size = 32;
break;
default:
{
int ret = -1;
- if ((p_tas2562->mn_slot_width != 16) ||
- (p_tas2562->mn_slot_width != 24) ||
- (p_tas2562->mn_slot_width != 32)) {
+ if ((slot_width != 16) &&
+ (slot_width != 24) &&
+ (slot_width != 32)) {
dev_err(p_tas2562->dev, "Unspoorted slotwidth %d\n", slot_width);
return ret;
}
.id = 0,
.playback = {
.stream_name = "ASI1 Playback",
- .channels_min = 2,
- .channels_max = 2,
+ .channels_min = 1,
+ .channels_max = 8,
.rates = SNDRV_PCM_RATE_8000_192000,
.formats = TAS2562_FORMATS,
},
.capture = {
.stream_name = "ASI1 Capture",
- .channels_min = 0,
- .channels_max = 2,
+ .channels_min = 1,
+ .channels_max = 8,
.rates = SNDRV_PCM_RATE_8000_192000,
.formats = TAS2562_FORMATS,
},
TAS2562_POWERCONTROL_OPERATIONALMODE10_MASK,
TAS2562_POWERCONTROL_OPERATIONALMODE10_MUTE);
} else {
+ msleep(50);
n_result = p_tas2562->update_bits(p_tas2562, chn,
TAS2562_POWERCONTROL,
TAS2562_POWERCONTROL_OPERATIONALMODE10_MASK,