[Cbe-oss-dev] [PATCH] spufs: avoid using backing operation for wbox write

Arnd Bergmann arnd at arndb.de
Wed Aug 8 07:23:50 EST 2007


On Tuesday 07 August 2007, André Detsch wrote:
> With the help of some printks, I was able to see that, right after the 
> out_be64 operation in restore_spu_mb, ch29cnt _is_ correctly restored, 
> and the value is kept in 1 (the correct value in that case) until the
> out_be32(&prob->spu_runcntl_RW, SPU_RUNCNTL_RUNNABLE);
> command is issued (restore_spu_runcntl). After this command, ch29cnt is 
> reset to 0.

Ok, so obviously, the data is actually getting read into from the channel,
it just doesn't start running again.

What are the values of the spu_runcntl_RW and spu_status_R registers before
and after you do the restore_spu_runcntl?

> If I try to set the ch29cnt not before, but after restore_spu_runcntl, I 
> get a simulator error:
> "SPE7: Attempt to write to SPU_CHNLCNT when running"
> while QS20 just ignores the write.

Yes, that makes sense. The real CPU obviously can't print an error message ;-)

	Arnd <><



More information about the cbe-oss-dev mailing list