@@ -6,7 +6,7 @@
Loading
6 6
--                                                                          --
7 7
--                                 B o d y                                  --
8 8
--                                                                          --
9 +
--    Copyright (C) 2008-2009 Telecom ParisTech, 2010-2020 ESA & ISAE.      --
9 10
--                                                                          --
10 11
-- Ocarina  is free software; you can redistribute it and/or modify under   --
11 12
-- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -331,6 +331,7 @@
Loading
331 331
   Platform_Vxworks_Name                : Name_Id;
332 332
   Platform_GNAT_Runtime_Name           : Name_Id;
333 333
   Platform_AIR_Name                    : Name_Id;
334 +
   Platform_Air_IOP_Name                : Name_Id;
334 335
335 336
   Transport_BSD_Sockets_Name : Name_Id;
336 337
   Transport_SpaceWire_Name   : Name_Id;
@@ -2502,6 +2503,8 @@
Loading
2502 2503
            return Platform_GNAT_Runtime;
2503 2504
         elsif P_Name = Platform_AIR_Name then
2504 2505
            return Platform_AIR;
2506 +
         elsif P_Name = Platform_AIR_IOP_Name then
2507 +
            return Platform_AIR_IOP;
2505 2508
         else
2506 2509
            return Platform_None;
2507 2510
         end if;
@@ -3066,6 +3069,7 @@
Loading
3066 3069
      Platform_Vxworks_Name          := Get_String_Name ("vxworks");
3067 3070
      Platform_GNAT_Runtime_Name     := Get_String_Name ("gnat_runtime");
3068 3071
      Platform_AIR_Name              := Get_String_Name ("air");
3072 +
      Platform_AIR_IOP_Name          := Get_String_Name ("air_iop");
3069 3073
3070 3074
      Transport_BSD_Sockets_Name := Get_String_Name ("bsd_sockets");
3071 3075
      Transport_SpaceWire_Name   := Get_String_Name ("spacewire");

@@ -6,7 +6,7 @@
Loading
6 6
--                                                                          --
7 7
--                                 B o d y                                  --
8 8
--                                                                          --
9 +
--                   Copyright (C) 2018-2020 ESA & ISAE.                    --
9 10
--                                                                          --
10 11
-- Ocarina  is free software; you can redistribute it and/or modify under   --
11 12
-- terms of the  GNU General Public License as published  by the Free Soft- --
@@ -160,11 +160,13 @@
Loading
160 160
      P                    : Node_Id;
161 161
      Q                    : Node_Id;
162 162
      F                    : Node_Id;
163 +
      Personnality         : Supported_Execution_Platform;
163 164
   begin
164 165
      Associated_Processor := Get_Bound_Processor (E);
165 166
      Associated_Memory    := Get_Bound_Memory (E);
166 167
      Associated_Module    :=
167 168
        Parent_Component (Parent_Subcomponent (Associated_Processor));
169 +
      Personnality := Get_Execution_Platform (Associated_Processor);
168 170
169 171
      --  Some checks on the model in order to make sure that
170 172
      --  everything is correctly defined.
@@ -368,8 +370,16 @@
Loading
368 370
369 371
      PartitionConfiguration := Make_XML_Node ("PartitionConfiguration");
370 372
371 -
      XTU.Add_Attribute ("Personality", "RTEMS5",
372 -
                         PartitionConfiguration); -- XXX hardcoded
373 +
      if Personnality = Platform_AIR then
374 +
         XTU.Add_Attribute ("Personality", "RTEMS5",
375 +
                            PartitionConfiguration);
376 +
      elsif Personnality = Platform_AIR_IOP then
377 +
         XTU.Add_Attribute ("Personality", "Bare",
378 +
                            PartitionConfiguration);
379 +
      else
380 +
         raise Program_Error with "Unsupported platform " & Personnality'Img;
381 +
      end if;
382 +
373 383
      XTU.Add_Attribute ("Cores", "1",
374 384
                         PartitionConfiguration); -- XXX hardcoded
375 385
@@ -381,10 +391,17 @@
Loading
381 391
      Libs_Node := Make_XML_Node ("Libs");
382 392
      Append_Node_To_List (Libs_Node, XTN.Subitems (Partitionconfiguration));
383 393
384 -
      Append_Node_To_List
385 -
        (Make_Defining_Identifier
386 -
           (Get_String_Name ("LIBAIR; IMASPEX; LIBPRINTF")),
387 -
         XTN.Subitems (Libs_Node));
394 +
      if Personnality = Platform_AIR then
395 +
         Append_Node_To_List
396 +
           (Make_Defining_Identifier
397 +
              (Get_String_Name ("LIBAIR; IMASPEX; LIBPRINTF")),
398 +
            XTN.Subitems (Libs_Node));
399 +
      elsif Personnality = Platform_AIR_IOP then
400 +
         Append_Node_To_List
401 +
           (Make_Defining_Identifier
402 +
              (Get_String_Name ("LIBIOP")),
403 +
            XTN.Subitems (Libs_Node));
404 +
      end if;
388 405
389 406
      --  Devices node, child of PartitionConfiguration
390 407
@@ -423,12 +440,18 @@
Loading
423 440
424 441
      Permissions_Node := Make_XML_Node ("Permissions");
425 442
426 -
      Append_Node_To_List
427 -
        (Make_Defining_Identifier
428 -
           (Get_String_Name
429 -
              ("FPU_CONTROL; GLOBAL_TIME; CACHE_CONTROL;"
430 -
                 & "SET_TOD; SET_PARTITION_MODE;")), --  XXX hardcoded
431 -
         XTN.Subitems (Permissions_Node));
443 +
      if Personnality = Platform_AIR then
444 +
         Append_Node_To_List
445 +
           (Make_Defining_Identifier
446 +
              (Get_String_Name
447 +
                 ("FPU_CONTROL; GLOBAL_TIME; CACHE_CONTROL;"
448 +
                    & "SET_TOD; SET_PARTITION_MODE;")), --  XXX hardcoded
449 +
            XTN.Subitems (Permissions_Node));
450 +
      elsif Personnality = Platform_AIR_IOP then
451 +
         Append_Node_To_List
452 +
           (Make_Defining_Identifier (Get_String_Name ("SUPERVISOR;")),
453 +
            XTN.Subitems (Permissions_Node));
454 +
      end if;
432 455
433 456
      Append_Node_To_List (Permissions_Node,
434 457
                           XTN.Subitems (Partitionconfiguration));
Files Coverage
src 64.80%
Project Totals (377 files) 64.80%
337.2
TRAVIS_OS_NAME=osx
1
ignore:
2
  - "tools/mknodes"
3
  - "src/transfo"
4
  - "doc"
Sunburst
The inner-most circle is the entire project, moving away from the center are folders then, finally, a single file. The size and color of each slice is representing the number of statements and the coverage, respectively.
Icicle
The top section represents the entire project. Proceeding with folders and finally individual files. The size and color of each slice is representing the number of statements and the coverage, respectively.
Grid
Each block represents a single file in the project. The size and color of each block is represented by the number of statements and the coverage, respectively.
Loading