-Name: u-boot-rpi3
+%ifarch aarch64
+%define config_name rpi_3_defconfig
+%define target rpi3
+%define buildarch arm64
+%else
+%define config_name rpi_3_32b_defconfig
+%define target rpi3-32b
+%define buildarch arm
+%endif
+
+Name: u-boot-%{target}
Version: 2017.03
Release: 0
Summary: Das U-Boot - Tizen bootloader
Group: System/Kernel
License: GPL-2.0+
-ExclusiveArch: aarch64
+ExclusiveArch: %{arm} aarch64
URL: http://git.denx.de/u-boot.git
Source0: u-boot-%{version}.tar.bz2
Source1001: u_boot_rpi3.manifest
BuildRequires: flex
BuildRequires: bison
-# NOTE
+# NOTE : This comment is for ARM64.
# - If someone want to build u-boot-rpi3 with gbs system, it needs to build with below sequence.
# 1. Do the local build with gbs command
# e.g) gbs build -A aarch64 --buildroot=~/GBS-UBOOT-RPI3 --profile=profile.tizen_unifiled
%{?asan:/usr/bin/gcc-unforce-options}
cp %{SOURCE1001} .
-CONFIG=rpi_3_defconfig
+CONFIG=%{config_name}
make mrproper
export PATH="$PATH:tools:tools/dtc/"
make %{?_smp_mflags} EXTRAVERSION=`echo %{vcs} | sed 's/.*u-boot.*#\(.\{9\}\).*/-g\1-TIZEN.org/'`
+%ifarch aarch64
# Build u-boot-spl
as board/raspberrypi/rpi/head.S -o head.o
objcopy -O binary head.o head.bin
cat head.bin spl/u-boot-spl.bin > u-boot-spl.bin
+%endif
# Generate params.bin
cp `find ./common -name "env_common.o"` copy_env_common.o
rm copy_env_common.o default_envs.txt
# Build boot.scr
-mkimage -A arm64 -T script -C none -n "Tizen RPI3 u-boot helper" -d ./board/raspberrypi/rpi/tizen-boot-rpi3.scr ./boot.scr.uimg
+mkimage -A %{buildarch} -T script -C none -n "Tizen RPI3 u-boot helper" -d ./board/raspberrypi/rpi/tizen-boot-%{target}.scr ./boot.scr.uimg
%install
rm -rf %{buildroot}
( cd %{buildroot}%{_bindir}; ln -sf fw_printenv fw_setenv )
# u-boot installation
+%ifarch aarch64
mkdir -p %{buildroot}/boot/spl
+%else
+mkdir -p %{buildroot}/boot
+%endif
install -m 755 u-boot.bin %{buildroot}/boot/
install -m 755 uboot.env %{buildroot}/boot/
install -m 755 boot.scr.uimg %{buildroot}/boot/
+%ifarch aarch64
install -m 755 u-boot-spl.bin %{buildroot}/boot/
install -m 755 u-boot-nodtb.bin %{buildroot}/boot/spl/
install -m 755 board/raspberrypi/rpi/fit_spl_atf.its %{buildroot}/boot/spl/
install -m 755 arch/arm/dts/bcm2837-rpi-3-b.dtb %{buildroot}/boot/spl/
+%endif
%clean
/boot/u-boot.bin
/boot/uboot.env
/boot/boot.scr.uimg
+%ifarch aarch64
/boot/u-boot-spl.bin
/boot/spl/u-boot-nodtb.bin
/boot/spl/fit_spl_atf.its
/boot/spl/bcm2837-rpi-3-b.dtb
+%endif
%files -n u-boot-tools
%manifest u_boot_rpi3.manifest