Reply
Thread Tools
penguinbait's Avatar
Posts: 3,096 | Thanked: 1,525 times | Joined on Jan 2006 @ Michigan, USA
#1
- Packages will follow soon by Fanoush

I booted in 35 seconds from flash, 27 seconds from mmc)
I was lucky enough to be able to beta test for Fanoush. Which I might add he got it right the first time without an issue. I never had to reflash.

Thanks Fanoush, he said he is updating Bootmenu.deb to support n800, in the mean time, if you just can not wait.


Download and install this

http://maemo.org/pipermail/maemo-dev...ry/007111.html

run
initfs_flash

Reboot, it will boot from flash.

vi /mnt/initfs/bootmenu.sh

Change the line
GETKEY="evkey -u -t 1000 /dev/input/event1"
to
GETKEY="evkey -u -t 1000 /dev/input/event2"

RUN
chroot /mnt/initfs cal-tool --set-root-device ask:mmc2


Note The internal mmc is /dev/mmcblk0

/dev/mmcblk0p1 (This is fat)
/dev/mmcblk0p2 (This is ext2 n800 boot)
/dev/mmcblk0p3 (This is my 64mb swap)

The external mmc is /dev/mmcblk1

Make sure you are pointing at the right one for your partition.

I did not cover any partition information, you will need to partition your mmc in order to do this.

The following is cut and paste from:
http://maemo.org/maemowiki/HowTo_BootRootFSFromMMC

( I used tar, I could not find a way to install it on n800, so I copied tar from my 770. I posted a copy on my website)

http://penguinbait.com/tar

Cloning existing rootfs
First you need to backup your FAT partition on MMC card and repartition it to have at least two partitions. First partition as FAT, second one as ext2. You can use fdisk on linux PC and USB card reader to do this (is there fdisk compiled for N770?). As the jffs2 flash filesystem uses compression you need bigger partition on MMC to hold same data. 128MB is too small, at least 256MB is recommended to have similar space as with original flash rootfs.

If you have second partition on MMC card prepared, you can clone you existing IT2006 installation with rsync.

1. Format and mount partition on n770:

You need e2fsprogs (available in maemo2.0 repository)

Nokia770-26:~# apt-get install e2fsprogs
Nokia770-26:~# mkfs.ext2 /dev/mmcblk0p2
Nokia770-26:~# insmod /mnt/initfs/lib/modules/current/ext2.ko
Nokia770-26:~# mount /dev/mmcblk0p2 /opt/
2. Remount flash rootfs to different directory to reveal hidden /dev/ entries:

Nokia770-26:~# mount -t jffs2 /dev/mtdblock4 /floppy -o rw,rpsize=1024,rpuid=0,rpuid=30000
3. Make sure both mount commands succeeded and you really have /opt and /floppy mounted to correct places ('Filesystem' and 'Mounted on' columns below).

Nokia770-26:~# df
Filesystem 1k-blocks Used Available Use% Mounted on
....
....
/dev/mtdblock4 ....... /floppy
/dev/mmcblk0p2 ....... /opt

4. Clone it to card by rsync or tar. Do not swap /floppy and /opt by mistake.

Nokia770-26:~# rsync -avH --delete /floppy/ /opt/
There is some issue with opera fonts caused by such copy made by rsync - details here or here. If you want to make extra sure your copy on mmc card does not have this issue, use GNU tar (not the busybox one) not rsync. Get the binary either from scratchbox arm target (/bin/tar) or by apt-get on the device in download only mode (apt-get -d install tar) After ignoring warnings tar deb should be in /var/cache/apt/archives and you can extract it by dpkg -x. Then you can make the clone by

/path/to/gnu/tar cf - -C /floppy . | /path/to/gnu/tar xvf - -C /opt
5. Cleanup

Nokia770-26:~# umount /opt
Nokia770-26:~# umount /floppy


REBOOT


THANKS AGAIN FANOUSH, I REALLY APPRECIATE IT!!!
 

The Following 2 Users Say Thank You to penguinbait For This Useful Post:
penguinbait's Avatar
Posts: 3,096 | Thanked: 1,525 times | Joined on Jan 2006 @ Michigan, USA
#2
He is quicker than I could even post :-) Here is the new package!!

http://www.internettablettalk.com/fo...2&goto=newpost
 
Posts: 225 | Thanked: 68 times | Joined on Feb 2006
#3
excuse my ignorance but why would you want to boot from flash?
 

The Following User Says Thank You to flareup For This Useful Post:
penguinbait's Avatar
Posts: 3,096 | Thanked: 1,525 times | Joined on Jan 2006 @ Michigan, USA
#4
Originally Posted by flareup View Post
excuse my ignorance but why would you want to boot from flash?
The reason I like to boot from flash for a couple of reasons. I can completely backup my entire OS and restore it or any peice of it. I run from mmc which runs faster than from flash. I can use flash as a failsafe in case I screw up my OS. Its already saved me from reflashing my n800 today. I can boot from mulitple mmc or SD cards.


http://www.internettablettalk.com/fo...1&goto=newpost

Last edited by penguinbait; 2007-01-15 at 01:38.
 
Posts: 72 | Thanked: 8 times | Joined on Jan 2007
#5
I'm having trouble mounting my ext2 partition. In particular, I can't insert the module.

Code:
/mnt/initfs/lib/modules # ls -l
drwxr-xr-x    2 root     root            0 Dec 19 10:56 2.6.18-omap1
lrwxrwxrwx    1 root     root           25 Dec 19 10:56 current -> /lib/modules/2.6.18-omap1
so current won't work as a path, so I use the 2.6.18 one instead

Code:
 /mnt/initfs/lib/modules/2.6.18-omap1 # insmod /mnt/initfs/lib/modules/2.6.18-omap1/ext2.ko 
insmod: cannot insert `/mnt/initfs/lib/modules/2.6.18-omap1/ext2.ko': Unknown symbol in module (-1): No such file or directory
Obviously, the mount command fails without the module:
Code:
# mount -t ext2 /dev/mmcblk1p2 /opt 
mount: Mounting /dev/mmcblk1p2 on /opt failed: No such device
# mount /dev/mmcblk1p2 /mnt       
mount: Mounting /dev/mmcblk1p2 on /mnt failed: Invalid argument
Suggestions?
 
sebastian.linux's Avatar
Posts: 91 | Thanked: 2 times | Joined on Jan 2007 @ Spain
#6
Have you tried:

# insmod /mnt/initfs/lib/modules/current/ext2.ko
 
Posts: 72 | Thanked: 8 times | Joined on Jan 2007
#7
Code:
 # insmod /mnt/initfs/lib/modules/current/ext2.ko
insmod: cannot open module `/mnt/initfs/lib/modules/current/ext2.ko': No such file or directory
yes. current is a symlink to someplace that doesn't exist.
 
rcull's Avatar
Posts: 299 | Thanked: 168 times | Joined on Jun 2006 @ Wales UK
#8
bobpaul.
You need to insmod mbcache.ko first on th N800
 
Posts: 3,841 | Thanked: 1,079 times | Joined on Nov 2006
#9
Does anyone know why modprobe isn't used for loading modules?
modprobe (the normal Linux way) would handle such kernel module dependencies so that you wouldn't have to worry about loading mbcache.ko before ext2.ko etc. modprobe currently just says 'could not parse modules.dep', could it be that the kernel builders haven't done 'depmod -a' or similar? Maybe some of you who have actually (re-)built the kernel are up to date on this?
 
Posts: 72 | Thanked: 8 times | Joined on Jan 2007
#10
Thanks rcull. Worked.
 
Reply

Thread Tools

 
Forum Jump


All times are GMT. The time now is 19:57.