Debian support for eSATA SheevaPlug available
The eSATA SheevaPlug is supported by the Debian installer and by Debian now. I've updated the install guide accordingly.
If you're already running Debian on your eSATA SheevaPlug but you installed as a regular SheevaPlug to USB or SD and you'd like to use the eSATA, then make sure you're the latest kernel from Debian squeeze:
apt-get update apt-get dist-upgrade flash-kernel
Reboot and type this in u-boot:
setenv arcNumber 2678 saveenv reset
Your machine will then be recognized as an eSATA SheevaPlug and eSATA will work.
Thanks to John Holland for working on SheevaPlug eSATA support.
Debian on QNAP TS-11x/TS-21x/TS-41x users: go make a backup
I recently discovered that there are two variants of the recovery mode used on QNAP TS-11x/TS-21x (and possible TS-41x) devices and that one has a different behaviour than what my documentation claims. While this issue should hopefully affect few users (but please take a moment and check if you're affected), it has implications to all Debian users on TS-11x/TS-21x. My install guide originally told users to create backup of some mtd partitions only but from now on you need a copy of all partitions in order to use the recovery mode. Therefore, please take a moment now to create a backup of the remaining partitions:
cat /dev/mtdblock0 > mtd0 cat /dev/mtdblock4 > mtd4 cat /dev/mtdblock5 > mtd5
(You should have copies of mtd1, mtd2 and mtd3 already if you following my guide.)
Make sure to copy the files to another machine and add them to your backup.
Debian stable installer for SheevaPlug, QNAP TS-11x/TS-21x and OpenRD
We added support for Marvell's Kirkwood platform to the Debian installer a few months ago and a lot of people have installed Debian testing (squeeze) on devices such as the SheevaPlug and QNAP TS-11x/TS-21x. While this works great, some people would prefer to run Debian stable (lenny). Until recently, I thought we wouldn't be able to support lenny in the installer since the kernel in stable doesn't have support for Kirkwood. However, some work by Frans Pop showed me that it would be quite trivial to change the installer so it would install Debian stable plus the kernel from an alternative repository.
So from now on, it's possible to install Debian stable (lenny) on the SheevaPlug, QNAP TS-11x/TS-21x and OpenRD. This installation mechanism uses the squeeze installer to install Debian lenny (stable) plus the kernel from a repository I maintain. This repository usually contains the kernel from Debian testing (although I sometimes add the kernel from unstable if it has some important features).
Since some users might be wondering which version to install, here is an overview of the benefits and downsides of each version.
Debian lenny (stable): it is the current stable version of Debian (version 5.0).
- lenny has security support (note that this does not apply to the kernel, which we take from squeeze).
- lenny is stable (i.e. it doesn't change, except for security and other important updates).
- The software in lenny is older (since lenny was released in February 2009).
Debian squeeze (testing): it is currently under development and will be the next stable version of Debian (version 6.0).
- squeeze changes every day, with new software coming in.
- squeeze has fairly new software.
- While there is some security support for testing (squeeze), the security support for stable is better.
Debian Installer 6.0 Alpha1 available
The Debian installer team today announced the alpha1 version of the installer for Debian squeeze (6.0). This release adds a lot of new features but I just wanted to highlight the ARM related enhancements. With this release, Marvell's Kirkwood platform is supported. Specifically, the installer supports the following devices: QNAP TS-110 and TS-119, QNAP TS-210, TS-219 and TS-219P, SheevaPlug and OpenRD. In addition to Kirkwood support, Wouter Verhelst added support for the Intel Storage System SS4000-E.
Marvell publishes roadmap of its ARM series called Armada
For those who haven't seen it yet, LinuxDevices published an article recently looking at the roadmap of Marvell's ARM line. The new line is called Armada and for Debian the Armada 510 (known as Dove) is of particular interest. To me, it essentially looks like a Kirkwood (the current platform) but with ARMv6/v7 (instead of ARMv5), integrated VGA and some other features. According to the article, the Armada 510 is aimed at "high-end smartbooks and tablets".
I'm happy to see the integration of VGA because I'd like to see more ARM based smartbooks, tablets and thin clients. At the same time, I'm worried that the VGA will be some proprietary chip without proper open source drivers and I'm surprised that the new chip only offers 1.2 GHz. After all, the current Kirkwood chip clocks 1.2 GHz already, so I'd have expected an increase to 2.0 GHz for the next generation.
New devices from QNAP: TS-110, TS-210 and TS-410
When I visited Taiwan last week to talk about Debian at a conference on smartbooks, I used the opportunity to meet up with the folks from QNAP. It was really nice to meet many of my contacts at QNAP in person. We talked about their roadmap and existing products and I found out that they had just released a number of new devices that may be of interest to Debian users.
I really like the hardware from QNAP but one downside of their high quality is also that the devices are fairly expensive. Last week they introduced a number of lower cost alternatives: in addition to the TS-119 and TS-219, you now have the TS-110 and TS-210. They feature a 800 MHz CPU (instead of 1.2 GHz on the TS-119/TS-219), 256 MB (instead of 512 MB) and have a plastic case (as a result of which, the TS-110 now has a fan unlike the TS-119). Similarly, in addition to the TS-419 and TS-419U, you now have a TS-410 and TS-410U.
Since the TS-110/TS-210 and TS-119/TS-219 are compatible, the Debian installer will work out of the box.
Debian installer for SheevaPlug available
You can now use the Debian installer to install Debian on the Marvell SheevaPlug. This routine will install Debian testing (squeeze), which is currently under development. The installer itself is also under development, so there may be problems from time to time but it should generally work pretty well. The Debian installer doesn't support installations to flash, but you can use it to install to a USB stick or disk as well as to an SD card. Here are installation instructions.
Upgrading SheevaPlug's U-Boot to version 3.4.19
Marvell made a new version of U-Boot for the SheevaPlug available last month. This version, 3.4.19, integrates SD card support and improves support for FAT32 USB partitions (although USB support in general is still a bit flaky). This page describes how to install this new version of U-Boot on your SheevaPlug.
First of all, download the SheevaPlug U-Boot 3.4.19. Unpack the zip file and copy the file u-boot-3.4.19/u-boot-rd88f6281Sheevaplug_400db_nand.bin to your TFTP server. I suggest you call the file u-boot.bin.
Then start your SheevaPlug and type the following:
setenv serverip 192.168.1.2 # IP of your TFTP server setenv ipaddr 192.168.1.200 bubt u-boot.bin
The upgrade process will ask whether you want to change the environment:
**Warning**
If U-Boot Endiannes is going to change (LE->BE or BE->LE),
Then Env parameters should be overridden..
Override Env parameters? (y/n) n
Make sure to answer "n" here.
We also need to make a small change to the u-boot configuration because this version of u-boot no longer accepts the console parameter we have been using. Thanks to Tom Rinehart for pointing this out. Instead of console, we'll therefore add a new bootargs_console and update bootcmd to make use of it:
setenv bootargs_console console=ttyS0,115200 printenv bootcmd
You'll see that bootcmd contains $(console). You have to set a new bootcmd and change the console parameter to $(bootargs_console). In my case, I'd type:
setenv bootcmd 'setenv bootargs $(bootargs_console); run bootcmd_usb; bootm 0x400000 0x0800000; reset'
Make sure you don't forget the quotes!
Finally, save the environment and restart your machine:
saveenv reset
Debian installer for QNAP TS-119, TS-219 and TS-219P available
The Debian installer for QNAP TS-119, TS-219 and TS-219P devices (based on Marvell's 1.2 GHz Kirkwood chip) is now available, together with installation instructions. The installer is still under development and it will install Debian testing, which is also under development. However, I think it's working pretty well. If you try the installer, please send me feedback.
Initial thoughts on the new QNAP TS-219P
QNAP has announced a new device earlier this month, the QNAP TS-219P. The
specs are very similar to the TS-219 (1.2 GHz Kirkwood CPU, 512 MB RAM and
16 MB flash) but the device is smaller and has some other advantages.
What I like about the new TS-219P:
- The device is more compact and looks really nice.
- The fan is less noisy than the one in the TS-209 and TS-219.
- There are two eSATA ports.
What I don't like so much:
- The device only has one Ethernet. I'd really like to see two Ethernet ports.
- The serial connector cannot easily be accessed through the SATA slot, something that was possible with the TS-209.
Since the TS-219 and TS-219P are quite similar, Debian and the installer will work without any problems. I updated my QNAP page to document the QNAP TS-219P, including some pictures of the new device.
SheevaPlug lenny tar ball and SD cards
I updated my SheevaPlug installation instructions today to document how to boot from an SD card. The u-boot boot loader shipped with the SheevaPlug doesn't have SD/MMC card support, but PlugComputer forum user kwonsk created one that does (and which works pretty well, except for not working with some SD cards).
First successful installation on QNAP TS-219
I performed the first successful installation of Debian on the QNAP TS-219 using the Debian installer today. Everything is in place now but the Linux 2.6.29 kernel has to move to testing so installations will work.
Update on QNAP TS-119/TS-219 kernel support
I mentioned a few weeks ago that initial kernel support for the QNAP TS-119 and TS-219 Turbo NAS got accepted for 2.6.30 but that there were some issues left. Here's an update:
- SATA: Kirkwood uses a different SATA PHY and the Orion settings weren't quite right, leading to the timeouts I saw. As it turns out, Saeed Bishara from Marvell had a patch for this already and it will be in 2.6.30-rc6.
- Flash: writing to flash is now possible thanks to a patch from Peter Horton that has been merged into 2.6.30-rc5.
- Parsing the MAC address: Thomas Reitmayr created a patch to parse the MAC address from flash but the kernel people thought this should be done in userspace. I haven't looked into this yet... maybe the best solution is to document that the MAC address will change.
- SATA lights: Thomas Reitmayr created a patch to fix this issue.
The SATA and flash fixes are already in our 2.6.29 kernel.
Debian 5.0 (lenny) tar ball for QNAP TS-119 and TS-219
Since the installer isn't quite ready yet, I created a tar ball containing Debian lenny for the QNAP TS-119 and TS-219 along with some installation instructions. The QNAP firmware is used to partition the hard drive and unpack the tar ball, so Debian can be installed without having to put the hard drive into another machine.
Debian 5.0 (lenny) tar ball for the SheevaPlug
It took me a while because of travel and other projects, but I finally released a tar ball containing Debian lenny for the SheevaPlug along with some installation instructions. It should be really easy to install Debian this way, but I'll also make sure that SheevaPlug support will be in the Debian installer for the next release of Debian. For now, check out the tar ball I prepared!
Kernel support for QNAP TS-119 and TS-219 Turbo NAS in 2.6.30
My patch for initial kernel support for the QNAP TS-119 and TS-219 Turbo NAS got accepted and will be in 2.6.30. I can run Debian on a USB disk without any problems but there are some issues left (some severe, some cosmetic):
- SATA: there are long timeouts when initializing the disk. In most cases, the disk is eventually recognized but it can take quite some time. I've no idea why those timeouts happen.
- Flash: I can read from flash just fine but writing doesn't work.
- Parsing the MAC address: even though a MAC address is set in u-boot, the QNAP firmware stores the real MAC address in flash (similar to the TS-109 and TS-209). The TS-109/TS-209 code to read the MAC address doesn't work because the flash on the TS-219 is connected in a different way (SPI).
- SATA lights: the activity light doesn't work.
Unfortunately, I've no idea how to resolve these issues. However, the QNAP TS-119 and TS-219 have started shipping so hopefully someone else will investigate these issues.
Power consumption of the SheevaPlug
Various people were wondering how much power the SheevaPlug consumes exactly. Laurent Guerby, who runs the GCC Compile Farm, posted some data today. According to his measurements with an Energy Monitor 3000, the SheevaPlug uses:
| 3.1W | just on, Linux booted |
| 3.3W | serial |
| 4.3W | serial + Ethernet |
| 5.4W | serial + Ethernet + 100% CPU |
| 6.0W | serial + Ethernet + USB disk |
| 7.0W | serial + Ethernet + USB disk + 100% CPU |
However, these figures should be seen as preliminary and relatively high values since power management for Kirkwood has not been implemented in the kernel yet. In particular, the Kirkwood chip has SATA and PCI-E but they could be turned off since they're not used by the SheevaPlug. This is currently not done in the kernel, so you can expect some improvements in this area.
SheevaPlug: the NSLU2 killer
I received a SheevaPlug this
week, an intriguing device that packs incredible power and functionality
into a tiny package. As many of you know, I've been doing a lot of work on
Debian for the Linksys
NSLU2 in the last few years. The NSLU2 is a key reason why ARM has
become the third most popular architecture in Debian (after 32 and 64 bit
x86), and I believe a main reason is that the NSLU2 is so incredibly cheap.
At a price under $100, most people don't think too long and simply buy a
device and do something cool with it.
The SheevaPlug is being offered at the same price range but offers considerably more. Riku Voipio asked the right question: "What would you do with something approximately 10x more powerful with same prize/size range?" I believe the SheevaPlug is a killer replacement for the NSLU2 and here's why:
- Marvell Kirkwood 6281 CPU at 1.2 GHz with 256 KB L2 cache (compared to a 266 MHz CPU)
- 512 MB RAM (compared to lousy 32 MB)
- 512 MB flash, enough for a basic Debian installation (compared to 8 MB)
- Gigabit Ethernet (compared to 100 Mb) and no proprietary microcode required
- 1x USB and 1x SD (compared to 2x USB: the only advantage the NSLU2 has)
- ... and finally: mini-USB with serial console and JTAG: while Debian on the NSLU2 works well and is stable, we regularly had users whose system would no longer boot and there was no good way to figure out why. The serial console on the SheevaPlug actually allows users to figure out what's going on.
I'm incredibly excited about the SheevaPlug and the first thing I did was to take the device apart and look at the inside. The results can be found in the SheevaPlug image gallery. My next project will be slightly more productive: porting Debian.
As I see it, we should support the following three installation variants for the SheevaPlug:
- To an external USB drive or stick.
- To an SD card.
- To the 512 MB flash memory on the device.
The first two should be relatively straight forward, but of course installing to the internal flash memory is particularly interesting given that 512 MB (plus compression) is enough for a basic installation of Debian. Unfortunately, installations to MTD flash are currently not supported in the Debian installer but I hope we can find a volunteer who wants to implement this functionality.
My next steps are to put a kernel for the SheevaPlug into the archive and to get a basic installation going. From there we can look at more sophisticated installation options and other functionality.
Debian support for QNAP TS-119 and TS-219 Turbo NAS coming
I received a sample of QNAP's new TS-219 Turbo NAS today. The TS-119 and
TS-219 devices are an upgrade to QNAP's TS-109 and TS-209 devices and were
announced earlier this month at CeBIT. The new TS-219 uses the same robust
case as the TS-209 but offers much more performance:
- Marvell Kirkwood 6281 at 1.2 GHz (instead of Orion 5182 at 500 MHz)
- 512 MB RAM (instead of 128 or 256 MB)
- 16 MB flash (instead of 8 MB)
The numbers I've seen about the Kirkwood CPU suggest that the TS-219 will indeed give a very significant performance boost. So far, the TS-219 looks very nice. My only complaint is that QNAP didn't export the second Ethernet port the Kirkwood chip offers, but I suspect this is because they wanted to stay as close to the original design of the TS-209 as possible.
In any case, the TS-219 is a nice machine and I look forward to porting Debian to it. As a first step, this means getting the mainline kernel to run on the device and adding a kernel for Kirkwood to the archive (the latter is needed for a number of other devices based on Kirkwood anyway). Hopefully, the remaining porting work and integration into the Debian installer should be fairly straightforward given that the TS-209 is already supported in Debian. I'm sure I'll find out as I dig into the details...
I'll give periodic updates of my progress. In the meantime, I've created an image gallery of the TS-219.