On Wed, Mar 07, 2018 at 04:10:23PM +0000, Ard Biesheuvel wrote: > On 7 March 2018 at 06:55, Heyi Guo <heyi....@linaro.org> wrote: > > From: Chenhui Sun <sunchen...@huawei.com> > > > > Add description of SBSA watchdogs to ACPI GTDT on D05. > > > > Contributed-under: TianoCore Contribution Agreement 1.1 > > Signed-off-by: Chenhui Sun <sunchen...@huawei.com> > > Signed-off-by: Heyi Guo <heyi....@linaro.org> > > Cc: Ard Biesheuvel <ard.biesheu...@linaro.org> > > Cc: Leif Lindholm <leif.lindh...@linaro.org> > > Cc: Graeme Gregory <graeme.greg...@linaro.org> > > --- > > Platform/Hisilicon/D05/D05.dsc | 4 ++++ > > Silicon/Hisilicon/Hi1616/D05AcpiTables/AcpiTablesHi1616.inf | 2 ++ > > Silicon/Hisilicon/Hi1616/D05AcpiTables/Gtdt.aslc | 19 > > +++++++------------ > > 3 files changed, 13 insertions(+), 12 deletions(-) > > > > diff --git a/Platform/Hisilicon/D05/D05.dsc b/Platform/Hisilicon/D05/D05.dsc > > index 0792b0814ea1..22eaf356224d 100644 > > --- a/Platform/Hisilicon/D05/D05.dsc > > +++ b/Platform/Hisilicon/D05/D05.dsc > > @@ -418,6 +418,10 @@ [PcdsFixedAtBuild.common] > > > > gHisiTokenSpaceGuid.Pcdsoctype|0x1610 > > > > + # SBSA watchdog on Hi1616 > > + gArmTokenSpaceGuid.PcdGenericWatchdogControlBase|0x40500000 > > + gArmTokenSpaceGuid.PcdGenericWatchdogRefreshBase|0x40600000 > > + > > > > ################################################################################ > > # > > # Components Section - list of all EDK II Modules needed by this Platform > > diff --git a/Silicon/Hisilicon/Hi1616/D05AcpiTables/AcpiTablesHi1616.inf > > b/Silicon/Hisilicon/Hi1616/D05AcpiTables/AcpiTablesHi1616.inf > > index bb279c8e428e..6955e6145c30 100644 > > --- a/Silicon/Hisilicon/Hi1616/D05AcpiTables/AcpiTablesHi1616.inf > > +++ b/Silicon/Hisilicon/Hi1616/D05AcpiTables/AcpiTablesHi1616.inf > > @@ -55,5 +55,7 @@ [FixedPcd] > > gArmTokenSpaceGuid.PcdArmArchTimerIntrNum > > gArmTokenSpaceGuid.PcdArmArchTimerHypIntrNum > > gArmTokenSpaceGuid.PcdArmArchTimerVirtIntrNum > > + gArmTokenSpaceGuid.PcdGenericWatchdogControlBase > > + gArmTokenSpaceGuid.PcdGenericWatchdogRefreshBase > > gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterBase > > > > diff --git a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Gtdt.aslc > > b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Gtdt.aslc > > index 2a9d209c00f0..6bc1bde2a490 100644 > > --- a/Silicon/Hisilicon/Hi1616/D05AcpiTables/Gtdt.aslc > > +++ b/Silicon/Hisilicon/Hi1616/D05AcpiTables/Gtdt.aslc > > @@ -29,6 +29,7 @@ > > #define GTDT_TIMER_ALWAYS_ON_CAPABILITY > > EFI_ACPI_6_1_GTDT_TIMER_FLAG_ALWAYS_ON_CAPABILITY > > > > #define GTDT_GTIMER_FLAGS (GTDT_TIMER_ALWAYS_ON_CAPABILITY | > > GTDT_TIMER_ACTIVE_LOW | GTDT_TIMER_LEVEL_TRIGGERED) > > +#define WATCHDOG_SPAN 0x20000000 > > > > Please don't use > > gArmTokenSpaceGuid.PcdGenericWatchdogXXXBase > > to describe two different instances of the IP that are %!@ MB apart. > > Instead, you could introduce your own PCDs in the HiSilicon token > space, but I am also fine with creating local #defines in this file if > the watchdog is not used anywhere else.
Yes they are not used anywhere else, and the number of SBSA watchdogs is SoC related, so I will use local #defines. And I think we can simply change the content of the macros when things change in the future. Thanks, Heyi > > > > #pragma pack (1) > > > > @@ -57,22 +58,16 @@ EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLES Gtdt = { > > FixedPcdGet32 (PcdArmArchTimerHypIntrNum), // UINT32 > > NonSecurePL2TimerGSIV > > GTDT_GTIMER_FLAGS, // UINT32 > > NonSecurePL2TimerFlags > > 0xFFFFFFFFFFFFFFFF, // UINT64 > > CntReadBasePhysicalAddress > > -#ifdef notyet > > - PV660_WATCHDOG_COUNT, // UINT32 > > PlatformTimerCount > > + HI1616_WATCHDOG_COUNT, // UINT32 > > PlatformTimerCount > > sizeof (EFI_ACPI_6_1_GENERIC_TIMER_DESCRIPTION_TABLE) // UINT32 > > PlatfromTimerOffset > > }, > > { > > - EFI_ACPI_6_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT( > > - //FixedPcdGet32 (PcdGenericWatchdogRefreshBase), FixedPcdGet32 > > (PcdGenericWatchdogControlBase), 93, 0), > > - 0, 0, 0, 0), > > - EFI_ACPI_6_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT( > > - //FixedPcdGet32 (PcdGenericWatchdogRefreshBase), FixedPcdGet32 > > (PcdGenericWatchdogControlBase), 94, > > EFI_ACPI_6_1_GTDT_SBSA_GENERIC_WATCHDOG_FLAG_SECURE_TIMER) > > - 0, 0, 0, 0) > > + EFI_ACPI_5_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT( > > + FixedPcdGet32 (PcdGenericWatchdogRefreshBase), FixedPcdGet32 > > (PcdGenericWatchdogControlBase), 400, 0), > > + EFI_ACPI_5_1_SBSA_GENERIC_WATCHDOG_STRUCTURE_INIT( > > + FixedPcdGet32 (PcdGenericWatchdogRefreshBase) + WATCHDOG_SPAN, > > FixedPcdGet32 (PcdGenericWatchdogControlBase) + WATCHDOG_SPAN, 496, 0) > > + > > } > > -#else /* !notyet */ > > - 0, 0 > > - } > > -#endif > > }; > > > > // > > -- > > 2.7.4 > > _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel