/linux-6.15/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.15/sound/soc/ |
D | soc-pcm.c | 25 #include <sound/soc-dpcm.h> 41 if (fe->dpcm[stream].runtime_update == SND_SOC_DPCM_UPDATE_FE) 51 if ((fe->dpcm[stream].runtime_update == SND_SOC_DPCM_UPDATE_FE) || in snd_soc_dpcm_can_be_update() 52 ((fe->dpcm[stream].runtime_update == SND_SOC_DPCM_UPDATE_BE) && in snd_soc_dpcm_can_be_update() 53 be->dpcm[stream].runtime_update)) in snd_soc_dpcm_can_be_update() 64 struct snd_soc_dpcm *dpcm; in snd_soc_dpcm_check_state() local 69 for_each_dpcm_fe(be, stream, dpcm) { in snd_soc_dpcm_check_state() 71 if (dpcm->fe == fe) in snd_soc_dpcm_check_state() 74 state = dpcm->fe->dpcm[stream].state; in snd_soc_dpcm_check_state() 179 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.15/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 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.15/sound/soc/generic/ |
D | audio-graph-card2-custom-sample2.dtsi | 55 /* for [DPCM] */ 61 /* for [DPCM-Multi] */ 85 * [DPCM] 98 * [DPCM-Multi] 141 * [DPCM-Multi]::BE 201 dpcm { 212 * [DPCM]::FE 224 * [DPCM-Multi]::FE 243 * [DPCM]::BE 254 * [DPCM-Multi]::BE [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" 319 str = "DPCM Front-End"; in graph_get_type() 321 str = "DPCM Back-End"; in graph_get_type() 479 * if DPCM-BE case in __graph_parse_node() 606 * DPCM is out of scope in graph_parse_node_multi() 889 * dpcm { in audio_graph2_link_dpcm() 923 * dpcm { in audio_graph2_link_dpcm() 956 graph_parse_convert(ep, dai_props); /* at node of <dpcm> */ in audio_graph2_link_dpcm() [all …]
|
/linux-6.15/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.15/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 167 set the DAI link to a DPCM FE with the ``dynamic = 1``. [all …]
|
/linux-6.15/Documentation/devicetree/bindings/sound/ |
D | fsl,imx-asrc.yaml | 12 different output clock. The driver currently works as a Front End of DPCM 86 description: The mutual sample rate used by DPCM Back Ends 90 description: The mutual sample width used by DPCM Back Ends 111 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.15/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.15/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.15/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-780.h | 21 #define PLAIN_FORMAT_PLAIN8 0x0 /* supports DPCM, UNCOMPRESSED_6/8_BIT */ 22 #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.15/sound/soc/sof/ |
D | ipc3-pcm.c | 220 struct snd_soc_dpcm *dpcm; in sof_ipc3_pcm_dai_link_fixup() local 282 for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_PLAYBACK, dpcm) { in sof_ipc3_pcm_dai_link_fixup() 283 struct snd_soc_pcm_runtime *fe = dpcm->fe; in sof_ipc3_pcm_dai_link_fixup() 401 for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_PLAYBACK, dpcm) { in sof_ipc3_pcm_dai_link_fixup() 402 struct snd_soc_pcm_runtime *fe = dpcm->fe; in sof_ipc3_pcm_dai_link_fixup() 408 for_each_dpcm_fe(rtd, SNDRV_PCM_STREAM_CAPTURE, dpcm) { in sof_ipc3_pcm_dai_link_fixup() 409 struct snd_soc_pcm_runtime *fe = dpcm->fe; in sof_ipc3_pcm_dai_link_fixup()
|
/linux-6.15/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.15/Documentation/userspace-api/media/v4l/ |
D | pixfmt-srggb10dpcm8.rst | 25 colour compressed to 8 bits each, using DPCM compression. DPCM,
|
/linux-6.15/sound/soc/intel/avs/ |
D | pcm.c | 208 struct snd_soc_dpcm *dpcm; in avs_dai_be_hw_params() local 212 for_each_dpcm_fe(be, substream->stream, dpcm) { in avs_dai_be_hw_params() 213 fe = dpcm->fe; in avs_dai_be_hw_params() 214 fe_hw_params = &fe->dpcm[substream->stream].hw_params; in avs_dai_be_hw_params() 611 struct snd_soc_dpcm *dpcm; in avs_dai_fe_hw_params() local 628 for_each_dpcm_be(fe, substream->stream, dpcm) { in avs_dai_fe_hw_params() 629 be = dpcm->be; in avs_dai_fe_hw_params() 630 be_hw_params = &be->dpcm[substream->stream].hw_params; in avs_dai_fe_hw_params() 1041 ret = dai->driver->ops->hw_params(substream, &rtd->dpcm[substream->stream].hw_params, dai); in avs_dai_resume_hw_params() 1644 struct snd_soc_dpcm *dpcm; in avs_component_hda_open() local [all …]
|
/linux-6.15/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() 163 if (dpcm->fe != rtd) in fsl_asrc_dma_hw_params()
|
/linux-6.15/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
|