diff options
Diffstat (limited to 'c/src/ada/rtems.ads')
-rw-r--r-- | c/src/ada/rtems.ads | 67 |
1 files changed, 67 insertions, 0 deletions
diff --git a/c/src/ada/rtems.ads b/c/src/ada/rtems.ads index cd094e2bcf..0a24a34597 100644 --- a/c/src/ada/rtems.ads +++ b/c/src/ada/rtems.ads @@ -99,6 +99,16 @@ pragma Elaborate_Body (RTEMS); subtype Node is RTEMS.Unsigned32; + type Driver_Name_t is + record + Device_Name : RTEMS.Address; + Device_Name_Length : RTEMS.Unsigned32; + Major : RTEMS.Device_Major_Number; + Minor : RTEMS.Device_Minor_Number; + + end record; + + -- -- Task Related Types -- @@ -1162,6 +1172,63 @@ pragma Elaborate_Body (RTEMS); ); -- + -- Input/Output Manager + -- + + procedure IO_Register_Name ( + Name : in String; + Major : in RTEMS.Device_Major_Number; + Minor : in RTEMS.Device_Minor_Number; + Result : out RTEMS.Status_Codes + ); + + procedure IO_Lookup_Name ( + Name : in String; + Device_Info : out RTEMS.Driver_Name_t; + Result : out RTEMS.Status_Codes + ); + + procedure IO_Open ( + Major : in RTEMS.Device_Major_Number; + Minor : in RTEMS.Device_Minor_Number; + Argument : in RTEMS.Address; + Result : out RTEMS.Status_Codes + ); + pragma Inline (IO_Open); + + procedure IO_Close ( + Major : in RTEMS.Device_Major_Number; + Minor : in RTEMS.Device_Minor_Number; + Argument : in RTEMS.Address; + Result : out RTEMS.Status_Codes + ); + pragma Inline (IO_Close); + + procedure IO_Read ( + Major : in RTEMS.Device_Major_Number; + Minor : in RTEMS.Device_Minor_Number; + Argument : in RTEMS.Address; + Result : out RTEMS.Status_Codes + ); + pragma Inline (IO_Read); + + procedure IO_Write ( + Major : in RTEMS.Device_Major_Number; + Minor : in RTEMS.Device_Minor_Number; + Argument : in RTEMS.Address; + Result : out RTEMS.Status_Codes + ); + pragma Inline (IO_Write); + + procedure IO_Control ( + Major : in RTEMS.Device_Major_Number; + Minor : in RTEMS.Device_Minor_Number; + Argument : in RTEMS.Address; + Result : out RTEMS.Status_Codes + ); + pragma Inline (IO_Control); + + -- -- Fatal Error Manager -- |