Coder Social home page Coder Social logo

eagle-manifest's Introduction

qc-drone-mainfest

This README file contains information on building the 'meta-eagle8074' BSP layer, and programming the images using fastboot. Please see the corresponding sections below for details.

Table of Contents

Dependencies

This layer depends on:

URI: git://git.yoctoproject.org/poky
layers: meta
layers: meta-yocto
layers: meta-oe
branch: jethro

Prerequisites

Workstation used for build must be a linux x86-64 with Ubuntu 14.04 or 16.04. Workstation must have a gcc 4.8 or latest with the support for both 64bit and 32bit c/c++ support.

Following packages are required to be installed on the development machine. (FIXME - check this)

sudo apt-get install libsdl1.2-dev texinfo chrpath gawk

Patches

Please submit any patches against this BSP to me ([email protected])

Building the eagle8074 BSP layer

Get the open source layers:

$ mkdir eagle
$ cd eagle
$ repo init -u [email protected]:mcharleb/qc-drone-mainfest.git -m eagle.xml
$ repo sync -j 16 -c --no-tags

NOTE: --depth=1 does not work

Get the SDK add-on: $ wget http://mcharleb3-linux.qualcomm.com:8080/qcom_flight_controller_hexagon_sdk_add_on.zip

Get the prebuilt files from QDN (TBD):

$ unzip prebuilt_eagle8074-0.0.1.zip

You should then be able to build the partitions for Eagle:

$ source meta-eagle8074/scripts/set_bb_env.sh
$ bitbake cache-image persist-image userdata-image

The factory-image and recovery-image images are not yet complete

Programming the OS image using fastboot

$ fastboot erase boot
$ fastboot flash boot build/tmp-glibc/deploy/images/eagle8074/out/boot-eagle8074.img
$ fastboot erase userdata
$ fastboot flash userdata build/tmp-glibc/deploy/images/eagle8074/out/userdata-eagle8074.img

Programming the eagle image using fastboot

When you bake the eagle-image, assuming you have meta-qcom-drones, in build/tmp/deploy/images/eagle8074, you will find flash_build.py. Run that script with the device connected to fastboot:

$ python flash_build.py

This flashes all the partitions from the original metabuild, along with the partitions built by eagle-image. By default, flash_build.py will flash UFS images in cases where the eMMC and UFS images are different. This is a good default for Dragonboard and SBC820. In case you have an eMMC based device, you may run:

$ python flash_build.py emmc

Notes and tips

Speed up your repo sync

A repo sync walks the list of git repositories in the manifest file and performs a fetch and checkout. Given the QuIC server hosted repositories tend to get bigger due to the meta-data associated with a repositories, we can speed up partially by dropping off one typical data element representing the tags. Git tags are usefull to identify a snapshot of file versions by name. Given manifest file doesn't call for any tags, following command is useful:

$ repo sync -j 16 -c --no-tags

Note if you observe any failure, it may be due the fact manifest contains a project with a revision identified by tag. You will notice the failure during that project's checkout. A normal repo sync will subsequently update your projects with tags included.

TODO : Further improvement can be achieved if the git fetch is limited to the branch of interest (single branch and shallow history)

eagle-manifest's People

Contributors

mcharleb avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.