1 | NO CONTENT: modified file, binary diff hidden |
|
NO CONTENT: modified file, binary diff hidden |
@@ -1,51 +1,51 | |||||
1 | TEMPLATE = app |
|
1 | TEMPLATE = app | |
2 | # CONFIG += console v8 sim |
|
2 | # CONFIG += console v8 sim | |
3 | # CONFIG options = verbose *** cpu_usage_report *** gsa |
|
3 | # CONFIG options = verbose *** cpu_usage_report *** gsa | |
4 | CONFIG += console verbose |
|
4 | CONFIG += console verbose | |
5 | CONFIG -= qt |
|
5 | CONFIG -= qt | |
6 |
|
6 | |||
7 | include(./sparc.pri) |
|
7 | include(./sparc.pri) | |
8 |
|
8 | |||
9 | # flight software version |
|
9 | # flight software version | |
10 |
SWVERSION=-0- |
|
10 | SWVERSION=-0-6 | |
11 | DEFINES += SW_VERSION_N1=0 |
|
11 | DEFINES += SW_VERSION_N1=0 | |
12 | DEFINES += SW_VERSION_N2=0 |
|
12 | DEFINES += SW_VERSION_N2=0 | |
13 | DEFINES += SW_VERSION_N3=0 |
|
13 | DEFINES += SW_VERSION_N3=0 | |
14 |
DEFINES += SW_VERSION_N4= |
|
14 | DEFINES += SW_VERSION_N4=6 | |
15 |
|
15 | |||
16 | contains( CONFIG, verbose ) { |
|
16 | contains( CONFIG, verbose ) { | |
17 | DEFINES += PRINT_MESSAGES_ON_CONSOLE |
|
17 | DEFINES += PRINT_MESSAGES_ON_CONSOLE | |
18 | } |
|
18 | } | |
19 |
|
19 | |||
20 | contains( CONFIG, cpu_usage_report ) { |
|
20 | contains( CONFIG, cpu_usage_report ) { | |
21 | DEFINES += PRINT_TASK_STATISTICS |
|
21 | DEFINES += PRINT_TASK_STATISTICS | |
22 | } |
|
22 | } | |
23 |
|
23 | |||
24 | TARGET = fsw |
|
24 | TARGET = fsw | |
25 | contains( CONFIG, gsa ) { |
|
25 | contains( CONFIG, gsa ) { | |
26 | DEFINES += GSA |
|
26 | DEFINES += GSA | |
27 | TARGET = fsw-gsa |
|
27 | TARGET = fsw-gsa | |
28 | } |
|
28 | } | |
29 |
|
29 | |||
30 | INCLUDEPATH += \ |
|
30 | INCLUDEPATH += \ | |
31 | ../src \ |
|
31 | ../src \ | |
32 | ../header |
|
32 | ../header | |
33 |
|
33 | |||
34 | SOURCES += \ |
|
34 | SOURCES += \ | |
35 | ../src/wf_handler.c \ |
|
35 | ../src/wf_handler.c \ | |
36 | ../src/tc_handler.c \ |
|
36 | ../src/tc_handler.c \ | |
37 | ../src/fsw_processing.c \ |
|
37 | ../src/fsw_processing.c \ | |
38 | ../src/fsw_misc.c \ |
|
38 | ../src/fsw_misc.c \ | |
39 | ../src/fsw_init.c \ |
|
39 | ../src/fsw_init.c \ | |
40 | ../src/fsw_globals.c |
|
40 | ../src/fsw_globals.c | |
41 |
|
41 | |||
42 | HEADERS += \ |
|
42 | HEADERS += \ | |
43 | ../header/wf_handler.h \ |
|
43 | ../header/wf_handler.h \ | |
44 | ../header/tc_handler.h \ |
|
44 | ../header/tc_handler.h \ | |
45 | ../header/grlib_regs.h \ |
|
45 | ../header/grlib_regs.h \ | |
46 | ../header/fsw_processing.h \ |
|
46 | ../header/fsw_processing.h \ | |
47 | ../header/fsw_params.h \ |
|
47 | ../header/fsw_params.h \ | |
48 | ../header/fsw_misc.h \ |
|
48 | ../header/fsw_misc.h \ | |
49 | ../header/fsw_init.h \ |
|
49 | ../header/fsw_init.h \ | |
50 | ../header/ccsds_types.h |
|
50 | ../header/ccsds_types.h | |
51 |
|
51 |
@@ -1,265 +1,265 | |||||
1 | <?xml version="1.0" encoding="UTF-8"?> |
|
1 | <?xml version="1.0" encoding="UTF-8"?> | |
2 | <!DOCTYPE QtCreatorProject> |
|
2 | <!DOCTYPE QtCreatorProject> | |
3 |
<!-- Written by Qt Creator 2.4.1, 2013-0 |
|
3 | <!-- Written by Qt Creator 2.4.1, 2013-07-05T07:07:58. --> | |
4 | <qtcreator> |
|
4 | <qtcreator> | |
5 | <data> |
|
5 | <data> | |
6 | <variable>ProjectExplorer.Project.ActiveTarget</variable> |
|
6 | <variable>ProjectExplorer.Project.ActiveTarget</variable> | |
7 | <value type="int">0</value> |
|
7 | <value type="int">0</value> | |
8 | </data> |
|
8 | </data> | |
9 | <data> |
|
9 | <data> | |
10 | <variable>ProjectExplorer.Project.EditorSettings</variable> |
|
10 | <variable>ProjectExplorer.Project.EditorSettings</variable> | |
11 | <valuemap type="QVariantMap"> |
|
11 | <valuemap type="QVariantMap"> | |
12 | <value type="bool" key="EditorConfiguration.AutoIndent">true</value> |
|
12 | <value type="bool" key="EditorConfiguration.AutoIndent">true</value> | |
13 | <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value> |
|
13 | <value type="bool" key="EditorConfiguration.AutoSpacesForTabs">false</value> | |
14 | <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0"> |
|
14 | <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.0"> | |
15 | <value type="QString" key="language">Cpp</value> |
|
15 | <value type="QString" key="language">Cpp</value> | |
16 | <valuemap type="QVariantMap" key="value"> |
|
16 | <valuemap type="QVariantMap" key="value"> | |
17 | <value type="QString" key="CurrentPreferences">CppGlobal</value> |
|
17 | <value type="QString" key="CurrentPreferences">CppGlobal</value> | |
18 | </valuemap> |
|
18 | </valuemap> | |
19 | </valuemap> |
|
19 | </valuemap> | |
20 | <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1"> |
|
20 | <valuemap type="QVariantMap" key="EditorConfiguration.CodeStyle.1"> | |
21 | <value type="QString" key="language">QmlJS</value> |
|
21 | <value type="QString" key="language">QmlJS</value> | |
22 | <valuemap type="QVariantMap" key="value"> |
|
22 | <valuemap type="QVariantMap" key="value"> | |
23 | <value type="QString" key="CurrentPreferences">QmlJSGlobal</value> |
|
23 | <value type="QString" key="CurrentPreferences">QmlJSGlobal</value> | |
24 | </valuemap> |
|
24 | </valuemap> | |
25 | </valuemap> |
|
25 | </valuemap> | |
26 | <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value> |
|
26 | <value type="int" key="EditorConfiguration.CodeStyle.Count">2</value> | |
27 | <value type="QByteArray" key="EditorConfiguration.Codec">System</value> |
|
27 | <value type="QByteArray" key="EditorConfiguration.Codec">System</value> | |
28 | <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value> |
|
28 | <value type="bool" key="EditorConfiguration.ConstrainTooltips">false</value> | |
29 | <value type="int" key="EditorConfiguration.IndentSize">4</value> |
|
29 | <value type="int" key="EditorConfiguration.IndentSize">4</value> | |
30 | <value type="bool" key="EditorConfiguration.MouseNavigation">true</value> |
|
30 | <value type="bool" key="EditorConfiguration.MouseNavigation">true</value> | |
31 | <value type="int" key="EditorConfiguration.PaddingMode">1</value> |
|
31 | <value type="int" key="EditorConfiguration.PaddingMode">1</value> | |
32 | <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value> |
|
32 | <value type="bool" key="EditorConfiguration.ScrollWheelZooming">true</value> | |
33 | <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value> |
|
33 | <value type="int" key="EditorConfiguration.SmartBackspaceBehavior">0</value> | |
34 | <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value> |
|
34 | <value type="bool" key="EditorConfiguration.SpacesForTabs">true</value> | |
35 | <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value> |
|
35 | <value type="int" key="EditorConfiguration.TabKeyBehavior">0</value> | |
36 | <value type="int" key="EditorConfiguration.TabSize">8</value> |
|
36 | <value type="int" key="EditorConfiguration.TabSize">8</value> | |
37 | <value type="bool" key="EditorConfiguration.UseGlobal">true</value> |
|
37 | <value type="bool" key="EditorConfiguration.UseGlobal">true</value> | |
38 | <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value> |
|
38 | <value type="int" key="EditorConfiguration.Utf8BomBehavior">1</value> | |
39 | <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value> |
|
39 | <value type="bool" key="EditorConfiguration.addFinalNewLine">true</value> | |
40 | <value type="bool" key="EditorConfiguration.cleanIndentation">true</value> |
|
40 | <value type="bool" key="EditorConfiguration.cleanIndentation">true</value> | |
41 | <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value> |
|
41 | <value type="bool" key="EditorConfiguration.cleanWhitespace">true</value> | |
42 | <value type="bool" key="EditorConfiguration.inEntireDocument">false</value> |
|
42 | <value type="bool" key="EditorConfiguration.inEntireDocument">false</value> | |
43 | </valuemap> |
|
43 | </valuemap> | |
44 | </data> |
|
44 | </data> | |
45 | <data> |
|
45 | <data> | |
46 | <variable>ProjectExplorer.Project.PluginSettings</variable> |
|
46 | <variable>ProjectExplorer.Project.PluginSettings</variable> | |
47 | <valuemap type="QVariantMap"/> |
|
47 | <valuemap type="QVariantMap"/> | |
48 | </data> |
|
48 | </data> | |
49 | <data> |
|
49 | <data> | |
50 | <variable>ProjectExplorer.Project.Target.0</variable> |
|
50 | <variable>ProjectExplorer.Project.Target.0</variable> | |
51 | <valuemap type="QVariantMap"> |
|
51 | <valuemap type="QVariantMap"> | |
52 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value> |
|
52 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Desktop</value> | |
53 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value> |
|
53 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName">Desktop</value> | |
54 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Target.DesktopTarget</value> |
|
54 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Target.DesktopTarget</value> | |
55 | <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value> |
|
55 | <value type="int" key="ProjectExplorer.Target.ActiveBuildConfiguration">0</value> | |
56 | <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value> |
|
56 | <value type="int" key="ProjectExplorer.Target.ActiveDeployConfiguration">0</value> | |
57 | <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value> |
|
57 | <value type="int" key="ProjectExplorer.Target.ActiveRunConfiguration">0</value> | |
58 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0"> |
|
58 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.0"> | |
59 | <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value> |
|
59 | <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value> | |
60 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> |
|
60 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> | |
61 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> |
|
61 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> | |
62 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value> |
|
62 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value> | |
63 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
63 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
64 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value> |
|
64 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value> | |
65 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value> |
|
65 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value> | |
66 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value> |
|
66 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value> | |
67 | <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value> |
|
67 | <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value> | |
68 | <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value> |
|
68 | <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value> | |
69 | </valuemap> |
|
69 | </valuemap> | |
70 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1"> |
|
70 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1"> | |
71 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> |
|
71 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> | |
72 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
72 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
73 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> |
|
73 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> | |
74 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value> |
|
74 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value> | |
75 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value> |
|
75 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value> | |
76 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> |
|
76 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> | |
77 | </valuemap> |
|
77 | </valuemap> | |
78 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value> |
|
78 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value> | |
79 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value> |
|
79 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value> | |
80 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
80 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
81 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value> |
|
81 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value> | |
82 | </valuemap> |
|
82 | </valuemap> | |
83 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1"> |
|
83 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1"> | |
84 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> |
|
84 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> | |
85 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> |
|
85 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> | |
86 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
86 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
87 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> |
|
87 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> | |
88 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value> |
|
88 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value> | |
89 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value> |
|
89 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value> | |
90 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> |
|
90 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> | |
91 | </valuemap> |
|
91 | </valuemap> | |
92 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value> |
|
92 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value> | |
93 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value> |
|
93 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value> | |
94 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
94 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
95 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value> |
|
95 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value> | |
96 | </valuemap> |
|
96 | </valuemap> | |
97 | <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value> |
|
97 | <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value> | |
98 | <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value> |
|
98 | <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value> | |
99 | <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/> |
|
99 | <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/> | |
100 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Release</value> |
|
100 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Release</value> | |
101 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
101 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
102 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value> |
|
102 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value> | |
103 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value> |
|
103 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">0</value> | |
104 | <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/DEV_PLE/FSW-qt</value> |
|
104 | <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/DEV_PLE/FSW-qt</value> | |
105 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value> |
|
105 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value> | |
106 | <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value> |
|
106 | <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value> | |
107 | </valuemap> |
|
107 | </valuemap> | |
108 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1"> |
|
108 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.BuildConfiguration.1"> | |
109 | <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value> |
|
109 | <value type="QString" key="ProjectExplorer.BuildCOnfiguration.ToolChain">ProjectExplorer.ToolChain.Gcc:/usr/bin/g++.x86-linux-generic-elf-64bit./usr/bin/gdb</value> | |
110 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> |
|
110 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> | |
111 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> |
|
111 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> | |
112 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value> |
|
112 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">qmake</value> | |
113 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
113 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
114 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value> |
|
114 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">QtProjectManager.QMakeBuildStep</value> | |
115 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value> |
|
115 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibrary">false</value> | |
116 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value> |
|
116 | <value type="bool" key="QtProjectManager.QMakeBuildStep.LinkQmlDebuggingLibraryAuto">true</value> | |
117 | <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value> |
|
117 | <value type="QString" key="QtProjectManager.QMakeBuildStep.QMakeArguments"></value> | |
118 | <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value> |
|
118 | <value type="bool" key="QtProjectManager.QMakeBuildStep.QMakeForced">false</value> | |
119 | </valuemap> |
|
119 | </valuemap> | |
120 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1"> |
|
120 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.1"> | |
121 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> |
|
121 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> | |
122 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
122 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
123 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> |
|
123 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> | |
124 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value> |
|
124 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">false</value> | |
125 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value> |
|
125 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments"></value> | |
126 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> |
|
126 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> | |
127 | </valuemap> |
|
127 | </valuemap> | |
128 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value> |
|
128 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">2</value> | |
129 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value> |
|
129 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Build</value> | |
130 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
130 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
131 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value> |
|
131 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Build</value> | |
132 | </valuemap> |
|
132 | </valuemap> | |
133 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1"> |
|
133 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.1"> | |
134 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> |
|
134 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildStepList.Step.0"> | |
135 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> |
|
135 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Make</value> | |
136 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
136 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
137 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> |
|
137 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.MakeStep</value> | |
138 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value> |
|
138 | <value type="bool" key="Qt4ProjectManager.MakeStep.Clean">true</value> | |
139 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value> |
|
139 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeArguments">clean</value> | |
140 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> |
|
140 | <value type="QString" key="Qt4ProjectManager.MakeStep.MakeCommand"></value> | |
141 | </valuemap> |
|
141 | </valuemap> | |
142 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value> |
|
142 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">1</value> | |
143 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value> |
|
143 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Clean</value> | |
144 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
144 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
145 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value> |
|
145 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Clean</value> | |
146 | </valuemap> |
|
146 | </valuemap> | |
147 | <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value> |
|
147 | <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">2</value> | |
148 | <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value> |
|
148 | <value type="bool" key="ProjectExplorer.BuildConfiguration.ClearSystemEnvironment">false</value> | |
149 | <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/> |
|
149 | <valuelist type="QVariantList" key="ProjectExplorer.BuildConfiguration.UserEnvironmentChanges"/> | |
150 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Debug</value> |
|
150 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Qt 4.8.2 in PATH (System) Debug</value> | |
151 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
151 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
152 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value> |
|
152 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4BuildConfiguration</value> | |
153 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value> |
|
153 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildConfiguration">2</value> | |
154 | <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/DEV_PLE/FSW-qt</value> |
|
154 | <value type="QString" key="Qt4ProjectManager.Qt4BuildConfiguration.BuildDirectory">/opt/DEV_PLE/FSW-qt</value> | |
155 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value> |
|
155 | <value type="int" key="Qt4ProjectManager.Qt4BuildConfiguration.QtVersionId">1</value> | |
156 | <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value> |
|
156 | <value type="bool" key="Qt4ProjectManager.Qt4BuildConfiguration.UseShadowBuild">false</value> | |
157 | </valuemap> |
|
157 | </valuemap> | |
158 | <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value> |
|
158 | <value type="int" key="ProjectExplorer.Target.BuildConfigurationCount">2</value> | |
159 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0"> |
|
159 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.DeployConfiguration.0"> | |
160 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> |
|
160 | <valuemap type="QVariantMap" key="ProjectExplorer.BuildConfiguration.BuildStepList.0"> | |
161 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value> |
|
161 | <value type="int" key="ProjectExplorer.BuildStepList.StepsCount">0</value> | |
162 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value> |
|
162 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">Deploy</value> | |
163 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
163 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
164 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value> |
|
164 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.BuildSteps.Deploy</value> | |
165 | </valuemap> |
|
165 | </valuemap> | |
166 | <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value> |
|
166 | <value type="int" key="ProjectExplorer.BuildConfiguration.BuildStepListCount">1</value> | |
167 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">No deployment</value> |
|
167 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">No deployment</value> | |
168 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
168 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
169 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value> |
|
169 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">ProjectExplorer.DefaultDeployConfiguration</value> | |
170 | </valuemap> |
|
170 | </valuemap> | |
171 | <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value> |
|
171 | <value type="int" key="ProjectExplorer.Target.DeployConfigurationCount">1</value> | |
172 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0"> |
|
172 | <valuemap type="QVariantMap" key="ProjectExplorer.Target.RunConfiguration.0"> | |
173 | <value type="bool" key="Analyzer.Project.UseGlobal">true</value> |
|
173 | <value type="bool" key="Analyzer.Project.UseGlobal">true</value> | |
174 | <value type="bool" key="Analyzer.Project.UseGlobal">true</value> |
|
174 | <value type="bool" key="Analyzer.Project.UseGlobal">true</value> | |
175 | <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/> |
|
175 | <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/> | |
176 | <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/> |
|
176 | <valuelist type="QVariantList" key="Analyzer.Valgrind.AddedSuppressionFiles"/> | |
177 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value> |
|
177 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value> | |
178 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value> |
|
178 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectBusEvents">false</value> | |
179 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value> |
|
179 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value> | |
180 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value> |
|
180 | <value type="bool" key="Analyzer.Valgrind.Callgrind.CollectSystime">false</value> | |
181 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value> |
|
181 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value> | |
182 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value> |
|
182 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableBranchSim">false</value> | |
183 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value> |
|
183 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value> | |
184 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value> |
|
184 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableCacheSim">false</value> | |
185 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value> |
|
185 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value> | |
186 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value> |
|
186 | <value type="bool" key="Analyzer.Valgrind.Callgrind.EnableEventToolTips">true</value> | |
187 | <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value> |
|
187 | <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value> | |
188 | <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value> |
|
188 | <value type="double" key="Analyzer.Valgrind.Callgrind.MinimumCostRatio">0.01</value> | |
189 | <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value> |
|
189 | <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value> | |
190 | <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value> |
|
190 | <value type="double" key="Analyzer.Valgrind.Callgrind.VisualisationMinimumCostRatio">10</value> | |
191 | <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value> |
|
191 | <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value> | |
192 | <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value> |
|
192 | <value type="bool" key="Analyzer.Valgrind.FilterExternalIssues">true</value> | |
193 | <value type="int" key="Analyzer.Valgrind.NumCallers">25</value> |
|
193 | <value type="int" key="Analyzer.Valgrind.NumCallers">25</value> | |
194 | <value type="int" key="Analyzer.Valgrind.NumCallers">25</value> |
|
194 | <value type="int" key="Analyzer.Valgrind.NumCallers">25</value> | |
195 | <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/> |
|
195 | <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/> | |
196 | <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/> |
|
196 | <valuelist type="QVariantList" key="Analyzer.Valgrind.RemovedSuppressionFiles"/> | |
197 | <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value> |
|
197 | <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value> | |
198 | <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value> |
|
198 | <value type="bool" key="Analyzer.Valgrind.TrackOrigins">true</value> | |
199 | <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value> |
|
199 | <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value> | |
200 | <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value> |
|
200 | <value type="QString" key="Analyzer.Valgrind.ValgrindExecutable">valgrind</value> | |
201 | <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds"> |
|
201 | <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds"> | |
202 | <value type="int">0</value> |
|
202 | <value type="int">0</value> | |
203 | <value type="int">1</value> |
|
203 | <value type="int">1</value> | |
204 | <value type="int">2</value> |
|
204 | <value type="int">2</value> | |
205 | <value type="int">3</value> |
|
205 | <value type="int">3</value> | |
206 | <value type="int">4</value> |
|
206 | <value type="int">4</value> | |
207 | <value type="int">5</value> |
|
207 | <value type="int">5</value> | |
208 | <value type="int">6</value> |
|
208 | <value type="int">6</value> | |
209 | <value type="int">7</value> |
|
209 | <value type="int">7</value> | |
210 | <value type="int">8</value> |
|
210 | <value type="int">8</value> | |
211 | <value type="int">9</value> |
|
211 | <value type="int">9</value> | |
212 | <value type="int">10</value> |
|
212 | <value type="int">10</value> | |
213 | <value type="int">11</value> |
|
213 | <value type="int">11</value> | |
214 | <value type="int">12</value> |
|
214 | <value type="int">12</value> | |
215 | <value type="int">13</value> |
|
215 | <value type="int">13</value> | |
216 | <value type="int">14</value> |
|
216 | <value type="int">14</value> | |
217 | </valuelist> |
|
217 | </valuelist> | |
218 | <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds"> |
|
218 | <valuelist type="QVariantList" key="Analyzer.Valgrind.VisibleErrorKinds"> | |
219 | <value type="int">0</value> |
|
219 | <value type="int">0</value> | |
220 | <value type="int">1</value> |
|
220 | <value type="int">1</value> | |
221 | <value type="int">2</value> |
|
221 | <value type="int">2</value> | |
222 | <value type="int">3</value> |
|
222 | <value type="int">3</value> | |
223 | <value type="int">4</value> |
|
223 | <value type="int">4</value> | |
224 | <value type="int">5</value> |
|
224 | <value type="int">5</value> | |
225 | <value type="int">6</value> |
|
225 | <value type="int">6</value> | |
226 | <value type="int">7</value> |
|
226 | <value type="int">7</value> | |
227 | <value type="int">8</value> |
|
227 | <value type="int">8</value> | |
228 | <value type="int">9</value> |
|
228 | <value type="int">9</value> | |
229 | <value type="int">10</value> |
|
229 | <value type="int">10</value> | |
230 | <value type="int">11</value> |
|
230 | <value type="int">11</value> | |
231 | <value type="int">12</value> |
|
231 | <value type="int">12</value> | |
232 | <value type="int">13</value> |
|
232 | <value type="int">13</value> | |
233 | <value type="int">14</value> |
|
233 | <value type="int">14</value> | |
234 | </valuelist> |
|
234 | </valuelist> | |
235 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">fsw-qt</value> |
|
235 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DefaultDisplayName">fsw-qt</value> | |
236 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> |
|
236 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.DisplayName"></value> | |
237 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration</value> |
|
237 | <value type="QString" key="ProjectExplorer.ProjectConfiguration.Id">Qt4ProjectManager.Qt4RunConfiguration</value> | |
238 | <value type="int" key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase">2</value> |
|
238 | <value type="int" key="Qt4ProjectManager.Qt4RunConfiguration.BaseEnvironmentBase">2</value> | |
239 | <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value> |
|
239 | <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.CommandLineArguments"></value> | |
240 | <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">fsw-qt.pro</value> |
|
240 | <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.ProFile">fsw-qt.pro</value> | |
241 | <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value> |
|
241 | <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseDyldImageSuffix">false</value> | |
242 | <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">true</value> |
|
242 | <value type="bool" key="Qt4ProjectManager.Qt4RunConfiguration.UseTerminal">true</value> | |
243 | <valuelist type="QVariantList" key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges"/> |
|
243 | <valuelist type="QVariantList" key="Qt4ProjectManager.Qt4RunConfiguration.UserEnvironmentChanges"/> | |
244 | <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value> |
|
244 | <value type="QString" key="Qt4ProjectManager.Qt4RunConfiguration.UserWorkingDirectory"></value> | |
245 | <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value> |
|
245 | <value type="uint" key="RunConfiguration.QmlDebugServerPort">3768</value> | |
246 | <value type="bool" key="RunConfiguration.UseCppDebugger">true</value> |
|
246 | <value type="bool" key="RunConfiguration.UseCppDebugger">true</value> | |
247 | <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value> |
|
247 | <value type="bool" key="RunConfiguration.UseQmlDebugger">false</value> | |
248 | <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value> |
|
248 | <value type="bool" key="RunConfiguration.UseQmlDebuggerAuto">false</value> | |
249 | </valuemap> |
|
249 | </valuemap> | |
250 | <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value> |
|
250 | <value type="int" key="ProjectExplorer.Target.RunConfigurationCount">1</value> | |
251 | </valuemap> |
|
251 | </valuemap> | |
252 | </data> |
|
252 | </data> | |
253 | <data> |
|
253 | <data> | |
254 | <variable>ProjectExplorer.Project.TargetCount</variable> |
|
254 | <variable>ProjectExplorer.Project.TargetCount</variable> | |
255 | <value type="int">1</value> |
|
255 | <value type="int">1</value> | |
256 | </data> |
|
256 | </data> | |
257 | <data> |
|
257 | <data> | |
258 | <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable> |
|
258 | <variable>ProjectExplorer.Project.Updater.EnvironmentId</variable> | |
259 | <value type="QString">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value> |
|
259 | <value type="QString">{2e58a81f-9962-4bba-ae6b-760177f0656c}</value> | |
260 | </data> |
|
260 | </data> | |
261 | <data> |
|
261 | <data> | |
262 | <variable>ProjectExplorer.Project.Updater.FileVersion</variable> |
|
262 | <variable>ProjectExplorer.Project.Updater.FileVersion</variable> | |
263 | <value type="int">10</value> |
|
263 | <value type="int">10</value> | |
264 | </data> |
|
264 | </data> | |
265 | </qtcreator> |
|
265 | </qtcreator> |
@@ -1,664 +1,683 | |||||
1 | #include <wf_handler.h> |
|
1 | #include <wf_handler.h> | |
2 |
|
2 | |||
3 | rtems_isr waveforms_isr( rtems_vector_number vector ) |
|
3 | rtems_isr waveforms_isr( rtems_vector_number vector ) | |
4 | { |
|
4 | { | |
5 | unsigned char lfrMode; |
|
5 | unsigned char lfrMode; | |
6 | lfrMode = (housekeeping_packet.lfr_status_word[0] & 0xf0) >> 4; |
|
6 | lfrMode = (housekeeping_packet.lfr_status_word[0] & 0xf0) >> 4; | |
7 |
|
7 | |||
8 | switch(lfrMode) |
|
8 | switch(lfrMode) | |
9 | { |
|
9 | { | |
10 | //******** |
|
10 | //******** | |
11 | // STANDBY |
|
11 | // STANDBY | |
12 | case(LFR_MODE_STANDBY): |
|
12 | case(LFR_MODE_STANDBY): | |
13 | break; |
|
13 | break; | |
14 |
|
14 | |||
15 | //****** |
|
15 | //****** | |
16 | // NORMAL |
|
16 | // NORMAL | |
17 | case(LFR_MODE_NORMAL): |
|
17 | case(LFR_MODE_NORMAL): | |
18 | #ifdef GSA |
|
18 | #ifdef GSA | |
19 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") |
|
19 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") | |
20 | #else |
|
20 | #else | |
21 | if ( (waveform_picker_regs->burst_enable & 0x7) == 0x0 ){// if no channel is enable |
|
21 | if ( (waveform_picker_regs->burst_enable & 0x7) == 0x0 ){// if no channel is enable | |
22 | if (rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ) != RTEMS_SUCCESSFUL) { |
|
22 | if (rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ) != RTEMS_SUCCESSFUL) { | |
23 | PRINTF("in waveform_isr *** Error sending event to DUMB\n"); |
|
23 | PRINTF("in waveform_isr *** Error sending event to DUMB\n"); | |
24 | } |
|
24 | } | |
25 | } |
|
25 | } | |
26 | else { |
|
26 | else { | |
27 | if ( (waveform_picker_regs->status & 0x7) == 0x7 ){ // f2 f1 and f0 are full |
|
27 | if ( (waveform_picker_regs->status & 0x7) == 0x7 ){ // f2 f1 and f0 are full | |
28 | waveform_picker_regs->burst_enable = 0x00; |
|
28 | waveform_picker_regs->burst_enable = 0x00; | |
29 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { |
|
29 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { | |
30 | if (rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ) != RTEMS_SUCCESSFUL) { |
|
30 | if (rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ) != RTEMS_SUCCESSFUL) { | |
31 | PRINTF("in waveform_isr *** Error sending event to DUMB\n"); |
|
31 | PRINTF("in waveform_isr *** Error sending event to DUMB\n"); | |
32 | } |
|
32 | } | |
33 | } |
|
33 | } | |
34 | } |
|
34 | } | |
35 | } |
|
35 | } | |
36 | #endif |
|
36 | #endif | |
37 | break; |
|
37 | break; | |
38 |
|
38 | |||
39 | //****** |
|
39 | //****** | |
40 | // BURST |
|
40 | // BURST | |
41 | case(LFR_MODE_BURST): |
|
41 | case(LFR_MODE_BURST): | |
42 | #ifdef GSA |
|
42 | #ifdef GSA | |
43 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") |
|
43 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") | |
44 | #else |
|
44 | #else | |
45 | if (waveform_picker_regs->burst_enable == 0x44) { |
|
45 | if (waveform_picker_regs->burst_enable == 0x44) { | |
46 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { |
|
46 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { | |
47 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2_bis); |
|
47 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2_bis); | |
48 | } |
|
48 | } | |
49 | else { |
|
49 | else { | |
50 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2); |
|
50 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2); | |
51 | } |
|
51 | } | |
52 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_BURST ) != RTEMS_SUCCESSFUL) { |
|
52 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_BURST ) != RTEMS_SUCCESSFUL) { | |
53 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") |
|
53 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") | |
54 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); |
|
54 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); | |
55 | } |
|
55 | } | |
56 | } |
|
56 | } | |
57 | waveform_picker_regs->status = 0x00; |
|
57 | waveform_picker_regs->status = 0x00; | |
58 | #endif |
|
58 | #endif | |
59 | break; |
|
59 | break; | |
60 |
|
60 | |||
61 | //***** |
|
61 | //***** | |
62 | // SBM1 |
|
62 | // SBM1 | |
63 | case(LFR_MODE_SBM1): |
|
63 | case(LFR_MODE_SBM1): | |
64 | #ifdef GSA |
|
64 | #ifdef GSA | |
65 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") |
|
65 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") | |
66 | #else |
|
66 | #else | |
67 | if ((waveform_picker_regs->status & 0x02) == 0x02){ // check the f1 full bit |
|
67 | if ((waveform_picker_regs->status & 0x02) == 0x02){ // check the f1 full bit | |
68 | // (1) change the receiving buffer for the waveform picker |
|
68 | // (1) change the receiving buffer for the waveform picker | |
69 | if (waveform_picker_regs->addr_data_f1 == (int) wf_snap_f1) { |
|
69 | if (waveform_picker_regs->addr_data_f1 == (int) wf_snap_f1) { | |
70 | waveform_picker_regs->addr_data_f1 = (int) (wf_snap_f1_bis); |
|
70 | waveform_picker_regs->addr_data_f1 = (int) (wf_snap_f1_bis); | |
71 | } |
|
71 | } | |
72 | else { |
|
72 | else { | |
73 | waveform_picker_regs->addr_data_f1 = (int) (wf_snap_f1); |
|
73 | waveform_picker_regs->addr_data_f1 = (int) (wf_snap_f1); | |
74 | } |
|
74 | } | |
75 | // (2) send an event for the waveforms transmission |
|
75 | // (2) send an event for the waveforms transmission | |
76 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_SBM1 ) != RTEMS_SUCCESSFUL) { |
|
76 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_SBM1 ) != RTEMS_SUCCESSFUL) { | |
77 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") |
|
77 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") | |
78 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); |
|
78 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); | |
79 | } |
|
79 | } | |
80 | waveform_picker_regs->status = waveform_picker_regs->status & 0x000d; // reset the f1 full bit to 0 |
|
80 | waveform_picker_regs->status = waveform_picker_regs->status & 0x000d; // reset the f1 full bit to 0 | |
81 | } |
|
81 | } | |
82 | if ( ( (waveform_picker_regs->status & 0x05) == 0x05 ) ) { // [0101] f3 f2 f1 f0, check the f2 and f0 full bit |
|
82 | if ( ( (waveform_picker_regs->status & 0x05) == 0x05 ) ) { // [0101] f3 f2 f1 f0, check the f2 and f0 full bit | |
83 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { |
|
83 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { | |
84 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") |
|
84 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") | |
85 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); |
|
85 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); | |
86 | } |
|
86 | } | |
87 | waveform_picker_regs->burst_enable = waveform_picker_regs->burst_enable | 0x05; // [0101] // enable f2 and f0 |
|
87 | waveform_picker_regs->burst_enable = waveform_picker_regs->burst_enable | 0x05; // [0101] // enable f2 and f0 | |
88 | waveform_picker_regs->status = waveform_picker_regs->status & 0xfffffaaa; // set to 0 the bits related to f2 and f0 |
|
88 | waveform_picker_regs->status = waveform_picker_regs->status & 0xfffffaaa; // set to 0 the bits related to f2 and f0 | |
89 | } |
|
89 | } | |
90 | #endif |
|
90 | #endif | |
91 | break; |
|
91 | break; | |
92 |
|
92 | |||
93 | //***** |
|
93 | //***** | |
94 | // SBM2 |
|
94 | // SBM2 | |
95 | case(LFR_MODE_SBM2): |
|
95 | case(LFR_MODE_SBM2): | |
96 | #ifdef GSA |
|
96 | #ifdef GSA | |
97 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") |
|
97 | PRINTF("in waveform_isr *** unexpected waveform picker interruption\n") | |
98 | #else |
|
98 | #else | |
99 | if ((waveform_picker_regs->status & 0x04) == 0x04){ // check the f2 full bit |
|
99 | if ((waveform_picker_regs->status & 0x04) == 0x04){ // check the f2 full bit | |
100 | // (1) change the receiving buffer for the waveform picker |
|
100 | // (1) change the receiving buffer for the waveform picker | |
101 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { |
|
101 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { | |
102 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2_bis); |
|
102 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2_bis); | |
103 | } |
|
103 | } | |
104 | else { |
|
104 | else { | |
105 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2); |
|
105 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2); | |
106 | } |
|
106 | } | |
107 | // (2) send an event for the waveforms transmission |
|
107 | // (2) send an event for the waveforms transmission | |
108 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_SBM2 ) != RTEMS_SUCCESSFUL) { |
|
108 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_SBM2 ) != RTEMS_SUCCESSFUL) { | |
109 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") |
|
109 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") | |
110 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); |
|
110 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); | |
111 | } |
|
111 | } | |
112 | waveform_picker_regs->status = waveform_picker_regs->status & 0xfffffbbb; // [1011] |
|
112 | waveform_picker_regs->status = waveform_picker_regs->status & 0xfffffbbb; // [1011] | |
113 | } |
|
113 | } | |
114 | if ( ( (waveform_picker_regs->status & 0x03) == 0x03 ) ) { // [0011] f3 f2 f1 f0, check the f2 and f0 full bit |
|
114 | if ( ( (waveform_picker_regs->status & 0x03) == 0x03 ) ) { // [0011] f3 f2 f1 f0, check the f2 and f0 full bit | |
115 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { |
|
115 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { | |
116 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") |
|
116 | PRINTF("in waveforms_isr *** Error sending event to WFRM\n") | |
117 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); |
|
117 | rtems_event_send( Task_id[TASKID_DUMB], RTEMS_EVENT_2 ); | |
118 | } |
|
118 | } | |
119 | waveform_picker_regs->burst_enable = waveform_picker_regs->burst_enable | 0x03; // [0011] // enable f2 and f0 |
|
119 | waveform_picker_regs->burst_enable = waveform_picker_regs->burst_enable | 0x03; // [0011] // enable f2 and f0 | |
120 | waveform_picker_regs->status = waveform_picker_regs->status & 0xfffffccc; // set to 0 the bits related to f1 and f0 |
|
120 | waveform_picker_regs->status = waveform_picker_regs->status & 0xfffffccc; // set to 0 the bits related to f1 and f0 | |
121 | } |
|
121 | } | |
122 | #endif |
|
122 | #endif | |
123 | break; |
|
123 | break; | |
124 |
|
124 | |||
125 | //******** |
|
125 | //******** | |
126 | // DEFAULT |
|
126 | // DEFAULT | |
127 | default: |
|
127 | default: | |
128 | break; |
|
128 | break; | |
129 | } |
|
129 | } | |
130 | } |
|
130 | } | |
131 |
|
131 | |||
132 | rtems_isr waveforms_simulator_isr( rtems_vector_number vector ) |
|
132 | rtems_isr waveforms_simulator_isr( rtems_vector_number vector ) | |
133 | { |
|
133 | { | |
134 | unsigned char lfrMode; |
|
134 | unsigned char lfrMode; | |
135 | lfrMode = (housekeeping_packet.lfr_status_word[0] & 0xf0) >> 4; |
|
135 | lfrMode = (housekeeping_packet.lfr_status_word[0] & 0xf0) >> 4; | |
136 |
|
136 | |||
137 | switch(lfrMode) |
|
137 | switch(lfrMode) | |
138 | { |
|
138 | { | |
139 | //******** |
|
139 | //******** | |
140 | // STANDBY |
|
140 | // STANDBY | |
141 | case(LFR_MODE_STANDBY): |
|
141 | case(LFR_MODE_STANDBY): | |
142 | break; |
|
142 | break; | |
143 |
|
143 | |||
144 | //****** |
|
144 | //****** | |
145 | // NORMAL |
|
145 | // NORMAL | |
146 | case(LFR_MODE_NORMAL): |
|
146 | case(LFR_MODE_NORMAL): | |
147 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { |
|
147 | if (rtems_event_send( Task_id[TASKID_WFRM], RTEMS_EVENT_MODE_NORMAL ) != RTEMS_SUCCESSFUL) { | |
148 | PRINTF("ERR *** in waveforms_isr *** error sending event to WFRM\n"); |
|
148 | PRINTF("ERR *** in waveforms_isr *** error sending event to WFRM\n"); | |
149 | } |
|
149 | } | |
150 | break; |
|
150 | break; | |
151 |
|
151 | |||
152 | //****** |
|
152 | //****** | |
153 | // BURST |
|
153 | // BURST | |
154 | case(LFR_MODE_BURST): |
|
154 | case(LFR_MODE_BURST): | |
155 | break; |
|
155 | break; | |
156 |
|
156 | |||
157 | //***** |
|
157 | //***** | |
158 | // SBM1 |
|
158 | // SBM1 | |
159 | case(LFR_MODE_SBM1): |
|
159 | case(LFR_MODE_SBM1): | |
160 | break; |
|
160 | break; | |
161 |
|
161 | |||
162 | //***** |
|
162 | //***** | |
163 | // SBM2 |
|
163 | // SBM2 | |
164 | case(LFR_MODE_SBM2): |
|
164 | case(LFR_MODE_SBM2): | |
165 | break; |
|
165 | break; | |
166 |
|
166 | |||
167 | //******** |
|
167 | //******** | |
168 | // DEFAULT |
|
168 | // DEFAULT | |
169 | default: |
|
169 | default: | |
170 | break; |
|
170 | break; | |
171 | } |
|
171 | } | |
172 | } |
|
172 | } | |
173 |
|
173 | |||
174 | rtems_task wfrm_task(rtems_task_argument argument) //used with the waveform picker VHDL IP |
|
174 | rtems_task wfrm_task(rtems_task_argument argument) //used with the waveform picker VHDL IP | |
175 | { |
|
175 | { | |
176 | unsigned int i; |
|
176 | unsigned int i; | |
177 | unsigned int intEventOut; |
|
177 | unsigned int intEventOut; | |
178 | spw_ioctl_pkt_send spw_ioctl_send_SWF; |
|
178 | spw_ioctl_pkt_send spw_ioctl_send_SWF; | |
179 | spw_ioctl_pkt_send spw_ioctl_send_CWF; |
|
179 | spw_ioctl_pkt_send spw_ioctl_send_CWF; | |
180 | rtems_event_set event_out; |
|
180 | rtems_event_set event_out; | |
181 | Header_TM_LFR_SCIENCE_SWF_t headerSWF; |
|
181 | Header_TM_LFR_SCIENCE_SWF_t headerSWF; | |
182 | Header_TM_LFR_SCIENCE_CWF_t headerCWF; |
|
182 | Header_TM_LFR_SCIENCE_CWF_t headerCWF; | |
183 |
|
183 | |||
184 | init_header_snapshot_wf( &headerSWF ); |
|
184 | init_header_snapshot_wf( &headerSWF ); | |
185 | init_header_continuous_wf( &headerCWF ); |
|
185 | init_header_continuous_wf( &headerCWF ); | |
186 |
|
186 | |||
187 | // BUILD THE PACKET HEADERS |
|
187 | // BUILD THE PACKET HEADERS | |
188 | spw_ioctl_send_SWF.hlen = TM_HEADER_LEN + 4 + 12; // + 4 is for the protocole extra header, + 12 is for the auxiliary header |
|
188 | spw_ioctl_send_SWF.hlen = TM_HEADER_LEN + 4 + 12; // + 4 is for the protocole extra header, + 12 is for the auxiliary header | |
189 | spw_ioctl_send_SWF.hdr = (char*) &headerSWF; |
|
189 | spw_ioctl_send_SWF.hdr = (char*) &headerSWF; | |
190 | spw_ioctl_send_SWF.options = 0; |
|
190 | spw_ioctl_send_SWF.options = 0; | |
191 |
|
191 | |||
192 | spw_ioctl_send_CWF.hlen = TM_HEADER_LEN + 4 + 10; // + 4 is for the protocole extra header, + 10 is for the auxiliary header |
|
192 | spw_ioctl_send_CWF.hlen = TM_HEADER_LEN + 4 + 10; // + 4 is for the protocole extra header, + 10 is for the auxiliary header | |
193 | spw_ioctl_send_CWF.hdr = (char*) &headerCWF; |
|
193 | spw_ioctl_send_CWF.hdr = (char*) &headerCWF; | |
194 | spw_ioctl_send_CWF.options = 0; |
|
194 | spw_ioctl_send_CWF.options = 0; | |
195 |
|
195 | |||
196 | init_waveforms(); |
|
196 | init_waveforms(); | |
197 |
|
197 | |||
198 | PRINTF("in WFRM ***\n") |
|
198 | PRINTF("in WFRM ***\n") | |
199 |
|
199 | |||
200 | while(1){ |
|
200 | while(1){ | |
201 | // wait for an RTEMS_EVENT |
|
201 | // wait for an RTEMS_EVENT | |
202 | rtems_event_receive(RTEMS_EVENT_0 | RTEMS_EVENT_1 | RTEMS_EVENT_2 | RTEMS_EVENT_3 | RTEMS_EVENT_4, |
|
202 | rtems_event_receive(RTEMS_EVENT_0 | RTEMS_EVENT_1 | RTEMS_EVENT_2 | RTEMS_EVENT_3 | RTEMS_EVENT_4, | |
203 | RTEMS_WAIT | RTEMS_EVENT_ANY, RTEMS_NO_TIMEOUT, &event_out); |
|
203 | RTEMS_WAIT | RTEMS_EVENT_ANY, RTEMS_NO_TIMEOUT, &event_out); | |
204 | intEventOut = (unsigned int) event_out; |
|
204 | intEventOut = (unsigned int) event_out; | |
205 | for (i = 0; i< 5; i++) { |
|
205 | for (i = 0; i< 5; i++) { | |
206 | if ( ( (intEventOut >> i) & 0x0001) != 0 ) { |
|
206 | if ( ( (intEventOut >> i) & 0x0001) != 0 ) { | |
207 | switch(i) { |
|
207 | switch(i) { | |
208 | case(LFR_MODE_NORMAL): |
|
208 | case(LFR_MODE_NORMAL): | |
209 | send_waveform_norm( &headerSWF, &spw_ioctl_send_SWF); |
|
209 | send_waveform_norm( &headerSWF, &spw_ioctl_send_SWF); | |
210 | break; |
|
210 | break; | |
211 | case(LFR_MODE_BURST): |
|
211 | case(LFR_MODE_BURST): | |
212 | send_waveform_burst( &headerCWF, &spw_ioctl_send_CWF); |
|
212 | send_waveform_burst( &headerCWF, &spw_ioctl_send_CWF); | |
213 | break; |
|
213 | break; | |
214 | case(LFR_MODE_SBM1): |
|
214 | case(LFR_MODE_SBM1): | |
215 | send_waveform_sbm1( &headerCWF, &spw_ioctl_send_CWF); |
|
215 | send_waveform_sbm1( &headerCWF, &spw_ioctl_send_CWF); | |
216 | param_local.local_sbm1_nb_cwf_sent ++; |
|
216 | param_local.local_sbm1_nb_cwf_sent ++; | |
217 | if ( param_local.local_sbm1_nb_cwf_sent == (param_local.local_sbm1_nb_cwf_max-1) ) { |
|
217 | if ( param_local.local_sbm1_nb_cwf_sent == (param_local.local_sbm1_nb_cwf_max-1) ) { | |
218 | // send the f1 buffer as a NORM snapshot |
|
218 | // send the f1 buffer as a NORM snapshot | |
219 | if (waveform_picker_regs->addr_data_f1 == (int) wf_snap_f1) { |
|
219 | if (waveform_picker_regs->addr_data_f1 == (int) wf_snap_f1) { | |
220 | send_waveform_SWF( &headerSWF, wf_snap_f1_bis, SID_NORM_SWF_F1, &spw_ioctl_send_SWF ); |
|
220 | send_waveform_SWF( &headerSWF, wf_snap_f1_bis, SID_NORM_SWF_F1, &spw_ioctl_send_SWF ); | |
221 | } |
|
221 | } | |
222 | else { |
|
222 | else { | |
223 | send_waveform_SWF( &headerSWF, wf_snap_f1, SID_NORM_SWF_F1, &spw_ioctl_send_SWF ); |
|
223 | send_waveform_SWF( &headerSWF, wf_snap_f1, SID_NORM_SWF_F1, &spw_ioctl_send_SWF ); | |
224 | } |
|
224 | } | |
225 | } |
|
225 | } | |
226 | break; |
|
226 | break; | |
227 | case(LFR_MODE_SBM2): |
|
227 | case(LFR_MODE_SBM2): | |
228 | send_waveform_sbm2( &headerCWF, &spw_ioctl_send_CWF); |
|
228 | send_waveform_sbm2( &headerCWF, &spw_ioctl_send_CWF); | |
229 | param_local.local_sbm2_nb_cwf_sent ++; |
|
229 | param_local.local_sbm2_nb_cwf_sent ++; | |
230 | if ( param_local.local_sbm2_nb_cwf_sent == (param_local.local_sbm2_nb_cwf_max-1) ) { |
|
230 | if ( param_local.local_sbm2_nb_cwf_sent == (param_local.local_sbm2_nb_cwf_max-1) ) { | |
231 | // send the f2 buffer as a NORM snapshot |
|
231 | // send the f2 buffer as a NORM snapshot | |
232 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { |
|
232 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { | |
233 | send_waveform_SWF( &headerSWF, wf_snap_f2_bis, SID_NORM_SWF_F2, &spw_ioctl_send_SWF ); |
|
233 | send_waveform_SWF( &headerSWF, wf_snap_f2_bis, SID_NORM_SWF_F2, &spw_ioctl_send_SWF ); | |
234 | } |
|
234 | } | |
235 | else { |
|
235 | else { | |
236 | send_waveform_SWF( &headerSWF, wf_snap_f2, SID_NORM_SWF_F2, &spw_ioctl_send_SWF ); |
|
236 | send_waveform_SWF( &headerSWF, wf_snap_f2, SID_NORM_SWF_F2, &spw_ioctl_send_SWF ); | |
237 | } |
|
237 | } | |
238 | } |
|
238 | } | |
239 | break; |
|
239 | break; | |
240 | default: |
|
240 | default: | |
241 | break; |
|
241 | break; | |
242 | } |
|
242 | } | |
243 | } |
|
243 | } | |
244 | } |
|
244 | } | |
245 | } |
|
245 | } | |
246 | } |
|
246 | } | |
247 |
|
247 | |||
248 | //****************** |
|
248 | //****************** | |
249 | // general functions |
|
249 | // general functions | |
250 | void init_waveforms( void ) |
|
250 | void init_waveforms( void ) | |
251 | { |
|
251 | { | |
252 | int i = 0; |
|
252 | int i = 0; | |
253 |
|
253 | |||
254 | for (i=0; i< NB_SAMPLES_PER_SNAPSHOT; i++) |
|
254 | for (i=0; i< NB_SAMPLES_PER_SNAPSHOT; i++) | |
255 | { |
|
255 | { | |
256 | //*** |
|
256 | //*** | |
257 | // F0 |
|
257 | // F0 | |
258 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x88887777; // |
|
258 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x88887777; // | |
259 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x22221111; // |
|
259 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x22221111; // | |
260 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0x44443333; // |
|
260 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0x44443333; // | |
261 |
|
261 | |||
262 | //*** |
|
262 | //*** | |
263 | // F1 |
|
263 | // F1 | |
264 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x22221111; |
|
264 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x22221111; | |
265 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x44443333; |
|
265 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x44443333; | |
266 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0xaaaa0000; |
|
266 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0xaaaa0000; | |
267 |
|
267 | |||
268 | //*** |
|
268 | //*** | |
269 | // F2 |
|
269 | // F2 | |
270 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x44443333; |
|
270 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET ] = 0x44443333; | |
271 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x22221111; |
|
271 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET ] = 0x22221111; | |
272 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0xaaaa0000; |
|
272 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET ] = 0xaaaa0000; | |
273 |
|
273 | |||
274 | //*** |
|
274 | //*** | |
275 | // F3 |
|
275 | // F3 | |
276 | //wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 0 ] = val1; |
|
276 | //wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 0 ] = val1; | |
277 | //wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 1 ] = val2; |
|
277 | //wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 1 ] = val2; | |
278 | //wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 2 ] = 0xaaaa0000; |
|
278 | //wf_cont_f3[ (i* NB_WORDS_SWF_BLK) + 2 ] = 0xaaaa0000; | |
279 | } |
|
279 | } | |
280 | } |
|
280 | } | |
281 |
|
281 | |||
282 | void init_header_snapshot_wf( Header_TM_LFR_SCIENCE_SWF_t *header) |
|
282 | void init_header_snapshot_wf( Header_TM_LFR_SCIENCE_SWF_t *header) | |
283 | { |
|
283 | { | |
284 | header->targetLogicalAddress = CCSDS_DESTINATION_ID; |
|
284 | header->targetLogicalAddress = CCSDS_DESTINATION_ID; | |
285 | header->protocolIdentifier = CCSDS_PROTOCOLE_ID; |
|
285 | header->protocolIdentifier = CCSDS_PROTOCOLE_ID; | |
286 | header->reserved = 0x00; |
|
286 | header->reserved = 0x00; | |
287 | header->userApplication = CCSDS_USER_APP; |
|
287 | header->userApplication = CCSDS_USER_APP; | |
288 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL >> 8); |
|
288 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL >> 8); | |
289 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL); |
|
289 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL); | |
290 | header->packetSequenceControl[0] = 0xc0; |
|
290 | header->packetSequenceControl[0] = 0xc0; | |
291 | header->packetSequenceControl[1] = 0x00; |
|
291 | header->packetSequenceControl[1] = 0x00; | |
292 | header->packetLength[0] = 0x00; |
|
292 | header->packetLength[0] = 0x00; | |
293 | header->packetLength[1] = 0x00; |
|
293 | header->packetLength[1] = 0x00; | |
294 | // DATA FIELD HEADER |
|
294 | // DATA FIELD HEADER | |
295 | header->spare1_pusVersion_spare2 = 0x10; |
|
295 | header->spare1_pusVersion_spare2 = 0x10; | |
296 | header->serviceType = TM_TYPE_LFR_SCIENCE; // service type |
|
296 | header->serviceType = TM_TYPE_LFR_SCIENCE; // service type | |
297 | header->serviceSubType = TM_SUBTYPE_LFR_SCIENCE; // service subtype |
|
297 | header->serviceSubType = TM_SUBTYPE_LFR_SCIENCE; // service subtype | |
298 | header->destinationID = TM_DESTINATION_ID_GROUND; |
|
298 | header->destinationID = TM_DESTINATION_ID_GROUND; | |
299 | // AUXILIARY DATA HEADER |
|
299 | // AUXILIARY DATA HEADER | |
300 | header->sid = 0x00; |
|
300 | header->sid = 0x00; | |
301 | header->hkBIA = 0x1f; |
|
301 | header->hkBIA = 0x1f; | |
302 | header->pktCnt = 0x07; // PKT_CNT |
|
302 | header->pktCnt = 0x07; // PKT_CNT | |
303 | header->pktNr = 0x00; // PKT_NR |
|
303 | header->pktNr = 0x00; // PKT_NR | |
304 | header->time[0] = 0x00; |
|
304 | header->time[0] = 0x00; | |
305 | header->time[0] = 0x00; |
|
305 | header->time[0] = 0x00; | |
306 | header->time[0] = 0x00; |
|
306 | header->time[0] = 0x00; | |
307 | header->time[0] = 0x00; |
|
307 | header->time[0] = 0x00; | |
308 | header->time[0] = 0x00; |
|
308 | header->time[0] = 0x00; | |
309 | header->time[0] = 0x00; |
|
309 | header->time[0] = 0x00; | |
310 | header->blkNr[0] = 0x00; // BLK_NR MSB |
|
310 | header->blkNr[0] = 0x00; // BLK_NR MSB | |
311 | header->blkNr[1] = 0x00; // BLK_NR LSB |
|
311 | header->blkNr[1] = 0x00; // BLK_NR LSB | |
312 | } |
|
312 | } | |
313 |
|
313 | |||
314 | void init_header_continuous_wf( Header_TM_LFR_SCIENCE_CWF_t *header) |
|
314 | void init_header_continuous_wf( Header_TM_LFR_SCIENCE_CWF_t *header) | |
315 | { |
|
315 | { | |
316 | header->targetLogicalAddress = CCSDS_DESTINATION_ID; |
|
316 | header->targetLogicalAddress = CCSDS_DESTINATION_ID; | |
317 | header->protocolIdentifier = CCSDS_PROTOCOLE_ID; |
|
317 | header->protocolIdentifier = CCSDS_PROTOCOLE_ID; | |
318 | header->reserved = 0x00; |
|
318 | header->reserved = 0x00; | |
319 | header->userApplication = CCSDS_USER_APP; |
|
319 | header->userApplication = CCSDS_USER_APP; | |
320 | header->packetID[0] = 0x00; |
|
320 | header->packetID[0] = 0x00; | |
321 | header->packetID[1] = 0x00; |
|
321 | header->packetID[1] = 0x00; | |
322 | header->packetSequenceControl[0] = 0xc0; |
|
322 | header->packetSequenceControl[0] = 0xc0; | |
323 | header->packetSequenceControl[1] = 0x00; |
|
323 | header->packetSequenceControl[1] = 0x00; | |
324 | header->packetLength[0] = 0x00; |
|
324 | header->packetLength[0] = 0x00; | |
325 | header->packetLength[1] = 0x00; |
|
325 | header->packetLength[1] = 0x00; | |
326 | // DATA FIELD HEADER |
|
326 | // DATA FIELD HEADER | |
327 | header->spare1_pusVersion_spare2 = 0x10; |
|
327 | header->spare1_pusVersion_spare2 = 0x10; | |
328 | header->serviceType = TM_TYPE_LFR_SCIENCE; // service type |
|
328 | header->serviceType = TM_TYPE_LFR_SCIENCE; // service type | |
329 | header->serviceSubType = TM_SUBTYPE_LFR_SCIENCE; // service subtype |
|
329 | header->serviceSubType = TM_SUBTYPE_LFR_SCIENCE; // service subtype | |
330 | header->destinationID = TM_DESTINATION_ID_GROUND; |
|
330 | header->destinationID = TM_DESTINATION_ID_GROUND; | |
331 | // AUXILIARY DATA HEADER |
|
331 | // AUXILIARY DATA HEADER | |
332 | header->sid = 0x00; |
|
332 | header->sid = 0x00; | |
333 | header->hkBIA = 0x1f; |
|
333 | header->hkBIA = 0x1f; | |
334 | header->time[0] = 0x00; |
|
334 | header->time[0] = 0x00; | |
335 | header->time[0] = 0x00; |
|
335 | header->time[0] = 0x00; | |
336 | header->time[0] = 0x00; |
|
336 | header->time[0] = 0x00; | |
337 | header->time[0] = 0x00; |
|
337 | header->time[0] = 0x00; | |
338 | header->time[0] = 0x00; |
|
338 | header->time[0] = 0x00; | |
339 | header->time[0] = 0x00; |
|
339 | header->time[0] = 0x00; | |
340 | header->blkNr[0] = 0x00; // BLK_NR MSB |
|
340 | header->blkNr[0] = 0x00; // BLK_NR MSB | |
341 | header->blkNr[1] = 0x00; // BLK_NR LSB |
|
341 | header->blkNr[1] = 0x00; // BLK_NR LSB | |
342 | } |
|
342 | } | |
343 |
|
343 | |||
344 | void reset_waveforms( void ) |
|
344 | void reset_waveforms( void ) | |
345 | { |
|
345 | { | |
346 | int i = 0; |
|
346 | int i = 0; | |
347 |
|
347 | |||
348 | for (i=0; i< NB_SAMPLES_PER_SNAPSHOT; i++) |
|
348 | for (i=0; i< NB_SAMPLES_PER_SNAPSHOT; i++) | |
349 | { |
|
349 | { | |
350 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET] = 0x10002000; |
|
350 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET] = 0x10002000; | |
351 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET] = 0x20001000; |
|
351 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET] = 0x20001000; | |
352 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET] = 0x40008000; |
|
352 | wf_snap_f0[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET] = 0x40008000; | |
353 |
|
353 | |||
354 | //*** |
|
354 | //*** | |
355 | // F1 |
|
355 | // F1 | |
356 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET] = 0x1000f000; |
|
356 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET] = 0x1000f000; | |
357 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET] = 0xf0001000; |
|
357 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET] = 0xf0001000; | |
358 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET] = 0x40008000; |
|
358 | wf_snap_f1[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET] = 0x40008000; | |
359 |
|
359 | |||
360 | //*** |
|
360 | //*** | |
361 | // F2 |
|
361 | // F2 | |
362 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET] = 0x40008000; |
|
362 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 0 + TIME_OFFSET] = 0x40008000; | |
363 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET] = 0x20001000; |
|
363 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 1 + TIME_OFFSET] = 0x20001000; | |
364 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET] = 0x10002000; |
|
364 | wf_snap_f2[ (i* NB_WORDS_SWF_BLK) + 2 + TIME_OFFSET] = 0x10002000; | |
365 |
|
365 | |||
366 | //*** |
|
366 | //*** | |
367 | // F3 |
|
367 | // F3 | |
368 | /*wf_cont_f3[ i* NB_WORDS_SWF_BLK + 0 ] = build_value( i, i ); // v and 1 |
|
368 | /*wf_cont_f3[ i* NB_WORDS_SWF_BLK + 0 ] = build_value( i, i ); // v and 1 | |
369 | wf_cont_f3[ i* NB_WORDS_SWF_BLK + 1 ] = build_value( i, i ); // e2 and b1 |
|
369 | wf_cont_f3[ i* NB_WORDS_SWF_BLK + 1 ] = build_value( i, i ); // e2 and b1 | |
370 | wf_cont_f3[ i* NB_WORDS_SWF_BLK + 2 ] = build_value( i, i ); // b2 and b3*/ |
|
370 | wf_cont_f3[ i* NB_WORDS_SWF_BLK + 2 ] = build_value( i, i ); // b2 and b3*/ | |
371 | } |
|
371 | } | |
372 | } |
|
372 | } | |
373 |
|
373 | |||
374 | void send_waveform_SWF( Header_TM_LFR_SCIENCE_SWF_t *header, volatile int *waveform, |
|
374 | void send_waveform_SWF( Header_TM_LFR_SCIENCE_SWF_t *header, volatile int *waveform, | |
375 | unsigned int sid, spw_ioctl_pkt_send *spw_ioctl_send) |
|
375 | unsigned int sid, spw_ioctl_pkt_send *spw_ioctl_send) | |
376 | { |
|
376 | { | |
377 | unsigned int i = 0; |
|
377 | unsigned int i = 0; | |
378 | unsigned int length = 0; |
|
378 | unsigned int length = 0; | |
379 | rtems_status_code status; |
|
379 | rtems_status_code status; | |
380 |
|
380 | |||
381 | header->sid = (unsigned char) sid; |
|
381 | header->sid = (unsigned char) sid; | |
382 |
|
382 | |||
383 | for (i=0; i<7; i++) // send waveform |
|
383 | for (i=0; i<7; i++) // send waveform | |
384 | { |
|
384 | { | |
385 | header->pktNr = (unsigned char) i+1; // PKT_NR |
|
385 | header->pktNr = (unsigned char) i+1; // PKT_NR | |
386 | // BUILD THE DATA |
|
386 | // BUILD THE DATA | |
387 | if (i==6) { |
|
387 | if (i==6) { | |
388 | spw_ioctl_send->dlen = 8 * NB_BYTES_SWF_BLK; |
|
388 | spw_ioctl_send->dlen = 8 * NB_BYTES_SWF_BLK; | |
389 | length = TM_LEN_SCI_SWF_8; |
|
389 | length = TM_LEN_SCI_SWF_8; | |
390 | header->blkNr[0] = 0x00; // BLK_NR MSB |
|
390 | header->blkNr[0] = 0x00; // BLK_NR MSB | |
391 | header->blkNr[1] = 0x08; // BLK_NR LSB |
|
391 | header->blkNr[1] = 0x08; // BLK_NR LSB | |
392 | } |
|
392 | } | |
393 | else { |
|
393 | else { | |
394 | spw_ioctl_send->dlen = 340 * NB_BYTES_SWF_BLK; |
|
394 | spw_ioctl_send->dlen = 340 * NB_BYTES_SWF_BLK; | |
395 | length = TM_LEN_SCI_SWF_340; |
|
395 | length = TM_LEN_SCI_SWF_340; | |
396 | header->blkNr[0] = 0x01; // BLK_NR MSB |
|
396 | header->blkNr[0] = 0x01; // BLK_NR MSB | |
397 | header->blkNr[1] = 0x54; // BLK_NR LSB |
|
397 | header->blkNr[1] = 0x54; // BLK_NR LSB | |
398 | } |
|
398 | } | |
399 | spw_ioctl_send->data = (char*) &waveform[ (i * 340 * NB_WORDS_SWF_BLK) ]; |
|
399 | spw_ioctl_send->data = (char*) &waveform[ (i * 340 * NB_WORDS_SWF_BLK) ]; | |
400 | // BUILD THE HEADER |
|
400 | // BUILD THE HEADER | |
401 | header->packetLength[0] = (unsigned char) (length>>8); |
|
401 | header->packetLength[0] = (unsigned char) (length>>8); | |
402 | header->packetLength[1] = (unsigned char) (length); |
|
402 | header->packetLength[1] = (unsigned char) (length); | |
403 | header->sid = (unsigned char) sid; // SID |
|
403 | header->sid = (unsigned char) sid; // SID | |
404 | // SET PACKET TIME |
|
404 | // SET PACKET TIME | |
405 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); |
|
405 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |
406 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); |
|
406 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |
407 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); |
|
407 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |
408 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); |
|
408 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); | |
409 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); |
|
409 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); | |
410 | header->time[5] = (unsigned char) (time_management_regs->fine_time); |
|
410 | header->time[5] = (unsigned char) (time_management_regs->fine_time); | |
|
411 | header->acquisitionTime[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |||
|
412 | header->acquisitionTime[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |||
|
413 | header->acquisitionTime[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |||
|
414 | header->acquisitionTime[3] = (unsigned char) (time_management_regs->coarse_time); | |||
|
415 | header->acquisitionTime[4] = (unsigned char) (time_management_regs->fine_time>>8); | |||
|
416 | header->acquisitionTime[5] = (unsigned char) (time_management_regs->fine_time); | |||
411 | // SEND PACKET |
|
417 | // SEND PACKET | |
412 | status = write_spw(spw_ioctl_send); |
|
418 | status = write_spw(spw_ioctl_send); | |
413 | if (status != RTEMS_SUCCESSFUL) { |
|
419 | if (status != RTEMS_SUCCESSFUL) { | |
414 | while (true) { |
|
420 | while (true) { | |
415 | if (status != RTEMS_SUCCESSFUL) { |
|
421 | if (status != RTEMS_SUCCESSFUL) { | |
416 | status = write_spw(spw_ioctl_send); |
|
422 | status = write_spw(spw_ioctl_send); | |
417 | //PRINTF1("%d", i) |
|
423 | //PRINTF1("%d", i) | |
418 | sched_yield(); |
|
424 | sched_yield(); | |
419 | } |
|
425 | } | |
420 | else { |
|
426 | else { | |
421 | //PRINTF("\n") |
|
427 | //PRINTF("\n") | |
422 | break; |
|
428 | break; | |
423 | } |
|
429 | } | |
424 | } |
|
430 | } | |
425 | } |
|
431 | } | |
426 | } |
|
432 | } | |
427 | } |
|
433 | } | |
428 |
|
434 | |||
429 | void send_waveform_CWF( Header_TM_LFR_SCIENCE_CWF_t *header, volatile int *waveform, |
|
435 | void send_waveform_CWF( Header_TM_LFR_SCIENCE_CWF_t *header, volatile int *waveform, | |
430 | unsigned int sid, spw_ioctl_pkt_send *spw_ioctl_send) |
|
436 | unsigned int sid, spw_ioctl_pkt_send *spw_ioctl_send) | |
431 | { |
|
437 | { | |
432 | unsigned int i = 0; |
|
438 | unsigned int i = 0; | |
433 | unsigned int length = 0; |
|
439 | unsigned int length = 0; | |
434 | rtems_status_code status; |
|
440 | rtems_status_code status; | |
435 |
|
441 | |||
436 | header->sid = (unsigned char) sid; |
|
442 | header->sid = (unsigned char) sid; | |
437 |
|
443 | |||
438 | for (i=0; i<7; i++) // send waveform |
|
444 | for (i=0; i<7; i++) // send waveform | |
439 | { |
|
445 | { | |
440 | // BUILD THE DATA |
|
446 | // BUILD THE DATA | |
441 | if (i==6) { |
|
447 | if (i==6) { | |
442 | spw_ioctl_send->dlen = 8 * NB_BYTES_SWF_BLK; |
|
448 | spw_ioctl_send->dlen = 8 * NB_BYTES_SWF_BLK; | |
443 | length = TM_LEN_SCI_CWF_8; |
|
449 | length = TM_LEN_SCI_CWF_8; | |
444 | header->blkNr[0] = 0x00; // BLK_NR MSB |
|
450 | header->blkNr[0] = 0x00; // BLK_NR MSB | |
445 | header->blkNr[1] = 0x08; // BLK_NR LSB |
|
451 | header->blkNr[1] = 0x08; // BLK_NR LSB | |
446 | } |
|
452 | } | |
447 | else { |
|
453 | else { | |
448 | spw_ioctl_send->dlen = 340 * NB_BYTES_SWF_BLK; |
|
454 | spw_ioctl_send->dlen = 340 * NB_BYTES_SWF_BLK; | |
449 | length = TM_LEN_SCI_CWF_340; |
|
455 | length = TM_LEN_SCI_CWF_340; | |
450 | header->blkNr[0] = 0x01; // BLK_NR MSB |
|
456 | header->blkNr[0] = 0x01; // BLK_NR MSB | |
451 | header->blkNr[1] = 0x54; // BLK_NR LSB |
|
457 | header->blkNr[1] = 0x54; // BLK_NR LSB | |
452 | } |
|
458 | } | |
453 | spw_ioctl_send->data = (char*) &waveform[ (i * 340 * NB_WORDS_SWF_BLK) ]; |
|
459 | spw_ioctl_send->data = (char*) &waveform[ (i * 340 * NB_WORDS_SWF_BLK) ]; | |
454 | // BUILD THE HEADER |
|
460 | // BUILD THE HEADER | |
455 | header->packetLength[0] = (unsigned char) (length>>8); |
|
461 | header->packetLength[0] = (unsigned char) (length>>8); | |
456 | header->packetLength[1] = (unsigned char) (length); |
|
462 | header->packetLength[1] = (unsigned char) (length); | |
|
463 | // SET PACKET TIME | |||
|
464 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |||
|
465 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |||
|
466 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |||
|
467 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); | |||
|
468 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); | |||
|
469 | header->time[5] = (unsigned char) (time_management_regs->fine_time); | |||
|
470 | header->acquisitionTime[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |||
|
471 | header->acquisitionTime[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |||
|
472 | header->acquisitionTime[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |||
|
473 | header->acquisitionTime[3] = (unsigned char) (time_management_regs->coarse_time); | |||
|
474 | header->acquisitionTime[4] = (unsigned char) (time_management_regs->fine_time>>8); | |||
|
475 | header->acquisitionTime[5] = (unsigned char) (time_management_regs->fine_time); | |||
457 | // SEND PACKET |
|
476 | // SEND PACKET | |
458 | status = write_spw(spw_ioctl_send); |
|
477 | status = write_spw(spw_ioctl_send); | |
459 | if (status != RTEMS_SUCCESSFUL) { |
|
478 | if (status != RTEMS_SUCCESSFUL) { | |
460 | while (true) { |
|
479 | while (true) { | |
461 | if (status != RTEMS_SUCCESSFUL) { |
|
480 | if (status != RTEMS_SUCCESSFUL) { | |
462 | status = write_spw(spw_ioctl_send); |
|
481 | status = write_spw(spw_ioctl_send); | |
463 | //PRINTF1("%d", i) |
|
482 | //PRINTF1("%d", i) | |
464 | sched_yield(); |
|
483 | sched_yield(); | |
465 | } |
|
484 | } | |
466 | else { |
|
485 | else { | |
467 | //PRINTF("\n") |
|
486 | //PRINTF("\n") | |
468 | break; |
|
487 | break; | |
469 | } |
|
488 | } | |
470 | } |
|
489 | } | |
471 | } |
|
490 | } | |
472 | } |
|
491 | } | |
473 | } |
|
492 | } | |
474 |
|
493 | |||
475 | int build_value(int value1, int value0) |
|
494 | int build_value(int value1, int value0) | |
476 | { |
|
495 | { | |
477 | int aux = 0; |
|
496 | int aux = 0; | |
478 | int aux1 = 0; |
|
497 | int aux1 = 0; | |
479 | int aux0 = 0; |
|
498 | int aux0 = 0; | |
480 | int value1_aux = 0; |
|
499 | int value1_aux = 0; | |
481 | int value0_aux = 0; |
|
500 | int value0_aux = 0; | |
482 |
|
501 | |||
483 | value1_aux = value1; |
|
502 | value1_aux = value1; | |
484 | value0_aux = value0; |
|
503 | value0_aux = value0; | |
485 |
|
504 | |||
486 | //****** |
|
505 | //****** | |
487 | // B3 B2 |
|
506 | // B3 B2 | |
488 | if (value1_aux > 8191) value1_aux = 8191; |
|
507 | if (value1_aux > 8191) value1_aux = 8191; | |
489 | if (value1_aux < -8192) value1_aux = -8192; |
|
508 | if (value1_aux < -8192) value1_aux = -8192; | |
490 | aux1 = ( (int) ( ( (unsigned char) (value1_aux / 256 ) ) << 8 ) ) |
|
509 | aux1 = ( (int) ( ( (unsigned char) (value1_aux / 256 ) ) << 8 ) ) | |
491 | + ( (int) ( (unsigned char) (value1_aux ) ) ); |
|
510 | + ( (int) ( (unsigned char) (value1_aux ) ) ); | |
492 |
|
511 | |||
493 | //****** |
|
512 | //****** | |
494 | // B1 B0 |
|
513 | // B1 B0 | |
495 | if (value0_aux > 8191) value0_aux = 8191; |
|
514 | if (value0_aux > 8191) value0_aux = 8191; | |
496 | if (value0_aux < -8192) value0_aux = -8192; |
|
515 | if (value0_aux < -8192) value0_aux = -8192; | |
497 | aux0 = ( (int) ( ( (unsigned char) (value0_aux / 256) ) << 8 ) ) |
|
516 | aux0 = ( (int) ( ( (unsigned char) (value0_aux / 256) ) << 8 ) ) | |
498 | + ( (int) ( (unsigned char) (value0_aux ) ) ); |
|
517 | + ( (int) ( (unsigned char) (value0_aux ) ) ); | |
499 |
|
518 | |||
500 | aux = (aux1 << 16) + aux0; |
|
519 | aux = (aux1 << 16) + aux0; | |
501 |
|
520 | |||
502 | return aux; |
|
521 | return aux; | |
503 | } |
|
522 | } | |
504 |
|
523 | |||
505 | void send_waveform_norm(Header_TM_LFR_SCIENCE_SWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) |
|
524 | void send_waveform_norm(Header_TM_LFR_SCIENCE_SWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) | |
506 | { |
|
525 | { | |
507 | unsigned char lfrMode; |
|
526 | unsigned char lfrMode; | |
508 | lfrMode = (housekeeping_packet.lfr_status_word[0] & 0xf0) >> 4; |
|
527 | lfrMode = (housekeeping_packet.lfr_status_word[0] & 0xf0) >> 4; | |
509 |
|
528 | |||
510 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL >> 8); |
|
529 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL >> 8); | |
511 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL); |
|
530 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_NORMAL); | |
512 | // TIME |
|
531 | // TIME | |
513 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); |
|
532 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |
514 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); |
|
533 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |
515 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); |
|
534 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |
516 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); |
|
535 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); | |
517 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); |
|
536 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); | |
518 | header->time[5] = (unsigned char) (time_management_regs->fine_time); |
|
537 | header->time[5] = (unsigned char) (time_management_regs->fine_time); | |
519 |
|
538 | |||
520 | //*************** |
|
539 | //*************** | |
521 | // send snapshots |
|
540 | // send snapshots | |
522 | // F0 |
|
541 | // F0 | |
523 | send_waveform_SWF( header, wf_snap_f0, SID_NORM_SWF_F0, spw_ioctl_send); |
|
542 | send_waveform_SWF( header, wf_snap_f0, SID_NORM_SWF_F0, spw_ioctl_send); | |
524 | // F1 |
|
543 | // F1 | |
525 | if (lfrMode == LFR_MODE_NORMAL) // in SBM1 mode, the snapshot is sent by the send_waveform_sbm1 function |
|
544 | if (lfrMode == LFR_MODE_NORMAL) // in SBM1 mode, the snapshot is sent by the send_waveform_sbm1 function | |
526 | { |
|
545 | { | |
527 | send_waveform_SWF( header, wf_snap_f1, SID_NORM_SWF_F1, spw_ioctl_send); |
|
546 | send_waveform_SWF( header, wf_snap_f1, SID_NORM_SWF_F1, spw_ioctl_send); | |
528 | } |
|
547 | } | |
529 | // F2 |
|
548 | // F2 | |
530 | send_waveform_SWF( header, wf_snap_f2, SID_NORM_SWF_F2, spw_ioctl_send); |
|
549 | send_waveform_SWF( header, wf_snap_f2, SID_NORM_SWF_F2, spw_ioctl_send); | |
531 | #ifdef GSA |
|
550 | #ifdef GSA | |
532 | // irq processed, reset the related register of the timer unit |
|
551 | // irq processed, reset the related register of the timer unit | |
533 | gptimer_regs->timer[2].ctrl = gptimer_regs->timer[2].ctrl | 0x00000010; |
|
552 | gptimer_regs->timer[2].ctrl = gptimer_regs->timer[2].ctrl | 0x00000010; | |
534 | #else |
|
553 | #else | |
535 | // irq processed, reset the related register of the waveform picker |
|
554 | // irq processed, reset the related register of the waveform picker | |
536 | if (lfrMode == LFR_MODE_SBM1) { |
|
555 | if (lfrMode == LFR_MODE_SBM1) { | |
537 | param_local.local_sbm1_nb_cwf_sent = 0; |
|
556 | param_local.local_sbm1_nb_cwf_sent = 0; | |
538 | // after the first transmission of the swf at F1, the period is set to local_sbm1_nb_cwf_max |
|
557 | // after the first transmission of the swf at F1, the period is set to local_sbm1_nb_cwf_max | |
539 | param_local.local_sbm1_nb_cwf_max = 2 * param_norm.sy_lfr_n_swf_p; |
|
558 | param_local.local_sbm1_nb_cwf_max = 2 * param_norm.sy_lfr_n_swf_p; | |
540 | } |
|
559 | } | |
541 | else if (lfrMode == LFR_MODE_SBM2) { |
|
560 | else if (lfrMode == LFR_MODE_SBM2) { | |
542 | param_local.local_sbm2_nb_cwf_sent = 0; |
|
561 | param_local.local_sbm2_nb_cwf_sent = 0; | |
543 | // after the first transmission of the swf at F2, the period is set to local_sbm2_nb_cwf_max |
|
562 | // after the first transmission of the swf at F2, the period is set to local_sbm2_nb_cwf_max | |
544 | param_local.local_sbm2_nb_cwf_max = param_norm.sy_lfr_n_swf_p / 8; |
|
563 | param_local.local_sbm2_nb_cwf_max = param_norm.sy_lfr_n_swf_p / 8; | |
545 | } |
|
564 | } | |
546 | else { |
|
565 | else { | |
547 | waveform_picker_regs->status = waveform_picker_regs->status & 0x00; |
|
566 | waveform_picker_regs->status = waveform_picker_regs->status & 0x00; | |
548 | waveform_picker_regs->burst_enable = 0x07; // [0111] enable f2 f1 f0 |
|
567 | waveform_picker_regs->burst_enable = 0x07; // [0111] enable f2 f1 f0 | |
549 | } |
|
568 | } | |
550 |
|
569 | |||
551 | #endif |
|
570 | #endif | |
552 | } |
|
571 | } | |
553 |
|
572 | |||
554 | void send_waveform_burst(Header_TM_LFR_SCIENCE_CWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) |
|
573 | void send_waveform_burst(Header_TM_LFR_SCIENCE_CWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) | |
555 | { |
|
574 | { | |
556 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2 >> 8); |
|
575 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2 >> 8); | |
557 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2); |
|
576 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2); | |
558 | // TIME |
|
577 | // TIME | |
559 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); |
|
578 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |
560 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); |
|
579 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |
561 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); |
|
580 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |
562 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); |
|
581 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); | |
563 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); |
|
582 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); | |
564 | header->time[5] = (unsigned char) (time_management_regs->fine_time); |
|
583 | header->time[5] = (unsigned char) (time_management_regs->fine_time); | |
565 | // ACQUISITION TIME |
|
584 | // ACQUISITION TIME | |
566 |
|
585 | |||
567 | // F2 |
|
586 | // F2 | |
568 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { |
|
587 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { | |
569 | send_waveform_CWF( header, wf_snap_f2_bis, SID_BURST_CWF_F2, spw_ioctl_send); |
|
588 | send_waveform_CWF( header, wf_snap_f2_bis, SID_BURST_CWF_F2, spw_ioctl_send); | |
570 | } |
|
589 | } | |
571 | else { |
|
590 | else { | |
572 | send_waveform_CWF( header, wf_snap_f2, SID_BURST_CWF_F2, spw_ioctl_send); |
|
591 | send_waveform_CWF( header, wf_snap_f2, SID_BURST_CWF_F2, spw_ioctl_send); | |
573 | } |
|
592 | } | |
574 | } |
|
593 | } | |
575 |
|
594 | |||
576 | void send_waveform_sbm1(Header_TM_LFR_SCIENCE_CWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) |
|
595 | void send_waveform_sbm1(Header_TM_LFR_SCIENCE_CWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) | |
577 | { |
|
596 | { | |
578 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2 >> 8); |
|
597 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2 >> 8); | |
579 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2); |
|
598 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2); | |
580 | // TIME |
|
599 | // TIME | |
581 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); |
|
600 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |
582 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); |
|
601 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |
583 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); |
|
602 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |
584 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); |
|
603 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); | |
585 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); |
|
604 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); | |
586 | header->time[5] = (unsigned char) (time_management_regs->fine_time); |
|
605 | header->time[5] = (unsigned char) (time_management_regs->fine_time); | |
587 |
|
606 | |||
588 | // F1 |
|
607 | // F1 | |
589 | if (waveform_picker_regs->addr_data_f1 == (int) wf_snap_f1) { |
|
608 | if (waveform_picker_regs->addr_data_f1 == (int) wf_snap_f1) { | |
590 | send_waveform_CWF( header, wf_snap_f1_bis, SID_SBM1_CWF_F1, spw_ioctl_send ); |
|
609 | send_waveform_CWF( header, wf_snap_f1_bis, SID_SBM1_CWF_F1, spw_ioctl_send ); | |
591 | } |
|
610 | } | |
592 | else { |
|
611 | else { | |
593 | send_waveform_CWF( header, wf_snap_f1, SID_SBM1_CWF_F1, spw_ioctl_send ); |
|
612 | send_waveform_CWF( header, wf_snap_f1, SID_SBM1_CWF_F1, spw_ioctl_send ); | |
594 | } |
|
613 | } | |
595 | } |
|
614 | } | |
596 |
|
615 | |||
597 | void send_waveform_sbm2(Header_TM_LFR_SCIENCE_CWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) |
|
616 | void send_waveform_sbm2(Header_TM_LFR_SCIENCE_CWF_t *header, spw_ioctl_pkt_send *spw_ioctl_send) | |
598 | { |
|
617 | { | |
599 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2 >> 8); |
|
618 | header->packetID[0] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2 >> 8); | |
600 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2); |
|
619 | header->packetID[1] = (unsigned char) (TM_PACKET_ID_SCIENCE_BURST_SBM1_SBM2); | |
601 | // TIME |
|
620 | // TIME | |
602 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); |
|
621 | header->time[0] = (unsigned char) (time_management_regs->coarse_time>>24); | |
603 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); |
|
622 | header->time[1] = (unsigned char) (time_management_regs->coarse_time>>16); | |
604 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); |
|
623 | header->time[2] = (unsigned char) (time_management_regs->coarse_time>>8); | |
605 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); |
|
624 | header->time[3] = (unsigned char) (time_management_regs->coarse_time); | |
606 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); |
|
625 | header->time[4] = (unsigned char) (time_management_regs->fine_time>>8); | |
607 | header->time[5] = (unsigned char) (time_management_regs->fine_time); |
|
626 | header->time[5] = (unsigned char) (time_management_regs->fine_time); | |
608 |
|
627 | |||
609 | // F2 |
|
628 | // F2 | |
610 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { |
|
629 | if (waveform_picker_regs->addr_data_f2 == (int) wf_snap_f2) { | |
611 | send_waveform_CWF( header, wf_snap_f2_bis, SID_SBM2_CWF_F2, spw_ioctl_send); |
|
630 | send_waveform_CWF( header, wf_snap_f2_bis, SID_SBM2_CWF_F2, spw_ioctl_send); | |
612 | } |
|
631 | } | |
613 | else { |
|
632 | else { | |
614 | send_waveform_CWF( header, wf_snap_f2, SID_SBM2_CWF_F2, spw_ioctl_send); |
|
633 | send_waveform_CWF( header, wf_snap_f2, SID_SBM2_CWF_F2, spw_ioctl_send); | |
615 | } |
|
634 | } | |
616 | } |
|
635 | } | |
617 |
|
636 | |||
618 | //************** |
|
637 | //************** | |
619 | // wfp registers |
|
638 | // wfp registers | |
620 | void set_wfp_data_shaping(unsigned char data_shaping) |
|
639 | void set_wfp_data_shaping(unsigned char data_shaping) | |
621 | { |
|
640 | { | |
622 | // get the parameters for the data shaping [BW SP0 SP1 R0 R1] in sy_lfr_common1 and configure the register |
|
641 | // get the parameters for the data shaping [BW SP0 SP1 R0 R1] in sy_lfr_common1 and configure the register | |
623 | // waveform picker : [R1 R0 SP1 SP0 BW] |
|
642 | // waveform picker : [R1 R0 SP1 SP0 BW] | |
624 | waveform_picker_regs->data_shaping = |
|
643 | waveform_picker_regs->data_shaping = | |
625 | ( (data_shaping & 0x10) >> 4 ) // BW |
|
644 | ( (data_shaping & 0x10) >> 4 ) // BW | |
626 | + ( (data_shaping & 0x08) >> 2 ) // SP0 |
|
645 | + ( (data_shaping & 0x08) >> 2 ) // SP0 | |
627 | + ( (data_shaping & 0x04) ) // SP1 |
|
646 | + ( (data_shaping & 0x04) ) // SP1 | |
628 | + ( (data_shaping & 0x02) << 2 ) // R0 |
|
647 | + ( (data_shaping & 0x02) << 2 ) // R0 | |
629 | + ( (data_shaping & 0x01) << 4 ); // R1 |
|
648 | + ( (data_shaping & 0x01) << 4 ); // R1 | |
630 | } |
|
649 | } | |
631 |
|
650 | |||
632 | void set_wfp_delta_snapshot(unsigned int delta_snapshot) |
|
651 | void set_wfp_delta_snapshot(unsigned int delta_snapshot) | |
633 | { |
|
652 | { | |
634 | unsigned char aux = 0; |
|
653 | unsigned char aux = 0; | |
635 | aux = delta_snapshot / 2 ; |
|
654 | aux = delta_snapshot / 2 ; | |
636 | waveform_picker_regs->delta_snapshot = aux; // max 2 bytes |
|
655 | waveform_picker_regs->delta_snapshot = aux; // max 2 bytes | |
637 | //waveform_picker_regs->delta_snapshot = 0x5; // max 2 bytes |
|
656 | //waveform_picker_regs->delta_snapshot = 0x5; // max 2 bytes | |
638 | } |
|
657 | } | |
639 |
|
658 | |||
640 | void reset_wfp_burst_enable() |
|
659 | void reset_wfp_burst_enable() | |
641 | { |
|
660 | { | |
642 | waveform_picker_regs->burst_enable = 0x00; // burst f2, f1, f0 enable f3, f2, f1, f0 |
|
661 | waveform_picker_regs->burst_enable = 0x00; // burst f2, f1, f0 enable f3, f2, f1, f0 | |
643 | } |
|
662 | } | |
644 |
|
663 | |||
645 | void reset_wfp_regs() |
|
664 | void reset_wfp_regs() | |
646 | { |
|
665 | { | |
647 | set_wfp_data_shaping(param_common.sy_lfr_common1); |
|
666 | set_wfp_data_shaping(param_common.sy_lfr_common1); | |
648 | reset_wfp_burst_enable(); |
|
667 | reset_wfp_burst_enable(); | |
649 | waveform_picker_regs->addr_data_f0 = (int) (wf_snap_f0); // |
|
668 | waveform_picker_regs->addr_data_f0 = (int) (wf_snap_f0); // | |
650 | waveform_picker_regs->addr_data_f1 = (int) (wf_snap_f1); // |
|
669 | waveform_picker_regs->addr_data_f1 = (int) (wf_snap_f1); // | |
651 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2); // |
|
670 | waveform_picker_regs->addr_data_f2 = (int) (wf_snap_f2); // | |
652 | waveform_picker_regs->addr_data_f3 = (int) (wf_cont_f3); // |
|
671 | waveform_picker_regs->addr_data_f3 = (int) (wf_cont_f3); // | |
653 | waveform_picker_regs->status = 0x00; // |
|
672 | waveform_picker_regs->status = 0x00; // | |
654 | set_wfp_delta_snapshot( param_norm.sy_lfr_n_swf_p ); // time in seconds between two snapshots |
|
673 | set_wfp_delta_snapshot( param_norm.sy_lfr_n_swf_p ); // time in seconds between two snapshots | |
655 | waveform_picker_regs->delta_f2_f1 = 0xffff; // max 4 bytes |
|
674 | waveform_picker_regs->delta_f2_f1 = 0xffff; // max 4 bytes | |
656 | waveform_picker_regs->delta_f2_f0 = 0x17c00; // max 5 bytes |
|
675 | waveform_picker_regs->delta_f2_f0 = 0x17c00; // max 5 bytes | |
657 | waveform_picker_regs->nb_burst_available = 0x180; // max 3 bytes, size of the buffer in burst (1 burst = 16 x 4 octets) |
|
676 | waveform_picker_regs->nb_burst_available = 0x180; // max 3 bytes, size of the buffer in burst (1 burst = 16 x 4 octets) | |
658 | waveform_picker_regs->nb_snapshot_param = 0x7ff; // max 3 octets, 2048 - 1 |
|
677 | waveform_picker_regs->nb_snapshot_param = 0x7ff; // max 3 octets, 2048 - 1 | |
659 | //waveform_picker_regs->delta_snapshot = 0x2; // max 2 bytes, = period / 2 |
|
678 | //waveform_picker_regs->delta_snapshot = 0x2; // max 2 bytes, = period / 2 | |
660 | //waveform_picker_regs->delta_f2_f1 = 0x2d00; // max 4 bytes |
|
679 | //waveform_picker_regs->delta_f2_f1 = 0x2d00; // max 4 bytes | |
661 | //waveform_picker_regs->delta_f2_f0 = 0x2f80; // max 5 bytes |
|
680 | //waveform_picker_regs->delta_f2_f0 = 0x2f80; // max 5 bytes | |
662 | //waveform_picker_regs->nb_burst_available = 0x30; // max 3 bytes, size of the buffer in burst (1 burst = 16 x 4 octets) |
|
681 | //waveform_picker_regs->nb_burst_available = 0x30; // max 3 bytes, size of the buffer in burst (1 burst = 16 x 4 octets) | |
663 | //waveform_picker_regs->nb_snapshot_param = 0xff; // max 3 octets, 256 - 1 |
|
682 | //waveform_picker_regs->nb_snapshot_param = 0xff; // max 3 octets, 256 - 1 | |
664 | } |
|
683 | } |
1 | NO CONTENT: file was removed |
|
NO CONTENT: file was removed |
General Comments 0
You need to be logged in to leave comments.
Login now