diff options
author | Takashi Yamamoto <TakashiA.Yamamoto@jp.sony.com> | 2008-02-08 17:52:30 -0500 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2008-02-14 06:11:00 -0500 |
commit | a7faa8dc95ef90593d605d36409ef9100bdd11f8 (patch) | |
tree | 993240b7155e22c0496ec17beb443546e6904707 /drivers/ps3 | |
parent | 79ccd1bedc0592602183dad5e3d51d0ab7a9add0 (diff) |
[POWERPC] PS3: Fix setting bookmark in logical performance monitor
Fix the ps3_set_bookmark() routine of the PS3 logical performance
monitor driver.
To properly set a performance monitor bookmark the Cell processor
requires no instruction branches near the setting of the bookmark
SPR. Testing showed that the use of the db10cyc instruction did
not work correctly. This change replaces the db10cyc instruction
with 10 nop instructions.
Signed-off-by: Takashi Yamamoto <TakashiA.Yamamoto@jp.sony.com>
Signed-off-by: Geoff Levand <geoffrey.levand@am.sony.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'drivers/ps3')
-rw-r--r-- | drivers/ps3/ps3-lpm.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/ps3/ps3-lpm.c b/drivers/ps3/ps3-lpm.c index 4c066545d176..8a0b16bad8e9 100644 --- a/drivers/ps3/ps3-lpm.c +++ b/drivers/ps3/ps3-lpm.c | |||
@@ -181,9 +181,9 @@ void ps3_set_bookmark(u64 bookmark) | |||
181 | * includes cycles before the call. | 181 | * includes cycles before the call. |
182 | */ | 182 | */ |
183 | 183 | ||
184 | asm volatile("or 29, 29, 29;"); /* db10cyc */ | 184 | asm volatile("nop;nop;nop;nop;nop;nop;nop;nop;nop;"); |
185 | mtspr(SPRN_BKMK, bookmark); | 185 | mtspr(SPRN_BKMK, bookmark); |
186 | asm volatile("or 29, 29, 29;"); /* db10cyc */ | 186 | asm volatile("nop;nop;nop;nop;nop;nop;nop;nop;nop;"); |
187 | } | 187 | } |
188 | EXPORT_SYMBOL_GPL(ps3_set_bookmark); | 188 | EXPORT_SYMBOL_GPL(ps3_set_bookmark); |
189 | 189 | ||