summaryrefslogtreecommitdiffhomepage
path: root/dev/Kernel/ArchKit/ArchKit.h
diff options
context:
space:
mode:
Diffstat (limited to 'dev/Kernel/ArchKit/ArchKit.h')
-rw-r--r--dev/Kernel/ArchKit/ArchKit.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/dev/Kernel/ArchKit/ArchKit.h b/dev/Kernel/ArchKit/ArchKit.h
index af8aef1a..1a3e9c97 100644
--- a/dev/Kernel/ArchKit/ArchKit.h
+++ b/dev/Kernel/ArchKit/ArchKit.h
@@ -46,16 +46,17 @@ namespace Kernel
template <typename WordLength>
inline Void ke_dma_write(WordLength base, WordLength reg, WordLength value) noexcept
{
- *(volatile WordLength*)((UInt64)base + reg) = value;
+ *(volatile WordLength*)(base + reg) = value;
}
/// @brief read from mapped memory register.
/// @param base base address
/// @param reg the register.
/// @return the value inside the register.
- inline UInt32 ke_dma_read(UInt32 base, UInt32 reg) noexcept
+ template <typename WordLength>
+ inline UInt32 ke_dma_read(WordLength base, WordLength reg) noexcept
{
- return *(volatile UInt32*)((UInt64)base + reg);
+ return *(volatile WordLength*)((UInt64)base + reg);
}
namespace HAL