From 9f9b54a0f7f25a85a9df70a63e2c38ed59f865a4 Mon Sep 17 00:00:00 2001 From: "julien.delange" Date: Fri, 11 Feb 2011 09:51:20 +0000 Subject: [PATCH] * ocarina/src/backends/ocarina-backends-po_hi_c-main.adb - avoid warning for initialization functions * ocarina/resources/AADLv2/components/devices/rasta-spacewire.aadl ocarina/resources/AADLv2/components/devices.aadl - Add the specification of the spacewire configuration type git-svn-id: https://tecsw.estec.esa.int/svn/taste/trunk/ocarina@2109 129961e7-ef38-4bb5-a8f7-c9a525a55882 --- resources/AADLv2/components/devices.aadl | 8 ++++++++ .../AADLv2/components/devices/rasta-spacewire.aadl | 1 + src/backends/ocarina-backends-po_hi_c-main.adb | 10 ++++++++++ 3 files changed, 19 insertions(+) diff --git a/resources/AADLv2/components/devices.aadl b/resources/AADLv2/components/devices.aadl index 453f8559..35e68da8 100644 --- a/resources/AADLv2/components/devices.aadl +++ b/resources/AADLv2/components/devices.aadl @@ -49,6 +49,14 @@ public Source_Text => ("OCARINA_INCLUDE_PATH/ocarina/runtime/polyorb-hi-c/src/drivers/configuration/serial.asn", "drivers/configuration/serial.h"); end configuration_type_serial; + data configuration_type_spacewire + properties + Type_Source_Name => "Spacewire-Conf-T"; + Deployment::ASN1_Module_Name => "POHICDRIVER-SPACEWIRE"; + Source_Language => ASN1; + Source_Text => ("OCARINA_INCLUDE_PATH/ocarina/runtime/polyorb-hi-c/src/drivers/configuration/spacewire.asn", "drivers/configuration/spacewire.h"); + end configuration_type_spacewire; + -------------- -- Keyboard -- -------------- diff --git a/resources/AADLv2/components/devices/rasta-spacewire.aadl b/resources/AADLv2/components/devices/rasta-spacewire.aadl index e892ed4f..d2a4e204 100644 --- a/resources/AADLv2/components/devices/rasta-spacewire.aadl +++ b/resources/AADLv2/components/devices/rasta-spacewire.aadl @@ -42,6 +42,7 @@ abstract spacewire_driver properties Deployment::Version => "0.1beta"; Deployment::Help => "Write your ASN.1 configuration here"; + Deployment::Configuration_Type => classifier (ocarina_drivers::configuration_type_spacewire); end spacewire_driver; abstract implementation spacewire_driver.rasta diff --git a/src/backends/ocarina-backends-po_hi_c-main.adb b/src/backends/ocarina-backends-po_hi_c-main.adb index 4e51a3c2..1e03e964 100644 --- a/src/backends/ocarina-backends-po_hi_c-main.adb +++ b/src/backends/ocarina-backends-po_hi_c-main.adb @@ -305,6 +305,16 @@ package body Ocarina.Backends.PO_HI_C.Main is Get_Thread_Initialize_Entrypoint (Corresponding_Instance (C)) /= No_Node then + Append_Node_To_List + (Make_Extern_Entity_Declaration + (Make_Function_Specification + (Map_C_Subprogram_Identifier + (Get_Thread_Initialize_Entrypoint + (Corresponding_Instance (C))), + Parameters => No_List, + Return_Type => New_Node (CTN.K_Void))), + CTN.Declarations (Current_File)); + Append_Node_To_List (Make_Call_Profile (Map_C_Subprogram_Identifier -- GitLab