OpenEmbedded

From linux-sunxi.org
Jump to: navigation, search

First you need to get angstrom setup scripts, it’s a couple of scripts which are usefull to fetch git repositories of openembedded, angstrom and others usefull meta layers.

 mkdir a1000 && cd a1000
 git clone git://github.com/Angstrom-distribution/setup-scripts.git

Then you need to get the meta layer for the allwinner processor. This layer contains recipes for the bootload (u-boot) and the kernel. We will not use u-boot and kernel in the final image, but it’s better to have them for the future.

 mkdir -p setup-scripts/sources && cd setup-scripts/sources
 git clone git://github.com/ebutera/meta-allwinner
 cd ..

We have to add the allwinner meta layer in the list of meta layers in use, so edit the file conf/bblayers.conf abd add ${TOPDIR}/sources/meta-allwinner to the BSPLAYERS variable.

it should looks like this :

 BSPLAYERS ?= " \
   ${TOPDIR}/sources/meta-ti \
   ${TOPDIR}/sources/meta-efikamx \
   ${TOPDIR}/sources/meta-nslu2 \
   ${TOPDIR}/sources/meta-smartphone/meta-htc \
   ${TOPDIR}/sources/meta-smartphone/meta-nokia \
   ${TOPDIR}/sources/meta-smartphone/meta-openmoko \
   ${TOPDIR}/sources/meta-smartphone/meta-palm \
   ${TOPDIR}/sources/meta-handheld \
   ${TOPDIR}/sources/meta-raspberrypi \
   ${TOPDIR}/sources/meta-intel \
   ${TOPDIR}/sources/meta-intel/meta-sugarbay \
   ${TOPDIR}/sources/meta-intel/meta-crownbay \
   ${TOPDIR}/sources/meta-intel/meta-emenlow \
   ${TOPDIR}/sources/meta-intel/meta-fishriver \
   ${TOPDIR}/sources/meta-intel/meta-fri2 \
   ${TOPDIR}/sources/meta-intel/meta-jasperforest \
   ${TOPDIR}/sources/meta-intel/meta-n450 \
   ${TOPDIR}/sources/meta-allwinner \
 "

Now it’stime to use angstrom script to retrieve all oe sources. In the top directory launch

 ./oebb.sh config allwinner-a10

it will create the file ~/.oe/environment-angstromv2012.05 wich contains environnement variables needed to correctly build an openembedded image. It will also fetch all the recipes for angstrom and openembedded and will define allwinner-a10 as the default machine. Every time you want to build a pacakge or an image for the mele, you juste have to source the file ~/.oe/environment-angstromv2012.05 and launch bitbake something.

Once it’s done, we can build our first angstrom image :

 bitbake efl-nodm-image

After a long time depending on your machine, (i launched it before sleeping, and get the result back in the morning) you should find a directory build/tmp-angstrom_2010_x-eglibc/deploy/images/allwinner-a10 containing Angstrom-efl-nodm-image-eglibc-ipk-v2012.05-allwinner-a10.rootfs.tar.bz2.

Now we will use the method described here : http://www.cnx-software.com/2012/06/13/hardware-packs-for-allwinner-a10-devices-and-easier-method-to-create-a-bootable-ubuntu-12-04-sd-card/ to run our image.

Im’ using the vga output so i do : (be carful on the /dev/sdX you are using !)

 wget http://dl.linux-sunxi.org/nightly/2012.09.18/mele-a1000-vga_hwpack_2012.09.18.7z
 ./a1x-media-create.sh /dev/sdb mele-a1000-vga_hwpack_2012.09.18.7z Angstrom-efl-nodm-image-eglibc-ipk-v2012.05-allwinner-a10.rootfs.tar.bz2

You can now try to start up with sdcard. Once image has started, you should get a ssh terminal with this command : ssh root@allwinner-a10.local (password is empty). Xorg is not working out of the box, you need to create the file /etc/modules-load.d/screen.conf on the sdcard and this content :

 disp
 lcd
 hdmi
 8192cu

reboot the machine, Xorg should be launche at startup now !

Bonus,

if you like to create a toolchain dedicated to the mele a1000, you can use this command :

 bitbake meta-toolchain

Once finished you will find in build/tmp-angstrom_2010_x-eglibc/deploy/ a tar.gz containing all the stuff need to build applications for the mele a1000, like u-boot, kernel.

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox