From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from muminek.juszkiewicz.com.pl (muminek.juszkiewicz.com.pl [213.251.184.221]) by mx.groups.io with SMTP id smtpd.web11.1967.1688056881588138470 for ; Thu, 29 Jun 2023 09:41:21 -0700 Authentication-Results: mx.groups.io; dkim=missing; spf=softfail (domain: linaro.org, ip: 213.251.184.221, mailfrom: marcin.juszkiewicz@linaro.org) Received: from localhost (localhost [127.0.0.1]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTP id 328F2260B8E; Thu, 29 Jun 2023 18:41:18 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at juszkiewicz.com.pl Received: from muminek.juszkiewicz.com.pl ([127.0.0.1]) by localhost (muminek.juszkiewicz.com.pl [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id cUr25Xa_biBF; Thu, 29 Jun 2023 18:41:16 +0200 (CEST) Received: from applejack.lan (83.21.150.32.ipv4.supernova.orange.pl [83.21.150.32]) by muminek.juszkiewicz.com.pl (Postfix) with ESMTPSA id 75CA3260172; Thu, 29 Jun 2023 18:41:14 +0200 (CEST) From: "Marcin Juszkiewicz" To: devel@edk2.groups.io Cc: Ard Biesheuvel , Leif Lindholm , Graeme Gregory , Shashi Mallela , Marcin Juszkiewicz Subject: [PATCH edk2-platforms v2 0/3] Platform/QemuSbsa: add GIC ITS Date: Thu, 29 Jun 2023 18:41:03 +0200 Message-ID: <20230629164106.744289-1-marcin.juszkiewicz@linaro.org> X-Mailer: git-send-email 2.41.0 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable SBSA Reference Platform can have GIC ITS present. And when it has then we can have complex PCI Express setup (and some other things). First patch adds support for GIC ITS. Address is read from TF-A via SMC call. IORT is generated, MADT has ITS information. Linux boots and sees GIC ITS as expected. SMMU information is also provided in IORT and used. Second patch introduces PcdSmmuBase variable to avoid using magic number in IORT generation. Third patch takes care of system where GIC ITS is not present (like QEMU 8.0). If GIC ITS address is not set then there is no mention of it in MADT and IORT tables, Linux boots. Changes since v2: - IORT is generated in C - no ITS =3D=3D no ITS node in IORT - introduced PcdSmmuBase Marcin Juszkiewicz (2): Platform/QemuSbsa: add dynamic PcdSmmuBase Platform/SbsaQemu: handle systems without GIC ITS Shashi Mallela (1): Platform/SbsaQemu: add GIC ITS support Silicon/Qemu/SbsaQemu/SbsaQemu.dec | 4 + Platform/Qemu/SbsaQemu/SbsaQemu.dsc | 4 + .../Qemu/SbsaQemu/AcpiTables/AcpiTables.inf | 1 + .../SbsaQemuAcpiDxe/SbsaQemuAcpiDxe.inf | 2 + .../SbsaQemuPlatformDxe.inf | 1 + .../Include/IndustryStandard/SbsaQemuAcpi.h | 11 + .../Include/IndustryStandard/SbsaQemuSmc.h | 1 + .../Drivers/SbsaQemuAcpiDxe/SbsaQemuAcpiDxe.c | 216 +++++++++++++++++- .../SbsaQemuPlatformDxe/SbsaQemuPlatformDxe.c | 10 + 9 files changed, 249 insertions(+), 1 deletion(-) --=20 2.41.0