rt5514_dsp         76 sound/soc/codecs/rt5514-spi.c 	struct rt5514_dsp *rt5514_dsp =
rt5514_dsp         77 sound/soc/codecs/rt5514-spi.c 		container_of(work, struct rt5514_dsp, copy_work.work);
rt5514_dsp         83 sound/soc/codecs/rt5514-spi.c 	mutex_lock(&rt5514_dsp->dma_lock);
rt5514_dsp         84 sound/soc/codecs/rt5514-spi.c 	if (!rt5514_dsp->substream) {
rt5514_dsp         85 sound/soc/codecs/rt5514-spi.c 		dev_err(rt5514_dsp->dev, "No pcm substream\n");
rt5514_dsp         89 sound/soc/codecs/rt5514-spi.c 	runtime = rt5514_dsp->substream->runtime;
rt5514_dsp         90 sound/soc/codecs/rt5514-spi.c 	period_bytes = snd_pcm_lib_period_bytes(rt5514_dsp->substream);
rt5514_dsp         92 sound/soc/codecs/rt5514-spi.c 		schedule_delayed_work(&rt5514_dsp->copy_work, 5);
rt5514_dsp         96 sound/soc/codecs/rt5514-spi.c 	if (rt5514_dsp->buf_size % period_bytes)
rt5514_dsp         97 sound/soc/codecs/rt5514-spi.c 		rt5514_dsp->buf_size = (rt5514_dsp->buf_size / period_bytes) *
rt5514_dsp        100 sound/soc/codecs/rt5514-spi.c 	if (rt5514_dsp->get_size >= rt5514_dsp->buf_size) {
rt5514_dsp        106 sound/soc/codecs/rt5514-spi.c 		if (cur_wp >= rt5514_dsp->buf_rp)
rt5514_dsp        107 sound/soc/codecs/rt5514-spi.c 			remain_data = (cur_wp - rt5514_dsp->buf_rp);
rt5514_dsp        110 sound/soc/codecs/rt5514-spi.c 				(rt5514_dsp->buf_limit - rt5514_dsp->buf_rp) +
rt5514_dsp        111 sound/soc/codecs/rt5514-spi.c 				(cur_wp - rt5514_dsp->buf_base);
rt5514_dsp        114 sound/soc/codecs/rt5514-spi.c 			schedule_delayed_work(&rt5514_dsp->copy_work, 5);
rt5514_dsp        119 sound/soc/codecs/rt5514-spi.c 	if (rt5514_dsp->buf_rp + period_bytes <= rt5514_dsp->buf_limit) {
rt5514_dsp        120 sound/soc/codecs/rt5514-spi.c 		rt5514_spi_burst_read(rt5514_dsp->buf_rp,
rt5514_dsp        121 sound/soc/codecs/rt5514-spi.c 			runtime->dma_area + rt5514_dsp->dma_offset,
rt5514_dsp        124 sound/soc/codecs/rt5514-spi.c 		if (rt5514_dsp->buf_rp + period_bytes == rt5514_dsp->buf_limit)
rt5514_dsp        125 sound/soc/codecs/rt5514-spi.c 			rt5514_dsp->buf_rp = rt5514_dsp->buf_base;
rt5514_dsp        127 sound/soc/codecs/rt5514-spi.c 			rt5514_dsp->buf_rp += period_bytes;
rt5514_dsp        129 sound/soc/codecs/rt5514-spi.c 		truncated_bytes = rt5514_dsp->buf_limit - rt5514_dsp->buf_rp;
rt5514_dsp        130 sound/soc/codecs/rt5514-spi.c 		rt5514_spi_burst_read(rt5514_dsp->buf_rp,
rt5514_dsp        131 sound/soc/codecs/rt5514-spi.c 			runtime->dma_area + rt5514_dsp->dma_offset,
rt5514_dsp        134 sound/soc/codecs/rt5514-spi.c 		rt5514_spi_burst_read(rt5514_dsp->buf_base,
rt5514_dsp        135 sound/soc/codecs/rt5514-spi.c 			runtime->dma_area + rt5514_dsp->dma_offset +
rt5514_dsp        138 sound/soc/codecs/rt5514-spi.c 		rt5514_dsp->buf_rp = rt5514_dsp->buf_base + period_bytes -
rt5514_dsp        142 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->get_size += period_bytes;
rt5514_dsp        143 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->dma_offset += period_bytes;
rt5514_dsp        144 sound/soc/codecs/rt5514-spi.c 	if (rt5514_dsp->dma_offset >= runtime->dma_bytes)
rt5514_dsp        145 sound/soc/codecs/rt5514-spi.c 		rt5514_dsp->dma_offset = 0;
rt5514_dsp        147 sound/soc/codecs/rt5514-spi.c 	snd_pcm_period_elapsed(rt5514_dsp->substream);
rt5514_dsp        149 sound/soc/codecs/rt5514-spi.c 	schedule_delayed_work(&rt5514_dsp->copy_work, 5);
rt5514_dsp        152 sound/soc/codecs/rt5514-spi.c 	mutex_unlock(&rt5514_dsp->dma_lock);
rt5514_dsp        155 sound/soc/codecs/rt5514-spi.c static void rt5514_schedule_copy(struct rt5514_dsp *rt5514_dsp)
rt5514_dsp        159 sound/soc/codecs/rt5514-spi.c 	if (!rt5514_dsp->substream)
rt5514_dsp        162 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->get_size = 0;
rt5514_dsp        171 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->buf_base = buf[0] | buf[1] << 8 | buf[2] << 16 |
rt5514_dsp        176 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->buf_limit = buf[0] | buf[1] << 8 | buf[2] << 16 |
rt5514_dsp        181 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->buf_rp = buf[0] | buf[1] << 8 | buf[2] << 16 |
rt5514_dsp        184 sound/soc/codecs/rt5514-spi.c 	if (rt5514_dsp->buf_rp % 8)
rt5514_dsp        185 sound/soc/codecs/rt5514-spi.c 		rt5514_dsp->buf_rp = (rt5514_dsp->buf_rp / 8) * 8;
rt5514_dsp        187 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->buf_size = rt5514_dsp->buf_limit - rt5514_dsp->buf_base;
rt5514_dsp        189 sound/soc/codecs/rt5514-spi.c 	if (rt5514_dsp->buf_base && rt5514_dsp->buf_limit &&
rt5514_dsp        190 sound/soc/codecs/rt5514-spi.c 		rt5514_dsp->buf_rp && rt5514_dsp->buf_size)
rt5514_dsp        191 sound/soc/codecs/rt5514-spi.c 		schedule_delayed_work(&rt5514_dsp->copy_work, 0);
rt5514_dsp        196 sound/soc/codecs/rt5514-spi.c 	struct rt5514_dsp *rt5514_dsp = data;
rt5514_dsp        198 sound/soc/codecs/rt5514-spi.c 	rt5514_schedule_copy(rt5514_dsp);
rt5514_dsp        216 sound/soc/codecs/rt5514-spi.c 	struct rt5514_dsp *rt5514_dsp =
rt5514_dsp        221 sound/soc/codecs/rt5514-spi.c 	mutex_lock(&rt5514_dsp->dma_lock);
rt5514_dsp        224 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->substream = substream;
rt5514_dsp        225 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->dma_offset = 0;
rt5514_dsp        230 sound/soc/codecs/rt5514-spi.c 		rt5514_schedule_copy(rt5514_dsp);
rt5514_dsp        232 sound/soc/codecs/rt5514-spi.c 	mutex_unlock(&rt5514_dsp->dma_lock);
rt5514_dsp        241 sound/soc/codecs/rt5514-spi.c 	struct rt5514_dsp *rt5514_dsp =
rt5514_dsp        244 sound/soc/codecs/rt5514-spi.c 	mutex_lock(&rt5514_dsp->dma_lock);
rt5514_dsp        245 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->substream = NULL;
rt5514_dsp        246 sound/soc/codecs/rt5514-spi.c 	mutex_unlock(&rt5514_dsp->dma_lock);
rt5514_dsp        248 sound/soc/codecs/rt5514-spi.c 	cancel_delayed_work_sync(&rt5514_dsp->copy_work);
rt5514_dsp        259 sound/soc/codecs/rt5514-spi.c 	struct rt5514_dsp *rt5514_dsp =
rt5514_dsp        262 sound/soc/codecs/rt5514-spi.c 	return bytes_to_frames(runtime, rt5514_dsp->dma_offset);
rt5514_dsp        275 sound/soc/codecs/rt5514-spi.c 	struct rt5514_dsp *rt5514_dsp;
rt5514_dsp        278 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp = devm_kzalloc(component->dev, sizeof(*rt5514_dsp),
rt5514_dsp        280 sound/soc/codecs/rt5514-spi.c 	if (!rt5514_dsp)
rt5514_dsp        283 sound/soc/codecs/rt5514-spi.c 	rt5514_dsp->dev = &rt5514_spi->dev;
rt5514_dsp        284 sound/soc/codecs/rt5514-spi.c 	mutex_init(&rt5514_dsp->dma_lock);
rt5514_dsp        285 sound/soc/codecs/rt5514-spi.c 	INIT_DELAYED_WORK(&rt5514_dsp->copy_work, rt5514_spi_copy_work);
rt5514_dsp        286 sound/soc/codecs/rt5514-spi.c 	snd_soc_component_set_drvdata(component, rt5514_dsp);
rt5514_dsp        292 sound/soc/codecs/rt5514-spi.c 			rt5514_dsp);
rt5514_dsp        298 sound/soc/codecs/rt5514-spi.c 			device_init_wakeup(rt5514_dsp->dev, true);
rt5514_dsp        473 sound/soc/codecs/rt5514-spi.c 	struct rt5514_dsp *rt5514_dsp = dev_get_drvdata(dev);
rt5514_dsp        480 sound/soc/codecs/rt5514-spi.c 	if (rt5514_dsp) {
rt5514_dsp        481 sound/soc/codecs/rt5514-spi.c 		if (rt5514_dsp->substream) {
rt5514_dsp        485 sound/soc/codecs/rt5514-spi.c 				rt5514_schedule_copy(rt5514_dsp);
rt5514_dsp        281 sound/soc/rockchip/rk3399_gru_sound.c SND_SOC_DAILINK_DEFS(rt5514_dsp,
rt5514_dsp        334 sound/soc/rockchip/rk3399_gru_sound.c 		SND_SOC_DAILINK_REG(rt5514_dsp),