On Friday 12 February 2010 08:59:08 David Brownell wrote:
> On Thursday 11 February 2010, Marc Pignat wrote:
> >  What happens when we flush an address that is not in the data cache?
> 
> We obviously *want* it to be a NOP... which is what section 2.3.11 of
> the ARM920T spec (mine says ARM DDI 0151B) seems to imply.  Table 2-15:
> 
>  Clean and Invalidate D entry using either index or MVA
> 
>  ... Writes the specified cache line to main memory, if the line is
>  marked valid and dirty. The line is marked not valid.
> 
> The code uses an MVA (yes?) so if there's no valid/matching cacheline,
> that would be a NOP.


We use MCR p15,0,Rd,c7,c14,2 (Clean and Invalidate DCache entry (using Index))
but I think we should use MCR p15,0,Rd,c7,c14,1 - Clean and Invalidate DCache 
entry (using MVA)

> 
> 
> However, the ARM920T code is a bit vague about the particular
> coprocessor ops it's using.  I'm not sure I'd trust those 32-bit
> numbers to match the MCR instructions in the first comment ... and
> the second has no comment.  It'd be worth making them both of those
> use the MCR() opcode macros.
> 

I will have a look at this!

Regards

Marc
_______________________________________________
Openocd-development mailing list
Openocd-development@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/openocd-development

Reply via email to