[Arm-netbook] Allwinner A10 Android Box (not tablet) and some experiment of run Ubuntu.

matt mattli.tw at gmail.com
Thu Feb 23 03:35:10 GMT 2012

Hi, all:

     Share my experiment of hack of A10 TV-Box device.
For someone also want use A10 as your need.
*Note: *
*1. It is only for reference not finish yet.*
*2. Maybe I lost sometime of step..:P*
*3. Thank's Rhombus Tech web site, it's give me a lot of information.*

I am looking forward with HTPC tvbox hardware device.
For run linux and XBMC, A10 device is cheaper but must of A10 device is
Finally, I found a MELE A1000 android tv-box that it is A10 device.

Buy from taobao in the china and the price is RMB$469.

The box SPEC.
1. Video output - HDMI, CVBS, VGA .
2. Audio output - R+L, SPDIF
3. 3 usb host port + SDCard slot.
4. External SATA port (real SATA not from usb)
5. Ethernet.
6. ...

Internal board has
1. UART port connector.
2. USB device port connector
3. MIC pin
4. CVBS-IN pin.
Inside picture :

The A1000's sys_config1.fex

Below steps are my test for boot A10 tvbox to Ubuntu desktop.
But it only see the welcome screen, couldn't login...:(

You need another hardware to connect internal connector.
1. connect to internal UART port. (for see the console)
2. connect to internal USB device port. (for use adb)
Pin define see the inside picture.

Change the u-boot in the device.
to support boot from MMC
1. build the u-boot that support boot from MMC.

*git clone http://git.hands.com/u-boot.git*
*cd u-boot*
*git checkout lichee-dev*
*vi include/configs/suni4.h*
search mmc config
a. #if 0 => #if 1  (enable u-boot support mmc)
b. change #define CONFIG_MMC_SUNXI_SLOT 0

*make sun4i CROSS_COMPILE=arm-none-linux-gnueabi-*
got the u-boot.bin  (my build of

2. ref the http://elinux.org/Hack_A10_devices
    use adb push the new u-boot.bin to tv-box.

Build linux kernel and use SATA HDD as rootfs.
ref the http://rhombus-tech.net/allwinner_a10/kernel_compile/
The change of kernel config.
1. Change "Default kernel command string" to see the kernel boot log.
    This is workaround method, I don't know why kernel could not use the
u-boot env.

*CONFIG_CMDLINE="console=ttyS0,115200 root=/dev/sda1 rw rootfstype=ext4
init=/init loglevel=8 rootwait mac_addr=00:CE:39:*

2. Disable initrd.
3. got the kernel image and copy it to SD Card partition 1 (FAT 16
    (my build of

Build ubuntu 10.04 rootfs
Thank's rootstock. It has easy way to get the prebuild arm version of
*sudo rootstock \*
*        --fqdn ubuntu \*
*        --login ubuntu \*
*        --password ubuntu \*
*        --imagesize 3G \*
*        --seed ubuntu-desktop,openssh-server \*
* --serial ttyS0*
* --dist lucid*

got armel-rootfs-xxxxxxx.tgz.
1. extract it to SATA HDD partition 1 that is format as ext4 filesystem.
2. copy A10 display kernel module to rootfs
    *disp.ko, lcd.ko, hdmi.ko  *copy to *lib/module/xxxx/*
3. vi etc/init.d/rcS  to add insmod of diplay kernel module.
*   (cd $MODULES_DIR;insmod disp.ko;insmod lcd.ko;insmod hdmi.ko)*

Boot up
1. plug SATA HDD to SATA port.
2. plug the SDCard that has kernel image.
3. UART connect to board press any key when power on the device.
    you will see the u-boot command.
4. Type below command to load kernel image from SD Card.
    *mmcinfo; fatload mmc 0 50000000 uImage_git_root_sda1 ;bootm 50000000*
5. You will see kernel boot message from UART and use SATA HDD as rootfs.

Another rootfs -- minimal ubuntu 10.04
sudo rootstock --fqdn ubuntu --login ubuntu --password ubuntu --imagesize
2G --dist lucid --serial ttyS0 --seed  ubuntu-minimal,vim,openssh,apt

boot log of console

-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.phcomp.co.uk/pipermail/arm-netbook/attachments/20120223/9470a172/attachment.html 

More information about the arm-netbook mailing list