diff mbox

ARM: DaVinci: Add or modify AIC3x I2C board info

Message ID 1251302901-27574-1-git-send-email-chaithrika@ti.com (mailing list archive)
State Superseded
Headers show

Commit Message

chaithrika@ti.com Aug. 26, 2009, 4:08 p.m. UTC
This patch includes the codec I2C board info for DM6446 EVM
and DM355 EVM. Also, it corrects the codec names in DA8xx/OMAP-L1xx
board files.

Tested on DM6446, DM355, DM6447, DA850 EVMs.

Signed-off-by: Chaithrika U S <chaithrika@ti.com>
---
Applies to temp/asoc branch of DaVinci GIT tree.

 arch/arm/mach-davinci/board-da830-evm.c  |    2 +-
 arch/arm/mach-davinci/board-da850-evm.c  |    2 +-
 arch/arm/mach-davinci/board-dm355-evm.c  |    2 +-
 arch/arm/mach-davinci/board-dm644x-evm.c |    4 +++-
 4 files changed, 6 insertions(+), 4 deletions(-)

Comments

J.C. Wren Aug. 28, 2009, 2:52 a.m. UTC | #1
This patch seems to break audio on a Davinci 6446 EVM.
-rc7--->

Advanced Linux Sound Architecture Driver Version 1.0.20.
No device for DAI tlv320aic3x
No device for DAI davinci-i2s
AIC3X Audio Codec 0.2
i2c-adapter i2c-1: Failed to register i2c client tlv320aic3x at 0x1b (-16)
soc-audio soc-audio.0: can't add i2c device at 0x1b
ALSA device list:
  No soundcards found.
TCP cubic registered

It was working under -rc5 --->

Advanced Linux Sound Architecture Driver Version 1.0.20.
No device for DAI tlv320aic3x
No device for DAI davinci-i2s
AIC3X Audio Codec 0.2
asoc: tlv320aic3x <-> davinci-i2s mapping ok
ALSA device list:
  #0: DaVinci EVM (tlv320aic3x)
TCP cubic registered

--jc

On Wed, Aug 26, 2009 at 12:08 PM, Chaithrika U S <chaithrika@ti.com> wrote:

> This patch includes the codec I2C board info for DM6446 EVM
> and DM355 EVM. Also, it corrects the codec names in DA8xx/OMAP-L1xx
> board files.
>
> Tested on DM6446, DM355, DM6447, DA850 EVMs.
>
> Signed-off-by: Chaithrika U S <chaithrika@ti.com>
> ---
> Applies to temp/asoc branch of DaVinci GIT tree.
>
>  arch/arm/mach-davinci/board-da830-evm.c  |    2 +-
>  arch/arm/mach-davinci/board-da850-evm.c  |    2 +-
>  arch/arm/mach-davinci/board-dm355-evm.c  |    2 +-
>  arch/arm/mach-davinci/board-dm644x-evm.c |    4 +++-
>  4 files changed, 6 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm/mach-davinci/board-da830-evm.c
> b/arch/arm/mach-davinci/board-da830-evm.c
> index 489b317..bfbb639 100644
> --- a/arch/arm/mach-davinci/board-da830-evm.c
> +++ b/arch/arm/mach-davinci/board-da830-evm.c
> @@ -42,7 +42,7 @@ static struct i2c_board_info __initdata
> da830_evm_i2c_devices[] = {
>                .platform_data  = &da830_evm_i2c_eeprom_info,
>        },
>        {
> -               I2C_BOARD_INFO("tlv320aic33", 0x18),
> +               I2C_BOARD_INFO("tlv320aic3x", 0x18),
>        }
>  };
>
> diff --git a/arch/arm/mach-davinci/board-da850-evm.c
> b/arch/arm/mach-davinci/board-da850-evm.c
> index 6adc0df..c759d72 100644
> --- a/arch/arm/mach-davinci/board-da850-evm.c
> +++ b/arch/arm/mach-davinci/board-da850-evm.c
> @@ -145,7 +145,7 @@ static struct platform_device
> da850_evm_nandflash_device = {
>
>  static struct i2c_board_info __initdata da850_evm_i2c_devices[] = {
>        {
> -               I2C_BOARD_INFO("tlv320aic33", 0x18),
> +               I2C_BOARD_INFO("tlv320aic3x", 0x18),
>        }
>  };
>
> diff --git a/arch/arm/mach-davinci/board-dm355-evm.c
> b/arch/arm/mach-davinci/board-dm355-evm.c
> index 38157f7..9f25fd8 100644
> --- a/arch/arm/mach-davinci/board-dm355-evm.c
> +++ b/arch/arm/mach-davinci/board-dm355-evm.c
> @@ -139,7 +139,7 @@ static struct i2c_board_info dm355evm_i2c_info[] = {
>        { I2C_BOARD_INFO("dm355evm_msp", 0x25),
>                .platform_data = dm355evm_mmcsd_gpios,
>                /* plus irq */ },
> -       /* { I2C_BOARD_INFO("tlv320aic3x", 0x1b), }, */
> +       { I2C_BOARD_INFO("tlv320aic33", 0x1b), },
>        /* { I2C_BOARD_INFO("tvp5146", 0x5d), }, */
>  };
>
> diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c
> b/arch/arm/mach-davinci/board-dm644x-evm.c
> index 6a27c5d..31cf84f 100644
> --- a/arch/arm/mach-davinci/board-dm644x-evm.c
> +++ b/arch/arm/mach-davinci/board-dm644x-evm.c
> @@ -559,8 +559,10 @@ static struct i2c_board_info __initdata i2c_info[] =
>  {
>                I2C_BOARD_INFO("24c256", 0x50),
>                .platform_data  = &eeprom_info,
>        },
> +       {
> +               I2C_BOARD_INFO("tlv320aic33", 0x1b),
> +       },
>        /* ALSO:
> -        * - tvl320aic33 audio codec (0x1b)
>         * - tvp5146 video decoder (0x5d)
>         */
>  };
> --
> 1.5.6
>
> _______________________________________________
> Davinci-linux-open-source mailing list
> Davinci-linux-open-source@linux.davincidsp.com
> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
>
chaithrika@ti.com Aug. 28, 2009, 4:17 a.m. UTC | #2
On Fri, Aug 28, 2009 at 08:22:52, J.C. Wren wrote:
> This patch seems to break audio on a Davinci 6446 EVM.
> 
> -rc7--->
> 

Hi,

Which branch of the DaVinci GIT are you checking it on?
This patch works for temp/asoc branch. It will not work for the
master branch as some changes from the ASoC tree are not yet 
available on master.

Regards,
Chaithrika
 
> Advanced Linux Sound Architecture Driver Version 1.0.20.
> No device for DAI tlv320aic3x
> No device for DAI davinci-i2s
> AIC3X Audio Codec 0.2
> i2c-adapter i2c-1: Failed to register i2c client tlv320aic3x at 0x1b
> (-16)
> soc-audio soc-audio.0: can't add i2c device at 0x1b ALSA device list:
>   No soundcards found.
> TCP cubic registered
> 
> It was working under -rc5 --->
> 
> Advanced Linux Sound Architecture Driver Version 1.0.20.
> No device for DAI tlv320aic3x
> No device for DAI davinci-i2s
> AIC3X Audio Codec 0.2
> asoc: tlv320aic3x <-> davinci-i2s mapping ok ALSA device list:
>   #0: DaVinci EVM (tlv320aic3x)
> TCP cubic registered
> 
> --jc
> 
> On Wed, Aug 26, 2009 at 12:08 PM, Chaithrika U S <chaithrika@ti.com>
> wrote:
> 
> 
> 	This patch includes the codec I2C board info for DM6446 EVM
> 	and DM355 EVM. Also, it corrects the codec names in DA8xx/OMAP-L1xx
> 	board files.
> 	
> 	Tested on DM6446, DM355, DM6447, DA850 EVMs.
> 	
> 	Signed-off-by: Chaithrika U S <chaithrika@ti.com>
> 	---
> 	Applies to temp/asoc branch of DaVinci GIT tree.
> 	
> 	 arch/arm/mach-davinci/board-da830-evm.c  |    2 +-
> 	 arch/arm/mach-davinci/board-da850-evm.c  |    2 +-
> 	 arch/arm/mach-davinci/board-dm355-evm.c  |    2 +-
> 	 arch/arm/mach-davinci/board-dm644x-evm.c |    4 +++-
> 	 4 files changed, 6 insertions(+), 4 deletions(-)
> 	
> 	diff --git a/arch/arm/mach-davinci/board-da830-evm.c
> b/arch/arm/mach-davinci/board-da830-evm.c
> 	index 489b317..bfbb639 100644
> 	--- a/arch/arm/mach-davinci/board-da830-evm.c
> 	+++ b/arch/arm/mach-davinci/board-da830-evm.c
> 	@@ -42,7 +42,7 @@ static struct i2c_board_info __initdata da830_evm_i2c_devices[] = {
> 	               .platform_data  = &da830_evm_i2c_eeprom_info,
> 	       },
> 	       {
> 	-               I2C_BOARD_INFO("tlv320aic33", 0x18),
> 	+               I2C_BOARD_INFO("tlv320aic3x", 0x18),
> 	       }
> 	 };
> 	
> 	diff --git a/arch/arm/mach-davinci/board-da850-evm.c
> b/arch/arm/mach-davinci/board-da850-evm.c
> 	index 6adc0df..c759d72 100644
> 	--- a/arch/arm/mach-davinci/board-da850-evm.c
> 	+++ b/arch/arm/mach-davinci/board-da850-evm.c
> 	@@ -145,7 +145,7 @@ static struct platform_device da850_evm_nandflash_device = {
> 	
> 	 static struct i2c_board_info __initdata da850_evm_i2c_devices[] = {
> 	       {
> 	-               I2C_BOARD_INFO("tlv320aic33", 0x18),
> 	+               I2C_BOARD_INFO("tlv320aic3x", 0x18),
> 	       }
> 	 };
> 	
> 	diff --git a/arch/arm/mach-davinci/board-dm355-evm.c
> b/arch/arm/mach-davinci/board-dm355-evm.c
> 	index 38157f7..9f25fd8 100644
> 	--- a/arch/arm/mach-davinci/board-dm355-evm.c
> 	+++ b/arch/arm/mach-davinci/board-dm355-evm.c
> 	@@ -139,7 +139,7 @@ static struct i2c_board_info dm355evm_i2c_info[] = {
> 	       { I2C_BOARD_INFO("dm355evm_msp", 0x25),
> 	               .platform_data = dm355evm_mmcsd_gpios,
> 	               /* plus irq */ },
> 	-       /* { I2C_BOARD_INFO("tlv320aic3x", 0x1b), }, */
> 	+       { I2C_BOARD_INFO("tlv320aic33", 0x1b), },
> 	       /* { I2C_BOARD_INFO("tvp5146", 0x5d), }, */
> 	 };
> 	
> 	diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c
> b/arch/arm/mach-davinci/board-dm644x-evm.c
> 	index 6a27c5d..31cf84f 100644
> 	--- a/arch/arm/mach-davinci/board-dm644x-evm.c
> 	+++ b/arch/arm/mach-davinci/board-dm644x-evm.c
> 	@@ -559,8 +559,10 @@ static struct i2c_board_info __initdata i2c_info[] =  {
> 	               I2C_BOARD_INFO("24c256", 0x50),
> 	               .platform_data  = &eeprom_info,
> 	       },
> 	+       {
> 	+               I2C_BOARD_INFO("tlv320aic33", 0x1b),
> 	+       },
> 	       /* ALSO:
> 	-        * - tvl320aic33 audio codec (0x1b)
> 	        * - tvp5146 video decoder (0x5d)
> 	        */
> 	 };
> 	--
> 	1.5.6
> 	
> 	_______________________________________________
> 	Davinci-linux-open-source mailing list
> 	Davinci-linux-open-source@linux.davincidsp.com
> 	
> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
> 	
> 
> 
>
Steve Chen Aug. 28, 2009, 11:34 a.m. UTC | #3
On Fri, 2009-08-28 at 09:47 +0530, Chaithrika U S wrote:
> On Fri, Aug 28, 2009 at 08:22:52, J.C. Wren wrote:
> > This patch seems to break audio on a Davinci 6446 EVM.
> > 
> > -rc7--->
> > 
> 
> Hi,
> 
> Which branch of the DaVinci GIT are you checking it on?
> This patch works for temp/asoc branch. It will not work for the
> master branch as some changes from the ASoC tree are not yet 
> available on master.
> 
> Regards,
> Chaithrika
>  
> > Advanced Linux Sound Architecture Driver Version 1.0.20.
> > No device for DAI tlv320aic3x
> > No device for DAI davinci-i2s
> > AIC3X Audio Codec 0.2
> > i2c-adapter i2c-1: Failed to register i2c client tlv320aic3x at 0x1b
> > (-16)
> > soc-audio soc-audio.0: can't add i2c device at 0x1b ALSA device list:
> >   No soundcards found.
> > TCP cubic registered
> > 
> > It was working under -rc5 --->
> > 
> > Advanced Linux Sound Architecture Driver Version 1.0.20.
> > No device for DAI tlv320aic3x
> > No device for DAI davinci-i2s
> > AIC3X Audio Codec 0.2
> > asoc: tlv320aic3x <-> davinci-i2s mapping ok ALSA device list:
> >   #0: DaVinci EVM (tlv320aic3x)
> > TCP cubic registered
> > 
> > --jc
> > 
> > On Wed, Aug 26, 2009 at 12:08 PM, Chaithrika U S <chaithrika@ti.com>
> > wrote:
> > 
> > 
> > 	This patch includes the codec I2C board info for DM6446 EVM
> > 	and DM355 EVM. Also, it corrects the codec names in DA8xx/OMAP-L1xx
> > 	board files.
> > 	
> > 	Tested on DM6446, DM355, DM6447, DA850 EVMs.
> > 	

Does this mean the patch was not tested on DA830 EVM?  Should we expect
the audio to work for DA830 on the tmp/asoc or master?

Thanks

Steve
chaithrika@ti.com Aug. 28, 2009, 12:49 p.m. UTC | #4
On Fri, Aug 28, 2009 at 17:04:08, Steve Chen wrote:
> On Fri, 2009-08-28 at 09:47 +0530, Chaithrika U S wrote:
> > On Fri, Aug 28, 2009 at 08:22:52, J.C. Wren wrote:
> > > This patch seems to break audio on a Davinci 6446 EVM.
> > > 
> > > -rc7--->
> > > 
> > 
> > Hi,
> > 
> > Which branch of the DaVinci GIT are you checking it on?
> > This patch works for temp/asoc branch. It will not work for the
> > master branch as some changes from the ASoC tree are not yet 
> > available on master.
> > 
> > Regards,
> > Chaithrika
> >  
> > > Advanced Linux Sound Architecture Driver Version 1.0.20.
> > > No device for DAI tlv320aic3x
> > > No device for DAI davinci-i2s
> > > AIC3X Audio Codec 0.2
> > > i2c-adapter i2c-1: Failed to register i2c client tlv320aic3x at 0x1b
> > > (-16)
> > > soc-audio soc-audio.0: can't add i2c device at 0x1b ALSA device list:
> > >   No soundcards found.
> > > TCP cubic registered
> > > 
> > > It was working under -rc5 --->
> > > 
> > > Advanced Linux Sound Architecture Driver Version 1.0.20.
> > > No device for DAI tlv320aic3x
> > > No device for DAI davinci-i2s
> > > AIC3X Audio Codec 0.2
> > > asoc: tlv320aic3x <-> davinci-i2s mapping ok ALSA device list:
> > >   #0: DaVinci EVM (tlv320aic3x)
> > > TCP cubic registered
> > > 
> > > --jc
> > > 
> > > On Wed, Aug 26, 2009 at 12:08 PM, Chaithrika U S <chaithrika@ti.com>
> > > wrote:
> > > 
> > > 
> > > 	This patch includes the codec I2C board info for DM6446 EVM
> > > 	and DM355 EVM. Also, it corrects the codec names in DA8xx/OMAP-L1xx
> > > 	board files.
> > > 	
> > > 	Tested on DM6446, DM355, DM6447, DA850 EVMs.
> > > 	
> 
> Does this mean the patch was not tested on DA830 EVM?  Should we expect
> the audio to work for DA830 on the tmp/asoc or master?
> 
> Thanks
> 
> Steve
> 
> 
I could not test it yesterday since the board was not readily available 
with me. Checked it now on a DA830/OMAP-L137 EVM. Audio works on the 
temp/asoc branch.

Regards, 
Chaithrika
Steve Chen Aug. 28, 2009, 8:29 p.m. UTC | #5
On Fri, 2009-08-28 at 18:19 +0530, Chaithrika U S wrote:
> > > > On Wed, Aug 26, 2009 at 12:08 PM, Chaithrika U S <chaithrika@ti.com>
> > > > wrote:
> > > > 
> > > > 
> > > > 	This patch includes the codec I2C board info for DM6446 EVM
> > > > 	and DM355 EVM. Also, it corrects the codec names in DA8xx/OMAP-L1xx
> > > > 	board files.
> > > > 	
> > > > 	Tested on DM6446, DM355, DM6447, DA850 EVMs.
> > > > 	
> > 
> > Does this mean the patch was not tested on DA830 EVM?  Should we expect
> > the audio to work for DA830 on the tmp/asoc or master?
> > 
> > Thanks
> > 
> > Steve
> > 
> > 
> I could not test it yesterday since the board was not readily available 
> with me. Checked it now on a DA830/OMAP-L137 EVM. Audio works on the 
> temp/asoc branch.
> 

I see similar problem as JC.  aplay is not producing any sounds for me
on my rev B DA830/OMAP-l137 EVM (no daughter cards attached) with the
temp/asoc branch.  I updated the da830_omapl137_defconfig to build ALSA
statically into the kernel.  I also enable kernel config to build all
CODEC.  Are there any other patches that I need to include?  Also, would
you mind sharing the kernel config you use to verify ALSA?

Regards,

Steve
chaithrika@ti.com Aug. 31, 2009, 6:21 a.m. UTC | #6
On Sat, Aug 29, 2009 at 01:59:57, Steve Chen wrote:
> On Fri, 2009-08-28 at 18:19 +0530, Chaithrika U S wrote:
> > > > > On Wed, Aug 26, 2009 at 12:08 PM, Chaithrika U S <chaithrika@ti.com>
> > > > > wrote:
> > > > > 
> > > > > 
> > > > > 	This patch includes the codec I2C board info for DM6446 EVM
> > > > > 	and DM355 EVM. Also, it corrects the codec names in DA8xx/OMAP-L1xx
> > > > > 	board files.
> > > > > 	
> > > > > 	Tested on DM6446, DM355, DM6447, DA850 EVMs.
> > > > > 	
> > > 
> > > Does this mean the patch was not tested on DA830 EVM?  Should we expect
> > > the audio to work for DA830 on the tmp/asoc or master?
> > > 
> > > Thanks
> > > 
> > > Steve
> > > 
> > > 
> > I could not test it yesterday since the board was not readily available 
> > with me. Checked it now on a DA830/OMAP-L137 EVM. Audio works on the 
> > temp/asoc branch.
> > 
> 
> I see similar problem as JC.  aplay is not producing any sounds for me
> on my rev B DA830/OMAP-l137 EVM (no daughter cards attached) with the
> temp/asoc branch.  I updated the da830_omapl137_defconfig to build ALSA
> statically into the kernel.  I also enable kernel config to build all
> CODEC.  Are there any other patches that I need to include?  Also, would
> you mind sharing the kernel config you use to verify ALSA?
> 
> Regards,
> 
> Steve
> 
> 
> 

I checked audio on DA830/OMAP-L138 EVM(Rev B) using the temp/asoc branch
(commit id 0a76c82bd827a674db8cbdf7668cce3cd058a70a). Audio is working, was
able to hear audio on headphones. I have attached the kernel config file
for reference.

Regards, 
Chaithrika
diff mbox

Patch

diff --git a/arch/arm/mach-davinci/board-da830-evm.c b/arch/arm/mach-davinci/board-da830-evm.c
index 489b317..bfbb639 100644
--- a/arch/arm/mach-davinci/board-da830-evm.c
+++ b/arch/arm/mach-davinci/board-da830-evm.c
@@ -42,7 +42,7 @@  static struct i2c_board_info __initdata da830_evm_i2c_devices[] = {
 		.platform_data	= &da830_evm_i2c_eeprom_info,
 	},
 	{
-		I2C_BOARD_INFO("tlv320aic33", 0x18),
+		I2C_BOARD_INFO("tlv320aic3x", 0x18),
 	}
 };
 
diff --git a/arch/arm/mach-davinci/board-da850-evm.c b/arch/arm/mach-davinci/board-da850-evm.c
index 6adc0df..c759d72 100644
--- a/arch/arm/mach-davinci/board-da850-evm.c
+++ b/arch/arm/mach-davinci/board-da850-evm.c
@@ -145,7 +145,7 @@  static struct platform_device da850_evm_nandflash_device = {
 
 static struct i2c_board_info __initdata da850_evm_i2c_devices[] = {
 	{
-		I2C_BOARD_INFO("tlv320aic33", 0x18),
+		I2C_BOARD_INFO("tlv320aic3x", 0x18),
 	}
 };
 
diff --git a/arch/arm/mach-davinci/board-dm355-evm.c b/arch/arm/mach-davinci/board-dm355-evm.c
index 38157f7..9f25fd8 100644
--- a/arch/arm/mach-davinci/board-dm355-evm.c
+++ b/arch/arm/mach-davinci/board-dm355-evm.c
@@ -139,7 +139,7 @@  static struct i2c_board_info dm355evm_i2c_info[] = {
 	{ I2C_BOARD_INFO("dm355evm_msp", 0x25),
 		.platform_data = dm355evm_mmcsd_gpios,
 		/* plus irq */ },
-	/* { I2C_BOARD_INFO("tlv320aic3x", 0x1b), }, */
+	{ I2C_BOARD_INFO("tlv320aic33", 0x1b), },
 	/* { I2C_BOARD_INFO("tvp5146", 0x5d), }, */
 };
 
diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-davinci/board-dm644x-evm.c
index 6a27c5d..31cf84f 100644
--- a/arch/arm/mach-davinci/board-dm644x-evm.c
+++ b/arch/arm/mach-davinci/board-dm644x-evm.c
@@ -559,8 +559,10 @@  static struct i2c_board_info __initdata i2c_info[] =  {
 		I2C_BOARD_INFO("24c256", 0x50),
 		.platform_data	= &eeprom_info,
 	},
+	{
+		I2C_BOARD_INFO("tlv320aic33", 0x1b),
+	},
 	/* ALSO:
-	 * - tvl320aic33 audio codec (0x1b)
 	 * - tvp5146 video decoder (0x5d)
 	 */
 };