diff mbox

davinci: audio clocks: use struct device instead of clock names

Message ID 1247679687-30409-1-git-send-email-khilman@deeprootsystems.com (mailing list archive)
State Accepted
Headers show

Commit Message

Kevin Hilman July 15, 2009, 5:41 p.m. UTC
There is no need to pass clock name strings in platform_data.
Instead, setup clkdev nodes to have correct ASoC device names.

Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
---
Applies on DaVinci git master.

 arch/arm/mach-davinci/board-dm355-evm.c  |    4 +---
 arch/arm/mach-davinci/board-dm644x-evm.c |    4 +---
 arch/arm/mach-davinci/board-dm646x-evm.c |    2 --
 arch/arm/mach-davinci/dm355.c            |    6 +++---
 arch/arm/mach-davinci/dm644x.c           |    2 +-
 arch/arm/mach-davinci/dm646x.c           |    4 ++--
 arch/arm/mach-davinci/include/mach/asp.h |    1 -
 7 files changed, 8 insertions(+), 15 deletions(-)

Comments

nsnehaprabha@ti.com July 15, 2009, 9:08 p.m. UTC | #1
Kevin,

I am getting the device name as "soc-audio.1" on DM355, so is this patch supposed to work. It looks like the clock expects it to be "davinci-asp.1".

Shouldn't the definition in dm355.c (and other device files) be "soc-audio.0" and "soc-audio.1"? This is how it is in the upstream kernel.

Am I missing something?

Thanks
Sneha

> -----Original Message-----
> From: davinci-linux-open-source-bounces@linux.davincidsp.com
> [mailto:davinci-linux-open-source-bounces@linux.davincidsp.com] On Behalf
> Of Kevin Hilman
> Sent: Wednesday, July 15, 2009 1:41 PM
> To: davinci-linux-open-source@linux.davincidsp.com
> Cc: Mark Brown
> Subject: [PATCH] davinci: audio clocks: use struct device instead of clock
> names
> 
> There is no need to pass clock name strings in platform_data.
> Instead, setup clkdev nodes to have correct ASoC device names.
> 
> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
> ---
> Applies on DaVinci git master.
> 
>  arch/arm/mach-davinci/board-dm355-evm.c  |    4 +---
>  arch/arm/mach-davinci/board-dm644x-evm.c |    4 +---
>  arch/arm/mach-davinci/board-dm646x-evm.c |    2 --
>  arch/arm/mach-davinci/dm355.c            |    6 +++---
>  arch/arm/mach-davinci/dm644x.c           |    2 +-
>  arch/arm/mach-davinci/dm646x.c           |    4 ++--
>  arch/arm/mach-davinci/include/mach/asp.h |    1 -
>  7 files changed, 8 insertions(+), 15 deletions(-)
> 
> diff --git a/arch/arm/mach-davinci/board-dm355-evm.c b/arch/arm/mach-
> davinci/board-dm355-evm.c
> index 78a9604..ff55c52 100644
> --- a/arch/arm/mach-davinci/board-dm355-evm.c
> +++ b/arch/arm/mach-davinci/board-dm355-evm.c
> @@ -118,9 +118,7 @@ static struct davinci_i2c_platform_data i2c_pdata = {
>  	.bus_delay	= 0	/* usec */,
>  };
> 
> -static struct snd_platform_data dm355_evm_snd_data = {
> -	.clk_name	= "asp1",
> -};
> +static struct snd_platform_data dm355_evm_snd_data;
> 
>  static int dm355evm_mmc_gpios = -EINVAL;
> 
> diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-
> davinci/board-dm644x-evm.c
> index 30b2fd4..466568f 100644
> --- a/arch/arm/mach-davinci/board-dm644x-evm.c
> +++ b/arch/arm/mach-davinci/board-dm644x-evm.c
> @@ -226,9 +226,7 @@ static struct platform_device ide_dev = {
>  	},
>  };
> 
> -static struct snd_platform_data dm644x_evm_snd_data = {
> -	.clk_name	= "asp0",
> -};
> +static struct snd_platform_data dm644x_evm_snd_data;
> 
>  /*----------------------------------------------------------------------
> */
> 
> diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-
> davinci/board-dm646x-evm.c
> index 575c6ca..ce24da9 100644
> --- a/arch/arm/mach-davinci/board-dm646x-evm.c
> +++ b/arch/arm/mach-davinci/board-dm646x-evm.c
> @@ -217,7 +217,6 @@ static u8 dm646x_dit_serializer_direction[] = {
> 
>  static struct snd_platform_data dm646x_evm_snd_data[] = {
>  	{
> -		.clk_name       = "mcasp0",
>  		.tx_dma_offset  = 0x400,
>  		.rx_dma_offset  = 0x400,
>  		.op_mode        = DAVINCI_MCASP_IIS_MODE,
> @@ -227,7 +226,6 @@ static struct snd_platform_data dm646x_evm_snd_data[]
> = {
>  		.eventq_no      = EVENTQ_0,
>  	},
>  	{
> -		.clk_name       = "mcasp1",
>  		.tx_dma_offset  = 0x400,
>  		.rx_dma_offset  = 0,
>  		.op_mode        = DAVINCI_MCASP_DIT_MODE,
> diff --git a/arch/arm/mach-davinci/dm355.c b/arch/arm/mach-davinci/dm355.c
> index b4d709a..3abeb3e 100644
> --- a/arch/arm/mach-davinci/dm355.c
> +++ b/arch/arm/mach-davinci/dm355.c
> @@ -361,8 +361,8 @@ static struct davinci_clk dm355_clks[] = {
>  	CLK(NULL, "uart1", &uart1_clk),
>  	CLK(NULL, "uart2", &uart2_clk),
>  	CLK("i2c_davinci.1", NULL, &i2c_clk),
> -	CLK(NULL, "asp0", &asp0_clk),
> -	CLK(NULL, "asp1", &asp1_clk),
> +	CLK("davinci-asp.0", NULL, &asp0_clk),
> +	CLK("davinci-asp.1", NULL, &asp1_clk),
>  	CLK("davinci_mmc.0", NULL, &mmcsd0_clk),
>  	CLK("davinci_mmc.1", NULL, &mmcsd1_clk),
>  	CLK(NULL, "spi0", &spi0_clk),
> @@ -648,7 +648,7 @@ static struct resource dm355_asp1_resources[] = {
> 
>  static struct platform_device dm355_asp1_device = {
>  	.name		= "davinci-asp",
> -	.id		= -1,
> +	.id		= 1,
>  	.num_resources	= ARRAY_SIZE(dm355_asp1_resources),
>  	.resource	= dm355_asp1_resources,
>  };
> diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-
> davinci/dm644x.c
> index 55317b1..e554aa6 100644
> --- a/arch/arm/mach-davinci/dm644x.c
> +++ b/arch/arm/mach-davinci/dm644x.c
> @@ -304,7 +304,7 @@ struct davinci_clk dm644x_clks[] = {
>  	CLK("davinci_emac.1", NULL, &emac_clk),
>  	CLK("i2c_davinci.1", NULL, &i2c_clk),
>  	CLK("palm_bk3710", NULL, &ide_clk),
> -	CLK(NULL, "asp0", &asp_clk),
> +	CLK("davinci-asp", NULL, &asp_clk),
>  	CLK("davinci_mmc.0", NULL, &mmcsd_clk),
>  	CLK(NULL, "spi", &spi_clk),
>  	CLK(NULL, "gpio", &gpio_clk),
> diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-
> davinci/dm646x.c
> index 50f01e0..4fcdcae 100644
> --- a/arch/arm/mach-davinci/dm646x.c
> +++ b/arch/arm/mach-davinci/dm646x.c
> @@ -334,8 +334,8 @@ struct davinci_clk dm646x_clks[] = {
>  	CLK(NULL, "uart2", &uart2_clk),
>  	CLK("i2c_davinci.1", NULL, &i2c_clk),
>  	CLK(NULL, "gpio", &gpio_clk),
> -	CLK(NULL, "mcasp0", &mcasp0_clk),
> -	CLK(NULL, "mcasp1", &mcasp1_clk),
> +	CLK("davinci-mcasp.0", NULL, &mcasp0_clk),
> +	CLK("davinci-mcasp.1", NULL, &mcasp1_clk),
>  	CLK(NULL, "aemif", &aemif_clk),
>  	CLK("davinci_emac.1", NULL, &emac_clk),
>  	CLK(NULL, "pwm0", &pwm0_clk),
> diff --git a/arch/arm/mach-davinci/include/mach/asp.h b/arch/arm/mach-
> davinci/include/mach/asp.h
> index 038ecb7..cdf1f44 100644
> --- a/arch/arm/mach-davinci/include/mach/asp.h
> +++ b/arch/arm/mach-davinci/include/mach/asp.h
> @@ -33,7 +33,6 @@
>  #define DAVINCI_ASP1_TX_INT	IRQ_MBXINT
> 
>  struct snd_platform_data {
> -	char *clk_name;
>  	u32 tx_dma_offset;
>  	u32 rx_dma_offset;
>  	enum dma_event_q eventq_no;	/* event queue number */
> --
> 1.6.3.3
> 
> 
> _______________________________________________
> Davinci-linux-open-source mailing list
> Davinci-linux-open-source@linux.davincidsp.com
> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
Kevin Hilman July 15, 2009, 9:39 p.m. UTC | #2
"Narnakaje, Snehaprabha" <nsnehaprabha@ti.com> writes:

> I am getting the device name as "soc-audio.1" on DM355, so is this
> patch supposed to work. It looks like the clock expects it to be
> "davinci-asp.1".

The upstream-bound ASoC code has new platform_devices with new names.

> Shouldn't the definition in dm355.c (and other device files) be
> "soc-audio.0" and "soc-audio.1"? This is how it is in the upstream
> kernel.
>
> Am I missing something?

You're missing the description of how to get these patches to work, which is
still in my head... ;)  sorry.

You need this patch on top of Davinci git master, the other one I sent
on top of Mark's for-2.6.32 branch and then merge them together.  Resolve
the conflict in favor of Mark's branch.

I just pushed the result of this merge to the 'temp/asoc' branch of
davinci git.  It may take some time to trickle out to the mirrors, so
with the above description, you should get the same result yourself.

If Mark is OK with the ASoC patch and merges it, I'll push this one to
Davinci git and then merge his for-2.6.32 branch so we'll have working
ASoC in davinci git master.

Kevin


>
>> -----Original Message-----
>> From: davinci-linux-open-source-bounces@linux.davincidsp.com
>> [mailto:davinci-linux-open-source-bounces@linux.davincidsp.com] On Behalf
>> Of Kevin Hilman
>> Sent: Wednesday, July 15, 2009 1:41 PM
>> To: davinci-linux-open-source@linux.davincidsp.com
>> Cc: Mark Brown
>> Subject: [PATCH] davinci: audio clocks: use struct device instead of clock
>> names
>> 
>> There is no need to pass clock name strings in platform_data.
>> Instead, setup clkdev nodes to have correct ASoC device names.
>> 
>> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
>> ---
>> Applies on DaVinci git master.
>> 
>>  arch/arm/mach-davinci/board-dm355-evm.c  |    4 +---
>>  arch/arm/mach-davinci/board-dm644x-evm.c |    4 +---
>>  arch/arm/mach-davinci/board-dm646x-evm.c |    2 --
>>  arch/arm/mach-davinci/dm355.c            |    6 +++---
>>  arch/arm/mach-davinci/dm644x.c           |    2 +-
>>  arch/arm/mach-davinci/dm646x.c           |    4 ++--
>>  arch/arm/mach-davinci/include/mach/asp.h |    1 -
>>  7 files changed, 8 insertions(+), 15 deletions(-)
>> 
>> diff --git a/arch/arm/mach-davinci/board-dm355-evm.c b/arch/arm/mach-
>> davinci/board-dm355-evm.c
>> index 78a9604..ff55c52 100644
>> --- a/arch/arm/mach-davinci/board-dm355-evm.c
>> +++ b/arch/arm/mach-davinci/board-dm355-evm.c
>> @@ -118,9 +118,7 @@ static struct davinci_i2c_platform_data i2c_pdata = {
>>  	.bus_delay	= 0	/* usec */,
>>  };
>> 
>> -static struct snd_platform_data dm355_evm_snd_data = {
>> -	.clk_name	= "asp1",
>> -};
>> +static struct snd_platform_data dm355_evm_snd_data;
>> 
>>  static int dm355evm_mmc_gpios = -EINVAL;
>> 
>> diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-
>> davinci/board-dm644x-evm.c
>> index 30b2fd4..466568f 100644
>> --- a/arch/arm/mach-davinci/board-dm644x-evm.c
>> +++ b/arch/arm/mach-davinci/board-dm644x-evm.c
>> @@ -226,9 +226,7 @@ static struct platform_device ide_dev = {
>>  	},
>>  };
>> 
>> -static struct snd_platform_data dm644x_evm_snd_data = {
>> -	.clk_name	= "asp0",
>> -};
>> +static struct snd_platform_data dm644x_evm_snd_data;
>> 
>>  /*----------------------------------------------------------------------
>> */
>> 
>> diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-
>> davinci/board-dm646x-evm.c
>> index 575c6ca..ce24da9 100644
>> --- a/arch/arm/mach-davinci/board-dm646x-evm.c
>> +++ b/arch/arm/mach-davinci/board-dm646x-evm.c
>> @@ -217,7 +217,6 @@ static u8 dm646x_dit_serializer_direction[] = {
>> 
>>  static struct snd_platform_data dm646x_evm_snd_data[] = {
>>  	{
>> -		.clk_name       = "mcasp0",
>>  		.tx_dma_offset  = 0x400,
>>  		.rx_dma_offset  = 0x400,
>>  		.op_mode        = DAVINCI_MCASP_IIS_MODE,
>> @@ -227,7 +226,6 @@ static struct snd_platform_data dm646x_evm_snd_data[]
>> = {
>>  		.eventq_no      = EVENTQ_0,
>>  	},
>>  	{
>> -		.clk_name       = "mcasp1",
>>  		.tx_dma_offset  = 0x400,
>>  		.rx_dma_offset  = 0,
>>  		.op_mode        = DAVINCI_MCASP_DIT_MODE,
>> diff --git a/arch/arm/mach-davinci/dm355.c b/arch/arm/mach-davinci/dm355.c
>> index b4d709a..3abeb3e 100644
>> --- a/arch/arm/mach-davinci/dm355.c
>> +++ b/arch/arm/mach-davinci/dm355.c
>> @@ -361,8 +361,8 @@ static struct davinci_clk dm355_clks[] = {
>>  	CLK(NULL, "uart1", &uart1_clk),
>>  	CLK(NULL, "uart2", &uart2_clk),
>>  	CLK("i2c_davinci.1", NULL, &i2c_clk),
>> -	CLK(NULL, "asp0", &asp0_clk),
>> -	CLK(NULL, "asp1", &asp1_clk),
>> +	CLK("davinci-asp.0", NULL, &asp0_clk),
>> +	CLK("davinci-asp.1", NULL, &asp1_clk),
>>  	CLK("davinci_mmc.0", NULL, &mmcsd0_clk),
>>  	CLK("davinci_mmc.1", NULL, &mmcsd1_clk),
>>  	CLK(NULL, "spi0", &spi0_clk),
>> @@ -648,7 +648,7 @@ static struct resource dm355_asp1_resources[] = {
>> 
>>  static struct platform_device dm355_asp1_device = {
>>  	.name		= "davinci-asp",
>> -	.id		= -1,
>> +	.id		= 1,
>>  	.num_resources	= ARRAY_SIZE(dm355_asp1_resources),
>>  	.resource	= dm355_asp1_resources,
>>  };
>> diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-
>> davinci/dm644x.c
>> index 55317b1..e554aa6 100644
>> --- a/arch/arm/mach-davinci/dm644x.c
>> +++ b/arch/arm/mach-davinci/dm644x.c
>> @@ -304,7 +304,7 @@ struct davinci_clk dm644x_clks[] = {
>>  	CLK("davinci_emac.1", NULL, &emac_clk),
>>  	CLK("i2c_davinci.1", NULL, &i2c_clk),
>>  	CLK("palm_bk3710", NULL, &ide_clk),
>> -	CLK(NULL, "asp0", &asp_clk),
>> +	CLK("davinci-asp", NULL, &asp_clk),
>>  	CLK("davinci_mmc.0", NULL, &mmcsd_clk),
>>  	CLK(NULL, "spi", &spi_clk),
>>  	CLK(NULL, "gpio", &gpio_clk),
>> diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-
>> davinci/dm646x.c
>> index 50f01e0..4fcdcae 100644
>> --- a/arch/arm/mach-davinci/dm646x.c
>> +++ b/arch/arm/mach-davinci/dm646x.c
>> @@ -334,8 +334,8 @@ struct davinci_clk dm646x_clks[] = {
>>  	CLK(NULL, "uart2", &uart2_clk),
>>  	CLK("i2c_davinci.1", NULL, &i2c_clk),
>>  	CLK(NULL, "gpio", &gpio_clk),
>> -	CLK(NULL, "mcasp0", &mcasp0_clk),
>> -	CLK(NULL, "mcasp1", &mcasp1_clk),
>> +	CLK("davinci-mcasp.0", NULL, &mcasp0_clk),
>> +	CLK("davinci-mcasp.1", NULL, &mcasp1_clk),
>>  	CLK(NULL, "aemif", &aemif_clk),
>>  	CLK("davinci_emac.1", NULL, &emac_clk),
>>  	CLK(NULL, "pwm0", &pwm0_clk),
>> diff --git a/arch/arm/mach-davinci/include/mach/asp.h b/arch/arm/mach-
>> davinci/include/mach/asp.h
>> index 038ecb7..cdf1f44 100644
>> --- a/arch/arm/mach-davinci/include/mach/asp.h
>> +++ b/arch/arm/mach-davinci/include/mach/asp.h
>> @@ -33,7 +33,6 @@
>>  #define DAVINCI_ASP1_TX_INT	IRQ_MBXINT
>> 
>>  struct snd_platform_data {
>> -	char *clk_name;
>>  	u32 tx_dma_offset;
>>  	u32 rx_dma_offset;
>>  	enum dma_event_q eventq_no;	/* event queue number */
>> --
>> 1.6.3.3
>> 
>> 
>> _______________________________________________
>> Davinci-linux-open-source mailing list
>> Davinci-linux-open-source@linux.davincidsp.com
>> http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source
Kevin Hilman July 16, 2009, 2:18 p.m. UTC | #3
Mark Brown <broonie@sirena.org.uk> writes:

> On Wed, Jul 15, 2009 at 02:39:56PM -0700, Kevin Hilman wrote:
>
>> If Mark is OK with the ASoC patch and merges it, I'll push this one to
>> Davinci git and then merge his for-2.6.32 branch so we'll have working
>> ASoC in davinci git master.
>
> Yes, the ASoC patch is OK - I'll apply it shortly.  Thanks!

OK, I've updated the 'temp/asoc' branch of davinci git.  It now
contains davinci git master + $SUBJECT patch + Kconfig update to
enable dm646x ASoC support and then a merge of Mark's for-2.6.32
branch.

With this, I can play audio fine on dm6446, on dm355 audio plays
but about 4-5x too fast.

Kevin
nsnehaprabha@ti.com July 16, 2009, 4:41 p.m. UTC | #4
Kevin,

> -----Original Message-----
> From: Kevin Hilman [mailto:khilman@deeprootsystems.com]
> Sent: Thursday, July 16, 2009 10:18 AM
> To: Mark Brown
> Cc: Narnakaje, Snehaprabha; davinci-linux-open-source@linux.davincidsp.com
> Subject: Re: [PATCH] davinci: audio clocks: use struct device instead of
> clock names
> 
> Mark Brown <broonie@sirena.org.uk> writes:
> 
> > On Wed, Jul 15, 2009 at 02:39:56PM -0700, Kevin Hilman wrote:
> >
> >> If Mark is OK with the ASoC patch and merges it, I'll push this one to
> >> Davinci git and then merge his for-2.6.32 branch so we'll have working
> >> ASoC in davinci git master.
> >
> > Yes, the ASoC patch is OK - I'll apply it shortly.  Thanks!
> 
> OK, I've updated the 'temp/asoc' branch of davinci git.  It now
> contains davinci git master + $SUBJECT patch + Kconfig update to
> enable dm646x ASoC support and then a merge of Mark's for-2.6.32
> branch.
> 
> With this, I can play audio fine on dm6446, on dm355 audio plays
> but about 4-5x too fast.

Using the updated temp/asoc branch, I see slightly different behavior on DM355.

If I run arecord/aplay with the "-d" option (for time period), it only runs for 1/2 the time.

e.g. arecord -d 30 test.snd runs only for 15 secs.

Running loopback (arecord | aplay without any time period) seems OK. I do not see underrun/overrun errors with 8KHz, but do see them with 44.1KHz

Thanks
Sneha

> 
> Kevin
>
Kevin Hilman July 17, 2009, 9:21 p.m. UTC | #5
Kevin Hilman <khilman@deeprootsystems.com> writes:

> There is no need to pass clock name strings in platform_data.
> Instead, setup clkdev nodes to have correct ASoC device names.
>
> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
> ---
> Applies on DaVinci git master.

Pushing to davinci git.

Now, merging DaVinci git master with Mark's for-2.6.32 brach will
result in (mostly) working audio on dm6446, dm355 and dm6467.
Some issues still being debugged for dm355 and dm6467.

Kevin
diff mbox

Patch

diff --git a/arch/arm/mach-davinci/board-dm355-evm.c b/arch/arm/mach-davinci/board-dm355-evm.c
index 78a9604..ff55c52 100644
--- a/arch/arm/mach-davinci/board-dm355-evm.c
+++ b/arch/arm/mach-davinci/board-dm355-evm.c
@@ -118,9 +118,7 @@  static struct davinci_i2c_platform_data i2c_pdata = {
 	.bus_delay	= 0	/* usec */,
 };
 
-static struct snd_platform_data dm355_evm_snd_data = {
-	.clk_name	= "asp1",
-};
+static struct snd_platform_data dm355_evm_snd_data;
 
 static int dm355evm_mmc_gpios = -EINVAL;
 
diff --git a/arch/arm/mach-davinci/board-dm644x-evm.c b/arch/arm/mach-davinci/board-dm644x-evm.c
index 30b2fd4..466568f 100644
--- a/arch/arm/mach-davinci/board-dm644x-evm.c
+++ b/arch/arm/mach-davinci/board-dm644x-evm.c
@@ -226,9 +226,7 @@  static struct platform_device ide_dev = {
 	},
 };
 
-static struct snd_platform_data dm644x_evm_snd_data = {
-	.clk_name	= "asp0",
-};
+static struct snd_platform_data dm644x_evm_snd_data;
 
 /*----------------------------------------------------------------------*/
 
diff --git a/arch/arm/mach-davinci/board-dm646x-evm.c b/arch/arm/mach-davinci/board-dm646x-evm.c
index 575c6ca..ce24da9 100644
--- a/arch/arm/mach-davinci/board-dm646x-evm.c
+++ b/arch/arm/mach-davinci/board-dm646x-evm.c
@@ -217,7 +217,6 @@  static u8 dm646x_dit_serializer_direction[] = {
 
 static struct snd_platform_data dm646x_evm_snd_data[] = {
 	{
-		.clk_name       = "mcasp0",
 		.tx_dma_offset  = 0x400,
 		.rx_dma_offset  = 0x400,
 		.op_mode        = DAVINCI_MCASP_IIS_MODE,
@@ -227,7 +226,6 @@  static struct snd_platform_data dm646x_evm_snd_data[] = {
 		.eventq_no      = EVENTQ_0,
 	},
 	{
-		.clk_name       = "mcasp1",
 		.tx_dma_offset  = 0x400,
 		.rx_dma_offset  = 0,
 		.op_mode        = DAVINCI_MCASP_DIT_MODE,
diff --git a/arch/arm/mach-davinci/dm355.c b/arch/arm/mach-davinci/dm355.c
index b4d709a..3abeb3e 100644
--- a/arch/arm/mach-davinci/dm355.c
+++ b/arch/arm/mach-davinci/dm355.c
@@ -361,8 +361,8 @@  static struct davinci_clk dm355_clks[] = {
 	CLK(NULL, "uart1", &uart1_clk),
 	CLK(NULL, "uart2", &uart2_clk),
 	CLK("i2c_davinci.1", NULL, &i2c_clk),
-	CLK(NULL, "asp0", &asp0_clk),
-	CLK(NULL, "asp1", &asp1_clk),
+	CLK("davinci-asp.0", NULL, &asp0_clk),
+	CLK("davinci-asp.1", NULL, &asp1_clk),
 	CLK("davinci_mmc.0", NULL, &mmcsd0_clk),
 	CLK("davinci_mmc.1", NULL, &mmcsd1_clk),
 	CLK(NULL, "spi0", &spi0_clk),
@@ -648,7 +648,7 @@  static struct resource dm355_asp1_resources[] = {
 
 static struct platform_device dm355_asp1_device = {
 	.name		= "davinci-asp",
-	.id		= -1,
+	.id		= 1,
 	.num_resources	= ARRAY_SIZE(dm355_asp1_resources),
 	.resource	= dm355_asp1_resources,
 };
diff --git a/arch/arm/mach-davinci/dm644x.c b/arch/arm/mach-davinci/dm644x.c
index 55317b1..e554aa6 100644
--- a/arch/arm/mach-davinci/dm644x.c
+++ b/arch/arm/mach-davinci/dm644x.c
@@ -304,7 +304,7 @@  struct davinci_clk dm644x_clks[] = {
 	CLK("davinci_emac.1", NULL, &emac_clk),
 	CLK("i2c_davinci.1", NULL, &i2c_clk),
 	CLK("palm_bk3710", NULL, &ide_clk),
-	CLK(NULL, "asp0", &asp_clk),
+	CLK("davinci-asp", NULL, &asp_clk),
 	CLK("davinci_mmc.0", NULL, &mmcsd_clk),
 	CLK(NULL, "spi", &spi_clk),
 	CLK(NULL, "gpio", &gpio_clk),
diff --git a/arch/arm/mach-davinci/dm646x.c b/arch/arm/mach-davinci/dm646x.c
index 50f01e0..4fcdcae 100644
--- a/arch/arm/mach-davinci/dm646x.c
+++ b/arch/arm/mach-davinci/dm646x.c
@@ -334,8 +334,8 @@  struct davinci_clk dm646x_clks[] = {
 	CLK(NULL, "uart2", &uart2_clk),
 	CLK("i2c_davinci.1", NULL, &i2c_clk),
 	CLK(NULL, "gpio", &gpio_clk),
-	CLK(NULL, "mcasp0", &mcasp0_clk),
-	CLK(NULL, "mcasp1", &mcasp1_clk),
+	CLK("davinci-mcasp.0", NULL, &mcasp0_clk),
+	CLK("davinci-mcasp.1", NULL, &mcasp1_clk),
 	CLK(NULL, "aemif", &aemif_clk),
 	CLK("davinci_emac.1", NULL, &emac_clk),
 	CLK(NULL, "pwm0", &pwm0_clk),
diff --git a/arch/arm/mach-davinci/include/mach/asp.h b/arch/arm/mach-davinci/include/mach/asp.h
index 038ecb7..cdf1f44 100644
--- a/arch/arm/mach-davinci/include/mach/asp.h
+++ b/arch/arm/mach-davinci/include/mach/asp.h
@@ -33,7 +33,6 @@ 
 #define DAVINCI_ASP1_TX_INT	IRQ_MBXINT
 
 struct snd_platform_data {
-	char *clk_name;
 	u32 tx_dma_offset;
 	u32 rx_dma_offset;
 	enum dma_event_q eventq_no;	/* event queue number */