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: iPAQ RAM problem


Hello again Gary:

This is exactly what I was looking for, thank you very much!
And, specifying "mem=64m" on the command line does work as you'd
hoped and is actually a perfectly adequate solution for us at
this point.  We will reconfigure Redboot later though, since we're
going to have to get PCMCIA working on the H3760 anyhow.

Thanks again for all your help!!
craig vanderborgh
voxware incorporated

Gary Thomas wrote:
> 
> On Fri, 2002-08-09 at 08:00, Craig Vanderborgh wrote:
> > Hello Gary:
> >
> > Could you possibly say a few more words about this, in particular
> > about the mechanism by which "Redboot tells Linux how much
> > RAM is available?"
> >
> > Thanks in advance,
> > craig vanderborgh
> > voxware incorporated
> >
> > Gary Thomas wrote:
> > >
> > > On Thu, 2002-08-08 at 16:38, Craig Vanderborgh wrote:
> > > > Hello All:
> > > >
> > > > I am trying to run Linux (kernel 2.4.16-rmk1) from Redboot.  I now
> > > > have the system booting up correctly and PCMCIA and other things
> > > > are working.  Unfortunately, Linux sees only 16MB of my H3760's
> > > > 64MB of RAM.  Is this a Redboot problem, or a Linux kernel issue?
> > >
> > > Yes, RedBoot tells Linux how much RAM is available.
> > >
> > > You can try rebuilding RedBoot to tell it you have 64MB.  You'll
> > > have to edit:
> > >   ecos/packages/hal/arm/sa11x0/ipaq/current/include/pkgconf/mlt_arm_sa11x0_ipaq_rom.h
> > >   ecos/packages/hal/arm/sa11x0/ipaq/current/include/pkgconf/mlt_arm_sa11x0_ipaq_rom.ldi
> > >
> > > (the changes should be obvious and are left to the reader :-)
> > >
> > > Note: I'd probably try this by building a RAM RedBoot first and make
> > > sure everything is kosher and then switch to ROM.  Of course, you'll
> > > end up editing the mlt...rom.* files.
> 
> eCos (and hence RedBoot) are static systems.  The amount of RAM on
> the device is set by configuration, when the software is built.
> Currently, the ipaq configuration is based on the older 3650 (which
> I have) that only has 16M available.
> 
> When RedBoot runs the Linux kernel, part of the 'exec' command
> process builds a data structure which is passed on to the kernel.
> This data structure contains things like the command line, etc.
> It also contains data about the size and location of RAM on the
> unit.  This way, the Linux kernel doesn't need to know anything
> about discovering such resources - it just gets them from the
> bootstrap software.  Since the RedBoot you are using thinks the
> unit only has 16M, that's what it tells Linux.
> 
> You could update RedBoot to support the full 64M.  I've not tested
> this, but it should work just fine.  [caveat - since we've not tested
> this, there may be a little tweaking to be done]
> 
> Alternatively, I think you can just tell the Linux kernel how much
> ram there is, via the command line.  Try adding "mem=64m" to your
> Linux kernel command line and see if it works.  That would be the
> simplest [work-around].
> 
> --
> ------------------------------------------------------------
> 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]