ReferencePlatforms/Imaging/Nokia N810: Difference between revisions
Line 9: | Line 9: | ||
**Nokia Official firmware image | **Nokia Official firmware image | ||
==Creating image | ==Creating image== | ||
This process is designed to generate a JFFS2 file system image which flasher-3.0 can use to write a root filesystem for the n810 unit. The Nokia firmware image (.bin) uses an archiving format called FIASCO. Luckily, we are able to use flasher-3.0 to unpack this image (<code>sudo ./flasher-3.0 -u -F RX44-*.bin</code>). To create an image, we need to copy the root filesystem of the configured device to the PC then generate a JFFS2 filesystem image. | This process is designed to generate a JFFS2 file system image which flasher-3.0 can use to write a root filesystem for the n810 unit. The Nokia firmware image (.bin) uses an archiving format called FIASCO. Luckily, we are able to use flasher-3.0 to unpack this image (<code>sudo ./flasher-3.0 -u -F RX44-*.bin</code>). To create an image, we need to copy the root filesystem of the configured device to the PC then generate a JFFS2 filesystem image. | ||
Revision as of 00:05, 23 July 2009
Requirements
You will need the following things:
- Nokia N810
- Nokia USB Cable
- Nokia Charger
- PC running Linux
- Nokia's Scratchbox to compile mkfs.jffs2
- Nokia's flasher-3.0 program
- Nokia Official firmware image
Creating image
This process is designed to generate a JFFS2 file system image which flasher-3.0 can use to write a root filesystem for the n810 unit. The Nokia firmware image (.bin) uses an archiving format called FIASCO. Luckily, we are able to use flasher-3.0 to unpack this image (sudo ./flasher-3.0 -u -F RX44-*.bin
). To create an image, we need to copy the root filesystem of the configured device to the PC then generate a JFFS2 filesystem image.
Set up device
The first step is to set up the device exactly the way you wish the imaged devices set up. It seems that everything down to which wifi connection is selected gets stored in the image.
Clone filesystem
To clone the filesystem, you need to remount the filesystem then rsync the contents to the PC. I did this by running ON N810
mkdir /media/mmc2/rootfs sudo mount -t jffs2 /dev/mtdblock4 /media/mmc2/rootfs
ON PC
mkdir rootfs-configured sudo rsync -a root@${N810-IP}:/media/mmc2/rootfs/. rootfs-configured
Modify files
At this stage, any nessecary modifications to the filesystem can be made. This includes /etc/hostname, /media/mmc1/buildbot/buildbot.tac and /media/mmc1/buildbot/info/host
Generate image
You will need your distributions 'mtd-utils' package which will include mkfs.jffs2 (sudo apt-get install mtd-utils
).
Create an image:
sudo mkfs.jffs2 -r rootfs-configured -o rootfs-moz-v1.jffs2 -e 128 -l -n
Flashing manually
A manual flash is done with the generated root filesystem image. It is a good idea to flash the complete and official firmware before our custome image as it ensures that we have a working kernel, bootloader, init filesystem and other critical images.
echo "Turn device completely off, remove battery if needed" echo "Plug in USB cable" sudo ./flasher-3.0 --fiasco RX-44*.bin --flash sudo ./flasher-3.0 --rootfs rootfs-moz-v1.jffs2 --flash echo "Plug in Power Cable" echo "Unplug USB Cable" echo "Turn on device"
Flashing automatically
This is a WIP.