On Mon, Nov 15, 2010 at 01:26:37PM +0100, Grzegorz Daniluk wrote:
I'm trying to use the wm8804 codec in my SH4-based system (Renesas SH7724 to be precise). I have used the latest kernel 2.6.37-rc1 where there is the codec driver for wm8804. However, I have to write my own fsi-wm8804.c (like e.g. fsi-da7210.c). My code attached below. After compiling it with the rest of the kernel sources or compiling as an external module my alsa still does not see any soundcards. However, by running i2cdetect I can see that the device is correctly taken by the codec driver so the problem is somewhere with my fsi-wm8804 probably.
Did you register the I2C device for the CODEC with the I2C subsystem? If that's not the issue could you please provide a kernel log with #define DEBUG at the top of soc-core.c?
static int fsi_wm8804_init(struct snd_soc_codec *codec) {
return 0;
}
Remove unused functions.
if(substream->stream == SNDRV_PCM_STREAM_CAPTURE) { snd_soc_dai_set_pll(dai, 0, 0, 12000000, 94310400); } else if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) { snd_soc_dai_set_pll(dai, 0, 0, 12000000, 98304000); }
This is going to prevent simultaneous playback and record; this may not be an issue in your system but I wanted to be sure you were aware of it.