diff mbox

To avoid the divide by zero error during the first execution, initialize the data type.

Message ID 1252527563-15074-1-git-send-email-avm@ti.com (mailing list archive)
State Rejected
Headers show

Commit Message

Mani, Arun Sept. 9, 2009, 8:19 p.m. UTC
From: Arun Mani <a0270733@gtcx26221.gt.design.ti.com>

Signed-off-by: Arun Mani <a0270733@gtcx26221.gt.design.ti.com>
---
 sound/soc/davinci/davinci-i2s.c |    2 ++
 1 files changed, 2 insertions(+), 0 deletions(-)

Comments

Troy Kisky Sept. 9, 2009, 8:47 p.m. UTC | #1
avm@ti.com wrote:
> From: Arun Mani <a0270733@gtcx26221.gt.design.ti.com>
> 
> Signed-off-by: Arun Mani <a0270733@gtcx26221.gt.design.ti.com>
> ---
>  sound/soc/davinci/davinci-i2s.c |    2 ++
>  1 files changed, 2 insertions(+), 0 deletions(-)
> 
> diff --git a/sound/soc/davinci/davinci-i2s.c b/sound/soc/davinci/davinci-i2s.c
> index b1ea52f..61b1763 100644
> --- a/sound/soc/davinci/davinci-i2s.c
> +++ b/sound/soc/davinci/davinci-i2s.c
> @@ -104,10 +104,12 @@ enum {
>  
>  static struct davinci_pcm_dma_params davinci_i2s_pcm_out = {
>  	.name = "I2S PCM Stereo out",
> +	.data_type = 2, //Initialize the data type for playback to avoid divide by zero

You should have ".acnt = 2" also for consistency.
>  };
>  
>  static struct davinci_pcm_dma_params davinci_i2s_pcm_in = {
>  	.name = "I2S PCM Stereo in",
> +	.data_type = 2, //Initialize the data type for playback to avoid divide by zero
>  };
>  
>  struct davinci_mcbsp_dev {

And if the 1st stream is an 8-bit audio stream, will it initialize it incorrectly ???
Of course, we have formats = SNDRV_PCM_FMTBIT_S16_LE, currently so it's not an issue yet...

I don't see how data_type is not being set in davinci_i2s_hw_params
before being used in davinci_pcm_prepare.

Can prepare be called before hw_params ?

There is a "return -EINVAL" in davinci_i2s_hw_params with a
"printk(KERN_WARNING "davinci-i2s: unsupported PCM format\n")" before it.

Do you see this message in your log ?


Thanks
Troy
diff mbox

Patch

diff --git a/sound/soc/davinci/davinci-i2s.c b/sound/soc/davinci/davinci-i2s.c
index b1ea52f..61b1763 100644
--- a/sound/soc/davinci/davinci-i2s.c
+++ b/sound/soc/davinci/davinci-i2s.c
@@ -104,10 +104,12 @@  enum {
 
 static struct davinci_pcm_dma_params davinci_i2s_pcm_out = {
 	.name = "I2S PCM Stereo out",
+	.data_type = 2, //Initialize the data type for playback to avoid divide by zero
 };
 
 static struct davinci_pcm_dma_params davinci_i2s_pcm_in = {
 	.name = "I2S PCM Stereo in",
+	.data_type = 2, //Initialize the data type for playback to avoid divide by zero
 };
 
 struct davinci_mcbsp_dev {