packaging: add amlogic boards spec files
authorJaehoon Chung <jh80.chung@samsung.com>
Thu, 29 Oct 2020 23:10:38 +0000 (08:10 +0900)
committerJaehoon Chung <jh80.chung@samsung.com>
Wed, 4 Nov 2020 03:19:49 +0000 (12:19 +0900)
Add amlogic boards spec files.
- u-boot-kvim3 : Khadas VIM3
- u-boot-n2 : Odroid N2

Change-Id: I77da10475a692be348be094df592141f1e6d4088
Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com>
packaging/u-boot-kvim3.spec [new file with mode: 0644]
packaging/u-boot-n2.spec [new file with mode: 0644]
packaging/u_boot_amlogic.manifest [new file with mode: 0644]

diff --git a/packaging/u-boot-kvim3.spec b/packaging/u-boot-kvim3.spec
new file mode 100644 (file)
index 0000000..39b1fca
--- /dev/null
@@ -0,0 +1,93 @@
+Name: u-boot-kvim3
+Version: 2020.10
+Release: 0
+Summary: Das U-Boot - Tizen bootloader
+Group: System/Kernel
+License: GPL-2.0+
+ExclusiveArch: aarch64
+URL: http://git.denx.de/u-boot.git
+Source0: u-boot-%{version}.tar.bz2
+Source1001: u_boot_amlogic.manifest
+
+BuildRequires: gcc >= 6.0
+BuildRequires: flex
+BuildRequires: bison
+
+%description
+u-boot - Tizen bootloader for Embedded boards based on ARM processor
+
+%prep
+%setup -q -n u-boot-%{version}
+
+%build
+%{?asan:/usr/bin/gcc-unforce-options}
+cp %{SOURCE1001} .
+
+## KVIM3 Build ##
+make mrproper
+
+# Build dtc
+make HOSTCC="gcc $RPM_OPT_FLAGS" -C tools/dtc
+
+# Set configuration
+make khadas-vim3_defconfig
+
+# Build tools
+make %{?_smp_mflags} HOSTCC="gcc $RPM_OPT_FLAGS" HOSTSTRIP=/bin/true tools
+
+make HOSTCC="gcc $RPM_OPT_FLAGS" envtools
+
+# Build u-boot
+export PATH="$PATH:tools:tools/dtc/"
+make %{?_smp_mflags} EXTRAVERSION=`echo %{vcs} | sed 's/.*u-boot.*#\(.\{9\}\).*/-g\1-TIZEN.org/'`
+
+# Encryption
+chmod +x ./fip/aml_encrypt_g12b
+./fip/aml_encrypt_g12b --bl3sig --input u-boot.bin --compress lz4 \
+                               --output fip/kvim3/bl33.bin.enc \
+                               --level v3 --type bl33 --compress lz4
+./fip/aml_encrypt_g12b --bootmk \
+       --output u-boot-kvim3.bin \
+       --bl2 fip/kvim3/bl2.n.bin.sig \
+       --bl30 fip/kvim3/bl30_new.bin.enc \
+       --bl31 fip/kvim3/bl31.img.enc \
+       --bl33 fip/kvim3/bl33.bin.enc \
+       --ddrfw1 fip/kvim3/ddr4_1d.fw \
+       --ddrfw2 fip/kvim3/ddr4_2d.fw \
+       --ddrfw3 fip/kvim3/ddr3_1d.fw \
+       --ddrfw4 fip/kvim3/piei.fw \
+       --ddrfw5 fip/kvim3/lpddr4_1d.fw \
+       --ddrfw6 fip/kvim3/lpddr4_2d.fw \
+       --ddrfw7 fip/kvim3/diag_lpddr4.fw \
+       --ddrfw8 fip/kvim3/aml_ddr.fw \
+       --level v3
+
+# Generate params.bin
+cp `find ./env -name "built-in.o"` copy_env_common.o
+objcopy -O binary --only-section=.rodata.default_environment `find . -name "copy_env_common.o"`
+tr '\0' '\n' < copy_env_common.o > default_envs.txt
+mkenvimage -s 16384 -o params-kvim3.bin default_envs.txt
+rm copy_env_common.o default_envs.txt
+
+# Build Boot script
+mkimage -A arm64 -T script -C none -n "Tizen KVIM3 u-boot helper" -d ./board/amlogic/w400/tizen-boot-khadas-vim3-64b.scr ./boot.scr.kvim3
+
+%install
+rm -rf %{buildroot}
+
+# u-boot installation
+mkdir -p %{buildroot}/boot
+mkdir -p %{buildroot}/var/tmp/u-boot-amlogic
+install -d %{buildroot}/var/tmp/u-boot-amlogic
+install -m 755 u-boot-kvim3.bin %{buildroot}/var/tmp/u-boot-amlogic
+install -m 755 params-kvim3.bin %{buildroot}/boot/
+install -m 755 boot.scr.kvim3 %{buildroot}/boot/
+
+%clean
+
+%files
+%manifest u_boot_amlogic.manifest
+%defattr(-,root,root,-)
+/var/tmp/u-boot-amlogic
+/boot/params-kvim3.bin
+/boot/boot.scr.kvim3
diff --git a/packaging/u-boot-n2.spec b/packaging/u-boot-n2.spec
new file mode 100644 (file)
index 0000000..3000bc9
--- /dev/null
@@ -0,0 +1,94 @@
+Name: u-boot-n2
+Version: 2020.10
+Release: 0
+Summary: Das U-Boot - Tizen bootloader
+Group: System/Kernel
+License: GPL-2.0+
+ExclusiveArch: aarch64
+URL: http://git.denx.de/u-boot.git
+Source0: u-boot-%{version}.tar.bz2
+Source1001: u_boot_amlogic.manifest
+
+BuildRequires: gcc >= 6.0
+BuildRequires: flex
+BuildRequires: bison
+
+%description
+u-boot - Tizen bootloader for Embedded boards based on ARM processor
+
+%prep
+%setup -q -n u-boot-%{version}
+
+%build
+%{?asan:/usr/bin/gcc-unforce-options}
+cp %{SOURCE1001} .
+
+## 1. ODROID-N2 Build ##
+make mrproper
+
+# 1-1. Build dtc
+make HOSTCC="gcc $RPM_OPT_FLAGS" -C tools/dtc
+
+# 1-2. Set configuration
+make odroid-n2_defconfig
+
+# 1-3. Build tools
+make %{?_smp_mflags} HOSTCC="gcc $RPM_OPT_FLAGS" HOSTSTRIP=/bin/true tools
+
+make HOSTCC="gcc $RPM_OPT_FLAGS" envtools
+
+# 1-4. Build u-boot
+export PATH="$PATH:tools:tools/dtc/"
+make %{?_smp_mflags} EXTRAVERSION=`echo %{vcs} | sed 's/.*u-boot.*#\(.\{9\}\).*/-g\1-TIZEN.org/'`
+
+# 1-5. Encryption
+chmod +x ./fip/aml_encrypt_g12b
+./fip/aml_encrypt_g12b --bl3sig --input u-boot.bin --compress lz4 \
+                               --output fip/n2/bl33.bin.enc \
+                               --level v3 --type bl33 --compress lz4
+./fip/aml_encrypt_g12b --bootmk \
+       --output u-boot-n2.bin \
+       --bl2 fip/n2/bl2.n.bin.sig \
+       --bl30 fip/n2/bl30_new.bin.enc \
+       --bl31 fip/n2/bl31.img.enc \
+       --bl33 fip/n2/bl33.bin.enc \
+       --ddrfw1 fip/n2/ddr4_1d.fw \
+       --ddrfw2 fip/n2/ddr4_2d.fw \
+       --ddrfw3 fip/n2/ddr3_1d.fw \
+       --ddrfw4 fip/n2/piei.fw \
+       --ddrfw5 fip/n2/lpddr4_1d.fw \
+       --ddrfw6 fip/n2/lpddr4_2d.fw \
+       --ddrfw7 fip/n2/diag_lpddr4.fw \
+       --ddrfw8 fip/n2/aml_ddr.fw \
+       --level v3
+
+# 1-6. Generate params.bin
+cp `find ./env -name "built-in.o"` copy_env_common.o
+objcopy -O binary --only-section=.rodata.default_environment `find . -name "copy_env_common.o"`
+tr '\0' '\n' < copy_env_common.o > default_envs.txt
+mkenvimage -s 16384 -o params-n2.bin default_envs.txt
+rm copy_env_common.o default_envs.txt
+
+# 1-7. Build Boot script
+mkimage -A arm64 -T script -C none -n "Tizen ODROID-N2 u-boot helper" -d ./board/amlogic/w400/tizen-boot-odroid-n2-64b.scr ./boot.scr.n2
+
+
+%install
+rm -rf %{buildroot}
+
+# 1-8. u-boot installation
+mkdir -p %{buildroot}/boot
+mkdir -p %{buildroot}/var/tmp/u-boot-amlogic
+install -d %{buildroot}/var/tmp/u-boot-amlogic
+install -m 755 u-boot-n2.bin %{buildroot}/var/tmp/u-boot-amlogic
+install -m 755 params-n2.bin %{buildroot}/boot/
+install -m 755 boot.scr.n2 %{buildroot}/boot
+
+%clean
+
+%files
+%manifest u_boot_amlogic.manifest
+%defattr(-,root,root,-)
+/var/tmp/u-boot-amlogic
+/boot/params-n2.bin
+/boot/boot.scr.n2
diff --git a/packaging/u_boot_amlogic.manifest b/packaging/u_boot_amlogic.manifest
new file mode 100644 (file)
index 0000000..017d22d
--- /dev/null
@@ -0,0 +1,5 @@
+<manifest>
+ <request>
+    <domain name="_"/>
+ </request>
+</manifest>