From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail02.groups.io (mail02.groups.io [66.175.222.108]) by spool.mail.gandi.net (Postfix) with ESMTPS id 80544AC13CC for ; Thu, 14 Mar 2024 14:17:34 +0000 (UTC) DKIM-Signature: a=rsa-sha256; bh=mcqVJ4UKHN9k34+oeCNcIyxMn8+DN8xYYvRYl4uBouc=; c=relaxed/simple; d=groups.io; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version:Precedence:List-Subscribe:List-Help:Sender:List-Id:Mailing-List:Delivered-To:Resent-Date:Reply-To:List-Unsubscribe-Post:List-Unsubscribe:Content-Transfer-Encoding; s=20240206; t=1710425853; v=1; b=yRcIQ2AmKCezjpQ1HBjLpxo4w/4kXBil1FIAK8H7tvA2Bzn1S/R1eOZYDs+dvGz5tyhjo4kp wWD3aeyHzUjii7MTUcvddefP9n1NblCwxChn994Bb1V8wIDLddpet0T9UQ8A2u29vuXo8A2Dqme 9MM626IgdkYBJ3A+gLDwQb7PrFfYJKTkXkqs5/yIuY6bKbP/tqNWERkvJl2UPrqQM6iSHmjhDt+ 4ZJ3TUYB0yC/R6gqG6ZnyWlrXw4k8VOLEcLhx+6dzHWDq0Y2nqDurkIu4jfLVIeu9I/w+qXDJ1G UFV2Or2bLU4PODwQ2eG6XHQ6mrqcs0ZuKaksUiaM6beLA== X-Received: by 127.0.0.2 with SMTP id 5JSLYY7687511xgbb2ElTqCE; Thu, 14 Mar 2024 07:17:33 -0700 X-Received: from muminek.juszkiewicz.com.pl (muminek.juszkiewicz.com.pl [213.251.184.221]) by mx.groups.io with SMTP id smtpd.web11.13681.1710425851916728567 for ; Thu, 14 Mar 2024 07:17:32 -0700 X-Received: from localhost (localhost [127.0.0.1]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTP id 498AF260AB8; Thu, 14 Mar 2024 15:17:28 +0100 (CET) X-Virus-Scanned: Debian amavis at juszkiewicz.com.pl X-Received: from muminek.juszkiewicz.com.pl ([127.0.0.1]) by localhost (muminek.juszkiewicz.com.pl [127.0.0.1]) (amavis, port 10024) with ESMTP id mCh7g7hZk5zF; Thu, 14 Mar 2024 15:17:26 +0100 (CET) X-Received: from applejack.lan (83.11.22.169.ipv4.supernova.orange.pl [83.11.22.169]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTPSA id C71EA2600DA; Thu, 14 Mar 2024 15:17:25 +0100 (CET) From: "Marcin Juszkiewicz" To: devel@edk2.groups.io Cc: Leif Lindholm , Ard Biesheuvel , Marcin Juszkiewicz Subject: [edk2-devel] [PATCH edk2-non-osi 1/1] Qemu/Sbsa: update TF-A binaries to get needed SMC calls Date: Thu, 14 Mar 2024 15:17:20 +0100 Message-ID: <20240314141720.918930-1-marcin.juszkiewicz@linaro.org> MIME-Version: 1.0 Precedence: Bulk List-Subscribe: List-Help: Sender: devel@edk2.groups.io List-Id: Mailing-List: list devel@edk2.groups.io; contact devel+owner@edk2.groups.io Resent-Date: Thu, 14 Mar 2024 07:17:32 -0700 Reply-To: devel@edk2.groups.io,marcin.juszkiewicz@linaro.org List-Unsubscribe-Post: List-Unsubscribe=One-Click List-Unsubscribe: X-Gm-Message-State: YhBL0DbWOnc2nBfL20fRtL5Lx7686176AA= Content-Transfer-Encoding: quoted-printable X-GND-Status: LEGIT Authentication-Results: spool.mail.gandi.net; dkim=pass header.d=groups.io header.s=20240206 header.b=yRcIQ2Am; dmarc=fail reason="SPF not aligned (relaxed), DKIM not aligned (relaxed)" header.from=linaro.org (policy=none); spf=pass (spool.mail.gandi.net: domain of bounce@groups.io designates 66.175.222.108 as permitted sender) smtp.mailfrom=bounce@groups.io We want to stop parsing DeviceTree (in EDK2) to gather hardware informati= on. 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 toge= ther 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 =3D> 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: =20 -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 =20 - Merge "feat(ethos-n): update npu error handling" into integration + Merge "fix(cpus): fix a defect in Cortex-A715 erratum 2561034" into = integration =20 =20 This ensures that the following features for qemu_sbsa platform are merged upstream and included in the build: =20 -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 =20 - fix(qemu_sbsa): align FIP base to BL1 size + feat(qemu-sbsa): handle CPU information =20 - 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: =20 - NOTICE: Booting Trusted Firmware - NOTICE: BL1: v2.9(debug):v2.9.0-736-g08548888a - 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 =20 - RME pushed debug build BL1 over 0x8000 in size. - This exposed an error where FIP_BASE (supposed to be at BL1_SIZE off= set - 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. =20 - 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 =20 -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 +0000 =20 - feat(qemu): add "neoverse-n2" cpu support + feat(qemu-sbsa): handle memory information =20 - 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 =20 - Signed-off-by: Marcin Juszkiewicz - Change-Id: I9f0fa23a4934d9464379495225e08adc121325b4 =20 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..8eac6204b64be03036c6aabe8= 4618a7c979e78e0 GIT binary patch delta 7064 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 qAlx( z^=3D*9|sJx5$SL4|Fu@<&Lu@-~$Qm#pR11*9VG3IccR^(b%OLb(0?^T*p3o*_xUMXIM zeU@c_IFs?pu^c4MEdzl{ix-^U5Y!#SY4xMt08TgJ{8b-F^YnK$~7Cn-iL>AIB zxpP8-eX!ouiv`5Jyc2sW@`AKSkfF+ku5Dz8fhvsLQ9#rDn- z0|ZJ@DU%H5sMOQ2J$=3DLg0WB)gl0kt{O(q2@@d7eo4jZYv0CT`Q>moiZsbh072W(q_F5ma864CY}D*xor}fIulKWs<>s%mLfeM+^|qq7p3`*azd!;wv8ee8y!LmtS*v ztrC-oX-g{%At@gZKc3HQdl#`^{7W)PlovRDex<0F(28OU%`8&SIxQh%EZ_Mnc%_8X z-xhCf>nc(c7RJ^f!DGT4kZ`HP@S49sHjW?|l0^#_lLTOCn!!%Yn!CASm9ZtHAT@%+PQeDt0!Kx)z#ru4)`B{e|k9{Lgn}X$1lFY zaD4CJpFxg)^h>$@Fvr`yqJ3O~=3DujX^y17IjQ_Qh9zLm$^LWL5OYZqtJ*P58?NRMx( zh>>n&%Dv8Ve7Gb^X5Yo*jBk&W;XNF`*eAyyig+rNj_E*^D0Y1QPx6j6v|@?LW#nu_ z^Eg>IaU4(M!`Q|3dM?FrJ(+;x9G_J#@1=3D?3+qW|OiG7QRyI@CP>U_!+qvQ0skL2OZwD~F15-Vq&@y1}a zlDS^M<%$UaePM(YbA1Pwc{sQIh}UraASF+mmJD+34;7Px(Zs|6hB@wiSB}F}(W2yY zIj*MFPn%+l61y4yvW!}Iaa2Gyk+a2L%GpfXfowi!U-{H3^DU;gkzLB!_Qv4u7+KPl z)V9>LWG!b6Kgrp-Ah7e-_|6 zR+5qIqo#dJO)g!MsC{k|=3Df%wRbS|ZNS<3YqE~Rxnx8yr1nKqZ2Vlp`!Rg7;Lqax(fOUT+eJ5VEMODI`piYe!8-u^h5?<$&w z>_*Pc`zBcMk;=3DGfVX0}!|M%GWYsXPC?ZCb=3DgOdURtw7en*|GK6LhF#-#o4j-sinUyGr8QHH5`&3xraGEwr&j^&pZ{p5JxK3#Br&T zEnGj#<=3D9ohS9mInUE;NAZ2SP<9hGlXH+7bqTn9OO_lSHe)^q%yJaVt&9A9$M%7Q*g zm*Y#v;4K_qHU|Gd#9eT5t4$W@WA5O{lkZ?J$9ImwFK|5f_j3C#$=3D)sB@jV=3D0_%Xw` zKN&$UCoWu+I}C6m$hM(s6%4g*GS&naCAm60tIlgzje6f8g;x4FuQ%>}72OY?l z!8NIaG^;G3A2`149XWoN;}Lzo&fJu_+FWA{GPv8N)k8`BLR}kM1mEnmUjG2Qq15Y)&{t+Sd`_QO{8R1 zQk8@@m5A&v&erp*TzWweS%3kKOSqkC$ diff --git a/Platform/Qemu/Sbsa/fip.bin b/Platform/Qemu/Sbsa/fip.bin index b187e786eccf656230b1f504eb2287330574c064..9a2d9d83853fd7498bc65bc7b= 9236d1260c966c6 100644 GIT binary patch delta 16455 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 ) z@GfR+p^UuA^p|=3DpJ51Y)CmwEWw(A34CZencC z5wrZ#=3Db%<0FBOaxn*sb!z*FmvT=3D}KJ$V=3DIBnL;c0Z;W+5f+Wf&^mGNFEruymAK^b* z4?KE3iLYOqCfwuq*A5b{@PV)Q7yEkgrLT8raWeElBC(}}MB=3D0t-cUgs0d217JmifI z(e+pYrU5MTxb8L8Mn|#<#0nydLA zZ)6F_c>0@h!U?|Z%^AWp-ZD2L!XH<`bw~MnRIYl0ta}T@EpAE744Wi!5m~NWP zY^L{0NQ|Sv6<7-p+snviIvr4(VF*j9^!`sdlzrW7X_gifA_68;X8f~ z|90dp-wqW#dGy;I#PfB0TYxqAERM$pILa(_3vyJnfb)<;e#zf>J5c{VMe7uRY#5F6U}<{plyp4Alaf=3DSrteQzMx=3D~kjIY{ zWCd@>MV{?jo-ASH<%bR|zz(GH4Cha+3pLJ!R02<5H%J)AKU^1R&jEMZkvODc|CVg? zV`UC2Q$~VkIoxc^D>AQ=3DBALUie5Klw09<>$$|DJ86T9Y*xmT-boPt#b0};gJ^DvEPFr0bZoR-Hb(}xh6aR0 z*W3EOwVsB4MD!nlUO12O=3D=3DFoddlElr4lyhw?(^nEeqwz~`#0F1t6+3Be~K9smf6nA z2D$7j9Zv}(I+4gfE@E5}u#li0;0GEV)>8CM$>6+D%#=3Dd-ompfh@HuByce%{&Ezh|O z9~2N24`TjTHfvsytnZt4Rk6Gzb#Eyebi8EQYr%I1iX$2J9ZK$&3l2ZZGE>9=3D*T*)D zfE>=3Db7W|vM=3DcV0=3Dtl8=3DgIB75A>Ya$X$;hrJvYhp= i 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 delta 14155 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 Y z{y>E4QGQ0q8SDVqkk~ONJYzM2KA8`T&*&^Vv>Og81rj=3DQ2L{SsNa~3D?2(XQw~e(b zH+zlB!)~Be^ckTyH5F|4`N)j~^07%f26dyO-nt^_Xy3Qvg(Gwt{vATMy&Wcm(Iann z7aN-C2Z6?rpRv3+FbZZm=3DdZ1*14afLZI@|8VX*jPGkq8sPBRLPvo1l9Wfzu*-QX7s zk;Sbso|QjEzv3RP6VizMU~YKE1<10v^u#o<#m!@dy)=3DDuZV0X%3doV=3D=3D_;gz^5dV= r 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 VG9tcGS1WQBzO7|5hOPF({{esm!07-0 --=20 2.44.0 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#116752): https://edk2.groups.io/g/devel/message/116752 Mute This Topic: https://groups.io/mt/104927188/7686176 Group Owner: devel+owner@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [rebecca@openfw.io] -=-=-=-=-=-=-=-=-=-=-=-