summaryrefslogtreecommitdiff
path: root/drivers/dma/bcm2708-dmaengine.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dma/bcm2708-dmaengine.c')
-rw-r--r--drivers/dma/bcm2708-dmaengine.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/drivers/dma/bcm2708-dmaengine.c b/drivers/dma/bcm2708-dmaengine.c
index 6150b8f7e011..8182b1622cc0 100644
--- a/drivers/dma/bcm2708-dmaengine.c
+++ b/drivers/dma/bcm2708-dmaengine.c
@@ -56,6 +56,7 @@
#include "virt-dma.h"
+static unsigned dma_debug;
struct bcm2835_dmadev {
struct dma_device ddev;
@@ -600,7 +601,10 @@ static struct dma_async_tx_descriptor *bcm2835_dma_prep_slave_sg(
}
/* Common part */
- control_block->info |= BCM2835_DMA_WAITS(SDHCI_BCM_DMA_WAITS);
+ u32 waits = SDHCI_BCM_DMA_WAITS;
+ if ((dma_debug >> 0) & 0x1f)
+ waits = (dma_debug >> 0) & 0x1f;
+ control_block->info |= BCM2835_DMA_WAITS(waits);
control_block->info |= BCM2835_DMA_WAIT_RESP;
/* Enable */
@@ -952,6 +956,7 @@ static int bcm2835_dma_probe(struct platform_device *pdev)
}
dev_info(&pdev->dev, "Load BCM2835 DMA engine driver\n");
+ dev_info(&pdev->dev, "dma_debug:%x\n", dma_debug);
return 0;
@@ -982,6 +987,7 @@ static struct platform_driver bcm2835_dma_driver = {
module_platform_driver(bcm2835_dma_driver);
+module_param(dma_debug, uint, 0644);
MODULE_ALIAS("platform:bcm2835-dma");
MODULE_DESCRIPTION("BCM2835 DMA engine driver");
MODULE_AUTHOR("Florian Meier <florian.meier@koalo.de>");