mirror of
https://github.com/torvalds/linux.git
synced 2024-11-13 23:51:39 +00:00
ASoC: ep93xx: Drop legacy DMA support
And rely on OF DMA. Signed-off-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Signed-off-by: Nikita Shubin <nikita.shubin@maquefel.me> Tested-by: Alexander Sverdlin <alexander.sverdlin@gmail.com> Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Reviewed-by: Guenter Roeck <linux@roeck-us.net> Reviewed-by: Mark Brown <broonie@kernel.org> Reviewed-by: Andy Shevchenko <andy@kernel.org> Acked-by: Miquel Raynal <miquel.raynal@bootlin.com> Acked-by: Vinod Koul <vkoul@kernel.org> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
parent
fb37c3a9c2
commit
fae4d65a04
@ -24,7 +24,6 @@
|
||||
#include <sound/initval.h>
|
||||
#include <sound/soc.h>
|
||||
|
||||
#include <linux/platform_data/dma-ep93xx.h>
|
||||
#include <linux/soc/cirrus/ep93xx.h>
|
||||
|
||||
#include "ep93xx-pcm.h"
|
||||
@ -80,19 +79,6 @@ struct ep93xx_i2s_info {
|
||||
struct snd_dmaengine_dai_dma_data dma_params_tx;
|
||||
};
|
||||
|
||||
static struct ep93xx_dma_data ep93xx_i2s_dma_data[] = {
|
||||
[SNDRV_PCM_STREAM_PLAYBACK] = {
|
||||
.name = "i2s-pcm-out",
|
||||
.port = EP93XX_DMA_I2S1,
|
||||
.direction = DMA_MEM_TO_DEV,
|
||||
},
|
||||
[SNDRV_PCM_STREAM_CAPTURE] = {
|
||||
.name = "i2s-pcm-in",
|
||||
.port = EP93XX_DMA_I2S1,
|
||||
.direction = DMA_DEV_TO_MEM,
|
||||
},
|
||||
};
|
||||
|
||||
static inline void ep93xx_i2s_write_reg(struct ep93xx_i2s_info *info,
|
||||
unsigned reg, unsigned val)
|
||||
{
|
||||
@ -198,11 +184,6 @@ static int ep93xx_i2s_dai_probe(struct snd_soc_dai *dai)
|
||||
{
|
||||
struct ep93xx_i2s_info *info = snd_soc_dai_get_drvdata(dai);
|
||||
|
||||
info->dma_params_tx.filter_data =
|
||||
&ep93xx_i2s_dma_data[SNDRV_PCM_STREAM_PLAYBACK];
|
||||
info->dma_params_rx.filter_data =
|
||||
&ep93xx_i2s_dma_data[SNDRV_PCM_STREAM_CAPTURE];
|
||||
|
||||
snd_soc_dai_init_dma_data(dai, &info->dma_params_tx,
|
||||
&info->dma_params_rx);
|
||||
|
||||
|
@ -18,8 +18,6 @@
|
||||
#include <sound/soc.h>
|
||||
#include <sound/dmaengine_pcm.h>
|
||||
|
||||
#include <linux/platform_data/dma-ep93xx.h>
|
||||
|
||||
#include "ep93xx-pcm.h"
|
||||
|
||||
static const struct snd_pcm_hardware ep93xx_pcm_hardware = {
|
||||
@ -35,30 +33,15 @@ static const struct snd_pcm_hardware ep93xx_pcm_hardware = {
|
||||
.fifo_size = 32,
|
||||
};
|
||||
|
||||
static bool ep93xx_pcm_dma_filter(struct dma_chan *chan, void *filter_param)
|
||||
{
|
||||
struct ep93xx_dma_data *data = filter_param;
|
||||
|
||||
if (data->direction == ep93xx_dma_chan_direction(chan)) {
|
||||
chan->private = data;
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
static const struct snd_dmaengine_pcm_config ep93xx_dmaengine_pcm_config = {
|
||||
.pcm_hardware = &ep93xx_pcm_hardware,
|
||||
.compat_filter_fn = ep93xx_pcm_dma_filter,
|
||||
.prealloc_buffer_size = 131072,
|
||||
};
|
||||
|
||||
int devm_ep93xx_pcm_platform_register(struct device *dev)
|
||||
{
|
||||
return devm_snd_dmaengine_pcm_register(dev,
|
||||
&ep93xx_dmaengine_pcm_config,
|
||||
SND_DMAENGINE_PCM_FLAG_NO_DT |
|
||||
SND_DMAENGINE_PCM_FLAG_COMPAT);
|
||||
&ep93xx_dmaengine_pcm_config, 0);
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(devm_ep93xx_pcm_platform_register);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user