------------- Registers -- -------------
subtype CHIP_ID_MANUFACTURER_Field is HAL.UInt12;
subtype CHIP_ID_PART_Field is HAL.UInt16;
type CHIP_ID_Register is record
MANUFACTURER : CHIP_ID_MANUFACTURER_Field;
PART : CHIP_ID_PART_Field;
REVISION : CHIP_ID_REVISION_Field;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
subtype CHIP_ID_REVISION_Field is HAL.UInt4;
type PLATFORM_Register is record
FPGA : Boolean;
ASIC : Boolean;
Reserved_2_31 : HAL.UInt30;
end record
with Volatile_Full_Access, Object_Size => 32,
Bit_Order => System.Low_Order_First;
SYSINFO_Periph : aliased SYSINFO_Peripheral
with Import, Address => SYSINFO_Base;
type SYSINFO_Peripheral is record
CHIP_ID : aliased CHIP_ID_Register;
PLATFORM : aliased PLATFORM_Register;
GITREF_RP2040 : aliased HAL.UInt32;
end record
with Volatile;