[Linaro-uefi,linaro-uefi,v1,28/32] D05/ACPI: Update PXM information according to Iort spec.

Message ID 1505829398-52214-29-git-send-email-heyi.guo@linaro.org
State New
Headers show
Series
  • Update D03/D05 binary for edk update and fix some error.
Related show

Commit Message

Guo Heyi Sept. 19, 2017, 1:56 p.m.
From: Ming Huang <waip23@foxmail.com>

1. Fix 1P NB PCIe SMMU Length bug.
2. Update PXM information according to Iort spec.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: hensonwang <wanghuiqiang@huawei.com>
---
 Chips/Hisilicon/Hi1616/D05AcpiTables/D05Iort.asl | 73 +++++++++++++++---------
 1 file changed, 46 insertions(+), 27 deletions(-)

Patch

diff --git a/Chips/Hisilicon/Hi1616/D05AcpiTables/D05Iort.asl b/Chips/Hisilicon/Hi1616/D05AcpiTables/D05Iort.asl
index f62b4fc..1f6f313 100644
--- a/Chips/Hisilicon/Hi1616/D05AcpiTables/D05Iort.asl
+++ b/Chips/Hisilicon/Hi1616/D05AcpiTables/D05Iort.asl
@@ -112,16 +112,17 @@ 
 //f4
 /* 1P NA PCIe SMMU */
 [0001]                               Type : 04
-[0002]                             Length : 0050
+[0002]                             Length : 0054        //length added 4
 [0001]                           Revision : 00
 [0004]                           Reserved : 00000000
 [0004]                      Mapping Count : 00000001
-[0004]                     Mapping Offset : 0000003C
+[0004]                     Mapping Offset : 00000040    //new spec define the length
 
 [0008]                       Base Address : a0040000
-[0004]              Flags (decoded below) : 00000001
+[0004]              Flags (decoded below) : 00000009  	//PXM
                           COHACC Override : 1
                             HTTU Override : 0
+                    Proximity Domain Valid: 1          //added for PXM
 [0004]                           Reserved : 00000000
 [0008]                      VATOS Address : 0
 [0004]                              Model : 00000001
@@ -129,6 +130,9 @@ 
 [0004]                      PRI Interrupt : 00000000
 [0004]                     GERR Interrupt : 00000000
 [0004]                     Sync Interrupt : 00000000
+[0001]                    Proximity domain: 00
+[0001]                           Reserved1: 00
+[0002]                           Reserved2: 0000
 /* this is the map for PCIe2 in 1P NA */
 [0004]                         Input base : 0002f800
 [0004]                           ID Count : 00000800
@@ -137,19 +141,20 @@ 
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
-//144
+//148
 /* 2P NB PCIe SMMU */
 [0001]                               Type : 04
-[0002]                             Length : 0064
+[0002]                             Length : 0068        //length added 4
 [0001]                           Revision : 00
 [0004]                           Reserved : 00000000
 [0004]                      Mapping Count : 00000001
-[0004]                     Mapping Offset : 0000003C
+[0004]                     Mapping Offset : 00000040    //new spec define the length
 
 [0008]                       Base Address : 700a0040000
-[0004]              Flags (decoded below) : 00000001
+[0004]              Flags (decoded below) : 00000009  	//PXM
                           COHACC Override : 1
                             HTTU Override : 0
+                    Proximity Domain Valid: 1          //added for PXM
 [0004]                           Reserved : 00000000
 [0008]                      VATOS Address : 0
 [0004]                              Model : 00000001
@@ -157,6 +162,9 @@ 
 [0004]                      PRI Interrupt : 00000000
 [0004]                     GERR Interrupt : 00000000
 [0004]                     Sync Interrupt : 00000000
+[0001]                    Proximity domain: 03
+[0001]                           Reserved1: 00
+[0002]                           Reserved2: 0000
 /* this is the map for pcie0 in 2p nb */
 [0004]                         Input base : 00002000
 [0004]                           Id count : 00001000
@@ -172,18 +180,19 @@ 
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
-//1a8
+//1b0
 [088h 0136   1]                         Type : 04
-[089h 0137   2]                       Length : 003C
+[089h 0137   2]                       Length : 0040        //length added 4
 [08Bh 0139   1]                     Revision : 00
 [08Ch 0140   4]                     Reserved : 00000000
 [090h 0144   4]                Mapping Count : 00000000
-[094h 0148   4]               Mapping Offset : 0000003C
+[094h 0148   4]               Mapping Offset : 00000040    //new spec define the length
 
 [098h 0152   8]                 Base Address : 00000000C0040000
-[0A0h 0160   4]        Flags (decoded below) : 00000001
+[0A0h 0160   4]        Flags (decoded below) : 00000009  	//PXM
                              COHACC Override : 1
                                HTTU Override : 0
+                       Proximity Domain Valid: 1          //added for PXM
 [0A4h 0164   4]                     Reserved : 00000000
 [0A8h 0168   8]                VATOS Address : 0000000000000000
 [0B0h 0176   4]                        Model : 00000001
@@ -191,21 +200,24 @@ 
 [0B8h 0184   4]                     PRI GSIV : 00000000
 [0BCh 0188   4]                    GERR GSIV : 00000000
 [0C0h 0192   4]                    Sync GSIV : 00000000
+[0001]                       Proximity domain: 00
+[0001]                              Reserved1: 00
+[0002]                              Reserved2: 0000
 
-
-//1e4
+//1F0
 /* 1P NB PCIe SMMU */
 [0001]                               Type : 04
-[0002]                             Length : 0050
+[0002]                             Length : 0068        //length added 4
 [0001]                           Revision : 00
 [0004]                           Reserved : 00000000
 [0004]                      Mapping Count : 00000001
-[0004]                     Mapping Offset : 0000003C
+[0004]                     Mapping Offset : 00000040    //new spec define the length
 
 [0008]                       Base Address : 8a0040000
-[0004]              Flags (decoded below) : 00000001
+[0004]              Flags (decoded below) : 00000009  	//PXM
                           COHACC Override : 1
                             HTTU Override : 0
+                    Proximity Domain Valid: 1          //added for PXM
 [0004]                           Reserved : 00000000
 [0008]                      VATOS Address : 0
 [0004]                              Model : 00000001
@@ -213,6 +225,9 @@ 
 [0004]                      PRI Interrupt : 00000000
 [0004]                     GERR Interrupt : 00000000
 [0004]                     Sync Interrupt : 00000000
+[0001]                    Proximity domain: 01
+[0001]                           Reserved1: 00
+[0002]                           Reserved2: 0000
 /* this is the map for PCIe1 in 1P NB */
 [0004]                         Input base : 00017800
 [0004]                           ID Count : 00000800
@@ -228,19 +243,20 @@ 
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
-//248
+//258
 /* 2P NA PCIe SMMU */
 [0001]                               Type : 04
-[0002]                             Length : 0050
+[0002]                             Length : 0054        //length added 4
 [0001]                           Revision : 00
 [0004]                           Reserved : 00000000
 [0004]                      Mapping Count : 00000001
-[0004]                     Mapping Offset : 0000003C
+[0004]                     Mapping Offset : 00000040    //new spec define the length
 
 [0008]                       Base Address : 600a0040000
-[0004]              Flags (decoded below) : 00000001
+[0004]              Flags (decoded below) : 00000009  	//PXM
                           COHACC Override : 1
                             HTTU Override : 0
+                    Proximity Domain Valid: 1          //added for PXM
 [0004]                           Reserved : 00000000
 [0008]                      VATOS Address : 0
 [0004]                              Model : 00000001
@@ -248,6 +264,9 @@ 
 [0004]                      PRI Interrupt : 00000000
 [0004]                     GERR Interrupt : 00000000
 [0004]                     Sync Interrupt : 00000000
+[0001]                    Proximity domain: 02
+[0001]                           Reserved1: 00
+[0002]                           Reserved2: 0000
 /* this is the map for PCIe2 in 2P NA */
 [0004]                         Input base : 00021000
 [0004]                           ID Count : 00001000
@@ -588,7 +607,7 @@ 
 [0004]                         Input base : 00008800
 [0004]                           ID Count : 00000800
 [0004]                        Output Base : 00008800
-[0004]                   Output Reference : 000001e4
+[0004]                   Output Reference : 000001F0
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
@@ -617,7 +636,7 @@ 
 [0004]                         Input base : 00007800
 [0004]                           ID Count : 00000800
 [0004]                        Output Base : 00017800
-[0004]                   Output Reference : 000001e4
+[0004]                   Output Reference : 000001F0
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
@@ -702,7 +721,7 @@ 
 [0004]                         Input base : 00001000
 [0004]                           ID Count : 00001000
 [0004]                        Output Base : 00021000
-[0004]                   Output Reference : 00000248
+[0004]                   Output Reference : 00000258
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
@@ -731,7 +750,7 @@ 
 [0004]                         Input base : 00002000
 [0004]                           ID Count : 00001000
 [0004]                        Output Base : 00002000
-[0004]                   Output Reference : 00000144
+[0004]                   Output Reference : 00000148
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
@@ -760,7 +779,7 @@ 
 [0004]                         Input base : 00003000
 [0004]                           ID Count : 00001000
 [0004]                        Output Base : 00013000
-[0004]                   Output Reference : 00000144
+[0004]                   Output Reference : 00000148
 [0004]              Flags (decoded below) : 00000000
                            Single Mapping : 0
 
@@ -855,7 +874,7 @@ 
 [38Ch 0908   4]                   Input base : 00000000
 [390h 0912   4]                     ID Count : 00000001
 [394h 0916   4]                  Output Base : 00040900
-[398h 0920   4]             Output Reference : 000001a8
+[398h 0920   4]             Output Reference : 000001b0
 [39Ch 0924   4]        Flags (decoded below) : 00000001
                               Single Mapping : 1
 
@@ -952,6 +971,6 @@ 
 [44Ch 1100   4]                   Input base : 00000000
 [450h 1104   4]                     ID Count : 00000001
 [454h 1108   4]                  Output Base : 00000000
-[458h 1112   4]             Output Reference : 000001a8
+[458h 1112   4]             Output Reference : 000001b0
 [45Ch 1116   4]        Flags (decoded below) : 00000001
                               Single Mapping : 1