From: Stefan Mahr Date: Wed, 25 May 2011 13:49:21 +0000 (+0200) Subject: mips: fix swapping if openocd is running on big endian host X-Git-Tag: v0.5.0-rc1~55 X-Git-Url: https://git.sur5r.net/?a=commitdiff_plain;h=73988aea1f68390cdc60f6b6b777f7a466935084;p=openocd mips: fix swapping if openocd is running on big endian host --- diff --git a/src/target/mips_ejtag.c b/src/target/mips_ejtag.c index 6229055d..704aec2b 100644 --- a/src/target/mips_ejtag.c +++ b/src/target/mips_ejtag.c @@ -123,6 +123,7 @@ int mips_ejtag_drscan_32(struct mips_ejtag *ejtag_info, uint32_t *data) void mips_ejtag_drscan_32_out(struct mips_ejtag *ejtag_info, uint32_t data) { + uint8_t t[4]; struct jtag_tap *tap; tap = ejtag_info->tap; assert(tap != NULL); @@ -130,7 +131,9 @@ void mips_ejtag_drscan_32_out(struct mips_ejtag *ejtag_info, uint32_t data) struct scan_field field; field.num_bits = 32; - field.out_value = (uint8_t *)&data; + field.out_value = t; + buf_set_u32(t, 0, field.num_bits, data); + field.in_value = NULL; jtag_add_dr_scan(tap, 1, &field, TAP_IDLE);