Today I got email that ‘xf86-video-armsoc’ landed in Ubuntu 13.04 ‘raring’. I also sent ‘linux-chromebook’ into archive.
Next step would be ‘vboot-utils’ which are now in NEW queue in Debian. Once it lands I will sync it into Ubuntu so we can sign kernels. What else needs to go into archive? Maybe OpenGLES driver. I have 0.45 packaged but need to fix showing the license.
What with support of older Ubuntu releases? I do not care about them and have a feeling that those who run them on their Chromebooks does not care as well (no one checked UCM profiles which were for verification).
So if you want to have good working Ubuntu on your Samsung ARM Chromebook then update to 13.04 or take care of backporting updates or ‘talk to the hand’.
Year ago we had Linaro Connect right after FOSDEM so I decided to skip and walk to Golden Gate instead. But this year there were no conflicts!
Months before we had discussion on SzLUUG mailing list about who goes for FOSDEM. There were about 9 people wanting and we ended with five. So on Friday morning friends arrived near my house, I jumped into car, we grabbed 4th one (Tomek was in London at that time) and went to Berlin Schönefeld airport for 07:00 Easyjet flight.
And we missed it… 5-10 minutes late we were ;( 75€ per person and 10 hours later he took off from SXF airport.
But that 10h was not wasted. Berlin has very nice Technical Museum with many trains, cars, planes and other exhibitions. And they had Trabant 601 as well:
My first time in Trabant
Then trip to shops (Saturn, Media Markt) in search for HTC Desire X case (Magda) and LG Nexus 4 (me). Avoid Saturn — they do not handle credit card payments at Alexanderplatz so I had to walk to the ATM. Two S-Bahns later we passed security check and went to the gate early enough to fly.
BRU airport… I think that (with exception of SXF/TXL) it is my most visited airport as it was my 5th FOSDEM and there was UDS-M around as well. But this time we took a bus instead of a train. 14€ ticket works for 72 hours so cover all trips perfectly. Few hours later we were joking that this multi country journey was exhausting as we were in Berlin, Brussels, went though Geneve (bus stop) to Luxembourg (square) and passed near London (restaurant) ;D
Hotel, drop stuff, connect chargers, went for beer event. Crowdy as usual it was. But I managed to meet some friends (but also missed lot of them) and grabbed few beers. Good spent time. Too bad that I was so tired that went back to hotel just right after midnight.
Saturday
Breakfast in St. Nicolas hotel maybe is not the best but provides enough energy to survive a day. Met several guys there, Philip gave me Kindle Paperwhite which I bought few days before (with delivery to his house to lower price) and his famous Belgium/Holland/Luxembourg guidebook. I also got Beagle pendrive from Koen.
Beagle pendrive
Then overcrowded bus 71 and FOSDEM! I told Bartek where things are (but at that time I had no idea of K building) and we split. In AW building I met friends manning OpenEmbedded stand just right in front of building entry.
OpenEmbedded stand
Circuitco had Beaglebone stand right to it:
Beaglebone robot
That robot was great example what you can do with enough signals available to drive all those motors. And what you can do with 3D printers ;D
I do not know is it due to crisis or something but AW building had just half of a space for stands used…
Then I went for talks:
“Embedded distro shootout: buildroot vs. Debian” — wasted time. Long discussion about Emdebian + short info that Buildroot works in other way. Could be nice talk if done in other way.
“Porting Fedora to 64-bit ARM systems” — talk done by Jon Masters and his clone. As usual first “what the hell is 64-bit ARM” and then how Fedora bootstraps itself. Nice talk, got some new stuff. Have to dig for Cavium SDK.
“Porting OpenJDK to AArch64” — interesting it was. Two speakers, lot of technical details.
“ARMv8, ARM’s new architecture including 64-bit” by Andrew Wafaa. Mostly to catch speaker in easy way ;D
“Bootstrapping Debian-based distributions for new architectures” - I was lazy to go somewhere else but it was good talk.
“Bootstrapping the Debian/Ubuntu arm64 ports” by Wookey. Kind of recycled talk from Barcelona but I like his presentations. Also first one without “what the hell is armv8” introduction.
I also had nice discussion with Jolla guys about their system/device and would I like to test it once they will have something ready for complains. Played a bit with Firefox OS on their reference developer platform and on Nexus S and was not impressed — for example it looked like they have to learn about DPI…
Then I met OE crew and few other guys and when finally noticed that it is time to go to the hotel and drop gear there. Once arrived it was a bit to late to go somewhere and search for some event so I joined SzLUUG team and we went for a meal, chocolates and then some drinking.
Sunday
Breakfast, packing gear and go for a bus which was less crowded than day before (but we are a bit late as well). As we had to leave after 14:00 I managed only two talks:
“systemd, Two Years Later” — some Ubuntu trolling and project status. Nice talk.
“Porting applications to 64-Bit ARM Architecture” by Riku Voipio (main AArch64 porter at Linaro). Good discussion in a room, some nice hints and suggestions. Read his recent blog post about ARMv8 porting
Then walk, tram, bus and security check. This time I did not have to take developer boards from backpack as I gave them away during event. We arrived in Berlin and (due to Michał’s fosdem flu) I drove us back home.
Summary
It was great event as usual. But distance between K building and rest was too big for sessions which are one after another. I dropped some entries from my calendar just because it would be H->K->H->K switching.
Android application for schedule was ok. Would be nice to make a bigger effort and update it to cover K building as well and add a way to see what is going on in each building/room to reduce time before sessions.
Funny part
On Saturday I realized that for some reason I may remind Jon Masters… That’s due to hardware I had with me:
two developer boards
two phones
two tablets
3 USB chargers
4 microUSB cables
The good thing is that they were not of same type (except some cables) :D
This year no one blocked me from going to FOSDEM ;D
What are plans? There will be some AArch64 related talks which I want to attend:
Bootstrapping Fedora for AArch64
Bootstrapping Debian/Ubuntu for AArch64
Porting software for AArch64
Porting OpenJDK for AArch64
What the hell is AArch64
Few ARM ones:
Freedreno update
Open ARMGPU drivers
ARM status in Linux kernel
Few for entertainment:
Buildroot contra Debian
Baserock introduction
Eudev
Some for curiosity:
HipHop
Why there is no such thing as FOSS phone?
Original titles may differ. There are over 450 events during FOSDEM, several keynotes etc. There will be also few thousand people so I would rather not find a time to attend even half of sessions listed above… But for me this is how this conference work :D
Normally I do not take hardware with my (other than phone). This time I packed two boards, two tablets and hope to get rid of most of them ;)
Some time passed since last Chromebook post so I want to give small update on Ubuntu status.
Dylan Reid from Chromium team fixed ALSA driver so frying speakers is now past. This change will go into next stable Chromium update probably. I got it merged into Ubuntu kernel and released as “3.4.0-4” version in PPA.
In meantime Vladimir Smirnov took a look at “release-R25” branch of kernel and got it booted. He shared configuration so I went with it, synced with Ubuntu one and got it running on my Chromebook. So expect new kernel release after FOSDEM.
There are Mali OpenGLES drivers available for download. I was unable to use them with R23 kernel (current Ubuntu one) but they do work with R25 branch so another thing to take care. This time I have to make new packaging as I need to add click thought license support. After that we can drop Chromium OS from our devices ;)
VBoot utilities are also in PPA. So signing of kernels and manipulating partition tables do not need files from Chromium anymore.
But there is one thing. Or rather lack of it… I do not have time to check do my packages work under older versions of Ubuntu (12.04, 12.10). Due to that I will not release any new updates for them — will support only ‘raring’ (13.04). Everything will be available in PPA so anyone can test.
My work often requires booting AArch64 fast models. As there are two of them and each has different arguments I decided to write simple script to handle that.
Script takes three arguments:
kernel
rootfs (can be skipped)
model type (foundation/rtsm — first one as default)
This is work in progress — for example there is no network configured for RTSM yet. But I hope that it will be useful for other users.
#!/bin/bash
model=foundation
kernel=
rootfs=
if [ ! -z $3 ]; then
model=full
fi
if [ -z $1 ]; then
echo "Usage: boot-armv8 KERNEL ROOTFS"
else
kernel=`realpath $1`
fi
if [ ! -z $2 ]; then
rootfs=`realpath $2`
fi
case $model in
foundation)
if [ ! -z $rootfs ];then
rootfs=" --block-device $rootfs"
fi
sudo ip tuntap add tap0 mode tap
sudo ifconfig tap0 192.168.168.1
~/devel/canonical/aarch64/FastModels/Foundation_v8pkg/Foundation_v8
--image $kernel
--network bridged --network-bridge=tap0
$rootfs
;;
rtsm)
if [ ! -z $rootfs ];then
rootfs=" -C motherboard.mmc.p_mmc_file=$rootfs "
fi
export ARMLMD_LICENSE_FILE=8224@flexlm.linaro.org
~/devel/canonical/aarch64/FastModels/VE/AEMv8_0.8.4407/ModelDebugger_7.1/bin/model_shell64
-a $kernel
$rootfs
~/devel/canonical/aarch64/FastModels/VE/AEMv8_0.8.4407/lib/Linux64/RTSM_VE_AEMv8A.so
;;
esac
Most of my work at Linaro is around AArch64 architecture. Ubuntu cross compilers were kind of adopted by Matthias Klose (Debian/Ubuntu toolchain maintainer) so I was able to spend more time on ARMv8.
In short: first one is about porting software to ARMv8, second about OpenEmbedded support for it. The fact that both projects are on Launchpad does not mean that they are for Ubuntu (which is common mistake). It is open for everyone. We have people working on fixing packages in Debian, Fedora, Ubuntu (when it comes to distributions) and in OpenEmbedded. All of that with usual mantra: upstream first.
So how it goes today? I would say that quite good. Since September (when we started OpenEmbedded work) we got to point when we fixed several projects and find less and less new ones to work on.
For me it is nice experience. As I am not a programmer (my last application was for AmigaOS in last millennium) I was often surprised how small changes are sometimes needed to get software running. I got X11 running with ~8 lines of code. Libav required editing of one line in configure script. NumPy was adding 4 lines. OProfile required copying few lines from kernel source. And all those got merged upstream or is on a way to it.
If you want to track our work then check “Merge ARMv8 support into OpenEmbedded” blueprint where I track every project I touch. And ignore ‘milestone’ field — it is always work in progress because every project we fix gives us new projects to build. Which often means another set of software to patch.
I prefer not to think how much it would take us without OpenEmbedded. Being able to just easily cross compile huge amount of software in automated way is great. Sure, from time to time I had to boot software model and do some native compilation or run some tests. But mostly to generate some files which are not properly built/guessed during cross compilation.
Also I would like to thank all maintainers (from OE and upstream projects) for reviewing all our patches and all help we got. But we did not finished yet — there is a long queue of things to clean up and send for merging :)
Recently I got offer from one of head hunters company. They represent one of companies I trusted but no longer care about.
I have been retained by XZYA (specifically XZRI – XZYA Research Institute which is their European R&D and innovation division) to connect with candidates that they would like to speak to relative to the creation for 2 new Open Source labs which XZYA are creating as part of their global drive to increased Open Source Software adoption and evangelism within their business.
The new Open Source team will be made up of software engineers and specialists working across various open source SW areas, projects and groups – for example Linux kernel, Linaro, LLVM, web servers (webkit, node.js, jquery, chromium lighttpd), Wayland, XEN etc
It’s really important to note that the positions being created will allow the individuals selected to continue to be open source community / project focused (70-80% of your time committing, maintaining or contributing to projects) but representing XZYA.
The Open Source labs will be located both in Espoo, Finland and in Staines, UK (near London). Positions can be in either location.
Having consulted my network as well as undertaken some market due diligence and research, I wanted to connect with you to ascertain whether I could secure your interest in being one of the founding members of this new team.
It does sound interesting but I do not want to work for company which do not care about product design or cooperation with external developers.
Few months ago prices of RAM for my desktop went down so I upgraded to 24 gigabytes. By most of time I use maybe half of it but this allows to do some work faster…
Most of my AArch64 work relates with using OpenEmbedded to build something. To get it faster I moved TMPDIR to separate hard drive but finally decided that when I am not building “world” (to find new breakage) I do not need more than 8-12 GB of space.
So now my TMPDIR is symlink to /tmp/OE/tmp/ directory and sstate cache files are on hard disk. This allows me to do quick builds of random software or system images (“linaro-image-lamp” from scratch is 5 minutes). When OE complains about lack of disk space I just remove contents of “tmp-eglibc” directory and retry build. Everything needed for build goes from sstate cache.
But there are days like today — OE-Core maintainers merged my “gmp” patch for AArch64 so I dropped it from “meta-aarch64” layer and have to wait a bit for rebuilding of all source packages. After that I will have my fast builds again.
So if you do a lot of builds then invest in memory — most of today desktop can take 32 GB…