mirror of
https://github.com/adulau/aha.git
synced 2024-12-29 12:16:20 +00:00
[POWERPC] cell/PS3: Always set master run control bit in mfc_sr1_set
At present, running any SPE program on the ps3 will trigger a BUG_ON when spufs_run_spu tries to clear the master run control bit, as lv1 does not make the master run control available to Linux. This change makes SPE apps work again by disabling changes to the master run control on PS3. Although we don't have the facility to disable a SPE with supervisor-level privileges, it's better than hitting the BUG_ON unconditionally. Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Acked-by: Masato Noguchi <Masato.Noguchi@jp.sony.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
This commit is contained in:
parent
b7f90a406f
commit
ef8034d01a
1 changed files with 2 additions and 0 deletions
|
@ -505,6 +505,8 @@ static void mfc_sr1_set(struct spu *spu, u64 sr1)
|
|||
static const u64 allowed = ~(MFC_STATE1_LOCAL_STORAGE_DECODE_MASK
|
||||
| MFC_STATE1_PROBLEM_STATE_MASK);
|
||||
|
||||
sr1 |= MFC_STATE1_MASTER_RUN_CONTROL_MASK;
|
||||
|
||||
BUG_ON((sr1 & allowed) != (spu_pdata(spu)->cache.sr1 & allowed));
|
||||
|
||||
spu_pdata(spu)->cache.sr1 = sr1;
|
||||
|
|
Loading…
Reference in a new issue