1 Summary: ARM Trusted Firmware
2 Name: arm-trusted-firmware
7 Source0: https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/snapshot/trusted-firmware-a-%{version}.tar.gz
8 # Source0-md5: 4fca773334e6bdafe48dc8bd32dc12ea
9 URL: https://developer.arm.com/tools-and-software/open-source-software/firmware/trusted-firmware
10 BuildRequires: crossarm-gcc
12 BuildRequires: openssl-tools
13 BuildRequires: rpmbuild(macros) >= 1.750
14 ExclusiveArch: aarch64
15 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
17 %define binutils_ver %(rpm -q --qf=%%{V} binutils)
20 ARM Trusted firmware is a reference implementation of secure world
21 software for ARMv8-A including Exception Level 3 (EL3) software. It
22 provides a number of standard ARM interfaces like Power State
23 Coordination (PSCI), Trusted Board Boot Requirements (TBBR) and Secure
26 Note: the contents of this package are generally just consumed by
27 bootloaders such as u-boot. As such the binaries aren't of general
30 %package -n arm-trusted-firmware-armv8
31 Summary: ARM Trusted Firmware for ARMv8-A
33 %description -n arm-trusted-firmware-armv8
34 ARM Trusted Firmware binaries for various ARMv8-A SoCs.
36 Note: the contents of this package are generally just consumed by
37 bootloaders such as u-boot. As such the binaries aren't of general
40 Note: the contents of this package are generally just consumed by
41 bootloaders such as u-boot. As such the binaries aren't of general
45 %setup -q -n trusted-firmware-a-%{version}
48 %if %{_ver_ge "%binutils_ver" "2.39"}
49 export TF_LDFLAGS="--no-warn-rwx-segments"
54 HOSTCC="%{__cc} %{rpmcflags}" \
56 M0_CROSS_COMPILE="arm-linux-gnueabi-" \
60 %{__make} -C tools/fiptool \
63 HOSTCCFLAGS="%{rpmcflags}" \
64 CPPFLAGS="%{rpmcppflags}"
67 rm -rf $RPM_BUILD_ROOT
68 install -d $RPM_BUILD_ROOT{%{_bindir},%{_datadir}/%{name}}
71 install -d $RPM_BUILD_ROOT%{_datadir}/%{name}/$soc
72 for file in bl31/bl31.elf m0/rk3399m0.bin m0/rk3399m0.elf; do
73 if [ -f build/$soc/release/$file ]; then
74 cp -p build/$soc/release/$file $RPM_BUILD_ROOT%{_datadir}/%{name}/$soc
79 cp -p tools/fiptool/fiptool $RPM_BUILD_ROOT%{_bindir}
82 rm -rf $RPM_BUILD_ROOT
84 %files -n arm-trusted-firmware-armv8
85 %defattr(644,root,root,755)
87 %attr(755,root,root) %{_bindir}/fiptool