From: Ralf Baechle <ralf@linux-mips.org>
To: Thomas Bogendoerfer <tsbogend@alpha.franken.de>
Cc: linux-mips@linux-mips.org
Subject: Re: problem with 64bit kernel, BOOT_ELF32 and memory outside CKSEG0
Date: Sun, 11 Nov 2007 21:31:28 +0000 [thread overview]
Message-ID: <20071111213127.GA26297@linux-mips.org> (raw)
In-Reply-To: <20071111143302.GA26458@alpha.franken.de>
On Sun, Nov 11, 2007 at 03:33:02PM +0100, Thomas Bogendoerfer wrote:
> I tried to get a working 64bit kernel for SNI RM. Most of things
> to fix were quite obvious, but there is one thing, which I haven't
> understood yet.
>
> The firmware is only able to boot ELF32 images, which mean I need to
> use BOOT_ELF32.
>
> RM machines have 256MB memory mapped to KSEG0, anything else is outside.
> To me that would mean I need to use the default spaces from
> mach-generic/spaces.h. A kernel built that way will hang after calling
> schedule() in rest_init() (init/main.c). Has anybody seen this
> as well ?
No.
schedule() doesn't directly depend on very much else working so I get the
feeling that your problem may be quite far away.
> Before digging into schedule() I decided to try mach-ip22/spaces.h
> and limit the installed memory to 256MB. This kernel boots and
> runs fine.
>
> Then I booted that kernel with all memory (512MB) and it died, when
> init had troubles mapping libc. That result didn't surprise me
> that much, since the kernel probably tried to map memory > 256MB
> via CKSEG0, which won't work. Correct ?
You should keep all memory mapped in the same kernel segment. Since
you have too much to do that in CKSEG0 it will have to be XKPHYS which
means the generic spaces.h which will be used when you have none in
in mach-rm200/space.h.
I suspect what happens is the kernel is trying to access memory at above
phys. 512MB. In your setup it would compute a CKSEG1 address for that
and stomp over something it better shouldn't ...
Ralf
next prev parent reply other threads:[~2007-11-11 21:31 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-11 14:33 problem with 64bit kernel, BOOT_ELF32 and memory outside CKSEG0 Thomas Bogendoerfer
2007-11-11 21:31 ` Ralf Baechle [this message]
2007-11-12 8:32 ` Thomas Bogendoerfer
2007-11-12 10:44 ` Ralf Baechle
2007-11-12 22:31 ` Thomas Bogendoerfer
2007-11-13 12:10 ` Maciej W. Rozycki
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20071111213127.GA26297@linux-mips.org \
--to=ralf@linux-mips.org \
--cc=linux-mips@linux-mips.org \
--cc=tsbogend@alpha.franken.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.