summaryrefslogtreecommitdiffstats
path: root/meta-agl-bsp
diff options
context:
space:
mode:
authorLeon Anavi <leon.anavi@konsulko.com>2018-11-21 13:06:51 +0200
committerJan-Simon Moeller <jsmoeller@linuxfoundation.org>2018-11-30 12:29:45 +0000
commit1e16aedfaf8a347b915c79e247cbdb721110a827 (patch)
tree7b78540c64f2ecc8251a4500811ee0137667d55f /meta-agl-bsp
parent4f848a33b321ab2cf3bdab543d31a42e20d4492b (diff)
create-combined-dtb: Combine dtb and dtbo
Combine a number of device tree overlays to a base blob with a specified filename in the deploydir only. This feature is required only for netboot therefore the files are not included in the image. Bug-AGL: SPEC-1775 Change-Id: I16ff043ee0d44d4151e1fb2ba714bd1542854bd8 Suggested-by: Jan-Simon Möller <jsmoeller@linuxfoundation.org> Signed-off-by: Leon Anavi <leon.anavi@konsulko.com> (cherry picked from commit 9cffd21d1ec735c871943a301d46e3816e18a320)
Diffstat (limited to 'meta-agl-bsp')
-rw-r--r--meta-agl-bsp/meta-raspberrypi/recipes-kernel/create-combined-dtb/create-combined-dtb_1.0.0.bb33
1 files changed, 33 insertions, 0 deletions
diff --git a/meta-agl-bsp/meta-raspberrypi/recipes-kernel/create-combined-dtb/create-combined-dtb_1.0.0.bb b/meta-agl-bsp/meta-raspberrypi/recipes-kernel/create-combined-dtb/create-combined-dtb_1.0.0.bb
new file mode 100644
index 000000000..1323a72a2
--- /dev/null
+++ b/meta-agl-bsp/meta-raspberrypi/recipes-kernel/create-combined-dtb/create-combined-dtb_1.0.0.bb
@@ -0,0 +1,33 @@
+SUMMARY = "Combine dtb and dtbo"
+DESCRIPTION = "Combine specified dtb and one or more dtbo into specified filename found in deploydir"
+SECTION = "bootloader"
+PR = "r1"
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/COPYING.MIT;md5=3da9cfbcb788c80a0384361b4de20420"
+
+DEPENDS = "fdtoverlay-native"
+
+ALLOW_EMPTY_${PN} = "1"
+FILES_${PN} = ""
+
+S = "${WORKDIR}"
+
+do_compile () {
+ # Official touchscreen setup (rpi3b/rpi3b dtb, vc4-kms-v3d and ft5406)
+ fdtoverlay -v -i ${DEPLOY_DIR_IMAGE}/uImage-bcm2710-rpi-3-b-plus.dtb -o uImage-bcm2710-rpi-3-b+vc4+ft5406.dtb ${DEPLOY_DIR_IMAGE}/rpi-ft5406.dtbo ${DEPLOY_DIR_IMAGE}/uImage-vc4-kms-v3d.dtbo
+ fdtoverlay -v -i ${DEPLOY_DIR_IMAGE}/uImage-bcm2710-rpi-3-b.dtb -o uImage-bcm2710-rpi-3+vc4+ft5406.dtb ${DEPLOY_DIR_IMAGE}/rpi-ft5406.dtbo ${DEPLOY_DIR_IMAGE}/uImage-vc4-kms-v3d.dtbo
+
+ # HDMI screen setup (rpi3b/rpi3b dtb and vc4-kms-v3d)
+ fdtoverlay -v -i ${DEPLOY_DIR_IMAGE}/uImage-bcm2710-rpi-3-b-plus.dtb -o uImage-bcm2710-rpi-3-b+vc4.dtb ${DEPLOY_DIR_IMAGE}/uImage-vc4-kms-v3d.dtbo
+ fdtoverlay -v -i ${DEPLOY_DIR_IMAGE}/uImage-bcm2710-rpi-3-b.dtb -o uImage-bcm2710-rpi-3+vc4.dtb ${DEPLOY_DIR_IMAGE}/uImage-vc4-kms-v3d.dtbo
+}
+
+do_deploy () {
+ install -d ${DEPLOY_DIR_IMAGE}
+ install -m 0644 ${S}/uImage-bcm2710-rpi-3-b+vc4+ft5406.dtb ${DEPLOY_DIR_IMAGE}
+ install -m 0644 ${S}/uImage-bcm2710-rpi-3+vc4+ft5406.dtb ${DEPLOY_DIR_IMAGE}
+ install -m 0644 ${S}/uImage-bcm2710-rpi-3-b+vc4.dtb ${DEPLOY_DIR_IMAGE}
+ install -m 0644 ${S}/uImage-bcm2710-rpi-3+vc4.dtb ${DEPLOY_DIR_IMAGE}
+}
+
+addtask deploy after do_install
ht .se { color: #0044dd; background-color: #fff0f0 } /* Literal.String.Escape */ .highlight .sh { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Heredoc */ .highlight .si { color: #3333bb; background-color: #fff0f0 } /* Literal.String.Interpol */ .highlight .sx { color: #22bb22; background-color: #f0fff0 } /* Literal.String.Other */ .highlight .sr { color: #008800; background-color: #fff0ff } /* Literal.String.Regex */ .highlight .s1 { color: #dd2200; background-color: #fff0f0 } /* Literal.String.Single */ .highlight .ss { color: #aa6600; background-color: #fff0f0 } /* Literal.String.Symbol */ .highlight .bp { color: #003388 } /* Name.Builtin.Pseudo */ .highlight .fm { color: #0066bb; font-weight: bold } /* Name.Function.Magic */ .highlight .vc { color: #336699 } /* Name.Variable.Class */ .highlight .vg { color: #dd7700 } /* Name.Variable.Global */ .highlight .vi { color: #3333bb } /* Name.Variable.Instance */ .highlight .vm { color: #336699 } /* Name.Variable.Magic */ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */ }
#pragma once

#include <mapbox/geometry/point.hpp>

namespace mapbox {
namespace geometry {

template <typename T>
struct box
{
    using point_type = point<T>;

    constexpr box(point_type const& min_, point_type const& max_)
        : min(min_), max(max_)
    {}

    point_type min;
    point_type max;
};

template <typename T>
constexpr bool operator==(box<T> const& lhs, box<T> const& rhs)
{
    return lhs.min == rhs.min && lhs.max == rhs.max;
}

template <typename T>
constexpr bool operator!=(box<T> const& lhs, box<T> const& rhs)
{
    return lhs.min != rhs.min || lhs.max != rhs.max;
}

} // namespace geometry
} // namespace mapbox