Running Debian on Thecus n4100

Installation

Installing is very similar to installing Debian on Thecus n2100 - see http://david.thg.se/n2100/.

You will need a serial port, and a tftp server.

Note that there is no Debian installer for Thecus n4100, so n2100 installation instructions from cyrius.com will not work.


alternative installation

If you don't want to start an installer as described on http://david.thg.se/n2100/, you can do the following:

  • using another machine, copy a customized minimal Debian on a SATA HDD/RAID array, or a CF card
  • you can get a customized minimal Debian for little endian ARM on https://lxadm.com/Running_Debian_on_Freecom_FSG-3#Downloads - remember to use proper kernel modules from Thecus n4100 (download link below)
  • set up RedBoot to load the kernel; the kernel should start the system from that SATA HDD/RAID array/CF card (root=/dev/sda1 etc.)

Basic info

network cards

Thecus n4100 is a bit different from n2100. Most of all, it has a different network card (2x Intel e1000).

Apparently, Thecus wanted to save a couple of cents, and didn't include flash with those cards (which should store MAC addresses). Because of this, MAC address has to be hardcoded into the kernel module. To see what was changed, diff files in drivers/net/e1000 between the original 2.6.17.8 kernel, and a source download below.


RTC clock

RTC clock module doesn't work very well:

So it is best to do on system bootup:

  • load the module
  • set the system time from the hardware clock (hwclock command)
  • unload the module

Similarly, on system shutdown:

  • load the module
  • set the hardware clock to the current system time (hwclock command)
  • unload the module


RedBoot and tftp

I've been only booting Thecus n4100 via tftp (set in RedBoot). I didn't try to flash the kernel.
If you did this, let me know. Kernel flashing instructions should be similar to the ones here (search for "...and flash a kernel").

Downloads

vmlinux

vmlinux (1204409 bytes) - vmlinux - Linux kernel
md5sum: 8a130ce7ba7e740fc0b8805edb6991a1


Kernel modules

2.6.17.8-n4100-modules.tar.bz2 (547617 bytes) - 2.6.17.8 kernel modules for Thecus n4100
md5sum: 628cbe38cefd2df16e4499d9dae4534c


Kernel sources

linux-2.6.17.8-n4100.tar.bz2 (58573070 bytes) - 2.6.17.8 kernel sources for Thecus n4100 (sources + compiled modules, kernel)
md5sum: 5413207ddd91d3dc2478ee3e21531360


Troubleshooting

After David Karlstrom:If Thecus did the same changes to the bootloader on the n4100 as on the n2100 and the box has an updated firmware they will need the correct machine-id in the kernel, or it won't boot. Apart from that the pages should still apply. Thecus did what most companies do, they just used the machine-id from the reference platform (Intel IQ31244 Serial ATA Evaluation, id: 327) for the cpu, and modified the code for it in their kernel sources. When asked to fix it they actually did, so in newer firmware releases the bootloader actually sends the right machine-id (1101) to the kernel. So if you try to boot a kernel that doesn't know about the new id it just wont boot. Thecus 4100 has an entry [1] in the machine-id list so I guess they fixed it in some firmware upgrade too.. [1] http://www.arm.linux.org.uk/developer/machines/?action=list&id=1102

Upstream status

The board which Thecus runs is Intel IQ31244. You can find patches for the latest kernel on http://sf.net/projects/xscaleiop. They are slowly being integrated into the upstream kernel.
For some reason, I have very poor HDD performance with these patches (despite enabling DMA engines etc.), so I sticked with 2.6.17.8. If you tried these patches and it's any better for you, let me know.


Interesting addon - CF card on a mini-PCI

Thecus n4100 has a mini-PCI slot. It could be used for storage - then, you wouldn't have to depend on HDD drives to boot the device.

One such storage device is made by Commell: http://www.commell.com.tw/product/Peripheral/MiniPCI/MP-6421.HTM

You can insert a CF card in it, and hopefully, the kernel will see it as a disk/block device.

Unfortunately, all Commell distributors seem to sell products to business customers, so I couldn't buy it at a reasonable price (that is, they all say "minimum order is $100", or have ridiculous shipping costs).

Note: this card doesn't need any external power if you connect a CF card; mini-PCI USB adapters do need additional power sources to power USB devices, so they are not a good alternative...

Contact

If you have any questions, please subscribe to the mailing list on http://lists.wpkg.org/mailman/listinfo/debian-non-standard