ts-7000
[Top] [All Lists]

[ts-7000] Re: new TS-7000 bootloader (Linux booting Linux)

To:
Subject: [ts-7000] Re: new TS-7000 bootloader (Linux booting Linux)
From: "Jesse Off" <>
Date: Fri, 01 Dec 2006 16:31:47 -0000
Thats very odd.

I just tested a TS-7250 again and had no problem with the insmod.

The insmod runs the module_init routine on load and that routine is 
like 6 lines of code and very generic.  

Could you verify the md5sum of your bootloader.o file?

Here's mine:

sh-2.05a# md5sum /lib/modules/2.4.26-
ts11/kernel/drivers/char/bootloader.o
ad729068562df0a42b5dc2a427cb189d  /lib/modules/2.4.26-
ts11/kernel/drivers/char/bootloader.o

//Jesse Off
--- In   wrote:
>
> I tried to load bootloader.o with insmod and got the following:
> (I'm running ts7250 2.4.26-ts11 #3)
> 
> ----------------------------------
> /sbin/insmod bootloader.o
> 
> Using bootloader.o
> Warning: loading bootloader will taint the kerneUnable to handle 
kernel 
> NULL pointer dereference at virtual address 00000010
> l: non-GPL lpgd = c4094000
> icense - Pro[00000010] *pgd=prietary
>   050b4801See http://w, *pmd = ww.tux.org/l050b4801kml/#export-, 
*pte = 
> tainted for 00000000information , *ppte = 00000000about tainte
> d modules
> Internal error: Oops: 7
> CPU: 0
> pc : [<c03400c4>]    lr : [<c02be93c>]    Tainted: P 
> sp : c10a7ee8  ip : 00000000  fp : c50fa380
> r10: 0018a1c0  r9 : c10a6000  r8 : ffffffea
> r7 : c0372404  r6 : c037241c  r5 : d4028b4c  r4 : c039733c
> r3 : 00000002  r2 : 80000013  r1 : 0000002f  r0 : 00000010
> Flags: nzCv  IRQs on  FIQs on  Mode SVC_32  Segment user
> Control: C000317F  Table: 04094000  DAC: 00000015
> Process insmod (pid: 86, stack limit = 0xc10a6368)
> Stack: (0xc10a7ee8 to 0xc10a8000)
> 7ee0:                   00000060 ffffffea 00000000 d4028000 
00000000 
> d4028000 
> 7f00: d10b1000 00000060 d4028380 00000000 c023b530 0000000a 
d10b1000 
> c50ac000 
> 7f20: d4036000 00000060 d402c000 d4028060 00000ca0 00000000 
00000000 
> 00000000 
> 7f40: 00000000 00000000 00000000 00000000 00000000 00000000 
00000000 
> 00000000 
> 7f60: 00000000 00000000 00000000 00000000 00000000 00000000 
00000000 
> 00000000 
> 7f80: 00000000 00000028 00000ca0 0018a1c0 00000080 c022d704 
c10a6000 
> 00000ca0 
> 7fa0: 00000000 c022d560 00000ca0 0018a1c0 00900080 0017f3f8 
0018a1c0 
> 00000000 
> 7fc0: 00000028 00000ca0 0018a1c0 d4028000 0017f3f8 0008b0a0 
00000ca0 
> 7ffffe54 
> 7fe0: 7fffda4c 7fffda40 0006aecc 2ac3f130 60000010 00900080 
00000000 
> 003bc001 
> Backtrace: 
> Backtrace aborted due to bad frame pointer <c50fa380>
> Code: e1a00000 e1a00000 e1a00000 e20110ff (e4d02001) 
> Segmentation fault
> ----------------------------------
> 
>  
> 
> 
> 
> 
> "Jesse Off" <> 
> Sent by: 
> 11/29/2006 04:33 PM
> Please respond to
> 
> 
> 
> To
> 
> cc
> 
> Subject
> [ts-7000] new TS-7000 bootloader (Linux booting Linux)
> 
> 
> 
> 
> 
> 
> Hey all,
> 
> We've just written a utility to allow arbitrary loading and 
> execution of kernels within an already booted Linux.  We believe 
> this is the perfect complement to the already super-fast Linux 
> bootstrap on the TS-7xxx.  Our opinion is that instead of using or 
> developing another high functionality bootloader (uBoot, RedBoot, 
> GRUB, etc..), we'd just as well use Linux itself as the bootloader 
> of choice! 
> 
> This utility will work on all of our TS-7000 boards and is 
comprised 
> of two files:
> 
> ftp://ftp.embeddedarm.com/bootloader.o - Linux kernel module
> ftp://ftp.embeddedarm.com/bootload - Linux executable
> 
> The 'bootload' program "--help" output is provided below:
> 
> $ bootload --help
> Usage: bootload [OPTION] FILE
> Linux to Linux bootloader - (re)boots a TS-7xxx board to another 
> kernel, OS
> image, or raw executable by replacing the running Linux kernel.
> 
> General options:
>   -c, --cmdline=CMD       Use CMD as the Linux kernel boot args
>   -r, --initrd=FILE       Use FILE for Linux initial ramdisk
>   -s, --initrdsz=SZ       Only read SZ bytes from the initrd file
>   -b, --base=ADDR         Load the image at ADDR instead of 
0x218000
>   --version               Print version and copyright information
>   -h, --help              This help
> 
> When FILE is -, reads from standard input.
> 
> Report bugs to <>
> $
> 
> With this relatively simple facility, it is possible to use the 
full 
> functionality of the Linux kernel to catalog, retreive, and load 
> Linux kernels and other OS images. 
> 
> Also, reboots through this mechanism become virtually 
> instantaneous.  This isn't as big of a deal on the TS boards since 
> power-on-reset only takes 1.10 seconds anyway (TS-7xxx's do not 
have 
> the ridiculous power-on firmware and BIOS that x86 PC's have)
> 
> Some of the possibilities include:
> 
> *) Safe and atomic kernel updates by using kernels stored on the
> YAFFS2 flash filesystem.
> 
> *) Auto-select a fallback kernel and root filesystem in case of 
> botched field update or hardware watchdog expiry.  A Linux shell 
> script can control what gets passed as kernel command line 
arguments.
> 
> *) Boot Linux kernels and other operating systems via wget command 
> (FTP, HTTP, etc..) TFTP, ZMODEM serial, NFS, USB flash dongle, 
etc...
> 
> Some "one-line" examples of usage:
> 
> Boot a compressed kernel image:
> $ bunzip -c vmlinux.bin.bz2 | bootload -
> 
> Reboot a kernel, but pass the 1MB running ramdisk to the new 
kernel:
> $ mount -o remount,ro /dev/rd/0 /
> $ bootload -c "console=ttyAM0,115200 root=/dev/ram0" -r /dev/rd/0  
\
>     -r 0x100000
> 
> Boot one of 2 kernels based on the state of DIO line #7:
> $ if dio_data_get 7; then bootload vmlinux.backup.bin; else \
>     bootload vmlinux.bin; fi
> 
> //Jesse Off
> 
> 
> 
>  
> Yahoo! Groups Links
>




 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/ts-7000/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/ts-7000/join
    (Yahoo! ID required)

<*> To change settings via email:
     
    

<*> To unsubscribe from this group, send an email to:
    

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 

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

Disclaimer: Neither Andrew Taylor nor the University of NSW School of Computer and Engineering take any responsibility for the contents of this archive. It is purely a compilation of material sent by many people to the birding-aus mailing list. It has not been checked for accuracy nor its content verified in any way. If you wish to get material removed from the archive or have other queries about the archive e-mail Andrew Taylor at this address: andrewt@cse.unsw.EDU.AU