From b6b784c38b8f86867fdb2b535239d2b5751874a5 Mon Sep 17 00:00:00 2001 From: Hesham ALMatary Date: Thu, 2 Apr 2015 13:16:56 -0500 Subject: Add QEMU patch for openrisc to recognize halt signals --- ...rminate-qemu-process-upon-receiving-a-hal.patch | 32 ++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 tools/qemu/0001-openrisc-terminate-qemu-process-upon-receiving-a-hal.patch diff --git a/tools/qemu/0001-openrisc-terminate-qemu-process-upon-receiving-a-hal.patch b/tools/qemu/0001-openrisc-terminate-qemu-process-upon-receiving-a-hal.patch new file mode 100644 index 0000000..952443c --- /dev/null +++ b/tools/qemu/0001-openrisc-terminate-qemu-process-upon-receiving-a-hal.patch @@ -0,0 +1,32 @@ +From 851489a73e99e156baee267d6162e31abfaa66a9 Mon Sep 17 00:00:00 2001 +From: Hesham ALMatary +Date: Thu, 2 Apr 2015 17:47:25 +0100 +Subject: [PATCH] openrisc: terminate qemu process upon receiving a halt + signal. + +or1ksim simulator currently handles "l.nop 0xC" instruction as +a halt signal. Do the same for QEMU. + +Signed-off-by: Hesham ALMatary +--- + target-openrisc/translate.c | 5 +++++ + 1 file changed, 5 insertions(+) + +diff --git a/target-openrisc/translate.c b/target-openrisc/translate.c +index dc76789..5fa8ede 100644 +--- a/target-openrisc/translate.c ++++ b/target-openrisc/translate.c +@@ -750,6 +750,11 @@ static void dec_misc(DisasContext *dc, uint32_t insn) + switch (op1) { + case 0x01: /* l.nop */ + LOG_DIS("l.nop %d\n", I16); ++ ++ if(I16 == 0xC) { ++ exit(0); ++ } ++ + break; + + default: +-- +2.1.0 -- cgit v1.2.3