projects
/
deliverable
/
linux.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
ASoC: SAMSUNG: Modify I2S driver to support idma
[deliverable/linux.git]
/
sound
/
soc
/
samsung
/
i2s.c
diff --git
a/sound/soc/samsung/i2s.c
b/sound/soc/samsung/i2s.c
index 1568eea31f41f17c062fdb7671f570a80c56db4c..c086b78539ee5075f14b76d99089e4abb7f0abf1 100644
(file)
--- a/
sound/soc/samsung/i2s.c
+++ b/
sound/soc/samsung/i2s.c
@@
-21,6
+21,7
@@
#include <plat/audio.h>
#include "dma.h"
#include <plat/audio.h>
#include "dma.h"
+#include "idma.h"
#include "i2s.h"
#include "i2s-regs.h"
#include "i2s.h"
#include "i2s-regs.h"
@@
-60,6
+61,7
@@
struct i2s_dai {
/* DMA parameters */
struct s3c_dma_params dma_playback;
struct s3c_dma_params dma_capture;
/* DMA parameters */
struct s3c_dma_params dma_playback;
struct s3c_dma_params dma_capture;
+ struct s3c_dma_params idma_playback;
u32 quirks;
u32 suspend_i2smod;
u32 suspend_i2scon;
u32 quirks;
u32 suspend_i2smod;
u32 suspend_i2scon;
@@
-877,6
+879,10
@@
static int samsung_i2s_dai_probe(struct snd_soc_dai *dai)
if (i2s->quirks & QUIRK_NEED_RSTCLR)
writel(CON_RSTCLR, i2s->addr + I2SCON);
if (i2s->quirks & QUIRK_NEED_RSTCLR)
writel(CON_RSTCLR, i2s->addr + I2SCON);
+ if (i2s->quirks & QUIRK_SEC_DAI)
+ idma_reg_addr_init((void *)i2s->addr,
+ i2s->sec_dai->idma_playback.dma_addr);
+
probe_exit:
/* Reset any constraint on RFS and BFS */
i2s->rfs = 0;
probe_exit:
/* Reset any constraint on RFS and BFS */
i2s->rfs = 0;
@@
-1077,6
+1083,7
@@
static __devinit int samsung_i2s_probe(struct platform_device *pdev)
sec_dai->dma_playback.dma_size = 4;
sec_dai->base = regs_base;
sec_dai->quirks = quirks;
sec_dai->dma_playback.dma_size = 4;
sec_dai->base = regs_base;
sec_dai->quirks = quirks;
+ sec_dai->idma_playback.dma_addr = i2s_cfg->idma_addr;
sec_dai->pri_dai = pri_dai;
pri_dai->sec_dai = sec_dai;
}
sec_dai->pri_dai = pri_dai;
pri_dai->sec_dai = sec_dai;
}
This page took
0.02595 seconds
and
5
git commands to generate.