All of lore.kernel.org
 help / color / mirror / Atom feed
* Streaming wake-up buffer from DSP to SoC over SPI
@ 2014-12-16  2:45 Dylan Reid
  2014-12-16  4:41 ` Vinod Koul
  2014-12-16 11:42 ` Mark Brown
  0 siblings, 2 replies; 5+ messages in thread
From: Dylan Reid @ 2014-12-16  2:45 UTC (permalink / raw)
  To: alsa-devel@alsa-project.org
  Cc: Oder Chiou, Takashi Iwai, Mark Brown, Vinod Koul

What is the right way to model a bursty, SPI based audio transfer?
There could be hours between samples, then several seconds of audio
will be ready.

The codec, an rt5677, is attached to the SoC with both an IIS bus and
a SPI bus.  The IIS bus is used for normal audio playback and record.
The SPI bus is used for transferring audio that caused a voice wake,
"OK Google" in this case.

When the codec detects the wake up phrase, the SoC will read out two
plus seconds of buffered data over the SPI bus and continue to stream
audio data over SPI for the rest of the query.  Nexus 9 has a custom
ioctl to access rt5677-spi and some user-space smarts to poll for more
data.

I was thinking of making a separate PCM device.  The odd things are
that it would have to originate from soc/codecs, the codec would own
the codec and cpu end of the link, and the hw_ptr position would need
to be queried over SPI.  But it would make userspace access to it more
standard looking.

Thanks for any opinions or thoughts.

Dylan

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2014-12-16 11:42 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-12-16  2:45 Streaming wake-up buffer from DSP to SoC over SPI Dylan Reid
2014-12-16  4:41 ` Vinod Koul
2014-12-16  8:16   ` Dylan Reid
2014-12-16 11:40     ` Mark Brown
2014-12-16 11:42 ` Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.