Root on Disk
An embedded system may not have a disk, an IDE interface, or even a PCI bus. Even if it does, during development it may be too unstable to use the disk, and a ramdisk may be too small to include all of the necessary utilities or too large (as a part of the kernel image) to allow for rapid turnaround during testing and development.
The idea behind this is to create another partition on the hard disk, format it with ext2 and use it as root file system. Modification to the player's firmware can now be done on the hard disk. No more flash cycles necessary. Switching the player off and on again will activate the changes.
Preparing KiSS Firmware
KiSS players use the ROMFS filesystem for their flash memory. The boot loader reads and starts the Linux kernel from it. The Linux kernel initiializes the hardware and than mounts the ROMFS as its root filesystem and starts /sbin/init from it. On KiSS players the Linux kernel starts the main DVD player application (we call it kissapp).
First step is to configure the Linux kernel to mount its root filesystem from a hard disk. The following options are required to be set
CONFIG_CMDLINE="root=/dev/discs/disc0/part3 rootfstype=ext2 panic=5"
/ # fdisk -l /dev/discs/disc0/disc Disk /dev/discs/disc0/disc: 80.0 GB, 80060424192 bytes 255 heads, 63 sectors/track, 9733 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes Device Boot Start End Blocks Id System /dev/discs/disc0/part1 1 1000 8032468+ 83 Linux /dev/discs/disc0/part2 1001 9733 70147822+ 83 Linux /dev/discs/disc0/part3 1 1 0 0 Empty Partition 3 does not end on cylinder boundary.
/ # mount /dev/discs/disc0/part1 on /systempart type ext2 (rw) /dev/discs/disc0/part2 on /hdd type ext2 (rw)
|DP508||based on original stage2 1.0||work in progress|