From d2ddb53f7d3c6c5c3be1f6b41a796033599b1880 Mon Sep 17 00:00:00 2001 From: Oleksij Rempel Date: Mon, 27 Jan 2014 10:07:38 +0100 Subject: [PATCH] mips_ejtag.c: disable DMA for all platforms DMA seems to be broken in many ways. Don't trust it! Change-Id: I7e28608f299abdf78d02a967c62849b6b2ce5985 Signed-off-by: Oleksij Rempel Reviewed-on: http://openocd.zylin.com/1936 Tested-by: jenkins Reviewed-by: Antony Pavlov Reviewed-by: Paul Fertser --- src/target/mips_ejtag.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/target/mips_ejtag.c b/src/target/mips_ejtag.c index 6d51c56f0..c24cea3d4 100644 --- a/src/target/mips_ejtag.c +++ b/src/target/mips_ejtag.c @@ -386,8 +386,11 @@ int mips_ejtag_init(struct mips_ejtag *ejtag_info) ejtag_info->impcode & EJTAG_IMP_NODMA ? " noDMA" : " DMA", ejtag_info->impcode & EJTAG_DCR_MIPS64 ? " MIPS64" : " MIPS32"); - if ((ejtag_info->impcode & EJTAG_IMP_NODMA) == 0) - LOG_DEBUG("EJTAG: DMA Access Mode Support Enabled"); + if ((ejtag_info->impcode & EJTAG_IMP_NODMA) == 0) { + LOG_DEBUG("EJTAG: DMA Access Mode detected. Disabling to " + "workaround current broken code."); + ejtag_info->impcode |= EJTAG_IMP_NODMA; + } /* set initial state for ejtag control reg */ ejtag_info->ejtag_ctrl = EJTAG_CTRL_ROCC | EJTAG_CTRL_PRACC | EJTAG_CTRL_PROBEN | EJTAG_CTRL_SETDEV;