From 15ae1ac678b037f3eac7de7b31da818020005fdc Mon Sep 17 00:00:00 2001 From: zwelch Date: Sun, 7 Jun 2009 05:22:42 +0000 Subject: Factoring of jtag_examine_chain for maintainability: - Reduce indent: invert logic test for unexpected TAP (no IDs). git-svn-id: svn://svn.berlios.de/openocd/trunk@2081 b42882b7-edfa-0310-969c-e2dbd0fdcd60 --- src/jtag/jtag.c | 66 ++++++++++++++++++++++++++++++--------------------------- 1 file changed, 35 insertions(+), 31 deletions(-) diff --git a/src/jtag/jtag.c b/src/jtag/jtag.c index ca4eb684..47d16fdf 100644 --- a/src/jtag/jtag.c +++ b/src/jtag/jtag.c @@ -1058,44 +1058,48 @@ static int jtag_examine_chain(void) tap->idcode = idcode; - if (tap->expected_ids_cnt > 0) { + if (0 == tap->expected_ids_cnt) + { + // @todo Enable LOG_INFO to ask for reports about unknown TAP IDs. +#if 0 + LOG_INFO("Uknown JTAG TAP ID: 0x%08x", tap->idcode) + LOG_INFO("Please report the chip name and reported ID code to the openocd project"); +#endif + tap = jtag_tap_next_enabled(tap); + continue; + } /* Loop over the expected identification codes and test for a match */ - u8 ii; - for (ii = 0; ii < tap->expected_ids_cnt; ii++) { - if( tap->idcode == tap->expected_ids[ii] ){ - break; - } + u8 ii; + for (ii = 0; ii < tap->expected_ids_cnt; ii++) { + if (tap->idcode == tap->expected_ids[ii]) { + break; } + } - /* If none of the expected ids matched, log an error */ - if (ii == tap->expected_ids_cnt) { - LOG_ERROR("JTAG tap: %s got: 0x%08x (mfg: 0x%3.3x, part: 0x%4.4x, ver: 0x%1.1x)", + /* If none of the expected ids matched, log an error */ + if (ii == tap->expected_ids_cnt) { + LOG_ERROR("JTAG tap: %s got: 0x%08x (mfg: 0x%3.3x, part: 0x%4.4x, ver: 0x%1.1x)", + tap->dotted_name, + idcode, + EXTRACT_MFG( tap->idcode ), + EXTRACT_PART( tap->idcode ), + EXTRACT_VER( tap->idcode ) ); + for (ii = 0; ii < tap->expected_ids_cnt; ii++) { + LOG_ERROR("JTAG tap: %s expected %hhu of %hhu: 0x%08x (mfg: 0x%3.3x, part: 0x%4.4x, ver: 0x%1.1x)", tap->dotted_name, - idcode, - EXTRACT_MFG( tap->idcode ), - EXTRACT_PART( tap->idcode ), - EXTRACT_VER( tap->idcode ) ); - for (ii = 0; ii < tap->expected_ids_cnt; ii++) { - LOG_ERROR("JTAG tap: %s expected %hhu of %hhu: 0x%08x (mfg: 0x%3.3x, part: 0x%4.4x, ver: 0x%1.1x)", - tap->dotted_name, - ii + 1, - tap->expected_ids_cnt, - tap->expected_ids[ii], - EXTRACT_MFG( tap->expected_ids[ii] ), - EXTRACT_PART( tap->expected_ids[ii] ), - EXTRACT_VER( tap->expected_ids[ii] ) ); - } - - return ERROR_JTAG_INIT_FAILED; - } else { - LOG_INFO("JTAG Tap/device matched"); + ii + 1, + tap->expected_ids_cnt, + tap->expected_ids[ii], + EXTRACT_MFG( tap->expected_ids[ii] ), + EXTRACT_PART( tap->expected_ids[ii] ), + EXTRACT_VER( tap->expected_ids[ii] ) ); } + + return ERROR_JTAG_INIT_FAILED; } else { -#if 0 - LOG_INFO("JTAG TAP ID: 0x%08x - Unknown - please report (A) chipname and (B) idcode to the openocd project", - tap->idcode); -#endif + LOG_INFO("JTAG Tap/device matched"); } + tap = jtag_tap_next_enabled(tap); } -- cgit v1.2.3