diff options
author | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2018-12-18 14:10:12 +0100 |
---|---|---|
committer | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2018-12-20 12:41:21 +0100 |
commit | 5afabd5ec373f1e37e9b6cdd85b68e08e8f016fb (patch) | |
tree | ba71f92221e852e82b8345c93c3ffb445b9c024c /ArmPlatformPkg/ArmPlatformPkg.dec | |
parent | e3fa3d83e7c7e8830b31c9d916c0206a71bf2b48 (diff) | |
download | edk2-5afabd5ec373f1e37e9b6cdd85b68e08e8f016fb.zip edk2-5afabd5ec373f1e37e9b6cdd85b68e08e8f016fb.tar.gz edk2-5afabd5ec373f1e37e9b6cdd85b68e08e8f016fb.tar.bz2 |
ArmPlatformPkg/SP805WatchdogDxe: switch to interrupt mode
The SP805 watchdog driver doesn't implement the PI watchdog protocol
fully, but always simply resets the system if the watchdog time runs
out.
However, the hardware does support the intended usage model, as long
as the SP805 is wired up correctly. So let's implement interrupt based
mode involving a handler that is registered by the DXE core and invoked
when the watchdog runs out. In the interrupt handler, we invoke the
notify function if one was registered, before calling the ResetSystem()
runtime service (as per the UEFI spec)
Contributed-under: TianoCore Contribution Agreement 1.1
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Diffstat (limited to 'ArmPlatformPkg/ArmPlatformPkg.dec')
-rw-r--r-- | ArmPlatformPkg/ArmPlatformPkg.dec | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/ArmPlatformPkg/ArmPlatformPkg.dec b/ArmPlatformPkg/ArmPlatformPkg.dec index 5f67e74..44c00bd 100644 --- a/ArmPlatformPkg/ArmPlatformPkg.dec +++ b/ArmPlatformPkg/ArmPlatformPkg.dec @@ -70,6 +70,7 @@ ## SP805 Watchdog
gArmPlatformTokenSpaceGuid.PcdSP805WatchdogBase|0x0|UINT32|0x00000023
gArmPlatformTokenSpaceGuid.PcdSP805WatchdogClockFrequencyInHz|32000|UINT32|0x00000021
+ gArmPlatformTokenSpaceGuid.PcdSP805WatchdogInterrupt|0|UINT32|0x0000002E
## PL011 UART
gArmPlatformTokenSpaceGuid.PL011UartClkInHz|24000000|UINT32|0x0000001F
|