Skip to content

texierp/meta-atmel

 
 

Repository files navigation

This layer provides support for Microchip microprocessors (aka AT91)
====================================================================

For more information about the Microchip MPU product line see:
http://www.microchip.com/design-centers/32-bit-mpus
Linux & Open Source on Microchip microprocessors:
http://www.linux4sam.org


Supported SoCs / MACHINE names
==============================
Note that most of the machine names below, have a SD Card variant that can be
built by adding an "-sd" suffix to the machine name.
- SAMA5D2 product family / sama5d2-xplained, sama5d2-xplained-emmc, sama5d27-som1-ek-sd, sama5d2-ptc-ek, sama5d2-icp, sama5d27-wlsom1-ek-sd
- SAMA5D4 product family / sama5d4ek, sama5d4-xplained
- SAMA5D3 product family / sama5d3xek, sama5d3-xplained
- AT91SAM9x5 product family (AT91SAM9G15, AT91SAM9G25, AT91SAM9X25, AT91SAM9G35 and AT91SAM9X35) / at91sam9x5ek
- AT91SAM9RL / at91sam9rlek
- AT91SAM9G45 / at91sam9m10g45ek
- SAM9X60 / sam9x60ek


Sources
=======
- meta-atmel
URI: git://github.com/linux4sam/meta-atmel.git
URI: https://github.com/linux4sam/meta-atmel.git
Branch: zeus


Dependencies
============
This Layer depends on :
- poky
URI: git://git.yoctoproject.org/poky
Branch: zeus
Tag: 94f6b31befda5c496f65e863a6f8152b42d7ebf0

- meta-openembedded
URI: git://git.openembedded.org/meta-openembedded
URI: http://cgit.openembedded.org/meta-openembedded/
Branch: zeus
Tag: aad5b3d070cd8c58828b0975cf861d8ebc90f460

Optionally:
- meta-qt5
URI: git://code.qt.io/yocto/meta-qt5.git
URI: http://code.qt.io/cgit/yocto/meta-qt5.git/
Branch: upstream/zeus (5.13)
Tag: 432ad2aa6c3a13253fefc909faba368851d21fb1

Build procedure
===============

0/ Create a directory
mkdir my_dir
cd my_dir

1/ Clone yocto/poky git repository with the proper branch ready
git clone git://git.yoctoproject.org/poky -b zeus

2/ Clone meta-openembedded git repository with the proper branch ready
git clone git://git.openembedded.org/meta-openembedded -b zeus

3/ Clone meta-qt5 git repository with the proper branch ready
git clone git://code.qt.io/yocto/meta-qt5.git
cd meta-qt5
git checkout upstream/zeus
cd ..

4/ Clone meta-atmel layer with the proper branch ready
git clone git://github.com/linux4sam/meta-atmel.git -b zeus

5/ Enter the poky directory to configure the build system and start the build process
cd poky

6/ Initialize build directory
source oe-init-build-env build-microchip

7/ Add meta-atmel layer to bblayer configuration file
vim conf/bblayers.conf

# POKY_BBLAYERS_CONF_VERSION is increased each time build/conf/bblayers.conf
# changes incompatibly
POKY_BBLAYERS_CONF_VERSION = "2"

BBPATH = "${TOPDIR}"
BBFILES ?= ""

BSPDIR := "${@os.path.abspath(os.path.dirname(d.getVar('FILE', True)) + '/../../..')}"

BBLAYERS ?= " \
  ${BSPDIR}/poky/meta \
  ${BSPDIR}/poky/meta-poky \
  ${BSPDIR}/poky/meta-yocto-bsp \
  ${BSPDIR}/meta-atmel \
  ${BSPDIR}/meta-openembedded/meta-oe \
  ${BSPDIR}/meta-openembedded/meta-networking \
  ${BSPDIR}/meta-openembedded/meta-python \
  ${BSPDIR}/meta-openembedded/meta-multimedia \
  ${BSPDIR}/meta-qt5 \
  "

BBLAYERS_NON_REMOVABLE ?= " \
  ${BSPDIR}/poky/meta \
  ${BSPDIR}/poky/meta-poky \
  "

8/ Edit local.conf to specify the machine, location of source archived, package type (rpm, deb or ipk)
Pick one MACHINE name from the "Supported SoCs / MACHINE names" chapter above
and edit the "local.conf" file. Here is an example:

vim conf/local.conf
[...]
MACHINE ??= "sama5d2-xplained"
[...]
DL_DIR ?= "your_download_directory_path"
[...]
PACKAGE_CLASSES ?= "package_ipk"
[...]
USER_CLASSES ?= "buildstats image-mklibs"

To get better performance, use the "poky-atmel" distribution by also adding that
line:
DISTRO = "poky-atmel"

9/ Build core minimal image
bitbake core-image-minimal

10/ We found that additional local.conf changes are needed for our QT demo
image. You can add these two lines at the end of the file:
vim conf/local.conf
[...]
LICENSE_FLAGS_WHITELIST += "commercial"
SYSVINIT_ENABLED_GETTYS = ""

11/ Build images
bitbake microchip-headless-image


Typical bitbake output
======================
Build Configuration:
BB_VERSION           = "1.44.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "universal"
TARGET_SYS           = "arm-poky-linux-gnueabi"
MACHINE              = "sam9x60ek-sd"
DISTRO               = "poky-atmel"
DISTRO_VERSION       = "3.0"
TUNE_FEATURES        = "arm armv5 thumb dsp"
TARGET_FPU           = "soft"
meta                 
meta-poky            
meta-yocto-bsp       = "zeus:94f6b31befda5c496f65e863a6f8152b42d7ebf0"
meta-atmel           = "zeus:a7fcc7117fe22d7a7398ec9e422e3feabe40d0fb"
meta-oe              
meta-networking      
meta-python          
meta-multimedia      = "zeus:aad5b3d070cd8c58828b0975cf861d8ebc90f460"
meta-qt5             = "upstream/zeus:432ad2aa6c3a13253fefc909faba368851d21fb1"

Contributing
============
To contribute to this layer you should submit the patches for review to:
the github pull-request facility directly or the forum. Anyway, don't forget to
Cc the maintainers.

AT91 Forum:
http://www.at91.com/discussions/

for some useful guidelines to be followed when submitting patches:
http://www.openembedded.org/wiki/How_to_submit_a_patch_to_OpenEmbedded

Maintainers:
Nicolas Ferre <nicolas.ferre@microchip.com>
Patrice Vilchez <patrice.vilchez@microchip.com>

When creating patches insert the [meta-atmel] tag in the subject, for example
use something like:
git format-patch -s --subject-prefix='meta-atmel][PATCH' <origin>

Known issues
============
This branch is under development and not fully tested. Some features may not work.

QTWebEngine build fails with error:
"khronos development headers appear to be missing (mesa/libegl1-mesa-dev)
QtWebEngine will not be built."

About

OpenEmbedded/Yocto Project layer for for Atmel SoCs

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • BitBake 60.1%
  • PHP 11.8%
  • Tcl 11.3%
  • Shell 8.8%
  • C++ 4.8%
  • BlitzBasic 3.2%