From 486425ed00acec134f8799bdde64bfd093c5fb55 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Thu, 26 Dec 2024 21:19:14 +0100 Subject: IMPL: A lot of new changes, see details. Signed-off-by: Amlal El Mahrouss --- dev/Mod/HPET/.gitkeep | 0 dev/Mod/HPET/Defines.h | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+) create mode 100644 dev/Mod/HPET/.gitkeep create mode 100644 dev/Mod/HPET/Defines.h (limited to 'dev/Mod/HPET') diff --git a/dev/Mod/HPET/.gitkeep b/dev/Mod/HPET/.gitkeep new file mode 100644 index 00000000..e69de29b diff --git a/dev/Mod/HPET/Defines.h b/dev/Mod/HPET/Defines.h new file mode 100644 index 00000000..d186698a --- /dev/null +++ b/dev/Mod/HPET/Defines.h @@ -0,0 +1,42 @@ +/* ------------------------------------------- + + Copyright (C) 2024, Theater Quality Inc, all rights reserved. + + File: HPET.h + Purpose: HPET builtin. + + Revision History: + +------------------------------------------- */ + +#pragma once + +#include +#include + +namespace Kernel +{ + struct PACKED HPETAddressStructure final + { + Kernel::UInt8 AddressSpaceId; // 0 - system memory, 1 - system I/O + Kernel::UInt8 RegisterBitWidth; + Kernel::UInt8 RegisterBitOffset; + Kernel::UInt8 Reserved; + Kernel::UInt64 Address; + }; + + struct PACKED HPETHeader final : public SDT + { + Kernel::UInt8 HardwareRevId; + Kernel::UInt8 ComparatorCount : 5; + Kernel::UInt8 CounterSize : 1; + Kernel::UInt8 Reserved : 1; + Kernel::UInt8 LegacyReplacement : 1; + Kernel::UInt16 PciVendorId; + HPETAddressStructure Address; + Kernel::UInt8 HpetNumber; + Kernel::UInt16 MinimumTick; + Kernel::UInt8 PageProtection; + }; + +} // namespace Kernel -- cgit v1.2.3