Archos G9 GPL Source Code

Archos has released the GPL source code for the Archos G9 Tablets on their Gitorious account. This is obviously the same source code for Archos 80 G9 and Archos 101 G9. There are two git repositories for the G9: archos-gpl-gen9 – Archos generation 9 GPL release archos-gpl-gen9-kernel – Archos generation 9 GPL linux kernel 2.6 release The GPL “userspace” source code is divided into 4 directories: buildroot – Buildroot to generate a cross-compilation toolchain, a root filesystem, a kernel image and a bootloader image. hardware – Direcotory containing hardware related source: WL1283 “Wlan” Driver (WiLink 7.0 single-chip WLAN, GPS, Bluetooth and FM solution) packages: libf2m – Library to convert flash videos (FLV) to AVI, MOV or MP4 libmms – Library for streaming video/audio with mmst / mmsh protocols external- Utilities and libraries (Bold indicates external sw not released/used with Archos G8 Source Code) alsa-lib – Audio library alsa-utils – Audio […]

How to Develop and Port Android to a New Hardware Platform with Linaro

Zach Pfeffer, Linaro Android Working Group tech lead, gives an introduction to making Android work on a new hardware platform at Linaro Connect Q3.11 in Cambridge, August 2011. He starts by giving details about Android, its implementation, and how source code is managed. He then gives details about how to add support for a new board, taking advantage of Linaro scripts and infrastructure, already supporting community boards from several ARM SoC vendors. Here are the main topics covered during this 48 minutes presentation: General Android Overview (at 5:00 in the video) and different Android “components”: The Linux kernel Non-upstreamed kernel extensions A set of shared and static libraries A set of Hardware Abstraction Layers (HALs) A JIT capable VM Android activity framework Android applications Repo, Gerrit and Git (25:50) Porting to a new Platform (35:07) HALs and Hardware Acceleration (39:00) Continuous Integration (41:02) Linaro Evaluation Build (LEB) Integration (45:06) Slides […]

Setting Up a Git Server on Ubuntu

Git is a version control system used by many projects such as Linaro, the Linux kernel, Android, Eclipse, Qt and more. For projects that can not afford their own servers and still need to collaborate, hosted git is available from github and as today there are a total of 2,769,642 repositories (private and public) hosted on github. For software developed internally, you can start to setup you own Git server by following some simple steps (in Ubuntu). Installing the Git Server Update Ubuntu and install git-core: sudo apt-get update sudo apt-get install git-core That’s it. Installing Gitolite Gitolite allows you to setup git hosting on a central server, with fine-grained access control and many more powerful features. First get gitolite with git: git clone git://github.com/sitaramc/gitolite.git Obtain a public key based access to your server, so that you can log in from your workstation to the server without getting a password […]

Free Linux Tutorials by the Linux Foundation

Yet another software development tutorial resource this week… The Linux Foundation regularly offers paid tutorials about Linux either online or onsite, but they also have free Linux training videos on their website. There are now 7 free tutorials namely: How to Work with the Linux Community by LWN.net editor and kernel developer Jon Corbet (28:43) . Introduction to Embedded Linux by author Jerry Cooperstein (26:28). Linux Administration 101: Introduction to Vim by author Joe “Zonker” Brockmeier (Length unknown, video not working at the time). Introduction to Git by kernel developer James Bottomley (29:57). Introduction to Btrfs by kernel developer Chris Mason (26:48). Linux Virtualization Using KVM by kernel developer Christoph Hellwig (23:58). Six Tips For Getting Started With Open Source Compliance by Philip Koltun (16:22). I’ve been looking for the presentation slides of these tutorials, but they do not seem to be publicly available. They may also add more free Linux tutorials in the […]

Install Git for Windows XP, Windows 7

I’ve used TortoiseCVS and TortoiseSVN under Windows XP. However, nowadays many project are using Git instead. Luckily, there is also TortoiseGIT for that matter. You’ll need to install 2 components: TortoiseGit – Port of TortoiseSVN to TortoiseGIT MSysGit – Git for Windows MSysGit already has a graphical interface, so you would also be able to clone repositories, commit change, etc.. with MSysGit alone. The only reason to install TortoiseGit is if you are used to TortoiseCVS/TortoiseSVN and want to keep the same look and feel. I use the following version for installation on Windows XP: TortoiseGit 1.7.2.0 32-bit Git 1.7.4 First, I installed TortoiseGit with the default parameters (TortoisePlink SSH Client) . Finally, I installed Git by deselecting unnecessary components as shown below. We do not need Quick Launch or Desktop icons as we’ll use TortoiseGit instead. I’ve also disabled Windows Explorer Integration or you’d have two Git options in […]

How to Write and Submit a Linux Kernel Patch

Greg Kroah-Hartman has a very good tutorial about writing and submitting a patch to the Linux kernel. The video is over 1 year old but this is still relevant. The materials for this tutorial are available via git: git clone git://github.com/gregkh/kernel-tutorial.git Alternatively, you can also download a copy of the presentation slides. The actual presentation is divided into 6 parts: git basics (git branch, git clone…) Kernel coding style (Details can be found in Documentation/CodingStyle) Fixing a file (with scripts/checkpatch.pl scripts) Generating a patch (with git -diff) Email the patch (with scripts/get_maintainer.pl and git send-email) Q&A If you want to skip the git basics and kernel coding style parts (although I don’t recommend it), fast forward to 13:33. All patches by in the linux kernel are checked by at least 2 persons. Before submitting a patch, you’ll have to make sure of the following (Checklist): Kernel builds with patch applied […]

EmbeddedTS embedded systems design