Somewhere in 2010/11 I decided to clean up mess of naming machines at home and decided to go with character names from “Winnie the Pooh” books (Polish edition). Today I got new developer board and had to spend a moment to get a name for it.
So “klapouchy” (Eyeore) will be new name for DragonBoard. Maybe not best one but most of the names are already taken:
krzys (Christopher Robin) is my router (because Chris decides who can enter Hundred Acre Wood which is the name of my WiFi network)
puchatek (Winnie the Pooh) is main desktop
lumpek (Lumpy) is conference laptop (it was lucek before because it got Ubuntu Lucid as first system)
gofer (Gopher) is Efika MX Smartbook
krolik (Rabbit) is Samsung Chromebook
malenstwo (Roo) is Pandaboard (there were malenstwo-a1 and malenstwo-ea1 when I had two boards)
prosiaczek (Piglet) was MX53 Quickstart
kangurzyca (Kanga) is my wife laptop (she chosen the name)
sowa (Owl) is another router
tygrysek (Tigger) is my VPS (at beginning it was up/down/up/down all the time)
So most of the names from books are already taken. There are also Disney movies which adds few new ones (like Gopher and Lumpy) and cartoons (which I am not fan of). In worst case one day I will start re-using names or add names from other story.
What I used before? Desktop was “home” or “hrw”, Dell laptop (now “kangurzyca”) was “maluch” (small) due to 12″ size, “lumpek” was “lucek” due to Ubuntu Lucid installed and rest was named by hardware name (which is a default in OpenEmbedded).
When I bought Samsung Chromebook friend started “nbench” on it. So I did same on my conference laptop. None of devices won…
Idea of testing cpu power was sitting somewhere at back of my head and finally I decided to just run one simple command available on nearly every GNU/Linux based system: “openssl speed”. Sure, on some systems it will use hardware accelerators, on others (or not) some options enabled to get more speed (like ARM assembly version which is not enabled in Debian/Ubuntu systems). But it is something what anyone can run at home.
Table may be hard to decipher so I also give it as Google Docs. It also has few more devices listed and whole tables (one below is for 8192 size samples).
Devices in table are:
my Intel Core i7-2600K desktop
my Intel U7300 (ultra low voltage) conference laptop
Exynos5 Dual powered Samsung ARM Chromebook
Exynos4 Dual powered Tizen development platform (got rid of it today)
i.mx515 powered Efika MX Smartbook
Beaglebone with AM335x cpu
Sheevaplug (as only armv5te device which can compare with other entries)
Devices were running different versions of OpenSSL under different systems. It is listed in Google Docs document.
Most interesting columns are U7300 and Exynos 5250 ones — 3 years old laptop which I bought for conferences compared to Chromebook. Looks like for next conferences/events I will rather go with Chromebook not UL30A. This will give me one or two hours of battery life less but it is much lighter device at same time. But have to test it first for few days to check is it comfortable enough for daily use.
Sometimes it is good to take a look at IRC channel in the evening. There will be new chromebook from Samsung. Someone may say “So what? It’s just yet another chromebook not worth looking at.” but I will disagree.
What is special in this device? Specification of course ;) Exynos5 Dual (5250) which has 2 Cortex-A15 cores, 2GB of memory, 16GB of eMMC (a bit small but 64GB sd cards exist) and all that in 11.6″ netbook case. There is no ARM device on a market which could be compared and run open source operating system.
I hope to get one soon — online stores will sell it on Monday. From what I know there will be a way to run other operating system than ChromeOS — I will switch to Ubuntu or Debian on first day probably.
All of that during last 8 years. Most of my ARM live so far was around ARM926 based devices (some of them still can not be listed here) and I do not want to go there again. Kirkwood core was fastest one with 1.2GHz clock and 512MB of RAM it was really fast machine. I only missed Serial ATA in my Sheevaplug (rev 1.0) but even with hard drive on USB it was nice improvement.
Then I played a bit with ARM11 processors. Ok, they were faster than most of ARM9 cpus but I already had experience with Sheevaplug. And after few months first Cortex-a8 board landed on my desk — I got Beagleboard B7 from Bug labs as test platform for their new device. This was improvement!
I still remember my reaction when connected it to normal LCD monitor and saw it used at 720p resolution (1680×1050 was a bit hard for omap3). Moved to Nokia N900 few months later and found that fast cpu means nothing when paired with slow storage and not enough memory for system.
So today I prefer to not look below Cortex-A9 (or comparable cores like ones from Qualcomm or Marvell). Hope to play one day with Cortex-A5 (which should replace ARM926 one day) just to see how low-end armv7a cpu behave.
From time to time I read posts where people wrote that their Efika MX Smartbook does not boot any more. The only thing which it does is white power led blinking about twice per second. Standard reply in such case is “send device back to Genesi”.
Some time ago a friend of mine borrowed Efika MX Smartbook from me. During his experiments he managed to get netbook into such state. I have serial/jtag debug dongle so decided to take a look at it (and unbrick device). I managed to fix it but also somehow broke serial port so can not check why my automate way does not want to work.
What needs to be done to get Smartbook back to live? Few things:
Some time ago I got yet another developer board from Linaro — this time it was i.mx53 Quickstart also known as mx53 LOCO. At that time I only found time to power it on and check does it work at all.
Yesterday I booted it with Ubuntu desktop image from Linaro but without connecting to display (I have HDMI addon so can use VGA and HDMI outputs). Lot of lights (voltage controls mostly) appeared on board — funny thing is that to power some of them all you need is VGA or HDMI cable connected.
Today I went shopping… Board comes with power supply (did not used), USB cable and 8GB microSD card. Last item is important as mx53loco boots from it by default — I do not know does it checks SD card too. What I lacked was Serial ATA -> E-SATA cable for my external hard drive. Yes… SATA->ESATA as board has standard connector for connecting drives directly but as it lacks SATA power connector (about which I wrote already) I had to use external case. Good thing is that local electronics shop had those cables available. Disk speed is quite nice:
Serial ATA disk speed
Same disk on USB
Compare it with SD card:
SD card speed
Which interface you prefer for storage? :) I hope that new Efika MX53 from Genesi will have some good Serial ATA storage inside.
But then I got hit by other issue… Mounting of board started to be a problem. I hope that next version of board will be bigger. This one is too packed — and HDMI addon makes it even worse at it adds 5th edge to square board. In past I wrote a post about perfect developer board and some points apply here. What I do not like:
too small amount of space around mounting holes — hard to reach with 5mm key
VGA and RS232 connectors forced me to use very tiny screws to be able to mount board to my board plate
Power button is hidden behind screw and hard to reach
HDMI addon makes use of Reset and Power buttons very hard — have to use pen or stylus instead of finger when cable is connected
leds are too bright — will have to put some duct tape on them
Is there something I like? Of course — I do not want to only complain ;) This is the only cheap developer board from Linaro supported ones with native Serial ATA interface (iirc Samsung cpu could have it but Origenboard does not have connector). Two SD interfaces allow to prototype devices which require extra expansions in case of Beagleboard or Pandaboard. And this is smallest devboard I ever used (cause I never played with Gumstix — but even they usually run in some carrier boards). And compare to Texas Instruments boards it comes with cables and power supply. I plan to make small distcc/icecream farm from my ARM boards and this one will be for use one of nodes.
Fetch/checkout all three into separate directories.
First we need sdma firmware. Do not ask me what it is — you will need it to build kernel. Cd into directory, call “make” then copy sdma-imx51-to3.bin into firmware directory of linux kernel sources.
Second step is applying patches to kernel. Cd into linux dir, checkout a10aabd5e313ec6481569be20d120191692b4ca6 revision (this is which I used) and call:
QUILT_PATCHES=../rtp-patches/ quilt push -a
This will apply all required patches. Grab my kernel configuration and store it under .config name. Feel free to make some changes into it. Then build kernel.
How to get kernel to device is left for readers — if you know how to build then you are expected to know that.
Next step (we nearly finished) is to boot kernel. So reboot machine and watch how it gets up and running. With my kernel config you will probably see nothing… Cause I moved lot of things into modules. Edit /etc/modules file and add:
snd-soc-imx-3stack-sgtl5000 — sound driver
efikasb_rfkill — needed for wifi to work
mx5fb — framebuffer
Do not expect that 2d/3d stuff which works on official images (with non-free packages) will work. But if you will check modules then you can also look what is in NOR flash (but better do not play with it):