Hi Vivek,

Thank you for this patch.

For this series.
Reviewed-by: Sami Mujawar <sami.muja...@arm.com>

I will merge this series once the merge window opens.

Regards,

Sami Mujawar

-----Original Message-----
From: Vivek Kumar Gautam <vivek.gau...@arm.com> 
Sent: 05 March 2021 01:21 PM
To: devel@edk2.groups.io
Cc: ardb+tianoc...@kernel.org; l...@nuviainc.com; Sami Mujawar 
<sami.muja...@arm.com>
Subject: Re: [edk2-devel] [edk2-platforms][PATCH V2 0/2] Enable SMMUv3 for Arm 
SGI/RD platforms



On 3/5/21 6:44 PM, Vivek Kumar Gautam via groups.io wrote:
> Arm's SMMUv3 present in various SGI/RD platforms provides address
> translation support for devices such as the ones present over PCIe.
> SMMUv3 also supports Address Translation Service (ATS) and Page
> Request Interface (PRI) to work with PCIe devices.
> ATS allows PCIe devices to request translation from a translation
> agent such as SMMU, and then cache these translation in their private
> cache called as Address Translation Cache (ATC).
> Devices that support PRI can also enable the feature when ATS is
> enabled as ATS is a prerequisite for PRI.
> 
> The I/O topology on SGI/RD platforms includes I/O devices (or PCIe
> devices) connected to a SMMU-v3, and an GIC ITS block that facilitates
> interrupt translations for message signaled interrupts. A typical view
> of this topology is as below -
> 
>        ---------------       ------------       ------------
>       |  PCIe device  |---->|  SMMUv3    |---->|   ITS      |
>       | (RequesterID) |     | (StreamID) |     | (DeviceID) |
>        ---------------       ------------       ------------
> 
> This patch series adds the SMMU-v3 node in iort table, and sets up the
> connection between these iort nodes to forward the traffic in the right
> manner.

After applying these patches, the resulting updated Iort Acpi table 
looks like below:

====================================================================
Shell> Acpiview -s iort





  --------------- IORT Table ---------------



Address  : 0xF98DF598

Length   : 236



00000000 : 49 4F 52 54 EC 00 00 00 - 00 A5 41 52 4D 4C 54 44 
IORT......ARMLTD

00000010 : 41 52 4D 53 47 49 20 20 - 27 07 14 20 41 52 4D 20   ARMSGI 
'.. ARM

00000020 : 99 00 00 00 03 00 00 00 - 30 00 00 00 00 00 00 00 
........0.......

00000030 : 00 18 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 
................

00000040 : 01 00 00 00 00 00 00 00 - 04 6C 00 02 00 00 00 00 
.........l......

00000050 : 02 00 00 00 44 00 00 00 - 00 00 00 4F 00 00 00 00 
....D......O....

00000060 : 01 00 00 00 00 00 00 00 - 00 00 00 00 00 00 00 00 
................

00000070 : 00 00 00 00 04 01 00 00 - 00 00 00 00 06 01 00 00 
................

00000080 : 05 01 00 00 00 00 00 00 - 01 00 00 00 00 00 00 00 
................

00000090 : FF FF 00 00 00 00 00 00 - 30 00 00 00 00 00 00 00 
........0.......

000000A0 : 00 00 00 00 01 00 00 00 - 00 00 01 00 30 00 00 00 
............0...

000000B0 : 01 00 00 00 02 38 00 00 - 00 00 00 00 01 00 00 00 
.....8..........

000000C0 : 24 00 00 00 01 00 00 00 - 00 00 00 00 01 00 00 00 
$...............

000000D0 : 00 00 00 00 00 00 00 00 - 00 00 00 00 FF FF 00 00 
................

000000E0 : 00 00 00 00 48 00 00 00 - 00 00 00 00               ....H.......



Table Checksum : OK



IORT                                 :

   Signature                          : IORT

   Length                             : 236

   Revision                           : 0

   Checksum                           : 0xA5

   Oem ID                             : ARMLTD

   Oem Table ID                       : ARMSGI

   Oem Revision                       : 0x20140727

   Creator ID                         : ARM

   Creator Revision                   : 0x99

   Number of IORT Nodes               : 3

   Offset to Array of IORT Nodes      : 0x30

   Reserved                           : 0x0

   * Node Offset *                    : 0x30

   ITS Node                           :

     Type                             : 0

     Length                           : 24

     Revision                         : 0

     Reserved                         : 0x0

     Number of ID mappings            : 0

     Reference to ID Array            : 0x0

     Number of ITSs                   : 1

     GIC ITS Identifier Array [0]     :

       GIC ITS Identifier             : 0

   * Node Offset *                    : 0x48

   SMMUV3 Node                        :

     Type                             : 4

     Length                           : 108

     Revision                         : 2

     Reserved                         : 0x0

     Number of ID mappings            : 2

     Reference to ID Array            : 0x44

     Base Address                     : 0x4F000000

     Flags                            : 0x1

     Reserved                         : 0x0

     VATOS Address                    : 0x0

     Model                            : 0

     Event                            : 0x104

     PRI                              : 0x0

     GERR                             : 0x106

     Sync                             : 0x105

     Proximity domain                 : 0x0

     Device ID mapping index          : 1

     ID Mapping [0]                   :

       Input base                     : 0x0

       Number of IDs                  : 0xFFFF

       Output base                    : 0x0

       Output reference               : 0x30

       Flags                          : 0x0

     ID Mapping [1]                   :

       Input base                     : 0x0

       Number of IDs                  : 0x1

       Output base                    : 0x10000

       Output reference               : 0x30

       Flags                          : 0x1

   * Node Offset *                    : 0xB4

   Root Complex Node                  :

     Type                             : 2

     Length                           : 56

     Revision                         : 0

     Reserved                         : 0x0

     Number of ID mappings            : 1

     Reference to ID Array            : 0x24

     Memory access properties         : 0x1

     ATS Attribute                    : 0x1

     PCI Segment number               : 0x0

     Memory access size limit         : 0x0

     Reserved                         : 0 0 0

     ID Mapping [0]                   :

       Input base                     : 0x0

       Number of IDs                  : 0xFFFF

       Output base                    : 0x0

       Output reference               : 0x48

       Flags                          : 0x0



Table Statistics:

         0 Error(s)

         0 Warning(s)
====================================================================

Best regards
Vivek

[snip]


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


Reply via email to