OESF Portables Forum

Model Specific Forums => Sharp Zaurus => Zaurus - pdaXrom => Topic started by: VoiDeR on July 08, 2006, 11:42:59 am

Title: Install Beta1 With Beta4 Bootloader
Post by: VoiDeR on July 08, 2006, 11:42:59 am
Is it possible to install beta1 after you installed beta4 with the new bootloader. My CF card isnt big enough to flash back to the original rom. I have tried copying the kernel and initrd file from beta1 and renameing them. When i go to install i get a messege that says
Code: [Select]
Input file is not page aligned
Data did not fit into device, du to bad blocks
Title: Install Beta1 With Beta4 Bootloader
Post by: InSearchOf on July 08, 2006, 11:55:46 am
Have you tried to use your SD card to copy the NAND on to do the restore?
Title: Install Beta1 With Beta4 Bootloader
Post by: VoiDeR on July 08, 2006, 12:26:51 pm
The sl-c700 will only use a CF for the nand restore.
Title: Install Beta1 With Beta4 Bootloader
Post by: louigi600 on July 08, 2006, 03:09:50 pm
I think that you cannot use u-boot from beta4 to boot the old imagefor the following reasons:
1) u-boot passes to kernel flash partitioning that would not match beta1 setup
2)you would need to put the kernel image exactly where u-boot expects it to be manually
3)you need to do some stuff to kernel in order to use it with u-boot (see the u-boot README)
3)and possibly (but I'm not sure) kernel size does not match so some stray data may be loaded along with kernel, or a part of kernel may not get loaded

You would need to make some changes to u-boot config to work around these problems.

What you can do is restore the original sharp boot loader following instructions from this thread:
https://www.oesf.org/forums/index.php?showt...hl=u-boot&st=45 (https://www.oesf.org/forums/index.php?showtopic=19809&hl=u-boot&st=45)

Then you should be able to install beta1 normally.

Regards
David
Title: Install Beta1 With Beta4 Bootloader
Post by: VoiDeR on July 08, 2006, 11:14:30 pm
i would do that but my CF card isnt big enough. Its only 64megs and the original rom is 67 megs
Title: Install Beta1 With Beta4 Bootloader
Post by: louigi600 on July 09, 2006, 05:59:27 am
Well you can get new SD big enough now ... they are quite cheep nowdays:
2Gb      65 EUR
1Gb      35 EUR
512Mb 25 EUR
256Mb 18 EUR
128Mb for under 15 EUR

If I were you Id ither buy a 128Mb SD or ask a friend to lend you one for a couple of days ;-)
If that's not possible the you could see if you have at least 67Mb free on the root fylesystem. Boot with emerg image, mount the root (/dev/mtdblock2) somewhere (eg /mnt/CF) and manually restore the boot loader from the image you saved on the onboard flash.
I'm not sure if it's possible to do this update from internalfash to internal flash.
Make sure you do not write from where you are reading at least.
NB ... The emerg image is in the partition you will be writing to but the initrd is in ram so that will not hurt (and in any case you should only be updating the beginning od that partition and not where the emergi image is.
 
Regards
David
Title: Install Beta1 With Beta4 Bootloader
Post by: louigi600 on August 11, 2006, 05:45:13 am
With a bit of work it could be possible to use the new u-boot loader to boot beta1 from SD:
gate the uncompressed vmlinux image fro the beta1 kernel and turn it into a ppcboot image (read u-boot README for this),

save the beta1 root home ... filesystems to mmcblk0p1 (formatted ext3)
etit the etc/fstab on the SD to patch the new root location (and any other filesystem you need),

install the new u-boot.bin image emerg system and kernel to internal flash,

reboot and hold down the "power on" button,

place the beta1 ppcboot kernel image where the beta4 kernel would be,

make sure the SD containing the beta1 fylesystem is inserted reboot and hold "1" button

I have not tested this but if someone gives me the uncompressed vmlinux image for beta1 (I do not wnat to recompile kernel just for this reasonyet) I can do some testing. Currently I'm booting my modified beta4 version from SD so chances are that with some limitations it could be possible to have beta1 booting from SD.

Regards
David
Title: Install Beta1 With Beta4 Bootloader
Post by: iczer3 on August 11, 2006, 09:57:10 pm
Dear David,

the initrd.bin is over 40 Megs for beta1. I include only the script to extract
the root files from beta1. you can use it to extract the files then turn it
into a filesystem.

However, I don't know how to get the kernel in the right format. Pls. advise.

BR,

Felix.
Title: Install Beta1 With Beta4 Bootloader
Post by: iczer3 on August 11, 2006, 10:01:05 pm
Hi there,

the attachment didn't stick.

BR,

Felix.
Title: Install Beta1 With Beta4 Bootloader
Post by: louigi600 on August 12, 2006, 02:38:54 am
* build a standard "vmlinux" kernel image (in ELF binary format):

* convert the kernel into a raw binary image:
  ${CROSS_COMPILE}-objcopy -O binary -R .note -R .comment \
      -S vmlinux linux.bin

* compress the binary image:
  gzip -9 linux.bin

* package compressed binary image for U-Boot:
  mkimage -A ppc -O linux -T kernel -C gzip \
    -a 0 -e 0 -n "Linux Kernel Image" \
    -d linux.bin.gz kernel.img

Make sure you use the cross SDK commands to do the objcopy.
you will find  mkimage in the u-boot tools directory.
To get the binary you may need to build it ... and to to that you will need to follow instructions on the README. If you cannot manage I'll send you a working mkimage.

Keep in mind that one of the restrictions is that you will no longer be able to use beta4 and most likely also the emergency system.