Cocoboot freezes on Treo 650 with current kernel
Submitted by zefanja on 29 July, 2008 - 18:03.
Hi...some days ago I tried to boot a new kernel on my Treo 650, but cocoboot freezes everytime when I hit the 'Boot' button. Miska gave me some different versions of cocoboot, but no one works for me.
So anybody here, who have the same problem or can help me with this issue?
I want to try to run the new middleware from the Openmoko project called FSO (freesmartphone.org or trac.freesmartphone.org).
Regards, zefanja

Is it cocoboot freezing or
Is it cocoboot freezing or is it your kernel freezing? Have you tried using eg P3T3's kernel image?
Often cocoboot freezing means that your kernel zImage is too large to load, try making a minimal version with few drivers compiled in. Particularly if it says something like "alloc failed".
Note that the treo has 32mb of RAM which is very constraining, particularly for anything involving X11 and GTK, (Qtopia, OPIE etc run ok cause they're much more careful to minimize memory usage). Remember the openmoko stuff is designed for a device with 128mb of RAM.
04:06 < zefanja> anyone have the same problem: http://hackndev.com/node/195 ?
04:11 < zefanja> BobOfDoom: ping
04:22 * zefanja asks himself, why there's so a big delay before you get an answer
04:34 < zefanja> ?
Sorry, but I've got better things to do at 4am (like sleeping) than sitting on IRC waiting for you to ask a question. ;-)
05:27 < zefanja> |miska|:
05:27 < zefanja> |miska|: there are only two kernels that work for me: the one from p3t3 (not up to date) and the one from the guy who
started Openmoko first on his treo (i think his name is mike or so)
05:27 < zefanja> this one has the initrd build in the kernel
Right. How big is your zImage? Try to get it down to a similar size to the ones that work (eg try both without any initrd compiled in and without external initrd). If that doesn't help then there must be something wrong with your kernel config or something has bitrotted.
my zImage is around 1,2MB -
my zImage is around 1,2MB - normal size I think. I tried to boot without initrd and cocoboot doesn't freeze. The kernel started but couldn't mount the rootfs - as expected. So is there a problem with the initrd (144kb - it is one from the TX kernel) or with the size? Sry for my bad english...
Alex, I don't know were you live, so sry for pinging you at 4am ;) I thought you're from CZ like most of the other devs...
zefanja
Ah. The initrd size must be
Ah. The initrd size must be just making it too big. The actual limit differs from device to device (even of the same model) as it's dependent on how fragmented Palm OS memory is and such. The problem is we need contiguous chunk of memory large enough to store the kernel, and Palm OS doesn't seem to have particularly good memory management.
As miska suggested on IRC, if you can boot without the initrd, partition your SD card:
partition 1. vfat (put zImage here for cocoboot to read)
partition 2. ext2
Then copy the rootfs onto the second partition (you can mount a filesystem image using mount -o loop rootfs.ext2 /some/dir). Then add root=/dev/mmcblk0p2 to the kernel command-line.
The other option is to change your kernel config to have less stuff compiled in (for example disable the sound or network drivers). You can build some things as modules and put them inside the rootfs to load later.
I'm located in Australia (GMT+10), but I don't have a lot of time for IRC at the moment anyway so you're better off posting here. ;-)
Hello, can somebody help me?
Hello, can somebody help me? I tried a debian on my treo 650 by this tut
http://hackndev.com/node/195 , but it freezed when i pushed "Boot!" button.. I tried P3T3's zImage and initrd.gz from http://blog.mikeasoft.com/2007/06/30/im-in-ur-treo-linuxin-ur-phonez/ , it boot me into init but i get error: ls: /media/hdd/gpe*: No such file or directory; failed! ; could not mount root fs: init failed! please reset, check you configuration and retry.. i have 3 partitions on my memory card, 1 - fat16 , 2 - ext2 , 3 - swap .. i untared rootfs on second partition, on first i saved initd.gz and zImage .. i too tried to touch initrd; gzip initrd; but it is same problem and error like before. Where is problem? I tried ask on #hackndev and #hackndev-cz too but nobody was there. Thanks for replies
Sorry my english is bad, i am from Slovakia.
I tried too change
I tried too change /etc/fstab from
rootfs / ext3 defaults,errors=remount-ro,noatime 0 1
/dev/mmcblk0p1 /boot vfat defaults,noatime 0 2
proc /proc proc defaults 0 0
/dev/mmcblk0p3 none swap sw 0 0
to
/dev/mmcblk0p2 / ext2 defaults,errors=remount-ro,noatime 0 1
/dev/mmcblk0p1 /boot vfat defaults,noatime 0 2
proc /proc proc defaults 0 0
/dev/mmcblk0p3 none swap sw 0 0
but no change, problem is still here, same error like before
EDIT:
it also says before init failed!! that:
mout swap at /media/hdd/swap.swapfs: not found
mounting rottfs: not a file or a block device /media/hdd/mmcblk0p2
it mount a mmcblk0p1 as /media/hdd , and i thought that if i create those files / directories ( by touch ) that i will boot. I got a kernel panic
For the freeze problem: Make
For the freeze problem: Make sure you have an up to date Cocoboot. Delete it from your palm and then install this one:
http://kedar.palmlinux.cz/test/cocoboot-git20080702.prc
Just running a new version from the card doesn't always seem to update it if it's also installed in the Troe's flash, delete it off first.
You don't need an initrd.gz. It's fine that it says it can't find it.
Yes, it helped me, thanks :)
Yes, it helped me, thanks :)