template <class RegisterType, typename IntType = uint64_t>

class SysRegDerivedBase

Defined at line 244 of file ../../zircon/kernel/lib/arch/include/lib/arch/sysreg.h

arch::SysRegBase provides a shorthand for defining register types. The

standard boilerplate of `struct T : public hwreg::RegisterBase

<T

, uint64_t>`

is replaced with `struct T : public arch::SysRegBase

<T

>`. This provides the

Get() method automatically. It also provides Read, Modify, and Write

methods that can be called directly in code that isn't trying to be mockable

with a testing object other than arch::SysReg().

Multiple registers with the same layout type are handled by defining the

layout type with arch::SysRegDerivedBase

<LT

> and then defining separate

register tag types using `struct T : public arch::SysRegDerived

<T

, LT> {};`.

Public Methods

auto Get ()

Defined at line 249 of file ../../zircon/kernel/lib/arch/include/lib/arch/sysreg.h