From 3cbfba02fef9dae07a041fdbf2e89611d72d6f90 Mon Sep 17 00:00:00 2001 From: David Wei Date: Mon, 12 Jan 2015 09:37:20 +0000 Subject: Upload BSD-licensed Vlv2TbltDevicePkg and Vlv2DeviceRefCodePkg to https://svn.code.sf.net/p/edk2/code/trunk/edk2/, which are for MinnowBoard MAX open source project. Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: David Wei Reviewed-by: Mike Wu Reviewed-by: Hot Tian git-svn-id: https://svn.code.sf.net/p/edk2/code/trunk/edk2@16599 6f19259b-4bc3-4df7-8a09-765794883524 --- Vlv2TbltDevicePkg/Metronome/LegacyMetronome.h | 69 +++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 Vlv2TbltDevicePkg/Metronome/LegacyMetronome.h (limited to 'Vlv2TbltDevicePkg/Metronome/LegacyMetronome.h') diff --git a/Vlv2TbltDevicePkg/Metronome/LegacyMetronome.h b/Vlv2TbltDevicePkg/Metronome/LegacyMetronome.h new file mode 100644 index 0000000000..b9c32da1f2 --- /dev/null +++ b/Vlv2TbltDevicePkg/Metronome/LegacyMetronome.h @@ -0,0 +1,69 @@ +/*++ + + Copyright (c) 2004 - 2014, Intel Corporation. All rights reserved.
+ + This program and the accompanying materials are licensed and made available under + the terms and conditions of the BSD License that accompanies this distribution. + The full text of the license may be found at + http://opensource.org/licenses/bsd-license.php. + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + + +Module Name: + + LegacyMetronome.h + +Abstract: + + Driver implementing the EFI 2.0 metronome protocol using the legacy PORT 61 + timer. + +--*/ + +#ifndef _LEGACY_METRONOME_H +#define _LEGACY_METRONOME_H + +// +// Statements that include other files +// +#include "Protocol/Metronome.h" +#include "Protocol/CpuIo.h" +#include "Library/DebugLib.h" +#include "Library/UefiBootServicesTableLib.h" + + +// +// Private definitions +// +#define TICK_PERIOD 300 +#define REFRESH_PORT 0x61 +#define REFRESH_ON 0x10 +#define REFRESH_OFF 0x00 +#define TIMER1_CONTROL_PORT 0x43 +#define TIMER1_COUNT_PORT 0x41 +#define LOAD_COUNTER1_LSB 0x54 +#define COUNTER1_COUNT 0x12 + +// +// Function Prototypes +// +/** + Waits for the TickNumber of ticks from a known platform time source. + + @param This Pointer to the protocol instance. + @param TickNumber Tick Number to be waited + + @retval EFI_SUCCESS If number of ticks occurred. + @retval EFI_NOT_FOUND Could not locate CPU IO protocol + +**/ +EFI_STATUS +EFIAPI +WaitForTick ( + IN EFI_METRONOME_ARCH_PROTOCOL *This, + IN UINT32 TickNumber + ); + +#endif -- cgit v1.2.3