Search This Blog

Saturday, 11 October 2008

Rebuilding JFFS2 file system

I've spent some time today trying to rebuild the COGlinux JFFS2 file system with a custom built (debug version) of BusyBox.

It ended up being fairly easy to build BusyBox with the Crosstool, and then using the VC shell script and device table to rebuild the coglinux.jffs2 file.

Reflashing this new file on the VCMX212 board, and booting into the 2.6.16 version of the kernel unfortunately produce issues with bad/missing magic numbers :( So VFS couldn't get this new JFFS2 FS mounted and the kernel panics not being able to exec post boot steps.

I tried for a while to diagnose this, including creating what should be an identical coglinux.jffs2 file from the original extracted JFFS2 file from VC, and the VC CVS shell scripts. Annoyingly this still had issues getting mounted with the 2.6.16 kernel :(

I've now fallen back to the original VC JFFS2 file and the 2.6.16 kernel image (both taken from the website). But this has allowed me to "rx" the new custom busybox executable to the FS via Xmodem.

Running this new custom busybox executable produces the dreaded "Permission denied" (?) issues. Which is kind of expected considering that the JFFS2 FS contains cClibc libraries rather than libc ones.

So at the moment I've got myself side tracked looking at sorting out a Buildroot setup. I'll persevere with this for a while. Before dropping back and looking into getting the libc shared libraries across to the VCMX212 FS to sort out running the custom busybox executable.

No comments: