Amlogic GPL Source Code Release – Kernel 3.10, U-Boot, and Drivers (Wi-Fi, NAND, TVIN, Mali GPU)

Last month, I noticed Amlogic provided links to the Android SDK for S802 / M802 on their open source website, but the only way to get the source was to share your SSH public with Amlogic, so that they give you access. It did not happen, but the company has released the source for Linux 3.10.10, U-boot 2011.03, Realtek and Broadcom Wi-Fi drivers, NAND drivers, “TVIN”drivers, and kernel space GPU drivers for Mali-400 / 450 GPU. There are also some customer board files for Meson 6 only (AML8726-MX / M6) but they do not seem to match the kernel… If you want to build the kernel, including the drivers, you’ll need to download a bunch of files: wget http://openlinux.amlogic.com:8000/download/ARM/kernel/arm-src-kernel-2014-03-06-d5d0557b2b.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/wifi/rtk8192du-2014-03-06-7f70d95d29.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/wifi/rtk8192eu-2014-03-06-9766866350.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/wifi/rtk8192cu-2014-03-06-54bde7d73d.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/wifi/rtk8188eu-2014-03-06-2462231f02.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/wifi/brcmap6xxx-2014-03-06-302aca1a31.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/wifi/wifi-fw-2014-03-06-d3b2263640.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/modules/aml_tvin-2014-03-06-fb3ba6b1c8.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/modules/aml_nand-2014-03-06-39095c4296.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/customer/aml_customer-2014-03-06-76ce689191.tar.gz wget http://openlinux.amlogic.com:8000/download/ARM/gpu/gpu-2014-03-06-0425a1f681.tar.gz You’ll need to extract these tarballs in specific directories:

You […]

Linux Kernel Upstreaming How-To – Linaro Connect Asia 2014

I’ve already written a post about submitting kernel patches to mainline based on a 2011 presentation by Greg Kroah-Hartman, but Matt Porter, Broadcom Landing Team (LT) Technical Lead at Linaro, has given two updated talks entitled “Upstreaming 101” and “Upstreaming 201” at Linaro Connect Asia 2014. There are many planned talked during LCA 2014, and you can get the list as well as links to presentation and videos, as they become available on LCA 14 resources page. The first session “Upstream 101” starts with some definitions such as “upstreaming” (basically getting your code to  kernel.org), “mainline”, etc, explains how to get information about the (912) maintainers (tip: it’s in the MAINTAINERS file), how to deal with the 2-week merge windows occurring every 10 weeks or so, but the bulk of the talk detailing the work flow required to upstream code to the Linux kernel. There are basically 5 steps: Preparation – Read […]

dmesg gets Human Readable Output

Many Linux command line tools, such as ls or du, have a “human” option to make it more readable by… humans. When you want to get the kernel log, to find otu potential problems, you’d usually run dmesg, which dump the complete log in one go and looks like: [    0.000000] Initializing cgroup subsys cpuset [    0.000000] Initializing cgroup subsys cpu [    0.000000] Initializing cgroup subsys cpuacct [    0.000000] Linux version 3.11.0-15-generic (buildd@roseapple) (gcc version 4.8.1 (Ubuntu/Linaro 4.8.1-10ubuntu8) ) #25-Ubuntu SMP Thu Jan 30 17:22:01 UTC 2014 (Ubuntu 3.11.0-15.25-generic 3.11.10) [    0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.11.0-15-generic root=UUID=9c042788-fa75-4fc4-9b12-598c809410e8 ro quiet splash [    0.000000] KERNEL supported cpus: [    0.000000]   Intel GenuineIntel [    0.000000]   AMD AuthenticAMD [    0.000000]   Centaur CentaurHauls [    0.000000] e820: BIOS-provided physical RAM map: [    0.000000] BIOS-e820: [mem 0x0000000000000000-0x000000000009f7ff] usable [    0.000000] BIOS-e820: [mem 0x000000000009f800-0x000000000009ffff] reserved [    0.000000] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved [    0.000000] BIOS-e820: [mem 0x0000000000100000-0x00000000bfd9ffff] usable [    0.000000] BIOS-e820: […]

AllWinner Linux-sunxi Community Presentation and Status Report – FOSDEM 2014

Oliver Schinagl, a member of linux-sunxi community working on open source kernel and bootloader for AllWinner SoCs, has given a presentation of the community at FOSDEM 2014 to give an overview, and show what progress has been made to date. I’ll write a summary in this post, but if you want to watch the video and/or access the slides scroll down at the bottom of the post. After explaining what sunxi is, and introducing himself, he gave some information about AllWinner and their SoCs: Founded in 2007 in Zhuhai, Chiang now with 550 employees including 450+ engineers 15% market share in 2013 for tablet SoCs, only behind Apple. Products: F-series SoC (2010), A10 (2011), A13, A10s (2012), and A20 (2013). (cnsoft He skipped A31(s) and A80 here as they are not really supported by the community). They list “Open Source Source” and “GPLv3” in their marketing materials although they clearly […]

How to Convert Your HDTV into a Massive Touchscreen Enabled Android Tablet

Thanks to Android mini PCs, it’s now very easy and cheap to run Android on your HDTV, but most of the time touchscreen functionality is missing. There are already full products such as AIO Android PCs, and Smart Displays that brings Android to large display with touchscreen, and PQ Labs iStick A200 HDMI TV stick supports directly their overlay touch frames so you can “touchscreenize” your TV with their mini-PC and correct frame connected via USB. If you’d rather use another model of infrared touch frame for your TV and own Android device, Hardkernel has just explained how to do in the February edition of ODROID magazine using their ODROID-XU development board. In the magazine, they explain some details about the difference between capacitive and infrared touchscreens, and provide instructions to choose the right IR touch frame, how-to modify the software if necessary, and how to connect the touch frame to […]

Linaro 14.01 Release with Linux Kernel 3.13 and Android 4.4.2

The first release of the year, Linaro 14.01, is now out with Linux Kernel 3.13 (baseline), Linux Kernel 3.10.28 (LSK), Android 4.4.2, and Ubuntu Linaro 14.01. The most important part of this release is support for Arndale Octa, which makes big.LITTLE processing code available to a low cost platform. Android 4.4.x is now on par with Android 4.3 in terms of support. Linaro has also decided to provide quarterly stable released with GCC, and Linaro GCC 4.7-2014.01 is the first quarterly stable release with the next one planned with Linaro 14.04. Here are the highlights of this release: Linaro Stable Kernel (LSK) 3.10.28-2014.01 with latest version of GTS patch set for big.LITTLE, and Android support Linux Linaro 3.13-2014.01: gator version 5.17 updated linaro-android-3.13-merge topic by John Stultz, the “Revert “PM / Sleep: Require CAP_BLOCK_SUSPEND to use wake_lock/wake_unlock” patch included uprobes v4 updated big-LITTLE-pmu topic from ARM Landing Team (LT) updated […]

Getting Started with Raxda Rock – How to Generate and Flash Ubuntu Saucy Server and Desktop Images

I’ve already written a guide showing how to build and install Android in Radxa Rock. Today I’m going to build the Linux kernel, generate a Ubuntu server images based latest Ubuntu Linaro server release, flash the image to the NAND flash, and show how to install LXDE or XFCE desktop environment. If you are just interested in installing one of the latest supported images, you can download Android, dual boot (Android/Ubuntu), Ubuntu ALIP, and Router images for Radxa Rock @ http://dl.radxa.com/rock/images/, and skip “build” and “generate” instructions, and just follow the flashing instructions below. All steps in this tutorial will be done in Ubuntu 13.10, and lots of the instructions below follow hwswbits blog and Ubuntu Radxa Wiki. Build the Linux kernel Let’s start by building the Linux kernel. I’m assuming you’ve already install development tools in Ubuntu (e.g. apt-get install build-essentials). You can refer to the list at the beginning […]

Linux Kernel 3.13 Release

Linus Torvalds announced the release of Linux Kernel 3.13 yesterday: The release got delayed by a week due to travels, but I suspect that’s just as well. We had a few fixes come in, and while it wasn’t a lot, I think we’re better off for it. At least I hope so – I’ll be very disappointed if any of them cause more problems than they fix.. Anyway, the patch from rc8 is fairly small, with mainly some small arch updates (arm, mips, powerpc, s390, sparc, x86 all had some minor changes, some of them due to a networking fix for the bpf jit). And drivers (mainly gpu and networking). And some generic networking fixes. The appended shortlog gives more details. Anyway, with this, the merge window for 3.14 is obviously open. Kernel 3.12 brought new features to BTRFS and XFS file systems, PC’s GPU drivers improvements, better memory handling, […]