git.openpandora.org
/
pandora-kernel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch 'topic/soundcore-preclaim' into for-linus
[pandora-kernel.git]
/
arch
/
arm
/
plat-omap
/
dma.c
diff --git
a/arch/arm/plat-omap/dma.c
b/arch/arm/plat-omap/dma.c
index
e3ac94f
..
9b00f4c
100644
(file)
--- a/
arch/arm/plat-omap/dma.c
+++ b/
arch/arm/plat-omap/dma.c
@@
-1127,6
+1127,11
@@
int omap_dma_running(void)
void omap_dma_link_lch(int lch_head, int lch_queue)
{
if (omap_dma_in_1510_mode()) {
void omap_dma_link_lch(int lch_head, int lch_queue)
{
if (omap_dma_in_1510_mode()) {
+ if (lch_head == lch_queue) {
+ dma_write(dma_read(CCR(lch_head)) | (3 << 8),
+ CCR(lch_head));
+ return;
+ }
printk(KERN_ERR "DMA linking is not supported in 1510 mode\n");
BUG();
return;
printk(KERN_ERR "DMA linking is not supported in 1510 mode\n");
BUG();
return;
@@
-1149,6
+1154,11
@@
EXPORT_SYMBOL(omap_dma_link_lch);
void omap_dma_unlink_lch(int lch_head, int lch_queue)
{
if (omap_dma_in_1510_mode()) {
void omap_dma_unlink_lch(int lch_head, int lch_queue)
{
if (omap_dma_in_1510_mode()) {
+ if (lch_head == lch_queue) {
+ dma_write(dma_read(CCR(lch_head)) & ~(3 << 8),
+ CCR(lch_head));
+ return;
+ }
printk(KERN_ERR "DMA linking is not supported in 1510 mode\n");
BUG();
return;
printk(KERN_ERR "DMA linking is not supported in 1510 mode\n");
BUG();
return;