diff --git a/src/flash/nor/core.c b/src/flash/nor/core.c
index ff467d3d0cc6766214c6dc4efa955bfa5b7b3779..2c3b2f8212c1d976072fce2349cbd40894819542 100644
--- a/src/flash/nor/core.c
+++ b/src/flash/nor/core.c
@@ -46,7 +46,7 @@ int flash_driver_erase(struct flash_bank *bank, int first, int last)
 	retval = bank->driver->erase(bank, first, last);
 	if (retval != ERROR_OK)
 	{
-		LOG_ERROR("failed erasing sectors %d to %d (%d)", first, last, retval);
+		LOG_ERROR("failed erasing sectors %d to %d", first, last);
 	}
 
 	return retval;
@@ -80,7 +80,7 @@ int flash_driver_protect(struct flash_bank *bank, int set, int first, int last)
 	retval = bank->driver->protect(bank, set, first, last);
 	if (retval != ERROR_OK)
 	{
-		LOG_ERROR("failed setting protection for areas %d to %d (%d)", first, last, retval);
+		LOG_ERROR("failed setting protection for areas %d to %d", first, last);
 	}
 
 	return retval;
@@ -94,8 +94,8 @@ int flash_driver_write(struct flash_bank *bank,
 	retval = bank->driver->write(bank, buffer, offset, count);
 	if (retval != ERROR_OK)
 	{
-		LOG_ERROR("error writing to flash at address 0x%08" PRIx32 " at offset 0x%8.8" PRIx32 " (%d)",
-			  bank->base, offset, retval);
+		LOG_ERROR("error writing to flash at address 0x%08" PRIx32 " at offset 0x%8.8" PRIx32,
+			  bank->base, offset);
 	}
 
 	return retval;
@@ -111,8 +111,8 @@ int flash_driver_read(struct flash_bank *bank,
 	retval = bank->driver->read(bank, buffer, offset, count);
 	if (retval != ERROR_OK)
 	{
-		LOG_ERROR("error reading to flash at address 0x%08" PRIx32 " at offset 0x%8.8" PRIx32 " (%d)",
-			  bank->base, offset, retval);
+		LOG_ERROR("error reading to flash at address 0x%08" PRIx32 " at offset 0x%8.8" PRIx32,
+			  bank->base, offset);
 	}
 
 	return retval;
@@ -209,7 +209,7 @@ int get_flash_bank_by_name(const char *name, struct flash_bank **bank_result)
 
 		if (retval != ERROR_OK)
 		{
-			LOG_ERROR("auto_probe failed %d\n", retval);
+			LOG_ERROR("auto_probe failed\n");
 			return retval;
 		}
 	}
@@ -232,7 +232,7 @@ int get_flash_bank_by_num(int num, struct flash_bank **bank)
 
 	if (retval != ERROR_OK)
 	{
-		LOG_ERROR("auto_probe failed %d\n", retval);
+		LOG_ERROR("auto_probe failed\n");
 		return retval;
 	}
 	*bank = p;
@@ -253,7 +253,7 @@ int get_flash_bank_by_addr(struct target *target, uint32_t addr, bool check, str
 
 		if (retval != ERROR_OK)
 		{
-			LOG_ERROR("auto_probe failed %d\n", retval);
+			LOG_ERROR("auto_probe failed\n");
 			return retval;
 		}
 		/* check whether address belongs to this flash bank */
diff --git a/src/flash/nor/pic32mx.c b/src/flash/nor/pic32mx.c
index 6a2770210cdf16231558d5d53f59e185e7b13bdb..89fe9b05b2c1436d9ef4b3350559979139700190 100644
--- a/src/flash/nor/pic32mx.c
+++ b/src/flash/nor/pic32mx.c
@@ -513,8 +513,8 @@ static int pic32mx_write(struct flash_bank *bank, uint8_t *buffer, uint32_t offs
 			}
 			else if (retval == ERROR_FLASH_OPERATION_FAILED)
 			{
-				LOG_ERROR("flash writing failed with error code: 0x%x", retval);
-				return ERROR_FLASH_OPERATION_FAILED;
+				LOG_ERROR("flash writing failed");
+				return retval;
 			}
 		}
 		else
diff --git a/src/flash/nor/str7x.c b/src/flash/nor/str7x.c
index 6136f310d38572b3181247980715f0b9bf70a4a0..b872bc3c0d388a2a56bcbb10e4060897fc8b41dd 100644
--- a/src/flash/nor/str7x.c
+++ b/src/flash/nor/str7x.c
@@ -325,10 +325,6 @@ static int str7x_result(struct flash_bank *bank)
 			err = ERROR_FAIL;
 		}
 	}
-	if (err != ERROR_OK)
-	{
-		LOG_ERROR("FLASH_ER register contents: 0x%" PRIx32, retval);
-	}
 
 	return retval;
 }
diff --git a/src/flash/nor/str9x.c b/src/flash/nor/str9x.c
index 8f8e83c885c249e3e1165e739f0b121ae86dfeef..303daa045ae823f41a44e4b4a171ca312b416d85 100644
--- a/src/flash/nor/str9x.c
+++ b/src/flash/nor/str9x.c
@@ -562,7 +562,7 @@ static int str9x_write(struct flash_bank *bank,
 			}
 			else if (retval == ERROR_FLASH_OPERATION_FAILED)
 			{
-				LOG_ERROR("flash writing failed with error code: 0x%x", retval);
+				LOG_ERROR("flash writing failed");
 				return ERROR_FLASH_OPERATION_FAILED;
 			}
 		}
diff --git a/src/flash/nor/tcl.c b/src/flash/nor/tcl.c
index fe1f85d9e0fcb7153a42316f51502fb037901b90..4c64a28d8458f3ce8a41f187b83dbb1f2af9a3ed 100644
--- a/src/flash/nor/tcl.c
+++ b/src/flash/nor/tcl.c
@@ -106,7 +106,7 @@ COMMAND_HANDLER(handle_flash_info_command)
 		retval = p->driver->info(p, buf, sizeof(buf));
 		command_print(CMD_CTX, "%s", buf);
 		if (retval != ERROR_OK)
-			LOG_ERROR("error retrieving flash info (%d)", retval);
+			LOG_ERROR("error retrieving flash info");
 	}
 
 	return ERROR_OK;
diff --git a/src/helper/ioutil.c b/src/helper/ioutil.c
index d0f86a9dfb3c60958f230ba68fa49a54f4dc52f1..60064abc4b7c28e8d041e71b6f3fa95e388435da 100644
--- a/src/helper/ioutil.c
+++ b/src/helper/ioutil.c
@@ -133,7 +133,7 @@ COMMAND_HANDLER(handle_cat_command)
 	}
 	else
 	{
-		command_print(CMD_CTX, "%s not found %d", CMD_ARGV[0], retval);
+		command_print(CMD_CTX, "%s not found", CMD_ARGV[0]);
 	}
 
 	return ERROR_OK;
@@ -270,7 +270,7 @@ COMMAND_HANDLER(handle_cp_command)
 		command_print(CMD_CTX, "Copied %s to %s", CMD_ARGV[0], CMD_ARGV[1]);
 	} else
 	{
-		command_print(CMD_CTX, "Failed: %d", retval);
+		command_print(CMD_CTX, "copy failed");
 	}
 
 	if (data != NULL)
diff --git a/src/jtag/core.c b/src/jtag/core.c
index 6e923bd47a3a3c95ecdab59cc0af19f86803f690..0c222db91e2193c3b72b0b933e87f80f609daa45 100644
--- a/src/jtag/core.c
+++ b/src/jtag/core.c
@@ -695,7 +695,7 @@ void jtag_add_reset(int req_tlr_or_trst, int req_srst)
 			retval = jtag_execute_queue();
 
 		if (retval != ERROR_OK) {
-			LOG_ERROR("TRST/SRST error %d", retval);
+			LOG_ERROR("TRST/SRST error");
 			return;
 		}
 	}
diff --git a/src/jtag/transport.c b/src/jtag/transport.c
index 503b57b6b19771029e7a117396059ad02e481640..5033ebc6df4a8ce498f6c79d4f781bef131c98f6 100644
--- a/src/jtag/transport.c
+++ b/src/jtag/transport.c
@@ -82,8 +82,8 @@ static  int transport_select(struct command_context *ctx, const char *name)
 			if (retval == ERROR_OK)
 				session = t;
 			else
-				LOG_ERROR("Error %d selecting '%s' as "
-					"transport", retval, t->name);
+				LOG_ERROR("Error selecting '%s' as "
+					"transport", t->name);
 			return retval;
 		}
 	}
diff --git a/src/target/arm11.c b/src/target/arm11.c
index 9955143adb872c9352c703edc98edbb5556622c3..2d978e63e6fedf1cafba58563be4dba6279991de 100644
--- a/src/target/arm11.c
+++ b/src/target/arm11.c
@@ -175,7 +175,7 @@ static int arm11_debug_entry(struct arm11_common *arm11)
 	 */
 	retval = arm_dpm_read_current_registers(&arm11->dpm);
 	if (retval != ERROR_OK)
-		LOG_ERROR("DPM REG READ -- fail %d", retval);
+		LOG_ERROR("DPM REG READ -- fail");
 
 	retval = arm11_run_instr_data_prepare(arm11);
 	if (retval != ERROR_OK)
diff --git a/src/target/cortex_m3.c b/src/target/cortex_m3.c
index 93c88c0933c47c934e6aa19385edc629153642f8..f6918afaa29420630dedb33207bad818ec0155c3 100644
--- a/src/target/cortex_m3.c
+++ b/src/target/cortex_m3.c
@@ -1533,7 +1533,7 @@ static int cortex_m3_store_core_reg_u32(struct target *target,
 		{
 			struct reg *r;
 
-			LOG_ERROR("JTAG failure %i", retval);
+			LOG_ERROR("JTAG failure");
 			r = armv7m->core_cache->reg_list + num;
 			r->dirty = r->valid;
 			return ERROR_JTAG_DEVICE_ERROR;
diff --git a/src/target/etm.c b/src/target/etm.c
index 9f7bc83d2073f091998b361ed1f0eaef7b05c5e0..7384764aa1f4f1ed9b46077f898743420fbdd131 100644
--- a/src/target/etm.c
+++ b/src/target/etm.c
@@ -669,7 +669,7 @@ static int etm_read_instruction(struct etm_context *ctx, struct arm_instruction
 			ctx->current_pc - ctx->image->sections[section].base_address,
 			4, buf, &size_read)) != ERROR_OK)
 		{
-			LOG_ERROR("error while reading instruction: %i", retval);
+			LOG_ERROR("error while reading instruction");
 			return ERROR_TRACE_INSTRUCTION_UNAVAILABLE;
 		}
 		opcode = target_buffer_get_u32(ctx->target, buf);
@@ -682,7 +682,7 @@ static int etm_read_instruction(struct etm_context *ctx, struct arm_instruction
 			ctx->current_pc - ctx->image->sections[section].base_address,
 			2, buf, &size_read)) != ERROR_OK)
 		{
-			LOG_ERROR("error while reading instruction: %i", retval);
+			LOG_ERROR("error while reading instruction");
 			return ERROR_TRACE_INSTRUCTION_UNAVAILABLE;
 		}
 		opcode = target_buffer_get_u16(ctx->target, buf);
@@ -2109,6 +2109,7 @@ COMMAND_HANDLER(handle_etm_analyze_command)
 
 	if ((retval = etmv1_analyze_trace(etm_ctx, CMD_CTX)) != ERROR_OK)
 	{
+		/* FIX! error should be reported inside etmv1_analyze_trace() */
 		switch (retval)
 		{
 			case ERROR_ETM_ANALYSIS_FAILED:
@@ -2121,7 +2122,7 @@ COMMAND_HANDLER(handle_etm_analyze_command)
 				command_print(CMD_CTX, "no image available for trace analysis");
 				break;
 			default:
-				command_print(CMD_CTX, "unknown error: %i", retval);
+				command_print(CMD_CTX, "unknown error");
 		}
 	}
 
diff --git a/src/target/xscale.c b/src/target/xscale.c
index 32c656bba721d368c387ed4d0ab6575c12246608..9511be0af16267fcdaaeb4395df1bd23f231e494 100644
--- a/src/target/xscale.c
+++ b/src/target/xscale.c
@@ -2753,7 +2753,7 @@ static int xscale_read_instruction(struct target *target, uint32_t pc,
 			pc - xscale->trace.image->sections[section].base_address,
 			4, buf, &size_read)) != ERROR_OK)
 		{
-			LOG_ERROR("error while reading instruction: %i", retval);
+			LOG_ERROR("error while reading instruction");
 			return ERROR_TRACE_INSTRUCTION_UNAVAILABLE;
 		}
 		opcode = target_buffer_get_u32(target, buf);
@@ -2766,7 +2766,7 @@ static int xscale_read_instruction(struct target *target, uint32_t pc,
 			pc - xscale->trace.image->sections[section].base_address,
 			2, buf, &size_read)) != ERROR_OK)
 		{
-			LOG_ERROR("error while reading instruction: %i", retval);
+			LOG_ERROR("error while reading instruction");
 			return ERROR_TRACE_INSTRUCTION_UNAVAILABLE;
 		}
 		opcode = target_buffer_get_u16(target, buf);