[Top] [All Lists]

RE: More data: I've made a CVS build that doesn't crash!

To: "Pete Popov" <>
Subject: RE: More data: I've made a CVS build that doesn't crash!
From: "Matthew Dharm" <>
Date: Wed, 30 Jan 2002 18:40:47 -0800
Cc: "linux-mips" <>
Importance: Normal
In-reply-to: <1012440909.1442.0.camel@zeus>
Well, I've figured out my crashing problem, but I'm not certain how to
fix it... I've got a couple of choices, and my first choice doesn't
seem to work too well, tho I'm not sure if that's my fault or another

Basically, what happens is this:  The SDRAM is in two banks (0,2) in
equal parts.  So, on our 128MByte boards, it's two banks of 64MBytes.
On our 512MByte boards, it's 2 banks of 256MBytes each.

The bridge is programmed to place the first bank at 0x0, and the other
bank at 256MBytes.  add_memory_region() is called earlier in the boot
sequence to set up the first 64MBytes at address 0.  Now we call
add_memory_region() with incorrect parameters.

So, I thought to myself, let's just change the 'start' address of the
add_memory_region() call.  For good luck, I even threw in some calls
with BOOT_MEM_RESERVED, so we now have (printed on bootup):

Determined physical RAM map:
 memory: 04000000 @ 00000000 (usable)
 memory: 0c000000 @ 04000000 (reserved)
 memory: 04000000 @ 10000000 (usable)
 memory: 0c000000 @ 14000000 (reserved)

Which looks okay to me.  The problem is, my ethernet driver has gone
to the dogs.  It works, but it's _really_ slow and the console is
printing out messages like:

Matthew D. Dharm                            Senior Software Designer
Momentum Computer Inc.                      1815 Aston Ave.  Suite 107
(760) 431-8663 X-115                        Carlsbad, CA 92008-7310
Momentum Works For You            

> -----Original Message-----
> From: Pete Popov []
> Sent: Wednesday, January 30, 2002 5:35 PM
> To: Matthew Dharm
> Cc: linux-mips
> Subject: RE: More data: I've made a CVS build that doesn't crash!
> On Wed, 2002-01-30 at 17:23, Matthew Dharm wrote:
> > Well, I'm closer... and more confused.
> >
> > I've managed to make a 2.4.3 build which does not exhibit
> any of the
> > instability or crashing... but I did it by disabling half of the
> > memory!
> >
> > In linux/arch/mips/gt64120/momenco_ocelot/setup.c is some
> code to read
> > a PLD and add a memory region.  64MByte is already added
> much earlier,
> > and now we're adding the rest.  The board I'm testing on
> is 128MByte,
> > so it tries to add another 64MByte region which is physically
> > contiguous to the first region.
> >
> > As far as I can tell, all of my memory works perfectly.
> I'm going to
> > do some more tests, but both vxWorks and OpenBSD run on this board
> > without any problems.
> >
> > So, can anyone think of some likely culprits for what is
> wrong here?
> > Some piece of code which only works with addresses under 64MByte,
> > perhaps?
> And 2.4.2 works with all of the memory?
> Pete

<Prev in Thread] Current Thread [Next in Thread>