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

André Detsch adetsch at br.ibm.com
Wed Aug 8 03:58:05 EST 2007


Arnd Bergmann wrote:
> Interesting. So you also see this same behaviour on hardware and simulator,
> right? Could you try printk'ing the channel count from the restore_spu_mb()
> function before and after writing the channel data, as well as after
> the context restore has completed?

Yes, same behaviour on both.

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.

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.

I'll keep investigating the problem, and let you know if I find some 
good solution.

--
Andre Detsch



More information about the cbe-oss-dev mailing list