All of lore.kernel.org
 help / color / mirror / Atom feed
* Booting Linux from an already running linux
@ 2003-01-09  9:05 Anders Blomdell
  2003-01-09  9:18 ` Wolfgang Denk
  2003-01-15 22:48 ` Tom Rini
  0 siblings, 2 replies; 3+ messages in thread
From: Anders Blomdell @ 2003-01-09  9:05 UTC (permalink / raw)
  To: linuxppc embedded


Now that I have a Linux running with networking on a PrPMC800 running as
NON-MONARCH, I wonder if anybody knows about a program that can start a
fresh linux kernel from the filesystem. The reason I need this, is that the
PrPMC800 PPC-Bug does not support network booting for NON-MONARCH operation
(neither have I found any alternative that does), and downloading megabytes
over the serial line is not very tempting.

In theory it should be simple (given that we have enough RAM):

   1. Load the new image into RAM (userspace)
   2. Disable interrupts
   3. Copy image from userspace RAM to contiguous (physical) memory
   4. Jump to code in the contiguos (physical) memory

Does anybody know of such a program?

Regards

Anders Blomdell


------------------------------------------------------------------------------
  Anders Blomdell
  Department of Automatic Control        Email: anders.blomdell@control.lth.
se
  Lund Institute of Technology           Phone: +46 46 222 4625
  Box 118, S-221 00 Lund, Sweden         Fax:   +46 46 138118


** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Booting Linux from an already running linux
  2003-01-09  9:05 Booting Linux from an already running linux Anders Blomdell
@ 2003-01-09  9:18 ` Wolfgang Denk
  2003-01-15 22:48 ` Tom Rini
  1 sibling, 0 replies; 3+ messages in thread
From: Wolfgang Denk @ 2003-01-09  9:18 UTC (permalink / raw)
  To: Anders Blomdell; +Cc: linuxppc embedded


In message <8CD0F4AF-23B1-11D7-98E2-0003931C2BFA@control.lth.se> you wrote:
>
> Now that I have a Linux running with networking on a PrPMC800 running as
> NON-MONARCH, I wonder if anybody knows about a program that can start a
> fresh linux kernel from the filesystem. The reason I need this, is that the

That's Magnus Damm's "relf" (Reload ELF file) package.

> In theory it should be simple (given that we have enough RAM):
>
>    1. Load the new image into RAM (userspace)
>    2. Disable interrupts
>    3. Copy image from userspace RAM to contiguous (physical) memory
>    4. Jump to code in the contiguos (physical) memory
>
> Does anybody know of such a program?

Freom the relf README:


    A driver to load and start a new elf file from within Linux.
    Released under the terms of GPL, see COPYING.
    Right now is only mpc8xx supported, patches are welcome.
    I've started vxWorks(tm), pSOS(tm) and Linux(tm) with it.

    This driver implements two character devices:
    /dev/relf	  c 242 0
    /dev/relf_cmdline c 242 1

    Usage:
    Simply write the elf-file to /dev/relf (cat, dd or whatever).
    When /dev/relf is closed the zImage will be started.

    Optionally you can first write an argument string to /dev/relf_cmdline.
    You can read back the current argument string from /dev/relf_cmdline
    at any time. Opening /dev/relf_cmdline for writing will clear the
    argument string (use echo -n >/dev/relf_cmdline to remove a previously
    written argument string).

    x86 Notes:

    The driver works with arch/i386/boot/compressed/bvmlinux.out kernel
    image, rather than arch/i386/boot/bzImage.
    So, arch/i386/boot/compressed/bvmlinux.out is the file that is to be
    copied to the /dev/relf node.
    Also, there is no support for ramdisk images (yet).


    Credits:

    Magnus Damm <damm@opensource.se> - maintainer
    Marcus Sundberg <marcus@cendio.se> - command line support
    DENX <wd@denx.de> - x86 support


Sorry, I don't know a URL for download. Ask Magnus for  help;  if  he
does  not  reply  I  can  help with a copy, too (but probably not the
latest version).

Best regards,

Wolfgang Denk

--
Software Engineering:  Embedded and Realtime Systems,  Embedded Linux
Phone: (+49)-8142-4596-87  Fax: (+49)-8142-4596-88  Email: wd@denx.de
When the ax entered the forest, the trees said, "The handle is one of
us!"                                               -- Turkish proverb

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: Booting Linux from an already running linux
  2003-01-09  9:05 Booting Linux from an already running linux Anders Blomdell
  2003-01-09  9:18 ` Wolfgang Denk
@ 2003-01-15 22:48 ` Tom Rini
  1 sibling, 0 replies; 3+ messages in thread
From: Tom Rini @ 2003-01-15 22:48 UTC (permalink / raw)
  To: Anders Blomdell; +Cc: linuxppc embedded


On Thu, Jan 09, 2003 at 10:05:50AM +0100, Anders Blomdell wrote:
>
> Now that I have a Linux running with networking on a PrPMC800 running as
> NON-MONARCH, I wonder if anybody knows about a program that can start a
> fresh linux kernel from the filesystem. The reason I need this, is that the
> PrPMC800 PPC-Bug does not support network booting for NON-MONARCH operation
> (neither have I found any alternative that does), and downloading megabytes
> over the serial line is not very tempting.

The other option here, is to put a kernel into FLASH.  Google around
for bugboot, but IIRC, it's just a matter of 'make zImage', and then
normal mojo for writing a binary into the FLASH to boot, ensuring you
use zImage.bugboot, not zImage.prpmc800, or whatever.

--
Tom Rini (TR1265)
http://gate.crashing.org/~trini/

** Sent via the linuxppc-embedded mail list. See http://lists.linuxppc.org/

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2003-01-15 22:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2003-01-09  9:05 Booting Linux from an already running linux Anders Blomdell
2003-01-09  9:18 ` Wolfgang Denk
2003-01-15 22:48 ` Tom Rini

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.