Topic: What's in a firmware upgrade?


I'm a Chumby-newbie and haven't found my way around the wiki and forum yet. So if anything I'm asking is already outthere I'd appreciate a pointer in the right direction :-).

What gets updated with a firmware update? Is this only the kernel or are other files getting updated too? I noticed part of the Chumby filesystem is read-only. I'm wondering whether this means these files will never get overwritten or is there some kind of protection mechanism that gets lifted during a firmware update.

Is there some technical information on how the boot process of the Chumby works publicly available?

Thanks in advance,


Re: What's in a firmware upgrade?

During an update, you usually get a new kernel and a new root filesystem.  Usually it also replaces the bootloader.

I know mostly about the chumby One, so the rest of this post is going to be about that.  On the chumby Classic, I believe it does an mtdwrite to the mtd devices, and just writes a new partition over the old one.

On the chumby One, it actually does a mkfs.ext3 and then an untar to get the new root filesystem in place, then switches which partition is primary and reboots.

We don't have the complete boot process documented publicly, but if you've got any questions we'd be happy to answer them.  The preboot environment is mostly described in this forum post.  Once the kernel is loaded, it runs /linuxrc, which sets up some environment variables and mounts some temporary partitions, which then runs /sbin/init which basically runs /etc/init.d which runs /etc/init.d/rcS.background.  All of the meaty stuff happens in rcS.background.

The root filesystem is mounted read-only, but there's absolutely nothing stopping you from doing a mount -oremount,rw / and messing around with stuff.  You can obviously get into trouble here by removing critical files, but if that happens you can just reboot into safe mode and re-install the latest update.

Re: What's in a firmware upgrade?

The chumby classic uses cramfs for it's rootfs which means read only.  You can easily create your own and update it however.  The forum already has good instructions for making your own rootfs for a chumby classic.

Linux Guy - Occasional Chumby Hacker