Skip to content

Commit 9c933cd

Browse files
committed
Update for v2.5 release
* Switch to GitHub actions for the build
1 parent be70752 commit 9c933cd

File tree

3 files changed

+85
-58
lines changed

3 files changed

+85
-58
lines changed

.github/workflows/build.yml

Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
# Copyright (c) 2021, Pete Batard <pete@akeo.ie>
2+
# SPDX-License-Identifier: BSD-3-Clause
3+
4+
name: TF-A - Raspberry Pi build
5+
6+
on:
7+
push:
8+
tags:
9+
- '*'
10+
11+
jobs:
12+
build:
13+
runs-on: ubuntu-latest
14+
15+
steps:
16+
- name: Set version
17+
id: set_version
18+
run: echo "::set-output name=version::${GITHUB_REF/refs\/tags\//}"
19+
- name: Set up Linux environment
20+
run: sudo apt install gcc-aarch64-linux-gnu
21+
- name: Download and extract TF-A release
22+
run: |
23+
curl -L https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/snapshot/trusted-firmware-a-${{steps.set_version.outputs.version}}.tar.gz -o trusted-firmware-a-${{steps.set_version.outputs.version}}.tar.gz
24+
tar -xzf trusted-firmware-a-${{steps.set_version.outputs.version}}.tar.gz
25+
- name: Build TF-A
26+
run: |
27+
cd trusted-firmware-a-${{steps.set_version.outputs.version}}
28+
export CROSS_COMPILE=/usr/bin/aarch64-linux-gnu-
29+
make PLAT=rpi3 RPI3_PRELOADED_DTB_BASE=0x10000 PRELOADED_BL33_BASE=0x30000 SUPPORT_VFP=1 RPI3_USE_UEFI_MAP=1 DEBUG=0 fip all
30+
make PLAT=rpi4 RPI3_PRELOADED_DTB_BASE=0x1F0000 PRELOADED_BL33_BASE=0x20000 SUPPORT_VFP=1 DEBUG=0 all
31+
- name: Upload TF-A artifacts
32+
uses: actions/upload-artifact@v2
33+
with:
34+
name: TF-A ${{steps.set_version.outputs.version}} Artifacts
35+
path: |
36+
trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi3/release/bl1.bin
37+
trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi3/release/fip.bin
38+
trusted-firmware-a-${{steps.set_version.outputs.version}}build/rpi4/release/bl31.bin
39+
- name: Display SHA-256
40+
run: sha256sum trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi3/release/bl1.bin trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi3/release/fip.bin trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi4/release/bl31.bin
41+
- name: Create release
42+
id: create_release
43+
uses: actions/create-release@v1
44+
env:
45+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
46+
with:
47+
draft: false
48+
prerelease: false
49+
release_name: ${{steps.set_version.outputs.version}}
50+
body: Raspberry Pi Arm Trusted Firmware ${{steps.set_version.outputs.version}}
51+
tag_name: ${{steps.set_version.outputs.version}}
52+
- name: Upload RPi3 bl1.bin
53+
uses: actions/upload-release-asset@v1
54+
env:
55+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
56+
with:
57+
upload_url: ${{steps.create_release.outputs.upload_url}}
58+
asset_path: trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi3/release/bl1.bin
59+
asset_name: bl1.bin
60+
asset_content_type: application/octet-stream
61+
- name: Upload RPi3 fip.bin
62+
uses: actions/upload-release-asset@v1
63+
env:
64+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
65+
with:
66+
upload_url: ${{steps.create_release.outputs.upload_url}}
67+
asset_path: trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi3/release/fip.bin
68+
asset_name: fip.bin
69+
asset_content_type: application/octet-stream
70+
- name: Upload RPi4 bl31.bin
71+
uses: actions/upload-release-asset@v1
72+
env:
73+
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
74+
with:
75+
upload_url: ${{steps.create_release.outputs.upload_url}}
76+
asset_path: trusted-firmware-a-${{steps.set_version.outputs.version}}/build/rpi4/release/bl31.bin
77+
asset_name: bl31.bin
78+
asset_content_type: application/octet-stream

Readme.md

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,34 @@
11
Raspberry Pi - Arm Trusted Firmware binaries
22
============================================
33

4-
[![Build status](https://img.shields.io/appveyor/ci/pbatard/pitf.svg?style=flat-square)](https://ci.appveyor.com/project/pbatard/pitf)
4+
[![Build status](https://img.shields.io/github/workflow/status/pftf/pitf/TF-A%20-%20Raspberry%20Pi%20build.svg?style=flat-square)](https://github.com/pftf/pitf/actions)
55
[![Github stats](https://img.shields.io/github/downloads/pbatard/pitf/total.svg?style=flat-square)](https://github.com/pbatard/pitf/releases)
6+
[![Release](https://img.shields.io/github/release-pre/pftf/pitf?style=flat-square)](https://github.com/pftf/pitf/releases)
67

78
# Summary
89

910
This repository is meant to host builds of the Arm Trusted Firmware for use with
1011
the [EDK2 Raspberry Pi UEFI firmwares](https://github.com/tianocore/edk2-platforms/tree/master/Platform/RaspberryPi).
1112

1213
Because of the sensitive nature of these firmware blobs, this process is
13-
accomplished in a fully transparent manner, through AppVeyor, and in a way that
14+
accomplished in a fully transparent manner, through GitHub actions, in a way that
1415
allows complete validation that the binaries provided for download have not been
15-
altered from the ones one would build locally using the official ATF source.
16+
altered from the ones one would build locally using the official TF-A source.
1617

1718
# Current version
1819

19-
The version of ATF being built is 2.3, which was released on 2020.04.20.
20+
The version of TF-A being built is 2.5, which was released on 2021.05.17.
2021

2122
# Binary validation
2223

2324
The binaries being provided can be validated not to have been altered by
24-
checking the [latest AppVeyor build log](https://ci.appveyor.com/project/pbatard/pitf)
25+
checking the [latest GitHub Actions build log](https://github.com/pftf/pitf/actions)
2526
and confirming that:
2627

2728
- The SHA-1 of the commit that triggered the build is the same as the latest
2829
commit from this repo (ensures that the built wasn't produced from a "hidden"
2930
malicious commit that would then have been deleted).
30-
- The ATF source that was downloaded for the build is the official one that can
31+
- The TF-A source that was downloaded for the build is the official one that can
3132
be found at https://git.trustedfirmware.org/TF-A/trusted-firmware-a.git/
3233
- No alterations have been performed to the binary blobs after the build.
3334
- The SHA-256 sums of the binary blobs, which are explicitly displayed as part

appveyor.yml

Lines changed: 0 additions & 52 deletions
This file was deleted.

0 commit comments

Comments
 (0)