[alsa-devel] Please help in adding ams-delta support to ASoC
Janusz Krzysztofik
jkrzyszt at tis.icnet.pl
Wed Jun 10 20:05:35 CEST 2009
Wednesday 10 June 2009 12:53:42 Peter Ujfalusi napisał(a):
> On Wednesday 10 June 2009 13:27:38 ext Janusz Krzysztofik wrote:
> Just out of curiosity, can you try this one as well:
>
> --- a/sound/soc/omap/omap-mcbsp.c
> +++ b/sound/soc/omap/omap-mcbsp.c
> @@ -191,6 +191,7 @@ static int omap_mcbsp_dai_trigger(struct
> snd_pcm_substream *substream, int cmd,
> case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
> if (!mcbsp_data->active++)
> omap_mcbsp_start(mcbsp_data->bus_id);
> + omap_mcbsp_pollwrite(mcbsp_data->bus_id, 0xdb55);
> break;
>
> basically write 0xdb55 to the DXR1 register (0xdb55 is 1101101101010101)
> With this, if McBSP is operating correctly you should be seeing this
> pattern going to the codec.
Peter,
I am not sure how did you expect me to see this pattern. On a scope screen?
Unforunatelly I had to return the scope this morning.
I have further modified the code like this:
@@ -25,6 +25,7 @@
#include <linux/init.h>
#include <linux/module.h>
#include <linux/device.h>
+#include <linux/random.h>
#include <sound/core.h>
#include <sound/pcm.h>
#include <sound/pcm_params.h>
@@ -186,7 +186,7 @@ static int omap_mcbsp_dai_trigger(struct snd_pcm_substream
*substream, int cmd,
struct snd_soc_pcm_runtime *rtd = substream->private_data;
struct snd_soc_dai *cpu_dai = rtd->dai->cpu_dai;
struct omap_mcbsp_data *mcbsp_data = to_mcbsp(cpu_dai->private_data);
- int err = 0;
+ int i, err = 0;
switch (cmd) {
case SNDRV_PCM_TRIGGER_START:
@@ -191,6 +191,8 @@ static int omap_mcbsp_dai_trigger(struct snd_pcm_substream
*substream, int cmd,
case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
if (!mcbsp_data->active++)
omap_mcbsp_start(mcbsp_data->bus_id);
+ for (i = 8000; i > 0; i--)
+ omap_mcbsp_pollwrite(mcbsp_data->bus_id, (u16)random32
());
break;
case SNDRV_PCM_TRIGGER_STOP:
in hope I should be able to hear a noise for one second, shouldn't I.
> If it does, than we have some problems with the
> McBSP/DMA cooperation, if this pattern is not seen on the bus, than the
> McBSP is not shifting data out for some reason.
Now aplay returns 1 second later than before, so I conclude the loop is
processed correctly. However, I am not able to hear a single ripple nor see
any error messages from omap_mcbsp_pollwrite() :(, so it looks like the
latter is more probable.
Janusz
--
To unsubscribe from this list: send the line "unsubscribe alsa-devel" in
the body of a message to majordomo at vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
More information about the Alsa-devel
mailing list