X-Git-Url: https://review.openocd.org/gitweb?p=openocd.git;a=blobdiff_plain;f=src%2Ftarget%2Fembeddedice.h;h=39902fb3ec920add7511768ceed9f22a7b618e22;hp=af28d38f61f2e93d87ff19f9d6c4c655e9db95ea;hb=b61e454869c988e7fafc1c16982ccfec04415b51;hpb=08d4411b59dd8bd0e7d8009003b71d23acbf6eee diff --git a/src/target/embeddedice.h b/src/target/embeddedice.h index af28d38f61..39902fb3ec 100644 --- a/src/target/embeddedice.h +++ b/src/target/embeddedice.h @@ -19,13 +19,11 @@ * GNU General Public License for more details. * * * * You should have received a copy of the GNU General Public License * - * along with this program; if not, write to the * - * Free Software Foundation, Inc., * - * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. * + * along with this program. If not, see . * ***************************************************************************/ -#ifndef EMBEDDED_ICE_H -#define EMBEDDED_ICE_H +#ifndef OPENOCD_TARGET_EMBEDDEDICE_H +#define OPENOCD_TARGET_EMBEDDEDICE_H #include "arm7_9_common.h" @@ -112,16 +110,19 @@ int embeddedice_handshake(struct arm_jtag *jtag_info, int hsbit, uint32_t timeou */ static inline void embeddedice_write_reg_inner(struct jtag_tap *tap, int reg_addr, uint32_t value) { - static const int embeddedice_num_bits[] = {32, 6}; - uint32_t values[2]; + uint8_t out_reg_addr = (1 << 5) | reg_addr; + uint8_t out_value[4]; + buf_set_u32(out_value, 0, 32, value); - values[0] = value; - values[1] = (1 << 5) | reg_addr; + struct scan_field fields[2] = { + { .num_bits = 32, .out_value = out_value }, + { .num_bits = 6, .out_value = &out_reg_addr }, + }; - jtag_add_dr_out(tap, 2, embeddedice_num_bits, values, TAP_IDLE); + jtag_add_dr_scan(tap, 2, fields, TAP_IDLE); } void embeddedice_write_dcc(struct jtag_tap *tap, int reg_addr, const uint8_t *buffer, int little, int count); -#endif /* EMBEDDED_ICE_H */ +#endif /* OPENOCD_TARGET_EMBEDDEDICE_H */