Archive
STE U8500
One of the latest board we’ve been playing with is the new STE U8500.
The U8500 is a smartphone platform created by ST-Ericsson, offering a dual ARMv7-A Cortex A9 core, with strong hardware decoding power and ARM Mali 400 GPU.
More about it’s features:
* Full HD 1080p camcorder, multiple codecs supported via OMX (H264 HP, VC-1, MPEG-4)
* High-resolution, touchscreen display support up to XGA
* Simultaneous dual display support
* High performance 3D graphics, support for OpenVG 1.1 and OpenGL ES 2.0
* Dual camera support with Integrated ISP 18 Mpixel and 5 Mpixel
* Wi-Fi, Bluetooth and GPS enabled platform
* Built-in USB 2.0, HDMI out
And technology:
* Highly efficient, low-power ARM dual Cortex™- A9 processor
* Dual multimedia DSP for low-power, flexible media processing
* High-bandwidth LP-DDR2 interface
* ARM Mali™ 400 GPU and NEON®CPU extensions
Now, about the things that interest me the most, the current status in Linux in general:
Kernel:
The kernel we’ve been working on is a vendor’s based one, using 2.6.29 as base. With this kernel we have many features implemented, like blitter support, framebuffer, hdmi output and many more.
At upstream side, the code is just starting to be merged, and you can see already some basic commits going on linux-2.6, like commits 1, 2, 3, 4 and 5. STE seems to be doing a great job on getting the changes upstream, since it’s the only feasible way to make it supported in mid, long term in linux. So expect more changes at 2.6.34 and 2.6.35.
U-Boot:
Similar with the kernel, we’re also using a custom vendor’s version. They’re just starting to make the support upstream, and you can find the patch series here.
Once we get the basic U-Boot and Linux support upstream, we can start working directly with mainline, fixing and improving it when needed.
Our work:
Since we got the board we’ve been playing on supporting many different Linux platforms, and optimizing the basic Linux OS core to be commonly used by different distros.
We started with Maemo 5, as a proof of concept, and we got it up and running with a very good performance and hopefully soon we’ll be able to share more details.
OE Angstrom/Mamona is very easy to support, since we just need to create the machine configuration and use the same compilers already used by other ARMv7 architectures.
Personally I started testing Ubuntu Lucid release, and just got the very basic support, with a custom and simple image. Ubuntu is now a very good option since it’s targeting ARMv7 platforms, with compiler optimizations and Thumb2 support. NEON support is not included by default, but you can support it by compiling specific components by hand. For more information please check at ubuntu wikipage.
Meego also boots and runs fine at this platform, but since it’s just a basic OS ATM (armv5 only), doesn’t have anything interesting to play with.
Besides platform support, we’ve been working on creating the hardware accelerated X server video driver, to use EXA, DRI2 and Xvideo with overlay. Once we get it all running we can easily use it in any Linux distro we want, and X we’ll be accelerated by default.
Now the important question, where’s the code?
STE still didn’t deliver the main software in public, so we can’t just release the Kernel, U-Boot and other development that requires support from these software components. But this is changing, and I believe that very soon we’ll be able to get most of the things in public, so others can download and test if needed.
In the next posts I’ll be showing more about the status of these distros on this hardware, also showing the performance and demonstrating it.
Board I’ve being playing on:
root ~# cat /proc/cpuinfo
Processor : ARMv7 Processor rev 1 (v7l)
processor : 0
BogoMIPS : 1199.30processor : 1
BogoMIPS : 1199.30Features : swp half thumb fastmult vfp edsp neon vfpv3
CPU implementer : 0×41
CPU architecture: 7
CPU variant : 0×1
CPU part : 0xc09
CPU revision : 1Hardware : ST Ericsson U8500 Platform
Revision : 0000
Serial : 0000000000000000
Links and videos about U8500:
* ST-Ericsson U8500
* ST-Ericsson U8500: PlayStation controller, PlayStation grap
* U8500 3D Video
OpenEmbedded and Mamona at Fisl 10
For those who are going to FISL this year, I’m going to make a presentation about OpenEmbedded and Mamona, showing how the OE woks and also how OE can support so many different machines, distros and packages.
The presentation is going to happen this wednesday (24/06) at 17h. If you are planning to understand more about how the embedded environment works, learn about it’s problems and how OE is handling that, you can’t miss it
Besides the presentation I’m quite happy that I’m going to meet some good old friends. Hopefully we’ll learn more about what each other are doing and also to drink some beers together
See you all there
Mamona Gentoo Overlay
At this weekend I finally had some time to work on something that I was in debt for a while, a gentoo overlay for Mamona.
If you’re a Gentoo user and want to test and run Mamona at your favorite distribuition, you now just need to install Mamona overlay and emerge mamona-installer.
For installation procedure just access Mamona Gentoo Overlay wiki page.
List of ebuilds at the moment:
- cdebootstrap
- mamona-installer
- reprepro
- 0xFFFF
- mic
- libdebian-installer (required by cdebootstrap)
Mamona HowTo in pt-br
For those who can read in pt-br, here’s a link to a Mamona how-to that Jorge Pereira made.
It has some good instructions explaining how to start playing with Mamona.
And remember, in case you need/want to understand Mamona better, just access Mamona’s Trac.
See ya
Mamona 0.2 is out!
I’m really happy to announce the final release of Mamona 0.2!
We’ve been working very hard to accomplish what we wanted for the final release, since the 0.2-Beta release.
We could not delivery everything we wanted, but this is a major improvement from the latest release.
Some of the main highlights for 0.2:
- Improved SDK
- Xephyr support on SDK
- Full Emulation
- Virtual Keyboard
- Wireless Network with Network Manager API
- Command line interface for Network Manager
- Web browser: Midori
- New installer, with our own Qemu (don’t need to mess up with your system anymore
- Completely rewritten wiki documentation
- New Enlightenment wallpaper
See more at the Release notes, and the complete list of what changed at the Change Log.
You can find the installation instructions and much more at the Documentation wikipage.
And, as always, features planned for the next release:
- Rebase to the latest OE repository
- Push Mamona’s patches to OE
- Full support of QT 4
- Initial support for KDE 4
- Something to report the battery status to the user
- More machines: beagleboard
- ARMv7 support
- a newer gcc, glibc and other applications.
- more applications
- MDM – Mamona Device Manager
We’re also planning to make new releases more often, so wait for the next release soon
Please, try Mamona 0.2 and give us some feedback, so we can improve the platform for the next release.
And finally, a big thanks for everybody who helped making this release possible
Finally, my beagleboard :-)
Today I finally had a chance to put my hands at my beagleboard! My lovely girlfriend brought it from her trip to USA
This is just the beginning, just booted it to test if it was working ok, still need to get the serial port working to let the fun part begin!
First step is to boot Mamona and get everything we already have at OE so we could integrate one more board at Mamona
Beagleboard is a really great idea and a fun toy, it’s like keesj said, the hardware is just sexy
If you don’t know what exactly is the Beagleboard project, I recommend you to take a closer look at http://beagleboard.org/ it’s really cool to see all the movement on this little board
Hope to post more about it soon
Mamona 0.2-Beta released!
Greetings!
It’s been a long time since we released 0.1 (at that time I wasn’t even working at INdT),
so is with pleasure that I’m announcing the official Mamona 0.2-Beta release.
A lot changed since 0.1, we had a couple of goals for 0.2 release, mainly to support
Nokia N770 and to add some highly missing features, like network and virtual keyboard.
Main features already available for the beta release:
- Glibc – 2.5
- GCC – 4.1.2
- Full Python 2.5 support
- Enlightenment Window Manager
- USB Networking
- Bluetooth support
- Noemu Packages
- Mamona SDK
- QEMU (user mode emulation) 0.9.0 for Mamona SDK
- ARM EABI Version 5 (N770) and 6 (N8X0 and Omap)
- Machines Supported:
- Nokia 770
- Nokia 800
- Nokia 810
- Omap 3430
- Web browsers: Firefox 3 and Midori (recommended)
- Virtual Keyboard
- Xephyr support on SDK
- SystemTap enabled kernels for N800 and N810
Work to be done for the final 0.2 release:
- Network Manager working with dbus API (Open, WEP and WPA)
- Fix Track (documentation)
- Mamona Device Manager
- New and lighter theme for Enlightenment
- MIC
- Full Emulation
- Tests and bug fixing
You can find 0.2-Beta repositories at: http://dev.openbossa.org/mamona/0.2-beta/
The installation instruction is basically the same from 0.1, but we’ll create a whole
new procedure before releasing the final 0.2. The main goal of this beta release is to
officially release the SDK for 0.2. For those who want to play with SDK, just follow
http://dev.openbossa.org/trac/mamona/wiki/Releases/0.2/SDKInstallGuide
For more info please see http://dev.openbossa.org/trac/mamona/wiki/Releases/0.2
Bug reports, as always, should go to Mamona’s Trac; check out
http://dev.openbossa.org/trac/mamona/wiki/Contributing#Bugs for links to posting
and querying bug reports for Mamona.
Thanks a lot for everybody who helped making this beta release possible.
Mamona with virtual keyboard at N770
These latest weeks we’ve been working to get the virtual keyboard on Mamona. We first studied Hildon Input Method and it’s framework, but it was not exactly what we wanted.
After researching a little more, with suggestion of trickie, we decided to try matchbox-keyboard, and realized that it was almost what we wanted, it’s simple, fast and doesn’t depend on any toolkit.
Then, we got to a final solution, that’s to let matchbox-keyboard working with enlightenment, and with the same behavior as maemo with hildon-input-method.
Here it’s a demo of what you get if you build the latest version of mamona (running on N770
:
How to get to this:
- Patches on matchbox-keyboard, mostly by Aloisio;
- Enlightenment Patches, also by Aloisio;
- Mamona Input Methods that works with ecore and gtk;
- Mamona-IM Enlightenment Applet
We’re still working on to get matchbox-keyboard patches upstream, but, if you need them, you can get at mamona git repository.
Please, use it and test if everything is working fine, or at least as expected
. In case you want to report any bug, please open a ticket at mamona’s trac and we’ll work on it as fast as we can
.
Thanks Aloisio for working with Matchbox-Keyboard and Enlightenment, Lauro for working on the first draft of mamona-input-methods and Tiago Buarque for the applet icons!
Editing OpenEmbedded and Bitbake files with syntax highlighting at Vim
Now that I’m currently working with OpenEmbedded at Mamona, I often have to edit and create new ‘bb’ files (the definition and instructions to build packages or define configurations, like ebuilds for Gentoo).
After working with ebuilds to build a few packages, I was really comfortable with the syntax highlighting and new ebuild templates that I have with Vim, but didn’t found anything like that for Bitbake and OpenEmbedded.
First searching for syntax highlighting for Bitbake, I found that Chris Larson already created a Vim syntax file that covered almost everything I need, but was a little bit different from what we have with ebuilds, so I decided to create my own syntax (based on Chris’) and template plugin.
Here’s the code, I just released the version 0.1, it’s quite easy to install, just like any other vim syntax and plugins, just copy the directories at your ~/.vim (sorry emacs users, but this is only for Vim
I’m probably not covering everything from the OpenEmbedded/Bitbake syntax, but it’s quite good for now. If you see any red text around at your code just email me and I’ll try to fix it (patches are also welcome).
It was quite fun to develop for Vim, it’s not that different from any other language and it has many good help files where you can find every allowed syntax that you can use in your script.
Here are some screenshots from bb files and the template plugin:
* Syntax Highlighting:

* Template for new bb files (just open a new file that ends with ‘.bb’):

The template plugin will try to find your user name and email by your global git conf.
Thanks Chris for his syntax file and for the gentoo developers, who created the gentoo-syntax package.










