Lines Matching defs:audio

19  * HDMI audio is implemented entirely within the HDMI IP block.  A
21 * and transfers them over an internal MAI (multi-channel audio
948 struct hdmi_audio_infoframe *audio = &vc4_hdmi->audio.infoframe;
951 memcpy(&frame.audio, audio, sizeof(*audio));
987 * If audio was streaming, then we need to reenabled the audio
990 if (vc4_hdmi->audio.streaming)
2293 /* HDMI audio codec callbacks */
2393 vc4_hdmi->audio.streaming = true;
2424 vc4_hdmi->audio.streaming = false;
2427 dev_err(dev, "Failed to stop audio infoframe: %d\n", ret);
2462 vc4_hdmi->audio.streaming = false;
2509 /* HDMI audio codec callbacks */
2593 memcpy(&vc4_hdmi->audio.infoframe, &params->cea, sizeof(params->cea));
2613 snd_soc_dai_init_dma_data(dai, &vc4_hdmi->audio.dma_data, NULL);
2638 .chan_names[SNDRV_PCM_STREAM_PLAYBACK] = "audio-rx",
2672 platform_device_unregister(vc4_hdmi->audio.codec_pdev);
2673 vc4_hdmi->audio.codec_pdev = NULL;
2680 struct snd_soc_dai_link *dai_link = &vc4_hdmi->audio.link;
2681 struct snd_soc_card *card = &vc4_hdmi->audio.card;
2706 BUILD_BUG_ON(offsetof(struct vc4_hdmi, audio) != 0);
2710 "'dmas' DT property is missing or empty, no HDMI audio\n");
2733 vc4_hdmi->audio.dma_data.addr = be32_to_cpup(addr) + mai_data->offset;
2734 vc4_hdmi->audio.dma_data.addr_width = DMA_SLAVE_BUSWIDTH_4_BYTES;
2735 vc4_hdmi->audio.dma_data.maxburst = 2;
2739 * registration there to avoid removing all the audio components
2753 * by the use of drm_dev_enter()/drm_dev_exit() in the audio
2782 vc4_hdmi->audio.codec_pdev = codec_pdev;
2788 dai_link->cpus = &vc4_hdmi->audio.cpu;
2789 dai_link->codecs = &vc4_hdmi->audio.codec;
2790 dai_link->platforms = &vc4_hdmi->audio.platform;
3517 vc4_hdmi->audio_clock = devm_clk_get(dev, "audio");
3519 DRM_ERROR("Failed to get audio clock\n");