public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: lamikr <lamikr@cc.jyu.fi>
To: Daniel Petrini <d.pensator@gmail.com>
Cc: linux-omap-open-source@linux.omap.com
Subject: Re: omap alsa tsc2101 driver
Date: Wed, 08 Feb 2006 14:59:59 +0200	[thread overview]
Message-ID: <43E9EB4F.9090902@cc.jyu.fi> (raw)
In-Reply-To: <9268368b0602071429k9563756hc94fbc4efd124aa0@mail.gmail.com>

I got my driver version working also with h6300/1510! But the solution
is not perfect and I do not yet understand why it helped.
I did not made any changes to audio_dma_get_pos() method. Instead I just
added dma_close to audio_process_dma() method
before each dma_start call and that forces the DMA to somehow trigger
irq_handler more oftern.

*diff -Naur h6300_dev_old/sound/arm/omap/omap-alsa-tsc2101.c h6300_dev_working/sound/arm/omap/omap-alsa-tsc2101.c*
*--- h6300_dev_old/sound/arm/omap/omap-alsa-tsc2101.c	2006-02-06 15:36:21.000000000 +0200*
*+++ h6300_dev_working/sound/arm/omap/omap-alsa-tsc2101.c	2006-02-08 14:37:27.000000000 +0200*
@@ -508,6 +508,7 @@
 	int period;
 	unsigned int dma_size;
 	unsigned int offset;
+	unsigned long flags;
 	int ret;
 
 	runtime = substream->runtime;
@@ -528,6 +529,11 @@
 			runtime->frame_bits,
 			runtime->dma_addr,
 			(dma_addr_t)runtime->dma_area + offset);
+#ifdef CONFIG_MACH_OMAP_H6300
+		spin_lock_irqsave(&s->dma_lock, flags);
+		omap_alsa_audio_stop_dma(s);
+		spin_unlock_irqrestore(&s->dma_lock, flags);
+#endif
 		ret	= omap_start_alsa_sound_dma(s,
 						 (dma_addr_t)runtime->dma_area + offset, 
 						 dma_size);

Now I need to figure out why this fixed the problem and what would be a
smarter solution for this.
In addition I can hear that 41000 hz sound is still not played with full
speed. (Maybe 1/2 speed is more correct...)

Mika

  parent reply	other threads:[~2006-02-08 12:59 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-02-05 21:24 omap alsa tsc2101 driver lamikr
2006-02-06 19:13 ` Daniel Petrini
2006-02-06 20:17   ` lamikr
2006-02-06 22:01     ` Daniel Petrini
2006-02-07 12:43       ` lamikr
2006-02-07 14:34         ` Daniel Petrini
2006-02-07 20:40           ` lamikr
2006-02-07 22:29             ` Daniel Petrini
2006-02-07 23:05               ` lamikr
2006-02-07 23:16               ` lamikr
2006-02-08 12:59               ` lamikr [this message]
2006-02-07 16:19         ` Anderson Lizardo
2006-02-07 20:43           ` lamikr

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=43E9EB4F.9090902@cc.jyu.fi \
    --to=lamikr@cc.jyu.fi \
    --cc=d.pensator@gmail.com \
    --cc=linux-omap-open-source@linux.omap.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox