Lines Matching +full:is +full:- +full:compress +full:- +full:dai
1 // SPDX-License-Identifier: (GPL-2.0-only OR BSD-3-Clause)
3 // This file is provided under a dual BSD/GPLv2 license. When using or
6 // Copyright(c) 2019-2020 Intel Corporation. All rights reserved.
12 #include "compress.h"
22 struct snd_soc_dai *dai) in sof_probe_compr_open() argument
25 snd_soc_component_get_drvdata(dai->component); in sof_probe_compr_open()
28 ret = snd_sof_probe_compr_assign(sdev, cstream, dai); in sof_probe_compr_open()
30 dev_err(dai->dev, "Failed to assign probe stream: %d\n", ret); in sof_probe_compr_open()
34 sdev->extractor_stream_tag = ret; in sof_probe_compr_open()
40 struct snd_soc_dai *dai) in sof_probe_compr_free() argument
43 snd_soc_component_get_drvdata(dai->component); in sof_probe_compr_free()
51 dev_err(dai->dev, "Failed to get probe points: %d\n", ret); in sof_probe_compr_free()
62 dev_err(dai->dev, "Failed to deinit probe: %d\n", ret); in sof_probe_compr_free()
64 sdev->extractor_stream_tag = SOF_PROBE_INVALID_NODE_ID; in sof_probe_compr_free()
67 return snd_sof_probe_compr_free(sdev, cstream, dai); in sof_probe_compr_free()
72 struct snd_compr_params *params, struct snd_soc_dai *dai) in sof_probe_compr_set_params() argument
74 struct snd_compr_runtime *rtd = cstream->runtime; in sof_probe_compr_set_params()
76 snd_soc_component_get_drvdata(dai->component); in sof_probe_compr_set_params()
79 cstream->dma_buffer.dev.type = SNDRV_DMA_TYPE_DEV_SG; in sof_probe_compr_set_params()
80 cstream->dma_buffer.dev.dev = sdev->dev; in sof_probe_compr_set_params()
81 ret = snd_compr_malloc_pages(cstream, rtd->buffer_size); in sof_probe_compr_set_params()
85 ret = snd_sof_probe_compr_set_params(sdev, cstream, params, dai); in sof_probe_compr_set_params()
89 ret = sof_ipc_probe_init(sdev, sdev->extractor_stream_tag, in sof_probe_compr_set_params()
90 rtd->dma_bytes); in sof_probe_compr_set_params()
92 dev_err(dai->dev, "Failed to init probe: %d\n", ret); in sof_probe_compr_set_params()
101 struct snd_soc_dai *dai) in sof_probe_compr_trigger() argument
104 snd_soc_component_get_drvdata(dai->component); in sof_probe_compr_trigger()
106 return snd_sof_probe_compr_trigger(sdev, cstream, cmd, dai); in sof_probe_compr_trigger()
111 struct snd_compr_tstamp *tstamp, struct snd_soc_dai *dai) in sof_probe_compr_pointer() argument
114 snd_soc_component_get_drvdata(dai->component); in sof_probe_compr_pointer()
116 return snd_sof_probe_compr_pointer(sdev, cstream, tstamp, dai); in sof_probe_compr_pointer()
124 struct snd_compr_runtime *rtd = cstream->runtime; in sof_probe_compr_copy()
129 if (count > rtd->buffer_size) in sof_probe_compr_copy()
130 count = rtd->buffer_size; in sof_probe_compr_copy()
132 div_u64_rem(rtd->total_bytes_transferred, rtd->buffer_size, &offset); in sof_probe_compr_copy()
133 ptr = rtd->dma_area + offset; in sof_probe_compr_copy()
134 n = rtd->buffer_size - offset; in sof_probe_compr_copy()
140 ret += copy_to_user(buf + n, rtd->dma_area, count - n); in sof_probe_compr_copy()
144 return count - ret; in sof_probe_compr_copy()