Modular Graphics on Embedded ARM – ELCE 2012

Philipp Zabel, kernel developer at Pengutronix, discusses about graphics and video support for Linux on embedded SoCs at Embedded Linux Conference Europe 2012. Abstract: Porting Linux to new ARM based application processors has recently become easier than ever: the kernel gained many new frameworks like common-clock, oftree and pinmux. However, things get complicated when it comes to high end embedded graphics units.Those graphics systems tend to be composed of a multitude of on-SoC functional blocks that can operate on shared graphics buffers and video signals, as well as off-SoC encoder/converter chips that can be mixed and matched with any SoC.The old framebuffer is certainly not enough for today’s hardware any more, while modern frameworks like KMS and DRM have their own hassles on non-PC style graphics systems.The talk outlines issues we found while working on graphics and video support for the MX53 and MX6 CPUs and gives suggestions for possible future improvements.This presentation is aimed at developers interested in the …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Inside Android’s User Interface – ELCE 2012

Karim Yaghmour, Opersys inc, talks about the internals of the Android user interface at Embedded Linux Conference Europe on November 5, 2012. Abstract: Android is a very complex stack comprising several dozens of novel components and moving parts. Still, it’s intrinsically a user-centric system and, therefore, its parts which deal with user interface are of special interest for anyone aiming to put Android in a device. This talk will examine the internals of Android’s user-facing components. Specifically, we will cover the inner-workings and interactions of the Window Manager, Surface Flinger, Input Method Manager, and the rest of the system. We will also cover key display and input components such as the Status Bar, Soft Keyboard and Notifications. This talk will be especially useful to developers intending to use Android in user-facing embedded systems, those needing to implement support for their graphics hardware and anyone interested in the internals of Android’s graphics and input layers. Karim covers the following key points …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Etnaviv Project Vivante GCxxx GPU Open Source Driver

You have most probably heard of Lima, an initiative to provide fully open source Mali-200 & Mali-400 drivers by reverse-engineering the closed source Mali GPU drivers. A separate effort, Etnaviv Project, has now started to offer open source drivers for Vivante GCxxx GPU used in SoC such as Marvell Armada 1500 (notably used in mainly Google TV platforms), Rockchip RK2918 (present in many older tablets),  Freescale i.MX6 (used in newer tablets, low cost development boards, some SoMs and GK802/Hi802 mini PCs). The project is called Etnaviv. The introduction of Etnaviv Project reads as follows on the corresponding Github account: Project Etnaviv is an attempt to make an open source user-space driver for the Vivante GCxxx series of embedded GPUs. The current state of the project is experimental. It is currently only of use to developers interested in helping develop open source drivers for the hardware, reverse engineering, or in interfacing with GPU hardware directly. It is NOT usable as a …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Linaro 12.12 Release with Linux Kernel 3.7 and Android 4.2.1

Linaro release 12.12 has just been announced, and includes Linux Kernel 3.7 and Android 4.2.1. The tracking version (stable release) uses Kernel 3.4.22. This release upgrades Android to version 4.2.1, Ubuntu images are now based on Ubuntu 12.10 (Quantal Quetzal) and Linaro U-Boot 2012.12 has been released with support for Origen 4 Quad and Arndale boards. Further improvements have been done for OpenEmbedded ARMv8, where they replaced the php Apache module by php-fpm among other things. On the kernel side, USB drivers have been refactored, and a kernel size analysis have been performed on several platforms. The power management team has mainly worked on big.LITTLE IKS and MP implementations, and it’s the first time LEG (Linaro Enterprise Group) is included in the release, and they worked on UEFI for ARM, GRUB for U-Boot, and provided a Ubuntu server image for Arndale board which can boot via UEFI or UBoot. Here are the highlights of this release: Android Platform Enablement Android …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Linux 3.7 Release

Linus Torvalds has announced the release of Linux Kernel 3.7: Whee. After an extra rc release, 3.7 is now out. After a few more trials at fixing things, in the end we ended up reverting the kswapd changes that caused problems. And with the extra rc, I had decided to risk doing the buffer.c cleanups that would otherwise have just been marked for stable during the next merge window, and had enough time to fix a few problems that people found there too. There’s also a fix for a SCSI driver bug that was exposed by the last-minute workqueue fixes in rc8. Other than that, there’s a few networking fixes, and some trivial fixes for sparc and MIPS. Anyway, it’s been a somewhat drawn out release despite the 3.7 merge window having otherwise appeared pretty straightforward, and none of the rc’s were all that big either. But we’re done, and this means that the merge window will close on Christmas …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Building Kernel Modules for AllWinner A10 Android Devices (e.g. Joystick Support)

Reader JP has enabled Joystick support in Android 4.0.4 on its Mele A1000, this now works with a Playstation2 joystick via USB adapter, a Huskee PC joystick, and 2 other unbranded joysticks. In order to enable Joystick support he had to build a kernel module, and encountered a few issues, so he wrote an how-to which shows what challenges he went through and what solutions he found to those issues.I’m sharing today a slightly edited version of this how-to. This How-to assumes that you have a valid Linux environment where you can build allwinner A10 kernel. The toolchain used was “Sourcery CodeBench for ARM GNU/Linux Lite“ which can be downloaded here: http://www.codesourcery.com/sgpp/lite/arm/portal/package7853/public/arm-none-linux-gnueabi/arm-2010.09-50-arm-none-linux-gnueabi.bin To install it, simply run: You’ll also need the latest Allwinner A10 kernel source: Then follow the usual procedure: I then selected the modules needed for different kind of joysticks namely: I saved the settings and continued the build: Then I copied my modules to my sdcard, went …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Linux 3.5 Release

Linus Torvalds has announced the release of Linux Kernel 3.5: Subject: Linux 3.5 released Ok, not a lot happened since -rc7. There’s a number of MIPS commits (for some reason MIPS has had a horrible track record with the -rc time schedule, I suspect I should just stop pulling late in the game), but most of the rest is pretty small. A couple of dm/md fixes, some gma500 work, make kgdb ‘dmesg’ command work again, some networking fixes, some xfs and cifs noise, yadda yadda. About 50% of the patch is actually the SPEAr clock name renaming that is just some search-and-replace. … Linux 3.4 brought updates to Btrfs file system, some new Intel, AMD and NVidia GPU drivers, X32 ABI, perf tool improvements and support for Yama security module and QNX6 file system. Linux 3.5 brings the following key changes: ext4 metadata checksums:  Ext4 has added the ability to store checksums of various metadata fields, which allows to check …

Support CNX Software – Donate via PayPal or become a Patron on Patreon

Linux 3.4 Release

Linus Torvalds has just announced the release of Linux Kernel 3.4 on the 20th of May: I just pushed out the 3.4 release. Nothing really exciting happened since -rc7, although the workaround for a linker bug on x86 is larger than I’d have liked at this stage, and sticks out like a sore thumb in the diffstat. That said, it’s not like even that patch was really all that scary. In fact, I think the 3.4 release cycle as a whole has been fairly calm. Sure, I always wish for the -rc’s to calm down more quickly than they ever seem to do, but I think on the whole we didn’t have any big disruptive events, which is just how I like it. Let’s hope the 3.5 merge window is a calm one too. Linus Linux 3.3 merged Android drivers to mainline, added further improvements to btrfs and ext-4 file systems, several networking features and improvements (Open Vswitch, bufferbloat limitations…), …

Support CNX Software – Donate via PayPal or become a Patron on Patreon