--- mips32_pracc.c.orig	2009-01-16 08:02:25.000000000 +0100
+++ mips32_pracc.c	2009-04-09 16:21:46.000000000 +0200
@@ -103,10 +103,15 @@
 	mips_ejtag_drscan_32(ctx->ejtag_info, &data);
 
 	/* Clear the access pending bit (let the processor eat!) */
+
 	ejtag_ctrl = ejtag_info->ejtag_ctrl & ~EJTAG_CTRL_PRACC;
 	mips_ejtag_set_instr(ctx->ejtag_info, EJTAG_INST_CONTROL, NULL);
 	mips_ejtag_drscan_32(ctx->ejtag_info, &ejtag_ctrl);
 	
+	jtag_add_clocks(5);
+	jtag_execute_queue();
+	
+
 	return ERROR_OK;
 }
 
@@ -124,6 +129,9 @@
 	mips_ejtag_set_instr(ctx->ejtag_info, EJTAG_INST_CONTROL, NULL);
 	mips_ejtag_drscan_32(ctx->ejtag_info, &ejtag_ctrl);
 	
+	jtag_add_clocks(5);
+	jtag_execute_queue();
+	
 	if ((address >= MIPS32_PRACC_PARAM_IN)
 		&& (address <= MIPS32_PRACC_PARAM_IN + ctx->num_iparam * 4))
 	{
