hdac_stream.c (d91857059defe6acb443d8a25691b43a0f9390e8) hdac_stream.c (2ea13c83bf7bb3471e33b2d902b101af977ef2d4)
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * HD-audio stream operations
4 */
5
6#include <linux/kernel.h>
7#include <linux/delay.h>
8#include <linux/export.h>

--- 98 unchanged lines hidden (view full) ---

107 /* set DMA start and interrupt mask */
108 snd_hdac_stream_updateb(azx_dev, SD_CTL,
109 0, SD_CTL_DMA_START | SD_INT_MASK);
110 azx_dev->running = true;
111}
112EXPORT_SYMBOL_GPL(snd_hdac_stream_start);
113
114/**
1// SPDX-License-Identifier: GPL-2.0-only
2/*
3 * HD-audio stream operations
4 */
5
6#include <linux/kernel.h>
7#include <linux/delay.h>
8#include <linux/export.h>

--- 98 unchanged lines hidden (view full) ---

107 /* set DMA start and interrupt mask */
108 snd_hdac_stream_updateb(azx_dev, SD_CTL,
109 0, SD_CTL_DMA_START | SD_INT_MASK);
110 azx_dev->running = true;
111}
112EXPORT_SYMBOL_GPL(snd_hdac_stream_start);
113
114/**
115 * snd_hdac_stream_clear - stop a stream DMA
115 * snd_hdac_stream_clear - helper to clear stream registers and stop DMA transfers
116 * @azx_dev: HD-audio core stream to stop
117 */
116 * @azx_dev: HD-audio core stream to stop
117 */
118void snd_hdac_stream_clear(struct hdac_stream *azx_dev)
118static void snd_hdac_stream_clear(struct hdac_stream *azx_dev)
119{
120 snd_hdac_stream_updateb(azx_dev, SD_CTL,
121 SD_CTL_DMA_START | SD_INT_MASK, 0);
122 snd_hdac_stream_writeb(azx_dev, SD_STS, SD_INT_MASK); /* to be sure */
123 if (azx_dev->stripe)
124 snd_hdac_stream_updateb(azx_dev, SD_CTL_3B, SD_CTL_STRIPE_MASK, 0);
125 azx_dev->running = false;
126}
119{
120 snd_hdac_stream_updateb(azx_dev, SD_CTL,
121 SD_CTL_DMA_START | SD_INT_MASK, 0);
122 snd_hdac_stream_writeb(azx_dev, SD_STS, SD_INT_MASK); /* to be sure */
123 if (azx_dev->stripe)
124 snd_hdac_stream_updateb(azx_dev, SD_CTL_3B, SD_CTL_STRIPE_MASK, 0);
125 azx_dev->running = false;
126}
127EXPORT_SYMBOL_GPL(snd_hdac_stream_clear);
128
129/**
130 * snd_hdac_stream_stop - stop a stream
131 * @azx_dev: HD-audio core stream to stop
132 *
133 * Stop a stream DMA and disable stream interrupt
134 */
135void snd_hdac_stream_stop(struct hdac_stream *azx_dev)

--- 641 unchanged lines hidden ---
127
128/**
129 * snd_hdac_stream_stop - stop a stream
130 * @azx_dev: HD-audio core stream to stop
131 *
132 * Stop a stream DMA and disable stream interrupt
133 */
134void snd_hdac_stream_stop(struct hdac_stream *azx_dev)

--- 641 unchanged lines hidden ---