diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2013-03-03 18:40:42 -0500 |
---|---|---|
committer | Chris Zankel <chris@zankel.net> | 2013-05-09 04:07:09 -0400 |
commit | d83ff0bb828854d9e7172ac5d8d007a7466934c9 (patch) | |
tree | 188dfa08078c116698d4673a42a38b40e75a4ccb | |
parent | 74f5bf029ee052e3d845672728e80b7240d14f09 (diff) |
xtensa: fix ibreakenable register update
Only set the register when there is at least one ibreak register,
otherwise the build fails:
arch/xtensa/kernel/head.S:105: Error: invalid register 'ibreakenable'
for 'wsr' instruction
arch/xtensa/platforms/iss/setup.c:67: Error: invalid register
'ibreakenable' for 'wsr' instruction
Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Chris Zankel <chris@zankel.net>
-rw-r--r-- | arch/xtensa/kernel/head.S | 2 | ||||
-rw-r--r-- | arch/xtensa/platforms/iss/setup.c | 2 | ||||
-rw-r--r-- | arch/xtensa/platforms/xt2000/setup.c | 2 | ||||
-rw-r--r-- | arch/xtensa/platforms/xtfpga/setup.c | 2 |
4 files changed, 8 insertions, 0 deletions
diff --git a/arch/xtensa/kernel/head.S b/arch/xtensa/kernel/head.S index df88f98737f4..4566683abc8d 100644 --- a/arch/xtensa/kernel/head.S +++ b/arch/xtensa/kernel/head.S | |||
@@ -86,7 +86,9 @@ ENTRY(_startup) | |||
86 | /* Clear debugging registers. */ | 86 | /* Clear debugging registers. */ |
87 | 87 | ||
88 | #if XCHAL_HAVE_DEBUG | 88 | #if XCHAL_HAVE_DEBUG |
89 | #if XCHAL_NUM_IBREAK > 0 | ||
89 | wsr a0, ibreakenable | 90 | wsr a0, ibreakenable |
91 | #endif | ||
90 | wsr a0, icount | 92 | wsr a0, icount |
91 | movi a1, 15 | 93 | movi a1, 15 |
92 | wsr a0, icountlevel | 94 | wsr a0, icountlevel |
diff --git a/arch/xtensa/platforms/iss/setup.c b/arch/xtensa/platforms/iss/setup.c index e1700102f35e..b68916fd0d7a 100644 --- a/arch/xtensa/platforms/iss/setup.c +++ b/arch/xtensa/platforms/iss/setup.c | |||
@@ -64,7 +64,9 @@ void platform_restart(void) | |||
64 | "wsr a2, icountlevel\n\t" | 64 | "wsr a2, icountlevel\n\t" |
65 | "movi a2, 0\n\t" | 65 | "movi a2, 0\n\t" |
66 | "wsr a2, icount\n\t" | 66 | "wsr a2, icount\n\t" |
67 | #if XCHAL_NUM_IBREAK > 0 | ||
67 | "wsr a2, ibreakenable\n\t" | 68 | "wsr a2, ibreakenable\n\t" |
69 | #endif | ||
68 | "wsr a2, lcount\n\t" | 70 | "wsr a2, lcount\n\t" |
69 | "movi a2, 0x1f\n\t" | 71 | "movi a2, 0x1f\n\t" |
70 | "wsr a2, ps\n\t" | 72 | "wsr a2, ps\n\t" |
diff --git a/arch/xtensa/platforms/xt2000/setup.c b/arch/xtensa/platforms/xt2000/setup.c index c7d90f17886e..f9bc87966290 100644 --- a/arch/xtensa/platforms/xt2000/setup.c +++ b/arch/xtensa/platforms/xt2000/setup.c | |||
@@ -69,7 +69,9 @@ void platform_restart(void) | |||
69 | "wsr a2, icountlevel\n\t" | 69 | "wsr a2, icountlevel\n\t" |
70 | "movi a2, 0\n\t" | 70 | "movi a2, 0\n\t" |
71 | "wsr a2, icount\n\t" | 71 | "wsr a2, icount\n\t" |
72 | #if XCHAL_NUM_IBREAK > 0 | ||
72 | "wsr a2, ibreakenable\n\t" | 73 | "wsr a2, ibreakenable\n\t" |
74 | #endif | ||
73 | "wsr a2, lcount\n\t" | 75 | "wsr a2, lcount\n\t" |
74 | "movi a2, 0x1f\n\t" | 76 | "movi a2, 0x1f\n\t" |
75 | "wsr a2, ps\n\t" | 77 | "wsr a2, ps\n\t" |
diff --git a/arch/xtensa/platforms/xtfpga/setup.c b/arch/xtensa/platforms/xtfpga/setup.c index 9d888a2a5755..96ef8eeb064e 100644 --- a/arch/xtensa/platforms/xtfpga/setup.c +++ b/arch/xtensa/platforms/xtfpga/setup.c | |||
@@ -60,7 +60,9 @@ void platform_restart(void) | |||
60 | "wsr a2, icountlevel\n\t" | 60 | "wsr a2, icountlevel\n\t" |
61 | "movi a2, 0\n\t" | 61 | "movi a2, 0\n\t" |
62 | "wsr a2, icount\n\t" | 62 | "wsr a2, icount\n\t" |
63 | #if XCHAL_NUM_IBREAK > 0 | ||
63 | "wsr a2, ibreakenable\n\t" | 64 | "wsr a2, ibreakenable\n\t" |
65 | #endif | ||
64 | "wsr a2, lcount\n\t" | 66 | "wsr a2, lcount\n\t" |
65 | "movi a2, 0x1f\n\t" | 67 | "movi a2, 0x1f\n\t" |
66 | "wsr a2, ps\n\t" | 68 | "wsr a2, ps\n\t" |