Reply
Thread Tools
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#121
Yes, I also think that M32GBinit.sh should not be the culprit. It's a short script and I couldn't find anything dealing with the kernel or even bootloader, but simply copying the rootfs and restart a few daemons (GPS, etc).

I will try again without overclocking (while still using kernel-power) and with fbcon.so installed.

The reboot loop didn't display any console messages. And yes, KBD was opened.

I wonder if:
- You can update the scripts to PR1.3 because there are more using 1.3 than 1.2, i believe

- The duplicated rootfs picks another location other than /home (say /home/emmcroot to make /home "cleaner" and to avoid confusion?

It doesn't hurt me to reflash as I have everything backed up with BackupMenu.
 
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#122
(UPDATE 3: Please read #125 below for the working scripts)

Made some progress...

(EDIT: I was using kernel-power v42 without overclocking)

For the rebooting loop issue, I am not sure now what caused it. One thing I discovered today is this happened when BOTH Backupmenu+bootmenu-n900 (dependency) AND kernel-power (v42) were installed,
AND rebooting with charger plugged in.
After uninstalling Backupmenu and bootmenu-n900, booting was OK.

I edited the scripts and now they work on PR1.3
- changed 10.2010.10 to 20.2010.36-2 in all instances
- changed ...PR12 to ...PR13
- changed the NEW HOME to /home/emmcroot/home instead of /home/home

I found a few issues:
1) M32GBinit.sh
(As i changed the home location, I added mkdir /home/emmcroot before the copying parts)
When running M32Binit.sh, the operation stopped after copying
Code:

/bin /boot /cdrom /dev /etc /floppy /initrd /lib /root /sbin /srv /usr 
and then the phone reboot itself. But this time booting is fine and ends up in the original rootfs

(EDIT: oh even copying in this part was not complete! /usr/sbin is missing ... perhaps others too. Go copy again... @_@ )

UPDATE 1: Splitting the copying job into two copied the complete rootfs successfully without sudden rebooting. Strange.

2) Then I had to do these (i.e. the rest of the init script) manually:
Code:
cp -a /var       /home/emmcroot
start pymaemo-optify
mkdir /home/emmcroot/proc
mkdir /home/emmcroot/sys
mkdir /home/emmcroot/syspart
mkdir -p /home/emmcroot/sys/kernel/debug
mkdir -p /home/emmcroot/mnt/initfs
mkdir /home/emmcroot/tmp
mkdir /mnt/new_root

and then the rest of the code untouched, except the new home location was changed to /home/emmcroot/home:
Code:
echo "Edit a vital scripts on new root file system in /home partition..."

rm -f /home/emmcroot/etc/event.d/hildon-startup-progress
sed -i '/send_interface=/a\\        <allow send_type="method_call"/>' /home/emmcroot/etc/dbus-1/system.d/mce.conf

if [ -f /home/emmcroot/usr/sbin/maemo-optify-lib.sh ]; then
    sed -i -e "/test_home_mount\(\)/{n;a\\   return 0" -e "}" /home/emmcroot/usr/sbin/maemo-optify-lib.sh
    sed -i -e "/test_opt_mount\(\)/{n;a\\   return 0" -e "}" /home/emmcroot/usr/sbin/maemo-optify-lib.sh
fi

sed -i "/mount_home \&\& /s///" /home/emmcroot/etc/event.d/rcS-late

sed -i "/__home {/,/}/s/^/#/" /home/emmcroot/usr/lib/genfstab.awk

cat <<EOF >/home/emmcroot/etc/event.d/restart-mce
description "Restart mce to avoid a bug for loosing GPS in M32GB"
author "Leonid Yegoshin"

console output

start on started rcS-late

script
    sleep 20
    stop mce
    sleep 2
    start mce
end script
EOF

if [ -f /home/user/.config/tracker/tracker.cfg ]; then
    if ! grep -q '/mnt/initfs/' /home/user/.config/tracker/tracker.cfg; then
        sed -i '/NoWatchDirectory=/s?=?=/mnt/initfs/;?' /home/user/.config/tracker/tracker.cfg
	chown user:users /home/user/.config/tracker/tracker.cfg
    fi
fi

echo "Done: Maemo5 (20.2010.36-2) has been prepared in /home partition"
No more issues here.

3) M32GBboot.sh
Again I changed the bits referring to the new kernel. Yes, the checksums of the stock kernel and power kernel are the same so just the version number needed to be changed.
The script ran fine.
But the last part, i.e. creating bootmenu.sh in / , has a catch as bootmenu.sh is 644 only so I had to add chmod +x afterwards.
The modified script is in the attachment I don't post the content here.

4) All the kernel modules provided in your fbcon archive are missing in power-kernel so they had to be added. Just attached it here to save time searching and digging in the posts.

5) But rebooting with KBD opened just ends up in the UBIFS rootfs. No penguin, bootmenu - and - no crash (this is important )

Want to have more fun!!

[UPDATE 2: I tried to do without applying the changes in M32GBboot.sh and instead used bootmenu-n900 to see if it was a viable soluton (according to post #1). Attempt failed.
Anyway here is my emmc.ext.item for bootmenu-n900 (in /etc/bootmenu.d/
Code:
ITEM_NAME="Maemo 5 (eMMC)"
ITEM_ID="emmc"
ITEM_DEVICE="${INT_CARD}p2" 
ITEM_MODULES="mmc_block mmc_core omap_hsmmc mbcache jbd ext3"
ITEM_FSTYPE="ext3"
ITEM_FSOPTIONS="noatime,nodiratime,commit=1,data=writeback /dev/mmcblk1p2 /mnt/new_root"


CAUTION: I AM JUST TRYING TO LEARN FROM MISTAKES. THE ATTACHED SCRIPTS ARE NOT WORKING YET! DO NOT USE THEM UNLESS YOU ARE ALSO TRYING TO WORK OUT A SOLUTION FOR 32GB ROOTFS!!
Attached Files
File Type: zip fbcon.zip (250.8 KB, 130 views)
File Type: zip M32GB_mod.zip (3.0 KB, 126 views)

Last edited by 009N; 2010-11-26 at 15:25. Reason: Corrected attachment + Updating the findings
 

The Following User Says Thank You to 009N For This Useful Post:
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#123
Another update:
I revised the bootmenu entry and tried again.
It should be named xxx.ext3.item because the target root partition is ext3. Also I added the fbcon module from Egoshin.

/etc/bootmenu.d/emmc.ext3.item
Code:
ITEM_NAME="EMMC"
ITEM_ID="emmc"
ITEM_DEVICE="${INT_CARD}p2" 
ITEM_MODULES="fbcon mmc_block mmc_core omap_hsmmc mbcache jbd ext3"
ITEM_FSTYPE="ext3"
ITEM_FSOPTIONS="noatime,nodiratime,commit=1,data=writeback /dev/mmcblk1p2 /mnt/new_root"

Still no success.
Then after apt-get purge bootmenu-n900 and reinstall it again, I finally saw the bootmenu. But the new rootfs still didn't boot up...
 
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#124
SUCCESS!!
Attached Images
 
 
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#125
Here is a modified set of scripts that work on my N900. FOR PR1.3 ONLY. I have tested this only with Titan's kernel-power v42. I don't know what will happen with other kernels/firmware. YMMV.

PLEASE PLEASE read the whole post before embarking on your adventure.

PLEASE PLEASE correct any errors or mistakes or misunderstanding in this post and the scripts. Thanks in advance!

DISCLAIMER:
DO NOT attempt to use these scripts if:

- you DON'T know what you are doing exactly;
- you consider yourself a NOOB;
- you feel VERY nervous of entering commands in a terminal;
- you have the SLIGHTEST fear of bricking your device;
- you will feel VERY frustrated and lost and confused if you have to reflash your "bricked" device.

I make NO guarantee of the accuracy and validity of the files and information contained in this post, and I take NO responsibilty for any loss or damage as a result of using the information in this post. Using the scripts may produce undesirable consequences on your device and may even void the warranty provided by Nokia. You have been warned.


And, BACK UP whatever is important to you on the device as always

All THANKS to Egoshin for his brilliant ideas, patience and solutions. THANK YOU!!

I've done nothing but edit the scripts such that they can now work with PR1.3,together with a couple of small fixes, in particular making bootmenu.sh executable, and correcting the root partition from /dev/mmcblk1p2 to /dev/mmcblk0p2 (this explains the failures in my previous experiments... )

My setup: see the image

Simplified steps:
1) Download and uncompress the scripts to some directory on the device, e.g. /home/user/foo
2) cd into this directory
3) Run sh M32GBinit_PR13.sh to make a duplicate the rootfs from the 256MB NAND (root previlege required)
4) Wait for the operation to finish. It may take as long as 30 minutes or maybe even more.
5) Run sh M32GBboot_PR13.sh to set up booting.
6) Exit the terminal. Reboot.
Keyboard closed => rootfs on NAND
Keyboard opened => rootfs on eMMC


Note 1: The size of the root partition depends entirely on how you partition the 32GB of space. The default is the 2GB /home partition (/dev/mcblk0p2, ext3). You may want to increase the size. See, for instance, http://wiki.maemo.org/Repartitioning_the_flash
I chosed Option 1, i.e. /home (now the complete filesystem) = 27GB ext3 ; MyDocs = 2GB vfat.
As Egoshin has emphasized, you have to repartition the eMMC before applying the scripts.

Note 2: Advantages & Disadvantages?
- No more worries about not enough space for package installations. (otherwise why do this?)
- The original UBIFS rootfs remains untouched. If the rootfs in eMMC is screwed up, you can boot into the original rootfs as a backup system to rescue the data and fix the problems in the rootfs in eMMC. BUT...
- Both rootfs are using the same /opt. Egoshin has already pointed out the inconsistency between them when packages are uninstalled on either side. SO ...
- If the /opt is also screwed up so badly, it's the perfect time to reflash.
- That said, I will definitely trade
speed for space. I personally think there won't be very obvious differences in regular use.

Note 3: For further details, see Egoshin's Post #1
Attached Images
 
Attached Files
File Type: zip M32GB_eMMC_PR13.zip (2.9 KB, 179 views)

Last edited by 009N; 2010-11-30 at 03:24. Reason: re-uploaded attachments
 

The Following 2 Users Say Thank You to 009N For This Useful Post:
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#126
A little bump. I just wonder if those (very) few brave souls find the scripts working or not. If yes, I am interested in knowing which kernel(s) or other special/optimizing setup you have applied.
So far I have done these post-installation stuff:
- SavageD's boost scripts:
http://talk.maemo.org/showthread.php?t=63997
-MohammadAG's faster kinetic scrolling package http://talk.maemo.org/showthread.php?t=60599
(PR1.3 deb here: http://mohammadag.xceleo.org/public/...+0m5_armel.deb Thanks systemcrash )
- Black plastic theme. Just the plain vanilla without any fancy decorations
- Overclocking using Titan's Power-kernel and Jakiman's Queen Beecon Overclocking Widgets
http://talk.maemo.org/showthread.php?t=39753 (a must read!)
A more nooby version: http://talk.maemo.org/showthread.php?t=61709

The system is very stable and no crash so far.
 
Posts: 5 | Thanked: 6 times | Joined on Apr 2010
#127
009N and egoshin

Thanks for the guide.
009N - your M32GBinit file seemed not to work for me so I modded egoshins v2 file with some tweaks for 1.3 (20.2010.36-2)

The attached modded file M32GBinit worked for me on PR1.3 (20.2010.36-2)

Thanks again - this is awesome !
Attached Files
File Type: zip M32GBinit.zip (1.4 KB, 132 views)
 

The Following 2 Users Say Thank You to kashortie For This Useful Post:
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#128
I can't find any difference between these your version and mine in diff, except that I split copying rootfs in two jobs, because for some reason copying in one fell swoop crashed on mine. Could it be carriage difference (unix vs msdos)?

EDIT re-uploaded to post #125.

Last edited by 009N; 2010-11-30 at 06:39. Reason: typos
 
Posts: 5 | Thanked: 6 times | Joined on Apr 2010
#129
009N

Please copy the contents of your .item file in /etc/bootmenu.d that you are presently using to boot into emmc.
I've tried several combinations and cant seem to get it right
Thanks
 
Posts: 152 | Thanked: 58 times | Joined on Oct 2010 @ void
#130
Originally Posted by kashortie View Post
009N

Please copy the contents of your .item file in /etc/bootmenu.d that you are presently using to boot into emmc.
I've tried several combinations and cant seem to get it right
Thanks
It's in post #123 Are you trying multiboot or bootmenu-n900?
[EDIT] wait ... I don't use bootmenu. Just open(UBIFS) & closed(eMMC) kbd.

Originally Posted by egoshin;878297BTW, it has sense to [B
tune[/B] system a little, for faster response -

While running UBIFS root file system you can move configuration directories of gconf2 application back to UBIFS root FS. It greatly accelerates startup of some applications and after that it is virtually impossible to detect which root file system is booted now basing on performance difference - M32GB root FS system has the same (or better performance than native Nokia UBIFS.

To do this - run root shell commands in UBIFS root file system:
Code:
mv /home/var/lib/gconf /var/lib/gconf.home
ln -s /mnt/initfs/var/lib/gconf.home /home/var/lib/gconf
and then reboot back to "/home" root FS with open KBD.
Yes, just did this and it's SOOOOOO smooth. Plus OC@1GHz ... Yay!
Be careful when running these commands!
At first I ran them in eMMC rootfs.... nice things happened. desktop settings all gone, can't adjust backlight, terminal screaming for gconf errors...
Fix: DON'T touch or run anything. Boot again with keyboard closed into the UBIFS rootfs. Then undo the operation:
Code:
rm -f /home/var/lib/gconf
mv /var/lib/gconf.home /home/var/lib/gconf
and then do it all over again:
Code:
mv /home/var/lib/gconf /var/lib/gconf.home
ln -s /mnt/initfs/var/lib/gconf.home /home/var/lib/gconf
Finally reboot back to "/home" root FS with open KBD. Everything is fine again.

Last edited by 009N; 2010-11-30 at 10:29.
 
Reply


 
Forum Jump


All times are GMT. The time now is 13:45.