diff options
Diffstat (limited to 'include/sound/compress_driver.h')
-rw-r--r-- | include/sound/compress_driver.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/include/sound/compress_driver.h b/include/sound/compress_driver.h index fa1d05512c09..99bc1058cdd7 100644 --- a/include/sound/compress_driver.h +++ b/include/sound/compress_driver.h @@ -82,6 +82,7 @@ struct snd_compr_stream { bool metadata_set; bool next_track; void *private_data; + struct snd_soc_pcm_runtime *be; }; /** @@ -96,6 +97,8 @@ struct snd_compr_stream { * @get_params: retrieve the codec parameters, mandatory * @set_metadata: Set the metadata values for a stream * @get_metadata: retrieves the requested metadata values from stream + * @set_next_track_param: send codec specific data of subsequent track + * in gapless * @trigger: Trigger operations like start, pause, resume, drain, stop. * This callback is mandatory * @pointer: Retrieve current h/w pointer information. Mandatory @@ -118,6 +121,8 @@ struct snd_compr_ops { struct snd_compr_metadata *metadata); int (*get_metadata)(struct snd_compr_stream *stream, struct snd_compr_metadata *metadata); + int (*set_next_track_param)(struct snd_compr_stream *stream, + union snd_codec_options *codec_options); int (*trigger)(struct snd_compr_stream *stream, int cmd); int (*pointer)(struct snd_compr_stream *stream, struct snd_compr_tstamp *tstamp); @@ -159,6 +164,7 @@ int snd_compress_register(struct snd_compr *device); int snd_compress_deregister(struct snd_compr *device); int snd_compress_new(struct snd_card *card, int device, int type, struct snd_compr *compr); +void snd_compress_free(struct snd_card *card, struct snd_compr *compr); /* dsp driver callback apis * For playback: driver should call snd_compress_fragment_elapsed() to let the |