通用 MMIO 寄存器访问器
More...
#include <mmio_accessor.hpp>
通用 MMIO 寄存器访问器
- Copyright
- Copyright The SimpleKernel Contributors
Definition at line 13 of file mmio_accessor.hpp.
◆ MmioAccessor() [1/3]
| MmioAccessor::MmioAccessor |
( |
uint64_t |
base_addr = 0 | ) |
|
|
inlineexplicit |
◆ MmioAccessor() [2/3]
◆ MmioAccessor() [3/3]
◆ ~MmioAccessor()
| MmioAccessor::~MmioAccessor |
( |
| ) |
|
|
default |
◆ operator=() [1/2]
◆ operator=() [2/2]
◆ Read()
template<typename T >
| auto MmioAccessor::Read |
( |
size_t |
offset | ) |
const -> T |
|
inline |
Read from MMIO register.
- Template Parameters
-
- Parameters
-
| offset | Byte offset from base address |
- Returns
- Register value
Definition at line 19 of file mmio_accessor.hpp.
19 {
20 return *
reinterpret_cast<volatile T*
>(
base + offset);
21 }
◆ Write()
template<typename T >
| auto MmioAccessor::Write |
( |
size_t |
offset, |
|
|
T |
val |
|
) |
| const -> void |
|
inline |
Write to MMIO register.
- Template Parameters
-
- Parameters
-
| offset | Byte offset from base address |
| val | Value to write |
Definition at line 28 of file mmio_accessor.hpp.
28 {
29 *
reinterpret_cast<volatile T*
>(
base + offset) = val;
30 }
◆ base
| uint64_t MmioAccessor::base {0} |
The documentation for this struct was generated from the following file: