This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: caching problem


On Wed, 2002-10-09 at 00:18, Vinayak P Risbud wrote:
>         But, As soon as I enable my data/instruction cache
>         my every location of 8MB of memory contains
>         0x0000107D...  Why so ? any Idea ?
> 

Sounds like it could be a hardware problem.  Note that memory accesses
are very different when performed via the cache than when done directly.
If your DRAM hardware isn't setup correctly, you could get this sort of
behaviour.

Other than that, I don't have any other ideas.  I'd suggest that you
start looking at all of the details very closely.  Since you say that 
you are trying to bring up RedBoot on this hardware, the question 
becomes is this the first software/firmware to run on the board?  If so,
I think you have some hardware debugging to do.  If not and the other
firmware works with the caches enabled, then try and figure out what's
different between eCos/RedBoot and that environment.

> Gary Thomas wrote:
> 
> > On Mon, 2002-10-07 at 22:43, Vinayak P Risbud wrote:
> > >         Hi,
> > >             I am trying to bringup Redboot on ARM940T board.
> > >             If I disable, caching my code is working fine, and
> > >             I am getting console on serial port.
> > >             If I enable, caching, nothing works.  The strange thing
> > >             is, Every RAM location contains 0x0000107D
> > >
> > >             What could be exact problem ?
> >
> > The caches on these boards are notoriously hard to get working.
> >
> > Make sure that your cache descriptions (var_cache.h) match the
> > hardware exactly.  You might also try keeping the caches off
> > during hardware initialization and then only turn them on "by
> > hand" to see what's happening.
> >
> > Finally, the problem with the cache might be a problem with
> > your code.  Make sure that all I/O devices are marked as not
> > cacheable - running devices through the cache is most often
> > deadly.
> >
> > --
> > ------------------------------------------------------------
> > Gary Thomas                  |
> > eCosCentric, Ltd.            |
> > +1 (970) 229-1963            |  eCos & RedBoot experts
> > gthomas@ecoscentric.com      |
> > http://www.ecoscentric.com/  |
> > ------------------------------------------------------------
> >
> > --
> > Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> > and search the list archive: http://sources.redhat.com/ml/ecos-discuss
> 
> 
> -- 
> Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
> and search the list archive: http://sources.redhat.com/ml/ecos-discuss
-- 
------------------------------------------------------------
Gary Thomas                  |
eCosCentric, Ltd.            |  
+1 (970) 229-1963            |  eCos & RedBoot experts
gthomas@ecoscentric.com      |
http://www.ecoscentric.com/  |
------------------------------------------------------------


-- 
Before posting, please read the FAQ: http://sources.redhat.com/fom/ecos
and search the list archive: http://sources.redhat.com/ml/ecos-discuss


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]