Help - Search - Members - Calendar
Full Version: Zubuntu From Flash Attempt 2
OESF Forums > Distros, Development, and Model Specific Forums > Distro Support and Discussion > Ubuntu
thebaz67
Trying to follow the instructions to move most of zubuntu to the internal flash to try to make the system work quickly and independent of the SDCard. I have found that the kexecboot will not see the boot folder on the /dev/mtdblock3 but will see it on /dev/mtdblock2.

I am using the updater and tools from the PDAXii3 site to resize the root mtd partition to 121 and see if that works.

we will see

Baz
thebaz67
Well it seems that this is not quite going to do what I want. I can change the size of the partitions using the updater and tools from the PDAXii3 site but it seems that kexecboot creates or reads the partitions on the mtdblock as standard.

so I am reverting back to the standard flash setup and going to go from there.

thebaz67
Actually what I think is happening is that when I use Omegamoon's Flash install script I think the flash_eraseall command removed the jffs2 formatting from the flash so kexecboot nologer "sees" the partition.

Going to play with this some more

Baz
Dromede
MTD partitions can be hardcoded into the kernel or defined through the kernel command line. kexecboot kernels provided by openembedded default to partitions hardcoded into the kernel. the partitions are defined in "/drivers/mtd/nand/sharpsl.c". Now, i presume you want one partition of maximum size (121Mib i believe). This is a problem since the zubuntu flash installer assumes two partitions as defined by the sharp rom and it's derivatives (or maybe early 2.4 kernel based pdaxrom builds, i can't remember) while the kexecboot kernel also assumes two (or three?) partitions but of different sizes. I think that's your problem.

What i think you should do:

1). use pdaxrom R198 to run zubuntu flash installer and change the script to install to /dev/mtdblock2. R198 defines by default a 121Mib nand partition (mtdblock2).
2). You need to change the nand partitioning in the kexecboot kernel. Either change the definitions in sharpsl.c or provide partition definitions via the kernel command line.
(add "mtdparts=sharpsl-nand:7168k(System),-(Rootfs)" to the kernel command line).

This _should_ work but i can't give you any guarantees.

But be warned. If this works, zubuntu will still need the SD card inserted at all times. The biggest part of the rootfs tree is still on the SD card, namely the whole "/usr" tree. The zubuntu rootfs will simply not fit inside the nand chip. As for speed improvements, i dont think you will see a big difference.
xamindar
It might be better to stick zubuntu on a compact flash card as those seem to run faster than the SD slot. Great thing about the zaurus is it has two memory card slots AND usb for endless possibilities.
thebaz67
I am still trying to play with this...

I was hoping to move the usr portion of the tree to the internal hard drive to free up the sd card

Thanks for the suggestions

Baz
thebaz67
Going to have to give up for today...

For some reason when I follow the instructions from Omegamoon the mtdblock stops being properly probed. It seems that if I make all the changes listed it will not probe the block.

I'll hopefully get at it again soon, maybe tomorrow

thanks
Baz
ant
QUOTE(Dromede @ Jun 10 2010, 05:20 PM) *
MTD partitions can be hardcoded into the kernel or defined through the kernel command line. kexecboot kernels provided by openembedded default to partitions hardcoded into the kernel. the partitions are defined in "/drivers/mtd/nand/sharpsl.c". Now, i presume you want one partition of maximum size (121Mib i believe). This is a problem since the zubuntu flash installer assumes two partitions as defined by the sharp rom and it's derivatives (or maybe early 2.4 kernel based pdaxrom builds, i can't remember) while the kexecboot kernel also assumes two (or three?) partitions but of different sizes. I think that's your problem.
...



This is no longer true: since december 2009 kexecboot is able to read the mtdparts from nand so you can resize the partitions.

Most kexeboot kernels out in the web are outdated.
Some don't boot from CF, others have an old kexecboot in the initramfs.

Please use the latest versions here: http://projects.linuxtogo.org/frs/?group_id=55

The 2.6.2x just work. The 2.6.34-rc have been tested only on clamshells.
We are working on the kernel 2.6.34 for Zaurus: this will be available very soon.

Regards

Ant

P.S. the updater.sh provides a simple way to flash 2 bootable jffs2 distros in nand: rename the first initrd.bin and the second home.bin
Dromede
I stand corrected. Thanks for the info!
xamindar
Thanks for the info ant. Do those kernels scan the nand any faster? Whatever kexec kernel I am currently using will sit there for like 2 minutes trying to read the nand.
ant
QUOTE(xamindar @ Jun 18 2010, 11:31 AM) *
Thanks for the info ant. Do those kernels scan the nand any faster? Whatever kexec kernel I am currently using will sit there for like 2 minutes trying to read the nand.


Yeah, detection of jffs2 images is painfully slow...I hope someone will rewrite the code but the real speedup will come when UBI/UBIFS will be used instead of JFFS2.

BTW I had better results on my very-old SD card (around 25-30 secs):

http://fr.pastebin.ca/1877331 (no images on nand)
http://fr.pastebin.ca/1877332 (2 images on nand)


Regards

Andrea
thebaz67
Well what I have found is that when I mount the mtdblock and move the system to it kexeboot no longer "sees" the mtdblock as jffs2.


What I'd like to do is take the system I hopefully setup on the sd card and use mkfs.jffs2 to create the file that I use to flash the zaurus nand.

Is that the correct way to go?


Baz
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2014 Invision Power Services, Inc.