From 979de4ffcd1b2e809604b20226466bcddc0886f8 Mon Sep 17 00:00:00 2001 From: Masato Noguchi Date: Fri, 20 Jul 2007 21:39:38 +0200 Subject: [PATCH] --- yaml --- r: 62247 b: refs/heads/master c: d40a01d4f4f205d0645beb371edc153d9ec8fb9f h: refs/heads/master i: 62245: 09e98563b5e0e435674a2c0fff3a85443fbe8cdc 62243: 74990579ff2d605c79a3c716487bca082ce44080 62239: 826fc24214d2ebe379a0f225b5412a3027c5d369 v: v3 --- [refs] | 2 +- trunk/arch/powerpc/platforms/cell/spufs/file.c | 12 ++++++++---- 2 files changed, 9 insertions(+), 5 deletions(-) diff --git a/[refs] b/[refs] index f7e6458dee44..0483c77577f3 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 1cfc0f86eb0348dd04ace8c2171642ebe9cd87bb +refs/heads/master: d40a01d4f4f205d0645beb371edc153d9ec8fb9f diff --git a/trunk/arch/powerpc/platforms/cell/spufs/file.c b/trunk/arch/powerpc/platforms/cell/spufs/file.c index 88da996f6d2f..7de4e919687b 100644 --- a/trunk/arch/powerpc/platforms/cell/spufs/file.c +++ b/trunk/arch/powerpc/platforms/cell/spufs/file.c @@ -1651,17 +1651,21 @@ DEFINE_SIMPLE_ATTRIBUTE(spufs_decr_ops, spufs_decr_get, spufs_decr_set, static void spufs_decr_status_set(void *data, u64 val) { struct spu_context *ctx = data; - struct spu_lscsa *lscsa = ctx->csa.lscsa; spu_acquire_saved(ctx); - lscsa->decr_status.slot[0] = (u32) val; + if (val) + ctx->csa.priv2.mfc_control_RW |= MFC_CNTL_DECREMENTER_RUNNING; + else + ctx->csa.priv2.mfc_control_RW &= ~MFC_CNTL_DECREMENTER_RUNNING; spu_release_saved(ctx); } static u64 __spufs_decr_status_get(void *data) { struct spu_context *ctx = data; - struct spu_lscsa *lscsa = ctx->csa.lscsa; - return lscsa->decr_status.slot[0]; + if (ctx->csa.priv2.mfc_control_RW & MFC_CNTL_DECREMENTER_RUNNING) + return SPU_DECR_STATUS_RUNNING; + else + return 0; } static u64 spufs_decr_status_get(void *data)