Skip to content
Commit 24f64ad5 authored by Javier Martinez Canillas's avatar Javier Martinez Canillas
Browse files

ALSA: bcm2835: defer bcm2835 PCM write using the workqueue



Only PCM playback and stop are deferred using a workqueue on
the ALSA bcm2835 driver. The actual writing of PCM samples
is synchronous.

This works well for the read/write transfer method since
the snd_pcm_ops .copy function pointer runs on process context.

But the snd_pcm_ops .ack function pointer used to implement
direct read/write transfer using a memory-mapped I/O, runs
with interrupts disabled. Since the Kernel to VideoCore
interface driver has to be able to sleep, PCM write has to be
deferred to in preparation to add mmap support to the driver.

Signed-off-by: default avatarJavier Martinez Canillas <javier.martinez@collabora.co.uk>
parent fd22e4c9
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment