diff options
author | Simon Glass <sjg@chromium.org> | 2020-02-03 07:36:06 -0700 |
---|---|---|
committer | Simon Glass <sjg@chromium.org> | 2020-02-05 19:33:46 -0700 |
commit | 3062cd17af35b691582230c382dd125625d3b7ca (patch) | |
tree | 2fda0d01ece1da65ea3e0dd0d7790e2129aaa064 /include/sound.h | |
parent | 3ff6fe5fab11a99d4b3ec94a8a4a238d6f96f5ba (diff) | |
download | u-boot-3062cd17af35b691582230c382dd125625d3b7ca.tar.gz u-boot-3062cd17af35b691582230c382dd125625d3b7ca.tar.bz2 u-boot-3062cd17af35b691582230c382dd125625d3b7ca.zip |
sound: Add a new stop_play() method
At present there is no positive indication that U-Boot has finished
sending sound data. This means that it is not possible to power down an
audio codec, for example. Add a new method that is called once all sound
data has been sent.
Add a new method for this, called when the sound_play() call is done.
Signed-off-by: Simon Glass <sjg@chromium.org>
Diffstat (limited to 'include/sound.h')
-rw-r--r-- | include/sound.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/include/sound.h b/include/sound.h index 47de9fa3ed..71bd850652 100644 --- a/include/sound.h +++ b/include/sound.h @@ -69,6 +69,18 @@ struct sound_ops { int (*play)(struct udevice *dev, void *data, uint data_size); /** + * stop_play() - Indicate that there is no more data coming + * + * This is called once play() has finished sending all the data to the + * output device. This may be used to tell the hardware to turn off the + * codec, for example. + * + * @dev: Sound device + * @return 0 if OK, -ve on error + */ + int (*stop_play)(struct udevice *dev); + + /** * start_beep() - Start beeping (optional) * * This tells the sound hardware to start a beep. It will continue until |