Blackfin: debug-mmrs: disable PERIPHERAL_MAP for IMDMA channels
authorMike Frysinger <vapier@gentoo.org>
Wed, 8 Jun 2011 19:48:57 +0000 (15:48 -0400)
committerMike Frysinger <vapier@gentoo.org>
Sat, 23 Jul 2011 05:18:17 +0000 (01:18 -0400)
The documentation for the IMDMA channels appears to be incorrect.
These DMA blocks don't actually have PERIPHERAL_MAP MMRs for us
to access.  Attempts to do so lead to system mmr hardware errors.

Signed-off-by: Mike Frysinger <vapier@gentoo.org>
arch/blackfin/kernel/debug-mmrs.c

index 40b3a64f8b60132482603b45781b7d61ea9131d7..26ebfe8f63c263b1194838ad371312ef953a35f8 100644 (file)
@@ -223,7 +223,8 @@ bfin_debug_mmrs_dma(struct dentry *parent, unsigned long base, int num, char mdm
        __DMA(CURR_DESC_PTR, curr_desc_ptr);
        __DMA(CURR_ADDR, curr_addr);
        __DMA(IRQ_STATUS, irq_status);
-       __DMA(PERIPHERAL_MAP, peripheral_map);
+       if (strcmp(pfx, "IMDMA") != 0)
+               __DMA(PERIPHERAL_MAP, peripheral_map);
        __DMA(CURR_X_COUNT, curr_x_count);
        __DMA(CURR_Y_COUNT, curr_y_count);
 }