From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mx.groups.io; dkim=pass header.i=@akeo-ie.20150623.gappssmtp.com header.s=20150623 header.b=ur41Gzz0; spf=none, err=permanent DNS error (domain: akeo.ie, ip: 209.85.208.65, mailfrom: pete@akeo.ie) Received: from mail-ed1-f65.google.com (mail-ed1-f65.google.com [209.85.208.65]) by groups.io with SMTP; Mon, 10 Jun 2019 05:45:24 -0700 Received: by mail-ed1-f65.google.com with SMTP id w13so14389158eds.4 for ; Mon, 10 Jun 2019 05:45:23 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=akeo-ie.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=KCJ/5T2/XMaJ/fjrHYN9f2zrvNebDOfEfyR0oicoHP0=; b=ur41Gzz0Uq9GXoCD19PgWm3OV7eUvBSA8yWJ3bRpnJe7DeCLzOW/qVZEqJCHC7ttr/ LXmcAkClEIYF9aHYMVrbVgWBKCKyRvlEKAirkmKuvqThxRXZ7RMaHgM+HhKnBQrf0pZE K5X3q5eG5gfm426RX8bP0/yBBuorc0KS/E2acrLJy6PgHmBfb0qbUCfUFjQRUstDpPkP TJXqRzBSqQv3hy5ToKiGtndxZ4IiTlK/Pf4RpXwDfm2lzbcnTGQTEgMZW7W4bhvBeBxy 0bqBSIXya8BUOrceF7kCFEyXKhfvUXfnWtJPh1PAW9z8uhVZGVmnN6e8NmLyt54HZRxg yJig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=KCJ/5T2/XMaJ/fjrHYN9f2zrvNebDOfEfyR0oicoHP0=; b=ZfoIihMpFndMlcQdwe7zbNbwF0Paz0CHH2rMtftrhC1EjuIdYoylyrEWY1JSeE4hSa L9pLNKlCy5nyeeNw0WNPrJkFk4Sq8GIC3wEcxN7ITYfULAu6VaSYUGj9GOQB5o1TwJPQ 4cAKVHAwY+BeSyAhz8xTbwWwvsJ2rkmodv04QKPqmQp3/g1lYXUu/gASdWGLbMqYtE9X CFrfKcPzhUbh9GIK2PgBmNFFxhM/uB4rkkawIRYcyE71NLe6Wt5eqN6erX8SB5tPlwFL t7Bg98ulzf7EBSP2e5VZbwjx/4BLRTkynYAuje2sxhSqcWO8rNsad5+9mKxhi/KbCpVm lKjg== X-Gm-Message-State: APjAAAUtC8xbTAanQGZtdnwsA8aoWINL18nEP4+0X8ncwWl7gJ3Nryut 9n2yOBsiZunF9oIDU1BqyFMi+6F0deQjmQ== X-Google-Smtp-Source: APXvYqznLuoeO9fxpopEjrYxhx8C5lvgrjDnT7IBvDryHtYf1CVZYf0Y9hGWumGF4O6n4kGt1ao72A== X-Received: by 2002:a17:906:3183:: with SMTP id 3mr14685609ejy.287.1560170720352; Mon, 10 Jun 2019 05:45:20 -0700 (PDT) Return-Path: Received: from localhost.localdomain ([84.203.66.209]) by smtp.gmail.com with ESMTPSA id a3sm340463edr.48.2019.06.10.05.45.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 10 Jun 2019 05:45:19 -0700 (PDT) From: "Pete Batard" To: devel@edk2.groups.io Cc: ard.biesheuvel@linaro.org, leif.lindholm@linaro.org Subject: [edk2-non-osi: PATCH 1/1] Platform/RaspberryPi/RPi3: Update ATF binaries to v2.1 Date: Mon, 10 Jun 2019 13:45:04 +0100 Message-Id: <20190610124504.6536-2-pete@akeo.ie> X-Mailer: git-send-email 2.21.0.windows.1 In-Reply-To: <20190610124504.6536-1-pete@akeo.ie> References: <20190610124504.6536-1-pete@akeo.ie> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit This patch updates the ARM Trusted Firmware to the latest release using AppVeyor built binaries that provide verifiable evidence that the files have not been altered from a vanilla source compilation. Signed-off-by: Pete Batard --- Platform/RaspberryPi/RPi3/TrustedFirmware/License.txt | 2 +- Platform/RaspberryPi/RPi3/TrustedFirmware/Readme.md | 18 +++++++++++------- Platform/RaspberryPi/RPi3/TrustedFirmware/bl1.bin | Bin 18801 -> 18776 bytes Platform/RaspberryPi/RPi3/TrustedFirmware/fip.bin | Bin 41714 -> 45792 bytes 4 files changed, 12 insertions(+), 8 deletions(-) diff --git a/Platform/RaspberryPi/RPi3/TrustedFirmware/License.txt b/Platform/RaspberryPi/RPi3/TrustedFirmware/License.txt index b98dc643227e..48429979fec2 100644 --- a/Platform/RaspberryPi/RPi3/TrustedFirmware/License.txt +++ b/Platform/RaspberryPi/RPi3/TrustedFirmware/License.txt @@ -1,4 +1,4 @@ -Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved. +Copyright (c) 2013-2019, ARM Limited and Contributors. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: diff --git a/Platform/RaspberryPi/RPi3/TrustedFirmware/Readme.md b/Platform/RaspberryPi/RPi3/TrustedFirmware/Readme.md index 74bcec7d1f12..f0c4fcf414be 100644 --- a/Platform/RaspberryPi/RPi3/TrustedFirmware/Readme.md +++ b/Platform/RaspberryPi/RPi3/TrustedFirmware/Readme.md @@ -1,17 +1,21 @@ ARM Trusted Firmware for Raspberry Pi 3 ======================================= -The `bl1` and `fip` ATF binaries, found in this directory, were built from -the [official ATF source](https://github.com/ARM-software/arm-trusted-firmware) -(commit c3859557) using Linaro's GCC 5.5 compiler with: +The `bl1.bin` and `fip.bin` ATF binaries found in this directory were built from the +[official ATF 2.1 release](https://github.com/ARM-software/arm-trusted-firmware/releases/tag/v2.1) +through an [AppVeyor build script](https://github.com/pbatard/pitf/blob/master/appveyor.yml) +that is designed to provide evidence that these binaries match the vanilla ATF source. +As per the [AppVeyor build log](https://ci.appveyor.com/project/pbatard/pitf/builds/24506898), +the SHA-256 sums for the blobs can be validated to be as follows: +- `bl1.bin`: `57e30ed8572e6a3a161c231e68138ee2c78e9dfc6dc51be8c0b4d9c3fe9bbfad` +- `fip.bin`: `b7eadad3a11088e322c52ab5fd2247a7bc79dc086a21db12cc8079a2ab4789f6` + +For Raspberry Pi 3 usage, ATF was built using the command: ``` -export CROSS_COMPILE=/usr/src/gcc-linaro-5.5.0-2017.10-x86_64_aarch64-linux-gnu/bin/aarch64-linux-gnu- make PLAT=rpi3 PRELOADED_BL33_BASE=0x30000 RPI3_PRELOADED_DTB_BASE=0x10000 SUPPORT_VFP=1 RPI3_USE_UEFI_MAP=1 fip all ``` - -This results in the following memory mapping: - +which results in the following memory mapping: ``` 0x00000000 +-----------------+ | ROM | BL1 diff --git a/Platform/RaspberryPi/RPi3/TrustedFirmware/bl1.bin b/Platform/RaspberryPi/RPi3/TrustedFirmware/bl1.bin index e25138828d0a4ddb24772abb1a60eefc334666b5..cc3e79cc245fc07bedefd296bd9122eae2c9cce1 100644 GIT binary patch delta 8168 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 OnnxVC*;x3s+x`zjG|eFZ delta 7916 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 M{L8OPD@nqC1H4~^z5oCK diff --git a/Platform/RaspberryPi/RPi3/TrustedFirmware/fip.bin b/Platform/RaspberryPi/RPi3/TrustedFirmware/fip.bin index eff727ca78dc07cbfe56f1b6717e93b91702c16a..57eb8757b29a4c0e0004dc849d4aa731c953279c 100644 GIT binary patch literal 45792 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 literal 41714 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