Re: [edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: update TF-A binaries to get needed SMC calls

2024-03-19 Thread Ard Biesheuvel
On Thu, 14 Mar 2024 at 15:21, Marcin Juszkiewicz
 wrote:
>
> W dniu 14.03.2024 o 15:17, Marcin Juszkiewicz via groups.io pisze:
> > We want to stop parsing DeviceTree (in EDK2) to gather hardware information.
> >
> > Instead we ask TF-A for those details using SMC calls. On real hardware
> > platform it could be asking on-board Embedded Controller.
> >
> > Hardware information (CPU, Memory) is now in SbsaQemuHardwareInfoLib 
> > together
> > with new code for handling SMC stuff. If TF-A answer to SMC call would be 
> > not
> > success then we go back to parsing DeviceTree data directly. There is no DT
> > parsing elsewhere.
> >
> > This change brings TF-A with all changes needed for it.
>
> Signed-off-by: Marcin Juszkiewicz 
>

Pushed as  476d087..0544808

Thanks,


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#116894): https://edk2.groups.io/g/devel/message/116894
Mute This Topic: https://groups.io/mt/104927188/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-




Re: [edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: update TF-A binaries to get needed SMC calls

2024-03-14 Thread Marcin Juszkiewicz

W dniu 14.03.2024 o 15:17, Marcin Juszkiewicz via groups.io pisze:

We want to stop parsing DeviceTree (in EDK2) to gather hardware information.

Instead we ask TF-A for those details using SMC calls. On real hardware
platform it could be asking on-board Embedded Controller.

Hardware information (CPU, Memory) is now in SbsaQemuHardwareInfoLib together
with new code for handling SMC stuff. If TF-A answer to SMC call would be not
success then we go back to parsing DeviceTree data directly. There is no DT
parsing elsewhere.

This change brings TF-A with all changes needed for it.


Signed-off-by: Marcin Juszkiewicz 

I really need to enable it to be automatic...


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#116753): https://edk2.groups.io/g/devel/message/116753
Mute This Topic: https://groups.io/mt/104927188/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-




[edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: update TF-A binaries to get needed SMC calls

2024-03-14 Thread Marcin Juszkiewicz
We want to stop parsing DeviceTree (in EDK2) to gather hardware information.

Instead we ask TF-A for those details using SMC calls. On real hardware
platform it could be asking on-board Embedded Controller.

Hardware information (CPU, Memory) is now in SbsaQemuHardwareInfoLib together
with new code for handling SMC stuff. If TF-A answer to SMC call would be not
success then we go back to parsing DeviceTree data directly. There is no DT
parsing elsewhere.

This change brings TF-A with all changes needed for it.
---
 Platform/Qemu/Sbsa/Readme.md |  60 ---
 Platform/Qemu/Sbsa/bl1.bin   | Bin 23029 -> 23365 bytes
 Platform/Qemu/Sbsa/fip.bin   | Bin 82722 -> 82722 bytes
 3 files changed, 28 insertions(+), 32 deletions(-)
 mode change 100644 => 100755 Platform/Qemu/Sbsa/bl1.bin

diff --git a/Platform/Qemu/Sbsa/Readme.md b/Platform/Qemu/Sbsa/Readme.md
index b8759403bf05..5ed05f0f3021 100644
--- a/Platform/Qemu/Sbsa/Readme.md
+++ b/Platform/Qemu/Sbsa/Readme.md
@@ -4,55 +4,51 @@ Qemu SBSA TF-A binaries
 These binaries have been created from the mainline TF-A
 code checked out at the following commit ID:
 
-commit 84de50c7d8ca416e504aedb228bb4cab6eed806f (HEAD -> master, 
origin/master, origin/integration, origin/HEAD)
-Merge: 1e038c94d 4796d2d9b
-Author: Olivier Deprez 
-Date:   Tue Sep 19 18:15:12 2023 +0200
+commit f36faa71578a14a8c9910aaa57e761f0256ccd52 (HEAD -> master, 
origin/master, origin/integration, origin/HEAD)
+Merge: 8dad296d6 57ab6d897
+Author: Lauren Wehrmeister 
+Date:   Tue Mar 12 19:17:49 2024 +0100
 
-Merge "feat(ethos-n): update npu error handling" into integration
+Merge "fix(cpus): fix a defect in Cortex-A715 erratum 2561034" into 
integration
 
 
 This ensures that the following features for qemu_sbsa platform are
 merged upstream and included in the build:
 
-commit 408cde8a59080ac2caa11c4d99474b2ef09f90df
+commit 42925c15bee09162c6dfc8c2204843ffac6201c1
 Author: Marcin Juszkiewicz 
-Date:   Mon Sep 18 12:47:45 2023 +0200
+Date:   Tue Nov 21 14:53:26 2023 +0100
 
-fix(qemu_sbsa): align FIP base to BL1 size
+feat(qemu-sbsa): handle CPU information
 
-RME patch series shown that we can build larger BL1 than we can run:
+We want to remove use of DeviceTree from EDK2. So we move
+functions to TF-A:
 
-NOTICE:  Booting Trusted Firmware
-NOTICE:  BL1: v2.9(debug):v2.9.0-736-g0854a
-NOTICE:  BL1: Built : 12:10:39, Sep 18 2023
-INFO:BL1: RAM 0x3ffee000 - 0x3fffb000
-INFO:BL1: Loading BL2
-WARNING: Firmware Image Package header check failed.
+- counting cpu cores
+- checking NUMA node id
+- checking MPIDR
 
-RME pushed debug build BL1 over 0x8000 in size.
-This exposed an error where FIP_BASE (supposed to be at BL1_SIZE offset
-from start of flash) was actually 0x8000 and not 0x12000.
-Make sure we have space for BL1 by deriving FIP_BASE from it.
+And then it gets passed to EDK2 via SMC calls.
 
-Note: this is a breaking change for edk2 FD image generation, which had
-similarly hardcoded a 0x8000 offset. These images must be updated in
-lock-step.
-
-Change-Id: I8a1a85e82319945a4412c424467d818d5b6e4ecd
+Change-Id: I1c7fc234ba90ba32433b6e4aa2cf127f26da00fd
 Signed-off-by: Marcin Juszkiewicz 
 
-commit 408f9cb485796a73c5b87da70644665a13c685e4
-Author: Marcin Juszkiewicz 
-Date:   Fri Sep 15 22:44:04 2023 +0200
+commit 8b7dd8397dd017b61ecda8447e8956a1d9d6d5d3
+Author: Xiong Yining 
+Date:   Fri Jan 12 10:47:03 2024 +
 
-feat(qemu): add "neoverse-n2" cpu support
+feat(qemu-sbsa): handle memory information
 
-Add support to qemu "neoverse-n2" cpu for "qemu" platform.
-This one has 2^48 address space so will be used by both systems.
+As a part of removing DeviceTree from EDK2, we move functions to TF-A:
+
+- counting the number of memory nodes
+- checking NUMA node id
+- checking the memory address
+
+Signed-off-by: Xiong Yining 
+Signed-off-by: Chen Baozi 
+Change-Id: Ib7bce3a65c817a5b3bef6c9e0a459c7ce76c7e35
 
-Signed-off-by: Marcin Juszkiewicz 
-Change-Id: I9f0fa23a4934d9464379495225e08adc121325b4
 
 NOTE: No modifications to the source code have been done.
   The binaries have been generated for the AARCH64 platform
diff --git a/Platform/Qemu/Sbsa/bl1.bin b/Platform/Qemu/Sbsa/bl1.bin
old mode 100644
new mode 100755
index 
e436d077113b340c606069b575c0717775fa6d82..8eac6204b64be03036c6aabe84618a7c979e78e0
GIT binary patch
delta 7064
zcmb7HdsI_b*54-y5P4`qf*}GX0R(vp@=~-C5J#-|03+IJHKD#x>lC$vvuY>7>Wr(U
zGhR>D(1-nsqwNQL_FGoeDP8RpT05J%7OXVgUC7
z{O%Ka3P>xBAe*(%1cSR*sc-$8l387%;&)4`N=3Rr|
zn@UJEsi4-Q0^3^jqpT1tuu@jh3WZ+LrKOt{@%ipZq1K;FpZXAr7{3VZ5C%5^%~wSx*O%>DGc3E!dYv(N%!r%_?cNIBgY<|Mc1S7CEVH?@Q>BrnsN@Hynq^yTmz