Home > AllWinner A1X, Linux, Software management > Nightly Builds for AllWinner A10 U-boot, Linux Kernel and Hardware Packs

Nightly Builds for AllWinner A10 U-boot, Linux Kernel and Hardware Packs

Kent of SCUZ Technologies has graciously provided a build machine (Intel Xeon E5645) for Rhombus Tech (and possibly other) open source projects, and I’ve setup nightly build scripts for AllWinner A10 kernel, bootloader (u-boot) and hardware packs for Mele A1000 (HDMI), Mele A1000 (VGA), A10 mini PCs (using MK802 script.bin) as well as a server build for Mele A1000.

The nightlies are built using  a10-hwpack-bld.sh script which is available in github, and can be downloaded from http://dl.linux-sunxi.org/nightly/

The resulting files are copied to a dropbox folder, until a better solution is found.

For each build, you’ll find the following files :

  • u-boot.bin – U-boot
  • sun4i-spl.bin – U-boot SPL
  • uImage – Kernel image
  • product_YYYY.MM.DD.log (e.g. mele-a1000_2012.07.20.log) – The build logs whether the build succeeds of fails. One per hardware pack.
  • product_hwpack_YYY.MM.DD.log ( e.g. mele-a1000_hwpack_2012.07.20.7z) – The hardware pack with the kernel, u-boot which can be used with a1x-media-create.sh script to create an SD card image or make a bootable SD card.

There are currently 4 hardware packs available:

  • mele-a1000_hwpack_YYYY.MM.DD.7z – For Mele A1000/A2000 with HDMI output
  • mele-a1000-vga_hwpack_YYYY.MM.DD.7z – For Mele A1000/A2000 with VGA and Composite output (Hopefully, we’ll eventually find a way to have just one image for HDMI, VGA and composite)
  • mk802_hwpack_YYYY.MM.DD.7z – For A10 mini PCs such as MK802, AK802, Zero Devices Z802, Uhost, Oval Elephant… (The kernel crashes at boot time for now – See issue 46)
  • mele-a1000-server_hwpack_YYYY.MM.DD.7z – For Mele A1000/A2000. This image located in the “server” directory does not support video output, but provides 512 MB RAM for Linux.

If you already have an SD card with your own rootfs and files installed, and do not want to delete those files, but still want to update u-boot, the kernel and the kernel modules, you can run the following command:

./a1x-media-create.sh /dev/sdX mele-a1000_hwpack_YYYY.MM.DD.7z norootfs

If you want to create a bootable SD card,  get a rootfs of your choice (see bottom of that post) and run the command like:

./a1x-media-create.sh /dev/sdb mele-a1000_hwpack_YYYY.MM.DD.7z linaro-precise-ubuntu-desktop-20120524-177.tar.gz

There are two goals to build those nightlies. First, make sure the source code can build, and second provide binaries to people who want to test the latest kernel, but do not have the time to build their own. If this needs improvements, comments are welcome.

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

  1. misko
    July 20th, 2012 at 18:22 | #1

    nice, thx

  2. misko
    July 20th, 2012 at 18:24 | #2

    Just one question
    Do you know if armhf packages are build with NEON support ?

  3. July 20th, 2012 at 21:25 | #3

    @ misko
    There are no packages in those images, this would be in the rootfs. If you are using Ubuntu / Linaro rootfs, then NEON will be detected at runtime for specific libs.

  4. Lacroser
    July 20th, 2012 at 23:24 | #4

    What about OpenGL drivers?

  5. July 21st, 2012 at 10:02 | #5

    @ Lacroser
    I’ve got the armel OpenGL ES libs inside, but I’ll update it to armhf soon, since those are now available.
    The Mali drivers that are part of the kernel are included, but the other drivers for X11 support are not.

    Btw, I’ve never seen anything using OpenGL ES working in Linux for Allwinner A10 devices yet.

  6. geinux
    July 21st, 2012 at 13:29 | #6

    how I can enable the ethernet port? lubuntu 12.04

    • July 21st, 2012 at 13:32 | #7

      This is distribution specific, but with lubuntu, I suppose you can just modify /etc/network/interfaces.

  7. Eric
    July 21st, 2012 at 14:42 | #8

    Dear sir,

    I am interesting in MELE A1000. Does anyone know how to get source code?


  8. July 21st, 2012 at 16:51 | #9

    @ Eric
    Kernel source – https://github.com/amery/linux-allwinner
    u-boot source – https://github.com/hno/uboot-allwinner

    If you want to build it, there are instructions on Internet, or just use a10-hwpack-bld.sh script available on https://github.com/cnxsoft/a10-tools

    If you want to build Android try that: http://linux-sunxi.org/Starting_a_CyanogenMod_device_tree

    And some more details about development documentation – http://www.cnx-software.com/2011/12/28/allwinner-a10a1x-processor-resources-development-board-and-sdk/

  9. Steven Vo
    September 13th, 2012 at 13:56 | #10

    I tried mele-a1000-server but it couldn’t support SATA. May I know what I was doing wrong?

  10. September 13th, 2012 at 14:52 | #11

    @Steven Vo
    I think SATA does not work for all kind of hard drives with Linux. It’s not specific to this distro, there appears to be a pb in the kernel.

  11. Homam Dabis
    September 14th, 2012 at 16:03 | #12

    I would like to be able to upgrade each of the components (system, kernel and u-boot) individually from within linux. I can do that for the first 2 components using dd. I would like to do the same for the bootloader. Can someone tell me which image I need to dd. I tried u-boot.bin but that was unsuccessful.

  12. äxl
    October 4th, 2012 at 16:31 | #13

    To get another u-boot on SD card you need u-boot.bin and sun4i-spl.bin (or sunxi-spl.bin). First delete the old u-boot environment:
    dd if=/dev/zero of=/dev/sdX bs=1024 seek=544 count=128
    Install the SPL loader to the 8th block of the SD:
    dd if=sun4i-spl.bin of=/dev/sdX bs=1024 seek=8
    Install u-boot to block 32 of the SD:
    dd if=u-boot.bin of=/dev/sdX bs=1024 seek=32

  13. me here
    October 26th, 2012 at 21:58 | #14

    it seems last nightly that was completely build is this one:

    probably a bug!?

  14. October 26th, 2012 at 22:06 | #15

    @me here
    There must be a slightly newer one (around 15 Oct). I know there is now a problem with compiling U-boot with armhf compiler (since I receive automatic emails about the build failure everyday). I haven’t had time to really look into it, but I should have time next week.

  15. October 29th, 2012 at 21:16 | #16

    @me here
    I’ve fixed it. But it now only supports Mele A1000 because u-boot has changed a lot.
    It builds, but I’m not sure if it boots.

    I may not maintain it for much longer, because there’s an effort by linux-sunxi to do something similar with more boards and distributions support. https://github.com/linux-sunxi/sunxi-bsp

  16. randy
    November 11th, 2012 at 03:45 | #17

    i need the firmware for this device •CVJI-E212 please assist where can i download the firmware

  17. November 11th, 2012 at 09:53 | #18

    You need to ask where you bought the device (Chinavasion?)

  18. Virnik
    February 6th, 2013 at 19:48 | #19

    Hello, I want to ask if this kernel support 1024MB RAM? I have downloaded nigly uImage and VGA hw pack, but before I flash it, I want to know if I’ll have 1024MB RAM or not. Latest kernel from Guillaume is tuned so I have almot whole RAM available. I have chineese laptop A10 Boxchip, clone of Allwinner A10. It’s product name is Softwiner EvbV13, it comes with 3x USB, A10 chip, and 1024MB RAM. it also do have webcam, keyboard and touchpad.

    I am actually running ubuntu 12.10 armhf image in NAND from Guillaume, so I suppose it’s enough to flash kernel and hwpack. Do this kernel have X11 support?

    With actual setup, I have something around ~960MB of RAM, and glxgears reports 30fps. I can play mp3 with ffmpeg codec, but I can’t videos make work.

    Thanks for any clues and reply you may provide.

  19. February 6th, 2013 at 19:55 | #20

    U-boot in those builds only support 512MB RAM, If I remember correctly Linux just take the memory value provided by U-boot.
    You may also check http://dl.linux-sunxi.org/amery/sunxi-3.0/latest/, or build your own.

  20. Virnik
    February 6th, 2013 at 21:07 | #21

    Thanks for answer, but I don’t need uBoot. I am still using original android uBoot, which was already flashed in my laptop. What i am interested in, is if this kernel’s cmdline have or don’t have mem parametter set. Guillaume’s latest kernel 3.0.42+ has this parametter modified to 1024MB, so I am able to use my whole RAM, as seen here:

    I want to use just uImage (kernel) and hw pack, specifically kernel modules. I don’t need anything else, especially not uBoot. I am running my Ubuntu desktop from NAND, and SD works as my /home and /usr (three standalone partitions, /home, /usr and swap).

    So my plan is to extract uImage and hwpack on the laptop, overwriting /boot/linux/uImage and /usr/lib/ content. Nothing more. It should work, I even to not need mele-a1000-vga.bin, because I am using default script.bin from android, which makes my LCD work fine.

    Correct me please, if I said something wrong.

  21. February 6th, 2013 at 22:05 | #22

    I can’t remember, you’d have to try.

  22. Virnik
    February 6th, 2013 at 22:48 | #23

    @cnxsoft Thanks. I will, but for security measures, I will have to buy new SD as a backup, to have something to restore from ;-) Local IT store is five minutes by car away, so I’ll do it today.

  23. sao
    February 6th, 2013 at 23:18 | #24

    Request for help from the Mele owners: Could you test if the mele can send different output to at least two of HDMI/VGA/RCA ports?

    My laptop has a VGA out and HDMI. Using xrandr I can make an extended desktop spanning over two screens, with the VGA out covering one and the HDMI covering the other. I would like to do the same, specifically

    * to display independent (mostly PDF) slides — static images
    * 800×600 resolution is fine (640×400 is probably too low)
    * I do not need to drag a window from one screen to another (xrandr allows that)

    Does mele support this? This is for school use and I need to provide evidence that it would work before I can get one for testing :( so your help is most appreciative. The best scenario for us is to use RCA+VGA — yes we’re still in the dark age.


  24. Virnik
    February 7th, 2013 at 00:38 | #25

    So I have tested both kernel and hwpack, and it works. Only thing which I am missing, is actually RAM. Can this kernel be customized, and built with support for 1024MB of RAM? I think that guillaume had to specify mem= parametter on kernel cmdline….

    In his build, mali kernel module can’t be loaded, it complains about bad address.

  25. February 7th, 2013 at 11:39 | #26

    I only tried mirroring in the Mele, and I could output to both VGA and RCA at the same time, but I’m not sure about independent displays. I think it can be set inside script.bin.
    But one guy managed to output to independent displays in the Cubieboard (HDMI and LVDS). https://plus.google.com/communities/110581875917252138216 So I’d assume this is feasible, but you’ve have to work a bit to achieve that.

    You can have a look at what I had done to get 512MB in a 512MB Mele here: http://www.cnx-software.com/2012/06/22/ubuntu-12-04-server-armhf-image-for-mele-a1000a2000/

  26. Virnik
    February 7th, 2013 at 13:49 | #27

    Thanks for the link, but your image is headless. I am using this chipset in laptop, so headles is nothing I want. And my chipset does have 1GB RAM, so it is useless to have only 350MB of RAM for me. That is why I have asked.

  27. February 7th, 2013 at 14:03 | #28

    I mentioned this post because I explain how I got access to the full memory on the Mele.

  28. Virnik
    February 8th, 2013 at 04:56 | #29

    @cnxsoft Well, it is possible that I’ve described that problem in different thread, not this one…so…I am using original android u-boot, and that version does not support param file. If you need to specify parametters for the kernel, you have to have this record compiled in the binary. And that is what I’ve asked for.

    Haven’t had need to reflesh uBoot too.

  29. pamplina
    February 15th, 2013 at 05:54 | #30

    I got the latest build (3.0.62+ kernel) from this nightly server, and installed it with the norootfs option. All was OK and works fine, but I found that the /lib/modules/3.0.62+/build directory is an orphan symlink to /home/buildbot/allwinner/build/
    2013.02.14/server/bld_a10_hwpack_2013.02.14/linux-sunxi. I don’t know how to recover it.

  30. February 15th, 2013 at 10:10 | #31

    We can delete the build directory. It’s just there for the build, and my script did not delete it when making the image.

  31. pamplina
    February 15th, 2013 at 14:43 | #32

    But I need the build directory to compile a driver that asks for it.

  32. February 15th, 2013 at 14:53 | #33

    I see. Those build files should not really be in the image. You’d have to cross-build the kernel to be able to build the driver.
    You may want to have a look at http://www.cnx-software.com/2012/09/11/building-kernel-modules-for-allwinner-a10-devices-android/
    The instructions are for Android, but for Linux the process is the same, it’s just the config that differs.

  33. pamplina
    February 15th, 2013 at 19:59 | #34

    I will try the cross-compiling, although I don’t understand why I can’t build the driver on the target system, being a complete Ubuntu Server release.
    The driver comes with an automated script to configure, build and install the driver, but now it seems that I have to do the hard work manually.
    Many thanks for your answer. This site is fantastic!

  34. Gopi
    May 10th, 2013 at 19:47 | #35

    how to compile android source and kernel for the mele a2000.

    i had compiled one but it was unsuccessful and got stuck at the zygote process. i followed the following steps:

    $./build.sh -p sun4i_crane -k 3.0

    $source build/envsetup.sh

    i chose crane-evb-v13

    $make -j8

    can anyone help me out with this…i am terribly need to build a working image please help.

  35. DesertF0x
    June 25th, 2013 at 13:39 | #37

    Have the nightly builds been stopped?

  36. June 25th, 2013 at 13:48 | #38

    Actually not, and I’m supposed to receive an email with the build status everyday (and it worked according to the email), but this obviously did not work as the last successful build was 2 month ago. Maybe I’ll have a look soon. But you’d better check image created with linux-sunxi.org BSP instead.

  1. July 27th, 2012 at 04:14 | #1
  2. August 2nd, 2012 at 00:57 | #2
  3. November 12th, 2012 at 21:21 | #3
  4. December 17th, 2012 at 10:38 | #4