pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/sysutils/u-boot-odroid-c2 Automate the building of a b...



details:   https://anonhg.NetBSD.org/pkgsrc/rev/d7114ad0b996
branches:  trunk
changeset: 333973:d7114ad0b996
user:      thorpej <thorpej%pkgsrc.org@localhost>
date:      Sat May 18 17:55:06 2019 +0000

description:
Automate the building of a bootable loader and add installboot(8)
support.  Requires amlogic-meson-fwtools (for now, anywy).

diffstat:

 sysutils/u-boot-odroid-c2/DESCR                   |   5 -
 sysutils/u-boot-odroid-c2/Makefile                |  97 ++++++++++++++++++++++-
 sysutils/u-boot-odroid-c2/PLIST                   |   7 +-
 sysutils/u-boot-odroid-c2/distinfo                |  46 ++++++++++
 sysutils/u-boot-odroid-c2/files/installboot.plist |  63 ++++++++++++++
 5 files changed, 207 insertions(+), 11 deletions(-)

diffs (247 lines):

diff -r 30cf771573cb -r d7114ad0b996 sysutils/u-boot-odroid-c2/DESCR
--- a/sysutils/u-boot-odroid-c2/DESCR   Sat May 18 17:42:13 2019 +0000
+++ b/sysutils/u-boot-odroid-c2/DESCR   Sat May 18 17:55:06 2019 +0000
@@ -3,8 +3,3 @@
 initialize and test the hardware or to download and run application code.
 
 This package provides U-Boot for the Odroid C2 board.
-
-See http://git.denx.de/?p=u-boot.git;a=blob;f=board/amlogic/odroid-c2/README
-for instructions how to install it.
-
-
diff -r 30cf771573cb -r d7114ad0b996 sysutils/u-boot-odroid-c2/Makefile
--- a/sysutils/u-boot-odroid-c2/Makefile        Sat May 18 17:42:13 2019 +0000
+++ b/sysutils/u-boot-odroid-c2/Makefile        Sat May 18 17:55:06 2019 +0000
@@ -1,9 +1,100 @@
-# $NetBSD: Makefile,v 1.3 2019/04/26 08:32:29 skrll Exp $
+# $NetBSD: Makefile,v 1.4 2019/05/18 17:55:06 thorpej Exp $
 
 UBOOT_TARGET=          odroid-c2
 UBOOT_CONFIG=          odroid-c2_defconfig
-UBOOT_BIN=             u-boot u-boot-dtb.bin
+UBOOT_BIN=             u-boot.gxbb
+
+UBOOT_INSTALLBOOT_PLIST=installboot.plist
+
+PKGREVISION=           3
+
+DISTINFO_FILE=         ${.CURDIR}/../../sysutils/u-boot-odroid-c2/distinfo
+DISTFILES=             ${DEFAULT_DISTFILES}
+
+#
+# Hardkernel-supplied BLxx binaries
+#
+ODROID=                        odroidc2-v2015.01
+
+xBL1_BIN=              bl1.bin.hardkernel
+BL1_BIN=               ${ODROID}-${xBL1_BIN}
+DISTFILES+=            ${BL1_BIN}
+UBOOT_BIN+=            ${xBL1_BIN}
+SITES.${BL1_BIN}=      ${MASTER_SITE_GITHUB:@url@ \
+       -${url}hardkernel/u-boot/raw/${ODROID}/sd_fuse/${xBL1_BIN} @}
+
+xBL2_PKG=              bl2.package
+BL2_PKG=               ${ODROID}-${xBL2_PKG}
+DISTFILES+=            ${BL2_PKG}
+SITES.${BL2_PKG}=      ${MASTER_SITE_GITHUB:@url@ \
+       -${url}hardkernel/u-boot/raw/${ODROID}/fip/gxb/${xBL2_PKG} @}
+
+xBL30_BIN=             bl30.bin
+BL30_BIN=              ${ODROID}-${xBL30_BIN}
+DISTFILES+=            ${BL30_BIN}
+SITES.${BL30_BIN}=     ${MASTER_SITE_GITHUB:@url@ \
+       -${url}hardkernel/u-boot/raw/${ODROID}/fip/gxb/${xBL30_BIN} @}
+
+xBL301_BIN=            bl301.bin
+BL301_BIN=             ${ODROID}-${xBL301_BIN}
+DISTFILES+=            ${BL301_BIN}
+SITES.${BL301_BIN}=    ${MASTER_SITE_GITHUB:@url@ \
+       -${url}hardkernel/u-boot/raw/${ODROID}/fip/gxb/${xBL301_BIN} @}
+
+xBL31_BIN=             bl31.bin
+BL31_BIN=              ${ODROID}-${xBL31_BIN}
+DISTFILES+=            ${BL31_BIN}
+SITES.${BL31_BIN}=     ${MASTER_SITE_GITHUB:@url@ \
+       -${url}hardkernel/u-boot/raw/${ODROID}/fip/gxb/${xBL31_BIN} @}
 
-PKGREVISION=           2
+# pkgsrc tries to run distfiles that end in .bin; handle manually
+EXTRACT_ONLY=          ${DISTFILES:N*.bin}
+
+post-extract:
+       cp ${DISTDIR}/${BL1_BIN} ${WRKSRC}/${xBL1_BIN}
+       cp ${DISTDIR}/${BL2_PKG} ${WRKSRC}/${xBL2_PKG}
+       cp ${DISTDIR}/${BL30_BIN} ${WRKSRC}/${xBL30_BIN}
+       cp ${DISTDIR}/${BL301_BIN} ${WRKSRC}/${xBL301_BIN}
+       cp ${DISTDIR}/${BL31_BIN} ${WRKSRC}/${xBL31_BIN}
+
+#
+# XXX For now, we use the fip_create and aml_encrypt_gxb binaries
+# from Hardkernel.
+#
+BUILD_DEPENDS+=                amlogic-meson-fwtools>=0.0:../../sysutils/amlogic-meson-fwtools
+post-build:
+       aml_fip_create \
+               --bl30 ${WRKSRC}/${xBL30_BIN} \
+               --bl301 ${WRKSRC}/${xBL301_BIN} \
+               --bl31 ${WRKSRC}/${xBL31_BIN} \
+               --bl33 ${WRKSRC}/u-boot-dtb.bin \
+               ${WRKSRC}/u-boot-fip.bin
+       aml_fip_create --dump ${WRKSRC}/u-boot-fip.bin
+       cat ${WRKSRC}/${xBL2_PKG} ${WRKSRC}/u-boot-fip.bin > \
+               ${WRKSRC}/u-boot-combined.bin
+       aml_encrypt_gxb --bootsig \
+               --input ${WRKSRC}/u-boot-combined.bin \
+               --output ${WRKSRC}/u-boot.img
+       dd if=${WRKSRC}/u-boot.img of=${WRKSRC}/u-boot.gxbb \
+               bs=512 skip=96
+
+# XXX We'd prefer this, but fiptool doesn't create a working image
+# for Odroid-C2.
+#BUILD_DEPENDS+=       arm-trusted-firmware-fiptool>=2.0nb2:../../sysutils/arm-trusted-firmware-fiptool
+#x-post-build-tf-a:
+#      fiptool create --align 0x4000 \
+#              --scp-fw ${WRKSRC}/${xBL30_BIN} \
+#              --blob uuid=DDCCBBAA-CDAB-EFEF-ABCD-12345678ABCD,file=${WRKSRC}/${xBL301_BIN} \
+#              --soc-fw ${WRKSRC}/${xBL31_BIN} \
+#              --nt-fw ${WRKSRC}/u-boot-dtb.bin \
+#              ${WRKSRC}/u-boot-fip.bin
+#      fiptool info ${WRKSRC}/u-boot-fip.bin
+#      cat ${WRKSRC}/${xBL2_PKG} ${WRKSRC}/u-boot-fip.bin > \
+#              ${WRKSRC}/u-boot-combined.bin
+#      aml_encrypt_gxb --bootsig \
+#              --input ${WRKSRC}/u-boot-combined.bin \
+#              --output ${WRKSRC}/u-boot.img
+#      dd if=${WRKSRC}/u-boot.img of=${WRKSRC}/u-boot.gxbb \
+#              bs=512 skip=96
 
 .include "../../sysutils/u-boot/u-boot-arm64.mk"
diff -r 30cf771573cb -r d7114ad0b996 sysutils/u-boot-odroid-c2/PLIST
--- a/sysutils/u-boot-odroid-c2/PLIST   Sat May 18 17:42:13 2019 +0000
+++ b/sysutils/u-boot-odroid-c2/PLIST   Sat May 18 17:55:06 2019 +0000
@@ -1,3 +1,4 @@
-@comment $NetBSD: PLIST,v 1.1 2019/01/22 17:17:55 martin Exp $
-share/u-boot/odroid-c2/u-boot
-share/u-boot/odroid-c2/u-boot-dtb.bin
+@comment $NetBSD: PLIST,v 1.2 2019/05/18 17:55:06 thorpej Exp $
+share/u-boot/odroid-c2/bl1.bin.hardkernel
+share/u-boot/odroid-c2/installboot.plist
+share/u-boot/odroid-c2/u-boot.gxbb
diff -r 30cf771573cb -r d7114ad0b996 sysutils/u-boot-odroid-c2/distinfo
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/u-boot-odroid-c2/distinfo        Sat May 18 17:55:06 2019 +0000
@@ -0,0 +1,46 @@
+$NetBSD: distinfo,v 1.1 2019/05/18 17:55:06 thorpej Exp $
+
+SHA1 (odroidc2-v2015.01-aml_encrypt_gxb) = 95c9565c64088ad56a10bac79b173c41a574e48e
+RMD160 (odroidc2-v2015.01-aml_encrypt_gxb) = 5cb9ffcb6e8486de42796a448c2e42ed86c5c1bc
+SHA512 (odroidc2-v2015.01-aml_encrypt_gxb) = 195957f44d93f523f9492b4b305b20a18384995001391466ccbcd152147fae132e612e09dd79987fe745f835ef4324ae2f5bc3c3c1f0824acdaf651bcf16c10b
+Size (odroidc2-v2015.01-aml_encrypt_gxb) = 1011765 bytes
+SHA1 (odroidc2-v2015.01-bl1.bin.hardkernel) = 40d92af372797dc3e24de62feab117206dae6718
+RMD160 (odroidc2-v2015.01-bl1.bin.hardkernel) = 356c7ec0fada96ff8371c5286990fd31212174f9
+SHA512 (odroidc2-v2015.01-bl1.bin.hardkernel) = 2fae07297d62ff211b5d8645b3b41e76b045edaeb6997d972736d7544276dfd70d220a836d6399c47b233eb266e0c3a4f4972b2879fec863fbbfb47f4510a84f
+Size (odroidc2-v2015.01-bl1.bin.hardkernel) = 49664 bytes
+SHA1 (odroidc2-v2015.01-bl2.package) = c245dbd155b4223cf2e431a538fecbf8755c1b24
+RMD160 (odroidc2-v2015.01-bl2.package) = e3c2bede7d9da33b657f15aa0319d405d35b1dca
+SHA512 (odroidc2-v2015.01-bl2.package) = 03c66955feee94558080897fadb048bcddf024f189fe813bfe96c7b9b126c94089f4bda4dbb099a1f54412b3aa5c65ee58dfc4b4cd2dd9f5d3066f0074b09b44
+Size (odroidc2-v2015.01-bl2.package) = 49152 bytes
+SHA1 (odroidc2-v2015.01-bl30.bin) = 45c93d61aefb4ca64751a7a2fc80d1837e816d73
+RMD160 (odroidc2-v2015.01-bl30.bin) = 71802df8303e87eed4b6fdcde088b981fa52e8ba
+SHA512 (odroidc2-v2015.01-bl30.bin) = d6a0ea6dfb0dc09fd6bc50173f4da1dcadbcd4d8f2f638f7d9e4fb571bda7fc511fd3f90f8cdd534780099c616c5fbfd6140f940782d79de34234f60207ac152
+Size (odroidc2-v2015.01-bl30.bin) = 40584 bytes
+SHA1 (odroidc2-v2015.01-bl301.bin) = 6e0803c9a3d0285ce3c4eff4ec225543c725e191
+RMD160 (odroidc2-v2015.01-bl301.bin) = 1d7e23ccb066041c6c02ade331f43989f027c318
+SHA512 (odroidc2-v2015.01-bl301.bin) = 6d638819ae4192a8429c445985ce7c56b72c66b8099da5126c47c81b642eb30c89aeedb62229e7b05dd50996d406f2c8925ae9323bd77112aae2ff6a3c6b6a9f
+Size (odroidc2-v2015.01-bl301.bin) = 6228 bytes
+SHA1 (odroidc2-v2015.01-bl31.bin) = 3b8fa827eafe109abb94de3a2eb4a83ceb7c3f85
+RMD160 (odroidc2-v2015.01-bl31.bin) = 1f19dba80270fac22acc07d2f8c60d21000e3b4e
+SHA512 (odroidc2-v2015.01-bl31.bin) = 8df2ce62ce2af72cfc25a164481864aba0e0791014f80d9ce262cb248b23c1c5ebbc20842b835b20b9a4ed388ee5b7cffd69d483c8921446a6ba118ed1878f4f
+Size (odroidc2-v2015.01-bl31.bin) = 69840 bytes
+SHA1 (odroidc2-v2015.01-fip_create) = b6d2edd8a72fa1822f6432982d04bbee1798ad4b
+RMD160 (odroidc2-v2015.01-fip_create) = ade537dd04484331ff050d1d41f562f700c9808e
+SHA512 (odroidc2-v2015.01-fip_create) = 1d8a4dd5e23b191b2f2bc1737936a4549251c105eee47abd74db73d6695c912ecbd167489eb2b3ede323d0942b30a4eb75b8e673a7502472ece8e3777be3a9a7
+Size (odroidc2-v2015.01-fip_create) = 14176 bytes
+SHA1 (u-boot-2018.11.tar.bz2) = e58e86c633ad3e2613196e0c0b0a7760ae5966d6
+RMD160 (u-boot-2018.11.tar.bz2) = f63c67750951d0e2883935a5d4cc3252f51a5453
+SHA512 (u-boot-2018.11.tar.bz2) = 1ea0bbb5f5e6d4c60b3a6bd345d1fa6e9da025daf36f47e8392bab34cb432c2e3633d903efb260f71fff87dffd6f2bf09ac900e96b3d4247073958d83b89ceff
+Size (u-boot-2018.11.tar.bz2) = 13045125 bytes
+SHA1 (patch-Makefile) = 45f505041a586b75953c34c1ab6fffaa56b43601
+SHA1 (patch-arch_arm_cpu_armv8_Kconfig) = 63cbbf2e3cebd46793fc03cc8e62297f6dc01aa9
+SHA1 (patch-configs_jetson-tk1_defconfig) = e25d89b9440f9bb4486ac22fc47083ed24abdd95
+SHA1 (patch-configs_p2371-2180_defconfig) = 2a3f1ad4f9963af403c2c9f2f01b892bbe55188c
+SHA1 (patch-drivers_video_sunxi_sunxi__display.c) = 8e6a6a781cce25af5cba289fc2ca76e30b62aff6
+SHA1 (patch-include_configs_tegra-common-post.h) = dfc081d2a3f7cd32e340b03f6c77c629bffd29b4
+SHA1 (patch-include_configs_tegra-common.h) = 4cda8f9df2c7fc2b9cd9d4139ec679a42648e4f8
+SHA1 (patch-include_image.h) = c9b134b2b5624a1e6c9f091a2192185b8d0f85fe
+SHA1 (patch-lib_bch.c) = b1f1c7418f1004c151b9e5e06ab7047a1736ae47
+SHA1 (patch-lib_efi__loader_efi__boottime.c) = 66aa3b95470a737154e6e082447aed0078092047
+SHA1 (patch-lib_efi__loader_efi__variable.c) = 1955870b22e358a4bded9e85fd89c74419aeed0d
+SHA1 (patch-tools_imx__cntr__image.sh) = 715647e3b77b505513ae79b4fe673f4f7f9bf042
diff -r 30cf771573cb -r d7114ad0b996 sysutils/u-boot-odroid-c2/files/installboot.plist
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/sysutils/u-boot-odroid-c2/files/installboot.plist Sat May 18 17:55:06 2019 +0000
@@ -0,0 +1,63 @@
+<!-- $NetBSD: installboot.plist,v 1.1 2019/05/18 17:55:06 thorpej Exp $ -->
+<!--
+  Copyright (c) 2019 The NetBSD Foundation, Inc.
+  All rights reserved.
+ 
+  This code is derived from software contributed to The NetBSD Foundation
+  by Jason R. Thorpe.
+ 
+  Redistribution and use in source and binary forms, with or without
+  modification, are permitted provided that the following conditions
+  are met:
+  1. Redistributions of source code must retain the above copyright
+     notice, this list of conditions and the following disclaimer.
+  2. Redistributions in binary form must reproduce the above copyright
+     notice, this list of conditions and the following disclaimer in the
+     documentation and/or other materials provided with the distribution.
+ 
+  THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
+  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
+  TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
+  PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
+  BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
+  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
+  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
+  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
+  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
+  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
+  POSSIBILITY OF SUCH DAMAGE.
+-->
+<plist>
+<dict>
+       <key>hardkernel,odroid-c2</key>
+       <dict>
+               <key>description</key>
+               <string>Hardkernel ODROID-C2</string>
+               <key>u-boot-install</key>
+               <array>
+                       <dict>
+                               <key>file-name</key>
+                               <string>bl1.bin.hardkernel</string>
+                               <key>file-size</key>
+                               <integer>442</integer>
+                               <key>preserve</key>
+                               <true/>
+                       </dict>
+                       <dict>
+                               <key>file-name</key>
+                               <string>bl1.bin.hardkernel</string>
+                               <key>file-offset</key>
+                               <integer>512</integer>
+                               <key>image-offset</key>
+                               <integer>512</integer>
+                       </dict>
+                       <dict>
+                               <key>file-name</key>
+                               <string>u-boot.gxbb</string>
+                               <key>image-offset</key>
+                               <integer>49664</integer>
+                       </dict>
+               </array>
+       </dict>
+</dict>
+</plist>



Home | Main Index | Thread Index | Old Index