Changeset d14963b in rtems
- Timestamp:
- Oct 10, 2007, 8:46:33 PM (14 years ago)
- Branches:
- 4.10, 4.11, 4.9, 5, master
- Children:
- ba3e1a4f
- Parents:
- 5a9f372
- Location:
- c/src/ada
- Files:
-
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
c/src/ada/ChangeLog
r5a9f372 rd14963b 1 2007-10-10 Glenn Humphrey <glenn.humphrey@OARcorp.com> 2 3 * rtems.adb, rtems.ads: Cleaned up binding and removed bindings for 4 things that are not reasonable to do in Ada. 5 1 6 2007-10-01 Joel Sherrill <joel.sherrill@OARcorp.com> 2 7 -
c/src/ada/rtems.adb
r5a9f372 rd14963b 450 450 end Task_Set_Note; 451 451 452 procedure Task_Variable_Add ( 453 ID : in RTEMS.ID; 454 Task_Variable : in RTEMS.Address; 455 Dtor : in RTEMS.Task_Variable_Dtor; 456 Result : out RTEMS.Status_Codes 457 ) is 458 function Task_Variable_Add_Base ( 459 ID : RTEMS.ID; 460 Task_Variable : RTEMS.Address; 461 Dtor : RTEMS.Task_Variable_Dtor 462 ) return RTEMS.Status_Codes; 463 pragma Import (C, Task_Variable_Add_Base, "rtems_task_variable_add"); 464 begin 465 466 Result := Task_Variable_Add_Base ( ID, Task_Variable, Dtor ); 467 468 end Task_Variable_Add; 469 470 procedure Task_Variable_Get ( 471 ID : in RTEMS.ID; 472 Task_Variable : out RTEMS.Address; 473 Task_Variable_Value : out RTEMS.Address; 474 Result : out RTEMS.Status_Codes 475 ) is 476 function Task_Variable_Get_Base ( 477 ID : RTEMS.ID; 478 Task_Variable : access RTEMS.Address; 479 Task_Variable_Value : access RTEMS.Address 480 ) return RTEMS.Status_Codes; 481 pragma Import (C, Task_Variable_Get_Base, "rtems_task_variable_get"); 482 Task_Variable_Base : aliased RTEMS.Address; 483 Task_Variable_Value_Base : aliased RTEMS.Address; 484 begin 485 486 Result := Task_Variable_Get_Base ( 487 ID, 488 Task_Variable_Base'Unchecked_Access, 489 Task_Variable_Value_Base'Unchecked_Access 490 ); 491 Task_Variable := Task_Variable_Base; 492 Task_Variable_Value := Task_Variable_Value_Base; 493 494 end Task_Variable_Get; 495 496 procedure Task_Variable_Delete ( 497 ID : in RTEMS.ID; 498 Task_Variable : out RTEMS.Address; 499 Result : out RTEMS.Status_Codes 500 ) is 501 function Task_Variable_Delete_Base ( 502 ID : RTEMS.ID; 503 Task_Variable : access RTEMS.Address 504 ) return RTEMS.Status_Codes; 505 pragma Import ( 506 C, Task_Variable_Delete_Base, "rtems_task_variable_delete" 507 ); 508 Task_Variable_Base : aliased RTEMS.Address; 509 begin 510 511 Result := Task_Variable_Delete_Base ( 512 ID, Task_Variable_Base'Unchecked_Access 513 ); 514 Task_Variable := Task_Variable_Base; 515 516 end Task_Variable_Delete; 517 452 518 procedure Task_Wake_When ( 453 519 Time_Buffer : in RTEMS.Time_Of_Day; … … 481 547 -- Interrupt Manager 482 548 -- 483 484 procedure Interrupt_Catch (485 New_ISR_Handler : in RTEMS.Address;486 Vector : in RTEMS.Vector_Number;487 Old_ISR_Handler : out RTEMS.Address;488 Result : out RTEMS.Status_Codes489 ) is490 function Interrupt_Catch_Base (491 New_ISR_Handler : RTEMS.Address;492 Vector : RTEMS.Vector_Number;493 Old_ISR_Handler : access RTEMS.Address494 ) return RTEMS.Status_Codes;495 pragma Import (C, Interrupt_Catch_Base, "rtems_interrupt_catch");496 Old_ISR_Handler_Base : aliased RTEMS.Address;497 begin498 499 Result := Interrupt_Catch_Base (500 New_ISR_Handler,501 Vector,502 OLD_ISR_HANDLER_Base'Unchecked_Access503 );504 Old_ISR_Handler := OLD_ISR_HANDLER_Base;505 506 end Interrupt_Catch;507 549 508 550 -- Interrupt_Disable is interfaced in the specification … … 1558 1600 end Port_Internal_To_External; 1559 1601 1560 --1561 -- Input/Output Manager1562 --1563 1564 procedure IO_Register_Name (1565 Name : in String;1566 Major : in RTEMS.Device_Major_Number;1567 Minor : in RTEMS.Device_Minor_Number;1568 Result : out RTEMS.Status_Codes1569 ) is1570 function IO_Register_Name_Base (1571 Name : Interfaces.C.Char_Array;1572 Major : RTEMS.Device_Major_Number;1573 Minor : RTEMS.Device_Minor_Number1574 ) return RTEMS.Status_Codes;1575 pragma Import (C, IO_Register_Name_Base, "rtems_io_register_name");1576 begin1577 1578 Result :=1579 IO_Register_Name_Base ( Interfaces.C.To_C (Name), Major, Minor );1580 1581 end IO_Register_Name;1582 1583 procedure IO_Lookup_Name (1584 Name : in String;1585 Device_Info : in RTEMS.Driver_Name_t_Pointer;1586 Result : out RTEMS.Status_Codes1587 ) is1588 function IO_Lookup_Name_Base (1589 Name : Interfaces.C.Char_Array;1590 Device_Info : access RTEMS.Driver_Name_t1591 ) return RTEMS.Status_Codes;1592 pragma Import (C, IO_Lookup_Name_Base, "rtems_io_lookup_name");1593 Device_Info_Base : aliased RTEMS.Driver_Name_t;1594 begin1595 1596 Result := IO_Lookup_Name_Base (1597 Interfaces.C.To_C (Name),1598 Device_Info_Base'Unchecked_Access1599 );1600 Device_Info.All := Device_Info_Base;1601 1602 end IO_Lookup_Name;1603 1604 procedure IO_Open (1605 Major : in RTEMS.Device_Major_Number;1606 Minor : in RTEMS.Device_Minor_Number;1607 Argument : in RTEMS.Address;1608 Result : out RTEMS.Status_Codes1609 ) is1610 function IO_Open_Base (1611 Major : RTEMS.Device_Major_Number;1612 Minor : RTEMS.Device_Minor_Number;1613 Argument : RTEMS.Address1614 ) return RTEMS.Status_Codes;1615 pragma Import (C, IO_Open_Base, "rtems_io_open");1616 begin1617 1618 Result := IO_Open_Base (Major, Minor, Argument);1619 1620 end IO_Open;1621 1622 procedure IO_Close (1623 Major : in RTEMS.Device_Major_Number;1624 Minor : in RTEMS.Device_Minor_Number;1625 Argument : in RTEMS.Address;1626 Result : out RTEMS.Status_Codes1627 ) is1628 function IO_Close_Base (1629 Major : RTEMS.Device_Major_Number;1630 Minor : RTEMS.Device_Minor_Number;1631 Argument : RTEMS.Address1632 ) return RTEMS.Status_Codes;1633 pragma Import (C, IO_Close_Base, "rtems_io_close");1634 begin1635 1636 Result := IO_Close_Base (Major, Minor, Argument);1637 1638 end IO_Close;1639 1640 procedure IO_Read (1641 Major : in RTEMS.Device_Major_Number;1642 Minor : in RTEMS.Device_Minor_Number;1643 Argument : in RTEMS.Address;1644 Result : out RTEMS.Status_Codes1645 ) is1646 function IO_Read_Base (1647 Major : RTEMS.Device_Major_Number;1648 Minor : RTEMS.Device_Minor_Number;1649 Argument : RTEMS.Address1650 ) return RTEMS.Status_Codes;1651 pragma Import (C, IO_Read_Base, "rtems_io_read");1652 begin1653 1654 Result := IO_Read_Base (Major, Minor, Argument);1655 1656 end IO_Read;1657 1658 procedure IO_Write (1659 Major : in RTEMS.Device_Major_Number;1660 Minor : in RTEMS.Device_Minor_Number;1661 Argument : in RTEMS.Address;1662 Result : out RTEMS.Status_Codes1663 ) is1664 function IO_Write_Base (1665 Major : RTEMS.Device_Major_Number;1666 Minor : RTEMS.Device_Minor_Number;1667 Argument : RTEMS.Address1668 ) return RTEMS.Status_Codes;1669 pragma Import (C, IO_Write_Base, "rtems_io_write");1670 begin1671 1672 Result := IO_Write_Base (Major, Minor, Argument);1673 1674 end IO_Write;1675 1676 procedure IO_Control (1677 Major : in RTEMS.Device_Major_Number;1678 Minor : in RTEMS.Device_Minor_Number;1679 Argument : in RTEMS.Address;1680 Result : out RTEMS.Status_Codes1681 ) is1682 function IO_Control_Base (1683 Major : RTEMS.Device_Major_Number;1684 Minor : RTEMS.Device_Minor_Number;1685 Argument : RTEMS.Address1686 ) return RTEMS.Status_Codes;1687 pragma Import (C, IO_Control_Base, "rtems_io_control");1688 begin1689 1690 Result := IO_Control_Base (Major, Minor, Argument);1691 1692 end IO_Control;1693 1602 1694 1603 -- -
c/src/ada/rtems.ads
r5a9f372 rd14963b 78 78 False : constant RTEMS.Boolean := 0; 79 79 80 -- 80 81 -- More Types 81 82 -- … … 95 96 subtype Device_Major_Number is RTEMS.Unsigned32; 96 97 subtype Device_Minor_Number is RTEMS.Unsigned32; 97 subtype Vector_Number is RTEMS.Unsigned32;98 98 subtype ISR_Level is RTEMS.Unsigned32; 99 99 … … 102 102 -- 103 103 -- Task Related Types 104 -- XXXX fix this 104 -- 105 105 106 subtype Task_Argument is RTEMS.Unsigned32; 106 107 type Task_Argument_PTR is access all Task_Argument; 107 108 108 -- XXXX fix this 109 type Task_Entry is access procedure ( 110 Argument : RTEMS.Unsigned32 111 ); 112 109 113 subtype TCB is RTEMS.Unsigned32; 110 114 type TCB_Pointer is access all RTEMS.TCB; 111 112 subtype Task_States is RTEMS.Unsigned32;113 114 type Task_Entry is access procedure (115 Argument : RTEMS.Unsigned32116 );117 115 118 116 -- … … 144 142 Clock_Get_Time_Value 145 143 ); 146 147 --148 -- Device Driver Entry Prototype149 --150 151 type Device_Driver_Entry is access function (152 Major : in RTEMS.Device_Major_Number;153 Minor : in RTEMS.Device_Major_Number;154 Argument : in RTEMS.Unsigned32;155 ID : in RTEMS.Unsigned32156 ) return RTEMS.Unsigned32;157 158 type Driver_Address_Table_Entry is159 record160 Initialization : RTEMS.Device_Driver_Entry;161 Open : RTEMS.Device_Driver_Entry;162 Close : RTEMS.Device_Driver_Entry;163 Read : RTEMS.Device_Driver_Entry;164 Write : RTEMS.Device_Driver_Entry;165 Control : RTEMS.Device_Driver_Entry;166 end record;167 168 type Driver_Address_Table is array ( RTEMS.Unsigned32169 range 1 .. RTEMS.Unsigned32'Last ) of RTEMS.Driver_Address_Table_Entry;170 171 type Driver_Address_Table_Pointer is access all Driver_Address_Table;172 173 type Driver_Name_t is174 record175 Device_Name : RTEMS.Address;176 Device_Name_Length : RTEMS.Unsigned32;177 Major : RTEMS.Device_Major_Number;178 Minor : RTEMS.Device_Minor_Number;179 end record;180 181 type Driver_Name_t_Pointer is access all Driver_Name_t;182 144 183 145 -- … … 249 211 Minimum_Stack_Size : RTEMS.Unsigned32; 250 212 pragma Import (C, Minimum_Stack_Size, "rtems_minimum_stack_size"); 251 252 213 253 214 -- … … 283 244 No_Priority : constant RTEMS.Task_Priority := 0; 284 245 285 286 246 -- 287 247 -- Extension Callouts and Table 288 248 -- 289 249 290 type Thread_Create_Extension is access procedure(250 type Thread_Create_Extension is access function ( 291 251 Current_Task : in RTEMS.TCB_Pointer; 292 252 New_Task : in RTEMS.TCB_Pointer 293 ) ;253 ) return RTEMS.Boolean; 294 254 295 255 type Thread_Start_Extension is access procedure ( … … 540 500 541 501 -- 542 -- For now, do not provide access to the CPU Table from Ada.543 -- When this type is provided, a CPU dependent file must544 -- define it.545 --546 547 subtype CPU_Table is RTEMS.Address;548 type CPU_Table_Pointer is access all CPU_Table;549 550 --551 502 -- Utility Functions 552 503 -- … … 613 564 Right : in RTEMS.Address 614 565 ) return Standard.Boolean; 566 567 615 568 -- 616 569 -- RTEMS API … … 705 658 ); 706 659 707 --procedure Task_Variable_Add (708 --ID : in RTEMS.ID;709 --Task_Variable : in RTEMS.Address;710 --Dtor : in RTEMS.Task_Variable_Dtor;711 --Result : out RTEMS.Status_Codes712 --);713 714 --procedure Task_Variable_Get (715 --ID : in RTEMS.ID;716 --Task_Variable : out RTEMS.Address;717 --Task_Variable_Value : out RTEMS.Address;718 --Result : out RTEMS.Status_Codes719 --);720 721 --procedure Task_Variable_Delete (722 --ID : in RTEMS.ID;723 --Task_Variable : out RTEMS.Address;724 --Result : out RTEMS.Status_Codes725 --);660 procedure Task_Variable_Add ( 661 ID : in RTEMS.ID; 662 Task_Variable : in RTEMS.Address; 663 Dtor : in RTEMS.Task_Variable_Dtor; 664 Result : out RTEMS.Status_Codes 665 ); 666 667 procedure Task_Variable_Get ( 668 ID : in RTEMS.ID; 669 Task_Variable : out RTEMS.Address; 670 Task_Variable_Value : out RTEMS.Address; 671 Result : out RTEMS.Status_Codes 672 ); 673 674 procedure Task_Variable_Delete ( 675 ID : in RTEMS.ID; 676 Task_Variable : out RTEMS.Address; 677 Result : out RTEMS.Status_Codes 678 ); 726 679 727 680 procedure Task_Wake_When ( … … 738 691 -- Interrupt Manager 739 692 -- 740 741 procedure Interrupt_Catch (742 New_ISR_Handler : in RTEMS.Address;743 Vector : in RTEMS.Vector_Number;744 Old_ISR_Handler : out RTEMS.Address;745 Result : out RTEMS.Status_Codes746 );747 693 748 694 function Interrupt_Disable return RTEMS.ISR_Level; … … 807 753 Result : out RTEMS.Status_Codes 808 754 ); 809 810 755 811 756 -- … … 916 861 ); 917 862 918 919 863 -- 920 864 -- Message Queue Manager … … 979 923 ); 980 924 981 982 925 -- 983 926 -- Event Manager … … 1013 956 Result : out RTEMS.Status_Codes 1014 957 ); 1015 1016 958 1017 959 -- … … 1053 995 ); 1054 996 1055 1056 997 -- 1057 998 -- Region Manager … … 1108 1049 ); 1109 1050 1110 1111 1051 -- 1112 1052 -- Dual Ported Memory Manager … … 1148 1088 1149 1089 -- 1150 -- Input/Output Manager1151 --1152 1153 procedure IO_Register_Name (1154 Name : in String;1155 Major : in RTEMS.Device_Major_Number;1156 Minor : in RTEMS.Device_Minor_Number;1157 Result : out RTEMS.Status_Codes1158 );1159 1160 procedure IO_Lookup_Name (1161 Name : in String;1162 Device_Info : In RTEMS.Driver_Name_t_Pointer;1163 Result : out RTEMS.Status_Codes1164 );1165 1166 procedure IO_Open (1167 Major : in RTEMS.Device_Major_Number;1168 Minor : in RTEMS.Device_Minor_Number;1169 Argument : in RTEMS.Address;1170 Result : out RTEMS.Status_Codes1171 );1172 1173 procedure IO_Close (1174 Major : in RTEMS.Device_Major_Number;1175 Minor : in RTEMS.Device_Minor_Number;1176 Argument : in RTEMS.Address;1177 Result : out RTEMS.Status_Codes1178 );1179 1180 procedure IO_Read (1181 Major : in RTEMS.Device_Major_Number;1182 Minor : in RTEMS.Device_Minor_Number;1183 Argument : in RTEMS.Address;1184 Result : out RTEMS.Status_Codes1185 );1186 1187 procedure IO_Write (1188 Major : in RTEMS.Device_Major_Number;1189 Minor : in RTEMS.Device_Minor_Number;1190 Argument : in RTEMS.Address;1191 Result : out RTEMS.Status_Codes1192 );1193 1194 procedure IO_Control (1195 Major : in RTEMS.Device_Major_Number;1196 Minor : in RTEMS.Device_Minor_Number;1197 Argument : in RTEMS.Address;1198 Result : out RTEMS.Status_Codes1199 );1200 1201 1202 --1203 1090 -- Fatal Error Manager 1204 1091 -- … … 1207 1094 The_Error : in RTEMS.Unsigned32 1208 1095 ); 1209 1210 1096 1211 1097 -- … … 1247 1133 ); 1248 1134 1249 1250 1135 -- 1251 1136 -- Debug Manager
Note: See TracChangeset
for help on using the changeset viewer.