Cross-Compiling Mesa 3D Graphics Library for ARM

Mesa is an open-source implementation of the OpenGL specification that can be used for software emulation or  complete hardware acceleration for modern GPUs.The Mesa library is used by a variety of games (e.g. Quake 2.3), libraries (e.g PyOpenGL), science and technical applications and utilities (e.g. xscreensaver). MesaLib requires X11 libraries. I’ll assume those are already cross-compiled here. For this build, I used pre-built X11 libraries found in ALIP (ARM Internet Platform) binaries. I used the method described here and copied the libs in /lib and /usr/lib and header files in /lib/include found in the qemu overo image respectively to /home/jaufranc/edeve/beagleboard/libs/lib and /home/jaufranc/edeve/beagleboard/libs/include. make sure you use the “-d” with cp to avoid copying the symlinks or some symbolic links would point to x86 binaries or files that do not exist. Here are the instructions to cross-compile MesaLib 7.11 for ARM using arm-linux-guneabi-gcc: Download the latest version of Mesa source code: […]

How to Transfer files between the Host and Qemu via SSH and NFS

Last week, I wrote a blog post explaining how to copy files to a qemu image by mounting the qemu image in the host. This is only useful if emulated platform does not support networking. If networking is enabled, using SSH (Secure Shell) or NFS (Network File System) is more convenient. Using SSH with Qemu To initiate the SSH connection from qemu, there is actually nothing extra to do as long as you have sshd installed and running on the host. If it is not installed simply run  sudo apt-get install openssh-shell on the host. This will install and automatically sshd. To initiate the SSH connection from the host, you’ll have to redirect the ssh port to an unknown port and start qemu as follow (for overo):

Please refer to Beagleboard Emulator in Ubuntu with Qemu for the detailed instructions on how to setup qemu to emulate beagleboard or […]

Khadas Edge2 Arm mini PC

Samsung Unveils New Dual-core Exynos 4212 Processor

Samsung unveiled its new Exynos processor this week at Samsung Mobile Solution Forum 2011 in Taipei, Taiwan. The Exynos 4212 is a dual core ARM Cortex A9 processor clocked up to 1.5 GHz and “will improve processing power by 25 per cent and enhance a device’s 3D abilities by a massive 50 per cent” according to Samsung. The processor will also consume 30 percent less power than its predecessor (Exynos 4210) thanks to Samsung new 32nm HKMG process. Finally the company said that the Exynos 4212 will incorporate a rich portfolio of advanced codec accelerators that support digital still images, video recording and play-back at 1080p full-HD resolution, an image signal processor and an on-chip HDMI 1.4 interface. Samsung’s Exynos 4212 processor will sample to select customers in Q4 2011. Samsung also announced a website dedicated to Exynos processors. This website has a lot of information on Exynos 3110 and […]

How to Transfer files between Host and Qemu

I previously posted instructions to install and run nano and ARM Linux Internet Platform (ALIP) distribution images for Overo and Beagleboard on QEMU, If the image support networking, you could use ssh (install dropbear server in qemu) or nfs to transfer files between the host computer and qemu, or even run your program from the NFS share. This should be possible to do that on the Overo emulator since it support Ethernet. However, although I can access Internet, I cannot access the host via ssh as the host is in a private subnetwork (192.168.0.0) and qemu in another (10.0.2.0). We would probably have to enable bridge networking for that but the tun driver is apparently not compiled in ALIP kernel. I’ll look into that later on. [Update: Finally, we don’t need tun/tap to make this work, please read http://www.cnx-software.com/2011/10/02/how-to-transfer-files-between-host-and-qemu-via-ssh-and-nfs/ for details.] Today, I’ll just show how to mount a Qemu […]

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 […]

99 USD OMAP3 Based Overo Computer On Module by Gumstix

Gumstix has manufactured its Overo COMS based on OMAP3503 and OMAP3530 since 2008. They have now announced a new low cost version named Overa Sand that sells for 115 USD per unit or less than 99 USD per unit for orders of  1,000 units or more. Overo Sand COM is Gumstix’s most basic computer-on-module with 256MB RAM and no on-board NAND. Here are the board specifications and features: Processor: Texas Instruments OMAP 3503 Applications Processor: – ARM Cortex-A8 CPU @ 600 Mhz Memory: 256MB RAM NO On-Board NAND Included Features: microSD card slot TPS65950 Power Management Expandability: via one 140-pin expansion board of Gumstix Overo series or custom, 140-pin expansion board via 27-pin camera board Connections: – (2) 70-pin connectors with 140 signals for: – I2C, PWM lines (6), A/D (6), 1-wire – UART, SPI, Extra MMC lines – Headset, Microphone – Backup battery – High Speed USB Host and […]

Intel Arc Graphics Technology

Emulate Gumstix Overo COM with Qemu and Linaro Nano Image

Overa COMs are low cost computer-on-modules (COM) built around OMAP3503 and OMAP3530 depending on the model. Such device can be purchased on gumstix website. However if you just want to try a program on the board, you could use QEMU to emulate the Overo board as follows: Download pre-built image. (nano is a minimal linux ditribution without UI): wget http://releases.linaro.org/images/linaro-n/nano/11.07/overo-nano.img.gz gunzip overo-nano.img.gz Install the qemu tools: sudo add-apt-repository ppa:linaro-maintainers/tools sudo apt-get update sudo apt-get install qemu-user-static qemu-system Run the image: qemu-system-arm -M overo -clock unix -serial stdio -device usb-kbd -drive file=/tmp/overo-nano.img,if=sd,cache=writeback You can also watch the installation in the video below:   Source: https://wiki.linaro.org/Resources/HowTo/Qemu-5  

Texas Instruments AM387X Sitara ARM Cortex A8 Microprocessors

Texas Instruments (TI) has introduced three new AM387x ARM Cortex-A8 microprocessors (MPUs): AM3871, AM3872 and AM3874. TI says these MPUs offer integration of the ARM Cortex-A8 core, peripherals for high-bandwidth connectivity (SATA, D-CAN, PCI Express (PCIe), Gigabit Ethernet switch and more), 3D graphics for enhanced GUIs and display subsystems for camera connectivity and viewing. The AM387x ARM Cortex-A8 MPU can connect to and control IP and CAN networks, HD displays, keyboard, mouse, PC, SD card and various general purpose peripherals, all via one highly integrated processor in an industrial automation application controlling a production line and a high-speed, shared data bus allows for reduced communication overhead and quick access to shared data, which results in reduced chip count, discrete memory costs and printed circuit board (PCB) space compared to separate solutions. Those MPUs are targeted at a variety of fanless applications such as: single board computing, network and communications processing, […]

Khadas VIM4 SBC