diff options
Diffstat (limited to 'debian')
-rw-r--r-- | debian/arm-trusted-firmware-tools.install | 2 | ||||
-rw-r--r-- | debian/arm-trusted-firmware-tools.lintian-overrides | 2 | ||||
-rw-r--r-- | debian/arm-trusted-firmware.docs | 1 | ||||
-rw-r--r-- | debian/arm-trusted-firmware.install | 1 | ||||
-rw-r--r-- | debian/arm-trusted-firmware.lintian-overrides | 5 | ||||
-rw-r--r-- | debian/changelog | 271 | ||||
-rw-r--r-- | debian/control | 40 | ||||
-rw-r--r-- | debian/copyright | 475 | ||||
-rw-r--r-- | debian/patches/series | 1 | ||||
-rw-r--r-- | debian/patches/use-ldflags-with-fiptool-and-cert-create | 28 | ||||
-rwxr-xr-x | debian/rules | 94 | ||||
-rw-r--r-- | debian/salsa-ci.yml | 12 | ||||
-rw-r--r-- | debian/source/format | 1 | ||||
-rw-r--r-- | debian/upstream/metadata | 2 | ||||
-rw-r--r-- | debian/watch | 7 |
15 files changed, 942 insertions, 0 deletions
diff --git a/debian/arm-trusted-firmware-tools.install b/debian/arm-trusted-firmware-tools.install new file mode 100644 index 0000000..1e1bda5 --- /dev/null +++ b/debian/arm-trusted-firmware-tools.install @@ -0,0 +1,2 @@ +tools/fiptool/fiptool /usr/bin/ +tools/cert_create/cert_create /usr/bin/ diff --git a/debian/arm-trusted-firmware-tools.lintian-overrides b/debian/arm-trusted-firmware-tools.lintian-overrides new file mode 100644 index 0000000..3622cfa --- /dev/null +++ b/debian/arm-trusted-firmware-tools.lintian-overrides @@ -0,0 +1,2 @@ +# GPL code is dual-licensed under licenses compatible with openssl. +arm-trusted-firmware-tools binary: possible-gpl-code-linked-with-openssl diff --git a/debian/arm-trusted-firmware.docs b/debian/arm-trusted-firmware.docs new file mode 100644 index 0000000..7239029 --- /dev/null +++ b/debian/arm-trusted-firmware.docs @@ -0,0 +1 @@ +readme.rst diff --git a/debian/arm-trusted-firmware.install b/debian/arm-trusted-firmware.install new file mode 100644 index 0000000..81ddcb8 --- /dev/null +++ b/debian/arm-trusted-firmware.install @@ -0,0 +1 @@ +build/renamed/* usr/lib/arm-trusted-firmware diff --git a/debian/arm-trusted-firmware.lintian-overrides b/debian/arm-trusted-firmware.lintian-overrides new file mode 100644 index 0000000..c64df76 --- /dev/null +++ b/debian/arm-trusted-firmware.lintian-overrides @@ -0,0 +1,5 @@ +# This is boot firmware that needs to be statically linked. +arm-trusted-firmware binary: statically-linked-binary *usr/lib/arm-trusted-firmware/*/bl31.elf* + +# Intended for U-Boot, not linux. +arm-trusted-firmware binary: wrong-section-according-to-package-name admin => kernel diff --git a/debian/changelog b/debian/changelog new file mode 100644 index 0000000..3051b0d --- /dev/null +++ b/debian/changelog @@ -0,0 +1,271 @@ +arm-trusted-firmware (2.10.0+dfsg-1) unstable; urgency=medium + + * New upstream release. + * debian/patches: Drop patches applied upstream. + * debian/patches: Refresh patch to use ldflags. + * debian/copyright: Update for 2.10.0. + + -- Vagrant Cascadian <vagrant@debian.org> Sun, 03 Dec 2023 17:25:38 -0800 + +arm-trusted-firmware (2.9.0+dfsg-3) unstable; urgency=medium + + * Upload to unstable. + + -- Vagrant Cascadian <vagrant@debian.org> Fri, 30 Jun 2023 18:17:00 -0700 + +arm-trusted-firmware (2.9.0+dfsg-2) experimental; urgency=medium + + * debian/rules: Fix variable assignment for sun50i_h6_no_pmic target. + + -- Vagrant Cascadian <vagrant@debian.org> Sun, 18 Jun 2023 20:42:17 -0700 + +arm-trusted-firmware (2.9.0+dfsg-1) experimental; urgency=medium + + [ Manuel Traut ] + * Build for i.MX8MM + + [ Vagrant Cascadian ] + * debian/copyright: Update for 2.9.0. + * debian/control: Update Standards-Version to 4.6.2. + * debian/rules: Build sun50i_a64 with debugging enabled again. + + [ Detlev Casanova ] + * debian/patches: Add mandatory fields in reserved-memory node + * debian/rules: Add platform target specifiers + * debian/rules: Also build bl31 for the rcar platform + + [ Vagrant Cascadian ] + * debian/rules: Disable imx8mq, as it is not well supported upstream. + + [ harry88@gmx.ph ] + * debian/rules: Add sun50i_h6 subplatform without PMIC regulators. + (Closes: #1032395) + + -- Vagrant Cascadian <vagrant@debian.org> Sun, 18 Jun 2023 20:26:00 -0700 + +arm-trusted-firmware (2.8.0+dfsg-1) unstable; urgency=medium + + * New upstream release. + * debian/control: Add openssl to Build-Depends. + * debian/rules: Move sun50i_a64 to platforms_nodebug. + * debian/patches: Refresh for 2.8.0. + * debian/copyright: Update for 2.8.0. + + -- Vagrant Cascadian <vagrant@debian.org> Thu, 24 Nov 2022 22:31:44 -0800 + +arm-trusted-firmware (2.7.0+dfsg-2) unstable; urgency=medium + + * debian/rules: Fix build failure by ignoring warnings for RWX segments. + * debian/rules: Work around gcc-12 bug by passing --param=min-pagesize=0 + in CFLAGS. + * debian/patches: Use LDFLAGS with fiptool and cert_create. + * debian/rules: Enable hardening options. + * Update lintian override for statically-linked-binary. + * Update lintian override for wrong-section-according-to-package-name. + + -- Vagrant Cascadian <vagrant@debian.org> Fri, 05 Aug 2022 20:28:37 -0700 + +arm-trusted-firmware (2.7.0+dfsg-1) experimental; urgency=medium + + * New upstream release. + + [ Vagrant Cascadian ] + * debian/rules: Add imx8mq platform. + * debian/copyright: Update for 2.7.0. + * debian/control: Update Standards Version to 4.6.1. + + [ Ariel D'Alessandro ] + * d/rules: Enable imx8mn target + * d/rules: Unify build rule for both debug and release platforms + * d/rules: Add imx8mn_uart4 target subplatform + + [ Jelmer Vernooij ] + * Set upstream Repository/Repository-Browse fields. + + -- Vagrant Cascadian <vagrant@debian.org> Wed, 08 Jun 2022 20:58:51 -0700 + +arm-trusted-firmware (2.6+dfsg-1) unstable; urgency=medium + + * New upstream release. + * debian/rules: Adjust installation of upstream changelog. + * Remove upstream signing key. + + -- Vagrant Cascadian <vagrant@debian.org> Fri, 26 Nov 2021 17:26:17 -0800 + +arm-trusted-firmware (2.6~rc0+dfsg-1) experimental; urgency=medium + + * New upstream release candidate. + * debian/control: Remove "native" qualifier from binutils-arm-none-eabi + in Build-Depends. + * debian/control: Remove "native" qualifier from gcc-arm-none-eabi in + Build-Depends. + + -- Vagrant Cascadian <vagrant@debian.org> Wed, 17 Nov 2021 10:31:10 -0800 + +arm-trusted-firmware (2.5+dfsg-2) unstable; urgency=medium + + * debian/control: Update Standards-Version to 4.6.0, no changes. + + -- Vagrant Cascadian <vagrant@debian.org> Wed, 08 Sep 2021 19:35:43 -0700 + +arm-trusted-firmware (2.5+dfsg-1) experimental; urgency=medium + + * New upstream release + + [ Nicolas Boulenguez ] + * Make each command run by Make visible in the build log + (Closes: #979278) + * Read DEB_HOST_ARCH from /usr/share/architecture.mk instead of + environment (Closes: #986059) + * Fix cross build of tools by setting HOSTCC from CC (Closes: #986058) + * Fix dependencies allowing cross build of rk3399 (Closes: #986057) + * Lintian override for non-linux firmware (Closes: #986056) + * Drop unused shlibs:Depends debhelper variable from firmware package + (Closes: #986055) + + [ Vagrant Cascadian ] + * debian/control: Drop explicit branch from Vcs-Git. + * debian/copyright: Update for 2.5. + * Build rpi3 and rpi4 platforms. (Closes: #989579) + + -- Vagrant Cascadian <vagrant@debian.org> Tue, 08 Jun 2021 20:04:40 -0700 + +arm-trusted-firmware (2.4+dfsg-2) unstable; urgency=medium + + * Upload to unstable. + + -- Vagrant Cascadian <vagrant@debian.org> Sat, 16 Jan 2021 17:29:49 -0800 + +arm-trusted-firmware (2.4+dfsg-1) experimental; urgency=medium + + [ Vagrant Cascadian ] + * debian/targets: Enable g12a target (Closes: #973255). + * Enable Build-Profile pkg.arm-trusted-firmware.notools to disable + building of arm-trusted-firmware-tools. + * debian/targets: Enable sun50i_h6 target (Closes: #979179). + + [ Nicolas Boulenguez ] + * Update debian/watch (Closes: #977803). + * Delegate changelog renaming to debhelper (Closes: #977803). + * Let dh_auto_build call sub-Makes (Closes: #977803). + + [ Vagrant Cascadian ] + * arm-trusted-firmware: Update lintian overrides to use a glob. Thanks + to Nicolas Boulenguez. (Closes: #977803) + * debian/control: Update Standards-Version to 4.5.1. + + -- Vagrant Cascadian <vagrant@debian.org> Mon, 04 Jan 2021 13:40:33 -0800 + +arm-trusted-firmware (2.3+dfsg-3) unstable; urgency=medium + + * Only build firmware on arm64. + * Pass empty CFLAGS and LDFLAGS to firmware build + * Pass CFLAGS and CPPFLAGS to fiptool and cert_create. + * Drop hardening options that no longer cause issues for the firmware + build. + * Drop --debug flag from make invocation. + * Use -ffile-prefix-map in TF_CFLAGS for reproducible builds. + * Drop -fno-pie from TF_CFLAGS as it is handled upstream. + + -- Vagrant Cascadian <vagrant@debian.org> Sat, 17 Oct 2020 22:17:48 -0700 + +arm-trusted-firmware (2.3+dfsg-2) experimental; urgency=medium + + * debian/control: arm-trusted-firmware: Remove description comparing to + Intel ME. Thanks to Pali Rohár. + * debian/control: Update to debhelper-compat 13. + * debian/rules: Make builds verbose by default, respecting + DEB_BUILD_OPTIONS=terse. + * Add arm-trusted-firmware-tools (Closes: #931397). Thanks to Ying-Chun + Liu (PaulLiu). + + -- Vagrant Cascadian <vagrant@debian.org> Sat, 10 Oct 2020 19:22:41 -0700 + +arm-trusted-firmware (2.3+dfsg-1) unstable; urgency=medium + + * Remove binary files with unknown licensing (Closes: #961697). + * Update debian/copyright. + * Update debian/watch. + + -- Vagrant Cascadian <vagrant@debian.org> Wed, 08 Jul 2020 08:26:49 -0700 + +arm-trusted-firmware (2.3-1) unstable; urgency=medium + + * New upstream release. + * debian/copyright: Update for new upstream version. + * debian/upstream: Add upstream signing key. + + -- Vagrant Cascadian <vagrant@debian.org> Sun, 26 Apr 2020 10:34:37 -0700 + +arm-trusted-firmware (2.2-3) unstable; urgency=medium + + [ Vagrant Cascadian ] + * debian/control: + - Add build-deps for rk3399. + - Update Standards-Version to 4.5.0, no changes. + * Enable rk3399 target. + * Add lintian override for rk3399. + + [ Walter Lozano ] + * Fix build for rk3399 (Closes: #956298) + + -- Vagrant Cascadian <vagrant@debian.org> Fri, 10 Apr 2020 08:34:34 -0700 + +arm-trusted-firmware (2.2-2) unstable; urgency=medium + + * Upload to unstable. + + -- Vagrant Cascadian <vagrant@debian.org> Wed, 08 Jan 2020 00:24:14 -0800 + +arm-trusted-firmware (2.2-1) experimental; urgency=medium + + * New upstream version. + * debian/copyright: Updates for v2.2. + * debian/control: Update Standards-Version to 4.4.1, no changes needed. + * debian/control: Add Breaks on u-boot-rockchip less than 2020.01~rc5. + + -- Vagrant Cascadian <vagrant@debian.org> Wed, 25 Dec 2019 18:46:10 -0800 + +arm-trusted-firmware (2.1-3) unstable; urgency=medium + + * Update URLs for move to trustedfirmware.org. + * debian/control: Update to Standards-Version 4.4.0. + + -- Vagrant Cascadian <vagrant@debian.org> Mon, 08 Jul 2019 10:25:12 -0700 + +arm-trusted-firmware (2.1-2) experimental; urgency=medium + + * Build rk3328 bl31.elf. + * Drop Recommends on u-boot-sunxi. + + -- Vagrant Cascadian <vagrant@debian.org> Mon, 13 May 2019 16:23:51 -0700 + +arm-trusted-firmware (2.1-1) experimental; urgency=medium + + * New upstream version. + * debian/control: + - Update Standards-Version to 4.3.0, no changes needed. + - Switch to debhelper-compat 12. + + -- Vagrant Cascadian <vagrant@debian.org> Wed, 10 Apr 2019 01:02:30 -0700 + +arm-trusted-firmware (2.0+290.98aab974-2) unstable; urgency=medium + + * Upload to unstable. + + -- Vagrant Cascadian <vagrant@debian.org> Tue, 27 Nov 2018 15:33:29 -0800 + +arm-trusted-firmware (2.0+290.98aab974-1) experimental; urgency=medium + + * Upstream git snapshot from commit 98aab97484b27e40aa74a93e5d1c1ac037a7e0b8. + - Fixes for USB and Ethernet on allwinner platforms. + * Enable gxbb (tested on Odroid-C2). + + -- Vagrant Cascadian <vagrant@debian.org> Mon, 26 Nov 2018 23:41:28 -0800 + +arm-trusted-firmware (2.0+267~cabe0a31-1) experimental; urgency=medium + + * Upstream git snapshot from commit cabe0a31801e99e7abb84d2114ded6bb56f3c71e. + * Initial upload to Debian (Closes: #881620). + + -- Vagrant Cascadian <vagrant@debian.org> Mon, 19 Nov 2018 14:25:59 -0800 diff --git a/debian/control b/debian/control new file mode 100644 index 0000000..587e2f3 --- /dev/null +++ b/debian/control @@ -0,0 +1,40 @@ +Source: arm-trusted-firmware +Section: admin +Priority: optional +Maintainer: Vagrant Cascadian <vagrant@debian.org> +Standards-Version: 4.6.2 +Build-Depends: debhelper-compat (= 13), + gcc-arm-none-eabi [arm64], + binutils-arm-none-eabi [arm64], + libssl-dev <!pkg.arm-trusted-firmware.notools>, + openssl, +Rules-Requires-Root: no +Homepage: https://www.trustedfirmware.org/ +Vcs-Browser: https://salsa.debian.org/debian/arm-trusted-firmware +Vcs-Git: https://salsa.debian.org/debian/arm-trusted-firmware.git + +Package: arm-trusted-firmware +Architecture: arm64 +Depends: ${misc:Depends} +Breaks: u-boot-rockchip (<< 2020.01~rc5) +Description: "secure world" software for ARM SoCs - firmware + The "secure world" on arm64 machines is a special level of CPU + privilege that is hidden from the normal OS, and has complete + control over the system. It provides both initialization during + early boot stages (before u-boot or EFI) and system monitor + functionality once the machine is booted up. + . + This package includes the firmware binaries. + +Package: arm-trusted-firmware-tools +Architecture: any +Depends: ${shlibs:Depends}, ${misc:Depends} +Build-Profiles: <!pkg.arm-trusted-firmware.notools> +Description: "secure world" software for ARM SoCs - tools + The "secure world" on arm64 machines is a special level of CPU + privilege that is hidden from the normal OS, and has complete + control over the system. It provides both initialization during + early boot stages (before u-boot or EFI) and system monitor + functionality once the machine is booted up. + . + This package includes helper tools. diff --git a/debian/copyright b/debian/copyright new file mode 100644 index 0000000..5c58dc1 --- /dev/null +++ b/debian/copyright @@ -0,0 +1,475 @@ +Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ +Upstream-Name: arm-trusted-firmware +Source: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/ +Files-Excluded: + plat/rockchip/rk3368/drivers/ddr/rk3368_ddr_reg_resume_V1.05.bin + plat/rockchip/rk3399/drivers/dp/hdcp.bin + plat/arm/board/common/protpk/arm_protpk_rsa_sha256.bin + plat/arm/board/common/rotpk/arm_rotpk_rsa_sha256.bin + plat/arm/board/common/rotpk/arm_rotpk_ecdsa_sha256.bin + +Files: * +Copyright: + 1989 Regents of the University of California. + 1998 Softweyr LLC. All rights reserved. + 2001 David E. O'Brien + 2005 MontaVista Software, Inc. + 2005 Nokia Corporation + 2011 The FreeBSD Foundation + 2012-2021 Roberto E. Vargas Caballero + 2013-2023 ARM Limited and Contributors. All rights reserved. + 2013-2023 Arm Limited and Contributors. All rights reserved. + 2014-2023 Arm Limited. All rights reserved. + 2014-2016 Freescale Semiconductor, Inc. + 2014 Linaro Limited. All rights reserved. + 2014-2023 STMicroelectronics - All Rights Reserved + 2014 STMicroelectronics International N.V. + 2015-2021 Broadcom + 2015-2023 NVIDIA Corporation. All rights reserved. + 2015-2023 Renesas Electronics Corporation. + 2015-2023 Renesas Electronics Corporation. All rights + 2015-2023 Renesas Electronics Corporation. All rights reserved. + 2016-2020 Marvell International Ltd. + 2016-2022 Linaro Limited. All rights reserved. + 2016-2021 Marvell International Ltd. + 2016-2023 NXP + 2017-2020 Arm Limited and Contributors. All rights reserved. + 2017-2023 NVIDIA CORPORATION. All rights reserved. + 2017-2022 NXP Semiconductors + 2017-2023 Nuvoton Ltd. + 2017-2023 Nuvoton Technology Corp. + 2017-2022 Xilinx, Inc. All rights reserved. + 2018 Andre Przywara <osp@andrep.de> + 2018-2020 Arm Limited and Contributors. + 2018 Icenowy Zheng <icenowy@aosc.io> + 2018-2019 Linaro + 2018-2022 Texas Instruments Incorporated - https://www.ti.com/ + 2018-2021 The Linux Foundation. All rights reserved. + 2019-2023 STMicroelectronics - All Rights Reserved + 2019-2020 Broadcom. + 2019 Carlo Caione <ccaione@baylibre.com> + 2019-2023 Intel Corporation. All rights reserved. + 2019-2022 Linaro Limited + 2019-2020 Linaro Limited and Contributors. + 2019-2023 Linaro Limited and Contributors. All rights reserved. + 2019-2023 MediaTek Inc. All rights reserved. + 2019-2022 NXP. All rights reserved. + 2019 Remi Pommarel <repk@triplefau.lt> + 2019 Repk repk@triplefau.lt + 2019-2022 Socionext Inc. All rights reserved. + 2019 Ying-Chun Liu (PaulLiu) <paul.liu@linaro.org> + 2020-2022 ARM Limited and Contributors. All rights reserved. + 2020-2023 Google LLC. All rights reserved. + 2020 Marek Behun, CZ.NIC + 2020 Marvell Technology Group Ltd. All rights reserved. + 2020 MediaTek Inc. All rights reserved. + 2020 NXP. + 2020 Nuvia Inc + 2020-2021 Sartura Ltd. + 2020-2021 Siemens AG + 2021 Xilinx Inc. + 2021 Arm + 2021 Arm Limited + 2021 Globalscale technologies, Inc. + 2021 Marek Behun <marek.behun@nic.cz> + 2021-2022 ProvenRun S.A.S. All rights reserved. + 2021 Semihalf. + 2021 Sipeed + 2021-2023 Stephan Gerhold <stephan@gerhold.net> + 2022-2023 Advanced Micro Devices, Inc. All rights reserved. + 2022-2023 Arm Ltd. All rights reserved. + 2022 Fujitsu Limited and Contributors. All rights reserved. + 2022 Leica Geosystems AG + 2022 Linaro + 2022-2023 Linaro. + 2022 Mediatek Inc. All rights reserved. + 2022 Qualcomm Innovation Center, Inc. All rights reserved. + 2022 The Hafnium Authors. + 2023 Advanced Micro Devices. All rights reserved. + 2023 Arm Limited. All rights reserved + 2023 Aspeed Technology Inc. + 2023 Pengutronix. All rights reserved. +License: BSD-3-Clause + +Files: + drivers/st/clk/clk-stm32-core.c + drivers/st/clk/clk-stm32-core.h + drivers/st/clk/clk-stm32mp13.c + drivers/st/clk/stm32mp1_clk.c + drivers/st/ddr/stm32mp1_ddr.c + drivers/st/ddr/stm32mp1_ram.c + drivers/st/fmc/stm32_fmc2_nand.c + drivers/st/spi/stm32_qspi.c + fdts/stm32mp13-bl2.dtsi + fdts/stm32mp13-ddr.dtsi + fdts/stm32mp13-ddr3-1x4Gb-1066-binF.dtsi + fdts/stm32mp13-fw-config.dtsi + fdts/stm32mp13-pinctrl.dtsi + fdts/stm32mp131.dtsi + fdts/stm32mp133.dtsi + fdts/stm32mp135.dtsi + fdts/stm32mp135f-dk-fw-config.dts + fdts/stm32mp135f-dk.dts + fdts/stm32mp13xa.dtsi + fdts/stm32mp13xc.dtsi + fdts/stm32mp13xd.dtsi + fdts/stm32mp13xf.dtsi + fdts/stm32mp15-bl2.dtsi + fdts/stm32mp15-bl32.dtsi + fdts/stm32mp15-ddr.dtsi + fdts/stm32mp15-ddr3-1x2Gb-1066-binG.dtsi + fdts/stm32mp15-ddr3-1x4Gb-1066-binG.dtsi + fdts/stm32mp15-ddr3-2x4Gb-1066-binG.dtsi + fdts/stm32mp15-ddr3-dhsom-2x4Gb-1066-binG.dtsi + fdts/stm32mp15-fw-config.dtsi + fdts/stm32mp15-pinctrl.dtsi + fdts/stm32mp151.dtsi + fdts/stm32mp151a-prtt1a-fw-config.dts + fdts/stm32mp151a-prtt1a.dts + fdts/stm32mp153.dtsi + fdts/stm32mp157.dtsi + fdts/stm32mp157a-avenger96-fw-config.dts + fdts/stm32mp157a-avenger96.dts + fdts/stm32mp157a-dhcor-avenger96-fw-config.dts + fdts/stm32mp157a-dk1-fw-config.dts + fdts/stm32mp157a-dk1.dts + fdts/stm32mp157a-ed1-fw-config.dts + fdts/stm32mp157a-ev1-fw-config.dts + fdts/stm32mp157c-dhcom-pdk2-fw-config.dts + fdts/stm32mp157c-dhcom-pdk2.dts + fdts/stm32mp157c-dk2-fw-config.dts + fdts/stm32mp157c-dk2.dts + fdts/stm32mp157c-ed1-fw-config.dts + fdts/stm32mp157c-ed1.dts + fdts/stm32mp157c-ev1-fw-config.dts + fdts/stm32mp157c-ev1.dts + fdts/stm32mp157c-lxa-mc1-fw-config.dts + fdts/stm32mp157c-lxa-mc1.dts + fdts/stm32mp157c-odyssey-fw-config.dts + fdts/stm32mp157c-odyssey-som.dtsi + fdts/stm32mp157c-odyssey.dts + fdts/stm32mp157d-dk1-fw-config.dts + fdts/stm32mp157d-ed1-fw-config.dts + fdts/stm32mp157d-ev1-fw-config.dts + fdts/stm32mp157f-dk2-fw-config.dts + fdts/stm32mp157f-ed1-fw-config.dts + fdts/stm32mp157f-ev1-fw-config.dts + fdts/stm32mp15xc.dtsi + fdts/stm32mp15xx-dhcom-pdk2.dtsi + fdts/stm32mp15xx-dhcom-som.dtsi + fdts/stm32mp15xx-dkx.dtsi + fdts/stm32mp15xx-osd32.dtsi + fdts/stm32mp15xxaa-pinctrl.dtsi + fdts/stm32mp15xxab-pinctrl.dtsi + fdts/stm32mp15xxac-pinctrl.dtsi + fdts/stm32mp15xxad-pinctrl.dtsi + fdts/stm32mp25-bl2.dtsi + fdts/stm32mp25-pinctrl.dtsi + fdts/stm32mp251.dtsi + fdts/stm32mp253.dtsi + fdts/stm32mp255.dtsi + fdts/stm32mp257.dtsi + fdts/stm32mp257f-ev1.dts + fdts/stm32mp25xc.dtsi + fdts/stm32mp25xf.dtsi + fdts/stm32mp25xxai-pinctrl.dtsi + fdts/stm32mp25xxak-pinctrl.dtsi + fdts/stm32mp25xxal-pinctrl.dtsi + include/drivers/st/stm32_fmc2_nand.h + include/drivers/st/stm32_qspi.h + include/drivers/st/stm32mp1_ddr.h + include/drivers/st/stm32mp1_ddr_regs.h + include/drivers/st/stm32mp_ddr.h + include/drivers/st/stm32mp_ddrctrl_regs.h + include/dt-bindings/clock/stm32mp1-clks.h + include/dt-bindings/clock/stm32mp1-clksrc.h + include/dt-bindings/clock/stm32mp13-clksrc.h + include/dt-bindings/clock/stm32mp15-clksrc.h + include/dt-bindings/clock/stm32mp25-clksrc.h + include/dt-bindings/pinctrl/stm32-pinfunc.h + include/dt-bindings/reset/stm32mp1-resets.h + include/dt-bindings/soc/st,stm32-etzpc.h + include/dt-bindings/soc/stm32mp13-tzc400.h + include/dt-bindings/soc/stm32mp15-tzc400.h +Copyright: + 2017-2022 STMicroelectronics + 2017-2023 STMicroelectronics - All Rights Reserved + 2019 Arrow Electronics + 2019 Linaro Ltd + 2019-2020 Marek Vasut <marex@denx.de> + 2019 STMicroelectronics. All Rights Reserved. + 2020 Ahmad Fatoum, Pengutronix + 2020 DH electronics - All Rights Reserved + 2021 Grzegorz Szymaszek. + 2022 DH electronics GmbH + 2023 Oleksij Rempel <kernel@pengutronix.de>, Pengutronix + 2023 Protonic Holland - All Rights Reserved +License: GPL-2.0+ OR BSD-3-Clause + +Files: + lib/compiler-rt/builtins/arm/aeabi_ldivmod.S + lib/compiler-rt/builtins/arm/aeabi_memcpy.S + lib/compiler-rt/builtins/arm/aeabi_memset.S + lib/compiler-rt/builtins/arm/aeabi_uldivmod.S + lib/compiler-rt/builtins/assembly.h + lib/compiler-rt/builtins/ctzdi2.c + lib/compiler-rt/builtins/divdi3.c + lib/compiler-rt/builtins/divmoddi4.c + lib/compiler-rt/builtins/int_div_impl.inc + lib/compiler-rt/builtins/int_endianness.h + lib/compiler-rt/builtins/int_lib.h + lib/compiler-rt/builtins/int_math.h + lib/compiler-rt/builtins/int_types.h + lib/compiler-rt/builtins/int_util.h + lib/compiler-rt/builtins/lshrdi3.c + lib/compiler-rt/builtins/popcountdi2.c + lib/compiler-rt/builtins/popcountsi2.c + lib/compiler-rt/builtins/udivmoddi4.c +Copyright: + NONE +License: Apache-2.0 WITH LLVM exception + +Files: + include/lib/libfdt/fdt.h + include/lib/libfdt/libfdt.h + include/lib/libfdt/libfdt_env.h + lib/libfdt/fdt.c + lib/libfdt/fdt_addresses.c + lib/libfdt/fdt_empty_tree.c + lib/libfdt/fdt_overlay.c + lib/libfdt/fdt_ro.c + lib/libfdt/fdt_rw.c + lib/libfdt/fdt_strerror.c + lib/libfdt/fdt_sw.c + lib/libfdt/fdt_wip.c + lib/libfdt/libfdt_internal.h +Copyright: + 2006-2012 David Gibson, IBM Corporation. + 2012 Kim Phillips, Freescale Semiconductor. + 2014 David Gibson <david@gibson.dropbear.id.au> + 2016 Free Electrons + 2016 NextThing Co. + 2018 embedded brains GmbH +License: GPL-2.0+ OR BSD-2-Clause + +Files: + include/lib/libc/aarch64/float.h +Copyright: + 1989 Regents of the University of California. +License: BSD-3-Clause + +Files: include/tools_share/uuid.h +Copyright: + 2002 Marcel Moolenaar +License: BSD-2-Clause + +Files: + fdts/arm_fpga.dts + fdts/fvp-base-psci-common.dtsi + fdts/n1sdp-multi-chip.dts + fdts/n1sdp-single-chip.dts + fdts/n1sdp.dtsi + include/dt-bindings/reset/stm32mp13-resets.h + include/dt-bindings/reset/stm32mp15-resets.h +Copyright: + 2017-2021 ARM Limited and Contributors. All rights reserved. + 2018-2022 STMicroelectronics + 2019-2022 Arm Limited. + 2020 Arm Limited. All rights reserved. +License: GPL-2.0 or BSD-3-Clause + +Files: + fdts/stm32mp157a-dhcor-avenger96.dts + fdts/stm32mp15xx-dhcor-avenger96.dtsi + fdts/stm32mp15xx-dhcor-io1v8.dtsi + fdts/stm32mp15xx-dhcor-som.dtsi + include/dt-bindings/clock/stm32mp25-clks.h +Copyright: + 2019 Linaro Ltd + 2020 Marek Vasut <marex@denx.de> + 2022 DH electronics GmbH + 2023 STMicroelectronics - All Rights Reserved +License: GPL-2.0 OR BSD-3-Clause + +Files: + include/dt-bindings/interrupt-controller/arm-gic.h + include/dt-bindings/interrupt-controller/irq.h +Copyright: + 2019-2021 Arm Limited and Contributors. All rights reserved. +License: MIT + +Files: + drivers/arm/dcc/dcc_console.c + lib/compiler-rt/compiler-rt.mk + plat/common/ubsan.c +Copyright: + 2015-2021 Xilinx Inc. + 2016 Linaro Limited + 2017-2019 Arm Limited and Contributors. All rights reserved. + 2019 ARM Limited. All rights reserved. +License: BSD-2-Clause + +Files: + include/dt-bindings/clock/stm32mp13-clks.h + include/dt-bindings/clock/stm32mp15-clks.h + include/dt-bindings/reset/stm32mp25-resets.h +Copyright: + 2018-2022 STMicroelectronics + 2023 STMicroelectronics - All Rights Reserved +License: GPL-2.0+ or BSD-3-Clause + +Files: + include/lib/libc/endian.h + lib/libc/strnlen.c +Copyright: + 2002 Thomas Moestl <tmm@FreeBSD.org> + 2009 David Schultz <das@FreeBSD.org> + 2018 Arm Limited and Contributors. +License: BSD-2-Clause + +Files: + lib/libc/strlcat.c + lib/libc/strlcpy.c +Copyright: + 1998-2015 Todd C. Miller <Todd.Miller@courtesan.com> +License: ISC + +Files: + fdts/rtsm_ve-motherboard.dtsi +Copyright: + 2012-2022 ARM Ltd. +License: GPL-2.0 OR MIT + +Files: + lib/zlib/* +Copyright: + 1995-2022 Mark Adler + 1995-2023 Jean-loup Gailly, Mark Adler +License: Zlib + +Files: + lib/zlib/tf_gunzip.c + lib/zlib/zlib.mk +Copyright: + 2018-2021 Arm Limited and Contributors. All rights reserved. +License: BSD-3-clause + +License: BSD-3-clause + Redistribution and use in source and binary forms, with or without modification, + are permitted provided that the following conditions are met: + . + - Redistributions of source code must retain the above copyright notice, this + list of conditions and the following disclaimer. + . + - 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. + . + - Neither the name of Arm nor the names of its contributors may be used to + endorse or promote products derived from this software without specific prior + written permission. + . + THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS 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 COPYRIGHT HOLDER 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. + +License: BSD-2-clause + 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 AUTHOR ``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 AUTHOR 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. + +License: GPL-2.0+ + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; either version 2 of the License, or (at + your option) any later version. + . + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + On Debian systems, the full text of the GNU General Public License + version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. + +License: GPL-2.0 + This library is free software; you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation; version 2 of the License. + . + This library is distributed in the hope that it will be useful, but + WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + General Public License for more details. + . + On Debian systems, the full text of the GNU General Public License + version 2 can be found in the file `/usr/share/common-licenses/GPL-2'. + +License: ISC + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + +License: Zlib + This software is provided 'as-is', without any express or implied + warranty. In no event will the authors be held liable for any damages + arising from the use of this software. + . + Permission is granted to anyone to use this software for any purpose, + including commercial applications, and to alter it and redistribute it + freely, subject to the following restrictions: + . + 1. The origin of this software must not be misrepresented; you must not + claim that you wrote the original software. If you use this software + in a product, an acknowledgment in the product documentation would be + appreciated but is not required. + 2. Altered source versions must be plainly marked as such, and must not be + misrepresented as being the original software. + 3. This notice may not be removed or altered from any source distribution. + +License: MIT + Permission is hereby granted, free of charge, to any person obtaining a copy + of this software and associated documentation files (the "Software"), to deal + in the Software without restriction, including without limitation the rights + to use, copy, modify, merge, publish, distribute, sublicense, and/or sell + copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + . + The above copyright notice and this permission notice shall be included in all + copies or substantial portions of the Software. + +License: Apache-2.0 WITH LLVM exception + Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. + See https://llvm.org/LICENSE.txt for license information. diff --git a/debian/patches/series b/debian/patches/series new file mode 100644 index 0000000..e935d9a --- /dev/null +++ b/debian/patches/series @@ -0,0 +1 @@ +use-ldflags-with-fiptool-and-cert-create diff --git a/debian/patches/use-ldflags-with-fiptool-and-cert-create b/debian/patches/use-ldflags-with-fiptool-and-cert-create new file mode 100644 index 0000000..272bf45 --- /dev/null +++ b/debian/patches/use-ldflags-with-fiptool-and-cert-create @@ -0,0 +1,28 @@ +Use LDFLAGS when building fiptool and cert_create. + +Index: arm-trusted-firmware/tools/cert_create/Makefile +=================================================================== +--- arm-trusted-firmware.orig/tools/cert_create/Makefile ++++ arm-trusted-firmware/tools/cert_create/Makefile +@@ -92,7 +92,7 @@ ${BINARY}: ${OBJECTS} Makefile + @echo 'const char build_msg[] = "Built : "__TIME__", "__DATE__; \ + const char platform_msg[] = "${PLAT_MSG}";' | \ + ${HOSTCC} -c ${HOSTCCFLAGS} -xc - -o src/build_msg.o +- ${Q}${HOSTCC} src/build_msg.o ${OBJECTS} ${LIB_DIR} ${LIB} -o $@ ++ ${Q}${HOSTCC} src/build_msg.o ${OBJECTS} ${LIB_DIR} ${LIB} ${LDFLAGS} -o $@ + + %.o: %.c + @echo " HOSTCC $<" +Index: arm-trusted-firmware/tools/fiptool/Makefile +=================================================================== +--- arm-trusted-firmware.orig/tools/fiptool/Makefile ++++ arm-trusted-firmware/tools/fiptool/Makefile +@@ -81,7 +81,7 @@ all: --openssl ${PROJECT} + + ${PROJECT}: ${OBJECTS} Makefile + @echo " HOSTLD $@" +- ${Q}${HOSTCC} ${OBJECTS} -o $@ $(LDOPTS) ++ ${Q}${HOSTCC} ${OBJECTS} ${LDFLAGS} -o $@ $(LDOPTS) + @${ECHO_BLANK_LINE} + @echo "Built $@ successfully" + @${ECHO_BLANK_LINE} diff --git a/debian/rules b/debian/rules new file mode 100755 index 0000000..7101781 --- /dev/null +++ b/debian/rules @@ -0,0 +1,94 @@ +#!/usr/bin/make -f + +include /usr/share/dpkg/architecture.mk +include /usr/share/dpkg/buildtools.mk + +export DH_VERBOSE=1 +export TF_CFLAGS += -ffile-prefix-map=$(CURDIR)=. +export DEB_BUILD_MAINT_OPTIONS=hardening=+all + +# Enable verbose build by default, disable when terse is specified. +ifneq (,$(filter terse,$(DEB_BUILD_OPTIONS))) +VERBOSE=0 +else +VERBOSE=1 +endif + +platforms := g12a gxbb sun50i_a64 sun50i_h6 rcar rk3328 rk3399 rpi3 rpi4 imx8mn imx8mm +# Disable building of imx8mq, as it is not well supported upstream. +#platforms_nodebug := imx8mq + +# By default, iMX8MN uses UART2 console. However, other boards supported +# upstream (e.g. Variscite VAR-SOM-MX8M-NANO board) uses UART4. +# Add two subplatforms for imx8mn platform: +# * imx8mn: default configuration +# * imx8mn_uart4: console set to UART4 +imx8mn_subplatforms := imx8mn imx8mn_uart4 +imx8mn_uart4_assigns := IMX_BOOT_UART_BASE=0x30a60000 + +# By default, iMX8MM uses UART2 console. However, other boards +# use other UARTs +imx8mm_subplatforms := imx8mm imx8mm_uart1 imx8mm_uart3 imx8mm_uart4 +imx8mm_uart1_assigns := IMX_BOOT_UART_BASE=0x30860000 +imx8mm_uart3_assigns := IMX_BOOT_UART_BASE=0x30880000 +imx8mm_uart4_assigns := IMX_BOOT_UART_BASE=0x30A60000 + +# TF-A's regulator setup breaks Ethernet on some H6 boards, +# so make it optional by having two subplatforms: +# * sun50i_h6: default configuration +# * sun50i_h6_no_pmic: skip regulator setup +sun50i_h6_subplatforms := sun50i_h6 sun50i_h6_no_pmic +sun50i_h6_no_pmic_assigns := SUNXI_SETUP_REGULATORS=0 + +rk3328_targets := bl31/bl31.elf +rk3399_targets := bl31/bl31.elf + +rcar_subplatforms := rcar_uclb_h3 rcar_uclb_m3w rcar_uclb_m3n +rcar_uclb_h3_assigns := LSI=H3 RCAR_DRAM_SPLIT=1 RCAR_GEN3_ULCB=1 PMIC_LEVEL_MODE=0 RCAR_DRAM_LPDDR4_MEMCONF=0 SPD=opteed RCAR_LOSSY_ENABLE=1 +rcar_uclb_m3n_assigns := LSI=M3N RCAR_GEN3_ULCB=1 PMIC_LEVEL_MODE=0 RCAR_DRAM_LPDDR4_MEMCONF=0 SPD=opteed RCAR_LOSSY_ENABLE=1 +rcar_uclb_m3w_assigns := LSI=M3 RCAR_DRAM_SPLIT=2 RCAR_GEN3_ULCB=1 PMIC_LEVEL_MODE=0 RCAR_DRAM_LPDDR4_MEMCONF=0 SPD=opteed RCAR_LOSSY_ENABLE=1 + +rcar_targets := bl31.srec bl2.srec +rcar_make_target := rcar + +# Always set CROSS_COMPILE, which also works for native builds. +define build_platform + $(eval platform := $(1)) + $(eval debug := $(2)) + $(eval buildtype := $(3)) + $(eval subplatforms := $(if $($(platform)_subplatforms), $($(platform)_subplatforms), $(platform))) + $(eval targets := $(if $($(platform)_targets), $($(platform)_targets), bl31.bin)) + $(eval make_target := $(if $($(platform)_make_target), $($(platform)_make_target), bl31)) + $(foreach subplatform, $(subplatforms), \ + CROSS_COMPILE=aarch64-linux-gnu- CFLAGS=--param=min-pagesize=0 LDFLAGS= TF_LDFLAGS=--no-warn-rwx-segments dh_auto_build -- V=$(VERBOSE) DEBUG=$(debug) $($(subplatform)_assigns) PLAT=$(platform) $(make_target) ; \ + $(foreach target, $(targets), \ + install -m644 build/$(platform)/$(board)/$(buildtype)/$(target) -Dt build/renamed/$(subplatform) ; \ + ) \ + # For each subplatform, make is called using the same PLAT variable. If + # the build is not cleaned between each call, objects will remain the + # same, without rebuilding them. + make DEBUG=$(debug) $($(subplatform)_assigns) PLAT=$(platform) clean ; \ + ) +endef + +%: + dh $@ + +override_dh_auto_build: +# Disable building of arm-trusted-firmware-tools +ifeq ($(filter pkg.arm-trusted-firmware.notools,$(DEB_BUILD_PROFILES)),) + dh_auto_build --sourcedir=tools/fiptool -- DEBUG=1 V=$(VERBOSE) HOSTCC=$(CC) HOSTCCFLAGS="$(CFLAGS) $(CPPFLAGS)" + dh_auto_build --sourcedir=tools/cert_create -- DEBUG=1 V=$(VERBOSE) HOSTCC=$(CC) HOSTCCFLAGS="$(CFLAGS) $(CPPFLAGS) -std=c99 -DUSE_TBBR_DEFS=1" +endif +# Only build firmware on arm64. +ifeq ($(DEB_HOST_ARCH),arm64) + override_dh_auto_build: $(platforms) $(platforms_nodebug) + $(platforms): + $(call build_platform,$@,1,debug) + $(platforms_nodebug): + $(call build_platform,$@,0,release) +endif + +override_dh_installchangelogs: + dh_installchangelogs -parm-trusted-firmware docs/change-log.md + dh_installchangelogs -parm-trusted-firmware-tools diff --git a/debian/salsa-ci.yml b/debian/salsa-ci.yml new file mode 100644 index 0000000..5e62779 --- /dev/null +++ b/debian/salsa-ci.yml @@ -0,0 +1,12 @@ +--- +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml + +variables: + # no autopkgtest tests + SALSA_CI_DISABLE_AUTOPKGTEST: 1 + # No arch:all packages + SALSA_CI_DISABLE_BUILD_PACKAGE_ALL: 1 + +test-crossbuild-arm64: + allow_failure: false diff --git a/debian/source/format b/debian/source/format new file mode 100644 index 0000000..163aaf8 --- /dev/null +++ b/debian/source/format @@ -0,0 +1 @@ +3.0 (quilt) diff --git a/debian/upstream/metadata b/debian/upstream/metadata new file mode 100644 index 0000000..1f204e7 --- /dev/null +++ b/debian/upstream/metadata @@ -0,0 +1,2 @@ +Repository-Browse: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git +Repository: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git diff --git a/debian/watch b/debian/watch new file mode 100644 index 0000000..7296767 --- /dev/null +++ b/debian/watch @@ -0,0 +1,7 @@ +version=4 + +opts=dversionmangle=auto,\ + filenamemangle=s/.*trusted-firmware-a-(.*)/@PACKAGE@-$1/,\ + repacksuffix=+dfsg,\ + uversionmangle=s/-rc/~rc/ \ + https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/ .*/trusted-firmware-a-@ANY_VERSION@.tar.gz |