This is an automated email from Gerrit.

Oleksij Rempel ([email protected]) just uploaded a new patch set to 
Gerrit, which you can find at http://openocd.zylin.com/1340

-- gerrit

commit a752fe2d87ab522a547168c5ecf3ac847754eac9
Author: Oleksij Rempel <[email protected]>
Date:   Mon Apr 15 11:36:05 2013 +0200

    mips_ejtag: cache ejtag versio to avoid recalculation
    
    Some parts of code are varsion specifik. It will be easyer
    if we extract jetga version and store it some where.
    
    Change-Id: I15673beb1c3bbf0739f8d66980adeea4c4b0e3fa
    Signed-off-by: Oleksij Rempel <[email protected]>

diff --git a/src/target/mips_ejtag.c b/src/target/mips_ejtag.c
index 286fa32..8de54cc 100644
--- a/src/target/mips_ejtag.c
+++ b/src/target/mips_ejtag.c
@@ -250,7 +250,6 @@ int mips_ejtag_exit_debug(struct mips_ejtag *ejtag_info)
 
 int mips_ejtag_init(struct mips_ejtag *ejtag_info)
 {
-       uint32_t ejtag_version;
        int retval;
 
        retval = mips_ejtag_get_impcode(ejtag_info, &ejtag_info->impcode);
@@ -259,25 +258,25 @@ int mips_ejtag_init(struct mips_ejtag *ejtag_info)
        LOG_DEBUG("impcode: 0x%8.8" PRIx32 "", ejtag_info->impcode);
 
        /* get ejtag version */
-       ejtag_version = ((ejtag_info->impcode >> 29) & 0x07);
+       ejtag_info->ejtag_version = ((ejtag_info->impcode >> 29) & 0x07);
 
-       switch (ejtag_version) {
-               case 0:
+       switch (ejtag_info->ejtag_version) {
+               case EJTAG_VERSION_20:
                        LOG_DEBUG("EJTAG: Version 1 or 2.0 Detected");
                        break;
-               case 1:
+               case EJTAG_VERSION_25:
                        LOG_DEBUG("EJTAG: Version 2.5 Detected");
                        break;
-               case 2:
+               case EJTAG_VERSION_26:
                        LOG_DEBUG("EJTAG: Version 2.6 Detected");
                        break;
-               case 3:
+               case EJTAG_VERSION_31:
                        LOG_DEBUG("EJTAG: Version 3.1 Detected");
                        break;
-               case 4:
+               case EJTAG_VERSION_41:
                        LOG_DEBUG("EJTAG: Version 4.1 Detected");
                        break;
-               case 5:
+               case EJTAG_VERSION_51:
                        LOG_DEBUG("EJTAG: Version 5.1 Detected");
                        break;
                default:
diff --git a/src/target/mips_ejtag.h b/src/target/mips_ejtag.h
index 653103c..104edfd 100644
--- a/src/target/mips_ejtag.h
+++ b/src/target/mips_ejtag.h
@@ -122,12 +122,20 @@
 #define        EJTAG_DBCn_BLM_SHIFT    4
 #define        EJTAG_DBCn_BE                   (1 << 0)
 
+#define EJTAG_VERSION_20               0
+#define EJTAG_VERSION_25               1
+#define EJTAG_VERSION_26               2
+#define EJTAG_VERSION_31               3
+#define EJTAG_VERSION_41               4
+#define EJTAG_VERSION_51               5
+
 struct mips_ejtag {
        struct jtag_tap *tap;
        uint32_t impcode;
        uint32_t idcode;
        uint32_t ejtag_ctrl;
        int fast_access_save;
+       unsigned int ejtag_version;
 };
 
 void mips_ejtag_set_instr(struct mips_ejtag *ejtag_info,

-- 

------------------------------------------------------------------------------
Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!
http://www2.precog.com/precogplatform/slashdotnewsletter
_______________________________________________
OpenOCD-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/openocd-devel

Reply via email to