[Cbe-oss-dev] [PATCH 1/3] spufs context switch - spu mfc save

Jeremy Kerr jk at ozlabs.org
Thu Apr 24 17:23:41 EST 2008


Asayama-san,

> The MFC_CNTL[Ds] bit in the CSA is updated at the Step 12
> (save_mfc_decr) by or'ing the actual value, however, such update
> doesn't work correctly if the MFC_CNTL[Ds] changes from 1 to 0
> between the Step 8 (save_mfc_cntl) and Step 11 (save_spu_status),
> once your change is applied. So it will be needed that the
> MFC_CNTL[Ds] bit in the CSA is masked at the Step 12 (save_mfc_decr)
> or that the MFC_CNTL[Ds] is excluded at the Step 8 (save_mfc_cntl).

OK, so we just need to mask-out the Ds bit in the CSA before or-ing in 
the Ds bit from the HW. Patch coming...

> There may be other similar bits in the MFC_CNTL. Please look into
> behavior of each MFC_CNTL bit.

It looks like we should do the same with the Q bit. MFC commands can 
still be issued while the queue is suspended.

The alternative would be to stop the SPU before we save MFC_CNTL...

Cheers,


Jeremy



More information about the cbe-oss-dev mailing list