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
