mips32, homogenize code in the scan functions
authorSalvador Arroyo <sarroyofdez@yahoo.es>
Mon, 20 Feb 2017 22:48:40 +0000 (23:48 +0100)
committerFreddie Chopin <freddie.chopin@gmail.com>
Tue, 25 Apr 2017 15:58:00 +0000 (16:58 +0100)
Change-Id: I32fed3332857737048dd12da94fcaba140acb726
Signed-off-by: Salvador Arroyo <sarroyofdez@yahoo.es>
Reviewed-on: http://openocd.zylin.com/4006
Tested-by: jenkins
Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
src/target/mips_ejtag.c
src/target/mips_ejtag.h

index ebf0d73d9eab171b3b9ba7e132ad7ab64ee8e62f..1fbdf3ceff93fae26e034396b85a3effdf5be631 100644 (file)
 #include "mips_ejtag.h"
 #include "mips32_dmaacc.h"
 
-void mips_ejtag_set_instr(struct mips_ejtag *ejtag_info, int new_instr)
+void mips_ejtag_set_instr(struct mips_ejtag *ejtag_info, uint32_t new_instr)
 {
-       struct jtag_tap *tap;
+       assert(ejtag_info->tap != NULL);
+       struct jtag_tap *tap = ejtag_info->tap;
 
-       tap = ejtag_info->tap;
-       assert(tap != NULL);
+       if (buf_get_u32(tap->cur_instr, 0, tap->ir_length) != new_instr) {
 
-       if (buf_get_u32(tap->cur_instr, 0, tap->ir_length) != (uint32_t)new_instr) {
                struct scan_field field;
-               uint8_t t[4];
-
                field.num_bits = tap->ir_length;
+
+               uint8_t t[4];
                field.out_value = t;
                buf_set_u32(t, 0, field.num_bits, new_instr);
+
                field.in_value = NULL;
 
                jtag_add_ir_scan(tap, &field, TAP_IDLE);
@@ -182,13 +182,12 @@ int mips_ejtag_drscan_8(struct mips_ejtag *ejtag_info, uint8_t *data)
 
 void mips_ejtag_drscan_8_out(struct mips_ejtag *ejtag_info, uint8_t data)
 {
-       struct jtag_tap *tap;
-       tap  = ejtag_info->tap;
-       assert(tap != NULL);
+       assert(ejtag_info->tap != NULL);
+       struct jtag_tap *tap = ejtag_info->tap;
 
        struct scan_field field;
-
        field.num_bits = 8;
+
        field.out_value = &data;
        field.in_value = NULL;
 
@@ -427,22 +426,22 @@ int mips_ejtag_init(struct mips_ejtag *ejtag_info)
 
 int mips_ejtag_fastdata_scan(struct mips_ejtag *ejtag_info, int write_t, uint32_t *data)
 {
-       struct jtag_tap *tap;
-
-       tap = ejtag_info->tap;
-       assert(tap != NULL);
+       assert(ejtag_info->tap != NULL);
+       struct jtag_tap *tap = ejtag_info->tap;
 
        struct scan_field fields[2];
-       uint8_t spracc = 0;
-       uint8_t t[4] = {0, 0, 0, 0};
 
        /* fastdata 1-bit register */
        fields[0].num_bits = 1;
+
+       uint8_t spracc = 0;
        fields[0].out_value = &spracc;
        fields[0].in_value = NULL;
 
        /* processor access data register 32 bit */
        fields[1].num_bits = 32;
+
+       uint8_t t[4] = {0, 0, 0, 0};
        fields[1].out_value = t;
 
        if (write_t) {
index 2178afc6ffb67c062ce7ba511dedffebf97e0a6c..3043df90e9152155a241dccfcc3cc4be2bf04336 100644 (file)
@@ -210,8 +210,7 @@ struct mips_ejtag {
        uint32_t ejtag_dba_step_size;   /* size of step till next *DBAn register. */
 };
 
-void mips_ejtag_set_instr(struct mips_ejtag *ejtag_info,
-               int new_instr);
+void mips_ejtag_set_instr(struct mips_ejtag *ejtag_info, uint32_t new_instr);
 int mips_ejtag_enter_debug(struct mips_ejtag *ejtag_info);
 int mips_ejtag_exit_debug(struct mips_ejtag *ejtag_info);
 int mips_ejtag_get_idcode(struct mips_ejtag *ejtag_info, uint32_t *idcode);