diff mbox series

[edk2,edk2-platforms,v1,13/38] Silicon/Hisilicon/Acpi: Move some macro to PlatformArch.h

Message ID 20180724070922.63362-14-ming.huang@linaro.org
State New
Headers show
Series Upload for D06 platform | expand

Commit Message

Ming Huang July 24, 2018, 7:08 a.m. UTC
From: Sun Yuanchen <sunyuanchen@huawei.com>


ARM_ACPI_HEADER is used by a unify module in other Pkg,
so move some macro to PlatformArch.h for unify D0x.

Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Sun Yuanchen <sunyuanchen@huawei.com>

Signed-off-by: Ming Huang <ming.huang@linaro.org>

Signed-off-by: Heyi Guo <heyi.guo@linaro.org>

---
 Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h | 27 +++-----------------
 Silicon/Hisilicon/Hi1610/Include/PlatformArch.h            | 24 +++++++++++++++++
 Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h    | 24 +----------------
 Silicon/Hisilicon/Hi1616/Include/PlatformArch.h            | 23 +++++++++++++++++
 Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h | 25 ++----------------
 Silicon/Hisilicon/Hi1620/Include/PlatformArch.h            | 23 +++++++++++++++++
 6 files changed, 76 insertions(+), 70 deletions(-)

-- 
2.17.0

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Comments

Leif Lindholm Aug. 3, 2018, 10:37 a.m. UTC | #1
On Tue, Jul 24, 2018 at 03:08:57PM +0800, Ming Huang wrote:
> From: Sun Yuanchen <sunyuanchen@huawei.com>

> 

> ARM_ACPI_HEADER is used by a unify module in other Pkg,


What other Pkg?

> so move some macro to PlatformArch.h for unify D0x.

> 

> Contributed-under: TianoCore Contribution Agreement 1.1

> Signed-off-by: Sun Yuanchen <sunyuanchen@huawei.com>

> Signed-off-by: Ming Huang <ming.huang@linaro.org>

> Signed-off-by: Heyi Guo <heyi.guo@linaro.org>


On the whole, I think this should be implemented for 1610/1616
separately, and then introduced in the first version of the 1620
header.

> ---

>  Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h | 27 +++-----------------

>  Silicon/Hisilicon/Hi1610/Include/PlatformArch.h            | 24 +++++++++++++++++

>  Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h    | 24 +----------------

>  Silicon/Hisilicon/Hi1616/Include/PlatformArch.h            | 23 +++++++++++++++++

>  Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h | 25 ++----------------

>  Silicon/Hisilicon/Hi1620/Include/PlatformArch.h            | 23 +++++++++++++++++

>  6 files changed, 76 insertions(+), 70 deletions(-)

> 

> diff --git a/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h b/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h

> index 5a95b02055..28546bea99 100644

> --- a/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h

> +++ b/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h

> @@ -1,8 +1,8 @@

>  /** @file

>  *

>  *  Copyright (c) 2011-2015, ARM Limited. All rights reserved.

> -*  Copyright (c) 2015, Hisilicon Limited. All rights reserved.

> -*  Copyright (c) 2015, Linaro Limited. All rights reserved.

> +*  Copyright (c) 2015-2018, Hisilicon Limited. All rights reserved.

> +*  Copyright (c) 2015-2018, Linaro Limited. All rights reserved.

>  *

>  *  This program and the accompanying materials

>  *  are licensed and made available under the terms and conditions of the BSD License

> @@ -20,28 +20,7 @@

>  #ifndef _HI1610_PLATFORM_H_

>  #define _HI1610_PLATFORM_H_

>  

> -//

> -// ACPI table information used to initialize tables.

> -//

> -#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long

> -#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64('H','I','P','0','6',' ',' ',' ') // OEM table id 8 bytes long

> -#define EFI_ACPI_ARM_OEM_REVISION     0x00000000

> -#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32('I','N','T','L')

> -#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124

> -

> -// A macro to initialise the common header part of EFI ACPI tables as defined by

> -// EFI_ACPI_DESCRIPTION_HEADER structure.

> -#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \

> -    Signature,                      /* UINT32  Signature */       \

> -    sizeof (Type),                  /* UINT32  Length */          \

> -    Revision,                       /* UINT8   Revision */        \

> -    0,                              /* UINT8   Checksum */        \

> -    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \

> -    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \

> -    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \

> -    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \

> -    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \

> -  }

> +#include <../Include/PlatformArch.h>


No relative #includes.

>  

>  #define HI1610_WATCHDOG_COUNT  2

>  

> diff --git a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h

> index f2e931f30b..03e96cfd31 100644

> --- a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h

> +++ b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h

> @@ -37,5 +37,29 @@

>  

>  #define S1_BASE               0x40000000000

>  

> +

> +//

> +// ACPI table information used to initialize tables.

> +//

> +#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long

> +#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','6',' ',' ',' ') // OEM table id 8 bytes long

> +#define EFI_ACPI_ARM_OEM_REVISION     0x00000000

> +#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')


I realise this is just moving, but ... why are we claiming that Intel
is the creator of these tables?

> +#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124

> +

> +// A macro to initialise the common header part of EFI ACPI tables as defined by

> +// EFI_ACPI_DESCRIPTION_HEADER structure.

> +#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \

> +  Signature,                      /* UINT32  Signature */       \

> +  sizeof (Type),                  /* UINT32  Length */          \

> +  Revision,                       /* UINT8   Revision */        \

> +  0,                              /* UINT8   Checksum */        \

> +  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \

> +  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \

> +  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \

> +  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \

> +  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \

> +  }

> +

>  #endif

>  

> diff --git a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h

> index ad73aa2668..04f9e34a14 100644

> --- a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h

> +++ b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h

> @@ -21,29 +21,7 @@

>  #define _HI1610_PLATFORM_H_

>  

>  #include <IndustryStandard/Acpi.h>

> -

> -//

> -// ACPI table information used to initialize tables.

> -//

> -#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long

> -#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64('H','I','P','0','7',' ',' ',' ') // OEM table id 8 bytes long

> -#define EFI_ACPI_ARM_OEM_REVISION     0x00000000

> -#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32('I','N','T','L')

> -#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124

> -

> -// A macro to initialise the common header part of EFI ACPI tables as defined by

> -// EFI_ACPI_DESCRIPTION_HEADER structure.

> -#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \

> -    Signature,                      /* UINT32  Signature */       \

> -    sizeof (Type),                  /* UINT32  Length */          \

> -    Revision,                       /* UINT8   Revision */        \

> -    0,                              /* UINT8   Checksum */        \

> -    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \

> -    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \

> -    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \

> -    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \

> -    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \

> -  }

> +#include <../Include/PlatformArch.h>


No relative includes.

>  

>  #define HI1616_WATCHDOG_COUNT  2

>  #define HI1616_GIC_STRUCTURE_COUNT  64

> diff --git a/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h

> index f2e931f30b..14e9b483af 100644

> --- a/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h

> +++ b/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h

> @@ -37,5 +37,28 @@

>  

>  #define S1_BASE               0x40000000000

>  

> +//

> +// ACPI table information used to initialize tables.

> +//

> +#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long

> +#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','7',' ',' ',' ') // OEM table id 8 bytes long

> +#define EFI_ACPI_ARM_OEM_REVISION     0x00000000

> +#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')

> +#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124

> +

> +// A macro to initialise the common header part of EFI ACPI tables as defined by

> +// EFI_ACPI_DESCRIPTION_HEADER structure.

> +#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \

> +  Signature,                      /* UINT32  Signature */       \

> +  sizeof (Type),                  /* UINT32  Length */          \

> +  Revision,                       /* UINT8   Revision */        \

> +  0,                              /* UINT8   Checksum */        \

> +  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \

> +  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \

> +  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \

> +  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \

> +  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \

> +  }

> +

>  #endif

>  

> diff --git a/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h b/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h

> index 676d91fa49..5a6aa9a876 100644

> --- a/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h

> +++ b/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h

> @@ -2,7 +2,7 @@

>  *

>  *  Copyright (c) 2011-2015, ARM Limited. All rights reserved.

>  *  Copyright (c) 2018, Hisilicon Limited. All rights reserved.

> -*  Copyright (c) 2015, Linaro Limited. All rights reserved.

> +*  Copyright (c) 2015-2018, Linaro Limited. All rights reserved.

>  *

>  *  This program and the accompanying materials

>  *  are licensed and made available under the terms and conditions of the BSD License

> @@ -20,28 +20,7 @@

>  #ifndef _HI1620_PLATFORM_H_

>  #define _HI1620_PLATFORM_H_

>  

> -//

> -// ACPI table information used to initialize tables.

> -//

> -#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long

> -#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','8',' ',' ',' ') // OEM table id 8 bytes long

> -#define EFI_ACPI_ARM_OEM_REVISION     0x00000000

> -#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')

> -#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124

> -

> -// A macro to initialise the common header part of EFI ACPI tables as defined by

> -// EFI_ACPI_DESCRIPTION_HEADER structure.

> -#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \

> -    Signature,                      /* UINT32  Signature */       \

> -    sizeof (Type),                  /* UINT32  Length */          \

> -    Revision,                       /* UINT8   Revision */        \

> -    0,                              /* UINT8   Checksum */        \

> -    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \

> -    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \

> -    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \

> -    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \

> -    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \

> -  }

> +#include <../Include/PlatformArch.h>


No relative includes.

/
    Leif

>  

>  #define HI1620_WATCHDOG_COUNT  2

>  

> diff --git a/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h

> index 2fc1b9219d..ac90e9dfb5 100644

> --- a/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h

> +++ b/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h

> @@ -36,5 +36,28 @@

>  #define EFI_ACPI_MEMORY_AFFINITY_STRUCTURE_COUNT        16

>  #define EFI_ACPI_6_2_ITS_AFFINITY_STRUCTURE_COUNT       1

>  

> +//

> +// ACPI table information used to initialize tables.

> +//

> +#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long

> +#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','8',' ',' ',' ') // OEM table id 8 bytes long

> +#define EFI_ACPI_ARM_OEM_REVISION     0x00000000

> +#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')

> +#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124

> +

> +// A macro to initialise the common header part of EFI ACPI tables as defined by

> +// EFI_ACPI_DESCRIPTION_HEADER structure.

> +#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \

> +  Signature,                      /* UINT32  Signature */       \

> +  sizeof (Type),                  /* UINT32  Length */          \

> +  Revision,                       /* UINT8   Revision */        \

> +  0,                              /* UINT8   Checksum */        \

> +  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \

> +  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \

> +  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \

> +  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \

> +  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \

> +  }

> +

>  #endif

>  

> -- 

> 2.17.0

> 

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Ming Huang Aug. 8, 2018, 12:22 p.m. UTC | #2
在 8/3/2018 6:37 PM, Leif Lindholm 写道:
> On Tue, Jul 24, 2018 at 03:08:57PM +0800, Ming Huang wrote:
>> From: Sun Yuanchen <sunyuanchen@huawei.com>
>>
>> ARM_ACPI_HEADER is used by a unify module in other Pkg,
> 
> What other Pkg?
> 

HwPkg

>> so move some macro to PlatformArch.h for unify D0x.
>>
>> Contributed-under: TianoCore Contribution Agreement 1.1
>> Signed-off-by: Sun Yuanchen <sunyuanchen@huawei.com>
>> Signed-off-by: Ming Huang <ming.huang@linaro.org>
>> Signed-off-by: Heyi Guo <heyi.guo@linaro.org>
> 
> On the whole, I think this should be implemented for 1610/1616
> separately, and then introduced in the first version of the 1620
> header.
> 

do it in v2.

>> ---
>>  Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h | 27 +++-----------------
>>  Silicon/Hisilicon/Hi1610/Include/PlatformArch.h            | 24 +++++++++++++++++
>>  Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h    | 24 +----------------
>>  Silicon/Hisilicon/Hi1616/Include/PlatformArch.h            | 23 +++++++++++++++++
>>  Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h | 25 ++----------------
>>  Silicon/Hisilicon/Hi1620/Include/PlatformArch.h            | 23 +++++++++++++++++
>>  6 files changed, 76 insertions(+), 70 deletions(-)
>>
>> diff --git a/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h b/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h
>> index 5a95b02055..28546bea99 100644
>> --- a/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h
>> +++ b/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h
>> @@ -1,8 +1,8 @@
>>  /** @file
>>  *
>>  *  Copyright (c) 2011-2015, ARM Limited. All rights reserved.
>> -*  Copyright (c) 2015, Hisilicon Limited. All rights reserved.
>> -*  Copyright (c) 2015, Linaro Limited. All rights reserved.
>> +*  Copyright (c) 2015-2018, Hisilicon Limited. All rights reserved.
>> +*  Copyright (c) 2015-2018, Linaro Limited. All rights reserved.
>>  *
>>  *  This program and the accompanying materials
>>  *  are licensed and made available under the terms and conditions of the BSD License
>> @@ -20,28 +20,7 @@
>>  #ifndef _HI1610_PLATFORM_H_
>>  #define _HI1610_PLATFORM_H_
>>  
>> -//
>> -// ACPI table information used to initialize tables.
>> -//
>> -#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
>> -#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64('H','I','P','0','6',' ',' ',' ') // OEM table id 8 bytes long
>> -#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
>> -#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32('I','N','T','L')
>> -#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
>> -
>> -// A macro to initialise the common header part of EFI ACPI tables as defined by
>> -// EFI_ACPI_DESCRIPTION_HEADER structure.
>> -#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \
>> -    Signature,                      /* UINT32  Signature */       \
>> -    sizeof (Type),                  /* UINT32  Length */          \
>> -    Revision,                       /* UINT8   Revision */        \
>> -    0,                              /* UINT8   Checksum */        \
>> -    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
>> -    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
>> -    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
>> -    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
>> -    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
>> -  }
>> +#include <../Include/PlatformArch.h>
> 
> No relative #includes.
> 
>>  
>>  #define HI1610_WATCHDOG_COUNT  2
>>  
>> diff --git a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
>> index f2e931f30b..03e96cfd31 100644
>> --- a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
>> +++ b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
>> @@ -37,5 +37,29 @@
>>  
>>  #define S1_BASE               0x40000000000
>>  
>> +
>> +//
>> +// ACPI table information used to initialize tables.
>> +//
>> +#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
>> +#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','6',' ',' ',' ') // OEM table id 8 bytes long
>> +#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
>> +#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
> 
> I realise this is just moving, but ... why are we claiming that Intel
> is the creator of these tables?
> 

I don't know the reason. I think this is a history mistake.
CREATEOR_ID should be change to 'HISI' for 1620?

>> +#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
>> +
>> +// A macro to initialise the common header part of EFI ACPI tables as defined by
>> +// EFI_ACPI_DESCRIPTION_HEADER structure.
>> +#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \
>> +  Signature,                      /* UINT32  Signature */       \
>> +  sizeof (Type),                  /* UINT32  Length */          \
>> +  Revision,                       /* UINT8   Revision */        \
>> +  0,                              /* UINT8   Checksum */        \
>> +  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
>> +  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
>> +  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
>> +  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
>> +  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
>> +  }
>> +
>>  #endif
>>  
>> diff --git a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h
>> index ad73aa2668..04f9e34a14 100644
>> --- a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h
>> +++ b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h
>> @@ -21,29 +21,7 @@
>>  #define _HI1610_PLATFORM_H_
>>  
>>  #include <IndustryStandard/Acpi.h>
>> -
>> -//
>> -// ACPI table information used to initialize tables.
>> -//
>> -#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
>> -#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64('H','I','P','0','7',' ',' ',' ') // OEM table id 8 bytes long
>> -#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
>> -#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32('I','N','T','L')
>> -#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
>> -
>> -// A macro to initialise the common header part of EFI ACPI tables as defined by
>> -// EFI_ACPI_DESCRIPTION_HEADER structure.
>> -#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \
>> -    Signature,                      /* UINT32  Signature */       \
>> -    sizeof (Type),                  /* UINT32  Length */          \
>> -    Revision,                       /* UINT8   Revision */        \
>> -    0,                              /* UINT8   Checksum */        \
>> -    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
>> -    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
>> -    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
>> -    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
>> -    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
>> -  }
>> +#include <../Include/PlatformArch.h>
> 
> No relative includes.
> 
>>  
>>  #define HI1616_WATCHDOG_COUNT  2
>>  #define HI1616_GIC_STRUCTURE_COUNT  64
>> diff --git a/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h
>> index f2e931f30b..14e9b483af 100644
>> --- a/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h
>> +++ b/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h
>> @@ -37,5 +37,28 @@
>>  
>>  #define S1_BASE               0x40000000000
>>  
>> +//
>> +// ACPI table information used to initialize tables.
>> +//
>> +#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
>> +#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','7',' ',' ',' ') // OEM table id 8 bytes long
>> +#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
>> +#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
>> +#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
>> +
>> +// A macro to initialise the common header part of EFI ACPI tables as defined by
>> +// EFI_ACPI_DESCRIPTION_HEADER structure.
>> +#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \
>> +  Signature,                      /* UINT32  Signature */       \
>> +  sizeof (Type),                  /* UINT32  Length */          \
>> +  Revision,                       /* UINT8   Revision */        \
>> +  0,                              /* UINT8   Checksum */        \
>> +  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
>> +  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
>> +  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
>> +  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
>> +  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
>> +  }
>> +
>>  #endif
>>  
>> diff --git a/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h b/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h
>> index 676d91fa49..5a6aa9a876 100644
>> --- a/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h
>> +++ b/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h
>> @@ -2,7 +2,7 @@
>>  *
>>  *  Copyright (c) 2011-2015, ARM Limited. All rights reserved.
>>  *  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
>> -*  Copyright (c) 2015, Linaro Limited. All rights reserved.
>> +*  Copyright (c) 2015-2018, Linaro Limited. All rights reserved.
>>  *
>>  *  This program and the accompanying materials
>>  *  are licensed and made available under the terms and conditions of the BSD License
>> @@ -20,28 +20,7 @@
>>  #ifndef _HI1620_PLATFORM_H_
>>  #define _HI1620_PLATFORM_H_
>>  
>> -//
>> -// ACPI table information used to initialize tables.
>> -//
>> -#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
>> -#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','8',' ',' ',' ') // OEM table id 8 bytes long
>> -#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
>> -#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
>> -#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
>> -
>> -// A macro to initialise the common header part of EFI ACPI tables as defined by
>> -// EFI_ACPI_DESCRIPTION_HEADER structure.
>> -#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \
>> -    Signature,                      /* UINT32  Signature */       \
>> -    sizeof (Type),                  /* UINT32  Length */          \
>> -    Revision,                       /* UINT8   Revision */        \
>> -    0,                              /* UINT8   Checksum */        \
>> -    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
>> -    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
>> -    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
>> -    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
>> -    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
>> -  }
>> +#include <../Include/PlatformArch.h>
> 
> No relative includes.
> 

Modify it in v2.
Thanks.

Ming

> /
>     Leif
> 
>>  
>>  #define HI1620_WATCHDOG_COUNT  2
>>  
>> diff --git a/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h
>> index 2fc1b9219d..ac90e9dfb5 100644
>> --- a/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h
>> +++ b/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h
>> @@ -36,5 +36,28 @@
>>  #define EFI_ACPI_MEMORY_AFFINITY_STRUCTURE_COUNT        16
>>  #define EFI_ACPI_6_2_ITS_AFFINITY_STRUCTURE_COUNT       1
>>  
>> +//
>> +// ACPI table information used to initialize tables.
>> +//
>> +#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
>> +#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','8',' ',' ',' ') // OEM table id 8 bytes long
>> +#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
>> +#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
>> +#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
>> +
>> +// A macro to initialise the common header part of EFI ACPI tables as defined by
>> +// EFI_ACPI_DESCRIPTION_HEADER structure.
>> +#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \
>> +  Signature,                      /* UINT32  Signature */       \
>> +  sizeof (Type),                  /* UINT32  Length */          \
>> +  Revision,                       /* UINT8   Revision */        \
>> +  0,                              /* UINT8   Checksum */        \
>> +  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
>> +  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
>> +  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
>> +  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
>> +  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
>> +  }
>> +
>>  #endif
>>  
>> -- 
>> 2.17.0
>>
Leif Lindholm Aug. 8, 2018, 12:57 p.m. UTC | #3
On Wed, Aug 08, 2018 at 08:22:27PM +0800, Ming wrote:
> 在 8/3/2018 6:37 PM, Leif Lindholm 写道:
> > On Tue, Jul 24, 2018 at 03:08:57PM +0800, Ming Huang wrote:
> >> From: Sun Yuanchen <sunyuanchen@huawei.com>
> >>
> >> ARM_ACPI_HEADER is used by a unify module in other Pkg,
> > 
> > What other Pkg?
> 
> HwPkg

Then please say so in the commit message.

> >> so move some macro to PlatformArch.h for unify D0x.
> >>
> >> Contributed-under: TianoCore Contribution Agreement 1.1
> >> Signed-off-by: Sun Yuanchen <sunyuanchen@huawei.com>
> >> Signed-off-by: Ming Huang <ming.huang@linaro.org>
> >> Signed-off-by: Heyi Guo <heyi.guo@linaro.org>
> > 
> > On the whole, I think this should be implemented for 1610/1616
> > separately, and then introduced in the first version of the 1620
> > header.
> 
> do it in v2.

Thanks.

> >> diff --git a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
> >> index f2e931f30b..03e96cfd31 100644
> >> --- a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
> >> +++ b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
> >> @@ -37,5 +37,29 @@
> >>  
> >>  #define S1_BASE               0x40000000000
> >>  
> >> +
> >> +//
> >> +// ACPI table information used to initialize tables.
> >> +//
> >> +#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
> >> +#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','6',' ',' ',' ') // OEM table id 8 bytes long
> >> +#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
> >> +#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
> > 
> > I realise this is just moving, but ... why are we claiming that Intel
> > is the creator of these tables?
> 
> I don't know the reason. I think this is a history mistake.

Agreed. On the reviewer side also :)

> CREATEOR_ID should be change to 'HISI' for 1620?

Yes please, I think that would make more sense.

It may be worth changing for 1610/1616 as well, but you need to
discuss that internally. The code has had that value this long, so no
need to resolve for the Linaro 18.08 release.

/
    Leif
diff mbox series

Patch

diff --git a/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h b/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h
index 5a95b02055..28546bea99 100644
--- a/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h
+++ b/Silicon/Hisilicon/Hi1610/Hi1610AcpiTables/Hi1610Platform.h
@@ -1,8 +1,8 @@ 
 /** @file
 *
 *  Copyright (c) 2011-2015, ARM Limited. All rights reserved.
-*  Copyright (c) 2015, Hisilicon Limited. All rights reserved.
-*  Copyright (c) 2015, Linaro Limited. All rights reserved.
+*  Copyright (c) 2015-2018, Hisilicon Limited. All rights reserved.
+*  Copyright (c) 2015-2018, Linaro Limited. All rights reserved.
 *
 *  This program and the accompanying materials
 *  are licensed and made available under the terms and conditions of the BSD License
@@ -20,28 +20,7 @@ 
 #ifndef _HI1610_PLATFORM_H_
 #define _HI1610_PLATFORM_H_
 
-//
-// ACPI table information used to initialize tables.
-//
-#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
-#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64('H','I','P','0','6',' ',' ',' ') // OEM table id 8 bytes long
-#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
-#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32('I','N','T','L')
-#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
-
-// A macro to initialise the common header part of EFI ACPI tables as defined by
-// EFI_ACPI_DESCRIPTION_HEADER structure.
-#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \
-    Signature,                      /* UINT32  Signature */       \
-    sizeof (Type),                  /* UINT32  Length */          \
-    Revision,                       /* UINT8   Revision */        \
-    0,                              /* UINT8   Checksum */        \
-    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
-    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
-    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
-    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
-    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
-  }
+#include <../Include/PlatformArch.h>
 
 #define HI1610_WATCHDOG_COUNT  2
 
diff --git a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
index f2e931f30b..03e96cfd31 100644
--- a/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
+++ b/Silicon/Hisilicon/Hi1610/Include/PlatformArch.h
@@ -37,5 +37,29 @@ 
 
 #define S1_BASE               0x40000000000
 
+
+//
+// ACPI table information used to initialize tables.
+//
+#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
+#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','6',' ',' ',' ') // OEM table id 8 bytes long
+#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
+#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
+#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
+
+// A macro to initialise the common header part of EFI ACPI tables as defined by
+// EFI_ACPI_DESCRIPTION_HEADER structure.
+#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \
+  Signature,                      /* UINT32  Signature */       \
+  sizeof (Type),                  /* UINT32  Length */          \
+  Revision,                       /* UINT8   Revision */        \
+  0,                              /* UINT8   Checksum */        \
+  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
+  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
+  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
+  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
+  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
+  }
+
 #endif
 
diff --git a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h
index ad73aa2668..04f9e34a14 100644
--- a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h
+++ b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Hi1616Platform.h
@@ -21,29 +21,7 @@ 
 #define _HI1610_PLATFORM_H_
 
 #include <IndustryStandard/Acpi.h>
-
-//
-// ACPI table information used to initialize tables.
-//
-#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
-#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64('H','I','P','0','7',' ',' ',' ') // OEM table id 8 bytes long
-#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
-#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32('I','N','T','L')
-#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
-
-// A macro to initialise the common header part of EFI ACPI tables as defined by
-// EFI_ACPI_DESCRIPTION_HEADER structure.
-#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \
-    Signature,                      /* UINT32  Signature */       \
-    sizeof (Type),                  /* UINT32  Length */          \
-    Revision,                       /* UINT8   Revision */        \
-    0,                              /* UINT8   Checksum */        \
-    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
-    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
-    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
-    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
-    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
-  }
+#include <../Include/PlatformArch.h>
 
 #define HI1616_WATCHDOG_COUNT  2
 #define HI1616_GIC_STRUCTURE_COUNT  64
diff --git a/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h
index f2e931f30b..14e9b483af 100644
--- a/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h
+++ b/Silicon/Hisilicon/Hi1616/Include/PlatformArch.h
@@ -37,5 +37,28 @@ 
 
 #define S1_BASE               0x40000000000
 
+//
+// ACPI table information used to initialize tables.
+//
+#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
+#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','7',' ',' ',' ') // OEM table id 8 bytes long
+#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
+#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
+#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
+
+// A macro to initialise the common header part of EFI ACPI tables as defined by
+// EFI_ACPI_DESCRIPTION_HEADER structure.
+#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \
+  Signature,                      /* UINT32  Signature */       \
+  sizeof (Type),                  /* UINT32  Length */          \
+  Revision,                       /* UINT8   Revision */        \
+  0,                              /* UINT8   Checksum */        \
+  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
+  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
+  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
+  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
+  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
+  }
+
 #endif
 
diff --git a/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h b/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h
index 676d91fa49..5a6aa9a876 100644
--- a/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h
+++ b/Silicon/Hisilicon/Hi1620/Hi1620AcpiTables/Hi1620Platform.h
@@ -2,7 +2,7 @@ 
 *
 *  Copyright (c) 2011-2015, ARM Limited. All rights reserved.
 *  Copyright (c) 2018, Hisilicon Limited. All rights reserved.
-*  Copyright (c) 2015, Linaro Limited. All rights reserved.
+*  Copyright (c) 2015-2018, Linaro Limited. All rights reserved.
 *
 *  This program and the accompanying materials
 *  are licensed and made available under the terms and conditions of the BSD License
@@ -20,28 +20,7 @@ 
 #ifndef _HI1620_PLATFORM_H_
 #define _HI1620_PLATFORM_H_
 
-//
-// ACPI table information used to initialize tables.
-//
-#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
-#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','8',' ',' ',' ') // OEM table id 8 bytes long
-#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
-#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
-#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
-
-// A macro to initialise the common header part of EFI ACPI tables as defined by
-// EFI_ACPI_DESCRIPTION_HEADER structure.
-#define ARM_ACPI_HEADER(Signature, Type, Revision) {              \
-    Signature,                      /* UINT32  Signature */       \
-    sizeof (Type),                  /* UINT32  Length */          \
-    Revision,                       /* UINT8   Revision */        \
-    0,                              /* UINT8   Checksum */        \
-    { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
-    EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
-    EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
-    EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
-    EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
-  }
+#include <../Include/PlatformArch.h>
 
 #define HI1620_WATCHDOG_COUNT  2
 
diff --git a/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h b/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h
index 2fc1b9219d..ac90e9dfb5 100644
--- a/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h
+++ b/Silicon/Hisilicon/Hi1620/Include/PlatformArch.h
@@ -36,5 +36,28 @@ 
 #define EFI_ACPI_MEMORY_AFFINITY_STRUCTURE_COUNT        16
 #define EFI_ACPI_6_2_ITS_AFFINITY_STRUCTURE_COUNT       1
 
+//
+// ACPI table information used to initialize tables.
+//
+#define EFI_ACPI_ARM_OEM_ID           'H','I','S','I',' ',' '   // OEMID 6 bytes long
+#define EFI_ACPI_ARM_OEM_TABLE_ID     SIGNATURE_64 ('H','I','P','0','8',' ',' ',' ') // OEM table id 8 bytes long
+#define EFI_ACPI_ARM_OEM_REVISION     0x00000000
+#define EFI_ACPI_ARM_CREATOR_ID       SIGNATURE_32 ('I','N','T','L')
+#define EFI_ACPI_ARM_CREATOR_REVISION 0x20151124
+
+// A macro to initialise the common header part of EFI ACPI tables as defined by
+// EFI_ACPI_DESCRIPTION_HEADER structure.
+#define ARM_ACPI_HEADER(Signature, Type, Revision) {            \
+  Signature,                      /* UINT32  Signature */       \
+  sizeof (Type),                  /* UINT32  Length */          \
+  Revision,                       /* UINT8   Revision */        \
+  0,                              /* UINT8   Checksum */        \
+  { EFI_ACPI_ARM_OEM_ID },        /* UINT8   OemId[6] */        \
+  EFI_ACPI_ARM_OEM_TABLE_ID,      /* UINT64  OemTableId */      \
+  EFI_ACPI_ARM_OEM_REVISION,      /* UINT32  OemRevision */     \
+  EFI_ACPI_ARM_CREATOR_ID,        /* UINT32  CreatorId */       \
+  EFI_ACPI_ARM_CREATOR_REVISION   /* UINT32  CreatorRevision */ \
+  }
+
 #endif