* [PATCH] Add recipes for TF-A versions 2.2 and 2.3
@ 2020-05-12 0:20 Jon Mason
2020-05-12 0:31 ` [meta-arm] " Denys Dmytriyenko
2020-05-12 0:37 ` Joshua Watt
0 siblings, 2 replies; 6+ messages in thread
From: Jon Mason @ 2020-05-12 0:20 UTC (permalink / raw)
To: meta-arm; +Cc: nd
Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange fields
in the various TF-A recipes to make them uniform and move the
do_compile_prepend to the inc file.
Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8
Signed-off-by: Jon Mason <jon.mason@arm.com>
---
meta-arm-bsp/conf/machine/juno.conf | 1 +
.../trusted-firmware-a/trusted-firmware-a.inc | 13 ++++++-
.../trusted-firmware-a_2.1.bb | 20 ++--------
.../trusted-firmware-a_2.2.bb | 38 +++++++++++++++++++
.../trusted-firmware-a_2.3.bb | 38 +++++++++++++++++++
.../trusted-firmware-a_git.bb | 29 ++++++--------
6 files changed, 103 insertions(+), 36 deletions(-)
create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
diff --git a/meta-arm-bsp/conf/machine/juno.conf b/meta-arm-bsp/conf/machine/juno.conf
index 878b6b1..898a863 100644
--- a/meta-arm-bsp/conf/machine/juno.conf
+++ b/meta-arm-bsp/conf/machine/juno.conf
@@ -20,6 +20,7 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
# Use kernel provided by linaro (Contains support for SCMi or HDMI)
PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-arm"
PREFERRED_VERSION_linux-linaro-arm ?= "4.19%"
+PREFERRED_VERSION_trusted-firmware-a ?= "2.1%"
EXTRA_IMAGEDEPENDS += "virtual/trusted-firmware-a u-boot firmware-image-juno"
diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
index 93ca199..50a97a7 100644
--- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
+++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
@@ -81,8 +81,19 @@ DEPENDS += " ${@bb.utils.contains('TFA_UBOOT', '1', 'u-boot', '', d)}"
do_compile[depends] += " ${@bb.utils.contains('TFA_UBOOT', '1', 'u-boot:do_deploy', '', d)}"
EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', ' BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '',d)}"
-
+# The following hack is needed to fit properly in yocto build environment
+# TFA is forcing the host compiler and its flags in the Makefile using :=
+# assignment for GCC and CFLAGS.
+# To properly use the native toolchain of yocto and the right libraries we need
+# to pass the proper flags to gcc. This is achieved here by creating a gcc
+# script to force passing to gcc the right CFLAGS and LDFLAGS
do_compile() {
+ # Create an host gcc build parser to ensure the proper include path is used
+ mkdir -p bin
+ echo "#!/usr/bin/env bash" > bin/gcc
+ echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >> bin/gcc
+ chmod a+x bin/gcc
+ export PATH="$PWD/bin:$PATH"
oe_runmake ${TFA_BUILD_TARGET}
}
diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
index e8933fb..4d41202 100644
--- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
+++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
@@ -1,6 +1,9 @@
#
# Trusted firmware-A 2.1
#
+
+require trusted-firmware-a.inc
+
SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
# Use TF-A for version
@@ -33,20 +36,3 @@ LIC_FILES_CHKSUM_MBEDTLS += " \
SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
SRC_URI[mbedtls.sha256sum] = "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
-
-require trusted-firmware-a.inc
-
-# The following hack is needed to fit properly in yocto build environment
-# TFA is forcing the host compiler and its flags in the Makefile using :=
-# assignment for GCC and CFLAGS.
-# To properly use the native toolchain of yocto and the right libraries we need
-# to pass the proper flags to gcc. This is achieved here by creating a gcc
-# script to force passing to gcc the right CFLAGS and LDFLAGS
-do_compile_prepend() {
- #Create an host gcc build parser to ensure the proper include path is used
- mkdir -p bin
- echo "#!/usr/bin/env bash" > bin/gcc
- echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >> bin/gcc
- chmod a+x bin/gcc
- export PATH="$PWD/bin:$PATH"
-}
diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
new file mode 100644
index 0000000..4d5316e
--- /dev/null
+++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
@@ -0,0 +1,38 @@
+#
+# Trusted firmware-A 2.2
+#
+
+require trusted-firmware-a.inc
+
+SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
+
+# Use TF-A for version
+SRCREV_FORMAT = "tfa"
+
+# TF-A v2.2
+SRCREV_tfa = "7192b956bde11652a835eee0724dca0e403fee90"
+
+S = "${WORKDIR}/git"
+
+LIC_FILES_CHKSUM = "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
+
+SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
+SRC_URI[tfa.sha256sum] = "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
+
+#
+# mbed TLS source
+# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
+#
+
+SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls"
+
+# mbed TLS v2.16.2
+SRCREV_mbedtls = "d81c11b8ab61fd5b2da8133aa73c5fe33a0633eb"
+
+LIC_FILES_CHKSUM_MBEDTLS += " \
+ file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
+ file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
+ "
+
+SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
+SRC_URI[mbedtls.sha256sum] = "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
new file mode 100644
index 0000000..bfda87b
--- /dev/null
+++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
@@ -0,0 +1,38 @@
+#
+# Trusted firmware-A 2.3
+#
+
+require trusted-firmware-a.inc
+
+SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
+
+# Use TF-A for version
+SRCREV_FORMAT = "tfa"
+
+# TF-A v2.3
+SRCREV_tfa = "ecd27ad85f1eba29f6bf92c39dc002c85b07dad5"
+
+S = "${WORKDIR}/git"
+
+LIC_FILES_CHKSUM = "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
+
+SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
+SRC_URI[tfa.sha256sum] = "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
+
+#
+# mbed TLS source
+# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
+#
+
+SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls"
+
+# mbed TLS v2.18.1
+SRCREV_mbedtls = "ca933c7e0c9e84738b168b6b0feb89af4183a60a"
+
+LIC_FILES_CHKSUM_MBEDTLS += " \
+ file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
+ file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
+ "
+
+SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
+SRC_URI[mbedtls.sha256sum] = "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
index 4bf3ae5..c443ecd 100644
--- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
+++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
@@ -9,30 +9,23 @@ DEFAULT_PREFERENCE = "-1"
require trusted-firmware-a.inc
SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
+
+# Use TF-A for version
SRCREV_FORMAT = "tfa"
-LIC_FILES_CHKSUM ?= "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
+S = "${WORKDIR}/git"
+
+LIC_FILES_CHKSUM = "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
+
+#
# mbed TLS source
# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
+#
+
SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls"
-LIC_FILES_CHKSUM_MBEDTLS ?= " \
+
+LIC_FILES_CHKSUM_MBEDTLS += " \
file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
"
-S = "${WORKDIR}/git"
-
-# The following hack is needed to fit properly in yocto build environment
-# TFA is forcing the host compiler and its flags in the Makefile using :=
-# assignment for GCC and CFLAGS.
-# To properly use the native toolchain of yocto and the right libraries we need
-# to pass the proper flags to gcc. This is achieved here by creating a gcc
-# script to force passing to gcc the right CFLAGS and LDFLAGS
-do_compile_prepend() {
- # Create an host gcc build parser to ensure the proper include path is used
- mkdir -p bin
- echo "#!/usr/bin/env bash" > bin/gcc
- echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >> bin/gcc
- chmod a+x bin/gcc
- export PATH="$PWD/bin:$PATH"
-}
--
2.17.1
^ permalink raw reply related [flat|nested] 6+ messages in thread
* Re: [meta-arm] [PATCH] Add recipes for TF-A versions 2.2 and 2.3
2020-05-12 0:20 [PATCH] Add recipes for TF-A versions 2.2 and 2.3 Jon Mason
@ 2020-05-12 0:31 ` Denys Dmytriyenko
2020-05-12 8:56 ` Diego Sueiro
2020-05-12 0:37 ` Joshua Watt
1 sibling, 1 reply; 6+ messages in thread
From: Denys Dmytriyenko @ 2020-05-12 0:31 UTC (permalink / raw)
To: Jon Mason; +Cc: meta-arm, nd
On Mon, May 11, 2020 at 08:20:50PM -0400, Jon Mason wrote:
> Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange fields
> in the various TF-A recipes to make them uniform and move the
> do_compile_prepend to the inc file.
>
> Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8
> Signed-off-by: Jon Mason <jon.mason@arm.com>
> ---
> meta-arm-bsp/conf/machine/juno.conf | 1 +
> .../trusted-firmware-a/trusted-firmware-a.inc | 13 ++++++-
> .../trusted-firmware-a_2.1.bb | 20 ++--------
> .../trusted-firmware-a_2.2.bb | 38 +++++++++++++++++++
> .../trusted-firmware-a_2.3.bb | 38 +++++++++++++++++++
> .../trusted-firmware-a_git.bb | 29 ++++++--------
Any point in keeping git, 2.1, 2.2 and 2.3 around? Can we simplify it into one
version?
> 6 files changed, 103 insertions(+), 36 deletions(-)
> create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
> create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
>
> diff --git a/meta-arm-bsp/conf/machine/juno.conf b/meta-arm-bsp/conf/machine/juno.conf
> index 878b6b1..898a863 100644
> --- a/meta-arm-bsp/conf/machine/juno.conf
> +++ b/meta-arm-bsp/conf/machine/juno.conf
> @@ -20,6 +20,7 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
> # Use kernel provided by linaro (Contains support for SCMi or HDMI)
> PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-arm"
> PREFERRED_VERSION_linux-linaro-arm ?= "4.19%"
> +PREFERRED_VERSION_trusted-firmware-a ?= "2.1%"
>
> EXTRA_IMAGEDEPENDS += "virtual/trusted-firmware-a u-boot firmware-image-juno"
>
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> index 93ca199..50a97a7 100644
> --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> @@ -81,8 +81,19 @@ DEPENDS += " ${@bb.utils.contains('TFA_UBOOT', '1', 'u-boot', '', d)}"
> do_compile[depends] += " ${@bb.utils.contains('TFA_UBOOT', '1', 'u-boot:do_deploy', '', d)}"
> EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', ' BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '',d)}"
>
> -
> +# The following hack is needed to fit properly in yocto build environment
> +# TFA is forcing the host compiler and its flags in the Makefile using :=
> +# assignment for GCC and CFLAGS.
> +# To properly use the native toolchain of yocto and the right libraries we need
> +# to pass the proper flags to gcc. This is achieved here by creating a gcc
> +# script to force passing to gcc the right CFLAGS and LDFLAGS
> do_compile() {
> + # Create an host gcc build parser to ensure the proper include path is used
> + mkdir -p bin
> + echo "#!/usr/bin/env bash" > bin/gcc
> + echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >> bin/gcc
> + chmod a+x bin/gcc
> + export PATH="$PWD/bin:$PATH"
> oe_runmake ${TFA_BUILD_TARGET}
> }
>
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> index e8933fb..4d41202 100644
> --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> @@ -1,6 +1,9 @@
> #
> # Trusted firmware-A 2.1
> #
> +
> +require trusted-firmware-a.inc
> +
> SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
>
> # Use TF-A for version
> @@ -33,20 +36,3 @@ LIC_FILES_CHKSUM_MBEDTLS += " \
>
> SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> SRC_URI[mbedtls.sha256sum] = "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> -
> -require trusted-firmware-a.inc
> -
> -# The following hack is needed to fit properly in yocto build environment
> -# TFA is forcing the host compiler and its flags in the Makefile using :=
> -# assignment for GCC and CFLAGS.
> -# To properly use the native toolchain of yocto and the right libraries we need
> -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> -# script to force passing to gcc the right CFLAGS and LDFLAGS
> -do_compile_prepend() {
> - #Create an host gcc build parser to ensure the proper include path is used
> - mkdir -p bin
> - echo "#!/usr/bin/env bash" > bin/gcc
> - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >> bin/gcc
> - chmod a+x bin/gcc
> - export PATH="$PWD/bin:$PATH"
> -}
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
> new file mode 100644
> index 0000000..4d5316e
> --- /dev/null
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
> @@ -0,0 +1,38 @@
> +#
> +# Trusted firmware-A 2.2
> +#
> +
> +require trusted-firmware-a.inc
> +
> +SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
> +
> +# Use TF-A for version
> +SRCREV_FORMAT = "tfa"
> +
> +# TF-A v2.2
> +SRCREV_tfa = "7192b956bde11652a835eee0724dca0e403fee90"
> +
> +S = "${WORKDIR}/git"
> +
> +LIC_FILES_CHKSUM = "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> +
> +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> +SRC_URI[tfa.sha256sum] = "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> +
> +#
> +# mbed TLS source
> +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> +#
> +
> +SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls"
> +
> +# mbed TLS v2.16.2
> +SRCREV_mbedtls = "d81c11b8ab61fd5b2da8133aa73c5fe33a0633eb"
> +
> +LIC_FILES_CHKSUM_MBEDTLS += " \
> + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> + "
> +
> +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> +SRC_URI[mbedtls.sha256sum] = "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
> new file mode 100644
> index 0000000..bfda87b
> --- /dev/null
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
> @@ -0,0 +1,38 @@
> +#
> +# Trusted firmware-A 2.3
> +#
> +
> +require trusted-firmware-a.inc
> +
> +SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
> +
> +# Use TF-A for version
> +SRCREV_FORMAT = "tfa"
> +
> +# TF-A v2.3
> +SRCREV_tfa = "ecd27ad85f1eba29f6bf92c39dc002c85b07dad5"
> +
> +S = "${WORKDIR}/git"
> +
> +LIC_FILES_CHKSUM = "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> +
> +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> +SRC_URI[tfa.sha256sum] = "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> +
> +#
> +# mbed TLS source
> +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> +#
> +
> +SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls"
> +
> +# mbed TLS v2.18.1
> +SRCREV_mbedtls = "ca933c7e0c9e84738b168b6b0feb89af4183a60a"
> +
> +LIC_FILES_CHKSUM_MBEDTLS += " \
> + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> + "
> +
> +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> +SRC_URI[mbedtls.sha256sum] = "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> index 4bf3ae5..c443ecd 100644
> --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> @@ -9,30 +9,23 @@ DEFAULT_PREFERENCE = "-1"
> require trusted-firmware-a.inc
>
> SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa"
> +
> +# Use TF-A for version
> SRCREV_FORMAT = "tfa"
> -LIC_FILES_CHKSUM ?= "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
>
> +S = "${WORKDIR}/git"
> +
> +LIC_FILES_CHKSUM = "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> +
> +#
> # mbed TLS source
> # Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> +#
> +
> SRC_URI_MBEDTLS = "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls"
> -LIC_FILES_CHKSUM_MBEDTLS ?= " \
> +
> +LIC_FILES_CHKSUM_MBEDTLS += " \
> file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> "
>
> -S = "${WORKDIR}/git"
> -
> -# The following hack is needed to fit properly in yocto build environment
> -# TFA is forcing the host compiler and its flags in the Makefile using :=
> -# assignment for GCC and CFLAGS.
> -# To properly use the native toolchain of yocto and the right libraries we need
> -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> -# script to force passing to gcc the right CFLAGS and LDFLAGS
> -do_compile_prepend() {
> - # Create an host gcc build parser to ensure the proper include path is used
> - mkdir -p bin
> - echo "#!/usr/bin/env bash" > bin/gcc
> - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >> bin/gcc
> - chmod a+x bin/gcc
> - export PATH="$PWD/bin:$PATH"
> -}
> --
> 2.17.1
>
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-arm] [PATCH] Add recipes for TF-A versions 2.2 and 2.3
2020-05-12 0:20 [PATCH] Add recipes for TF-A versions 2.2 and 2.3 Jon Mason
2020-05-12 0:31 ` [meta-arm] " Denys Dmytriyenko
@ 2020-05-12 0:37 ` Joshua Watt
2020-05-12 0:40 ` Denys Dmytriyenko
1 sibling, 1 reply; 6+ messages in thread
From: Joshua Watt @ 2020-05-12 0:37 UTC (permalink / raw)
To: Jon Mason; +Cc: meta-arm, nd
[-- Attachment #1: Type: text/plain, Size: 10150 bytes --]
On Mon, May 11, 2020, 7:21 PM Jon Mason <jon.mason@arm.com> wrote:
> Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange fields
> in the various TF-A recipes to make them uniform and move the
> do_compile_prepend to the inc file.
>
> Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8
> Signed-off-by: Jon Mason <jon.mason@arm.com>
> ---
> meta-arm-bsp/conf/machine/juno.conf | 1 +
> .../trusted-firmware-a/trusted-firmware-a.inc | 13 ++++++-
> .../trusted-firmware-a_2.1.bb | 20 ++--------
> .../trusted-firmware-a_2.2.bb | 38 +++++++++++++++++++
> .../trusted-firmware-a_2.3.bb | 38 +++++++++++++++++++
> .../trusted-firmware-a_git.bb | 29 ++++++--------
> 6 files changed, 103 insertions(+), 36 deletions(-)
> create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.2.bb
> create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.3.bb
>
> diff --git a/meta-arm-bsp/conf/machine/juno.conf
> b/meta-arm-bsp/conf/machine/juno.conf
> index 878b6b1..898a863 100644
> --- a/meta-arm-bsp/conf/machine/juno.conf
> +++ b/meta-arm-bsp/conf/machine/juno.conf
> @@ -20,6 +20,7 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
> # Use kernel provided by linaro (Contains support for SCMi or HDMI)
> PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-arm"
> PREFERRED_VERSION_linux-linaro-arm ?= "4.19%"
> +PREFERRED_VERSION_trusted-firmware-a ?= "2.1%"
>
> EXTRA_IMAGEDEPENDS += "virtual/trusted-firmware-a u-boot
> firmware-image-juno"
>
> diff --git
> a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> index 93ca199..50a97a7 100644
> --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> @@ -81,8 +81,19 @@ DEPENDS += " ${@bb.utils.contains('TFA_UBOOT', '1',
> 'u-boot', '', d)}"
> do_compile[depends] += " ${@bb.utils.contains('TFA_UBOOT', '1',
> 'u-boot:do_deploy', '', d)}"
> EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', '
> BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '',d)}"
>
> -
> +# The following hack is needed to fit properly in yocto build environment
> +# TFA is forcing the host compiler and its flags in the Makefile using :=
> +# assignment for GCC and CFLAGS.
> +# To properly use the native toolchain of yocto and the right libraries
> we need
> +# to pass the proper flags to gcc. This is achieved here by creating a gcc
> +# script to force passing to gcc the right CFLAGS and LDFLAGS
> do_compile() {
> + # Create an host gcc build parser to ensure the proper include path
> is used
> + mkdir -p bin
> + echo "#!/usr/bin/env bash" > bin/gcc
> + echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> bin/gcc
> + chmod a+x bin/gcc
> + export PATH="$PWD/bin:$PATH"
>
I didn't include this in my version because I couldn't figure out why it
was necessary. Can it be removed?
oe_runmake ${TFA_BUILD_TARGET}
> }
>
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.1.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.1.bb
> index e8933fb..4d41202 100644
> --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> @@ -1,6 +1,9 @@
> #
> # Trusted firmware-A 2.1
> #
> +
> +require trusted-firmware-a.inc
> +
> SRC_URI = "git://
> git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> "
>
> # Use TF-A for version
> @@ -33,20 +36,3 @@ LIC_FILES_CHKSUM_MBEDTLS += " \
>
> SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> SRC_URI[mbedtls.sha256sum] =
> "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> -
> -require trusted-firmware-a.inc
> -
> -# The following hack is needed to fit properly in yocto build environment
> -# TFA is forcing the host compiler and its flags in the Makefile using :=
> -# assignment for GCC and CFLAGS.
> -# To properly use the native toolchain of yocto and the right libraries
> we need
> -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> -# script to force passing to gcc the right CFLAGS and LDFLAGS
> -do_compile_prepend() {
> - #Create an host gcc build parser to ensure the proper include path is
> used
> - mkdir -p bin
> - echo "#!/usr/bin/env bash" > bin/gcc
> - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> bin/gcc
> - chmod a+x bin/gcc
> - export PATH="$PWD/bin:$PATH"
> -}
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.2.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.2.bb
> new file mode 100644
> index 0000000..4d5316e
> --- /dev/null
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
> @@ -0,0 +1,38 @@
> +#
> +# Trusted firmware-A 2.2
> +#
> +
> +require trusted-firmware-a.inc
> +
> +SRC_URI = "git://
> git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> "
> +
> +# Use TF-A for version
> +SRCREV_FORMAT = "tfa"
> +
> +# TF-A v2.2
> +SRCREV_tfa = "7192b956bde11652a835eee0724dca0e403fee90"
> +
> +S = "${WORKDIR}/git"
> +
> +LIC_FILES_CHKSUM =
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> +
> +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> +SRC_URI[tfa.sha256sum] =
> "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> +
> +#
> +# mbed TLS source
> +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> +#
> +
> +SRC_URI_MBEDTLS = "git://
> github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> "
> +
> +# mbed TLS v2.16.2
> +SRCREV_mbedtls = "d81c11b8ab61fd5b2da8133aa73c5fe33a0633eb"
> +
> +LIC_FILES_CHKSUM_MBEDTLS += " \
> + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> + "
> +
> +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> +SRC_URI[mbedtls.sha256sum] =
> "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.3.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_2.3.bb
> new file mode 100644
> index 0000000..bfda87b
> --- /dev/null
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
> @@ -0,0 +1,38 @@
> +#
> +# Trusted firmware-A 2.3
> +#
> +
> +require trusted-firmware-a.inc
> +
> +SRC_URI = "git://
> git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> "
> +
> +# Use TF-A for version
> +SRCREV_FORMAT = "tfa"
> +
> +# TF-A v2.3
> +SRCREV_tfa = "ecd27ad85f1eba29f6bf92c39dc002c85b07dad5"
> +
> +S = "${WORKDIR}/git"
> +
> +LIC_FILES_CHKSUM =
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> +
> +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> +SRC_URI[tfa.sha256sum] =
> "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> +
> +#
> +# mbed TLS source
> +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> +#
> +
> +SRC_URI_MBEDTLS = "git://
> github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> "
> +
> +# mbed TLS v2.18.1
> +SRCREV_mbedtls = "ca933c7e0c9e84738b168b6b0feb89af4183a60a"
> +
> +LIC_FILES_CHKSUM_MBEDTLS += " \
> + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> + "
> +
> +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> +SRC_URI[mbedtls.sha256sum] =
> "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_git.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> trusted-firmware-a_git.bb
> index 4bf3ae5..c443ecd 100644
> --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> @@ -9,30 +9,23 @@ DEFAULT_PREFERENCE = "-1"
> require trusted-firmware-a.inc
>
> SRC_URI = "git://
> git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> "
> +
> +# Use TF-A for version
> SRCREV_FORMAT = "tfa"
> -LIC_FILES_CHKSUM ?=
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
>
> +S = "${WORKDIR}/git"
> +
> +LIC_FILES_CHKSUM =
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> +
> +#
> # mbed TLS source
> # Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> +#
> +
> SRC_URI_MBEDTLS = "git://
> github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> "
> -LIC_FILES_CHKSUM_MBEDTLS ?= " \
> +
> +LIC_FILES_CHKSUM_MBEDTLS += " \
> file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> "
>
> -S = "${WORKDIR}/git"
> -
> -# The following hack is needed to fit properly in yocto build environment
> -# TFA is forcing the host compiler and its flags in the Makefile using :=
> -# assignment for GCC and CFLAGS.
> -# To properly use the native toolchain of yocto and the right libraries
> we need
> -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> -# script to force passing to gcc the right CFLAGS and LDFLAGS
> -do_compile_prepend() {
> - # Create an host gcc build parser to ensure the proper include path
> is used
> - mkdir -p bin
> - echo "#!/usr/bin/env bash" > bin/gcc
> - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> bin/gcc
> - chmod a+x bin/gcc
> - export PATH="$PWD/bin:$PATH"
> -}
> --
> 2.17.1
>
>
>
[-- Attachment #2: Type: text/html, Size: 14659 bytes --]
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-arm] [PATCH] Add recipes for TF-A versions 2.2 and 2.3
2020-05-12 0:37 ` Joshua Watt
@ 2020-05-12 0:40 ` Denys Dmytriyenko
2020-05-12 3:57 ` Jon Mason
0 siblings, 1 reply; 6+ messages in thread
From: Denys Dmytriyenko @ 2020-05-12 0:40 UTC (permalink / raw)
To: Joshua Watt; +Cc: Jon Mason, meta-arm, nd
On Mon, May 11, 2020 at 07:37:10PM -0500, Joshua Watt wrote:
> On Mon, May 11, 2020, 7:21 PM Jon Mason <jon.mason@arm.com> wrote:
>
> > Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange fields
> > in the various TF-A recipes to make them uniform and move the
> > do_compile_prepend to the inc file.
> >
> > Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8
> > Signed-off-by: Jon Mason <jon.mason@arm.com>
> > ---
> > meta-arm-bsp/conf/machine/juno.conf | 1 +
> > .../trusted-firmware-a/trusted-firmware-a.inc | 13 ++++++-
> > .../trusted-firmware-a_2.1.bb | 20 ++--------
> > .../trusted-firmware-a_2.2.bb | 38 +++++++++++++++++++
> > .../trusted-firmware-a_2.3.bb | 38 +++++++++++++++++++
> > .../trusted-firmware-a_git.bb | 29 ++++++--------
> > 6 files changed, 103 insertions(+), 36 deletions(-)
> > create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.2.bb
> > create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.3.bb
> >
> > diff --git a/meta-arm-bsp/conf/machine/juno.conf
> > b/meta-arm-bsp/conf/machine/juno.conf
> > index 878b6b1..898a863 100644
> > --- a/meta-arm-bsp/conf/machine/juno.conf
> > +++ b/meta-arm-bsp/conf/machine/juno.conf
> > @@ -20,6 +20,7 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
> > # Use kernel provided by linaro (Contains support for SCMi or HDMI)
> > PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-arm"
> > PREFERRED_VERSION_linux-linaro-arm ?= "4.19%"
> > +PREFERRED_VERSION_trusted-firmware-a ?= "2.1%"
> >
> > EXTRA_IMAGEDEPENDS += "virtual/trusted-firmware-a u-boot
> > firmware-image-juno"
> >
> > diff --git
> > a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > index 93ca199..50a97a7 100644
> > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > @@ -81,8 +81,19 @@ DEPENDS += " ${@bb.utils.contains('TFA_UBOOT', '1',
> > 'u-boot', '', d)}"
> > do_compile[depends] += " ${@bb.utils.contains('TFA_UBOOT', '1',
> > 'u-boot:do_deploy', '', d)}"
> > EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', '
> > BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '',d)}"
> >
> > -
> > +# The following hack is needed to fit properly in yocto build environment
> > +# TFA is forcing the host compiler and its flags in the Makefile using :=
> > +# assignment for GCC and CFLAGS.
> > +# To properly use the native toolchain of yocto and the right libraries
> > we need
> > +# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > +# script to force passing to gcc the right CFLAGS and LDFLAGS
> > do_compile() {
> > + # Create an host gcc build parser to ensure the proper include path
> > is used
> > + mkdir -p bin
> > + echo "#!/usr/bin/env bash" > bin/gcc
> > + echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> > bin/gcc
> > + chmod a+x bin/gcc
> > + export PATH="$PWD/bin:$PATH"
> >
>
> I didn't include this in my version because I couldn't figure out why it
> was necessary. Can it be removed?
Yeah, I'm not sure either - I've been building 2.0, 2.1 and 2.2 w/o this just
fine...
> oe_runmake ${TFA_BUILD_TARGET}
> > }
> >
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.1.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.1.bb
> > index e8933fb..4d41202 100644
> > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> > @@ -1,6 +1,9 @@
> > #
> > # Trusted firmware-A 2.1
> > #
> > +
> > +require trusted-firmware-a.inc
> > +
> > SRC_URI = "git://
> > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > "
> >
> > # Use TF-A for version
> > @@ -33,20 +36,3 @@ LIC_FILES_CHKSUM_MBEDTLS += " \
> >
> > SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > SRC_URI[mbedtls.sha256sum] =
> > "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> > -
> > -require trusted-firmware-a.inc
> > -
> > -# The following hack is needed to fit properly in yocto build environment
> > -# TFA is forcing the host compiler and its flags in the Makefile using :=
> > -# assignment for GCC and CFLAGS.
> > -# To properly use the native toolchain of yocto and the right libraries
> > we need
> > -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > -# script to force passing to gcc the right CFLAGS and LDFLAGS
> > -do_compile_prepend() {
> > - #Create an host gcc build parser to ensure the proper include path is
> > used
> > - mkdir -p bin
> > - echo "#!/usr/bin/env bash" > bin/gcc
> > - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> > bin/gcc
> > - chmod a+x bin/gcc
> > - export PATH="$PWD/bin:$PATH"
> > -}
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.2.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.2.bb
> > new file mode 100644
> > index 0000000..4d5316e
> > --- /dev/null
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
> > @@ -0,0 +1,38 @@
> > +#
> > +# Trusted firmware-A 2.2
> > +#
> > +
> > +require trusted-firmware-a.inc
> > +
> > +SRC_URI = "git://
> > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > "
> > +
> > +# Use TF-A for version
> > +SRCREV_FORMAT = "tfa"
> > +
> > +# TF-A v2.2
> > +SRCREV_tfa = "7192b956bde11652a835eee0724dca0e403fee90"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +LIC_FILES_CHKSUM =
> > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > +
> > +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> > +SRC_URI[tfa.sha256sum] =
> > "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> > +
> > +#
> > +# mbed TLS source
> > +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > +#
> > +
> > +SRC_URI_MBEDTLS = "git://
> > github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> > "
> > +
> > +# mbed TLS v2.16.2
> > +SRCREV_mbedtls = "d81c11b8ab61fd5b2da8133aa73c5fe33a0633eb"
> > +
> > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > + "
> > +
> > +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > +SRC_URI[mbedtls.sha256sum] =
> > "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.3.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_2.3.bb
> > new file mode 100644
> > index 0000000..bfda87b
> > --- /dev/null
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
> > @@ -0,0 +1,38 @@
> > +#
> > +# Trusted firmware-A 2.3
> > +#
> > +
> > +require trusted-firmware-a.inc
> > +
> > +SRC_URI = "git://
> > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > "
> > +
> > +# Use TF-A for version
> > +SRCREV_FORMAT = "tfa"
> > +
> > +# TF-A v2.3
> > +SRCREV_tfa = "ecd27ad85f1eba29f6bf92c39dc002c85b07dad5"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +LIC_FILES_CHKSUM =
> > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > +
> > +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> > +SRC_URI[tfa.sha256sum] =
> > "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> > +
> > +#
> > +# mbed TLS source
> > +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > +#
> > +
> > +SRC_URI_MBEDTLS = "git://
> > github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> > "
> > +
> > +# mbed TLS v2.18.1
> > +SRCREV_mbedtls = "ca933c7e0c9e84738b168b6b0feb89af4183a60a"
> > +
> > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > + "
> > +
> > +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > +SRC_URI[mbedtls.sha256sum] =
> > "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_git.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > trusted-firmware-a_git.bb
> > index 4bf3ae5..c443ecd 100644
> > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> > @@ -9,30 +9,23 @@ DEFAULT_PREFERENCE = "-1"
> > require trusted-firmware-a.inc
> >
> > SRC_URI = "git://
> > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > "
> > +
> > +# Use TF-A for version
> > SRCREV_FORMAT = "tfa"
> > -LIC_FILES_CHKSUM ?=
> > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> >
> > +S = "${WORKDIR}/git"
> > +
> > +LIC_FILES_CHKSUM =
> > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > +
> > +#
> > # mbed TLS source
> > # Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > +#
> > +
> > SRC_URI_MBEDTLS = "git://
> > github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> > "
> > -LIC_FILES_CHKSUM_MBEDTLS ?= " \
> > +
> > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > "
> >
> > -S = "${WORKDIR}/git"
> > -
> > -# The following hack is needed to fit properly in yocto build environment
> > -# TFA is forcing the host compiler and its flags in the Makefile using :=
> > -# assignment for GCC and CFLAGS.
> > -# To properly use the native toolchain of yocto and the right libraries
> > we need
> > -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > -# script to force passing to gcc the right CFLAGS and LDFLAGS
> > -do_compile_prepend() {
> > - # Create an host gcc build parser to ensure the proper include path
> > is used
> > - mkdir -p bin
> > - echo "#!/usr/bin/env bash" > bin/gcc
> > - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> > bin/gcc
> > - chmod a+x bin/gcc
> > - export PATH="$PWD/bin:$PATH"
> > -}
> > --
> > 2.17.1
> >
> >
> >
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-arm] [PATCH] Add recipes for TF-A versions 2.2 and 2.3
2020-05-12 0:40 ` Denys Dmytriyenko
@ 2020-05-12 3:57 ` Jon Mason
0 siblings, 0 replies; 6+ messages in thread
From: Jon Mason @ 2020-05-12 3:57 UTC (permalink / raw)
To: Denys Dmytriyenko; +Cc: Joshua Watt, Jon Mason, meta-arm, nd
On Mon, May 11, 2020 at 08:40:24PM -0400, Denys Dmytriyenko wrote:
> On Mon, May 11, 2020 at 07:37:10PM -0500, Joshua Watt wrote:
> > On Mon, May 11, 2020, 7:21 PM Jon Mason <jon.mason@arm.com> wrote:
> >
> > > Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange fields
> > > in the various TF-A recipes to make them uniform and move the
> > > do_compile_prepend to the inc file.
> > >
> > > Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8
> > > Signed-off-by: Jon Mason <jon.mason@arm.com>
> > > ---
> > > meta-arm-bsp/conf/machine/juno.conf | 1 +
> > > .../trusted-firmware-a/trusted-firmware-a.inc | 13 ++++++-
> > > .../trusted-firmware-a_2.1.bb | 20 ++--------
> > > .../trusted-firmware-a_2.2.bb | 38 +++++++++++++++++++
> > > .../trusted-firmware-a_2.3.bb | 38 +++++++++++++++++++
> > > .../trusted-firmware-a_git.bb | 29 ++++++--------
> > > 6 files changed, 103 insertions(+), 36 deletions(-)
> > > create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.2.bb
> > > create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.3.bb
> > >
> > > diff --git a/meta-arm-bsp/conf/machine/juno.conf
> > > b/meta-arm-bsp/conf/machine/juno.conf
> > > index 878b6b1..898a863 100644
> > > --- a/meta-arm-bsp/conf/machine/juno.conf
> > > +++ b/meta-arm-bsp/conf/machine/juno.conf
> > > @@ -20,6 +20,7 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
> > > # Use kernel provided by linaro (Contains support for SCMi or HDMI)
> > > PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-arm"
> > > PREFERRED_VERSION_linux-linaro-arm ?= "4.19%"
> > > +PREFERRED_VERSION_trusted-firmware-a ?= "2.1%"
> > >
> > > EXTRA_IMAGEDEPENDS += "virtual/trusted-firmware-a u-boot
> > > firmware-image-juno"
> > >
> > > diff --git
> > > a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > > b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > > index 93ca199..50a97a7 100644
> > > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > > @@ -81,8 +81,19 @@ DEPENDS += " ${@bb.utils.contains('TFA_UBOOT', '1',
> > > 'u-boot', '', d)}"
> > > do_compile[depends] += " ${@bb.utils.contains('TFA_UBOOT', '1',
> > > 'u-boot:do_deploy', '', d)}"
> > > EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', '
> > > BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '',d)}"
> > >
> > > -
> > > +# The following hack is needed to fit properly in yocto build environment
> > > +# TFA is forcing the host compiler and its flags in the Makefile using :=
> > > +# assignment for GCC and CFLAGS.
> > > +# To properly use the native toolchain of yocto and the right libraries
> > > we need
> > > +# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > > +# script to force passing to gcc the right CFLAGS and LDFLAGS
> > > do_compile() {
> > > + # Create an host gcc build parser to ensure the proper include path
> > > is used
> > > + mkdir -p bin
> > > + echo "#!/usr/bin/env bash" > bin/gcc
> > > + echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> > > bin/gcc
> > > + chmod a+x bin/gcc
> > > + export PATH="$PWD/bin:$PATH"
> > >
> >
> > I didn't include this in my version because I couldn't figure out why it
> > was necessary. Can it be removed?
>
> Yeah, I'm not sure either - I've been building 2.0, 2.1 and 2.2 w/o this just
> fine...
IIRC, removing this with a minimal build environment causes errors
with missing include files for the fiptool.
Thanks,
Jon
>
>
> > oe_runmake ${TFA_BUILD_TARGET}
> > > }
> > >
> > > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.1.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.1.bb
> > > index e8933fb..4d41202 100644
> > > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> > > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> > > @@ -1,6 +1,9 @@
> > > #
> > > # Trusted firmware-A 2.1
> > > #
> > > +
> > > +require trusted-firmware-a.inc
> > > +
> > > SRC_URI = "git://
> > > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > > "
> > >
> > > # Use TF-A for version
> > > @@ -33,20 +36,3 @@ LIC_FILES_CHKSUM_MBEDTLS += " \
> > >
> > > SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > > SRC_URI[mbedtls.sha256sum] =
> > > "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> > > -
> > > -require trusted-firmware-a.inc
> > > -
> > > -# The following hack is needed to fit properly in yocto build environment
> > > -# TFA is forcing the host compiler and its flags in the Makefile using :=
> > > -# assignment for GCC and CFLAGS.
> > > -# To properly use the native toolchain of yocto and the right libraries
> > > we need
> > > -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > > -# script to force passing to gcc the right CFLAGS and LDFLAGS
> > > -do_compile_prepend() {
> > > - #Create an host gcc build parser to ensure the proper include path is
> > > used
> > > - mkdir -p bin
> > > - echo "#!/usr/bin/env bash" > bin/gcc
> > > - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> > > bin/gcc
> > > - chmod a+x bin/gcc
> > > - export PATH="$PWD/bin:$PATH"
> > > -}
> > > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.2.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.2.bb
> > > new file mode 100644
> > > index 0000000..4d5316e
> > > --- /dev/null
> > > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.2.bb
> > > @@ -0,0 +1,38 @@
> > > +#
> > > +# Trusted firmware-A 2.2
> > > +#
> > > +
> > > +require trusted-firmware-a.inc
> > > +
> > > +SRC_URI = "git://
> > > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > > "
> > > +
> > > +# Use TF-A for version
> > > +SRCREV_FORMAT = "tfa"
> > > +
> > > +# TF-A v2.2
> > > +SRCREV_tfa = "7192b956bde11652a835eee0724dca0e403fee90"
> > > +
> > > +S = "${WORKDIR}/git"
> > > +
> > > +LIC_FILES_CHKSUM =
> > > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > > +
> > > +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> > > +SRC_URI[tfa.sha256sum] =
> > > "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> > > +
> > > +#
> > > +# mbed TLS source
> > > +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > > +#
> > > +
> > > +SRC_URI_MBEDTLS = "git://
> > > github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> > > "
> > > +
> > > +# mbed TLS v2.16.2
> > > +SRCREV_mbedtls = "d81c11b8ab61fd5b2da8133aa73c5fe33a0633eb"
> > > +
> > > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > > + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > > + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > > + "
> > > +
> > > +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > > +SRC_URI[mbedtls.sha256sum] =
> > > "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> > > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.3.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_2.3.bb
> > > new file mode 100644
> > > index 0000000..bfda87b
> > > --- /dev/null
> > > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.3.bb
> > > @@ -0,0 +1,38 @@
> > > +#
> > > +# Trusted firmware-A 2.3
> > > +#
> > > +
> > > +require trusted-firmware-a.inc
> > > +
> > > +SRC_URI = "git://
> > > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > > "
> > > +
> > > +# Use TF-A for version
> > > +SRCREV_FORMAT = "tfa"
> > > +
> > > +# TF-A v2.3
> > > +SRCREV_tfa = "ecd27ad85f1eba29f6bf92c39dc002c85b07dad5"
> > > +
> > > +S = "${WORKDIR}/git"
> > > +
> > > +LIC_FILES_CHKSUM =
> > > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > > +
> > > +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> > > +SRC_URI[tfa.sha256sum] =
> > > "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> > > +
> > > +#
> > > +# mbed TLS source
> > > +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > > +#
> > > +
> > > +SRC_URI_MBEDTLS = "git://
> > > github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> > > "
> > > +
> > > +# mbed TLS v2.18.1
> > > +SRCREV_mbedtls = "ca933c7e0c9e84738b168b6b0feb89af4183a60a"
> > > +
> > > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > > + file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > > + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > > + "
> > > +
> > > +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > > +SRC_URI[mbedtls.sha256sum] =
> > > "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4"
> > > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_git.bb b/meta-arm/recipes-bsp/trusted-firmware-a/
> > > trusted-firmware-a_git.bb
> > > index 4bf3ae5..c443ecd 100644
> > > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> > > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> > > @@ -9,30 +9,23 @@ DEFAULT_PREFERENCE = "-1"
> > > require trusted-firmware-a.inc
> > >
> > > SRC_URI = "git://
> > > git.trustedfirmware.org/TF-A/trusted-firmware-a.git;protocol=https;name=tfa
> > > "
> > > +
> > > +# Use TF-A for version
> > > SRCREV_FORMAT = "tfa"
> > > -LIC_FILES_CHKSUM ?=
> > > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > >
> > > +S = "${WORKDIR}/git"
> > > +
> > > +LIC_FILES_CHKSUM =
> > > "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > > +
> > > +#
> > > # mbed TLS source
> > > # Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > > +#
> > > +
> > > SRC_URI_MBEDTLS = "git://
> > > github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;destsuffix=git/mbedtls
> > > "
> > > -LIC_FILES_CHKSUM_MBEDTLS ?= " \
> > > +
> > > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > > file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > > file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > > "
> > >
> > > -S = "${WORKDIR}/git"
> > > -
> > > -# The following hack is needed to fit properly in yocto build environment
> > > -# TFA is forcing the host compiler and its flags in the Makefile using :=
> > > -# assignment for GCC and CFLAGS.
> > > -# To properly use the native toolchain of yocto and the right libraries
> > > we need
> > > -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > > -# script to force passing to gcc the right CFLAGS and LDFLAGS
> > > -do_compile_prepend() {
> > > - # Create an host gcc build parser to ensure the proper include path
> > > is used
> > > - mkdir -p bin
> > > - echo "#!/usr/bin/env bash" > bin/gcc
> > > - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS} \$@" >>
> > > bin/gcc
> > > - chmod a+x bin/gcc
> > > - export PATH="$PWD/bin:$PATH"
> > > -}
> > > --
> > > 2.17.1
> > >
> > >
> > >
>
> >
>
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [meta-arm] [PATCH] Add recipes for TF-A versions 2.2 and 2.3
2020-05-12 0:31 ` [meta-arm] " Denys Dmytriyenko
@ 2020-05-12 8:56 ` Diego Sueiro
0 siblings, 0 replies; 6+ messages in thread
From: Diego Sueiro @ 2020-05-12 8:56 UTC (permalink / raw)
To: denis@denix.org, Jon Mason; +Cc: meta-arm@lists.yoctoproject.org, nd
> -----Original Message-----
> From: meta-arm@lists.yoctoproject.org <meta-arm@lists.yoctoproject.org>
> On Behalf Of Denys Dmytriyenko via lists.yoctoproject.org
> Sent: 12 May 2020 01:31
> To: Jon Mason <Jon.Mason@arm.com>
> Cc: meta-arm@lists.yoctoproject.org; nd <nd@arm.com>
> Subject: Re: [meta-arm] [PATCH] Add recipes for TF-A versions 2.2 and 2.3
>
> On Mon, May 11, 2020 at 08:20:50PM -0400, Jon Mason wrote:
> > Add basic recipes for TF-A versions 2.2 and 2.3. Also, rearrange
> > fields in the various TF-A recipes to make them uniform and move the
> > do_compile_prepend to the inc file.
> >
> > Change-Id: I85e4ac7bdc44ed85449e40fd2c94d73bf3e7d9e8
> > Signed-off-by: Jon Mason <jon.mason@arm.com>
> > ---
> > meta-arm-bsp/conf/machine/juno.conf | 1 +
> > .../trusted-firmware-a/trusted-firmware-a.inc | 13 ++++++-
> > .../trusted-firmware-a_2.1.bb | 20 ++--------
> > .../trusted-firmware-a_2.2.bb | 38 +++++++++++++++++++
> > .../trusted-firmware-a_2.3.bb | 38 +++++++++++++++++++
> > .../trusted-firmware-a_git.bb | 29 ++++++--------
>
> Any point in keeping git, 2.1, 2.2 and 2.3 around? Can we simplify it into one
> version?
>
In the current status, the juno machine still uses the 2.1 version.
>
> > 6 files changed, 103 insertions(+), 36 deletions(-)
> > create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/trusted-
> firmware-a_2.2.bb
> > create mode 100644 meta-arm/recipes-bsp/trusted-firmware-a/trusted-
> firmware-a_2.3.bb
> >
> > diff --git a/meta-arm-bsp/conf/machine/juno.conf b/meta-arm-
> bsp/conf/machine/juno.conf
> > index 878b6b1..898a863 100644
> > --- a/meta-arm-bsp/conf/machine/juno.conf
> > +++ b/meta-arm-bsp/conf/machine/juno.conf
> > @@ -20,6 +20,7 @@ SERIAL_CONSOLES = "115200;ttyAMA0"
> > # Use kernel provided by linaro (Contains support for SCMi or HDMI)
> > PREFERRED_PROVIDER_virtual/kernel ?= "linux-linaro-arm"
> > PREFERRED_VERSION_linux-linaro-arm ?= "4.19%"
> > +PREFERRED_VERSION_trusted-firmware-a ?= "2.1%"
> >
> > EXTRA_IMAGEDEPENDS += "virtual/trusted-firmware-a u-boot firmware-
> image-juno"
> >
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a.inc b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > index 93ca199..50a97a7 100644
> > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a.inc
> > @@ -81,8 +81,19 @@ DEPENDS += " ${@bb.utils.contains('TFA_UBOOT', '1',
> 'u-boot', '', d)}"
> > do_compile[depends] += " ${@bb.utils.contains('TFA_UBOOT', '1', 'u-
> boot:do_deploy', '', d)}"
> > EXTRA_OEMAKE += "${@bb.utils.contains('TFA_UBOOT', '1', '
> BL33=${DEPLOY_DIR_IMAGE}/u-boot.bin', '',d)}"
> >
> > -
> > +# The following hack is needed to fit properly in yocto build environment
> > +# TFA is forcing the host compiler and its flags in the Makefile using :=
> > +# assignment for GCC and CFLAGS.
> > +# To properly use the native toolchain of yocto and the right libraries we
> need
> > +# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > +# script to force passing to gcc the right CFLAGS and LDFLAGS
> > do_compile() {
> > + # Create an host gcc build parser to ensure the proper include path is
> used
> > + mkdir -p bin
> > + echo "#!/usr/bin/env bash" > bin/gcc
> > + echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS}
> \$@" >> bin/gcc
> > + chmod a+x bin/gcc
> > + export PATH="$PWD/bin:$PATH"
> > oe_runmake ${TFA_BUILD_TARGET}
> > }
> >
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.1.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.1.bb
> > index e8933fb..4d41202 100644
> > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_2.1.bb
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.1.bb
> > @@ -1,6 +1,9 @@
> > #
> > # Trusted firmware-A 2.1
> > #
> > +
> > +require trusted-firmware-a.inc
> > +
> > SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-
> a.git;protocol=https;name=tfa"
> >
> > # Use TF-A for version
> > @@ -33,20 +36,3 @@ LIC_FILES_CHKSUM_MBEDTLS += " \
> >
> > SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > SRC_URI[mbedtls.sha256sum] =
> "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4
> "
> > -
> > -require trusted-firmware-a.inc
> > -
> > -# The following hack is needed to fit properly in yocto build environment
> > -# TFA is forcing the host compiler and its flags in the Makefile using :=
> > -# assignment for GCC and CFLAGS.
> > -# To properly use the native toolchain of yocto and the right libraries we
> need
> > -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > -# script to force passing to gcc the right CFLAGS and LDFLAGS
> > -do_compile_prepend() {
> > - #Create an host gcc build parser to ensure the proper include path is
> used
> > - mkdir -p bin
> > - echo "#!/usr/bin/env bash" > bin/gcc
> > - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS}
> \$@" >> bin/gcc
> > - chmod a+x bin/gcc
> > - export PATH="$PWD/bin:$PATH"
> > -}
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.2.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.2.bb
> > new file mode 100644
> > index 0000000..4d5316e
> > --- /dev/null
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.2.bb
> > @@ -0,0 +1,38 @@
> > +#
> > +# Trusted firmware-A 2.2
> > +#
> > +
> > +require trusted-firmware-a.inc
> > +
> > +SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-
> a.git;protocol=https;name=tfa"
> > +
> > +# Use TF-A for version
> > +SRCREV_FORMAT = "tfa"
> > +
> > +# TF-A v2.2
> > +SRCREV_tfa = "7192b956bde11652a835eee0724dca0e403fee90"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +LIC_FILES_CHKSUM =
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > +
> > +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> > +SRC_URI[tfa.sha256sum] =
> "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> > +
> > +#
> > +# mbed TLS source
> > +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > +#
> > +
> > +SRC_URI_MBEDTLS =
> "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;dest
> suffix=git/mbedtls"
> > +
> > +# mbed TLS v2.16.2
> > +SRCREV_mbedtls = "d81c11b8ab61fd5b2da8133aa73c5fe33a0633eb"
> > +
> > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > + file://mbedtls/apache-
> 2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > + "
> > +
> > +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > +SRC_URI[mbedtls.sha256sum] =
> "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4
> "
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.3.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.3.bb
> > new file mode 100644
> > index 0000000..bfda87b
> > --- /dev/null
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_2.3.bb
> > @@ -0,0 +1,38 @@
> > +#
> > +# Trusted firmware-A 2.3
> > +#
> > +
> > +require trusted-firmware-a.inc
> > +
> > +SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-
> a.git;protocol=https;name=tfa"
> > +
> > +# Use TF-A for version
> > +SRCREV_FORMAT = "tfa"
> > +
> > +# TF-A v2.3
> > +SRCREV_tfa = "ecd27ad85f1eba29f6bf92c39dc002c85b07dad5"
> > +
> > +S = "${WORKDIR}/git"
> > +
> > +LIC_FILES_CHKSUM =
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > +
> > +SRC_URI[tfa.md5sum] = "75c8f4958fb493d9bd7a8e5a9636ec18"
> > +SRC_URI[tfa.sha256sum] =
> "7c4c00a4f28d3cfbb235fd1a1fb28c4d2fc1d657c9301686e7d8824ef575d059"
> > +
> > +#
> > +# mbed TLS source
> > +# Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > +#
> > +
> > +SRC_URI_MBEDTLS =
> "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;dest
> suffix=git/mbedtls"
> > +
> > +# mbed TLS v2.18.1
> > +SRCREV_mbedtls = "ca933c7e0c9e84738b168b6b0feb89af4183a60a"
> > +
> > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > + file://mbedtls/apache-
> 2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57 \
> > + file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > + "
> > +
> > +SRC_URI[mbedtls.md5sum] = "37cdec398ae9ebdd4640df74af893c95"
> > +SRC_URI[mbedtls.sha256sum] =
> "a6834fcd7b7e64b83dfaaa6ee695198cb5019a929b2806cb0162e049f98206a4
> "
> > diff --git a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_git.bb b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_git.bb
> > index 4bf3ae5..c443ecd 100644
> > --- a/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-a_git.bb
> > +++ b/meta-arm/recipes-bsp/trusted-firmware-a/trusted-firmware-
> a_git.bb
> > @@ -9,30 +9,23 @@ DEFAULT_PREFERENCE = "-1"
> > require trusted-firmware-a.inc
> >
> > SRC_URI = "git://git.trustedfirmware.org/TF-A/trusted-firmware-
> a.git;protocol=https;name=tfa"
> > +
> > +# Use TF-A for version
> > SRCREV_FORMAT = "tfa"
> > -LIC_FILES_CHKSUM ?=
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> >
> > +S = "${WORKDIR}/git"
> > +
> > +LIC_FILES_CHKSUM =
> "file://docs/license.rst;md5=189505435dbcdcc8caa63c46fe93fa89"
> > +
> > +#
> > # mbed TLS source
> > # Those are used in trusted-firmware-a.inc if TFA_MBEDTLS is set to 1
> > +#
> > +
> > SRC_URI_MBEDTLS =
> "git://github.com/ARMmbed/mbedtls.git;name=mbedtls;protocol=https;dest
> suffix=git/mbedtls"
> > -LIC_FILES_CHKSUM_MBEDTLS ?= " \
> > +
> > +LIC_FILES_CHKSUM_MBEDTLS += " \
> > file://mbedtls/apache-2.0.txt;md5=3b83ef96387f14655fc854ddc3c6bd57
> \
> > file://mbedtls/LICENSE;md5=302d50a6369f5f22efdb674db908167a \
> > "
> >
> > -S = "${WORKDIR}/git"
> > -
> > -# The following hack is needed to fit properly in yocto build environment
> > -# TFA is forcing the host compiler and its flags in the Makefile using :=
> > -# assignment for GCC and CFLAGS.
> > -# To properly use the native toolchain of yocto and the right libraries we
> need
> > -# to pass the proper flags to gcc. This is achieved here by creating a gcc
> > -# script to force passing to gcc the right CFLAGS and LDFLAGS
> > -do_compile_prepend() {
> > - # Create an host gcc build parser to ensure the proper include path is
> used
> > - mkdir -p bin
> > - echo "#!/usr/bin/env bash" > bin/gcc
> > - echo "$(which ${BUILD_CC}) ${BUILD_CFLAGS} ${BUILD_LDFLAGS}
> \$@" >> bin/gcc
> > - chmod a+x bin/gcc
> > - export PATH="$PWD/bin:$PATH"
> > -}
> > --
> > 2.17.1
> >
>
> >
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2020-05-12 8:56 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-05-12 0:20 [PATCH] Add recipes for TF-A versions 2.2 and 2.3 Jon Mason
2020-05-12 0:31 ` [meta-arm] " Denys Dmytriyenko
2020-05-12 8:56 ` Diego Sueiro
2020-05-12 0:37 ` Joshua Watt
2020-05-12 0:40 ` Denys Dmytriyenko
2020-05-12 3:57 ` Jon Mason
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.