diff options
author | Luke Browning <lukebrowning@us.ibm.com> | 2008-06-05 17:30:25 +0800 |
---|---|---|
committer | Jeremy Kerr <jk@ozlabs.org> | 2008-06-16 14:35:00 +1000 |
commit | 1f64643aa5f5a17f1723f7ea0f17b7a3a8f632b3 (patch) | |
tree | fbefce858013d3b53e48b5d3aa1b640025743241 /include/asm-powerpc | |
parent | d84050f48ebba73994b93ccf61cea2364dac8d75 (diff) |
powerpc/spufs: remove class_0_dsisr from spu exception handling
According to the CBEA, the SPU dsisr is not updated for class 0
exceptions.
spu_stopped() is testing the dsisr that was passed to it from the class
0 exception handler, so we return a false positive here.
This patch cleans up the interrupt handler and erroneous tests in
spu_stopped. It also removes the fields from the csa since it is not
needed to process class 0 events.
Signed-off-by: Luke Browning <lukebrowning@us.ibm.com>
Signed-off-by: Jeremy Kerr <jk@ozlabs.org>
Diffstat (limited to 'include/asm-powerpc')
-rw-r--r-- | include/asm-powerpc/spu.h | 1 | ||||
-rw-r--r-- | include/asm-powerpc/spu_csa.h | 2 |
2 files changed, 1 insertions, 2 deletions
diff --git a/include/asm-powerpc/spu.h b/include/asm-powerpc/spu.h index 6abead6e681..99348c1f4ca 100644 --- a/include/asm-powerpc/spu.h +++ b/include/asm-powerpc/spu.h @@ -131,7 +131,6 @@ struct spu { u64 flags; u64 class_0_pending; u64 class_0_dar; - u64 class_0_dsisr; u64 class_1_dar; u64 class_1_dsisr; size_t ls_size; diff --git a/include/asm-powerpc/spu_csa.h b/include/asm-powerpc/spu_csa.h index 129ec148d45..a40fd491250 100644 --- a/include/asm-powerpc/spu_csa.h +++ b/include/asm-powerpc/spu_csa.h @@ -254,7 +254,7 @@ struct spu_state { u64 spu_chnldata_RW[32]; u32 spu_mailbox_data[4]; u32 pu_mailbox_data[1]; - u64 class_0_dar, class_0_dsisr, class_0_pending; + u64 class_0_dar, class_0_pending; u64 class_1_dar, class_1_dsisr; unsigned long suspend_time; spinlock_t register_lock; |