/linux-6.12.1/sound/drivers/ |
D | aloop.c | 72 int (*open)(struct loopback_pcm *dpcm); 76 int (*start)(struct loopback_pcm *dpcm); 80 int (*stop)(struct loopback_pcm *dpcm); 82 int (*stop_sync)(struct loopback_pcm *dpcm); 84 int (*close_substream)(struct loopback_pcm *dpcm); 88 int (*close_cable)(struct loopback_pcm *dpcm); 94 void (*dpcm_info)(struct loopback_pcm *dpcm, 170 static inline unsigned int byte_pos(struct loopback_pcm *dpcm, unsigned int x) in byte_pos() argument 172 if (dpcm->pcm_rate_shift == NO_PITCH) { in byte_pos() 176 HZ * (unsigned long long)dpcm->pcm_rate_shift); in byte_pos() [all …]
|
D | dummy.c | 243 static void dummy_systimer_rearm(struct dummy_systimer_pcm *dpcm) in dummy_systimer_rearm() argument 245 mod_timer(&dpcm->timer, jiffies + in dummy_systimer_rearm() 246 DIV_ROUND_UP(dpcm->frac_period_rest, dpcm->rate)); in dummy_systimer_rearm() 249 static void dummy_systimer_update(struct dummy_systimer_pcm *dpcm) in dummy_systimer_update() argument 253 delta = jiffies - dpcm->base_time; in dummy_systimer_update() 256 dpcm->base_time += delta; in dummy_systimer_update() 257 delta *= dpcm->rate; in dummy_systimer_update() 258 dpcm->frac_pos += delta; in dummy_systimer_update() 259 while (dpcm->frac_pos >= dpcm->frac_buffer_size) in dummy_systimer_update() 260 dpcm->frac_pos -= dpcm->frac_buffer_size; in dummy_systimer_update() [all …]
|
/linux-6.12.1/sound/soc/ |
D | soc-pcm.c | 25 #include <sound/soc-dpcm.h> 56 if (fe->dpcm[stream].runtime_update == SND_SOC_DPCM_UPDATE_FE) 66 if ((fe->dpcm[stream].runtime_update == SND_SOC_DPCM_UPDATE_FE) || in snd_soc_dpcm_be_can_update() 67 ((fe->dpcm[stream].runtime_update == SND_SOC_DPCM_UPDATE_BE) && in snd_soc_dpcm_be_can_update() 68 be->dpcm[stream].runtime_update)) in snd_soc_dpcm_be_can_update() 79 struct snd_soc_dpcm *dpcm; in snd_soc_dpcm_check_state() local 84 for_each_dpcm_fe(be, stream, dpcm) { in snd_soc_dpcm_check_state() 86 if (dpcm->fe == fe) in snd_soc_dpcm_check_state() 89 state = dpcm->fe->dpcm[stream].state; in snd_soc_dpcm_check_state() 194 struct snd_pcm_hw_params *params = &fe->dpcm[stream].hw_params; in dpcm_show_state() [all …]
|
D | soc-compress.c | 21 #include <sound/soc-dpcm.h> 137 struct snd_soc_dpcm *dpcm; in soc_compr_open_fe() local 153 fe->dpcm[stream].runtime_update = SND_SOC_DPCM_UPDATE_FE; in soc_compr_open_fe() 158 for_each_dpcm_be(fe, stream, dpcm) in soc_compr_open_fe() 159 dpcm->state = SND_SOC_DPCM_LINK_STATE_FREE; in soc_compr_open_fe() 180 fe->dpcm[stream].state = SND_SOC_DPCM_STATE_OPEN; in soc_compr_open_fe() 181 fe->dpcm[stream].runtime_update = SND_SOC_DPCM_UPDATE_NO; in soc_compr_open_fe() 198 fe->dpcm[stream].runtime_update = SND_SOC_DPCM_UPDATE_NO; in soc_compr_open_fe() 207 struct snd_soc_dpcm *dpcm; in soc_compr_free_fe() local 215 fe->dpcm[stream].runtime_update = SND_SOC_DPCM_UPDATE_FE; in soc_compr_free_fe() [all …]
|
/linux-6.12.1/sound/pci/asihpi/ |
D | asihpi.c | 427 struct snd_card_asihpi_pcm *dpcm = runtime->private_data; in snd_card_asihpi_pcm_hw_params() local 439 hpi_handle_error(hpi_format_create(&dpcm->format, in snd_card_asihpi_pcm_hw_params() 444 if (hpi_instream_reset(dpcm->h_stream) != 0) in snd_card_asihpi_pcm_hw_params() 448 dpcm->h_stream, &dpcm->format) != 0) in snd_card_asihpi_pcm_hw_params() 452 dpcm->hpi_buffer_attached = 0; in snd_card_asihpi_pcm_hw_params() 454 err = hpi_stream_host_buffer_attach(dpcm->h_stream, in snd_card_asihpi_pcm_hw_params() 467 err = hpi_stream_get_info_ex(dpcm->h_stream, NULL, in snd_card_asihpi_pcm_hw_params() 468 &dpcm->hpi_buffer_attached, NULL, NULL, NULL); in snd_card_asihpi_pcm_hw_params() 477 dpcm->bytes_per_sec = bytes_per_sec; in snd_card_asihpi_pcm_hw_params() 478 dpcm->buffer_bytes = params_buffer_bytes(params); in snd_card_asihpi_pcm_hw_params() [all …]
|
/linux-6.12.1/include/sound/ |
D | soc-dpcm.h | 3 * linux/sound/soc-dpcm.h -- ALSA SoC Dynamic PCM Support 76 /* list of BE and FE for this DPCM link */ 107 list_for_each_entry(_dpcm, &(be)->dpcm[stream].fe_clients, list_fe) 110 list_for_each_entry(_dpcm, &(fe)->dpcm[stream].be_clients, list_be) 112 list_for_each_entry_safe(_dpcm, __dpcm, &(fe)->dpcm[stream].be_clients, list_be) 114 list_for_each_entry_continue_reverse(_dpcm, &(fe)->dpcm[stream].be_clients, list_be)
|
/linux-6.12.1/Documentation/sound/soc/ |
D | dpcm.rst | 13 The DPCM runtime routing is determined by the ALSA mixer settings in the same 14 way as the analog signal is routed in an ASoC codec driver. DPCM uses a DAPM 18 DPCM re-uses all the existing component codec, platform and DAI drivers without 53 Example - DPCM Switching playback from DAI0 to DAI1 99 3. DPCM runs the PCM trigger(stop), hw_free(), shutdown() operations on DAI0 104 5. DPCM runs the PCM ops for startup(), hw_params(), prepare() and 108 and then DPCM will take care of managing the DAI PCM operations to either bring 113 DPCM machine driver 116 The DPCM enabled ASoC machine driver is similar to normal machine drivers 166 set the DAI link to a DPCM FE with the ``dynamic = 1``. The supported FE stream [all …]
|
/linux-6.12.1/sound/soc/generic/ |
D | audio-graph-card2-custom-sample.dtsi | 87 * [DPCM] 97 * [DPCM-Multi] 135 /* for [DPCM] */ 141 /* for [DPCM-Multi] */ 200 * [DPCM]: both FE / BE 206 * [DPCM-Multi]: both FE / BE 263 * [DPCM-Multi]::BE 484 dpcm { 494 * [DPCM]::FE 506 * [DPCM-Multi]::FE [all …]
|
D | Kconfig | 10 It also support DPCM of multi CPU single Codec ststem. 19 It also support DPCM of multi CPU single Codec ststem.
|
D | audio-graph-card2.c | 129 DPCM 154 dpcm { 234 #define GRAPH_NODENAME_DPCM "dpcm" 314 str = "DPCM Front-End"; in graph_get_type() 316 str = "DPCM Back-End"; in graph_get_type() 476 * if DPCM-BE case in __graph_parse_node() 623 * DPCM is out of scope in graph_parse_node_multi() 902 * dpcm { in audio_graph2_link_dpcm() 936 * dpcm { in audio_graph2_link_dpcm() 969 graph_parse_convert(ep, dai_props); /* at node of <dpcm> */ in audio_graph2_link_dpcm() [all …]
|
/linux-6.12.1/drivers/staging/media/omap4iss/ |
D | iss_csi2.c | 122 /* No DPCM decompression */ 124 /* DPCM decompression */ 129 /* No DPCM decompression */ 131 /* DPCM decompression */ 139 /* No DPCM decompression */ 141 /* DPCM decompression */ 146 /* No DPCM decompression */ 148 /* DPCM decompression */ 156 /* No DPCM decompression */ 158 /* DPCM decompression */ [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/sound/ |
D | fsl,imx-asrc.yaml | 12 different output clock. The driver currently works as a Front End of DPCM 82 description: The mutual sample rate used by DPCM Back Ends 86 description: The mutual sample width used by DPCM Back Ends 107 Defines a mutual sample format used by DPCM Back Ends, which can
|
D | audio-graph-card2.yaml | 34 dpcm: 36 description: DPCM node
|
D | qcom,q6usb.yaml | 7 title: Qualcomm ASoC DPCM USB backend DAI 13 The USB port is a supported AFE path on the Q6 DSP. This ASoC DPCM
|
D | fsl,easrc.yaml | 62 description: Defines a mutual sample rate used by DPCM Back Ends 69 Defines a mutual sample format used by DPCM Back Ends
|
/linux-6.12.1/sound/soc/mediatek/common/ |
D | mtk-dsp-sof-common.c | 78 struct snd_soc_dpcm *dpcm; in mtk_sof_find_tplg_be() local 83 for_each_dpcm_fe(rtd, stream, dpcm) { in mtk_sof_find_tplg_be() 84 fe = dpcm->fe; in mtk_sof_find_tplg_be() 92 for_each_dpcm_be(fe, stream, dpcm) { in mtk_sof_find_tplg_be() 93 be = dpcm->be; in mtk_sof_find_tplg_be()
|
/linux-6.12.1/drivers/media/platform/ti/omap3isp/ |
D | ispcsi2.c | 104 /* No DPCM decompression */ 106 /* DPCM decompression */ 111 /* No DPCM decompression */ 114 /* DPCM decompression */ 122 /* No DPCM decompression */ 124 /* DPCM decompression */ 130 /* No DPCM decompression */ 133 /* DPCM decompression */ 142 /* No DPCM decompression */ 145 /* DPCM decompression */ [all …]
|
/linux-6.12.1/drivers/media/platform/qcom/camss/ |
D | camss-csid-gen1.h | 24 #define PLAIN_FORMAT_PLAIN8 0x0 /* supports DPCM, UNCOMPRESSED_6/8_BIT */ 25 #define PLAIN_FORMAT_PLAIN16 0x1 /* supports DPCM, UNCOMPRESSED_10/16_BIT */
|
D | camss-csid-gen2.h | 35 #define PLAIN_FORMAT_PLAIN8 0x0 /* supports DPCM, UNCOMPRESSED_6/8_BIT */ 36 #define PLAIN_FORMAT_PLAIN16 0x1 /* supports DPCM, UNCOMPRESSED_10/16_BIT */
|
/linux-6.12.1/sound/soc/sof/ |
D | ipc3-pcm.c | 219 struct snd_soc_dpcm *dpcm; in sof_ipc3_pcm_dai_link_fixup() local 281 for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_PLAYBACK, dpcm) { in sof_ipc3_pcm_dai_link_fixup() 282 struct snd_soc_pcm_runtime *fe = dpcm->fe; in sof_ipc3_pcm_dai_link_fixup() 400 for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_PLAYBACK, dpcm) { in sof_ipc3_pcm_dai_link_fixup() 401 struct snd_soc_pcm_runtime *fe = dpcm->fe; in sof_ipc3_pcm_dai_link_fixup() 407 for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_CAPTURE, dpcm) { in sof_ipc3_pcm_dai_link_fixup() 408 struct snd_soc_pcm_runtime *fe = dpcm->fe; in sof_ipc3_pcm_dai_link_fixup()
|
/linux-6.12.1/drivers/slimbus/ |
D | stream.c | 99 * From ASoC DPCM framework, this state is linked to startup() operation. 201 * return zero on success and error code on failure. From ASoC DPCM framework, 356 * Return: zero on success and error code on failure. From ASoC DPCM framework, 409 * Return: zero on success and error code on failure. From ASoC DPCM framework, 446 * Return: zero on success and error code on failure. From ASoC DPCM framework, 476 * Return: zero on success and error code on failure. From ASoC DPCM framework,
|
/linux-6.12.1/Documentation/userspace-api/media/v4l/ |
D | pixfmt-srggb10dpcm8.rst | 25 colour compressed to 8 bits each, using DPCM compression. DPCM,
|
/linux-6.12.1/sound/soc/intel/avs/ |
D | pcm.c | 161 struct snd_soc_dpcm *dpcm; in avs_dai_be_hw_params() local 164 for_each_dpcm_fe(be, substream->stream, dpcm) { in avs_dai_be_hw_params() 165 fe = dpcm->fe; in avs_dai_be_hw_params() 166 fe_hw_params = &fe->dpcm[substream->stream].hw_params; in avs_dai_be_hw_params() 563 struct snd_soc_dpcm *dpcm; in avs_dai_fe_hw_params() local 579 for_each_dpcm_be(fe, substream->stream, dpcm) { in avs_dai_fe_hw_params() 580 be = dpcm->be; in avs_dai_fe_hw_params() 581 be_hw_params = &be->dpcm[substream->stream].hw_params; in avs_dai_fe_hw_params() 991 ret = dai->driver->ops->hw_params(substream, &rtd->dpcm[substream->stream].hw_params, dai); in avs_dai_resume_hw_params() 1593 struct snd_soc_dpcm *dpcm; in avs_component_hda_open() local [all …]
|
/linux-6.12.1/sound/soc/fsl/ |
D | fsl_asrc_dma.c | 149 struct snd_soc_dpcm *dpcm; in fsl_asrc_dma_hw_params() local 155 /* Fetch the Back-End dma_data from DPCM */ in fsl_asrc_dma_hw_params() 156 for_each_dpcm_be(rtd, stream, dpcm) { in fsl_asrc_dma_hw_params() 157 struct snd_soc_pcm_runtime *be = dpcm->be; in fsl_asrc_dma_hw_params() 161 if (dpcm->fe != rtd) in fsl_asrc_dma_hw_params()
|
/linux-6.12.1/Documentation/driver-api/soundwire/ |
D | stream.rst | 197 framework(ASoC DPCM) guarantees that stream operations on a card are 289 per stream. From ASoC DPCM framework, this stream state maybe linked to 320 only be invoked once by respective Master(s) and Slave(s). From ASoC DPCM 369 once per stream. From ASoC DPCM framework, this stream state is linked 401 stream. From ASoC DPCM framework, this stream state is linked to 429 per stream. From ASoC DPCM framework, this stream state is linked to 496 all the Master(s) and Slave(s) associated with stream. From ASoC DPCM 507 The .shutdown() ASoC DPCM operation calls below Bus API to release
|