diff --git a/runtime/adainclude/interfaces-rp2040-pio.ads b/runtime/adainclude/interfaces-rp2040-pio.ads index 999cad3..d839d1a 100644 --- a/runtime/adainclude/interfaces-rp2040-pio.ads +++ b/runtime/adainclude/interfaces-rp2040-pio.ads @@ -1,3 +1,5 @@ +with System.Storage_Elements; use System.Storage_Elements; + package Interfaces.RP2040.PIO is type CTRL_Type is @@ -56,10 +58,40 @@ package Interfaces.RP2040.PIO is FSTAT : Bit_32; end record; + PIO_0 : PIO_Type + with Volatile, Address => PIO_0_Base; + PIO_0_XOR : PIO_Type + with Volatile, Address => PIO_0_Base + Storage_Offset (16#1000#); + PIO_0_Set : PIO_Type + with Volatile, Address => PIO_0_Base + Storage_Offset (16#2000#); + PIO_0_Clear : PIO_Type + with Volatile, Address => PIO_0_Base + Storage_Offset (16#3000#); + + Direct_PIO_0 : Direct_PIO_Type + with Volatile, Address => PIO_0_Base; + Direct_PIO_0_XOR : Direct_PIO_Type + with Volatile, Address => PIO_0_Base + Storage_Offset (16#1000#); + Direct_PIO_0_Set : Direct_PIO_Type + with Volatile, Address => PIO_0_Base + Storage_Offset (16#2000#); + Direct_PIO_0_Clear : Direct_PIO_Type + with Volatile, Address => PIO_0_Base + Storage_Offset (16#3000#); + PIO_1 : PIO_Type - with Address => PIO_1_Base, Volatile; + with Volatile, Address => PIO_1_Base; + PIO_1_XOR : PIO_Type + with Volatile, Address => PIO_1_Base + Storage_Offset (16#1000#); + PIO_1_Set : PIO_Type + with Volatile, Address => PIO_1_Base + Storage_Offset (16#2000#); + PIO_1_Clear : PIO_Type + with Volatile, Address => PIO_1_Base + Storage_Offset (16#3000#); Direct_PIO_1 : Direct_PIO_Type - with Address => PIO_1_Base, Volatile; + with Volatile, Address => PIO_1_Base; + Direct_PIO_1_XOR : Direct_PIO_Type + with Volatile, Address => PIO_1_Base + Storage_Offset (16#1000#); + Direct_PIO_1_Set : Direct_PIO_Type + with Volatile, Address => PIO_1_Base + Storage_Offset (16#2000#); + Direct_PIO_1_Clear : Direct_PIO_Type + with Volatile, Address => PIO_1_Base + Storage_Offset (16#3000#); end Interfaces.RP2040.PIO;