Kevin Hilman <[email protected]> writes:

> "Narnakaje, Snehaprabha" <[email protected]> writes:
>
>> Did you happen to test Audio on DM6446 with the latest on linux-davinci tree?
>>
>> For the same clock name issue Arun is running into on DM355, the codecs are 
>> not getting detected on DM6446.
>>
>> Advanced Linux Sound Architecture Driver Version 1.0.20.
>> No device for DAI tlv320aic3x
>> No device for DAI davinci-i2s
>> ALSA device list:
>>   No soundcards found.
>>
>> I am thinking we are seeing these issues due to the way dm355 (or dm6446) 
>> clocks are defined on linux-davinci tree and the mach-davinci on kernel.org.
>>
>>>From arch/arm/mach-davinci/dm355.c of kernel.org
>> CLK("soc-audio.0", NULL, &asp0_clk),
>> CLK("soc-audio.1", NULL, &asp1_clk),
>>
>> And from arch/arm/mach-davinci/dm355.c of linux-davinci tree
>> CLK(NULL, "asp0", &asp0_clk),
>> CLK(NULL, "asp1", &asp1_clk),
>>
>> Kevin, any comments?
>
> Yes, ASoC drivers are headed upstream and there's currently a mismatch
> between the patches that are going upstream via linux-davinci and those
> going upstream via the ASoC tree.
>
> linux-davinci is missing some of the changes that are queued up in
> Mark Brown's for-2.6.32 branch, namely the change that addes
> the name argument to clk_get().
>
> On linux-davinci, if you switch back to this form of CLK definition:
>
> CLK("soc-audio.0", NULL, &asp0_clk),
> CLK("soc-audio.1", NULL, &asp1_clk),
>
> does it work for you again?

OK, I confirmed that this proposed change results in working audio
on dm6446.

So I tried to merge Mark's for-2.6.32 branch with davinci master, and
it doesn't compile using 'davinci_all_defconfig' because the spdif
codec doesn't support drivers built as modules, nor does it build as
as a module.  To support drivers built as modules, I needed patch[1]
below, and to get the spdif codec to work as a module it needs
a GPL licence so it can get to platform_[un]register_driver()[2]

With these two patches, Mark's for-2.6.32 branch merged into DaVinci
git master is working for me on dm6446.

I've pushed this to the branch 'temp/asoc' of DaVinci git for
others to test on other platforms.

Kevin

[1]
commit 1c3d901bd47f4a55b79280ee64aa738ff1718263
Author: Kevin Hilman <[email protected]>
Date:   Mon Jul 13 09:33:11 2009 -0700

    ASoC: spdif codec: enable use by modules

diff --git a/sound/soc/codecs/spdif_transciever.c 
b/sound/soc/codecs/spdif_transciever.c
index 218b33a..9b18fbf 100644
--- a/sound/soc/codecs/spdif_transciever.c
+++ b/sound/soc/codecs/spdif_transciever.c
@@ -34,6 +34,7 @@ struct snd_soc_dai dit_stub_dai = {
                .formats        = STUB_FORMATS,
        },
 };
+EXPORT_SYMBOL(dit_stub_dai);
 
 static int spdif_dit_probe(struct platform_device *pdev)
 {


[2]
commit 2d62a2f3db0e86f830adb68ab49b01c2c5979556
Author: Kevin Hilman <[email protected]>
Date:   Mon Jul 13 09:40:56 2009 -0700

    temp: hack

diff --git a/sound/soc/codecs/spdif_transciever.c 
b/sound/soc/codecs/spdif_transciever.c
index 9b18fbf..c4431a9 100644
--- a/sound/soc/codecs/spdif_transciever.c
+++ b/sound/soc/codecs/spdif_transciever.c
@@ -21,6 +21,8 @@
 
 #include "spdif_transciever.h"
 
+MODULE_LICENSE("GPL");
+
 #define STUB_RATES     SNDRV_PCM_RATE_8000_96000
 #define STUB_FORMATS   SNDRV_PCM_FMTBIT_S16_LE
 

_______________________________________________
Davinci-linux-open-source mailing list
[email protected]
http://linux.davincidsp.com/mailman/listinfo/davinci-linux-open-source

Reply via email to