From 796fad441cb248c1eac88bfb3a5929bb1a10fabb Mon Sep 17 00:00:00 2001 From: Vaibhav Agarwal Date: Thu, 28 Jan 2016 21:15:39 +0530 Subject: greybus: audio: codec driver cleanup audio codec driver is now moved to bundle driver approach. This resolved many race conditions related to audio mgmt & data connection init/exit sequence. Thus, a lot of helper functions can now be safely removed. Signed-off-by: Vaibhav Agarwal Signed-off-by: Greg Kroah-Hartman --- drivers/staging/greybus/audio_codec.h | 21 ++++++--------------- 1 file changed, 6 insertions(+), 15 deletions(-) (limited to 'drivers/staging/greybus/audio_codec.h') diff --git a/drivers/staging/greybus/audio_codec.h b/drivers/staging/greybus/audio_codec.h index bba48a59bf4d..56110913b70e 100644 --- a/drivers/staging/greybus/audio_codec.h +++ b/drivers/staging/greybus/audio_codec.h @@ -84,6 +84,8 @@ struct gbaudio_control { struct gbaudio_dai { __le16 data_cport; char name[NAME_SIZE]; + /* DAI users */ + atomic_t users; struct gb_connection *connection; struct list_head list; }; @@ -116,8 +118,9 @@ struct gbaudio_codec_info { char *dailink_name[MAX_DAIS]; int num_dai_links; - /* topology related */ struct gb_connection *mgmt_connection; + size_t num_data_connections; + /* topology related */ int num_dais; int num_kcontrols; int num_dapm_widgets; @@ -131,9 +134,6 @@ struct gbaudio_codec_info { struct snd_soc_dapm_route *routes; struct snd_soc_dai_driver *dais; - /* codec users */ - atomic_t users; - /* lists */ struct list_head dai_list; struct list_head widget_list; @@ -142,17 +142,8 @@ struct gbaudio_codec_info { struct mutex lock; }; -struct gb_audio { - struct gb_connection *mgmt_connection; - size_t num_data_connections; - struct gbaudio_codec_info *gbcodec; - struct gb_connection *data_connection[0]; -}; - -struct gbaudio_dai *gbaudio_add_dai(struct gbaudio_codec_info *gbcodec, - int data_cport, - struct gb_connection *connection, - const char *name); +struct gbaudio_dai *gbaudio_find_dai(struct gbaudio_codec_info *gbcodec, + int data_cport, const char *name); int gbaudio_tplg_parse_data(struct gbaudio_codec_info *gbcodec, struct gb_audio_topology *tplg_data); void gbaudio_tplg_release(struct gbaudio_codec_info *gbcodec); -- cgit v1.2.3