[edk2-devel] [PATCH edk2-platforms v3 0/3] Platform/QemuSbsa: add GIC ITS

Marcin Juszkiewicz posted 3 patches 9 months, 2 weeks ago
Failed in applying to current master (apply log)
There is a newer version of this series
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 | 208 +++++++++++++++++-
.../SbsaQemuPlatformDxe/SbsaQemuPlatformDxe.c |  10 +
9 files changed, 241 insertions(+), 1 deletion(-)
[edk2-devel] [PATCH edk2-platforms v3 0/3] Platform/QemuSbsa: add GIC ITS
Posted by Marcin Juszkiewicz 9 months, 2 weeks ago
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 there is no IORT, Linux boots.

Changes since v2:
- no ITS == no IORT

Changes since v1:
- IORT is generated in C
- no ITS == 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 | 208 +++++++++++++++++-
 .../SbsaQemuPlatformDxe/SbsaQemuPlatformDxe.c |  10 +
 9 files changed, 241 insertions(+), 1 deletion(-)

-- 
2.41.0



-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#107051): https://edk2.groups.io/g/devel/message/107051
Mute This Topic: https://groups.io/mt/100233784/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH edk2-platforms v3 0/3] Platform/QemuSbsa: add GIC ITS
Posted by Graeme Gregory 8 months, 2 weeks ago
Patch series seems sane to me.

Reviewed-by: Graeme Gregory <graeme@xora.org.uk>

(I seem to be moving further and further from ARM development and even
further from SBSA machine development so Ill probably remove myself
as a reviewer for this machine)

On Wed, Jul 19, 2023 at 02:08:39PM +0200, Marcin Juszkiewicz wrote:
> 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 there is no IORT, Linux boots.
> 
> Changes since v2:
> - no ITS == no IORT
> 
> Changes since v1:
> - IORT is generated in C
> - no ITS == 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 | 208 +++++++++++++++++-
>  .../SbsaQemuPlatformDxe/SbsaQemuPlatformDxe.c |  10 +
>  9 files changed, 241 insertions(+), 1 deletion(-)
> 
> -- 
> 2.41.0
> 


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#107734): https://edk2.groups.io/g/devel/message/107734
Mute This Topic: https://groups.io/mt/100233784/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-
Re: [edk2-devel] [PATCH edk2-platforms v3 0/3] Platform/QemuSbsa: add GIC ITS
Posted by Ard Biesheuvel 9 months ago
On Wed, 19 Jul 2023 at 14:09, Marcin Juszkiewicz
<marcin.juszkiewicz@linaro.org> wrote:
>
> 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 there is no IORT, Linux boots.
>
> Changes since v2:
> - no ITS == no IORT
>
> Changes since v1:
> - IORT is generated in C
> - no ITS == 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
>

Anyone care to review this please?

>  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 | 208 +++++++++++++++++-
>  .../SbsaQemuPlatformDxe/SbsaQemuPlatformDxe.c |  10 +
>  9 files changed, 241 insertions(+), 1 deletion(-)
>
> --
> 2.41.0
>
>
>
> ------------
> Groups.io Links: You receive all messages sent to this group.
> View/Reply Online (#107051): https://edk2.groups.io/g/devel/message/107051
> Mute This Topic: https://groups.io/mt/100233784/1131722
> Group Owner: devel+owner@edk2.groups.io
> Unsubscribe: https://edk2.groups.io/g/devel/unsub [ardb@kernel.org]
> ------------
>
>


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#107541): https://edk2.groups.io/g/devel/message/107541
Mute This Topic: https://groups.io/mt/100233784/1787277
Group Owner: devel+owner@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [importer@patchew.org]
-=-=-=-=-=-=-=-=-=-=-=-