public inbox for devel@edk2.groups.io
 help / color / mirror / Atom feed
* [edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: Update TF-A binaries to v2.10
@ 2023-11-28 17:47 Marcin Juszkiewicz
  2023-11-28 17:54 ` Ard Biesheuvel
  0 siblings, 1 reply; 2+ messages in thread
From: Marcin Juszkiewicz @ 2023-11-28 17:47 UTC (permalink / raw)
  To: devel; +Cc: Leif Lindholm, Ard Biesheuvel, Graeme Gregory, Marcin Juszkiewicz

Update the TF-A binaries:

- v2.10 release
- Neoverse-N2 errata fix
  https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/24936
  (check for SCU before accessing DSU registers)

v2.10 brought change on how we enable cpu features to have one binary
working on v8.0 (a57/a72), v8.2 (n1), v8.4 (v1) and v9.0 (n2) cpu cores.
Base setup is v8.0 with all newer features enabled with runtime checks.

Neoverse-N2 fix makes sure that there presence of DSU is checked before
used (QEMU does not emulate DSU).

With all those changes we have all cores booting into Linux and *BSD.

Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>
---
 Platform/Qemu/Sbsa/bl1.bin | Bin 22933 -> 23029 bytes
 Platform/Qemu/Sbsa/fip.bin | Bin 82722 -> 82722 bytes
 2 files changed, 0 insertions(+), 0 deletions(-)
 mode change 100755 => 100644 Platform/Qemu/Sbsa/bl1.bin

diff --git a/Platform/Qemu/Sbsa/bl1.bin b/Platform/Qemu/Sbsa/bl1.bin
old mode 100755
new mode 100644
index 22875fe6fc7b471c909fa25f0e57bfd763eec991..e436d077113b340c606069b575c0717775fa6d82
GIT binary patch
delta 5992
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

delta 5767
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
Ok$>epz7piyPyHACU}il4

diff --git a/Platform/Qemu/Sbsa/fip.bin b/Platform/Qemu/Sbsa/fip.bin
index ed39152c684314d36f1734ba223e35be3b67835f..b187e786eccf656230b1f504eb2287330574c064 100644
GIT binary patch
delta 15158
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
Y`0<uY_#|I{PwhmuIH2<>#FujVzuea<AOHXW

delta 15399
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

-- 
2.43.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111820): https://edk2.groups.io/g/devel/message/111820
Mute This Topic: https://groups.io/mt/102855349/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: Update TF-A binaries to v2.10
  2023-11-28 17:47 [edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: Update TF-A binaries to v2.10 Marcin Juszkiewicz
@ 2023-11-28 17:54 ` Ard Biesheuvel
  0 siblings, 0 replies; 2+ messages in thread
From: Ard Biesheuvel @ 2023-11-28 17:54 UTC (permalink / raw)
  To: devel, marcin.juszkiewicz; +Cc: Leif Lindholm, Ard Biesheuvel, Graeme Gregory

On Tue, 28 Nov 2023 at 18:47, Marcin Juszkiewicz
<marcin.juszkiewicz@linaro.org> wrote:
>
> Update the TF-A binaries:
>
> - v2.10 release
> - Neoverse-N2 errata fix
>   https://review.trustedfirmware.org/c/TF-A/trusted-firmware-a/+/24936
>   (check for SCU before accessing DSU registers)
>
> v2.10 brought change on how we enable cpu features to have one binary
> working on v8.0 (a57/a72), v8.2 (n1), v8.4 (v1) and v9.0 (n2) cpu cores.
> Base setup is v8.0 with all newer features enabled with runtime checks.
>
> Neoverse-N2 fix makes sure that there presence of DSU is checked before
> used (QEMU does not emulate DSU).
>
> With all those changes we have all cores booting into Linux and *BSD.
>
> Signed-off-by: Marcin Juszkiewicz <marcin.juszkiewicz@linaro.org>

Pushed as ddae61c..542b0f6  master -> master

Thanks!

> ---
>  Platform/Qemu/Sbsa/bl1.bin | Bin 22933 -> 23029 bytes
>  Platform/Qemu/Sbsa/fip.bin | Bin 82722 -> 82722 bytes
>  2 files changed, 0 insertions(+), 0 deletions(-)
>  mode change 100755 => 100644 Platform/Qemu/Sbsa/bl1.bin
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#111821): https://edk2.groups.io/g/devel/message/111821
Mute This Topic: https://groups.io/mt/102855349/7686176
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io]
-=-=-=-=-=-=-=-=-=-=-=-



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-11-28 17:54 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-11-28 17:47 [edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: Update TF-A binaries to v2.10 Marcin Juszkiewicz
2023-11-28 17:54 ` Ard Biesheuvel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox