I’ve just received Wanboard Dual development board together with an enclosure, and Wi-Fi antenna. This board is powered by Freescale i.MX6 Duallite Cortex A9 processor, and comes with 1GB RAM, HDMI output and Ethernet. There’s also a version based on Freescale i.MX6 Solo with 512 MB RAM. You can refer to my earlier post for more detailed specifications. I’ll start by showing some unboxing pictures of the board, and write a quick start guide (casing assembly, Ubuntu & Android boot, and development). I also planned to run some benchmarks and test videos, as according to a poll on Wandboard website many people want to use it as a media player, but I’ll do that a bit later since the current Android image is not up to the task yet. Wandboard Dual Unboxing The package I received contained 3 boxes: one for Wandboard Dual board, one for the enclosure, and one for […]
U-boot, Linux Kernel, and Android Patches for Freescale i.MX6 HDMI TV Dongles
We can now get some quad core Android mini PCs (e.g. Hi802, GK802) featuring Freescale i.MX6Q processor, Freescale has released full documentation and source code its development platforms, Hi802 / GK802 HDMI TV dongles are easily hackable, and there’s even an Ubuntu image for the devices. So it looks pretty good ,right? Well almost.. there are some patches and config for GK802 that have not been released by Richtechie, so we can’t modify the bootloader and Linux kernel. But this may change, as ARMTvTech forum user hste noticed some Freescale i.MX6 HDMI dongle patches om IMX Community website. Even though I’m not sure those are fully compatible with Hi802 / GK802, this could be a starting point. Today, I’ll provide the instructions to build u-boot, the linux kernel and Android ICS with those patches in a machine running Linux 12.04 64-bit. Patch Sets Descriptions There are two set of patches that […]
Raspberry Pi Now Has Experimental Support for VP6, VP8, MJPEG and Ogg Theora Video Codecs
The guys working on the Raspberry Pi (mainly dom) have added preliminary support for VP6, VP8, MJPEG, and Ogg Theora free video codecs, as well as Ogg Vorbis audio codec. Unlike H.264, MPEG-2 and VC1, those are not handled by the hardware video decoder in Broadcom BCM2835 processor, but are accelerated by the Videocore GPU. This means that only SD (and possibly 720p) videos are supported for those codecs. The best way to get support is probably to patiently wait for the Raspberry Pi foundation to release a new Raspbian image, but in case you couldn’t possibly wait, here are the steps to follow: Download and run Hexxeh’s rpi-update script in the Raspberry Pi in order to get the very latest build:
1 2 3 |
wget https://github.com/Hexxeh/rpi-update/raw/master/rpi-update chmod 755 rpi-update sudo ./rpi-update |
Add the following two lines to /boot/config.txt:
1 2 |
start_file=start_x.elf fixup_file=fixup_x.elf |
Reboot the Raspberry Pi The GPU firmware is now updated, but you still need the latest version of omxplayer. […]
FFSB and IOzone: File System Benchmarking Tools, Features and Internals – ELCE 2012
Keshava Munegowda and Sourav Poddar, software engineers at Texas Instruments, give a presentation about 2 relatively new file system benchmarks: The Flexible Filesystem Benchmark (FFSB ) and IOzone at the Embedded Linux Conference Europe 2012. Abstract: The IOzone is widely used File System Bench-marking tool in both linux and windows systems. The Flexible Filesystem Benchmark (FFSB) is a new cross-platform file-system performance measurement tool. It uses custom profiles as input to measure multiple file systems read/write performances. This paper identifies and compares these file system benchmarking tools in terms of the optimal usage techniques such as buffer size, number of threads, number of write blocks etc. Internals and features of these tools , and the necessary steps involved in the porting of benchmarking tools to different platforms are also discussed. The depicted file system benchmarking performance numbers, in this paper, are measured in both x86 PCs and ARM based SOC […]
AMLogic Releases U-Boot and Updated Linux Kernel Source Code
AMLogic released kernel 3.0.8 source code for AML8726-MX a few months ago, and yesterday they provided an updated tarballs with the kernel, and for the first time, AFAIK, released the source code for U-Boot. There are 4 new files apparently generated from the (internal) git repository in AMLogic: common-2012-11-20-git-b687495906.tar.gz (108M) – This is the same kernel 3.0.8 release has last time, but with updated code. m1-kernel-android-2012-11-20-git-5d0f6b8e93.tar.gz (103M) – This looks like an older kernel 2.6 for AML8726-M1 only. uboot-master-2012-11-20-git-9b50e9a295.tar.gz (16M) – U-Boot 2010.06 possibly to use with the older 2.6 kernel. Only for M1 & M3 platforms. uboot-next-2012-11-20-git-b0e532795a.tar.gz (40M) – U-Boot 2011.03 for use with M3 and M6 platforms. I’ve already explained how to build the kernel in the previous post, so I’ll focus on U-Boot this time. Ubuntu 12.04 arm-linux-gnueabi- toolchain fails to build U-Boot (uboot-next), so you’ll have to install Sourcery toolchain instead: wget http://openlinux.amlogic.com/download/linux/ARM/gnutools/arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 tar xjvf arm-2010q1-188-arm-none-eabi-i686-pc-linux-gnu.tar.bz2 […]
Getting Started with 64-bit ARM Development: Hello World and Linux on ARMv8 Fast Models
At the end of last year, ARM announced ARMv8, the first ARM 64-bit ARM archtecture, and last week at ARM Techcon 2012, ARM announced the first ARMv8 cores: Cortex A53 and A57. But since there’s no silicon at the moment, what if you wanted to develop code running on ARMv8 before the hardware is available? The answer is: Fast Models, a Virtual Platform (VP) to accelerate software development. This is especially important for ARMv8 since hardware is not expected to be available for another year. In this post, I’ll first show how to run “Hello World!” in ARMv8 fast models, then we’ll run ARM Linux 64-Bit (Aarch64) in the virtual platform. ARMv8 Foundation Model In order allow the developer’s community to program for ARMv8 (Cortex A53/A57 cores), ARM has made ARMv8 Foundation Model, a virtual platform, available free of charge. This v8 Foundation model provides a basic ARMv8 platform environment […]
Rockchip RK3066/RK30xx Processors Documentation, Source Code and Tools
Rockchip RK3066 (part of RK30xx family) is a Chinese dual ARM Cortex A9 SoC targeting multimedia products such as tablets (e.g. Cube U30GT), mini PC (e.g UG802, MK808) and in theory set-top boxes, but I can’t find any products based on this Rockchip processor. It seems mini PCs/ HDMI TV sticks have taken over this market. RK3066 Processor The processor features two ARM Cortex A9 clocked at up to 1.6 Ghz with a quad core Mali-400MP GPU. It can support 1080p (3D) encoding/decoding, provides HDMI 1.4a, VGA, composite, component and LVDS video outputs (Dual display support), USB 2.0 Host and OTG ports, a MAC interface (Ethernet), and much more… Here are the key features of Rockchip RK3066 processor: Dual Core A9 + Quad Core Mali-400MP GPU 2 banks, 8/16 bit Nor flash / SRAM interface 8 banks, 8/16 bit async NAND flash, LBA NAND flash and 8-bit sync ONFI NAND […]
Building the Linux Kernel 3.0.8 For Telechips TCC8925 mini PCs (CX-01, Z900, TizzBird N1…)
Yesterday, we got Linux kernel 3.0.8 source code from Telechips, as well as some files related to Android 4.0 (Webkit + OMX). Today, I’ve had a look at the kernel source code and found a few very interesting things. First let’s get the code from github:
1 |
git clone git://github.com/cnxsoft/telechips-linux.git |
Good news! The code for the latest Telechips TCC892X is present in arch/arm/mach-tcc892x, and there is support for 3 types of boards: board-m805_892x – TCC8923 M805 board board-tcc8920 – TCC8920 evaluation board board-tcc8920st – TCC8920 STB evaluation board TCC8920 STB evaluation board appears to be relevant to products such as Diyomate A6, but if it’s also used for TCC8925 HDMI Dongle such as CX-01 mini PC, Zero Devices Z900 or ValuePlus TizzBird N1. Now let’s have a look at the default config directory for arm (arch/arm/configs):
1 2 3 4 5 6 7 8 |
ls | grep tcc89 tcc8920st_defconfig tcc8920st_hdb892s_defconfig tcc8925st_dongle_defconfig tcc8925st_donglehs_defconfig tcc8925st_hdb892f_defconfig tcc8925st_isdbt_module_defconfig tcc892x_defconfig |
Nice! tcc8925st_dongle_defconfig and tcc8925st_donglehs_defconfig look particularly interesting! A quick comparison shows that the only difference is […]