Hopefully sometime very soon I will have a complete package to contribute to the LTSP website. I'll announce it here when it's done.
In the meantime, here's a (extremely) rough sketch... this is going to hurt...
--- start ---
READ THE LINUX DOC FROM M-SYS!
http://www.m-sys.com/files/appNotes/doc/IM_21_Linux.pdf
http://www.m-sys.com/product.asp?PID=2&FILE=doc2k&FAM=doc
Get the linux drivers and dos drivers there also
on another machine, make a harddrive w/ bootable redhat linux 6.x + bootable dos (at least 18mb)
(install kernel sources and kernel headers and libs etc)
copy DOC dos ZIP file to dos partition
copy DOC linux ZIP to linux partition
*** REMOVE WS POWER CORD! DANGEROUS VOLTAGES NEAR HEATSINKS! ***
open ws up and remove modem card
install isa ide card
power on (beware the heatsinks etc!)
get into ws bios by hitting DEL on boot
disable IDE under "Integrated Peripherals"
reboot to dos
unzip the DOC dos tools
"docpmap /br /f:c:\bk\doc.img" (makes a backup of the DOC image)
"dformat /win:d000 /s:ap012\doc2.fff /y" (installs new firmware)
reboot into linux
patch linux kernel (see DOC linux files in /tmp/doc-driver/)
build linux kernel (~50 minutes -- ouch)
install new kernel (USE SPECIAL LILO! *** See NOTES below ***)
make /dev entries for flash (/dev/fla*)
reboot into linux
use "fdisk /dev/fla" to create partition on /dev/fla
"mke2fs /dev/fla1"
mount it
put what you like on it (see NOTES below)
use special lilo!
reboot to dos
"dupdate /win:d000 /s:doc121.exb" (updates firmware)
turn off WS
remove IDE card
install Net card
turn on WS
Hopefully, if all went well, you are in business.
--- end ---
* Important LILO Note...
If you use regular lilo on the hard drive, and update the firmware on the flash, you will not be able to get back to the hard drive! You MUST use the patched lilo from M-SYS to make it work.
I hacked on the lilo sources to get it to work properly. As I recall (lots of hacking and not lots of sleep, so it's a bit sketchy) I got lilo-21.4.2.tar.gz and merged in the lilo-patch changes. I called this new lilo p2lilo. I used this to do lilo on the hard drive and continued to use plilo for the flash. You have to copy boot.b and chain.b from the lilo distribution to /boot to get it to cooperate. If you have troubles, post here and I'll try to help. Be careful.
* What to install
I used the iopener boot image from LTSP as a basis.
Here's the exact directory tree I used:
/boot
boot.3E00 (generated)
boot.b (from M-SYSTEMS)
doc2000 (bzImage kernel)
map (generated)
/dev
fla (mknod b 62 0)
fla1 (mknod b 62 1)
nfs (mknod c 0 255)
/etc
lilo.conf (created by me)
To Save yourself some trouble, make a dir called /doc-nfs and create this tree there. This will make it simple to make changes and re-flash it etc.
* The Kernel config
The kernel is configured with:
no module support
no ide (not necessary but saves space)
ram disk
initrd
M-Systems DiskOnChip
ip autoconfigure w/ bootp
support my NIC
nfs filesystem
nfs root
support vesa fb (see my X Windows thread)
basically, keep it sparse as possible
* To install it on the DOC
mount /dev/fla1 /diskonchip
cp -vax /doc-nfs/* /diskonchip
rdev /diskonchip/boot/doc2000 /dev/nfs
/tmp/doc-driver/plilo -r /diskonchip -C /etc/lilo.conf -i /boot/boot.b -m /boot/boot.map
umount /diskonchip
exerpt from my lilo.conf:
boot=/dev/fla
linear
prompt
timeout=30
image=/boot/doc2000
label=640-16
vga=0x311 # this is 640x480 at 16bit
read-only
(add more image= groups to support other resolutions)
I did the "boot dos, dformat - boot linux, make changes, copy to flash - bood dos, dupdate" cycle each time because I was worried about screwing up the DOC.
Also, keep in mind that there are two kernels you'll be working with. One for the hard drive and one for the DOC.
Hope this helps & Happying hacking,
Gern