Lines Matching refs:ad

59 	struct hdmi_audio_data *ad = dev_get_drvdata(dev);  in hdmi_dai_abort()  local
61 mutex_lock(&ad->current_stream_lock); in hdmi_dai_abort()
62 if (ad->current_stream && ad->current_stream->runtime && in hdmi_dai_abort()
63 snd_pcm_running(ad->current_stream)) { in hdmi_dai_abort()
65 snd_pcm_stream_lock_irq(ad->current_stream); in hdmi_dai_abort()
66 snd_pcm_stop(ad->current_stream, SNDRV_PCM_STATE_DISCONNECTED); in hdmi_dai_abort()
67 snd_pcm_stream_unlock_irq(ad->current_stream); in hdmi_dai_abort()
69 mutex_unlock(&ad->current_stream_lock); in hdmi_dai_abort()
75 struct hdmi_audio_data *ad = card_drvdata_substream(substream); in hdmi_dai_startup() local
88 snd_soc_dai_set_dma_data(dai, substream, &ad->dma_data); in hdmi_dai_startup()
90 mutex_lock(&ad->current_stream_lock); in hdmi_dai_startup()
91 ad->current_stream = substream; in hdmi_dai_startup()
92 mutex_unlock(&ad->current_stream_lock); in hdmi_dai_startup()
94 ret = ad->ops->audio_startup(ad->dssdev, hdmi_dai_abort); in hdmi_dai_startup()
97 mutex_lock(&ad->current_stream_lock); in hdmi_dai_startup()
98 ad->current_stream = NULL; in hdmi_dai_startup()
99 mutex_unlock(&ad->current_stream_lock); in hdmi_dai_startup()
109 struct hdmi_audio_data *ad = card_drvdata_substream(substream); in hdmi_dai_hw_params() local
110 struct snd_aes_iec958 *iec = &ad->iec; in hdmi_dai_hw_params()
111 struct snd_cea_861_aud_if *cea = &ad->cea; in hdmi_dai_hw_params()
113 WARN_ON(ad->current_stream != substream); in hdmi_dai_hw_params()
117 ad->dma_data.maxburst = 16; in hdmi_dai_hw_params()
120 ad->dma_data.maxburst = 32; in hdmi_dai_hw_params()
127 ad->dss_audio.iec = iec; in hdmi_dai_hw_params()
128 ad->dss_audio.cea = cea; in hdmi_dai_hw_params()
226 return ad->ops->audio_config(ad->dssdev, &ad->dss_audio); in hdmi_dai_hw_params()
232 struct hdmi_audio_data *ad = card_drvdata_substream(substream); in hdmi_dai_trigger() local
235 WARN_ON(ad->current_stream != substream); in hdmi_dai_trigger()
241 err = ad->ops->audio_start(ad->dssdev); in hdmi_dai_trigger()
246 ad->ops->audio_stop(ad->dssdev); in hdmi_dai_trigger()
257 struct hdmi_audio_data *ad = card_drvdata_substream(substream); in hdmi_dai_shutdown() local
259 WARN_ON(ad->current_stream != substream); in hdmi_dai_shutdown()
261 ad->ops->audio_shutdown(ad->dssdev); in hdmi_dai_shutdown()
263 mutex_lock(&ad->current_stream_lock); in hdmi_dai_shutdown()
264 ad->current_stream = NULL; in hdmi_dai_shutdown()
265 mutex_unlock(&ad->current_stream_lock); in hdmi_dai_shutdown()
311 struct hdmi_audio_data *ad; in omap_hdmi_audio_probe() local
321 ad = devm_kzalloc(dev, sizeof(*ad), GFP_KERNEL); in omap_hdmi_audio_probe()
322 if (!ad) in omap_hdmi_audio_probe()
324 ad->dssdev = ha->dev; in omap_hdmi_audio_probe()
325 ad->ops = ha->ops; in omap_hdmi_audio_probe()
326 ad->dma_data.addr = ha->audio_dma_addr; in omap_hdmi_audio_probe()
327 ad->dma_data.filter_data = "audio_tx"; in omap_hdmi_audio_probe()
328 ad->dma_data.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES; in omap_hdmi_audio_probe()
329 mutex_init(&ad->current_stream_lock); in omap_hdmi_audio_probe()
343 ret = snd_soc_register_component(ad->dssdev, &omap_hdmi_component, in omap_hdmi_audio_probe()
348 ret = omap_pcm_platform_register(ad->dssdev); in omap_hdmi_audio_probe()
357 "HDMI %s", dev_name(ad->dssdev)); in omap_hdmi_audio_probe()
363 card->dai_link->cpu_dai_name = dev_name(ad->dssdev); in omap_hdmi_audio_probe()
364 card->dai_link->platform_name = dev_name(ad->dssdev); in omap_hdmi_audio_probe()
373 snd_soc_unregister_component(ad->dssdev); in omap_hdmi_audio_probe()
377 ad->card = card; in omap_hdmi_audio_probe()
378 snd_soc_card_set_drvdata(card, ad); in omap_hdmi_audio_probe()
380 dev_set_drvdata(dev, ad); in omap_hdmi_audio_probe()
387 struct hdmi_audio_data *ad = platform_get_drvdata(pdev); in omap_hdmi_audio_remove() local
389 snd_soc_unregister_card(ad->card); in omap_hdmi_audio_remove()
390 snd_soc_unregister_component(ad->dssdev); in omap_hdmi_audio_remove()