How to clear WC buffer, or is it needs to clear WC buffer

2010-06-18 Thread april
Hi all:

I have a problem. I want to make a command buffer in PCIE memory, and
make Engine execute those commands.
First set PCIE memory to be WC, copy command to command buffer in PCIE
memory, and make HW to execute those commands.
sometimes, the Graphic engine will hang.

I try to use mb() to clear WC buffer, it seems a little butter?  But
the problem is still.

When I set the PCIE memory to Uncached, everthing is OK.

So, Is it due to the write buffer that is not evicted ?

and how to clear the WC buffer?

Thanks

--
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo
--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel


Re: How to clear WC buffer, or is it needs to clear WC buffer

2010-06-18 Thread Eric Anholt
On Fri, 18 Jun 2010 16:51:02 +0800, april aapri...@gmail.com wrote:
 Hi all:
 
 I have a problem. I want to make a command buffer in PCIE memory, and
 make Engine execute those commands.
 First set PCIE memory to be WC, copy command to command buffer in PCIE
 memory, and make HW to execute those commands.
 sometimes, the Graphic engine will hang.
 
 I try to use mb() to clear WC buffer, it seems a little butter?  But
 the problem is still.
 
 When I set the PCIE memory to Uncached, everthing is OK.
 
 So, Is it due to the write buffer that is not evicted ?
 
 and how to clear the WC buffer?

You need to do PCI write posting, meaning read some data out of the
target to ensure that your buffered writes actually land.  You'll often
see this in the drivers as:

WRITE_REG(reg, val)
(void)READ_REG(reg)


pgpjSoMHgI23A.pgp
Description: PGP signature
--
ThinkGeek and WIRED's GeekDad team up for the Ultimate 
GeekDad Father's Day Giveaway. ONE MASSIVE PRIZE to the 
lucky parental unit.  See the prize list and enter to win: 
http://p.sf.net/sfu/thinkgeek-promo--
___
Dri-devel mailing list
Dri-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/dri-devel