blob: 502ce8292868fddcc5c771d4313426e1174b537e [file] [log] [blame]
Andrew Geisslerc5535c92023-01-27 16:10:19 -06001From ef9aa69324a209e546956a2f674462717ec5af0f Mon Sep 17 00:00:00 2001
Patrick Williams92b42cb2022-09-03 06:53:57 -05002From: Zhenhua Luo <zhenhua.luo@nxp.com>
3Date: Sat, 11 Jun 2016 22:08:29 -0500
4Subject: [PATCH] fix the incorrect assembling for ppc wait mnemonic
5
6The wait mnemonic for ppc targets is incorrectly assembled into 0x7c00003c due
7to duplicated address definition with waitasec instruction. The issue causes
8kernel boot calltrace for ppc targets when wait instruction is executed.
9
10Upstream-Status: Pending
11Signed-off-by: Zhenhua Luo <zhenhua.luo@nxp.com>
12---
13 opcodes/ppc-opc.c | 4 +---
14 1 file changed, 1 insertion(+), 3 deletions(-)
15
16diff --git a/opcodes/ppc-opc.c b/opcodes/ppc-opc.c
Andrew Geisslerc5535c92023-01-27 16:10:19 -060017index 37f1aeb780c..45774c7cf79 100644
Patrick Williams92b42cb2022-09-03 06:53:57 -050018--- a/opcodes/ppc-opc.c
19+++ b/opcodes/ppc-opc.c
Andrew Geisslerc5535c92023-01-27 16:10:19 -060020@@ -7138,8 +7138,6 @@ const struct powerpc_opcode powerpc_opcodes[] = {
Patrick Williams92b42cb2022-09-03 06:53:57 -050021 {"waitasec", X(31,30), XRTRARB_MASK, POWER8, POWER9, {0}},
22 {"waitrsv", XWCPL(31,30,1,0),0xffffffff, POWER10, EXT, {0}},
23 {"pause_short", XWCPL(31,30,2,0),0xffffffff, POWER10, EXT, {0}},
24-{"wait", X(31,30), XWCPL_MASK, POWER10, 0, {WC, PL}},
25-{"wait", X(31,30), XWC_MASK, POWER9, POWER10, {WC}},
26
27 {"lwepx", X(31,31), X_MASK, E500MC|PPCA2, 0, {RT, RA0, RB}},
28
Andrew Geisslerc5535c92023-01-27 16:10:19 -060029@@ -7193,7 +7191,7 @@ const struct powerpc_opcode powerpc_opcodes[] = {
Patrick Williams92b42cb2022-09-03 06:53:57 -050030
31 {"waitrsv", X(31,62)|(1<<21), 0xffffffff, E500MC|PPCA2, EXT, {0}},
32 {"waitimpl", X(31,62)|(2<<21), 0xffffffff, E500MC|PPCA2, EXT, {0}},
33-{"wait", X(31,62), XWC_MASK, E500MC|PPCA2, 0, {WC}},
34+{"wait", X(31,62), XWC_MASK, E500MC|PPCA2|POWER9|POWER10, 0, {WC}},
35
36 {"dcbstep", XRT(31,63,0), XRT_MASK, E500MC|PPCA2, 0, {RA0, RB}},
37