summaryrefslogtreecommitdiffstats
path: root/guppy_6.90.0.xml
blob: 0f1aa03f9d07b0b904a6eee9a645423729b2ee1f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<?xml version="1.0" encoding="UTF-8"?>
<manifest>

  <remote name="agl"
         fetch="https://gerrit.automotivelinux.org/gerrit/"
         review="https://gerrit.automotivelinux.org/gerrit/"
         pushurl="ssh://gerrit.automotivelinux.org:29418"
  />

  <remote name="yocto" fetch="git://git.yoctoproject.org/" />
  <remote name="openembedded" fetch="git://git.openembedded.org/" />

  <!-- meta-updater --> <!-- freescale bsp --> <!-- 01.org -->
  <remote name="github" fetch="https://github.com/" />

  <!-- meta-qt5  -->
  <remote name="qt.io" fetch="git://code.qt.io/" />

  <default remote="agl" sync-j="4" revision="refs/tags/guppy/6.90.0"/>

  <!-- AGL things. -->
  <project name="AGL/meta-agl" path="meta-agl" />
  <project name="AGL/meta-agl-demo" path="meta-agl-demo" />
  <project name="AGL/meta-agl-devel" path="meta-agl-devel" />
  <project name="AGL/meta-agl-extra" path="meta-agl-extra" />

  <!-- Renesas Gen3 specific things -->
  <project name="AGL/meta-renesas-rcar-gen3" path="meta-renesas-rcar-gen3"/>
  <project name="CogentEmbedded/meta-rcar" path="meta-rcar" remote="github" revision="de24bb576c135c6617827d977382611d894ffb70" upstream="v3.9.0"/>

  <!-- Updater layers. -->
  <project name="advancedtelematic/meta-updater" path="meta-updater" remote="github" revision="ff555e8690eb47177ade42dc6912ae17a759cc45" upstream="rocko"/>
  <project name="advancedtelematic/meta-updater-qemux86-64" path="meta-updater-qemux86-64" remote="github" revision="697632ddd98ed7ae3dbd0bd84abb04079767bc56" upstream="rocko"/>

  <!-- Yocto/OpenEmbedded things. -->
  <project name="poky" path="poky" remote="yocto" revision="05711ba18587aaaf4a9c465a1dd4537f27ceda93" upstream="rocko" />
  <project name="meta-gplv2" path="meta-gplv2" remote="yocto" revision="f875c60ecd6f30793b80a431a2423c4b98e51548" upstream="rocko" />
  <project name="meta-openembedded" path="meta-openembedded" remote="openembedded" revision="eae996301d9c097bcbeb8046f08041dc82bb62f8" upstream="rocko" />
  <project name="meta-virtualization" path="meta-virtualization" remote="yocto" revision="bd77388f31929f38e7d4cc9c711f0f83f563007e" upstream="rocko"/>

  <!-- Qt things -->
  <!-- Qt 5.8 -->
  <project name="meta-qt5/meta-qt5" path="meta-qt5" remote="github" revision="682ad61c071a9710e9f9d8a32ab1b5f3c14953d1" upstream="rocko"/>

  <!-- MinnowBoard MAX specific things -->
  <project name="meta-intel" path="meta-intel" remote="yocto" revision="718bb384942675437c081f6795da7f421da1fee6" upstream="rocko"/>

  <!-- i.MX6 / e.g. wandboard specific things -->
  <!--
  <project name="Freescale/meta-freescale" path="meta-freescale" remote="github" revision="06178400afbd641a6709473fd21d893dcd3cfbfa" upstream="pyro"/>
  <project name="Freescale/meta-freescale-3rdparty" path="meta-freescale-3rdparty" remote="github" revision="35badbde05d4f10d4faeefc30bc126b5bd228e2e" upstream="pyro"/>
  <project name="Freescale/meta-freescale-distro" path="meta-freescale-distro" remote="github" revision="cd5c7a2539f40004f74126e9fdf08254fd9a6390" upstream="pyro"/>
  -->
  <!-- consolidate on meta-freescale from git.yoctoproject.org -->
  <project name="meta-freescale" path="meta-freescale" remote="yocto" revision="a4158e3425a79720ddc4c02e76251d567bdceb51" upstream="rocko"/>

  <!-- Boundary devices bsp layer -->
  <project name="boundarydevices/meta-boundary" path="meta-boundary" remote="github" revision="f96f41b2e5beda2b51acb702d082568898b36a68" upstream="rocko"/>

  <!-- ti vayu / jacinto 6 / DRA7 -->
  <project name="meta-ti" path="meta-ti" remote="yocto" revision="ed83a43c6a76875ee5f0388b3b60a28f2a373a10" upstream="rocko"/>

  <!-- iotivity -->
  <project name="meta-oic" path="meta-oic" remote="yocto" revision="6e831e4bcdfa6ab8c26eb4fca4bdc98faf028818" upstream="1.2.1"/>

  <!-- rpi 2, 3 and 3 B+ -->
  <project name="meta-raspberrypi" path="meta-raspberrypi" remote="yocto" revision="8e4c537d84fdde8e3b4642d0dda2c0f4af76d52f" upstream="rocko"/>

  <!-- DragonBoard 410c specific things -->
  <project name="meta-qcom" path="meta-qcom" remote="yocto" revision="68d67447ec83de4784203afa016c49538165532d" upstream="rocko"/>

  <!-- Altera SOCFPGA platform --> <!-- pinned to version from master until branch for morty exists -->
  <!-- https://github.com/kraj/meta-altera -->
  <project name="kraj/meta-altera" path="meta-altera" remote="github" revision="2fdcab3bf66f771bea9a3877bddb825195d56e0f" upstream="rocko"/>

  <!-- Image Security Analysis FrameWork (isafw) -->
  <!-- try master or disable -->
  <project name="01org/meta-security-isafw" path="meta-security-isafw" remote="github" revision="489abdc65cefb566d696c8b218aa0b9b99a350ae" upstream="master"/>

  <!-- Security layer -->
  <project name="meta-security" path="meta-security" remote="yocto" revision="8f6969a775fa6afbf553e72ba83e71197780b2d8" upstream="master"/>

  <!-- SmartDeviceLink layer -->
  <project name="phongt/meta-sdl" path="meta-sdl" remote="github" revision="60c9fe8a4a9c6ca95f222685f8d6248f16236f2a" upstream="release/4.4.0"/>
</manifest>
extensions, select target machine: > $ source meta-agl/scripts/aglsetup.sh -h > $ source meta-agl/scripts/aglsetup.sh -m porter agl-demo [agl-appfw-smack] [agl-devel] [agl-netboot] 4. Build agl-demo-platform > $ bitbake agl-demo-platform Note: this uses more layers and not only meta-agl AGL Layers and dependencies: ---------------------------- Check the README.md of the respective layers: - meta-agl (= core, no UI) - meta-agl-demo (= reference UI) - meta-agl-extra (= extra components) In addition, the reference hardware (Renesas R-Car Gen2 / porter) has this dependency: URI: https://gerrit.automotivelinux.org/gerrit/AGL/meta-renesas > branch: agl-1.0-bsp-1.8.0 > tested revision: 82611ccadef36ab0b8a6fd6fb1cf055e115f1ef5 Supported Machines ------------------ Reference hardware: * QEMU (x86-64) - emulated machine: qemux86-64 * Renesas R-Car Gen2 (R-Car M2) - machine: porter Community contributed hardware: * See: https://wiki.automotivelinux.org/agl-distro#supported_hardware Supported Target of bitbake --------------------------- meta-agl: * `agl-image-ivi` The baseline image of AGL Distributions (console only) * `agl-image-minimal` For internal use to develop distribution (experimental) * `agl-image-weston` For internal use to develop distribution (experimental) meta-agl-demo: * `agl-demo-platform` The demo/reference image (with graphical UI) Run this command for a full list of machines, features and targets: > $ source ./meta-agl/scripts/aglsetup.sh -h Supposed Directory Tree of Layers to build ------------------------------------------- > $ repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo > $ repo sync > $ tree -L 1 . |-- meta-agl |-- meta-agl-demo |-- meta-agl-devel |-- meta-agl-extra |-- meta-amb |-- meta-fsl-arm |-- meta-fsl-arm-extra |-- meta-intel |-- meta-intel-iot-security |-- meta-openembedded |-- meta-qcom |-- meta-qt5 |-- meta-raspberrypi |-- meta-renesas |-- meta-rust |-- meta-security-isafw |-- meta-ti `-- poky 18 directories, 0 files Build a QEMU image ------------------ You can build a QEMU image using the following steps: (latest version here: https://wiki.automotivelinux.org/agl-distro/source-code) To build an image from 'meta-agl' 1. Prepare repo: > $ mkdir ~/bin > $ export PATH=~/bin:$PATH > $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo > $ chmod a+x ~/bin/repo 2. Get all layers: > $ repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo > $ repo sync 3. Check available targets and extensions, select target machine: > $ source meta-agl/scripts/aglsetup.sh -h > $ source meta-agl/scripts/aglsetup.sh -m qemux86-64 Alternatively, to enable the reference UI feature ('agl-demo'): > $ source meta-agl/scripts/aglsetup.sh -m qemux86-64 agl-demo Alternatively, to also enable also the security framework ('agl-appfw-smack'): > $ source meta-agl/scripts/aglsetup.sh -m qemux86-64 agl-demo agl agl-appfw-smack Alternatively, to also enable debugging tools ('agl-devel') and the network-boot (nbd) capabilities ('agl-netboot'): > $ source meta-agl/scripts/aglsetup.sh -m qemux86-64 agl-demo agl agl-appfw-smack agl-devel agl-netboot 4. Build agl-image-ivi > $ bitbake agl-image-ivi or alternatively, if you enabled the 'agl-demo' feature: > $ bitbake agl-demo-platform - If you want to run QEMU directly as VM in Virtual Box or your other favorite VM software then add this line to your "conf/local.conf" file. > IMAGE_FSTYPES += "vmdk" 5. Run in the emulator > $ runqemu agl-image-ivi qemux86-64 > or > $ runqemu agl-demo-platform qemux86-64 For a large screen: > $ runqemu agl-image-ivi qemux86-64 bootparams="uvesafb.mode_option=1280x720-32" To extend the amount of memory, add to runqemu: qemuparams="-m 512" > $ runqemu agl-image-ivi qemux86-64 qemuparame="-m 512" bootparams="uvesafb.mode_option=1280x720-32" To separate console from VGA screen (to avoid corrupt screen while booting), add to runqemu: serial > $ runqemu agl-image-ivi qemux86-64 bootparams="uvesafb.mode_option=1280x720-32" serial **Or use the virtual disk in Virtual Box from this location:** > tmp/deploy/images/qemux86-64/agl-demo-platform-qemux86-64.vmdk 6. Some weston samples are available from weston terminal (click top left icon). Check the folder `/opt/AGL/ALS2016`. Build a R-Car M2 (porter) image ------------------------------- ### Software setup NOTE: You will need to download the matching binary driver package from renesas. As of this writing, the version from 20151228. The main URL to retrieve these is: - https://www.renesas.com/en-eu/solutions/automotive/rcar-demoboard.html As of this writing, the necessary libary and driver packages linked to by above site are: - The subpage for the library is: - https://www.renesas.com/en-eu/software/D3017410.html (registration/login required) - The sub-page for the driver is: - https://www.renesas.com/en-eu/media/secret/solutions/automotive/rcar-demoboard/R-Car_Series_Evaluation_Software_Package_of_Linux_Drivers-20151228.zip !!! The files need to be in `${HOME}/Downloads` ( `$XDG_DOWNLOAD_DIR` ) !!! #### Getting Source Code and Build image (latest version here: https://wiki.automotivelinux.org/agl-distro/source-code) To build an image from 'meta-agl' only: 1. Prepare repo: > $ mkdir ~/bin > $ export PATH=~/bin:$PATH > $ curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo > $ chmod a+x ~/bin/repo 2. Get all layers: > $ repo init -u https://gerrit.automotivelinux.org/gerrit/AGL/AGL-repo > $ repo sync 3. Check available targets and extensions, select target machine: > $ source meta-agl/scripts/aglsetup.sh -h > $ source meta-agl/scripts/aglsetup.sh -m porter Alternatively, to enable the reference UI: > $ source meta-agl/scripts/aglsetup.sh -m porter agl-demo Alternatively, to also enable also the security framework: > $ source meta-agl/scripts/aglsetup.sh -m porter agl-demo agl agl-appfw-smack Alternatively, to also enable debugging tools and the network-boot (nbd) capabilities: > $ source meta-agl/scripts/aglsetup.sh -m porter agl-demo agl agl-appfw-smack agl-devel agl-netboot 4. (optional) edit conf/local.conf )* see below > $ vi conf/local.conf 5. Build agl-image-ivi > $ bitbake agl-image-ivi or alternatively, if you enabled the 'agl-demo' feature: > $ bitbake agl-demo-platform )* : 4 . Optional edits to conf/local.conf * If you want to use multimedia accelerations, uncomment manually 4 `IMAGE_INSTALL_append_porter` in conf/local.conf. > #IMAGE_INSTALL_append_porter = " \ > # gstreamer1.0-plugins-bad-waylandsink \ > # " > #IMAGE_INSTALL_append_porter = " \ > # gstreamer1.0-plugins-base-videorate \ > ... > #" > #IMAGE_INSTALL_append_porter = " \ > # libegl libegl-dev libgbm-dev \ > ... > # " > #IMAGE_INSTALL_append_porter = " \ > # packagegroup-rcar-gen2-multimedia \ > ... > # " * Also it is needed to uncomment this: > #MACHINE_FEATURES_append = " multimedia" This `multimedia` MACHINE_FEATURES enables the meta-renesas's specific multimedia configuration. The version of GStreamer1.0 which AGL distro will use is changed to 1.2.3 (meta-renesas prefers it) over 1.4.1 (meta-agl default) by this switch. * If you want to install various Qt5 examples, add below configuration to your local.conf. > IMAGE_INSTALL_append = " \ > packagegroup-agl-demo-qt-examples \ > " > PACKAGECONFIG_append_pn-qtbase = " examples" > > IMPORTANT NOTE: > To run examples with wayland-egl plugin, > use ``LD_PRELOAD=/usr/lib/libEGL.so <command>``. > If not, programs should not launch by error, > 'EGL not available'. ### Deployment (SDCARD) #### Instructions on the host 1. Format SD-Card and then, create single EXT4 partition on it. 2. Mount the SD-Card, for example `/media/$SDCARD_LABEL`. 3. Copy AGL root file system onto the SD-Card 1. Go to build directory > $ cd $AGL_TOP/build/tmp/deploy/images/porter 2. Extract the root file system into the SD-Card > $ sudo tar --extract --numeric-owner --preserve-permissions --preserve-order \ > --totals --directory=/media/$SDCARD_LABEL --file=agl-image-ivi-porter.tar.bz2 3. Copy kernel and DTB into the `/boot` of the SD-Card > $ sudo cp uImage uImage-r8a7791-porter.dtb /media/$SDCARD_LABEL/boot 4. After the copy finished, unmount SD-Card and insert it into the SD-Card slot of the porter board. #### Instructions on the target NOTE: There is details about porter board [here](http://elinux.org/R-Car/Boards/Porter). NOTE: To boot weston on porter board, we need keyboard and mouse. (USB2.0 can be use for this) ##### Change U-Boot parameters to boot from SD card 1. Power up the board and, using your preferred terminal emulator, stop the board's autoboot by hitting any key. ``Debug serial settings are 38400 8N1. Any standard terminal emulator program can be used.** 2. Set the follow environment variables and save them > => setenv bootargs_console console=ttySC6,${baudrate} > => setenv bootargs_video vmalloc=384M video=HDMI-A-1:1024x768-32@60 > => setenv bootcmd_sd 'ext4load mmc 0:1 0x40007fc0 boot/uImage;ext4load mmc 0:1 0x40f00000 boot/uImage-r8a7791-porter.dtb' > => setenv bootcmd 'setenv bootargs ${bootargs_console} ${bootargs_video} root=/dev/mmcblk0p1 rw rootfstype=ext4;run bootcmd_sd;bootm 0x40007fc0 - 0x40f00000' > => saveenv ##### Boot from SD card 1. After board reset, U-Boot is started and after a countdown, ... Linux boot message should be displayed. Please wait a moment. 2. Then weston is booted automatically, and weston-terminal appears. 3. Have fun! :) ### Deployment (TFTP/NFS) NOTE: These instructions are based on Embedded Linux Wiki, [here](http://www.elinux.org/R-Car/Boards/Yocto#Loading_kernel_via_TFTP_and_rootfs_via_NFS). And a Debian (wheezy, ip: 192.168.30.70) is used as the host for this instructions. #### Instructions on the host 1. Setup a TFTP server 1. Install necessary packages > $ sudo apt-get install tftp tftpd-hpa 2. Go to build directory, and copy kernel and DTB into TFTP server root (default server dir: /srv/tftp) > $cd $AGL_TOP/build/tmp/deploy/images/porter > $ sudo cp uImage uImage-r8a7791-porter.dtb /srv/tftp 3. Verify TFTP server is working > $ ls uImage ls: cannot access uImage: No such file or directory > $ cd /tmp/ > $ tftp 192.168.30.70 > tftp> get uImage > Received 3583604 bytes in 0.2 seconds > tftp> q > $ ls uImage > uImage 2. set NFS server 1. Install necessary packages > $ sudo apt-get install nfs-kernel-server nfs-common 2. Go to build directory, and extract the root file system into a dedicated directory (here we use /nfs/porter) > $ cd $AGL_TOP/build/tmp/deploy/images/porter > $ sudo mkdir -p /nfs/porter > $ sudo tar --extract --numeric-owner --preserve-permissions --preserve-order \ > --totals --directory=/nfs/porter --file=agl-demo-platform-porter.tar.bz2 3. Edit /etc/exports > $ sudo vi /etc/exports Add > > /nfs/porter *(rw,no_subtree_check,sync,no_root_squash,no_all_squash) > Save the file and exit. 4. Restart nfs service > $ sudo service nfs-kernel-server restart 5. Verify NFS server is working > $ sudo mount -t nfs 192.168.30.70:/nfs/porter /tmp/ > $ ls /tmp > bin boot dev etc home lib media mnt proc run sbin sys tmp usr var #### Instructions on the target board NOTE: There is details about porter board [here](http://elinux.org/R-Car/Boards/Porter). NOTE: To boot weston on porter board, we need keyboard and mouse. (USB2.0 can be use for this) ##### Change U-Boot parameters to boot from TFTP/NFS 1. Power up the board and, using your preferred terminal emulator, stop the board's autoboot by hitting any key. > Debug serial settings are 38400 8N1. Any standard terminal emulator program can be used. 2. Set the follow environment variables and save them > => setenv ipaddr <board-ip> > => setenv serverip <host-ip> > => setenv bootargs_console console=ttySC6,${baudrate} > => setenv bootargs_video vmalloc=384M video=HDMI-A-1:1024x768-32@60 > => setenv bootcmd_net 'tftp 0x40007fc0 uImage; tftp 0x40f00000 uImage-r8a7791-porter.dtb' > => setenv bootcmd 'setenv bootargs ${bootargs_console} ${bootargs_video} ip=${ipaddr} root=/dev/nfs nfsroot=${serverip}:/nfs/porter,vers=3;run bootcmd_net;bootm 0x40007fc0 - 0x40f00000' > => saveenv Replace <board-ip> with a proper IP address for the board, like 192.168.30.60. Replace <host-ip> with the IP address of the host, here we use 192.168.30.70. ##### Boot from TFTP/NFS 1. After board reset, U-Boot is started and after a countdown, ... Linux boot message should be displayed. Please wait a moment. 2. Then weston is booted automatically, and weston-terminal appears. 3. Have fun! :)