aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Maydell <peter.maydell@linaro.org>2018-05-24 10:25:43 +0100
committerPeter Maydell <peter.maydell@linaro.org>2018-05-24 10:25:43 +0100
commit9cac60db4513f968b56e12720c1ea433be318cc3 (patch)
tree868f480437e16bff23fe89b6b24d6493e2fa726d
parent4f50c1673a89b07f376ce5c42d22d79a79cd466d (diff)
parent81e9cbd0ca1131012b058df6804b1f626a6b730c (diff)
Merge remote-tracking branch 'remotes/mwalle/tags/lm32-queue/20180521' into staging
target/lm32: BQL patch # gpg: Signature made Tue 22 May 2018 19:25:30 BST # gpg: using RSA key B458ABB0D8D378E3 # gpg: Good signature from "Michael Walle <michael@walle.cc>" # gpg: WARNING: This key is not certified with a trusted signature! # gpg: There is no indication that the signature belongs to the owner. # Primary key fingerprint: 2190 3E48 4537 A7C2 90CE 3EB2 B458 ABB0 D8D3 78E3 * remotes/mwalle/tags/lm32-queue/20180521: lm32: take BQL before writing IP/IM register Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
-rw-r--r--target/lm32/op_helper.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/target/lm32/op_helper.c b/target/lm32/op_helper.c
index 577f8306e3..234d55e056 100644
--- a/target/lm32/op_helper.c
+++ b/target/lm32/op_helper.c
@@ -102,12 +102,16 @@ void HELPER(wcsr_dc)(CPULM32State *env, uint32_t dc)
void HELPER(wcsr_im)(CPULM32State *env, uint32_t im)
{
+ qemu_mutex_lock_iothread();
lm32_pic_set_im(env->pic_state, im);
+ qemu_mutex_unlock_iothread();
}
void HELPER(wcsr_ip)(CPULM32State *env, uint32_t im)
{
+ qemu_mutex_lock_iothread();
lm32_pic_set_ip(env->pic_state, im);
+ qemu_mutex_unlock_iothread();
}
void HELPER(wcsr_jtx)(CPULM32State *env, uint32_t jtx)