Limit entries displayed: [ 2 ] [ 4 ] [ 6 ] [ 8 ]
Robert Schuster
|Wednesday 04 June 2008
|about: arm , beagleboard , buglabs , cacao , classpath , jalimo , jamvm , linuxtag , openembedded , phoneme , ti
Today I am continuing my impressions of LinuxTag 2008 in Berlin.
Besides Harald and Rob I met Marcus Brinkmann at the social event (= kind of aftershow party). When reading the name on his speaker badge it reminded me of something but I had no clue. We were already in a longer discussion about rulerless societies when I realized that Markus is one of the main contributors to the HURD. It was very fun talking not about software to someone who participates to the core of the GNU project. :-)
The inherent desire of the GNU project to escape control, dominance and dependency from others always made me wonder whether anarchistic way of thinking is prevalent in this community.
When it comes to shared attitudes in a group I guess that people dealing with embedded systems dislike the x86 CPU architecture. At least Florian and Holger expressed their dislike at the LinuxTag and I know it from myself, too (guess why I use a PowerPC laptop ;-) ). Unfortunately in the embedded space ARM CPUs are what powers most of those nice little gagdets (mobiles, PDAs, MIDs/Internet tablets) and sometimes I wish there would be more AVR32 over the place. :-)
However as implied in my last LinuxTag post there is something happening in the embedded Linux world. More and more manufacturers are making specifications available for free and without the need to sign NDAs. Furthermore new hardware is developed with the goal to have free drivers and support from the free software community.
One of the younger efforts is BeagleBoard which is officially supported by Texas Instruments. The hardware contains an ARM Cortex A8 CPU clocked at 600 MHz. Calling this beast "embedded" is kind of an understatement. Still it has all the niceties of such a system: low energy consumption and no fans. If you are interested in what other nice things can be found on the BeagleBoard check out this site. Granted the hardware is already impressive but what IMO really rocks about the board is the new level of openness demonstrated by Texas Instrument (and to a great deal by ARM):
I became interested in the BeagleBoard shortly before LinuxTag and visited their booth at the end of the 2nd day. My questions to the friendly guy at the booth (sorry I do not remember the name, but it was TI staff) started right with the issues that are mostly pressing to me: specifications, NDAs, later lifting of access restrictions. What impressed me was the immediate offer to take one of the CDs from the desk. These CDs contain documents with thousands of pages of documentation of all stuff you find on the board. That reminded me of the cool marketing event of AMD (ATI) where they handed out CDs with specification to every member of a press conference.
So what you get is the reference manual for the board itself, the OMAP35xx embedded CPU and much more.
There are some special areas that are encumbered and need fixing: the board has an 3D accelerator from Imagination Technologies and a DSP with video decoding capabilities. The accelerator lacks public specification and to make use of the DSP a special compiler is needed which is only available as part of a larger licensing deal. There was a project of the Chemnitz University of Technology that implemented a GCC backend for the DSP. This port is not complete and has not been integrated upstream but still it is a start.
While I consider these encumbrances are an annoying drawback work is underway to fix the issue in one way or another. Furthermore those components are not essential - you can still access the framebuffer.
I would really like to get my hands on such a system and make run Jalimo's VMs (Cacao, JamVM) and class libraries (Classpath, MIDPath) run nicely on them. What interests me most is the CPU's floating-point support. Cacao has still trouble with ARM hardfloat and the BeagleBoard would allow me to debug that extensively.
Let me also add that I am currently fighting with PhoneME (Advanced, the CDC one) to get it compiled inside OpenEmbedded. I thank Ken Gillmer from Bug Labs helping me with this (Bug Labs are cool too. Have a look at their licensing page and you know why. :-) )
Back to TI and the Beagleboard: The guy from the Beagleboard booth told me that their interest with the hardware is that the FOSS community gathers around it produces all kinds of fixes and additions to existing projects (to make better use of the hardware or whatever). In return this will make the OMAP35xx series a better product to sell to other customers (and want to deploy some Linux on it). This may sound like exploitation but I think it is a fair deal because:
Before I close this post I would like to highlight my latest finding: ARM is currently making a lot documentation available for free. You can access the documents over here. There are still some placeholders for documents which are restricted and I am not sure whether those will be added later or are out of scope of this effort. Nevertheless ARM provides an RSS link where you will be informed about the latest documentation releases and updates. I have done that and am impressed about the number of documents that are finally seeing the light. I really hope that one day "Jazelle v1 Architecture Reference Manual" will appear in my RSS reader ...