------------- Registers -- -------------
subtype COUNT_COUNT_Field is HAL.UInt8;
type COUNT_Register is record
COUNT : COUNT_COUNT_Field := 16#0#;
Reserved_8_31 : HAL.UInt24 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
type CTRL_ENABLE_Field is
CTRL_ENABLE_Field_Reset,
DISABLE,
ENABLE)
with Size => 12;
type CTRL_FREQ_RANGE_Field is
CTRL_FREQ_RANGE_Field_Reset,
Val_1_15MHZ,
RESERVED_1,
RESERVED_2,
RESERVED_3)
with Size => 12;
type CTRL_Register is record
FREQ_RANGE : CTRL_FREQ_RANGE_Field := CTRL_FREQ_RANGE_Field_Reset;
ENABLE : CTRL_ENABLE_Field := CTRL_ENABLE_Field_Reset;
Reserved_24_31 : HAL.UInt8 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype STARTUP_DELAY_Field is HAL.UInt14;
type STARTUP_Register is record
DELAY_k : STARTUP_DELAY_Field := 16#C4#;
Reserved_14_19 : HAL.UInt6 := 16#0#;
X4 : Boolean := False;
Reserved_21_31 : HAL.UInt11 := 16#0#;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
type STATUS_FREQ_RANGE_Field is
(Val_1_15MHZ,
RESERVED_1,
RESERVED_2,
RESERVED_3)
with Size => 2;
type STATUS_Register is record
FREQ_RANGE : STATUS_FREQ_RANGE_Field := RP2040_SVD.XOSC.Val_1_15MHZ;
Reserved_2_11 : HAL.UInt10 := 16#0#;
ENABLED : Boolean := False;
Reserved_13_23 : HAL.UInt11 := 16#0#;
BADWRITE : Boolean := False;
Reserved_25_30 : HAL.UInt6 := 16#0#;
STABLE : Boolean := False;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
XOSC_Periph : aliased XOSC_Peripheral
with Import, Address => XOSC_Base;
type XOSC_Peripheral is record
CTRL : aliased CTRL_Register;
STATUS : aliased STATUS_Register;
DORMANT : aliased HAL.UInt32;
STARTUP : aliased STARTUP_Register;
COUNT : aliased COUNT_Register;
end record
with Volatile;