Archive

Posts Tagged ‘hackberry’

Fedora 19 ARM Remix R1 Release With Support for AllWinner A10, A10s, A13 and A20 SoCs

July 22nd, 2013 12 comments

Fedora_18_AllWinner_A1XAfter releasing a stable version of Fedora 18 for AllWinner A10 and A13 in February, Hans de Goede, working at Red Hat and a Fedora contributor, has recently announced “Fedora 19 ARM remix for Allwinner SOCs” on linux-sunxi community mailing list. This released based on Fedora 19 for ARM together with linux-sunxi kernel and u-boot, adds support for A10s and A20 based devices, and 38 boards and devices are now supported.

To give it a try, download the 665MB image:

wget http://scotland.proximity.on.ca/contrib-images/hansg/Fedora-19-a10-armhfp-r1.img.xz

then write it to an SD card (8GB or greater):

xzcat Fedora-19-a10-armhfp-r1.img.xz > /dev/[device]
sync

Where you have to replace [device] with your actual SD card device, e.g. sdc.Since u-boot is board/product specific, you’ll also have to update u-boot for your hardware. Remove the SD card, re-insert it, and run:<

sh <uboot-part-mount>/select-board.sh

to display a graphical menu (if dialog is installed on your Linux PC), or a list supported boards and products:

Available boards:
a10_mid_1gb         A10 tablet sold under various names (whitelabel)
a13_mid             A13 tablet sold under various names (whitelabel)
a10s-olinuxino-m    A10s-OLinuXino-MICRO (Olimex)
a13-olinuxino       A13-OLinuXino (Olimex)
a13-olinuxinom      A13-OLinuXino-MICRO (Olimex)
a20-olinuxino_micro A20-OLinuXino-MICRO (Olimex)
auxtek-t003         Auxtek T003 hdmi tv stick
auxtek-t004         Auxtek T004 hdmi tv stick
ba10_tv_box         BA10 TV Box
coby_mid7042        Coby MID7042 tablet
coby_mid8042        Coby MID8042 tablet
coby_mid9742        Coby MID9742 tablet
cubieboard_512      Cubieboard development board 512 MB RAM
cubieboard          Cubieboard development board 1024 MB RAM
cubieboard2         Cubieboard 2 (A20) development board
dns_m82             DNS AirTab M82 tablet
EOMA68-A10          EOMA68 A10 CPU card
gooseberry_a721     Gooseberry development board
h6                  H6 netbook
hackberry           Hackberry development board
hyundai_a7hd        Hyundai a7hd tablet
inet97f-ii          iNet-97F Rev.2 (and clones) tablet
mele_a1000          Mele a1000/a2000 512 MB RAM
mele_a1000g         Mele a1000g/a2000g 1024 MB RAM
mele_a3700          Mele a3700 (a1000g without sata)
mini-x              Mini-X 512 MB RAM
mini-x-1gb          Mini-X 1024 MB RAM
mk802               mk802 (with female mini hdmi) 512 MB RAM
mk802-1gb           mk802 (with female mini hdmi) 1024 MB RAM
mk802_a10s          mk802 with A10s (s with a circle around it on the barcode label
mk802ii             mk802ii (with male normal hdmi) 1024 MB RAM
pcduino             pcDuino development board
pov_protab2_ips9    Point of View ProTab 2 IPS 9" tablet
pov_protab2_ips_3g  Point of View ProTab 2 IPS tablet with 3g
r7-tv-dongle        r7 hdmi tv stick
uhost_u1a           UHost U1A hdmi tv stick
wobo-i5             Wobo i5 TV Box
xzpad700            XZPAD700 7" tablet

Select you board in the graphical menu, or by running the command with your board, e.g.:

sudo sh <uboot-part-mount>/select-board.sh cubieboard2

Finally umount the uboot and rootfs partitions:

umount /run/media/hans/uboot
umount /run/media/hans/rootfs

The SD card is now ready. Insert it in your A1X/A20 device, connect the device to an HDMI or DVI monitor, and power it up to complete the installation. It will first resize the root partition to make full use of your SD card storage space, reboot automatically, and enter the first boot setup, where you’ll be able to configure networking, the timezone, create a root password, and create a normal user, before accessing Fedora 19.

As with Fedora 18, there’s no support for 2D (G2D engine), 3D (Mali 400 GPU), nor video decoding acceleration (CedarX VPU). AllWinner A20 support as been tested with Cubieboard2 development board, and the following are known to work:

  • UARTs, I2C controllers
  • MMC controllers
  • EHCI and OHCI USB controllers (USB controllers 1 and 2, but controller 0 is an OTG controller and is not supported yet).
  • Video Output – HDMI, VGA, LCD, Composite Out
  • AXP PMIC including CPU voltage scaling
  • RTC
  • SOUND – Analog in/out, HDMI audio, S/PDIF out (SPDIF ported, but not tested)
  • Ethernet controller (emac)
  • SATA controller

You can also build the Fedora image yourself by using the scripts available at https://github.com/jwrdegoede/sunxi-fedora-scripts.git.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

Final Release of Fedora 18 for AllWinner A10 & A13 Powered Devices

February 21st, 2013 16 comments

Fedora_18_AllWinner_A1XA few months ago, Hans de Goede, currently working at Red Hat and a Fedora contributor, started to show up on linux-sunxi mailing list, and sent a lot of kernel patches for linux-sunxi kernel. Last week-end, he  announced “Fedora 18 Final for Allwinner A10 and A13 based devices” on linux-sunxi community mailing list.

To install it, first download the image:

wget http://scotland.proximity.on.ca/contrib-images/hansg/Fedora-18-a10-armhfp-r1.img.xz

And write it to an SD card (all data will be wiped out):

xzcat Fedora-18-a10-armhfp-r1.img.xz > /dev/mmcblk0

You may have to replace “/dev/mmcblk0″ by your own SD card device, e.g. “/dev/sdc”.

AllWinner based devices can share the same kernel, but u-boot is board/products specific, so you’ll have to install u-boot for your board. First remove the SD card, re-insert it in order to automatically mount the FAT partition, and run:

sh <uboot-part-mount>/select-board.sh

This will show the list of supported boards and products. Then run the command again for your device. For example:

sudo sh <uboot-part-mount>/select-board.sh mk802

Finally umount the uboot and rootfs partitions. Your Fedora 18 distribution is now ready.

Insert the SD card in your device, connect your device to an HDMI monitor (except for tablets/netbooks), and power it up. It will reboot once as it will automatically resize the rootfs partition to fully utilize your SD card), and it will enter a first boot menu where you’ll be able to create users, and setup Wi-Fi.

Fedora 18 for AllWinner A1X supports most peripherals, but there’s currently no support for Mali 400 GPU, the VPU, and G2D 2D engine.

Fedora 18 should work with the following boards and products:

This version of Fedora 18 is optimized for AllWinner A1x SoCs. So even though you could always install the stock Fedora 18 armhf on your device, this version should perform better, as it does not run all services started in the stock version, and there’s no plymouth, nor initrd.

You can also rebuild the image yourself by using sunxi-fedora-scripts.

More details are available in the README.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

XBMC for Linux on AllWinner A10 Devices? It Works! (Sort of)

November 12th, 2012 6 comments

Following the lack of support by AllWinner for the video engine libraries (CedarX), I had more or less given up on hope XBMC for Linux would ever run properly on AllWinner A10/A13 hardware. But recently, I found out some progress had been made using existing libs, and saw the Pengpod Tablet video showing XBMC running in Linux fairly smoothly.

So I decided to cross-compile XBMC by following the instructions available at http://linux-sunxi.org/XBMC and trying to run it in Linaro ALIP 12.04 rootfs in my Mele A1000. Finally, I managed to cross-compile XBMC, but the performance was very poor in the GUI (6 to 12 fps) and I was unable to play videos and my serial console was flooded with messages like:

[DISP] not supported image0 pixel sequence:216 in img_sw_para_to_reg

[Update: I managed to have XBMC Linux running & playing videos on Mele A1000 by using j1nx image (rootfs + kernel). I would first exhibit the exact same issue I had, but those where fixed:

1. To solve the video playback issue I had to modify script.bin as follows:

fb0_pixel_sequence = 1
fb0_scaler_mode_enable = 0

2. I add to modify XRES/YRES (1024×768) in S99xbmcinit in order to start the UI when outputting to VGA with this image or EGL would failed to initialize.

XBMC (alpha) is currently optimized for 720p (1280×720) resolution, so although I get up to 12 fps using VGA output with 1024×768 resolution, the UI is rendered at over 40 fps when the Mele outputs to HDMI @ 720p.

Source: http://www.j1nx.nl/buildroot-xbmc-on-mele-a1000-allwinner-a10/#comment-1244]

But Jasbir managed to get XBMC armhf running the the Hackberry using an Ubuntu 12.10 armhf image by “Guillaume” and natively compiling XBMC in the Hackberry board. Alternatively, if you’ve got an armel rootfs, you could try xbmca10.deb by Neal Peacock (the person behing the Pengpod Linux tablets).

In this post, I’ll still describe the steps I followed to build and run XBMC in Linaro ALIP rootfs (and hopefully I’ll eventually find the reason behind the performance issue),  ans show Jasbir results with XBMC armhf on the Hackberry.

XBMC ARMHF Build Instructions

Since we want to run XBMC armhf, we’ll first need a Linux image with an armhf rootfs. I’ll use Lianro ALIP 12.10 rootfs, following the hardware packs instructions. Insert an SD card in the build machine, and make it bootable:

wget https://raw.github.com/cnxsoft/a10-tools/master/a1x-media-create.sh
wget http://dl.linux-sunxi.org/nightly/2012.11.06/mele-a1000-vga_hwpack_2012.11.06.7z
wget http://releases.linaro.org/12.10/ubuntu/precise-images/alip/linaro-precise-alip-20121021-453.tar.gz
sudo ./a1x-media-create.sh /dev/sdb mele-a1000-vga_hwpack_2012.11.06.7z linaro-precise-alip-20121021-453.tar.gz

Now remove the SD card from the build machine, and insert it in the Mele A100 (or another A10 device) to install dependencies to build XBMC:

sudo apt-get build-dep xbmc
sudo apt-get install swig default-jre cmake libgtk2.0-bin libssh-dev
sudo apt-get remove libegl1-mesa libegl1-mesa-dev libegl1-mesa-drivers libgles2-mesa libgles2-mesa-dev
sync

Now back to the build machine. Checkout XBMC source code:

mkdir xbmc-linux
cd xbmc-linux
git clone git://github.com/empatzero/xbmca10.git

and extract the image from the SD card and mount the rootfs:

sudo dd if=/dev/sdb2 of=rootfs_xbmc.img
mkdir rootfs
sudo mount -o loop rootfs_xbmc.img rootfs

Create symlinks to the mounted libraries (requires full path):

sudo ln -s /home/jaufranc/edev/mele_a1000/xbmc-linux/rootfs/lib/arm-linux-gnueabihf /lib/arm-linux-gnueabihf
sudo ln -s /home/jaufranc/edev/mele_a1000/xbmc-linux/rootfs/usr/lib/arm-linux-gnueabihf /usr/lib/arm-linux-gnueabihf
sudo ln -s /home/jaufranc/edev/mele_a1000/xbmc-linux/rootfs/usr/include/arm-linux-gnueabihf /usr/include/arm-linux-gnueabihf

Enable hard-float in in xbmca10/tools/a10/depends/depends.mk:

USEARMHF=1

and Update the following keys around line 50 in the same file:

#where is your arm rootfs
SDKSTAGE=/home/jaufranc/edev/mele_a1000/xbmc-linux/rootfs
#where is your xbmc install root
XBMCPREFIX=/allwinner/xbmc-pvr-bin$(HF)
#where is your toolchain
TOOLCHAIN=/usr/arm-linux-gnueabi$(HF)

Install some tools required to build XBMC, and create a symlink for the ARM g++ compiler:

sudo apt-get install cmake shtool swig autoconf autotools-dev automake libtool default-jre gawk gperf zip g++-arm-linux-gnueabihf autopoint
sudo ln -s /usr/bin/arm-linux-gnueabihf-g++-4.6 /usr/bin/arm-linux-gnueabihf-g++

Create the tarballs directory in the user’s root directory as well as XBMC install directory:

mkdir ~/tarballs
sudo mkdir -p /allwinner/xbmc-pvr-binhf
sudo chown [user].[user] /allwinner/xbmc-pvr-binhf -R

Replace [user] with your username.

You can now cross-compile XBMC for ARM:

cd xbmca10/tools/a10/depends
make
make -C xbmc
cd ../../..
make install

This will take a little while, and once the build completes, copy XBMC binaries to your SD card:

cp -r /allwinner/xbmc-pvr-binhf /allwinner/xbmc-pvr-binhf

All good! Time to give XBMC a try. Insert the SD card in your A10 device, change some permissions, and run XBMC:

chmod 666 /dev/mali /dev/ump /dev/cedar_dev /dev/disp
chmod -R 666 /dev/input/*
chmod -R 666 /dev/snd/*
export A10HWR=1
cd /allwinner/xbmc-pvr-binhf/lib/xbmc
./xbmc.bin

After a few seconds, you should now be able to access XBMC user interface. In case you have issues, you can have a look at the log in ~/.xbmc/temp/xbmc.log.

XBMC A10 ARMHF Build on the HackBerry

First of all, this is a development version, so you should not expect a perfect user experience. There should be bugs, crashes, missing features and performance might not be optimal yet.

If you want to have a quick look, watch Jasbir video of XBMC armhf on the HackBerry board.

I did try to use Jasbir image on the Mele A1000 (After updating U-Boot and U-Boot SPL) to evaluate the current status of XBMC on A10, but I could only see XBMC boot logo before the system reboot, as XBMC actually terminates, after apparently thinking I pressed some key….

At the current stage of development, XBMC for Linux appears to work pretty well on AllWinner A10 devices, but there is still more work to do before users can enjoy it on their devices.

If you want to give it a try on your hardware, check out Hackberry A10 – XBMC blog post.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

HackBerry AllWinner A10 Board is Now Available for $60

August 3rd, 2012 5 comments

The Hackberry “development board” is now available for sale on Miniand. This board powered by AllWinner A10 processor comes in 2 versions:

  • 512 MB RAM version – Available now for $60
  • 1GB RAM version – Available by the end of the month for $65.

Both boards features a 4GB Flash, a SDHC slot, 2x USB 2.0 port, 10/100 Ethernet, Wi-Fi, HDMI & composite outputs,  headphone & microphone ports and a IR sensor.

The good thing is that serial interface and FEL connectors will be soldered on the board for easy debugging and recovery.

The FEL recovery port allows to reflash the board using Livesuit. As a side note, Henrik, a developer involved in Allwinner A10 software development, has done some work to reverse engineer FEL USB protocol, wrote a small program to enter into Livesuit mode with an SD card (Go to the bottom of the page section “Forcing FEL boot mode without bsp/recovery/usbboot button” for details) and the fel utility, a “script interface for talking to the FEL USB handler built into the CPU”. I haven’t really checked this into details, but the way I understand it, it will eventually be possible to access the serial console via FEL using a USB gadget driver.

As I mentioned in my previous post, I hoped the 1GB version to be sold for $60 or lower, but it’s finally sold for $65, which is still OK, but $18 (DHL) shipping makes the 512 MB version cost $78, so I still prefer the Mele A1000 which is also hackable, has more features, and can be found for around $83 including shipping via China Post. It would become more interesting if Miniand had a low cost shipping option as well, as it would decrease the cost and the likelihood of paying custom duties in some countries. (btw, I’ve just learned there is a ~100% custom duty on imports > $50 in Brazil. This is insane!)

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter

HackBerry: AllWinner A10 Development Board with 1GB RAM

July 17th, 2012 16 comments

After the Raspberry Pi, the Gooseberry, here comes the HackBerry. This is another AllWinner board similar to the Gooseberry, but which Ethernet, a full sized USB ports, an IR sensor and 1GB RAM.

AllWinner A10 Development Board with 1 GB RAM

Hackberry

Here are the board specifications :

  • SoC – AllWinner A10
  • System Memory – 1 GB RAM
  • Storage – 4GB Flash + SDHC slot
  • USB – 2x USB 2.0 ports
  • Connectivity:
    • 10/100Mbit Ethernet
    • Wifi – 802.11 b/g/n
  • Video Output – 1 x HDMI + 1x Composite
  • Audio I/O – Headphone + microphone
  • IR sensor

The board runs Android 4.0, but since it’s an AllWinner device, you can run what you want. In a way it’s similar to the Mele A1000, except it has more memory, but lacks SATA, VGA output and has one less USB port. I can’t see the serial port pins on the PCB picture either.

There is pricing information or availability yet, as Jasbir only ordered 2 for now, and is looking to see if there are some persons interested by this board. I think it could be a very interesting board, if it can sell less than $60.

You can find more information on Jasbir blog.

Digg This
Reddit This
Stumble Now!
Buzz This
Vote on DZone
Share on Facebook
Bookmark this on Delicious
Kick It on DotNetKicks.com
Share on LinkedIn
Bookmark this on Technorati
Post on Twitter