@@ -0,0 +1,49 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_project_file> | |||
|
3 | <FileVersion major="1" minor="6" /> | |||
|
4 | <Project> | |||
|
5 | <Option title="FSW-rtems" /> | |||
|
6 | <Option pch_mode="2" /> | |||
|
7 | <Option compiler="sparc_rtems_gcc" /> | |||
|
8 | <Build> | |||
|
9 | <Target title="Debug"> | |||
|
10 | <Option output="bin\Debug\FSW-rtems" prefix_auto="1" extension_auto="1" /> | |||
|
11 | <Option object_output="obj\Debug\" /> | |||
|
12 | <Option type="1" /> | |||
|
13 | <Option compiler="sparc_rtems_gcc" /> | |||
|
14 | <Compiler> | |||
|
15 | <Add option="-O3" /> | |||
|
16 | <Add option="-g" /> | |||
|
17 | <Add directory="..\header" /> | |||
|
18 | <Add directory="..\src" /> | |||
|
19 | </Compiler> | |||
|
20 | </Target> | |||
|
21 | <Target title="Release"> | |||
|
22 | <Option output="bin\Release\FSW-rtems" prefix_auto="1" extension_auto="1" /> | |||
|
23 | <Option object_output="obj\Release\" /> | |||
|
24 | <Option type="1" /> | |||
|
25 | <Option compiler="sparc_rtems_gcc" /> | |||
|
26 | <Compiler> | |||
|
27 | <Add option="-O2" /> | |||
|
28 | </Compiler> | |||
|
29 | <Linker> | |||
|
30 | <Add option="-s" /> | |||
|
31 | </Linker> | |||
|
32 | </Target> | |||
|
33 | </Build> | |||
|
34 | <Compiler> | |||
|
35 | <Add option="-Wall" /> | |||
|
36 | </Compiler> | |||
|
37 | <Unit filename="..\header\FSW-rtems-processing.h" /> | |||
|
38 | <Unit filename="..\src\FSW-rtems-processing.c"> | |||
|
39 | <Option compilerVar="CC" /> | |||
|
40 | </Unit> | |||
|
41 | <Unit filename="..\src\FSW-rtems.c"> | |||
|
42 | <Option compilerVar="CC" /> | |||
|
43 | </Unit> | |||
|
44 | <Extensions> | |||
|
45 | <code_completion /> | |||
|
46 | <debugger /> | |||
|
47 | </Extensions> | |||
|
48 | </Project> | |||
|
49 | </CodeBlocks_project_file> |
@@ -0,0 +1,37 | |||||
|
1 | # depslib dependency file v1.0 | |||
|
2 | 1352469400 source:e:\missions\solo\dev_ple\src\fsw-rtems.c | |||
|
3 | <rtems.h> | |||
|
4 | <bsp.h> | |||
|
5 | <rtems/confdefs.h> | |||
|
6 | <drvmgr/drvmgr_confdefs.h> | |||
|
7 | <rtems.h> | |||
|
8 | <errno.h> | |||
|
9 | <fcntl.h> | |||
|
10 | <stdio.h> | |||
|
11 | <stdlib.h> | |||
|
12 | <FSW-config.c> | |||
|
13 | <grspw.h> | |||
|
14 | <apbuart.h> | |||
|
15 | <FSW-rtems-processing.h> | |||
|
16 | ||||
|
17 | 1350983928 source:e:\missions\solo\dev_ple\src\grspw.c | |||
|
18 | <..\header\grspw.h> | |||
|
19 | <stdio.h> | |||
|
20 | ||||
|
21 | 1350983928 e:\missions\solo\dev_ple\header\grspw.h | |||
|
22 | ||||
|
23 | 1351173364 source:e:\missions\solo\dev_ple\src\fsw-config.c | |||
|
24 | <drvmgr/ambapp_bus.h> | |||
|
25 | ||||
|
26 | 1351506239 e:\missions\solo\dev_ple\src\fsw-config.c | |||
|
27 | <drvmgr/ambapp_bus.h> | |||
|
28 | ||||
|
29 | 1352470008 source:e:\missions\solo\dev_ple\src\fsw-rtems-processing.c | |||
|
30 | <FSW-rtems-processing.h> | |||
|
31 | <math.h> | |||
|
32 | <stdio.h> | |||
|
33 | <leon.h> | |||
|
34 | ||||
|
35 | 1352470001 e:\missions\solo\dev_ple\header\fsw-rtems-processing.h | |||
|
36 | <rtems.h> | |||
|
37 |
@@ -0,0 +1,13 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_layout_file> | |||
|
3 | <ActiveTarget name="Debug" /> | |||
|
4 | <File name="..\header\FSW-rtems-processing.h" open="1" top="1" tabpos="3"> | |||
|
5 | <Cursor position="1016" topLine="1" /> | |||
|
6 | </File> | |||
|
7 | <File name="..\src\FSW-rtems-processing.c" open="1" top="0" tabpos="2"> | |||
|
8 | <Cursor position="17123" topLine="155" /> | |||
|
9 | </File> | |||
|
10 | <File name="..\src\FSW-rtems.c" open="1" top="0" tabpos="1"> | |||
|
11 | <Cursor position="5330" topLine="155" /> | |||
|
12 | </File> | |||
|
13 | </CodeBlocks_layout_file> |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
@@ -0,0 +1,60 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_project_file> | |||
|
3 | <FileVersion major="1" minor="6" /> | |||
|
4 | <Project> | |||
|
5 | <Option title="FSW" /> | |||
|
6 | <Option pch_mode="2" /> | |||
|
7 | <Option compiler="sparc_gcc" /> | |||
|
8 | <Build> | |||
|
9 | <Target title="Debug"> | |||
|
10 | <Option output="bin\Debug\FSW" prefix_auto="1" extension_auto="1" /> | |||
|
11 | <Option object_output="obj\Debug\" /> | |||
|
12 | <Option type="1" /> | |||
|
13 | <Option compiler="sparc_gcc" /> | |||
|
14 | <Compiler> | |||
|
15 | <Add directory="E:\MISSIONS\SOLO\DEV_PLE\src" /> | |||
|
16 | <Add directory="E:\MISSIONS\SOLO\DEV_PLE\header" /> | |||
|
17 | </Compiler> | |||
|
18 | </Target> | |||
|
19 | <Target title="Release"> | |||
|
20 | <Option output="bin\Release\FSW" prefix_auto="1" extension_auto="1" /> | |||
|
21 | <Option object_output="obj\Release\" /> | |||
|
22 | <Option type="1" /> | |||
|
23 | <Option compiler="sparc_gcc" /> | |||
|
24 | <Compiler> | |||
|
25 | <Add option="-O2" /> | |||
|
26 | </Compiler> | |||
|
27 | <Linker> | |||
|
28 | <Add option="-s" /> | |||
|
29 | </Linker> | |||
|
30 | </Target> | |||
|
31 | </Build> | |||
|
32 | <Compiler> | |||
|
33 | <Add option="-Wall" /> | |||
|
34 | </Compiler> | |||
|
35 | <Unit filename="..\header\LPP_grspw.h" /> | |||
|
36 | <Unit filename="..\header\LPP_spwAPI.h" /> | |||
|
37 | <Unit filename="..\header\TC_handler.h" /> | |||
|
38 | <Unit filename="..\header\basic_parameters.h" /> | |||
|
39 | <Unit filename="..\header\ccsds_types.h" /> | |||
|
40 | <Unit filename="..\src\FSW.c"> | |||
|
41 | <Option compilerVar="CC" /> | |||
|
42 | </Unit> | |||
|
43 | <Unit filename="..\src\LPP_grspw.c"> | |||
|
44 | <Option compilerVar="CC" /> | |||
|
45 | </Unit> | |||
|
46 | <Unit filename="..\src\LPP_spwAPI.c"> | |||
|
47 | <Option compilerVar="CC" /> | |||
|
48 | </Unit> | |||
|
49 | <Unit filename="..\src\TC_handler.c"> | |||
|
50 | <Option compilerVar="CC" /> | |||
|
51 | </Unit> | |||
|
52 | <Unit filename="..\src\basic_parameters.c"> | |||
|
53 | <Option compilerVar="CC" /> | |||
|
54 | </Unit> | |||
|
55 | <Extensions> | |||
|
56 | <code_completion /> | |||
|
57 | <debugger /> | |||
|
58 | </Extensions> | |||
|
59 | </Project> | |||
|
60 | </CodeBlocks_project_file> |
@@ -0,0 +1,54 | |||||
|
1 | # depslib dependency file v1.0 | |||
|
2 | 1350886242 source:e:\missions\solo\dev_ple\src\tc_handler.c | |||
|
3 | <..\header\TC_handler.h> | |||
|
4 | ||||
|
5 | 1350886291 e:\missions\solo\dev_ple\header\tc_handler.h | |||
|
6 | <..\header\ccsds_types.h> | |||
|
7 | ||||
|
8 | 1350657619 e:\missions\solo\dev_ple\header\ccsds_types.h | |||
|
9 | ||||
|
10 | 1350886272 source:e:\missions\solo\dev_ple\src\basic_parameters.c | |||
|
11 | <..\header\basic_parameters.h> | |||
|
12 | <math.h> | |||
|
13 | ||||
|
14 | 1350892168 e:\missions\solo\dev_ple\header\basic_parameters.h | |||
|
15 | ||||
|
16 | 1350896474 e:\missions\solo\dev_ple\header\spwapi_lpp.h | |||
|
17 | <asm-leon/leonstack.h> | |||
|
18 | <..\header\grspw.h> | |||
|
19 | ||||
|
20 | 1350904997 source:e:\missions\solo\dev_ple\src\spwapi_lpp.c | |||
|
21 | <..\header\spwAPI_LPP.h> | |||
|
22 | <stdlib.h> | |||
|
23 | <stdio.h> | |||
|
24 | ||||
|
25 | 1350989918 source:e:\missions\solo\dev_ple\src\fsw.c | |||
|
26 | <..\header\LPP_spwAPI.h> | |||
|
27 | <..\header\basic_parameters.h> | |||
|
28 | <..\header\ccsds_types.h> | |||
|
29 | <stdio.h> | |||
|
30 | <stdlib.h> | |||
|
31 | <asm-leon/timer.h> | |||
|
32 | <asm-leon/irq.h> | |||
|
33 | ||||
|
34 | 1350983928 e:\missions\solo\dev_ple\header\grspw.h | |||
|
35 | ||||
|
36 | 1350983928 source:e:\missions\solo\dev_ple\src\grspw.c | |||
|
37 | <..\header\grspw.h> | |||
|
38 | <stdio.h> | |||
|
39 | ||||
|
40 | 1350989928 source:e:\missions\solo\dev_ple\src\lpp_grspw.c | |||
|
41 | <..\header\LPP_grspw.h> | |||
|
42 | <stdio.h> | |||
|
43 | ||||
|
44 | 1350983928 e:\missions\solo\dev_ple\header\lpp_grspw.h | |||
|
45 | ||||
|
46 | 1350990063 source:e:\missions\solo\dev_ple\src\lpp_spwapi.c | |||
|
47 | <..\header\LPP_spwAPI.h> | |||
|
48 | <stdlib.h> | |||
|
49 | <stdio.h> | |||
|
50 | ||||
|
51 | 1350990050 e:\missions\solo\dev_ple\header\lpp_spwapi.h | |||
|
52 | <asm-leon/leonstack.h> | |||
|
53 | <..\header\LPP_grspw.h> | |||
|
54 |
@@ -0,0 +1,31 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_layout_file> | |||
|
3 | <ActiveTarget name="Debug" /> | |||
|
4 | <File name="..\header\LPP_grspw.h" open="0" top="0" tabpos="0"> | |||
|
5 | <Cursor position="315" topLine="0" /> | |||
|
6 | </File> | |||
|
7 | <File name="..\header\TC_handler.h" open="0" top="0" tabpos="0"> | |||
|
8 | <Cursor position="98" topLine="0" /> | |||
|
9 | </File> | |||
|
10 | <File name="..\header\basic_parameters.h" open="0" top="0" tabpos="0"> | |||
|
11 | <Cursor position="203" topLine="0" /> | |||
|
12 | </File> | |||
|
13 | <File name="..\header\ccsds_types.h" open="0" top="0" tabpos="7"> | |||
|
14 | <Cursor position="191" topLine="0" /> | |||
|
15 | </File> | |||
|
16 | <File name="..\src\FSW.c" open="0" top="0" tabpos="1"> | |||
|
17 | <Cursor position="23" topLine="39" /> | |||
|
18 | </File> | |||
|
19 | <File name="..\src\LPP_grspw.c" open="0" top="0" tabpos="0"> | |||
|
20 | <Cursor position="24" topLine="0" /> | |||
|
21 | </File> | |||
|
22 | <File name="..\src\LPP_spwAPI.c" open="0" top="0" tabpos="0"> | |||
|
23 | <Cursor position="670" topLine="15" /> | |||
|
24 | </File> | |||
|
25 | <File name="..\src\TC_handler.c" open="0" top="0" tabpos="0"> | |||
|
26 | <Cursor position="67" topLine="0" /> | |||
|
27 | </File> | |||
|
28 | <File name="..\src\basic_parameters.c" open="0" top="0" tabpos="0"> | |||
|
29 | <Cursor position="39" topLine="0" /> | |||
|
30 | </File> | |||
|
31 | </CodeBlocks_layout_file> |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
@@ -0,0 +1,1 | |||||
|
1 | grmon -gresb -ip 129.104.27.249 -dna 0xfe -sna 32 -link 0 -u |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
@@ -0,0 +1,32 | |||||
|
1 | #ifndef FSW_RTEMS_PROCESSING_H_INCLUDED | |||
|
2 | #define FSW_RTEMS_PROCESSING_H_INCLUDED | |||
|
3 | ||||
|
4 | #include <rtems.h> | |||
|
5 | ||||
|
6 | #define ADDRESS_APB_SPECTRAL_MATRICES 0x80000700 | |||
|
7 | #define LPP_SPECTRAL_MATRIX_CTRL 0x80000700 | |||
|
8 | #define LPP_SPECTRAL_MATRIX_1 0x80000704 | |||
|
9 | #define LPP_SPECTRAL_MATRIX_2 0x80000708 | |||
|
10 | #define IRQ_SPECTRAL_MATRICES 12 | |||
|
11 | ||||
|
12 | #define NB_BINS_SPECTRAL_MATRIX 128 | |||
|
13 | #define NB_VALUES_PER_SPECTRAL_MATRIX 25 | |||
|
14 | #define TOTAL_SIZE_SPECTRAL_MATRIX NB_BINS_SPECTRAL_MATRIX * NB_VALUES_PER_SPECTRAL_MATRIX | |||
|
15 | #define NB_BINS_COMPRESSED_MATRIX_f0 11 | |||
|
16 | #define SIZE_COMPRESSED_SPECTRAL_MATRIX_f1 13 | |||
|
17 | #define SIZE_COMPRESSED_SPECTRAL_MATRIX_f2 12 | |||
|
18 | #define TOTAL_SIZE_COMPRESSED_MATRIX_f0 NB_BINS_COMPRESSED_MATRIX_f0 * NB_VALUES_PER_SPECTRAL_MATRIX | |||
|
19 | #define NB_AVERAGE_NORMAL_f0 96*4 | |||
|
20 | ||||
|
21 | rtems_isr spectral_matrices_isr( rtems_vector_number vector ); | |||
|
22 | rtems_task spw_bppr_task(rtems_task_argument argument); | |||
|
23 | rtems_task spw_avf0_task(rtems_task_argument argument); | |||
|
24 | rtems_task spw_bpf0_task(rtems_task_argument argument); | |||
|
25 | rtems_task spw_bppr_task_rate_monotonic(rtems_task_argument argument); | |||
|
26 | void matrix_average(volatile int *spectral_matrix, float *averaged_spectral_matrix); | |||
|
27 | void matrix_compression(float *averaged_spectral_matrix, unsigned char fChannel, float *compressed_spectral_matrix); | |||
|
28 | void matrix_reset(float *averaged_spectral_matrix); | |||
|
29 | void BP1_set(float * compressed_spectral_matrix, unsigned char nb_bins_compressed_spectral_matrix, unsigned char * LFR_BP1); | |||
|
30 | void BP2_set(float * compressed_spectral_matrix, unsigned char nb_bins_compressed_spectral_matrix); | |||
|
31 | ||||
|
32 | #endif // FSW_RTEMS_PROCESSING_H_INCLUDED |
1 | NO CONTENT: new file 100644 |
|
NO CONTENT: new file 100644 |
@@ -0,0 +1,235 | |||||
|
1 | #ifndef GRSPW_H_INCLUDED | |||
|
2 | #define GRSPW_H_INCLUDED | |||
|
3 | ||||
|
4 | #define GRSPW_APB_ADDR 0x80000500 | |||
|
5 | ||||
|
6 | #define NODEADDR 0xfe | |||
|
7 | #define NODEADDR_M7A3P1000 0xfd | |||
|
8 | #define CLKDIV 0x0303 | |||
|
9 | #define DESTKEY 0 | |||
|
10 | #define RXMAXLEN 64 | |||
|
11 | #define HEADERLEN 4 | |||
|
12 | ||||
|
13 | #define IFORCE 0x08 | |||
|
14 | #define ICLEAR 0x0c | |||
|
15 | #define IMASK 0x40 | |||
|
16 | #define GRSPW_IRQ 10 | |||
|
17 | ||||
|
18 | #define SPW_LINK_STATE_RESET 0 | |||
|
19 | #define SPW_LINK_STATE_WAIT 1 | |||
|
20 | #define SPW_LINK_STATE_READY 2 | |||
|
21 | #define SPW_LINK_STATE_STARTED 3 | |||
|
22 | #define SPW_LINK_STATE_CONNECTING 4 | |||
|
23 | #define SPW_LINK_STATE_RUN 5 | |||
|
24 | ||||
|
25 | ///////////////////////////////////// | |||
|
26 | /* GRSPW - Control Register - 0x00 */ | |||
|
27 | #define GRSPW_CTRL_RA_BIT 31 // RMAP avaialble | |||
|
28 | #define GRSPW_CTRL_RX_BIT 30 // RX unaligned access | |||
|
29 | #define GRSPW_CTRL_RC_BIT 29 // RMAP CRC available | |||
|
30 | #define GRSPW_CTRL_NCH_BIT 27 // 28:27 number of DMA channels minus 1 | |||
|
31 | #define GRSPW_CTRL_PO_BIT 26 // number of ports minus 1 | |||
|
32 | #define GRSPW_CTRL_PS_BIT 21 // Port select | |||
|
33 | #define GRSPW_CTRL_NP_BIT 20 // No port force | |||
|
34 | #define GRSPW_CTRL_RD_BIT 17 // RMAP buffer disable | |||
|
35 | #define GRSPW_CTRL_RE_BIT 16 // RMAP Enable | |||
|
36 | #define GRSPW_CTRL_TR_BIT 11 // Time Rx enable | |||
|
37 | #define GRSPW_CTRL_TT_BIT 10 // Time Tx enable | |||
|
38 | #define GRSPW_CTRL_LI_BIT 9 // Link error IRQ | |||
|
39 | #define GRSPW_CTRL_TQ_BIT 8 // Tick-out IRQ | |||
|
40 | #define GRSPW_CTRL_RS_BIT 6 // Reset | |||
|
41 | #define GRSPW_CTRL_PM_BIT 5 // Promiscuous mode | |||
|
42 | #define GRSPW_CTRL_TI_BIT 4 // Tick In | |||
|
43 | #define GRSPW_CTRL_IE_BIT 3 // Interrupt enable | |||
|
44 | #define GRSPW_CTRL_AS_BIT 2 // Autostart | |||
|
45 | #define GRSPW_CTRL_LS_BIT 1 // Link Start | |||
|
46 | #define GRSPW_CTRL_LD_BIT 0 // Lind Disable | |||
|
47 | ||||
|
48 | #define GRSPW_CTRL_RA (1<<GRSPW_CTRL_RA_BIT) | |||
|
49 | #define GRSPW_CTRL_RX (1<<GRSPW_CTRL_RX_BIT) | |||
|
50 | #define GRSPW_CTRL_RC (1<<GRSPW_CTRL_RC_BIT) | |||
|
51 | #define GRSPW_CTRL_NCH (0x3<<GRSPW_CTRL_NCH_BIT) | |||
|
52 | #define GRSPW_CTRL_PO (1<<GRSPW_CTRL_PO_BIT) | |||
|
53 | #define GRSPW_CTRL_PS (1<<GRSPW_CTRL_PS_BIT) | |||
|
54 | #define GRSPW_CTRL_NP (1<<GRSPW_CTRL_NP_BIT) | |||
|
55 | #define GRSPW_CTRL_RD (1<<GRSPW_CTRL_RD_BIT) | |||
|
56 | #define GRSPW_CTRL_RE (1<<GRSPW_CTRL_RE_BIT) | |||
|
57 | #define GRSPW_CTRL_TR (1<<GRSPW_CTRL_TR_BIT) | |||
|
58 | #define GRSPW_CTRL_TT (1<<GRSPW_CTRL_TT_BIT) | |||
|
59 | #define GRSPW_CTRL_LI (1<<GRSPW_CTRL_LI_BIT) | |||
|
60 | #define GRSPW_CTRL_TQ (1<<GRSPW_CTRL_TQ_BIT) | |||
|
61 | #define GRSPW_CTRL_RS (1<<GRSPW_CTRL_RS_BIT) | |||
|
62 | #define GRSPW_CTRL_PM (1<<GRSPW_CTRL_PM_BIT) | |||
|
63 | #define GRSPW_CTRL_TI (1<<GRSPW_CTRL_TI_BIT) | |||
|
64 | #define GRSPW_CTRL_IE (1<<GRSPW_CTRL_IE_BIT) | |||
|
65 | #define GRSPW_CTRL_AS (1<<GRSPW_CTRL_AS_BIT) | |||
|
66 | #define GRSPW_CTRL_LS (1<<GRSPW_CTRL_LS_BIT) | |||
|
67 | #define GRSPW_CTRL_LD (1<<GRSPW_CTRL_LD_BIT) | |||
|
68 | ||||
|
69 | //////////////////////////////////// | |||
|
70 | /* GRSPW - Status Register - 0x04 */ | |||
|
71 | #define GRSPW_STAT_LS_BIT 21 // Link State | |||
|
72 | #define GRSPW_STAT_AP_BIT 9 // Active Port | |||
|
73 | #define GRSPW_STAT_EE_BIT 8 // Early EOP-EEP | |||
|
74 | #define GRSPW_STAT_IA_BIT 7 // Invalid Address | |||
|
75 | #define GRSPW_STAT_PE_BIT 4 // Parity Error | |||
|
76 | #define GRSPW_STAT_DE_BIT 3 // Disconnect Error | |||
|
77 | #define GRSPW_STAT_ER_BIT 2 // Escape Error | |||
|
78 | #define GRSPW_STAT_CE_BIT 1 // Credit Error | |||
|
79 | #define GRSPW_STAT_TO_BIT 0 // Tick Out | |||
|
80 | ||||
|
81 | #define GRSPW_STAT_LS (0x7<<GRSPW_STAT_LS_BIT) | |||
|
82 | #define GRSPW_STAT_AP (1<<GRSPW_STAT_AP_BIT) | |||
|
83 | #define GRSPW_STAT_EE (1<<GRSPW_STAT_EE_BIT) | |||
|
84 | #define GRSPW_STAT_IA (1<<GRSPW_STAT_IA_BIT) | |||
|
85 | #define GRSPW_STAT_WE (1<<GRSPW_STAT_WE_BIT) | |||
|
86 | #define GRSPW_STAT_PE (1<<GRSPW_STAT_PE_BIT) | |||
|
87 | #define GRSPW_STAT_DE (1<<GRSPW_STAT_DE_BIT) | |||
|
88 | #define GRSPW_STAT_ER (1<<GRSPW_STAT_ER_BIT) | |||
|
89 | #define GRSPW_STAT_CE (1<<GRSPW_STAT_CE_BIT) | |||
|
90 | #define GRSPW_STAT_TO (1<<GRSPW_STAT_TO_BIT) | |||
|
91 | ||||
|
92 | ///////////////////////////////////////////// | |||
|
93 | /* GRSPW - Default Address Register - 0x08 */ | |||
|
94 | #define GRSPW_DEF_ADDR_BIT 0 // Default address | |||
|
95 | #define GRSPW_DEF_MASK_BIT 8 // Default mask | |||
|
96 | #define GRSPW_DEF_ADDR (0xff<<GRSPW_DEF_ADDR_BIT) | |||
|
97 | #define GRSPW_DEF_MASK (0xff<<GRSPW_DEF_MASK_BIT) | |||
|
98 | ||||
|
99 | /////////////////////////////////////////// | |||
|
100 | /* GRSPW - Clock Divisor Register - 0x0C */ | |||
|
101 | #define GRSPW_CLKDIV_START_BIT 8 // Clock divisor startup | |||
|
102 | #define GRSPW_CLKDIV_RUN_BIT 0 // Clock divisor run | |||
|
103 | #define GRSPW_CLKDIV_START (0xff<<GRSPW_CLKDIV_START_BIT) | |||
|
104 | #define GRSPW_CLKDIV_RUN (0xff<<GRSPW_CLKDIV_RUN_BIT) | |||
|
105 | #define GRSPW_CLKDIV_MASK (GRSPW_CLKDIV_START|GRSPW_CLKDIV_RUN) | |||
|
106 | ||||
|
107 | ///////////////////////////////////////////// | |||
|
108 | /* GRSPW - Destination key Register - 0x10 */ | |||
|
109 | #define GRSPW_DK_DESTKEY_BIT 0 // Destination key | |||
|
110 | #define GRSPW_DK_DESTKEY (0xff<<GRSPW_DK_DESTKEY_BIT) | |||
|
111 | ||||
|
112 | ////////////////////////////////// | |||
|
113 | /* GRSPW - Time Register - 0x14 */ | |||
|
114 | #define GRSPW_TIME_CTRL_BIT 0 // Time counter | |||
|
115 | #define GRSPW_TIME_CNT_BIT 6 // Time control flags | |||
|
116 | #define GRSPW_TIME_CTRL (0x3f<<GRSPW_TIME_CTRL_BIT) | |||
|
117 | #define GRSPW_TIME_TCNT (0x3<<GRSPW_TIME_CNT_BIT) | |||
|
118 | ||||
|
119 | /////////////////////////////////////////// | |||
|
120 | /* GRSPW - DMA Control Register - 0x20*N */ | |||
|
121 | #define GRSPW_DMACTRL_LE_BIT 16 // Link error disable | |||
|
122 | #define GRSPW_DMACTRL_SP_BIT 15 // Strip PID | |||
|
123 | #define GRSPW_DMACTRL_SA_BIT 14 // Strip address | |||
|
124 | #define GRSPW_DMACTRL_EN_BIT 13 // Enable address | |||
|
125 | #define GRSPW_DMACTRL_NS_BIT 12 // No spill | |||
|
126 | #define GRSPW_DMACTRL_RD_BIT 11 // Rx descriptors available | |||
|
127 | #define GRSPW_DMACTRL_RX_BIT 10 // RX active | |||
|
128 | #define GRSPW_DMACTRL_AT_BIT 9 // Abort TX | |||
|
129 | #define GRSPW_DMACTRL_RA_BIT 8 // RX AHB error | |||
|
130 | #define GRSPW_DMACTRL_TA_BIT 7 // TX AHB error | |||
|
131 | #define GRSPW_DMACTRL_PR_BIT 6 // Packet received | |||
|
132 | #define GRSPW_DMACTRL_PS_BIT 5 // Packet sent | |||
|
133 | #define GRSPW_DMACTRL_AI_BIT 4 // AHB error interrupt | |||
|
134 | #define GRSPW_DMACTRL_RI_BIT 3 // Receive interrupt | |||
|
135 | #define GRSPW_DMACTRL_TI_BIT 2 // Transmit interrupt | |||
|
136 | #define GRSPW_DMACTRL_RE_BIT 1 // Receiver enable | |||
|
137 | #define GRSPW_DMACTRL_TE_BIT 0 // Transmitter enable | |||
|
138 | ||||
|
139 | #define GRSPW_DMACTRL_LE (1<<GRSPW_DMACTRL_LE_BIT) | |||
|
140 | #define GRSPW_DMACTRL_SP (1<<GRSPW_DMACTRL_SP_BIT) | |||
|
141 | #define GRSPW_DMACTRL_SA (1<<GRSPW_DMACTRL_SA_BIT) | |||
|
142 | #define GRSPW_DMACTRL_EN (1<<GRSPW_DMACTRL_EN_BIT) | |||
|
143 | #define GRSPW_DMACTRL_NS (1<<GRSPW_DMACTRL_NS_BIT) | |||
|
144 | #define GRSPW_DMACTRL_RD (1<<GRSPW_DMACTRL_RD_BIT) | |||
|
145 | #define GRSPW_DMACTRL_RX (1<<GRSPW_DMACTRL_RX_BIT) | |||
|
146 | #define GRSPW_DMACTRL_AT (1<<GRSPW_DMACTRL_AT_BIT) | |||
|
147 | #define GRSPW_DMACTRL_RA (1<<GRSPW_DMACTRL_RA_BIT) | |||
|
148 | #define GRSPW_DMACTRL_TA (1<<GRSPW_DMACTRL_TA_BIT) | |||
|
149 | #define GRSPW_DMACTRL_PR (1<<GRSPW_DMACTRL_PR_BIT) | |||
|
150 | #define GRSPW_DMACTRL_PS (1<<GRSPW_DMACTRL_PS_BIT) | |||
|
151 | #define GRSPW_DMACTRL_AI (1<<GRSPW_DMACTRL_AI_BIT) | |||
|
152 | #define GRSPW_DMACTRL_RI (1<<GRSPW_DMACTRL_RI_BIT) | |||
|
153 | #define GRSPW_DMACTRL_TI (1<<GRSPW_DMACTRL_TI_BIT) | |||
|
154 | #define GRSPW_DMACTRL_RE (1<<GRSPW_DMACTRL_RE_BIT) | |||
|
155 | #define GRSPW_DMACTRL_TE (1<<GRSPW_DMACTRL_TE_BIT) | |||
|
156 | ||||
|
157 | ////////////////////////////////////////////////////////////////////// | |||
|
158 | /* GRSPW - DMA Channel Max Packet Length Register - (0x20*N + 0x04) */ | |||
|
159 | #define GRSPW_DMARXLEN_MAX_BIT 0 // RX maximum length | |||
|
160 | #define GRSPW_DMARXLEN_MAX (0xffffff<<GRSPW_DMARXLEN_MAX_BIT) | |||
|
161 | ||||
|
162 | /* GRSPW - DMA Channel Address Register - (0x20*N + 0x10) */ | |||
|
163 | #define GRSPW_DMAADR_ADDR_BIT 0 // address | |||
|
164 | #define GRSPW_DMAADR_MASK_BIT 8 // Mask | |||
|
165 | #define GRSPW_DMAADR_ADDR (0xff<<GRSPW_DMAADR_ADDR_BIT) | |||
|
166 | #define GRSPW_DMAADR_MASK (0xff<<GRSPW_DMAADR_MASK_BIT) | |||
|
167 | ||||
|
168 | /* RX Buffer Descriptor */ | |||
|
169 | struct grspw_rxbd { | |||
|
170 | volatile unsigned int ctrl; | |||
|
171 | volatile unsigned int addr; | |||
|
172 | }; | |||
|
173 | ||||
|
174 | /* TX Buffer Descriptor */ | |||
|
175 | struct grspw_txbd { | |||
|
176 | volatile unsigned int ctrl; | |||
|
177 | volatile unsigned int haddr; | |||
|
178 | volatile unsigned int dlen; | |||
|
179 | volatile unsigned int daddr; | |||
|
180 | }; | |||
|
181 | ||||
|
182 | /////////////////////////////////////////// | |||
|
183 | /* GRSPW - DMA Receive descriptor word 0 */ | |||
|
184 | #define GRSPW_RXBD_LEN_BIT 0 | |||
|
185 | #define GRSPW_RXBD_LEN (0x1ffffff<<GRSPW_RXBD_LEN_BIT) | |||
|
186 | #define GRSPW_RXBD_EN (1<<25) // Enable | |||
|
187 | #define GRSPW_RXBD_WR (1<<26) // Wrap | |||
|
188 | #define GRSPW_RXBD_IE (1<<27) // Interrupt enable | |||
|
189 | #define GRSPW_RXBD_EP (1<<28) // EEP termination | |||
|
190 | #define GRSPW_RXBD_HC (1<<29) // Header CRC | |||
|
191 | #define GRSPW_RXBD_DC (1<<30) // Data CRC | |||
|
192 | #define GRSPW_RXBD_TR (1<<31) // Truncated | |||
|
193 | ||||
|
194 | //////////////////////////////////////////// | |||
|
195 | /* GRSPW - DMA Transmit descriptor word 0 */ | |||
|
196 | #define GRSPW_TXBD_HLEN (0xff<<0) // header length | |||
|
197 | #define GRSPW_TXBD_NCL (0xf<<8) // non-CRC bytes | |||
|
198 | #define GRSPW_TXBD_EN (1<<12) // Enable | |||
|
199 | #define GRSPW_TXBD_WR (1<<13) // Wrap | |||
|
200 | #define GRSPW_TXBD_IE (1<<14) // Interrupt enable | |||
|
201 | #define GRSPW_TXBD_LE (1<<15) // Link error | |||
|
202 | #define GRSPW_TXBD_HC (1<<16) // Append header CRC | |||
|
203 | #define GRSPW_TXBD_DC (1<<17) // Append data CRC | |||
|
204 | ||||
|
205 | struct grspwregs_str | |||
|
206 | { | |||
|
207 | volatile int ctrl; | |||
|
208 | volatile int status; | |||
|
209 | volatile int nodeaddr; | |||
|
210 | volatile int clkdiv; | |||
|
211 | volatile int destkey; | |||
|
212 | volatile int time; | |||
|
213 | volatile int unused[2]; | |||
|
214 | volatile int dmactrl; | |||
|
215 | volatile int rxmaxlen; | |||
|
216 | volatile int txdesc; | |||
|
217 | volatile int rxdesc; | |||
|
218 | }; | |||
|
219 | typedef struct grspwregs_str grspwregs_t; | |||
|
220 | ||||
|
221 | struct spacewire_PARAMETERS_str | |||
|
222 | { | |||
|
223 | int *size; | |||
|
224 | volatile char *rx; | |||
|
225 | volatile int *rxd; | |||
|
226 | char *tx; | |||
|
227 | volatile int *txd; | |||
|
228 | grspwregs_t *regs; | |||
|
229 | } spacewire_PARAMETERS; | |||
|
230 | ||||
|
231 | //////////// | |||
|
232 | // FUNCTIONS | |||
|
233 | unsigned int grspw_link_state(grspwregs_t *); | |||
|
234 | ||||
|
235 | #endif // GRSPW_H_INCLUDED |
@@ -0,0 +1,95 | |||||
|
1 | #ifndef SPWAPI_LPP_H | |||
|
2 | #define SPWAPI_LPP_H | |||
|
3 | ||||
|
4 | #include <asm-leon/leonstack.h> | |||
|
5 | #include <..\header\LPP_grspw.h> | |||
|
6 | ||||
|
7 | #define LPP_TIME_MANAGER 0x80000600 | |||
|
8 | ||||
|
9 | struct spectral_matrices_regs_str | |||
|
10 | { | |||
|
11 | volatile unsigned int ctrl; | |||
|
12 | volatile unsigned int address1; | |||
|
13 | volatile unsigned int address2; | |||
|
14 | }; | |||
|
15 | typedef struct spectral_matrices_regs_str spectral_matrices_regs_t; | |||
|
16 | ||||
|
17 | struct packet_type_str | |||
|
18 | { | |||
|
19 | char time_packet; | |||
|
20 | char tc_packet; | |||
|
21 | } packet_type; | |||
|
22 | ||||
|
23 | struct spwHeader_str | |||
|
24 | { | |||
|
25 | unsigned char targetLogicalAddress; | |||
|
26 | unsigned char protocolIdentifier; | |||
|
27 | unsigned char reserved; | |||
|
28 | unsigned char userApplication; | |||
|
29 | }; | |||
|
30 | typedef struct spwHeader_str spwHeader_t; | |||
|
31 | ||||
|
32 | struct time_manager_regs_str | |||
|
33 | { | |||
|
34 | volatile int ctrl; | |||
|
35 | volatile int next_coarse_time; | |||
|
36 | volatile int current_coarse_time; | |||
|
37 | volatile int fine_time; | |||
|
38 | }; | |||
|
39 | typedef struct time_manager_regs_str time_manager_regs_t; | |||
|
40 | ||||
|
41 | // GENERAL PURPOSE FUNCTIONS | |||
|
42 | ||||
|
43 | inline int loadmemAPI(int addr); | |||
|
44 | ||||
|
45 | inline char loadb(int addr); | |||
|
46 | ||||
|
47 | char *almalloc(int sz); | |||
|
48 | ||||
|
49 | //////////////// | |||
|
50 | // SPW FUNCTIONS | |||
|
51 | //////////////// | |||
|
52 | ||||
|
53 | void spw_reset(grspwregs_t *regs); | |||
|
54 | ||||
|
55 | void spw_init(int nodeaddr, int clkdiv, int destkey, int rxmaxlen, grspwregs_t *regs); | |||
|
56 | ||||
|
57 | void set_txd(char *dataAddress, unsigned int dataLength, char *headerAddress, unsigned int headerLength, volatile int *txd); | |||
|
58 | ||||
|
59 | int spw_checkrx(int* size, volatile int *rxd, grspwregs_t *regs); | |||
|
60 | ||||
|
61 | int spw_checktx(grspwregs_t *regs); | |||
|
62 | ||||
|
63 | void enable_transmitter_descriptor(unsigned int headerLength, volatile int *txd); | |||
|
64 | ||||
|
65 | void enable_transmitter(grspwregs_t *regs); | |||
|
66 | ||||
|
67 | void enable_receiver_descriptor(volatile char *rx, volatile int *rxd); | |||
|
68 | ||||
|
69 | void enable_receiver(grspwregs_t *regs); | |||
|
70 | ||||
|
71 | void send_data(unsigned int headerLength, volatile int *txd, grspwregs_t *regs, char* tx, char value); | |||
|
72 | ||||
|
73 | int enable_timecode_reception(grspwregs_t *regs); | |||
|
74 | ||||
|
75 | int check_time(grspwregs_t *grspw_regs); | |||
|
76 | ||||
|
77 | ////////////// | |||
|
78 | // GENERAL USE | |||
|
79 | ////////////// | |||
|
80 | ||||
|
81 | void send_fine_time(unsigned int fine_time); | |||
|
82 | ||||
|
83 | ////// | |||
|
84 | // IRQ | |||
|
85 | ////// | |||
|
86 | ||||
|
87 | int irqhandler_receive_CCSDS(int irq, void * args, struct leonbare_pt_regs *leon_regs); | |||
|
88 | ||||
|
89 | int enable_irq(int irq); | |||
|
90 | ||||
|
91 | int disable_irq(int irq); | |||
|
92 | ||||
|
93 | int force_irq(int irq); | |||
|
94 | ||||
|
95 | #endif // SPWAPI_LPP_H |
@@ -0,0 +1,8 | |||||
|
1 | #ifndef TC_HANDLER_H_INCLUDED | |||
|
2 | #define TC_HANDLER_H_INCLUDED | |||
|
3 | ||||
|
4 | #include <..\header\ccsds_types.h> | |||
|
5 | ||||
|
6 | char TM_checker(ccsdsTelecommandSourcePacketHeader_t * TMPacket); | |||
|
7 | ||||
|
8 | #endif // TC_HANDLER_H_INCLUDED |
@@ -0,0 +1,28 | |||||
|
1 | #ifndef BASIC_PARAMETERS_H_INCLUDED | |||
|
2 | #define BASIC_PARAMETERS_H_INCLUDED | |||
|
3 | ||||
|
4 | #define LPP_SPECTRAL_MATRIX_CTRL 0x80000700 | |||
|
5 | #define LPP_SPECTRAL_MATRIX_1 0x80000704 | |||
|
6 | #define LPP_SPECTRAL_MATRIX_2 0x80000708 | |||
|
7 | ||||
|
8 | #define NB_BINS_SPECTRAL_MATRIX 128 | |||
|
9 | #define NB_VALUES_PER_SPECTRAL_MATRIX 30 | |||
|
10 | #define TOTAL_SIZE_SPECTRAL_MATRIX NB_BINS_SPECTRAL_MATRIX * NB_VALUES_PER_SPECTRAL_MATRIX | |||
|
11 | #define NB_BINS_COMPRESSED_MATRIX_f0 11 | |||
|
12 | #define SIZE_COMPRESSED_SPECTRAL_MATRIX_f1 13 | |||
|
13 | #define SIZE_COMPRESSED_SPECTRAL_MATRIX_f2 12 | |||
|
14 | #define TOTAL_SIZE_COMPRESSED_MATRIX_f0 NB_BINS_COMPRESSED_MATRIX_f0 * NB_VALUES_PER_SPECTRAL_MATRIX | |||
|
15 | #define NB_AVERAGE_NORMAL_f0 4 | |||
|
16 | ||||
|
17 | volatile int spectral_matrix_f0_a[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
18 | volatile int spectral_matrix_f0_b[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
19 | int averaged_spectral_matrix_f0[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
20 | ||||
|
21 | float compressed_spectral_matrix_f0[TOTAL_SIZE_COMPRESSED_MATRIX_f0]; | |||
|
22 | ||||
|
23 | unsigned char LFR_BP1_F0[NB_BINS_COMPRESSED_MATRIX_f0*9]; | |||
|
24 | ||||
|
25 | void BP1_set(); | |||
|
26 | void BP2_set(); | |||
|
27 | ||||
|
28 | #endif // BASIC_PARAMETERS_H_INCLUDED |
@@ -0,0 +1,68 | |||||
|
1 | #ifndef CCSDS_H_INCLUDED | |||
|
2 | #define CCSDS_H_INCLUDED | |||
|
3 | ||||
|
4 | #define CCSDS_TELEMETRY_HEADER_LENGTH 16+4 | |||
|
5 | #define CCSDS_TELECOMMAND_HEADER_LENGTH 10+4 | |||
|
6 | #define CCSDS_TELECOMMAND_MAX_PACKET_LENGTH 248 | |||
|
7 | #define CCSDS_PROCESS_ID 11 | |||
|
8 | #define CCSDS_PACKET_CATEGORY 12 | |||
|
9 | ||||
|
10 | #define CCSDS_ERR_PID -1 | |||
|
11 | #define CCSDS_ERR_CAT -2 | |||
|
12 | #define CCSDS_ERR_LENGTH -3 | |||
|
13 | #define CCSDS_ERR_TYPE -4 | |||
|
14 | #define CCSDS_ERR_SUBTYPE -5 | |||
|
15 | #define CCSDS_ERR_SRC -6 | |||
|
16 | #define CCSDS_ERR_CRC -7 | |||
|
17 | #define CCSDS_TM_VALID 1 | |||
|
18 | ||||
|
19 | struct ccsdsTelemetrySourcePacketHeader_str | |||
|
20 | { | |||
|
21 | unsigned char targetLogicalAddress; | |||
|
22 | unsigned char protocolIdentifier; | |||
|
23 | unsigned char reserved; | |||
|
24 | unsigned char userApplication; | |||
|
25 | unsigned char packetID[2]; | |||
|
26 | unsigned char packetSequenceControl[2]; | |||
|
27 | unsigned char packetLength[2]; | |||
|
28 | unsigned char dataFieldHeader[10]; | |||
|
29 | }; | |||
|
30 | typedef struct ccsdsTelemetrySourcePacketHeader_str ccsdsTelemetrySourcePacketHeader_t; | |||
|
31 | ||||
|
32 | struct ccsdsTelecommandSourcePacketHeader_str | |||
|
33 | { | |||
|
34 | unsigned char targetLogicalAddress; | |||
|
35 | unsigned char protocolIdentifier; | |||
|
36 | unsigned char reserved; | |||
|
37 | unsigned char userApplication; | |||
|
38 | unsigned char packetID[2]; | |||
|
39 | unsigned char packetSequenceControl[2]; | |||
|
40 | unsigned char packetLength[2]; | |||
|
41 | unsigned char dataFieldHeader[4]; | |||
|
42 | }; | |||
|
43 | typedef struct ccsdsTelemetrySourcePacketHeader_str ccsdsTelecommandSourcePacketHeader_t; | |||
|
44 | ||||
|
45 | // initialize the ccsds telemetry header | |||
|
46 | ccsdsTelemetrySourcePacketHeader_t ccsdsTelemetryHeader; | |||
|
47 | #define INIT_CCSDS_TELEMETRY_HEADER ccsdsTelemetryHeader.targetLogicalAddress = 0x21; \ | |||
|
48 | ccsdsTelemetryHeader.protocolIdentifier = 0x02; \ | |||
|
49 | ccsdsTelemetryHeader.reserved = 0x00; \ | |||
|
50 | ccsdsTelemetryHeader.userApplication = 0x00; \ | |||
|
51 | ccsdsTelemetryHeader.packetID[0] = 0x08; \ | |||
|
52 | ccsdsTelemetryHeader.packetID[1] = 0xbc; \ | |||
|
53 | ccsdsTelemetryHeader.packetSequenceControl[0] = 0xc0; \ | |||
|
54 | ccsdsTelemetryHeader.packetSequenceControl[1] = 0x00; \ | |||
|
55 | ccsdsTelemetryHeader.packetLength[0] = 0x00; \ | |||
|
56 | ccsdsTelemetryHeader.packetLength[1] = 0x00; \ | |||
|
57 | ccsdsTelemetryHeader.dataFieldHeader[0] = 0x00; \ | |||
|
58 | ccsdsTelemetryHeader.dataFieldHeader[1] = 0x00; \ | |||
|
59 | ccsdsTelemetryHeader.dataFieldHeader[2] = 0x00; \ | |||
|
60 | ccsdsTelemetryHeader.dataFieldHeader[3] = 0x00; \ | |||
|
61 | ccsdsTelemetryHeader.dataFieldHeader[4] = 0x00; \ | |||
|
62 | ccsdsTelemetryHeader.dataFieldHeader[5] = 0x00; \ | |||
|
63 | ccsdsTelemetryHeader.dataFieldHeader[6] = 0x00; \ | |||
|
64 | ccsdsTelemetryHeader.dataFieldHeader[7] = 0x00; \ | |||
|
65 | ccsdsTelemetryHeader.dataFieldHeader[8] = 0x00; \ | |||
|
66 | ccsdsTelemetryHeader.dataFieldHeader[9] = 0x00; | |||
|
67 | ||||
|
68 | #endif // CCSDS_H_INCLUDED |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
@@ -0,0 +1,44 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_project_file> | |||
|
3 | <FileVersion major="1" minor="6" /> | |||
|
4 | <Project> | |||
|
5 | <Option title="rtems-hello" /> | |||
|
6 | <Option pch_mode="2" /> | |||
|
7 | <Option compiler="sparc_rtems_gcc" /> | |||
|
8 | <Build> | |||
|
9 | <Target title="Debug"> | |||
|
10 | <Option output="bin\Debug\rtems-hello" prefix_auto="1" extension_auto="1" /> | |||
|
11 | <Option object_output="obj\Debug\" /> | |||
|
12 | <Option type="1" /> | |||
|
13 | <Option compiler="sparc_rtems_gcc" /> | |||
|
14 | <Compiler> | |||
|
15 | <Add option="-g" /> | |||
|
16 | <Add directory="C:\opt\rtems-4.10-mingw\src\samples" /> | |||
|
17 | <Add directory="C:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include" /> | |||
|
18 | </Compiler> | |||
|
19 | </Target> | |||
|
20 | <Target title="Release"> | |||
|
21 | <Option output="bin\Release\rtems-hello" prefix_auto="1" extension_auto="1" /> | |||
|
22 | <Option object_output="obj\Release\" /> | |||
|
23 | <Option type="1" /> | |||
|
24 | <Option compiler="sparc_rtems_gcc" /> | |||
|
25 | <Compiler> | |||
|
26 | <Add option="-O2" /> | |||
|
27 | </Compiler> | |||
|
28 | <Linker> | |||
|
29 | <Add option="-s" /> | |||
|
30 | </Linker> | |||
|
31 | </Target> | |||
|
32 | </Build> | |||
|
33 | <Compiler> | |||
|
34 | <Add option="-Wall" /> | |||
|
35 | </Compiler> | |||
|
36 | <Unit filename="..\..\..\..\GAISLER\C\rtems-hello\rtems-hello.c"> | |||
|
37 | <Option compilerVar="CC" /> | |||
|
38 | </Unit> | |||
|
39 | <Extensions> | |||
|
40 | <code_completion /> | |||
|
41 | <debugger /> | |||
|
42 | </Extensions> | |||
|
43 | </Project> | |||
|
44 | </CodeBlocks_project_file> |
This diff has been collapsed as it changes many lines, (925 lines changed) Show them Hide them | |||||
@@ -0,0 +1,925 | |||||
|
1 | # depslib dependency file v1.0 | |||
|
2 | 1351516874 source:e:\gaisler\c\rtems-hello\rtems-hello.c | |||
|
3 | <rtems.h> | |||
|
4 | <bsp.h> | |||
|
5 | <rtems/confdefs.h> | |||
|
6 | <drvmgr/ambapp_bus.h> | |||
|
7 | <drvmgr/drvmgr_confdefs.h> | |||
|
8 | <stdio.h> | |||
|
9 | <stdlib.h> | |||
|
10 | <fcntl.h> | |||
|
11 | <drvmgr/drvmgr.h> | |||
|
12 | <errno.h> | |||
|
13 | ||||
|
14 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems.h | |||
|
15 | <rtems/system.h> | |||
|
16 | <rtems/rtems/status.h> | |||
|
17 | <rtems/rtems/types.h> | |||
|
18 | <rtems/config.h> | |||
|
19 | <rtems/init.h> | |||
|
20 | <rtems/rtems/options.h> | |||
|
21 | <rtems/rtems/tasks.h> | |||
|
22 | <rtems/rtems/intr.h> | |||
|
23 | <rtems/rtems/barrier.h> | |||
|
24 | <rtems/rtems/cache.h> | |||
|
25 | <rtems/rtems/clock.h> | |||
|
26 | <rtems/extension.h> | |||
|
27 | <rtems/rtems/timer.h> | |||
|
28 | <rtems/rtems/sem.h> | |||
|
29 | <rtems/rtems/message.h> | |||
|
30 | <rtems/rtems/event.h> | |||
|
31 | <rtems/rtems/signal.h> | |||
|
32 | <rtems/rtems/event.h> | |||
|
33 | <rtems/rtems/object.h> | |||
|
34 | <rtems/rtems/part.h> | |||
|
35 | <rtems/rtems/region.h> | |||
|
36 | <rtems/rtems/dpmem.h> | |||
|
37 | <rtems/io.h> | |||
|
38 | <rtems/fatal.h> | |||
|
39 | <rtems/rtems/ratemon.h> | |||
|
40 | <rtems/rtems/mp.h> | |||
|
41 | <rtems/rtems/support.h> | |||
|
42 | <rtems/score/sysstate.h> | |||
|
43 | ||||
|
44 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\system.h | |||
|
45 | <rtems/score/cpuopts.h> | |||
|
46 | <stddef.h> | |||
|
47 | <stdint.h> | |||
|
48 | <rtems/score/cpu.h> | |||
|
49 | ||||
|
50 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\cpuopts.h | |||
|
51 | ||||
|
52 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\cpu.h | |||
|
53 | <rtems/score/sparc.h> | |||
|
54 | <rtems/score/types.h> | |||
|
55 | ||||
|
56 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\sparc.h | |||
|
57 | ||||
|
58 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\types.h | |||
|
59 | <stdbool.h> | |||
|
60 | <stdint.h> | |||
|
61 | ||||
|
62 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\status.h | |||
|
63 | <rtems/rtems/status.inl> | |||
|
64 | ||||
|
65 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\status.inl | |||
|
66 | ||||
|
67 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\types.h | |||
|
68 | <stdint.h> | |||
|
69 | <rtems/score/heap.h> | |||
|
70 | <rtems/score/object.h> | |||
|
71 | <rtems/score/priority.h> | |||
|
72 | <rtems/score/tod.h> | |||
|
73 | <rtems/score/watchdog.h> | |||
|
74 | <rtems/rtems/modes.h> | |||
|
75 | <rtems/score/mpci.h> | |||
|
76 | <rtems/score/mppkt.h> | |||
|
77 | ||||
|
78 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\heap.h | |||
|
79 | <rtems/score/heap.inl> | |||
|
80 | <assert.h> | |||
|
81 | ||||
|
82 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\heap.inl | |||
|
83 | <rtems/score/address.h> | |||
|
84 | ||||
|
85 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\address.h | |||
|
86 | <rtems/score/address.inl> | |||
|
87 | ||||
|
88 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\address.inl | |||
|
89 | <rtems/bspIo.h> | |||
|
90 | ||||
|
91 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bspio.h | |||
|
92 | <stdarg.h> | |||
|
93 | ||||
|
94 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\object.h | |||
|
95 | <rtems/score/chain.h> | |||
|
96 | <rtems/score/isr.h> | |||
|
97 | <rtems/score/object.inl> | |||
|
98 | <rtems/score/objectmp.h> | |||
|
99 | ||||
|
100 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\chain.h | |||
|
101 | <rtems/score/address.h> | |||
|
102 | <rtems/score/chain.inl> | |||
|
103 | ||||
|
104 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\chain.inl | |||
|
105 | ||||
|
106 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\isr.h | |||
|
107 | <rtems/score/isr.inl> | |||
|
108 | ||||
|
109 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\isr.inl | |||
|
110 | ||||
|
111 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\object.inl | |||
|
112 | ||||
|
113 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\priority.h | |||
|
114 | <rtems/score/cpu.h> | |||
|
115 | <rtems/score/priority.inl> | |||
|
116 | ||||
|
117 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\priority.inl | |||
|
118 | <rtems/score/bitfield.h> | |||
|
119 | ||||
|
120 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\bitfield.h | |||
|
121 | ||||
|
122 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tod.h | |||
|
123 | <rtems/score/timestamp.h> | |||
|
124 | <time.h> | |||
|
125 | <rtems/score/tod.inl> | |||
|
126 | ||||
|
127 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\timestamp.h | |||
|
128 | <rtems/score/timespec.h> | |||
|
129 | <rtems/score/timestamp64.h> | |||
|
130 | ||||
|
131 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\timespec.h | |||
|
132 | <stdint.h> | |||
|
133 | <time.h> | |||
|
134 | ||||
|
135 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\timestamp64.h | |||
|
136 | ||||
|
137 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tod.inl | |||
|
138 | <sys/time.h> | |||
|
139 | <rtems/score/isr.h> | |||
|
140 | ||||
|
141 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\watchdog.h | |||
|
142 | <rtems/score/object.h> | |||
|
143 | <rtems/score/watchdog.inl> | |||
|
144 | ||||
|
145 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\watchdog.inl | |||
|
146 | ||||
|
147 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\modes.h | |||
|
148 | <rtems/score/isr.h> | |||
|
149 | <rtems/rtems/modes.inl> | |||
|
150 | ||||
|
151 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\modes.inl | |||
|
152 | ||||
|
153 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\config.h | |||
|
154 | <rtems/score/object.h> | |||
|
155 | <rtems/posix/config.h> | |||
|
156 | <rtems/itron.h> | |||
|
157 | <rtems/itron/config.h> | |||
|
158 | <rtems/rtems/config.h> | |||
|
159 | <rtems/extension.h> | |||
|
160 | <rtems/io.h> | |||
|
161 | <rtems/score/mpci.h> | |||
|
162 | ||||
|
163 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\config.h | |||
|
164 | ||||
|
165 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\config.h | |||
|
166 | <rtems/rtems/types.h> | |||
|
167 | <rtems/rtems/tasks.h> | |||
|
168 | ||||
|
169 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\tasks.h | |||
|
170 | <rtems/score/object.h> | |||
|
171 | <rtems/score/states.h> | |||
|
172 | <rtems/score/thread.h> | |||
|
173 | <rtems/rtems/types.h> | |||
|
174 | <rtems/rtems/eventset.h> | |||
|
175 | <rtems/rtems/asr.h> | |||
|
176 | <rtems/rtems/attr.h> | |||
|
177 | <rtems/rtems/status.h> | |||
|
178 | <rtems/rtems/tasks.inl> | |||
|
179 | <rtems/rtems/taskmp.h> | |||
|
180 | ||||
|
181 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\states.h | |||
|
182 | <rtems/score/states.inl> | |||
|
183 | ||||
|
184 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\states.inl | |||
|
185 | ||||
|
186 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\thread.h | |||
|
187 | <rtems/score/timestamp.h> | |||
|
188 | <rtems/score/context.h> | |||
|
189 | <rtems/score/cpu.h> | |||
|
190 | <rtems/score/mppkt.h> | |||
|
191 | <rtems/score/object.h> | |||
|
192 | <rtems/score/priority.h> | |||
|
193 | <rtems/score/stack.h> | |||
|
194 | <rtems/score/states.h> | |||
|
195 | <rtems/score/tod.h> | |||
|
196 | <rtems/score/tqdata.h> | |||
|
197 | <rtems/score/watchdog.h> | |||
|
198 | <rtems/score/thread.inl> | |||
|
199 | <rtems/score/threadmp.h> | |||
|
200 | ||||
|
201 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\context.h | |||
|
202 | <rtems/score/cpu.h> | |||
|
203 | ||||
|
204 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\stack.h | |||
|
205 | <rtems/score/stack.inl> | |||
|
206 | ||||
|
207 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\stack.inl | |||
|
208 | ||||
|
209 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tqdata.h | |||
|
210 | <rtems/score/chain.h> | |||
|
211 | <rtems/score/priority.h> | |||
|
212 | <rtems/score/states.h> | |||
|
213 | <rtems/score/threadsync.h> | |||
|
214 | <rtems/score/tqdata.inl> | |||
|
215 | ||||
|
216 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\threadsync.h | |||
|
217 | ||||
|
218 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tqdata.inl | |||
|
219 | ||||
|
220 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\thread.inl | |||
|
221 | <rtems/score/sysstate.h> | |||
|
222 | <rtems/score/context.h> | |||
|
223 | <rtems/bspIo.h> | |||
|
224 | <rtems/fatal.h> | |||
|
225 | <rtems/stackchk.h> | |||
|
226 | <rtems/score/sysstate.h> | |||
|
227 | <rtems/score/heap.h> | |||
|
228 | ||||
|
229 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\sysstate.h | |||
|
230 | <rtems/score/sysstate.inl> | |||
|
231 | ||||
|
232 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\sysstate.inl | |||
|
233 | ||||
|
234 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\fatal.h | |||
|
235 | ||||
|
236 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\stackchk.h | |||
|
237 | <rtems/bspIo.h> | |||
|
238 | ||||
|
239 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\eventset.h | |||
|
240 | <rtems/rtems/eventset.inl> | |||
|
241 | ||||
|
242 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\eventset.inl | |||
|
243 | ||||
|
244 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\asr.h | |||
|
245 | <rtems/rtems/modes.h> | |||
|
246 | <rtems/rtems/asr.inl> | |||
|
247 | ||||
|
248 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\asr.inl | |||
|
249 | <rtems/score/isr.h> | |||
|
250 | ||||
|
251 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\attr.h | |||
|
252 | <rtems/rtems/attr.inl> | |||
|
253 | ||||
|
254 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\attr.inl | |||
|
255 | ||||
|
256 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\tasks.inl | |||
|
257 | ||||
|
258 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\extension.h | |||
|
259 | <rtems/score/object.h> | |||
|
260 | <rtems/score/userext.h> | |||
|
261 | <rtems/rtems/status.h> | |||
|
262 | <rtems/rtems/types.h> | |||
|
263 | <rtems/extension.inl> | |||
|
264 | ||||
|
265 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\userext.h | |||
|
266 | <rtems/score/interr.h> | |||
|
267 | <rtems/score/chain.h> | |||
|
268 | <rtems/score/thread.h> | |||
|
269 | ||||
|
270 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\interr.h | |||
|
271 | <stdbool.h> | |||
|
272 | <stdint.h> | |||
|
273 | <rtems/system.h> | |||
|
274 | ||||
|
275 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\extension.inl | |||
|
276 | ||||
|
277 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\io.h | |||
|
278 | <rtems/rtems/status.h> | |||
|
279 | ||||
|
280 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\init.h | |||
|
281 | <rtems/rtems/types.h> | |||
|
282 | <rtems/config.h> | |||
|
283 | <rtems/rtems/intr.h> | |||
|
284 | ||||
|
285 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\intr.h | |||
|
286 | <rtems/score/isr.h> | |||
|
287 | ||||
|
288 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\options.h | |||
|
289 | <rtems/rtems/options.inl> | |||
|
290 | ||||
|
291 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\options.inl | |||
|
292 | ||||
|
293 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\barrier.h | |||
|
294 | <rtems/rtems/types.h> | |||
|
295 | <rtems/rtems/support.h> | |||
|
296 | <rtems/rtems/attr.h> | |||
|
297 | <rtems/rtems/status.h> | |||
|
298 | <rtems/score/object.h> | |||
|
299 | <rtems/score/corebarrier.h> | |||
|
300 | <rtems/rtems/barrier.inl> | |||
|
301 | ||||
|
302 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\support.h | |||
|
303 | <rtems/rtems/types.h> | |||
|
304 | <rtems/rtems/support.inl> | |||
|
305 | ||||
|
306 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\support.inl | |||
|
307 | ||||
|
308 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corebarrier.h | |||
|
309 | <rtems/score/thread.h> | |||
|
310 | <rtems/score/threadq.h> | |||
|
311 | <rtems/score/priority.h> | |||
|
312 | <rtems/score/watchdog.h> | |||
|
313 | <rtems/score/corebarrier.inl> | |||
|
314 | ||||
|
315 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\threadq.h | |||
|
316 | <rtems/score/tqdata.h> | |||
|
317 | <rtems/score/object.h> | |||
|
318 | <rtems/score/thread.h> | |||
|
319 | <rtems/score/watchdog.h> | |||
|
320 | <rtems/score/threadq.inl> | |||
|
321 | ||||
|
322 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\threadq.inl | |||
|
323 | <rtems/score/thread.h> | |||
|
324 | ||||
|
325 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corebarrier.inl | |||
|
326 | <rtems/score/thread.h> | |||
|
327 | <rtems/score/threadq.h> | |||
|
328 | ||||
|
329 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\barrier.inl | |||
|
330 | ||||
|
331 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\cache.h | |||
|
332 | <rtems/system.h> | |||
|
333 | <sys/types.h> | |||
|
334 | ||||
|
335 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\clock.h | |||
|
336 | <rtems/score/tod.h> | |||
|
337 | <rtems/score/watchdog.h> | |||
|
338 | <rtems/rtems/status.h> | |||
|
339 | <rtems/rtems/types.h> | |||
|
340 | <sys/time.h> | |||
|
341 | ||||
|
342 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\timer.h | |||
|
343 | <rtems/score/object.h> | |||
|
344 | <rtems/score/watchdog.h> | |||
|
345 | <rtems/score/thread.h> | |||
|
346 | <rtems/score/chain.h> | |||
|
347 | <rtems/rtems/clock.h> | |||
|
348 | <rtems/rtems/attr.h> | |||
|
349 | <rtems/rtems/timer.inl> | |||
|
350 | ||||
|
351 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\timer.inl | |||
|
352 | ||||
|
353 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\sem.h | |||
|
354 | <rtems/rtems/types.h> | |||
|
355 | <rtems/rtems/options.h> | |||
|
356 | <rtems/rtems/support.h> | |||
|
357 | <rtems/rtems/tasks.h> | |||
|
358 | <rtems/rtems/attr.h> | |||
|
359 | <rtems/score/coremutex.h> | |||
|
360 | <rtems/score/object.h> | |||
|
361 | <rtems/score/coresem.h> | |||
|
362 | <rtems/rtems/sem.inl> | |||
|
363 | <rtems/rtems/semmp.h> | |||
|
364 | ||||
|
365 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremutex.h | |||
|
366 | <rtems/score/thread.h> | |||
|
367 | <rtems/score/threadq.h> | |||
|
368 | <rtems/score/priority.h> | |||
|
369 | <rtems/score/watchdog.h> | |||
|
370 | <rtems/score/interr.h> | |||
|
371 | <rtems/score/sysstate.h> | |||
|
372 | <rtems/score/coremutex.inl> | |||
|
373 | ||||
|
374 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremutex.inl | |||
|
375 | ||||
|
376 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coresem.h | |||
|
377 | <rtems/score/thread.h> | |||
|
378 | <rtems/score/threadq.h> | |||
|
379 | <rtems/score/priority.h> | |||
|
380 | <rtems/score/watchdog.h> | |||
|
381 | <rtems/score/coresem.inl> | |||
|
382 | ||||
|
383 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coresem.inl | |||
|
384 | <rtems/score/thread.h> | |||
|
385 | <rtems/score/threadq.h> | |||
|
386 | ||||
|
387 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\sem.inl | |||
|
388 | ||||
|
389 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\message.h | |||
|
390 | <rtems/rtems/types.h> | |||
|
391 | <rtems/rtems/status.h> | |||
|
392 | <rtems/rtems/options.h> | |||
|
393 | <rtems/score/chain.h> | |||
|
394 | <rtems/score/object.h> | |||
|
395 | <rtems/rtems/attr.h> | |||
|
396 | <rtems/score/coremsg.h> | |||
|
397 | <rtems/rtems/message.inl> | |||
|
398 | <rtems/rtems/msgmp.h> | |||
|
399 | ||||
|
400 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremsg.h | |||
|
401 | <limits.h> | |||
|
402 | <rtems/score/thread.h> | |||
|
403 | <rtems/score/threadq.h> | |||
|
404 | <rtems/score/priority.h> | |||
|
405 | <rtems/score/watchdog.h> | |||
|
406 | <rtems/score/coremsg.inl> | |||
|
407 | ||||
|
408 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremsg.inl | |||
|
409 | <string.h> | |||
|
410 | ||||
|
411 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\message.inl | |||
|
412 | <rtems/score/wkspace.h> | |||
|
413 | ||||
|
414 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\wkspace.h | |||
|
415 | <rtems/score/heap.h> | |||
|
416 | <rtems/score/interr.h> | |||
|
417 | <rtems/score/wkspace.inl> | |||
|
418 | ||||
|
419 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\wkspace.inl | |||
|
420 | ||||
|
421 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\event.h | |||
|
422 | <rtems/score/object.h> | |||
|
423 | <rtems/rtems/status.h> | |||
|
424 | <rtems/rtems/types.h> | |||
|
425 | <rtems/rtems/options.h> | |||
|
426 | <rtems/score/thread.h> | |||
|
427 | <rtems/score/threadsync.h> | |||
|
428 | <rtems/score/watchdog.h> | |||
|
429 | <rtems/rtems/eventset.h> | |||
|
430 | <rtems/rtems/eventmp.h> | |||
|
431 | <rtems/rtems/event.inl> | |||
|
432 | ||||
|
433 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\event.inl | |||
|
434 | ||||
|
435 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\signal.h | |||
|
436 | <rtems/rtems/asr.h> | |||
|
437 | <rtems/rtems/modes.h> | |||
|
438 | <rtems/score/object.h> | |||
|
439 | <rtems/rtems/status.h> | |||
|
440 | <rtems/rtems/types.h> | |||
|
441 | <rtems/rtems/signalmp.h> | |||
|
442 | ||||
|
443 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\object.h | |||
|
444 | <stdint.h> | |||
|
445 | <rtems/score/object.h> | |||
|
446 | <rtems/rtems/status.h> | |||
|
447 | <rtems/rtems/types.h> | |||
|
448 | ||||
|
449 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\part.h | |||
|
450 | <rtems/score/address.h> | |||
|
451 | <rtems/score/object.h> | |||
|
452 | <rtems/rtems/attr.h> | |||
|
453 | <rtems/rtems/status.h> | |||
|
454 | <rtems/rtems/support.h> | |||
|
455 | <rtems/rtems/types.h> | |||
|
456 | <rtems/rtems/part.inl> | |||
|
457 | <rtems/rtems/partmp.h> | |||
|
458 | ||||
|
459 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\part.inl | |||
|
460 | ||||
|
461 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\region.h | |||
|
462 | <rtems/score/object.h> | |||
|
463 | <rtems/score/threadq.h> | |||
|
464 | <rtems/score/heap.h> | |||
|
465 | <rtems/debug.h> | |||
|
466 | <rtems/rtems/attr.h> | |||
|
467 | <rtems/rtems/options.h> | |||
|
468 | <rtems/rtems/status.h> | |||
|
469 | <rtems/rtems/support.h> | |||
|
470 | <rtems/rtems/types.h> | |||
|
471 | <rtems/rtems/region.inl> | |||
|
472 | <rtems/rtems/regionmp.h> | |||
|
473 | ||||
|
474 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\debug.h | |||
|
475 | ||||
|
476 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\region.inl | |||
|
477 | ||||
|
478 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\dpmem.h | |||
|
479 | <rtems/score/object.h> | |||
|
480 | <rtems/rtems/support.h> | |||
|
481 | <rtems/rtems/status.h> | |||
|
482 | <rtems/rtems/dpmem.inl> | |||
|
483 | ||||
|
484 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\dpmem.inl | |||
|
485 | ||||
|
486 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\ratemon.h | |||
|
487 | <rtems/bspIo.h> | |||
|
488 | <rtems/score/timespec.h> | |||
|
489 | <rtems/score/timestamp.h> | |||
|
490 | <rtems/score/object.h> | |||
|
491 | <rtems/score/thread.h> | |||
|
492 | <rtems/score/watchdog.h> | |||
|
493 | <rtems/rtems/status.h> | |||
|
494 | <rtems/rtems/support.h> | |||
|
495 | <string.h> | |||
|
496 | <rtems/rtems/ratemon.inl> | |||
|
497 | ||||
|
498 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\ratemon.inl | |||
|
499 | ||||
|
500 | 1340115162 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\bsp.h | |||
|
501 | <bspopts.h> | |||
|
502 | <rtems.h> | |||
|
503 | <leon.h> | |||
|
504 | <rtems/clockdrv.h> | |||
|
505 | <rtems/console.h> | |||
|
506 | <rtems/irq-extension.h> | |||
|
507 | ||||
|
508 | 1340115162 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\bspopts.h | |||
|
509 | ||||
|
510 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\leon.h | |||
|
511 | <rtems/score/sparc.h> | |||
|
512 | <amba.h> | |||
|
513 | ||||
|
514 | 1340115162 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\amba.h | |||
|
515 | <ambapp.h> | |||
|
516 | <grlib.h> | |||
|
517 | ||||
|
518 | 1340115162 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\ambapp.h | |||
|
519 | <ambapp_ids.h> | |||
|
520 | ||||
|
521 | 1340115162 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\ambapp_ids.h | |||
|
522 | ||||
|
523 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\grlib.h | |||
|
524 | ||||
|
525 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\clockdrv.h | |||
|
526 | ||||
|
527 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\console.h | |||
|
528 | ||||
|
529 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\irq-extension.h | |||
|
530 | <rtems.h> | |||
|
531 | ||||
|
532 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\confdefs.h | |||
|
533 | <rtems.h> | |||
|
534 | <rtems/score/apimutex.h> | |||
|
535 | <rtems/libio.h> | |||
|
536 | <rtems/imfs.h> | |||
|
537 | <rtems/devfs.h> | |||
|
538 | <rtems/ftpfs.h> | |||
|
539 | <rtems/tftp.h> | |||
|
540 | <librtemsNfs.h> | |||
|
541 | <rtems/dosfs.h> | |||
|
542 | <rtems/rtems-rfs.h> | |||
|
543 | <rtems/devfs.h> | |||
|
544 | <rtems/malloc.h> | |||
|
545 | <rtems/score/wkspace.h> | |||
|
546 | <rtems/console.h> | |||
|
547 | <rtems/clockdrv.h> | |||
|
548 | <rtems/timerdrv.h> | |||
|
549 | <rtems/rtc.h> | |||
|
550 | <rtems/watchdogdrv.h> | |||
|
551 | <rtems/framebuffer.h> | |||
|
552 | <rtems/devnull.h> | |||
|
553 | <libchip/ide_ctrl.h> | |||
|
554 | <libchip/ata.h> | |||
|
555 | <rtems/bdbuf.h> | |||
|
556 | <mpci.h> | |||
|
557 | <rtems/stackchk.h> | |||
|
558 | <rtems/libcsupport.h> | |||
|
559 | <sys/types.h> | |||
|
560 | <signal.h> | |||
|
561 | <limits.h> | |||
|
562 | <mqueue.h> | |||
|
563 | <rtems/posix/barrier.h> | |||
|
564 | <rtems/posix/cond.h> | |||
|
565 | <rtems/posix/mqueue.h> | |||
|
566 | <rtems/posix/mutex.h> | |||
|
567 | <rtems/posix/key.h> | |||
|
568 | <rtems/posix/psignal.h> | |||
|
569 | <rtems/posix/rwlock.h> | |||
|
570 | <rtems/posix/semaphore.h> | |||
|
571 | <rtems/posix/spinlock.h> | |||
|
572 | <rtems/posix/threadsup.h> | |||
|
573 | <rtems/posix/timer.h> | |||
|
574 | <rtems/itron.h> | |||
|
575 | <rtems/itron/config.h> | |||
|
576 | <rtems/itron/eventflags.h> | |||
|
577 | <rtems/itron/fmempool.h> | |||
|
578 | <rtems/itron/mbox.h> | |||
|
579 | <rtems/itron/msgbuffer.h> | |||
|
580 | <rtems/itron/port.h> | |||
|
581 | <rtems/itron/semaphore.h> | |||
|
582 | <rtems/itron/task.h> | |||
|
583 | <rtems/itron/vmempool.h> | |||
|
584 | <reent.h> | |||
|
585 | <pci/cfg.h> | |||
|
586 | <pci/cfg.h> | |||
|
587 | <pci/cfg.h> | |||
|
588 | ||||
|
589 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\apimutex.h | |||
|
590 | <rtems/score/coremutex.h> | |||
|
591 | <rtems/score/isr.h> | |||
|
592 | <rtems/score/object.h> | |||
|
593 | ||||
|
594 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\libio.h | |||
|
595 | <sys/types.h> | |||
|
596 | <sys/stat.h> | |||
|
597 | <sys/ioctl.h> | |||
|
598 | <sys/statvfs.h> | |||
|
599 | <unistd.h> | |||
|
600 | <termios.h> | |||
|
601 | <rtems.h> | |||
|
602 | <rtems/fs.h> | |||
|
603 | <rtems/chain.h> | |||
|
604 | ||||
|
605 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\ioctl.h | |||
|
606 | <sys/ttycom.h> | |||
|
607 | <sys/ioccom.h> | |||
|
608 | <sys/filio.h> | |||
|
609 | <sys/sockio.h> | |||
|
610 | ||||
|
611 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\ttycom.h | |||
|
612 | <sys/ioccom.h> | |||
|
613 | ||||
|
614 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\ioccom.h | |||
|
615 | <sys/types.h> | |||
|
616 | <rtems/bsd/sys/cdefs.h> | |||
|
617 | ||||
|
618 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bsd\sys\cdefs.h | |||
|
619 | ||||
|
620 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\filio.h | |||
|
621 | <sys/ioccom.h> | |||
|
622 | ||||
|
623 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\sockio.h | |||
|
624 | <sys/ioccom.h> | |||
|
625 | ||||
|
626 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\statvfs.h | |||
|
627 | <sys/cdefs.h> | |||
|
628 | <stdint.h> | |||
|
629 | ||||
|
630 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\fs.h | |||
|
631 | ||||
|
632 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\chain.h | |||
|
633 | <rtems/system.h> | |||
|
634 | <rtems/score/chain.h> | |||
|
635 | <rtems/chain.inl> | |||
|
636 | ||||
|
637 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\chain.inl | |||
|
638 | <rtems/score/chain.inl> | |||
|
639 | ||||
|
640 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\imfs.h | |||
|
641 | <rtems.h> | |||
|
642 | <rtems/chain.h> | |||
|
643 | <sys/types.h> | |||
|
644 | <limits.h> | |||
|
645 | <rtems/libio.h> | |||
|
646 | <rtems/pipe.h> | |||
|
647 | ||||
|
648 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\pipe.h | |||
|
649 | <rtems/libio.h> | |||
|
650 | ||||
|
651 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\devfs.h | |||
|
652 | <rtems/libio_.h> | |||
|
653 | ||||
|
654 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\libio_.h | |||
|
655 | <rtems.h> | |||
|
656 | <rtems/libio.h> | |||
|
657 | <sys/types.h> | |||
|
658 | <errno.h> | |||
|
659 | <rtems/userenv.h> | |||
|
660 | ||||
|
661 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\userenv.h | |||
|
662 | <rtems.h> | |||
|
663 | <rtems/fs.h> | |||
|
664 | <limits.h> | |||
|
665 | ||||
|
666 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\ftpfs.h | |||
|
667 | <sys/time.h> | |||
|
668 | <sys/ioctl.h> | |||
|
669 | <rtems/libio.h> | |||
|
670 | ||||
|
671 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\tftp.h | |||
|
672 | <rtems/libio.h> | |||
|
673 | ||||
|
674 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\librtemsnfs.h | |||
|
675 | <config.h> | |||
|
676 | <rtems.h> | |||
|
677 | <rtems/libio.h> | |||
|
678 | <rtems/libio_.h> | |||
|
679 | <rtems/seterr.h> | |||
|
680 | <string.h> | |||
|
681 | <stdio.h> | |||
|
682 | <stdlib.h> | |||
|
683 | <assert.h> | |||
|
684 | <sys/stat.h> | |||
|
685 | <dirent.h> | |||
|
686 | <netdb.h> | |||
|
687 | <ctype.h> | |||
|
688 | <netinet/in.h> | |||
|
689 | <arpa/inet.h> | |||
|
690 | "rpcio.h" | |||
|
691 | ||||
|
692 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\seterr.h | |||
|
693 | ||||
|
694 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\netdb.h | |||
|
695 | <rtems/bsd/sys/cdefs.h> | |||
|
696 | <rtems/bsdnet/_types.h> | |||
|
697 | ||||
|
698 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bsdnet\_types.h | |||
|
699 | <stdint.h> | |||
|
700 | ||||
|
701 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\netinet\in.h | |||
|
702 | <rtems/bsdnet/_types.h> | |||
|
703 | <rtems/endian.h> | |||
|
704 | ||||
|
705 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\endian.h | |||
|
706 | <rtems.h> | |||
|
707 | ||||
|
708 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\arpa\inet.h | |||
|
709 | <rtems/bsd/sys/cdefs.h> | |||
|
710 | <rtems/bsdnet/_types.h> | |||
|
711 | <rtems/endian.h> | |||
|
712 | ||||
|
713 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\dosfs.h | |||
|
714 | <rtems.h> | |||
|
715 | <rtems/libio.h> | |||
|
716 | ||||
|
717 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems-rfs.h | |||
|
718 | <rtems.h> | |||
|
719 | <rtems/fs.h> | |||
|
720 | ||||
|
721 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\malloc.h | |||
|
722 | <rtems.h> | |||
|
723 | <rtems/bspIo.h> | |||
|
724 | <stdint.h> | |||
|
725 | ||||
|
726 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\timerdrv.h | |||
|
727 | ||||
|
728 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtc.h | |||
|
729 | <rtems.h> | |||
|
730 | ||||
|
731 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\framebuffer.h | |||
|
732 | ||||
|
733 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\devnull.h | |||
|
734 | ||||
|
735 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\libchip\ide_ctrl.h | |||
|
736 | ||||
|
737 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\libchip\ata.h | |||
|
738 | <rtems.h> | |||
|
739 | <sys/ioctl.h> | |||
|
740 | <rtems/blkdev.h> | |||
|
741 | ||||
|
742 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\blkdev.h | |||
|
743 | <rtems.h> | |||
|
744 | <rtems/diskdevs.h> | |||
|
745 | <sys/ioctl.h> | |||
|
746 | ||||
|
747 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\diskdevs.h | |||
|
748 | <rtems.h> | |||
|
749 | <rtems/libio.h> | |||
|
750 | <stdlib.h> | |||
|
751 | ||||
|
752 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bdbuf.h | |||
|
753 | <rtems.h> | |||
|
754 | <rtems/libio.h> | |||
|
755 | <rtems/chain.h> | |||
|
756 | <rtems/blkdev.h> | |||
|
757 | <rtems/diskdevs.h> | |||
|
758 | ||||
|
759 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\libcsupport.h | |||
|
760 | <sys/types.h> | |||
|
761 | <stdint.h> | |||
|
762 | ||||
|
763 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\mqueue.h | |||
|
764 | <unistd.h> | |||
|
765 | <sys/types.h> | |||
|
766 | <rtems/system.h> | |||
|
767 | <rtems/score/object.h> | |||
|
768 | <time.h> | |||
|
769 | ||||
|
770 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\barrier.h | |||
|
771 | <rtems/score/object.h> | |||
|
772 | <rtems/score/corebarrier.h> | |||
|
773 | <rtems/posix/barrier.inl> | |||
|
774 | ||||
|
775 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\barrier.inl | |||
|
776 | <pthread.h> | |||
|
777 | ||||
|
778 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\cond.h | |||
|
779 | <rtems/score/object.h> | |||
|
780 | <rtems/score/threadq.h> | |||
|
781 | <rtems/posix/cond.inl> | |||
|
782 | ||||
|
783 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\cond.inl | |||
|
784 | <pthread.h> | |||
|
785 | ||||
|
786 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mqueue.h | |||
|
787 | <signal.h> | |||
|
788 | <rtems/score/coremsg.h> | |||
|
789 | <rtems/score/object.h> | |||
|
790 | <rtems/posix/mqueue.inl> | |||
|
791 | ||||
|
792 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mqueue.inl | |||
|
793 | ||||
|
794 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mutex.h | |||
|
795 | <rtems/score/coremutex.h> | |||
|
796 | <pthread.h> | |||
|
797 | <rtems/posix/mutex.inl> | |||
|
798 | ||||
|
799 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mutex.inl | |||
|
800 | ||||
|
801 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\key.h | |||
|
802 | <rtems/posix/key.inl> | |||
|
803 | ||||
|
804 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\key.inl | |||
|
805 | ||||
|
806 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\psignal.h | |||
|
807 | <rtems/posix/pthread.h> | |||
|
808 | <rtems/posix/sigset.h> | |||
|
809 | ||||
|
810 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\pthread.h | |||
|
811 | <rtems/posix/config.h> | |||
|
812 | <rtems/posix/threadsup.h> | |||
|
813 | <rtems/posix/pthread.inl> | |||
|
814 | ||||
|
815 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\threadsup.h | |||
|
816 | <sys/signal.h> | |||
|
817 | <rtems/score/coresem.h> | |||
|
818 | <rtems/score/tqdata.h> | |||
|
819 | ||||
|
820 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\pthread.inl | |||
|
821 | ||||
|
822 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\sigset.h | |||
|
823 | <signal.h> | |||
|
824 | ||||
|
825 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\rwlock.h | |||
|
826 | <rtems/score/object.h> | |||
|
827 | <rtems/score/corerwlock.h> | |||
|
828 | <rtems/posix/rwlock.inl> | |||
|
829 | ||||
|
830 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corerwlock.h | |||
|
831 | <rtems/score/thread.h> | |||
|
832 | <rtems/score/threadq.h> | |||
|
833 | <rtems/score/priority.h> | |||
|
834 | <rtems/score/watchdog.h> | |||
|
835 | <rtems/score/corerwlock.inl> | |||
|
836 | ||||
|
837 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corerwlock.inl | |||
|
838 | <rtems/score/thread.h> | |||
|
839 | <rtems/score/threadq.h> | |||
|
840 | ||||
|
841 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\rwlock.inl | |||
|
842 | <pthread.h> | |||
|
843 | ||||
|
844 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\semaphore.h | |||
|
845 | <semaphore.h> | |||
|
846 | <rtems/score/coresem.h> | |||
|
847 | <rtems/posix/semaphore.inl> | |||
|
848 | ||||
|
849 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\semaphore.h | |||
|
850 | <unistd.h> | |||
|
851 | <sys/time.h> | |||
|
852 | ||||
|
853 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\semaphore.inl | |||
|
854 | ||||
|
855 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\spinlock.h | |||
|
856 | <rtems/score/object.h> | |||
|
857 | <rtems/score/corespinlock.h> | |||
|
858 | <rtems/posix/spinlock.inl> | |||
|
859 | ||||
|
860 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corespinlock.h | |||
|
861 | <rtems/score/thread.h> | |||
|
862 | <rtems/score/thread.h> | |||
|
863 | <rtems/score/priority.h> | |||
|
864 | <rtems/score/corespinlock.inl> | |||
|
865 | ||||
|
866 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corespinlock.inl | |||
|
867 | ||||
|
868 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\spinlock.inl | |||
|
869 | <pthread.h> | |||
|
870 | ||||
|
871 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\timer.h | |||
|
872 | <rtems/posix/config.h> | |||
|
873 | <rtems/score/object.h> | |||
|
874 | <rtems/posix/timer.inl> | |||
|
875 | ||||
|
876 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\timer.inl | |||
|
877 | ||||
|
878 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg.h | |||
|
879 | <pci.h> | |||
|
880 | <pci/cfg_auto.h> | |||
|
881 | <pci/cfg_static.h> | |||
|
882 | <pci/cfg_read.h> | |||
|
883 | <pci/cfg_peripheral.h> | |||
|
884 | ||||
|
885 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci.h | |||
|
886 | <pci/ids.h> | |||
|
887 | <pci/access.h> | |||
|
888 | ||||
|
889 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\ids.h | |||
|
890 | <pci/ids_extra.h> | |||
|
891 | ||||
|
892 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\ids_extra.h | |||
|
893 | ||||
|
894 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\access.h | |||
|
895 | <stdint.h> | |||
|
896 | <libcpu/byteorder.h> | |||
|
897 | <pci.h> | |||
|
898 | <bsp.h> | |||
|
899 | ||||
|
900 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\libcpu\byteorder.h | |||
|
901 | <rtems/system.h> | |||
|
902 | <rtems/score/cpu.h> | |||
|
903 | ||||
|
904 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_auto.h | |||
|
905 | ||||
|
906 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_static.h | |||
|
907 | ||||
|
908 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_read.h | |||
|
909 | ||||
|
910 | 1340115164 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_peripheral.h | |||
|
911 | ||||
|
912 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\ambapp_bus.h | |||
|
913 | <drvmgr/drvmgr.h> | |||
|
914 | <ambapp.h> | |||
|
915 | ||||
|
916 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\drvmgr.h | |||
|
917 | <rtems.h> | |||
|
918 | <drvmgr/drvmgr_list.h> | |||
|
919 | <stdint.h> | |||
|
920 | ||||
|
921 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\drvmgr_list.h | |||
|
922 | ||||
|
923 | 1340115166 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\drvmgr_confdefs.h | |||
|
924 | "drvmgr.h" | |||
|
925 |
@@ -0,0 +1,7 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_layout_file> | |||
|
3 | <ActiveTarget name="Debug" /> | |||
|
4 | <File name="..\..\..\..\GAISLER\C\rtems-hello\rtems-hello.c" open="1" top="1" tabpos="1"> | |||
|
5 | <Cursor position="4494" topLine="135" /> | |||
|
6 | </File> | |||
|
7 | </CodeBlocks_layout_file> |
1 | NO CONTENT: new file 100644, binary diff hidden |
|
NO CONTENT: new file 100644, binary diff hidden |
@@ -0,0 +1,47 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_project_file> | |||
|
3 | <FileVersion major="1" minor="6" /> | |||
|
4 | <Project> | |||
|
5 | <Option title="rtems-spwtest-2boards" /> | |||
|
6 | <Option pch_mode="2" /> | |||
|
7 | <Option compiler="sparc_gcc" /> | |||
|
8 | <Build> | |||
|
9 | <Target title="Debug"> | |||
|
10 | <Option output="bin\Debug\rtems-spwtest-2boards" prefix_auto="1" extension_auto="1" /> | |||
|
11 | <Option object_output="obj\Debug\" /> | |||
|
12 | <Option type="1" /> | |||
|
13 | <Option compiler="sparc_rtems_gcc" /> | |||
|
14 | <Compiler> | |||
|
15 | <Add option="-g" /> | |||
|
16 | <Add directory="..\header" /> | |||
|
17 | <Add directory="..\src" /> | |||
|
18 | <Add directory="C:\opt\rtems-4.10-mingw\src\samples" /> | |||
|
19 | <Add directory="C:\opt\rtems-4.10-mingw\sparc-rtems\include" /> | |||
|
20 | <Add directory="C:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include" /> | |||
|
21 | </Compiler> | |||
|
22 | </Target> | |||
|
23 | <Target title="Release"> | |||
|
24 | <Option output="bin\Release\rtems-spwtest-2boards" prefix_auto="1" extension_auto="1" /> | |||
|
25 | <Option object_output="obj\Release\" /> | |||
|
26 | <Option type="1" /> | |||
|
27 | <Option compiler="sparc_gcc" /> | |||
|
28 | <Compiler> | |||
|
29 | <Add option="-O2" /> | |||
|
30 | </Compiler> | |||
|
31 | <Linker> | |||
|
32 | <Add option="-s" /> | |||
|
33 | </Linker> | |||
|
34 | </Target> | |||
|
35 | </Build> | |||
|
36 | <Compiler> | |||
|
37 | <Add option="-Wall" /> | |||
|
38 | </Compiler> | |||
|
39 | <Unit filename="..\src\rtems-spwtest-2boards.c"> | |||
|
40 | <Option compilerVar="CC" /> | |||
|
41 | </Unit> | |||
|
42 | <Extensions> | |||
|
43 | <code_completion /> | |||
|
44 | <debugger /> | |||
|
45 | </Extensions> | |||
|
46 | </Project> | |||
|
47 | </CodeBlocks_project_file> |
This diff has been collapsed as it changes many lines, (1193 lines changed) Show them Hide them | |||||
@@ -0,0 +1,1193 | |||||
|
1 | # depslib dependency file v1.0 | |||
|
2 | 1340118752 source:e:\missions\solo\dev_ple\src\fsw-rtems.c | |||
|
3 | <rtems.h> | |||
|
4 | <bsp.h> | |||
|
5 | <rtems/confdefs.h> | |||
|
6 | <drvmgr/ambapp_bus.h> | |||
|
7 | <drvmgr/drvmgr_confdefs.h> | |||
|
8 | <stdio.h> | |||
|
9 | <stdlib.h> | |||
|
10 | ||||
|
11 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems.h | |||
|
12 | <rtems/system.h> | |||
|
13 | <rtems/rtems/status.h> | |||
|
14 | <rtems/rtems/types.h> | |||
|
15 | <rtems/config.h> | |||
|
16 | <rtems/init.h> | |||
|
17 | <rtems/rtems/options.h> | |||
|
18 | <rtems/rtems/tasks.h> | |||
|
19 | <rtems/rtems/intr.h> | |||
|
20 | <rtems/rtems/barrier.h> | |||
|
21 | <rtems/rtems/cache.h> | |||
|
22 | <rtems/rtems/clock.h> | |||
|
23 | <rtems/extension.h> | |||
|
24 | <rtems/rtems/timer.h> | |||
|
25 | <rtems/rtems/sem.h> | |||
|
26 | <rtems/rtems/message.h> | |||
|
27 | <rtems/rtems/event.h> | |||
|
28 | <rtems/rtems/signal.h> | |||
|
29 | <rtems/rtems/event.h> | |||
|
30 | <rtems/rtems/object.h> | |||
|
31 | <rtems/rtems/part.h> | |||
|
32 | <rtems/rtems/region.h> | |||
|
33 | <rtems/rtems/dpmem.h> | |||
|
34 | <rtems/io.h> | |||
|
35 | <rtems/fatal.h> | |||
|
36 | <rtems/rtems/ratemon.h> | |||
|
37 | <rtems/rtems/mp.h> | |||
|
38 | <rtems/rtems/support.h> | |||
|
39 | <rtems/score/sysstate.h> | |||
|
40 | ||||
|
41 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\system.h | |||
|
42 | <rtems/score/cpuopts.h> | |||
|
43 | <stddef.h> | |||
|
44 | <stdint.h> | |||
|
45 | <rtems/score/cpu.h> | |||
|
46 | ||||
|
47 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\cpuopts.h | |||
|
48 | ||||
|
49 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\stdint.h | |||
|
50 | <limits.h> | |||
|
51 | ||||
|
52 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\limits.h | |||
|
53 | <sys/syslimits.h> | |||
|
54 | ||||
|
55 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\syslimits.h | |||
|
56 | ||||
|
57 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\cpu.h | |||
|
58 | <rtems/score/sparc.h> | |||
|
59 | <rtems/score/types.h> | |||
|
60 | ||||
|
61 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\sparc.h | |||
|
62 | ||||
|
63 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\types.h | |||
|
64 | <stdbool.h> | |||
|
65 | <stdint.h> | |||
|
66 | ||||
|
67 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\status.h | |||
|
68 | <rtems/rtems/status.inl> | |||
|
69 | ||||
|
70 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\status.inl | |||
|
71 | ||||
|
72 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\types.h | |||
|
73 | <stdint.h> | |||
|
74 | <rtems/score/heap.h> | |||
|
75 | <rtems/score/object.h> | |||
|
76 | <rtems/score/priority.h> | |||
|
77 | <rtems/score/tod.h> | |||
|
78 | <rtems/score/watchdog.h> | |||
|
79 | <rtems/rtems/modes.h> | |||
|
80 | <rtems/score/mpci.h> | |||
|
81 | <rtems/score/mppkt.h> | |||
|
82 | ||||
|
83 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\heap.h | |||
|
84 | <rtems/score/heap.inl> | |||
|
85 | <assert.h> | |||
|
86 | ||||
|
87 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\heap.inl | |||
|
88 | <rtems/score/address.h> | |||
|
89 | ||||
|
90 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\address.h | |||
|
91 | <rtems/score/address.inl> | |||
|
92 | ||||
|
93 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\address.inl | |||
|
94 | <rtems/bspIo.h> | |||
|
95 | ||||
|
96 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bspio.h | |||
|
97 | <stdarg.h> | |||
|
98 | ||||
|
99 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\assert.h | |||
|
100 | "_ansi.h" | |||
|
101 | ||||
|
102 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\_ansi.h | |||
|
103 | <newlib.h> | |||
|
104 | <sys/config.h> | |||
|
105 | ||||
|
106 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\newlib.h | |||
|
107 | ||||
|
108 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\config.h | |||
|
109 | <machine/ieeefp.h> | |||
|
110 | <cygwin/config.h> | |||
|
111 | ||||
|
112 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\machine\ieeefp.h | |||
|
113 | ||||
|
114 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\object.h | |||
|
115 | <rtems/score/chain.h> | |||
|
116 | <rtems/score/isr.h> | |||
|
117 | <rtems/score/object.inl> | |||
|
118 | <rtems/score/objectmp.h> | |||
|
119 | ||||
|
120 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\chain.h | |||
|
121 | <rtems/score/address.h> | |||
|
122 | <rtems/score/chain.inl> | |||
|
123 | ||||
|
124 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\chain.inl | |||
|
125 | ||||
|
126 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\isr.h | |||
|
127 | <rtems/score/isr.inl> | |||
|
128 | ||||
|
129 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\isr.inl | |||
|
130 | ||||
|
131 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\object.inl | |||
|
132 | ||||
|
133 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\priority.h | |||
|
134 | <rtems/score/cpu.h> | |||
|
135 | <rtems/score/priority.inl> | |||
|
136 | ||||
|
137 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\priority.inl | |||
|
138 | <rtems/score/bitfield.h> | |||
|
139 | ||||
|
140 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\bitfield.h | |||
|
141 | ||||
|
142 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tod.h | |||
|
143 | <rtems/score/timestamp.h> | |||
|
144 | <time.h> | |||
|
145 | <rtems/score/tod.inl> | |||
|
146 | ||||
|
147 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\timestamp.h | |||
|
148 | <rtems/score/timespec.h> | |||
|
149 | <rtems/score/timestamp64.h> | |||
|
150 | ||||
|
151 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\timespec.h | |||
|
152 | <stdint.h> | |||
|
153 | <time.h> | |||
|
154 | ||||
|
155 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\time.h | |||
|
156 | "_ansi.h" | |||
|
157 | <sys/reent.h> | |||
|
158 | <machine/time.h> | |||
|
159 | <stddef.h> | |||
|
160 | <sys/types.h> | |||
|
161 | <sys/features.h> | |||
|
162 | <cygwin/time.h> | |||
|
163 | <signal.h> | |||
|
164 | ||||
|
165 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\reent.h | |||
|
166 | <_ansi.h> | |||
|
167 | <sys/_types.h> | |||
|
168 | <sys/types.h> | |||
|
169 | <sys/custom_file.h> | |||
|
170 | <assert.h> | |||
|
171 | ||||
|
172 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\_types.h | |||
|
173 | <machine/_types.h> | |||
|
174 | <sys/lock.h> | |||
|
175 | <stddef.h> | |||
|
176 | ||||
|
177 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\machine\_types.h | |||
|
178 | <machine/_default_types.h> | |||
|
179 | ||||
|
180 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\machine\_default_types.h | |||
|
181 | <limits.h> | |||
|
182 | ||||
|
183 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\lock.h | |||
|
184 | <_ansi.h> | |||
|
185 | ||||
|
186 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\types.h | |||
|
187 | <_ansi.h> | |||
|
188 | <machine/_types.h> | |||
|
189 | <sys/_types.h> | |||
|
190 | <stddef.h> | |||
|
191 | <machine/types.h> | |||
|
192 | <sys/features.h> | |||
|
193 | <sys/sched.h> | |||
|
194 | <cygwin/types.h> | |||
|
195 | ||||
|
196 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\machine\types.h | |||
|
197 | <machine/_types.h> | |||
|
198 | ||||
|
199 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\features.h | |||
|
200 | ||||
|
201 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\sched.h | |||
|
202 | ||||
|
203 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\custom_file.h | |||
|
204 | ||||
|
205 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\machine\time.h | |||
|
206 | <sys/types.h> | |||
|
207 | ||||
|
208 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\signal.h | |||
|
209 | "_ansi.h" | |||
|
210 | <sys/signal.h> | |||
|
211 | ||||
|
212 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\signal.h | |||
|
213 | "_ansi.h" | |||
|
214 | <sys/features.h> | |||
|
215 | <sys/types.h> | |||
|
216 | <cygwin/signal.h> | |||
|
217 | <signal.h> | |||
|
218 | ||||
|
219 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\timestamp64.h | |||
|
220 | ||||
|
221 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tod.inl | |||
|
222 | <sys/time.h> | |||
|
223 | <rtems/score/isr.h> | |||
|
224 | ||||
|
225 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\time.h | |||
|
226 | <_ansi.h> | |||
|
227 | <sys/types.h> | |||
|
228 | <cygwin/sys_time.h> | |||
|
229 | ||||
|
230 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\watchdog.h | |||
|
231 | <rtems/score/object.h> | |||
|
232 | <rtems/score/watchdog.inl> | |||
|
233 | ||||
|
234 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\watchdog.inl | |||
|
235 | ||||
|
236 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\modes.h | |||
|
237 | <rtems/score/isr.h> | |||
|
238 | <rtems/rtems/modes.inl> | |||
|
239 | ||||
|
240 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\modes.inl | |||
|
241 | ||||
|
242 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\config.h | |||
|
243 | <rtems/score/object.h> | |||
|
244 | <rtems/posix/config.h> | |||
|
245 | <rtems/itron.h> | |||
|
246 | <rtems/itron/config.h> | |||
|
247 | <rtems/rtems/config.h> | |||
|
248 | <rtems/extension.h> | |||
|
249 | <rtems/io.h> | |||
|
250 | <rtems/score/mpci.h> | |||
|
251 | ||||
|
252 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\config.h | |||
|
253 | ||||
|
254 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\config.h | |||
|
255 | <rtems/rtems/types.h> | |||
|
256 | <rtems/rtems/tasks.h> | |||
|
257 | ||||
|
258 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\tasks.h | |||
|
259 | <rtems/score/object.h> | |||
|
260 | <rtems/score/states.h> | |||
|
261 | <rtems/score/thread.h> | |||
|
262 | <rtems/rtems/types.h> | |||
|
263 | <rtems/rtems/eventset.h> | |||
|
264 | <rtems/rtems/asr.h> | |||
|
265 | <rtems/rtems/attr.h> | |||
|
266 | <rtems/rtems/status.h> | |||
|
267 | <rtems/rtems/tasks.inl> | |||
|
268 | <rtems/rtems/taskmp.h> | |||
|
269 | ||||
|
270 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\states.h | |||
|
271 | <rtems/score/states.inl> | |||
|
272 | ||||
|
273 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\states.inl | |||
|
274 | ||||
|
275 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\thread.h | |||
|
276 | <rtems/score/timestamp.h> | |||
|
277 | <rtems/score/context.h> | |||
|
278 | <rtems/score/cpu.h> | |||
|
279 | <rtems/score/mppkt.h> | |||
|
280 | <rtems/score/object.h> | |||
|
281 | <rtems/score/priority.h> | |||
|
282 | <rtems/score/stack.h> | |||
|
283 | <rtems/score/states.h> | |||
|
284 | <rtems/score/tod.h> | |||
|
285 | <rtems/score/tqdata.h> | |||
|
286 | <rtems/score/watchdog.h> | |||
|
287 | <rtems/score/thread.inl> | |||
|
288 | <rtems/score/threadmp.h> | |||
|
289 | ||||
|
290 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\context.h | |||
|
291 | <rtems/score/cpu.h> | |||
|
292 | ||||
|
293 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\stack.h | |||
|
294 | <rtems/score/stack.inl> | |||
|
295 | ||||
|
296 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\stack.inl | |||
|
297 | ||||
|
298 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tqdata.h | |||
|
299 | <rtems/score/chain.h> | |||
|
300 | <rtems/score/priority.h> | |||
|
301 | <rtems/score/states.h> | |||
|
302 | <rtems/score/threadsync.h> | |||
|
303 | <rtems/score/tqdata.inl> | |||
|
304 | ||||
|
305 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\threadsync.h | |||
|
306 | ||||
|
307 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\tqdata.inl | |||
|
308 | ||||
|
309 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\thread.inl | |||
|
310 | <rtems/score/sysstate.h> | |||
|
311 | <rtems/score/context.h> | |||
|
312 | <rtems/bspIo.h> | |||
|
313 | <rtems/fatal.h> | |||
|
314 | <rtems/stackchk.h> | |||
|
315 | <rtems/score/sysstate.h> | |||
|
316 | <rtems/score/heap.h> | |||
|
317 | ||||
|
318 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\sysstate.h | |||
|
319 | <rtems/score/sysstate.inl> | |||
|
320 | ||||
|
321 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\sysstate.inl | |||
|
322 | ||||
|
323 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\fatal.h | |||
|
324 | ||||
|
325 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\stackchk.h | |||
|
326 | <rtems/bspIo.h> | |||
|
327 | ||||
|
328 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\eventset.h | |||
|
329 | <rtems/rtems/eventset.inl> | |||
|
330 | ||||
|
331 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\eventset.inl | |||
|
332 | ||||
|
333 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\asr.h | |||
|
334 | <rtems/rtems/modes.h> | |||
|
335 | <rtems/rtems/asr.inl> | |||
|
336 | ||||
|
337 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\asr.inl | |||
|
338 | <rtems/score/isr.h> | |||
|
339 | ||||
|
340 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\attr.h | |||
|
341 | <rtems/rtems/attr.inl> | |||
|
342 | ||||
|
343 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\attr.inl | |||
|
344 | ||||
|
345 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\tasks.inl | |||
|
346 | ||||
|
347 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\extension.h | |||
|
348 | <rtems/score/object.h> | |||
|
349 | <rtems/score/userext.h> | |||
|
350 | <rtems/rtems/status.h> | |||
|
351 | <rtems/rtems/types.h> | |||
|
352 | <rtems/extension.inl> | |||
|
353 | ||||
|
354 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\userext.h | |||
|
355 | <rtems/score/interr.h> | |||
|
356 | <rtems/score/chain.h> | |||
|
357 | <rtems/score/thread.h> | |||
|
358 | ||||
|
359 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\interr.h | |||
|
360 | <stdbool.h> | |||
|
361 | <stdint.h> | |||
|
362 | <rtems/system.h> | |||
|
363 | ||||
|
364 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\extension.inl | |||
|
365 | ||||
|
366 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\io.h | |||
|
367 | <rtems/rtems/status.h> | |||
|
368 | ||||
|
369 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\init.h | |||
|
370 | <rtems/rtems/types.h> | |||
|
371 | <rtems/config.h> | |||
|
372 | <rtems/rtems/intr.h> | |||
|
373 | ||||
|
374 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\intr.h | |||
|
375 | <rtems/score/isr.h> | |||
|
376 | ||||
|
377 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\options.h | |||
|
378 | <rtems/rtems/options.inl> | |||
|
379 | ||||
|
380 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\options.inl | |||
|
381 | ||||
|
382 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\barrier.h | |||
|
383 | <rtems/rtems/types.h> | |||
|
384 | <rtems/rtems/support.h> | |||
|
385 | <rtems/rtems/attr.h> | |||
|
386 | <rtems/rtems/status.h> | |||
|
387 | <rtems/score/object.h> | |||
|
388 | <rtems/score/corebarrier.h> | |||
|
389 | <rtems/rtems/barrier.inl> | |||
|
390 | ||||
|
391 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\support.h | |||
|
392 | <rtems/rtems/types.h> | |||
|
393 | <rtems/rtems/support.inl> | |||
|
394 | ||||
|
395 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\support.inl | |||
|
396 | ||||
|
397 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corebarrier.h | |||
|
398 | <rtems/score/thread.h> | |||
|
399 | <rtems/score/threadq.h> | |||
|
400 | <rtems/score/priority.h> | |||
|
401 | <rtems/score/watchdog.h> | |||
|
402 | <rtems/score/corebarrier.inl> | |||
|
403 | ||||
|
404 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\threadq.h | |||
|
405 | <rtems/score/tqdata.h> | |||
|
406 | <rtems/score/object.h> | |||
|
407 | <rtems/score/thread.h> | |||
|
408 | <rtems/score/watchdog.h> | |||
|
409 | <rtems/score/threadq.inl> | |||
|
410 | ||||
|
411 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\threadq.inl | |||
|
412 | <rtems/score/thread.h> | |||
|
413 | ||||
|
414 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corebarrier.inl | |||
|
415 | <rtems/score/thread.h> | |||
|
416 | <rtems/score/threadq.h> | |||
|
417 | ||||
|
418 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\barrier.inl | |||
|
419 | ||||
|
420 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\cache.h | |||
|
421 | <rtems/system.h> | |||
|
422 | <sys/types.h> | |||
|
423 | ||||
|
424 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\clock.h | |||
|
425 | <rtems/score/tod.h> | |||
|
426 | <rtems/score/watchdog.h> | |||
|
427 | <rtems/rtems/status.h> | |||
|
428 | <rtems/rtems/types.h> | |||
|
429 | <sys/time.h> | |||
|
430 | ||||
|
431 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\timer.h | |||
|
432 | <rtems/score/object.h> | |||
|
433 | <rtems/score/watchdog.h> | |||
|
434 | <rtems/score/thread.h> | |||
|
435 | <rtems/score/chain.h> | |||
|
436 | <rtems/rtems/clock.h> | |||
|
437 | <rtems/rtems/attr.h> | |||
|
438 | <rtems/rtems/timer.inl> | |||
|
439 | ||||
|
440 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\timer.inl | |||
|
441 | ||||
|
442 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\sem.h | |||
|
443 | <rtems/rtems/types.h> | |||
|
444 | <rtems/rtems/options.h> | |||
|
445 | <rtems/rtems/support.h> | |||
|
446 | <rtems/rtems/tasks.h> | |||
|
447 | <rtems/rtems/attr.h> | |||
|
448 | <rtems/score/coremutex.h> | |||
|
449 | <rtems/score/object.h> | |||
|
450 | <rtems/score/coresem.h> | |||
|
451 | <rtems/rtems/sem.inl> | |||
|
452 | <rtems/rtems/semmp.h> | |||
|
453 | ||||
|
454 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremutex.h | |||
|
455 | <rtems/score/thread.h> | |||
|
456 | <rtems/score/threadq.h> | |||
|
457 | <rtems/score/priority.h> | |||
|
458 | <rtems/score/watchdog.h> | |||
|
459 | <rtems/score/interr.h> | |||
|
460 | <rtems/score/sysstate.h> | |||
|
461 | <rtems/score/coremutex.inl> | |||
|
462 | ||||
|
463 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremutex.inl | |||
|
464 | ||||
|
465 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coresem.h | |||
|
466 | <rtems/score/thread.h> | |||
|
467 | <rtems/score/threadq.h> | |||
|
468 | <rtems/score/priority.h> | |||
|
469 | <rtems/score/watchdog.h> | |||
|
470 | <rtems/score/coresem.inl> | |||
|
471 | ||||
|
472 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coresem.inl | |||
|
473 | <rtems/score/thread.h> | |||
|
474 | <rtems/score/threadq.h> | |||
|
475 | ||||
|
476 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\sem.inl | |||
|
477 | ||||
|
478 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\message.h | |||
|
479 | <rtems/rtems/types.h> | |||
|
480 | <rtems/rtems/status.h> | |||
|
481 | <rtems/rtems/options.h> | |||
|
482 | <rtems/score/chain.h> | |||
|
483 | <rtems/score/object.h> | |||
|
484 | <rtems/rtems/attr.h> | |||
|
485 | <rtems/score/coremsg.h> | |||
|
486 | <rtems/rtems/message.inl> | |||
|
487 | <rtems/rtems/msgmp.h> | |||
|
488 | ||||
|
489 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremsg.h | |||
|
490 | <limits.h> | |||
|
491 | <rtems/score/thread.h> | |||
|
492 | <rtems/score/threadq.h> | |||
|
493 | <rtems/score/priority.h> | |||
|
494 | <rtems/score/watchdog.h> | |||
|
495 | <rtems/score/coremsg.inl> | |||
|
496 | ||||
|
497 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\coremsg.inl | |||
|
498 | <string.h> | |||
|
499 | ||||
|
500 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\string.h | |||
|
501 | "_ansi.h" | |||
|
502 | <sys/reent.h> | |||
|
503 | <stddef.h> | |||
|
504 | <sys/string.h> | |||
|
505 | ||||
|
506 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\string.h | |||
|
507 | ||||
|
508 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\message.inl | |||
|
509 | <rtems/score/wkspace.h> | |||
|
510 | ||||
|
511 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\wkspace.h | |||
|
512 | <rtems/score/heap.h> | |||
|
513 | <rtems/score/interr.h> | |||
|
514 | <rtems/score/wkspace.inl> | |||
|
515 | ||||
|
516 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\wkspace.inl | |||
|
517 | ||||
|
518 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\event.h | |||
|
519 | <rtems/score/object.h> | |||
|
520 | <rtems/rtems/status.h> | |||
|
521 | <rtems/rtems/types.h> | |||
|
522 | <rtems/rtems/options.h> | |||
|
523 | <rtems/score/thread.h> | |||
|
524 | <rtems/score/threadsync.h> | |||
|
525 | <rtems/score/watchdog.h> | |||
|
526 | <rtems/rtems/eventset.h> | |||
|
527 | <rtems/rtems/eventmp.h> | |||
|
528 | <rtems/rtems/event.inl> | |||
|
529 | ||||
|
530 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\event.inl | |||
|
531 | ||||
|
532 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\signal.h | |||
|
533 | <rtems/rtems/asr.h> | |||
|
534 | <rtems/rtems/modes.h> | |||
|
535 | <rtems/score/object.h> | |||
|
536 | <rtems/rtems/status.h> | |||
|
537 | <rtems/rtems/types.h> | |||
|
538 | <rtems/rtems/signalmp.h> | |||
|
539 | ||||
|
540 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\object.h | |||
|
541 | <stdint.h> | |||
|
542 | <rtems/score/object.h> | |||
|
543 | <rtems/rtems/status.h> | |||
|
544 | <rtems/rtems/types.h> | |||
|
545 | ||||
|
546 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\part.h | |||
|
547 | <rtems/score/address.h> | |||
|
548 | <rtems/score/object.h> | |||
|
549 | <rtems/rtems/attr.h> | |||
|
550 | <rtems/rtems/status.h> | |||
|
551 | <rtems/rtems/support.h> | |||
|
552 | <rtems/rtems/types.h> | |||
|
553 | <rtems/rtems/part.inl> | |||
|
554 | <rtems/rtems/partmp.h> | |||
|
555 | ||||
|
556 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\part.inl | |||
|
557 | ||||
|
558 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\region.h | |||
|
559 | <rtems/score/object.h> | |||
|
560 | <rtems/score/threadq.h> | |||
|
561 | <rtems/score/heap.h> | |||
|
562 | <rtems/debug.h> | |||
|
563 | <rtems/rtems/attr.h> | |||
|
564 | <rtems/rtems/options.h> | |||
|
565 | <rtems/rtems/status.h> | |||
|
566 | <rtems/rtems/support.h> | |||
|
567 | <rtems/rtems/types.h> | |||
|
568 | <rtems/rtems/region.inl> | |||
|
569 | <rtems/rtems/regionmp.h> | |||
|
570 | ||||
|
571 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\debug.h | |||
|
572 | ||||
|
573 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\region.inl | |||
|
574 | ||||
|
575 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\dpmem.h | |||
|
576 | <rtems/score/object.h> | |||
|
577 | <rtems/rtems/support.h> | |||
|
578 | <rtems/rtems/status.h> | |||
|
579 | <rtems/rtems/dpmem.inl> | |||
|
580 | ||||
|
581 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\dpmem.inl | |||
|
582 | ||||
|
583 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\ratemon.h | |||
|
584 | <rtems/bspIo.h> | |||
|
585 | <rtems/score/timespec.h> | |||
|
586 | <rtems/score/timestamp.h> | |||
|
587 | <rtems/score/object.h> | |||
|
588 | <rtems/score/thread.h> | |||
|
589 | <rtems/score/watchdog.h> | |||
|
590 | <rtems/rtems/status.h> | |||
|
591 | <rtems/rtems/support.h> | |||
|
592 | <string.h> | |||
|
593 | <rtems/rtems/ratemon.inl> | |||
|
594 | ||||
|
595 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems\ratemon.inl | |||
|
596 | ||||
|
597 | 1340118762 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\bsp.h | |||
|
598 | <bspopts.h> | |||
|
599 | <rtems.h> | |||
|
600 | <leon.h> | |||
|
601 | <rtems/clockdrv.h> | |||
|
602 | <rtems/console.h> | |||
|
603 | <rtems/irq-extension.h> | |||
|
604 | ||||
|
605 | 1340118762 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\bspopts.h | |||
|
606 | ||||
|
607 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\leon.h | |||
|
608 | <rtems/score/sparc.h> | |||
|
609 | <amba.h> | |||
|
610 | ||||
|
611 | 1340118762 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\amba.h | |||
|
612 | <ambapp.h> | |||
|
613 | <grlib.h> | |||
|
614 | ||||
|
615 | 1340118762 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\ambapp.h | |||
|
616 | <ambapp_ids.h> | |||
|
617 | ||||
|
618 | 1340118762 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\ambapp_ids.h | |||
|
619 | ||||
|
620 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\grlib.h | |||
|
621 | ||||
|
622 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\clockdrv.h | |||
|
623 | ||||
|
624 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\console.h | |||
|
625 | ||||
|
626 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\irq-extension.h | |||
|
627 | <rtems.h> | |||
|
628 | ||||
|
629 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\confdefs.h | |||
|
630 | <rtems.h> | |||
|
631 | <rtems/score/apimutex.h> | |||
|
632 | <rtems/libio.h> | |||
|
633 | <rtems/imfs.h> | |||
|
634 | <rtems/devfs.h> | |||
|
635 | <rtems/ftpfs.h> | |||
|
636 | <rtems/tftp.h> | |||
|
637 | <librtemsNfs.h> | |||
|
638 | <rtems/dosfs.h> | |||
|
639 | <rtems/rtems-rfs.h> | |||
|
640 | <rtems/devfs.h> | |||
|
641 | <rtems/malloc.h> | |||
|
642 | <rtems/score/wkspace.h> | |||
|
643 | <rtems/console.h> | |||
|
644 | <rtems/clockdrv.h> | |||
|
645 | <rtems/timerdrv.h> | |||
|
646 | <rtems/rtc.h> | |||
|
647 | <rtems/watchdogdrv.h> | |||
|
648 | <rtems/framebuffer.h> | |||
|
649 | <rtems/devnull.h> | |||
|
650 | <libchip/ide_ctrl.h> | |||
|
651 | <libchip/ata.h> | |||
|
652 | <rtems/bdbuf.h> | |||
|
653 | <mpci.h> | |||
|
654 | <rtems/stackchk.h> | |||
|
655 | <rtems/libcsupport.h> | |||
|
656 | <sys/types.h> | |||
|
657 | <signal.h> | |||
|
658 | <limits.h> | |||
|
659 | <mqueue.h> | |||
|
660 | <rtems/posix/barrier.h> | |||
|
661 | <rtems/posix/cond.h> | |||
|
662 | <rtems/posix/mqueue.h> | |||
|
663 | <rtems/posix/mutex.h> | |||
|
664 | <rtems/posix/key.h> | |||
|
665 | <rtems/posix/psignal.h> | |||
|
666 | <rtems/posix/rwlock.h> | |||
|
667 | <rtems/posix/semaphore.h> | |||
|
668 | <rtems/posix/spinlock.h> | |||
|
669 | <rtems/posix/threadsup.h> | |||
|
670 | <rtems/posix/timer.h> | |||
|
671 | <rtems/itron.h> | |||
|
672 | <rtems/itron/config.h> | |||
|
673 | <rtems/itron/eventflags.h> | |||
|
674 | <rtems/itron/fmempool.h> | |||
|
675 | <rtems/itron/mbox.h> | |||
|
676 | <rtems/itron/msgbuffer.h> | |||
|
677 | <rtems/itron/port.h> | |||
|
678 | <rtems/itron/semaphore.h> | |||
|
679 | <rtems/itron/task.h> | |||
|
680 | <rtems/itron/vmempool.h> | |||
|
681 | <reent.h> | |||
|
682 | <pci/cfg.h> | |||
|
683 | <pci/cfg.h> | |||
|
684 | <pci/cfg.h> | |||
|
685 | ||||
|
686 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\apimutex.h | |||
|
687 | <rtems/score/coremutex.h> | |||
|
688 | <rtems/score/isr.h> | |||
|
689 | <rtems/score/object.h> | |||
|
690 | ||||
|
691 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\libio.h | |||
|
692 | <sys/types.h> | |||
|
693 | <sys/stat.h> | |||
|
694 | <sys/ioctl.h> | |||
|
695 | <sys/statvfs.h> | |||
|
696 | <unistd.h> | |||
|
697 | <termios.h> | |||
|
698 | <rtems.h> | |||
|
699 | <rtems/fs.h> | |||
|
700 | <rtems/chain.h> | |||
|
701 | ||||
|
702 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\stat.h | |||
|
703 | <_ansi.h> | |||
|
704 | <time.h> | |||
|
705 | <sys/types.h> | |||
|
706 | <cygwin/stat.h> | |||
|
707 | ||||
|
708 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\ioctl.h | |||
|
709 | <sys/ttycom.h> | |||
|
710 | <sys/ioccom.h> | |||
|
711 | <sys/filio.h> | |||
|
712 | <sys/sockio.h> | |||
|
713 | ||||
|
714 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\ttycom.h | |||
|
715 | <sys/ioccom.h> | |||
|
716 | ||||
|
717 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\ioccom.h | |||
|
718 | <sys/types.h> | |||
|
719 | <rtems/bsd/sys/cdefs.h> | |||
|
720 | ||||
|
721 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bsd\sys\cdefs.h | |||
|
722 | ||||
|
723 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\filio.h | |||
|
724 | <sys/ioccom.h> | |||
|
725 | ||||
|
726 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\sockio.h | |||
|
727 | <sys/ioccom.h> | |||
|
728 | ||||
|
729 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\statvfs.h | |||
|
730 | <sys/cdefs.h> | |||
|
731 | <stdint.h> | |||
|
732 | ||||
|
733 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\cdefs.h | |||
|
734 | ||||
|
735 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\unistd.h | |||
|
736 | <sys/unistd.h> | |||
|
737 | ||||
|
738 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\unistd.h | |||
|
739 | <_ansi.h> | |||
|
740 | <sys/types.h> | |||
|
741 | <sys/_types.h> | |||
|
742 | <stddef.h> | |||
|
743 | <getopt.h> | |||
|
744 | <sys/features.h> | |||
|
745 | ||||
|
746 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\getopt.h | |||
|
747 | <_ansi.h> | |||
|
748 | ||||
|
749 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\termios.h | |||
|
750 | <sys/termios.h> | |||
|
751 | ||||
|
752 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\sys\termios.h | |||
|
753 | <sys/types.h> | |||
|
754 | ||||
|
755 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\fs.h | |||
|
756 | ||||
|
757 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\chain.h | |||
|
758 | <rtems/system.h> | |||
|
759 | <rtems/score/chain.h> | |||
|
760 | <rtems/chain.inl> | |||
|
761 | ||||
|
762 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\chain.inl | |||
|
763 | <rtems/score/chain.inl> | |||
|
764 | ||||
|
765 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\imfs.h | |||
|
766 | <rtems.h> | |||
|
767 | <rtems/chain.h> | |||
|
768 | <sys/types.h> | |||
|
769 | <limits.h> | |||
|
770 | <rtems/libio.h> | |||
|
771 | <rtems/pipe.h> | |||
|
772 | ||||
|
773 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\pipe.h | |||
|
774 | <rtems/libio.h> | |||
|
775 | ||||
|
776 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\devfs.h | |||
|
777 | <rtems/libio_.h> | |||
|
778 | ||||
|
779 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\libio_.h | |||
|
780 | <rtems.h> | |||
|
781 | <rtems/libio.h> | |||
|
782 | <sys/types.h> | |||
|
783 | <errno.h> | |||
|
784 | <rtems/userenv.h> | |||
|
785 | ||||
|
786 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\errno.h | |||
|
787 | <sys/errno.h> | |||
|
788 | ||||
|
789 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\errno.h | |||
|
790 | <sys/reent.h> | |||
|
791 | ||||
|
792 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\userenv.h | |||
|
793 | <rtems.h> | |||
|
794 | <rtems/fs.h> | |||
|
795 | <limits.h> | |||
|
796 | ||||
|
797 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\ftpfs.h | |||
|
798 | <sys/time.h> | |||
|
799 | <sys/ioctl.h> | |||
|
800 | <rtems/libio.h> | |||
|
801 | ||||
|
802 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\tftp.h | |||
|
803 | <rtems/libio.h> | |||
|
804 | ||||
|
805 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\librtemsnfs.h | |||
|
806 | <config.h> | |||
|
807 | <rtems.h> | |||
|
808 | <rtems/libio.h> | |||
|
809 | <rtems/libio_.h> | |||
|
810 | <rtems/seterr.h> | |||
|
811 | <string.h> | |||
|
812 | <stdio.h> | |||
|
813 | <stdlib.h> | |||
|
814 | <assert.h> | |||
|
815 | <sys/stat.h> | |||
|
816 | <dirent.h> | |||
|
817 | <netdb.h> | |||
|
818 | <ctype.h> | |||
|
819 | <netinet/in.h> | |||
|
820 | <arpa/inet.h> | |||
|
821 | "rpcio.h" | |||
|
822 | ||||
|
823 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\seterr.h | |||
|
824 | ||||
|
825 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\stdio.h | |||
|
826 | "_ansi.h" | |||
|
827 | <stddef.h> | |||
|
828 | <stdarg.h> | |||
|
829 | <sys/reent.h> | |||
|
830 | <sys/types.h> | |||
|
831 | <sys/stdio.h> | |||
|
832 | ||||
|
833 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\stdio.h | |||
|
834 | <sys/lock.h> | |||
|
835 | <sys/reent.h> | |||
|
836 | ||||
|
837 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\stdlib.h | |||
|
838 | <machine/ieeefp.h> | |||
|
839 | "_ansi.h" | |||
|
840 | <stddef.h> | |||
|
841 | <sys/reent.h> | |||
|
842 | <machine/stdlib.h> | |||
|
843 | <alloca.h> | |||
|
844 | <cygwin/stdlib.h> | |||
|
845 | ||||
|
846 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\machine\stdlib.h | |||
|
847 | ||||
|
848 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\alloca.h | |||
|
849 | "_ansi.h" | |||
|
850 | <sys/reent.h> | |||
|
851 | ||||
|
852 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\dirent.h | |||
|
853 | <sys/dirent.h> | |||
|
854 | ||||
|
855 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\dirent.h | |||
|
856 | <sys/types.h> | |||
|
857 | <limits.h> | |||
|
858 | ||||
|
859 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\netdb.h | |||
|
860 | <rtems/bsd/sys/cdefs.h> | |||
|
861 | <rtems/bsdnet/_types.h> | |||
|
862 | ||||
|
863 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bsdnet\_types.h | |||
|
864 | <stdint.h> | |||
|
865 | ||||
|
866 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\ctype.h | |||
|
867 | "_ansi.h" | |||
|
868 | ||||
|
869 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\netinet\in.h | |||
|
870 | <rtems/bsdnet/_types.h> | |||
|
871 | <rtems/endian.h> | |||
|
872 | ||||
|
873 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\endian.h | |||
|
874 | <rtems.h> | |||
|
875 | ||||
|
876 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\arpa\inet.h | |||
|
877 | <rtems/bsd/sys/cdefs.h> | |||
|
878 | <rtems/bsdnet/_types.h> | |||
|
879 | <rtems/endian.h> | |||
|
880 | ||||
|
881 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\dosfs.h | |||
|
882 | <rtems.h> | |||
|
883 | <rtems/libio.h> | |||
|
884 | ||||
|
885 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems-rfs.h | |||
|
886 | <rtems.h> | |||
|
887 | <rtems/fs.h> | |||
|
888 | ||||
|
889 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\malloc.h | |||
|
890 | <rtems.h> | |||
|
891 | <rtems/bspIo.h> | |||
|
892 | <stdint.h> | |||
|
893 | ||||
|
894 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\timerdrv.h | |||
|
895 | ||||
|
896 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtc.h | |||
|
897 | <rtems.h> | |||
|
898 | ||||
|
899 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\framebuffer.h | |||
|
900 | ||||
|
901 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\devnull.h | |||
|
902 | ||||
|
903 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\libchip\ide_ctrl.h | |||
|
904 | ||||
|
905 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\libchip\ata.h | |||
|
906 | <rtems.h> | |||
|
907 | <sys/ioctl.h> | |||
|
908 | <rtems/blkdev.h> | |||
|
909 | ||||
|
910 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\blkdev.h | |||
|
911 | <rtems.h> | |||
|
912 | <rtems/diskdevs.h> | |||
|
913 | <sys/ioctl.h> | |||
|
914 | ||||
|
915 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\diskdevs.h | |||
|
916 | <rtems.h> | |||
|
917 | <rtems/libio.h> | |||
|
918 | <stdlib.h> | |||
|
919 | ||||
|
920 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\bdbuf.h | |||
|
921 | <rtems.h> | |||
|
922 | <rtems/libio.h> | |||
|
923 | <rtems/chain.h> | |||
|
924 | <rtems/blkdev.h> | |||
|
925 | <rtems/diskdevs.h> | |||
|
926 | ||||
|
927 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\libcsupport.h | |||
|
928 | <sys/types.h> | |||
|
929 | <stdint.h> | |||
|
930 | ||||
|
931 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\mqueue.h | |||
|
932 | <unistd.h> | |||
|
933 | <sys/types.h> | |||
|
934 | <rtems/system.h> | |||
|
935 | <rtems/score/object.h> | |||
|
936 | <time.h> | |||
|
937 | ||||
|
938 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\barrier.h | |||
|
939 | <rtems/score/object.h> | |||
|
940 | <rtems/score/corebarrier.h> | |||
|
941 | <rtems/posix/barrier.inl> | |||
|
942 | ||||
|
943 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\barrier.inl | |||
|
944 | <pthread.h> | |||
|
945 | ||||
|
946 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\pthread.h | |||
|
947 | <unistd.h> | |||
|
948 | <sys/types.h> | |||
|
949 | <time.h> | |||
|
950 | <sys/sched.h> | |||
|
951 | ||||
|
952 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\cond.h | |||
|
953 | <rtems/score/object.h> | |||
|
954 | <rtems/score/threadq.h> | |||
|
955 | <rtems/posix/cond.inl> | |||
|
956 | ||||
|
957 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\cond.inl | |||
|
958 | <pthread.h> | |||
|
959 | ||||
|
960 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mqueue.h | |||
|
961 | <signal.h> | |||
|
962 | <rtems/score/coremsg.h> | |||
|
963 | <rtems/score/object.h> | |||
|
964 | <rtems/posix/mqueue.inl> | |||
|
965 | ||||
|
966 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mqueue.inl | |||
|
967 | ||||
|
968 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mutex.h | |||
|
969 | <rtems/score/coremutex.h> | |||
|
970 | <pthread.h> | |||
|
971 | <rtems/posix/mutex.inl> | |||
|
972 | ||||
|
973 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\mutex.inl | |||
|
974 | ||||
|
975 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\key.h | |||
|
976 | <rtems/posix/key.inl> | |||
|
977 | ||||
|
978 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\key.inl | |||
|
979 | ||||
|
980 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\psignal.h | |||
|
981 | <rtems/posix/pthread.h> | |||
|
982 | <rtems/posix/sigset.h> | |||
|
983 | ||||
|
984 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\pthread.h | |||
|
985 | <rtems/posix/config.h> | |||
|
986 | <rtems/posix/threadsup.h> | |||
|
987 | <rtems/posix/pthread.inl> | |||
|
988 | ||||
|
989 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\threadsup.h | |||
|
990 | <sys/signal.h> | |||
|
991 | <rtems/score/coresem.h> | |||
|
992 | <rtems/score/tqdata.h> | |||
|
993 | ||||
|
994 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\pthread.inl | |||
|
995 | ||||
|
996 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\sigset.h | |||
|
997 | <signal.h> | |||
|
998 | ||||
|
999 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\rwlock.h | |||
|
1000 | <rtems/score/object.h> | |||
|
1001 | <rtems/score/corerwlock.h> | |||
|
1002 | <rtems/posix/rwlock.inl> | |||
|
1003 | ||||
|
1004 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corerwlock.h | |||
|
1005 | <rtems/score/thread.h> | |||
|
1006 | <rtems/score/threadq.h> | |||
|
1007 | <rtems/score/priority.h> | |||
|
1008 | <rtems/score/watchdog.h> | |||
|
1009 | <rtems/score/corerwlock.inl> | |||
|
1010 | ||||
|
1011 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corerwlock.inl | |||
|
1012 | <rtems/score/thread.h> | |||
|
1013 | <rtems/score/threadq.h> | |||
|
1014 | ||||
|
1015 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\rwlock.inl | |||
|
1016 | <pthread.h> | |||
|
1017 | ||||
|
1018 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\semaphore.h | |||
|
1019 | <semaphore.h> | |||
|
1020 | <rtems/score/coresem.h> | |||
|
1021 | <rtems/posix/semaphore.inl> | |||
|
1022 | ||||
|
1023 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\semaphore.h | |||
|
1024 | <unistd.h> | |||
|
1025 | <sys/time.h> | |||
|
1026 | ||||
|
1027 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\semaphore.inl | |||
|
1028 | ||||
|
1029 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\spinlock.h | |||
|
1030 | <rtems/score/object.h> | |||
|
1031 | <rtems/score/corespinlock.h> | |||
|
1032 | <rtems/posix/spinlock.inl> | |||
|
1033 | ||||
|
1034 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corespinlock.h | |||
|
1035 | <rtems/score/thread.h> | |||
|
1036 | <rtems/score/thread.h> | |||
|
1037 | <rtems/score/priority.h> | |||
|
1038 | <rtems/score/corespinlock.inl> | |||
|
1039 | ||||
|
1040 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\score\corespinlock.inl | |||
|
1041 | ||||
|
1042 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\spinlock.inl | |||
|
1043 | <pthread.h> | |||
|
1044 | ||||
|
1045 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\timer.h | |||
|
1046 | <rtems/posix/config.h> | |||
|
1047 | <rtems/score/object.h> | |||
|
1048 | <rtems/posix/timer.inl> | |||
|
1049 | ||||
|
1050 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\posix\timer.inl | |||
|
1051 | ||||
|
1052 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\reent.h | |||
|
1053 | <sys/reent.h> | |||
|
1054 | <sys/_types.h> | |||
|
1055 | <machine/types.h> | |||
|
1056 | <stddef.h> | |||
|
1057 | ||||
|
1058 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg.h | |||
|
1059 | <pci.h> | |||
|
1060 | <pci/cfg_auto.h> | |||
|
1061 | <pci/cfg_static.h> | |||
|
1062 | <pci/cfg_read.h> | |||
|
1063 | <pci/cfg_peripheral.h> | |||
|
1064 | ||||
|
1065 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci.h | |||
|
1066 | <pci/ids.h> | |||
|
1067 | <pci/access.h> | |||
|
1068 | ||||
|
1069 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\ids.h | |||
|
1070 | <pci/ids_extra.h> | |||
|
1071 | ||||
|
1072 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\ids_extra.h | |||
|
1073 | ||||
|
1074 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\access.h | |||
|
1075 | <stdint.h> | |||
|
1076 | <libcpu/byteorder.h> | |||
|
1077 | <pci.h> | |||
|
1078 | <bsp.h> | |||
|
1079 | ||||
|
1080 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\libcpu\byteorder.h | |||
|
1081 | <rtems/system.h> | |||
|
1082 | <rtems/score/cpu.h> | |||
|
1083 | ||||
|
1084 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_auto.h | |||
|
1085 | ||||
|
1086 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_static.h | |||
|
1087 | ||||
|
1088 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_read.h | |||
|
1089 | ||||
|
1090 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\pci\cfg_peripheral.h | |||
|
1091 | ||||
|
1092 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\ambapp_bus.h | |||
|
1093 | <drvmgr/drvmgr.h> | |||
|
1094 | <ambapp.h> | |||
|
1095 | ||||
|
1096 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\drvmgr.h | |||
|
1097 | <rtems.h> | |||
|
1098 | <drvmgr/drvmgr_list.h> | |||
|
1099 | <stdint.h> | |||
|
1100 | ||||
|
1101 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\drvmgr_list.h | |||
|
1102 | ||||
|
1103 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\drvmgr_confdefs.h | |||
|
1104 | "drvmgr.h" | |||
|
1105 | ||||
|
1106 | 1351151480 source:e:\missions\solo\dev_ple\src\rtems-spwtest-2boards.c | |||
|
1107 | <bsp.h> | |||
|
1108 | <rtems/confdefs.h> | |||
|
1109 | <drvmgr/drvmgr_confdefs.h> | |||
|
1110 | <rtems.h> | |||
|
1111 | <errno.h> | |||
|
1112 | <sys/types.h> | |||
|
1113 | <sys/stat.h> | |||
|
1114 | <fcntl.h> | |||
|
1115 | <stdio.h> | |||
|
1116 | <stdlib.h> | |||
|
1117 | "config.c" | |||
|
1118 | <grspw.h> | |||
|
1119 | ||||
|
1120 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\fcntl.h | |||
|
1121 | <sys/fcntl.h> | |||
|
1122 | ||||
|
1123 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\fcntl.h | |||
|
1124 | <sys/_default_fcntl.h> | |||
|
1125 | ||||
|
1126 | 1340118770 c:\opt\rtems-4.10-mingw\sparc-rtems\include\sys\_default_fcntl.h | |||
|
1127 | <_ansi.h> | |||
|
1128 | <sys/types.h> | |||
|
1129 | <sys/stat.h> | |||
|
1130 | <sys/time.h> | |||
|
1131 | ||||
|
1132 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\config.c | |||
|
1133 | <network_interface_add.h> | |||
|
1134 | "networkconfig.h" | |||
|
1135 | "config_leon3_drvmgr.c" | |||
|
1136 | "config_leon2_grlib_drvmgr.c" | |||
|
1137 | "config_leon2_drvmgr.c" | |||
|
1138 | "config_pci.c" | |||
|
1139 | "config_gr_rasta_io.c" | |||
|
1140 | "config_spw_bus.c" | |||
|
1141 | <stdlib.h> | |||
|
1142 | ||||
|
1143 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\network_interface_add.h | |||
|
1144 | <rtems/rtems_bsdnet.h> | |||
|
1145 | ||||
|
1146 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\rtems\rtems_bsdnet.h | |||
|
1147 | <rtems.h> | |||
|
1148 | ||||
|
1149 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\networkconfig.h | |||
|
1150 | <network_interface_add.h> | |||
|
1151 | ||||
|
1152 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\config_leon3_drvmgr.c | |||
|
1153 | <drvmgr/ambapp_bus_grlib.h> | |||
|
1154 | <drvmgr/ambapp_bus.h> | |||
|
1155 | <ambapp_ids.h> | |||
|
1156 | ||||
|
1157 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\ambapp_bus_grlib.h | |||
|
1158 | ||||
|
1159 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\config_leon2_grlib_drvmgr.c | |||
|
1160 | <drvmgr/leon2_amba_bus.h> | |||
|
1161 | <drvmgr/ambapp_bus.h> | |||
|
1162 | ||||
|
1163 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\config_leon2_drvmgr.c | |||
|
1164 | <drvmgr/leon2_amba_bus.h> | |||
|
1165 | ||||
|
1166 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\config_pci.c | |||
|
1167 | <drvmgr/pci_bus.h> | |||
|
1168 | ||||
|
1169 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\pci_bus.h | |||
|
1170 | <drvmgr/drvmgr.h> | |||
|
1171 | <pci.h> | |||
|
1172 | <pci/access.h> | |||
|
1173 | ||||
|
1174 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\config_gr_rasta_io.c | |||
|
1175 | <gr_rasta_io.h> | |||
|
1176 | <drvmgr/ambapp_bus.h> | |||
|
1177 | ||||
|
1178 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\gr_rasta_io.h | |||
|
1179 | <drvmgr/drvmgr.h> | |||
|
1180 | ||||
|
1181 | 1340118752 c:\opt\rtems-4.10-mingw\src\samples\config_spw_bus.c | |||
|
1182 | <drvmgr/drvmgr.h> | |||
|
1183 | <drvmgr/spw_bus.h> | |||
|
1184 | ||||
|
1185 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\spw_bus.h | |||
|
1186 | <drvmgr/drvmgr.h> | |||
|
1187 | <drvmgr/spw_bus_ids.h> | |||
|
1188 | ||||
|
1189 | 1340118766 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\drvmgr\spw_bus_ids.h | |||
|
1190 | ||||
|
1191 | 1340118764 c:\opt\rtems-4.10-mingw\sparc-rtems\leon3\lib\include\grspw.h | |||
|
1192 | <ambapp.h> | |||
|
1193 |
@@ -0,0 +1,7 | |||||
|
1 | <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> | |||
|
2 | <CodeBlocks_layout_file> | |||
|
3 | <ActiveTarget name="Debug" /> | |||
|
4 | <File name="..\src\rtems-spwtest-2boards.c" open="1" top="0" tabpos="1"> | |||
|
5 | <Cursor position="2987" topLine="136" /> | |||
|
6 | </File> | |||
|
7 | </CodeBlocks_layout_file> |
@@ -0,0 +1,1 | |||||
|
1 | grmon -gresb -ip 129.104.27.250 -dna 0xfe -sna 32 -link 0 |
@@ -0,0 +1,1 | |||||
|
1 | grmon -gresb -ip 129.104.27.118 -dna 0xfe -sna 32 -link 0 -u |
@@ -0,0 +1,53 | |||||
|
1 | #include <drvmgr/ambapp_bus.h> | |||
|
2 | ||||
|
3 | // GRSPW0 resources | |||
|
4 | struct drvmgr_key grlib_grspw_0n1_res[] = { | |||
|
5 | {"txBdCnt", KEY_TYPE_INT, {(unsigned int)10}}, | |||
|
6 | {"rxBdCnt", KEY_TYPE_INT, {(unsigned int)10}}, | |||
|
7 | {"txDataSize", KEY_TYPE_INT, {(unsigned int)48+4}}, | |||
|
8 | {"txHdrSize", KEY_TYPE_INT, {(unsigned int)10}}, | |||
|
9 | {"rxPktSize", KEY_TYPE_INT, {(unsigned int)248+4}}, | |||
|
10 | KEY_EMPTY | |||
|
11 | }; | |||
|
12 | ||||
|
13 | #if 0 | |||
|
14 | /* APBUART0 */ | |||
|
15 | struct drvmgr_key grlib_drv_res_apbuart0[] = | |||
|
16 | { | |||
|
17 | {"mode", KEY_TYPE_INT, {(unsigned int)1}}, | |||
|
18 | {"syscon", KEY_TYPE_INT, {(unsigned int)1}}, | |||
|
19 | KEY_EMPTY | |||
|
20 | }; | |||
|
21 | /* APBUART1 */ | |||
|
22 | struct drvmgr_key grlib_drv_res_apbuart1[] = | |||
|
23 | { | |||
|
24 | {"mode", KEY_TYPE_INT, {(unsigned int)1}}, | |||
|
25 | {"syscon", KEY_TYPE_INT, {(unsigned int)0}}, | |||
|
26 | KEY_EMPTY | |||
|
27 | }; | |||
|
28 | /* LEON3 System with driver configuration for 2 APBUARTs, the | |||
|
29 | * the rest of the AMBA device drivers use their defaults. | |||
|
30 | */ | |||
|
31 | ||||
|
32 | /* Override default debug UART assignment. | |||
|
33 | * 0 = Default APBUART. APBUART[0], but on MP system CPU0=APBUART0, | |||
|
34 | * CPU1=APBUART1... | |||
|
35 | * 1 = APBUART[0] | |||
|
36 | * 2 = APBUART[1] | |||
|
37 | * 3 = APBUART[2] | |||
|
38 | * ... | |||
|
39 | */ | |||
|
40 | //int debug_uart_index = 2; /* second UART -- APBUART[1] */ | |||
|
41 | #endif | |||
|
42 | ||||
|
43 | // If RTEMS_DRVMGR_STARTUP is defined we override the "weak defaults" that is defined by the LEON3 BSP. | |||
|
44 | ||||
|
45 | struct drvmgr_bus_res grlib_drv_resources = { | |||
|
46 | .next = NULL, | |||
|
47 | .resource = { | |||
|
48 | {DRIVER_AMBAPP_GAISLER_GRSPW_ID, 0, &grlib_grspw_0n1_res[0]}, | |||
|
49 | // {DRIVER_AMBAPP_GAISLER_APBUART_ID, 0, &grlib_drv_res_apbuart0[0]}, | |||
|
50 | // {DRIVER_AMBAPP_GAISLER_APBUART_ID, 1, &grlib_drv_res_apbuart1[0]}, | |||
|
51 | RES_EMPTY /* Mark end of device resource array */ | |||
|
52 | } | |||
|
53 | }; |
@@ -0,0 +1,397 | |||||
|
1 | #include <FSW-rtems-processing.h> | |||
|
2 | #include<math.h> | |||
|
3 | #include <stdio.h> | |||
|
4 | #include <leon.h> | |||
|
5 | ||||
|
6 | float k14_re = 1; | |||
|
7 | float k14_im = 1; | |||
|
8 | float k14_bis_re = 1; | |||
|
9 | float k14_bis_im = 1; | |||
|
10 | float k14_tris_re = 1; | |||
|
11 | float k14_tris_im = 1; | |||
|
12 | float k15_re = 1; | |||
|
13 | float k15_im = 1; | |||
|
14 | float k15_bis_re = 1; | |||
|
15 | float k15_bis_im = 1; | |||
|
16 | float k24_re = 1; | |||
|
17 | float k24_im = 1; | |||
|
18 | float k24_bis_re = 1; | |||
|
19 | float k24_bis_im = 1; | |||
|
20 | float k24_tris_re = 1; | |||
|
21 | float k24_tris_im = 1; | |||
|
22 | float k25_re = 1; | |||
|
23 | float k25_im = 1; | |||
|
24 | float k25_bis_re = 1; | |||
|
25 | float k25_bis_im = 1; | |||
|
26 | float k34_re = 1; | |||
|
27 | float k34_im = 1; | |||
|
28 | float k44 = 1; | |||
|
29 | float k55 = 1; | |||
|
30 | float k45_re = 1; | |||
|
31 | float k45_im = 1; | |||
|
32 | float alpha_M = M_PI/4; | |||
|
33 | ||||
|
34 | volatile int spectral_matrix_f0_a[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
35 | volatile int spectral_matrix_f0_b[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
36 | volatile int spectral_matrix_f0_c[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
37 | volatile int spectral_matrix_f0_d[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
38 | volatile int spectral_matrix_f0_e[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
39 | volatile int spectral_matrix_f0_f[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
40 | volatile int spectral_matrix_f0_g[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
41 | volatile int spectral_matrix_f0_h[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
42 | float averaged_spectral_matrix_f0[TOTAL_SIZE_SPECTRAL_MATRIX]; | |||
|
43 | float compressed_spectral_matrix_f0[TOTAL_SIZE_COMPRESSED_MATRIX_f0]; | |||
|
44 | unsigned char LFR_BP1_F0[NB_BINS_COMPRESSED_MATRIX_f0*9]; | |||
|
45 | ||||
|
46 | extern rtems_id Task_id[]; /* array of task ids */ | |||
|
47 | ||||
|
48 | struct spectral_matrices_regs_str{ | |||
|
49 | volatile int ctrl; | |||
|
50 | volatile int address0; | |||
|
51 | volatile int address1; | |||
|
52 | }; | |||
|
53 | struct spectral_matrices_regs_str *spectral_matrices_regs; | |||
|
54 | ||||
|
55 | // Interrupt Service Routine for spectral matrices processing | |||
|
56 | rtems_isr spectral_matrices_isr( rtems_vector_number vector ) | |||
|
57 | { | |||
|
58 | if (rtems_event_send( Task_id[4], RTEMS_EVENT_0 ) != RTEMS_SUCCESSFUL) | |||
|
59 | printf("In spectral_matrices_isr *** Error sending event to BPPR\n"); | |||
|
60 | } | |||
|
61 | ||||
|
62 | rtems_task spw_bppr_task(rtems_task_argument argument) | |||
|
63 | { | |||
|
64 | rtems_status_code status; | |||
|
65 | rtems_event_set event_out; | |||
|
66 | static int nb_average_f0 = 0; | |||
|
67 | //static int nb_average_f1 = 0; | |||
|
68 | //static int nb_average_f2 = 0; | |||
|
69 | ||||
|
70 | while(1) | |||
|
71 | ||||
|
72 | spectral_matrices_regs = (struct spectral_matrices_regs_str *) ADDRESS_APB_SPECTRAL_MATRICES; | |||
|
73 | spectral_matrices_regs->address0 = (volatile int) spectral_matrix_f0_a; | |||
|
74 | spectral_matrices_regs->address1 = (volatile int) spectral_matrix_f0_b; | |||
|
75 | ||||
|
76 | printf("In BPPR ***\n"); | |||
|
77 | ||||
|
78 | while(1){ // wait for an event to begin with the processing | |||
|
79 | status = rtems_event_receive(RTEMS_EVENT_0, RTEMS_WAIT, RTEMS_NO_TIMEOUT, &event_out); | |||
|
80 | if (status == RTEMS_SUCCESSFUL){ | |||
|
81 | if ((spectral_matrices_regs->ctrl & 0x00000001)==1){ | |||
|
82 | matrix_average(spectral_matrix_f0_a, averaged_spectral_matrix_f0); | |||
|
83 | spectral_matrices_regs->ctrl = spectral_matrices_regs->ctrl & 0xfffffffe; | |||
|
84 | //printf("f0_a\n"); | |||
|
85 | nb_average_f0++; | |||
|
86 | } | |||
|
87 | if (((spectral_matrices_regs->ctrl>>1) & 0x00000001)==1){ | |||
|
88 | matrix_average(spectral_matrix_f0_b, compressed_spectral_matrix_f0); | |||
|
89 | spectral_matrices_regs->ctrl = spectral_matrices_regs->ctrl & 0xfffffffd; | |||
|
90 | //printf("f0_b\n"); | |||
|
91 | nb_average_f0++; | |||
|
92 | } | |||
|
93 | if (nb_average_f0 == NB_AVERAGE_NORMAL_f0){ | |||
|
94 | matrix_compression(averaged_spectral_matrix_f0, 0, compressed_spectral_matrix_f0); | |||
|
95 | //printf("f0 compressed\n"); | |||
|
96 | nb_average_f0 = 0; | |||
|
97 | matrix_reset(averaged_spectral_matrix_f0); | |||
|
98 | } | |||
|
99 | } | |||
|
100 | } | |||
|
101 | } | |||
|
102 | ||||
|
103 | void matrix_average(volatile int *spectral_matrix, float *averaged_spectral_matrix) | |||
|
104 | { | |||
|
105 | int i; | |||
|
106 | for(i=0; i<TOTAL_SIZE_SPECTRAL_MATRIX; i++){ | |||
|
107 | averaged_spectral_matrix[i] = averaged_spectral_matrix[i] + spectral_matrix_f0_a[i] | |||
|
108 | + spectral_matrix_f0_b[i] | |||
|
109 | + spectral_matrix_f0_c[i] | |||
|
110 | + spectral_matrix_f0_d[i] | |||
|
111 | + spectral_matrix_f0_e[i] | |||
|
112 | + spectral_matrix_f0_f[i] | |||
|
113 | + spectral_matrix_f0_g[i] | |||
|
114 | + spectral_matrix_f0_h[i]; | |||
|
115 | } | |||
|
116 | } | |||
|
117 | ||||
|
118 | void matrix_reset(float *averaged_spectral_matrix) | |||
|
119 | { | |||
|
120 | int i; | |||
|
121 | for(i=0; i<TOTAL_SIZE_SPECTRAL_MATRIX; i++){ | |||
|
122 | averaged_spectral_matrix_f0[i] = 0; | |||
|
123 | } | |||
|
124 | } | |||
|
125 | ||||
|
126 | void matrix_compression(float *averaged_spectral_matrix, unsigned char fChannel, float *compressed_spectral_matrix) | |||
|
127 | { | |||
|
128 | int i, j; | |||
|
129 | switch (fChannel){ | |||
|
130 | case 0: | |||
|
131 | for(i=0;i<NB_BINS_COMPRESSED_MATRIX_f0;i++){ | |||
|
132 | j = 17 + i * 8; | |||
|
133 | compressed_spectral_matrix[i] = (averaged_spectral_matrix[j] | |||
|
134 | + averaged_spectral_matrix[j+1] | |||
|
135 | + averaged_spectral_matrix[j+2] | |||
|
136 | + averaged_spectral_matrix[j+3] | |||
|
137 | + averaged_spectral_matrix[j+4] | |||
|
138 | + averaged_spectral_matrix[j+5] | |||
|
139 | + averaged_spectral_matrix[j+6] | |||
|
140 | + averaged_spectral_matrix[j+7])/(8*NB_AVERAGE_NORMAL_f0); | |||
|
141 | } | |||
|
142 | break; | |||
|
143 | case 1: | |||
|
144 | // case fChannel = f1 tp be completed later | |||
|
145 | break; | |||
|
146 | case 2: | |||
|
147 | // case fChannel = f1 tp be completed later | |||
|
148 | break; | |||
|
149 | default: | |||
|
150 | break; | |||
|
151 | } | |||
|
152 | } | |||
|
153 | ||||
|
154 | void BP1_set(float * compressed_spectral_matrix, unsigned char nb_bins_compressed_spectral_matrix, unsigned char * LFR_BP1){ | |||
|
155 | int i, j; | |||
|
156 | unsigned char tmp_u_char; | |||
|
157 | unsigned char * pt_char; | |||
|
158 | float PSDB, PSDE; | |||
|
159 | float NVEC_V0, NVEC_V1, NVEC_V2; | |||
|
160 | float significand; | |||
|
161 | int exponent; | |||
|
162 | float aux, tr_SB_SB, tmp; | |||
|
163 | float e_cross_b_re, e_cross_b_im; | |||
|
164 | float n_cross_e_scal_b_re = 0, n_cross_e_scal_b_im = 0; | |||
|
165 | float nx = 0, ny = 0; | |||
|
166 | float bz_bz_star = 0; | |||
|
167 | for(i=0; i<nb_bins_compressed_spectral_matrix; i++){ | |||
|
168 | //============================================== | |||
|
169 | // BP1 PSD == B PAR_LFR_SC_BP1_PE_FL0 == 16 bits | |||
|
170 | PSDB = compressed_spectral_matrix[i*30] // S11 | |||
|
171 | + compressed_spectral_matrix[i*30+10] // S22 | |||
|
172 | + compressed_spectral_matrix[i*30+18]; // S33 | |||
|
173 | significand = frexp(PSDB, &exponent); | |||
|
174 | pt_char = (unsigned char*) &PSDB; | |||
|
175 | LFR_BP1[i*9+8] = pt_char[0]; // bits 31 downto 24 of the float | |||
|
176 | LFR_BP1[i*9+7] = pt_char[1]; // bits 23 downto 16 of the float | |||
|
177 | //============================================== | |||
|
178 | // BP1 PSD == E PAR_LFR_SC_BP1_PB_FL0 == 16 bits | |||
|
179 | PSDE = compressed_spectral_matrix[i*30+24] * k44 // S44 | |||
|
180 | + compressed_spectral_matrix[i*30+28] * k55 // S55 | |||
|
181 | + compressed_spectral_matrix[i*30+26] * k45_re // S45 | |||
|
182 | - compressed_spectral_matrix[i*30+27] * k45_im; // S45 | |||
|
183 | pt_char = (unsigned char*) &PSDE; | |||
|
184 | LFR_BP1[i*9+6] = pt_char[0]; // bits 31 downto 24 of the float | |||
|
185 | LFR_BP1[i*9+5] = pt_char[1]; // bits 23 downto 16 of the float | |||
|
186 | //============================================================================== | |||
|
187 | // BP1 normal wave vector == PAR_LFR_SC_BP1_NVEC_V0_F0 == 8 bits | |||
|
188 | // == PAR_LFR_SC_BP1_NVEC_V1_F0 == 8 bits | |||
|
189 | // == PAR_LFR_SC_BP1_NVEC_V2_F0 == 1 bits | |||
|
190 | tmp = sqrt( | |||
|
191 | compressed_spectral_matrix[i*30+3]*compressed_spectral_matrix[i*30+3] //Im S12 | |||
|
192 | +compressed_spectral_matrix[i*30+5]*compressed_spectral_matrix[i*30+5] //Im S13 | |||
|
193 | +compressed_spectral_matrix[i*30+5]*compressed_spectral_matrix[i*30+13] //Im S23 | |||
|
194 | ); | |||
|
195 | NVEC_V0 = compressed_spectral_matrix[i*30+13] / tmp; // Im S23 | |||
|
196 | NVEC_V1 = -compressed_spectral_matrix[i*30+5] / tmp; // Im S13 | |||
|
197 | NVEC_V2 = compressed_spectral_matrix[i*30+1] / tmp; // Im S12 | |||
|
198 | LFR_BP1[i*9+4] = (char) (NVEC_V0*256); | |||
|
199 | LFR_BP1[i*9+3] = (char) (NVEC_V1*256); | |||
|
200 | pt_char = (unsigned char*) &NVEC_V2; | |||
|
201 | LFR_BP1[i*9+2] = pt_char[0] & 0x80; // extract the sign of NVEC_V2 | |||
|
202 | //======================================================= | |||
|
203 | // BP1 ellipticity == PAR_LFR_SC_BP1_ELLIP_F0 == 4 bits | |||
|
204 | aux = 2*tmp / PSDB; // compute the ellipticity | |||
|
205 | tmp_u_char = (unsigned char) (aux*(16-1)); // convert the ellipticity | |||
|
206 | LFR_BP1[i*9+2] = LFR_BP1[i*9+2] | ((tmp_u_char&0x0f)<<3); // keeps 4 bits of the resulting unsigned char | |||
|
207 | //============================================================== | |||
|
208 | // BP1 degree of polarization == PAR_LFR_SC_BP1_DOP_F0 == 3 bits | |||
|
209 | for(j = 0; j<NB_VALUES_PER_SPECTRAL_MATRIX;j++){ | |||
|
210 | tr_SB_SB = compressed_spectral_matrix[i*30]*compressed_spectral_matrix[i*30] | |||
|
211 | + compressed_spectral_matrix[i*30+10]*compressed_spectral_matrix[i*30+10] | |||
|
212 | + compressed_spectral_matrix[i*30+18]*compressed_spectral_matrix[i*30+18] | |||
|
213 | + 2 * compressed_spectral_matrix[i*30+2]*compressed_spectral_matrix[i*30+2] | |||
|
214 | + 2 * compressed_spectral_matrix[i*30+3]*compressed_spectral_matrix[i*30+3] | |||
|
215 | + 2 * compressed_spectral_matrix[i*30+4]*compressed_spectral_matrix[i*30+4] | |||
|
216 | + 2 * compressed_spectral_matrix[i*30+5]*compressed_spectral_matrix[i*30+5] | |||
|
217 | + 2 * compressed_spectral_matrix[i*30+12]*compressed_spectral_matrix[i*30+12] | |||
|
218 | + 2 * compressed_spectral_matrix[i*30+13]*compressed_spectral_matrix[i*30+13]; | |||
|
219 | } | |||
|
220 | aux = PSDB*PSDB; | |||
|
221 | tmp = ( 3*tr_SB_SB - aux ) / ( 2 * aux ); | |||
|
222 | tmp_u_char = (unsigned char) (NVEC_V0*(8-1)); | |||
|
223 | LFR_BP1[i*9+2] = LFR_BP1[i*9+2] | ((tmp_u_char&0x07)); // keeps 3 bits of the resulting unsigned char | |||
|
224 | //======================================================================================= | |||
|
225 | // BP1 z-component of the normalized Poynting flux == PAR_LFR_SC_BP1_SZ_F0 == 8 bits (7+1) | |||
|
226 | e_cross_b_re = compressed_spectral_matrix[i*30+20]*k34_re | |||
|
227 | + compressed_spectral_matrix[i*30+6]*k14_re | |||
|
228 | + compressed_spectral_matrix[i*30+8]*k15_re | |||
|
229 | + compressed_spectral_matrix[i*30+14]*k24_re | |||
|
230 | + compressed_spectral_matrix[i*30+16]*k25_re; | |||
|
231 | e_cross_b_im = compressed_spectral_matrix[i*30+21]*k34_im | |||
|
232 | + compressed_spectral_matrix[i*30+7]*k14_im | |||
|
233 | + compressed_spectral_matrix[i*30+9]*k15_im | |||
|
234 | + compressed_spectral_matrix[i*30+15]*k24_im | |||
|
235 | + compressed_spectral_matrix[i*30+17]*k25_im; | |||
|
236 | tmp = e_cross_b_re / PSDE; // compute ReaSz | |||
|
237 | LFR_BP1[i*9+1] = ((unsigned char) (tmp * 128)) & 0x7f; // is it always positive? | |||
|
238 | tmp = e_cross_b_re * e_cross_b_im; | |||
|
239 | pt_char = (unsigned char*) &tmp; | |||
|
240 | LFR_BP1[i*9+1] = LFR_BP1[i*9+1] | (pt_char[0] & 0x80); // extract the sign of ArgSz | |||
|
241 | //====================================================================== | |||
|
242 | // BP1 phase velocity estimator == PAR_LFR_SC_BP1_VPHI_F0 == 8 bits (7+1) | |||
|
243 | nx = -sin(alpha_M)*NVEC_V0 - cos(alpha_M)*NVEC_V1; | |||
|
244 | ny = NVEC_V2; | |||
|
245 | bz_bz_star = cos(alpha_M) * cos(alpha_M) * compressed_spectral_matrix[i*30] // re S11 | |||
|
246 | + sin(alpha_M) * sin(alpha_M) * compressed_spectral_matrix[i*30+10] // re S22 | |||
|
247 | - 2 * sin(alpha_M) * cos(alpha_M) * compressed_spectral_matrix[i*30+2]; // re S12 | |||
|
248 | n_cross_e_scal_b_re = nx * (compressed_spectral_matrix[i*30+8]*k15_bis_re | |||
|
249 | +compressed_spectral_matrix[i*30+6]*k14_bis_re | |||
|
250 | +compressed_spectral_matrix[i*30+16]*k25_bis_re | |||
|
251 | +compressed_spectral_matrix[i*30+14]*k24_bis_re) | |||
|
252 | + ny * (compressed_spectral_matrix[i*30+6]*k14_tris_re | |||
|
253 | +compressed_spectral_matrix[i*30+14]*k24_tris_re); | |||
|
254 | n_cross_e_scal_b_im = nx * (compressed_spectral_matrix[i*30+8]*k15_bis_im | |||
|
255 | +compressed_spectral_matrix[i*30+6]*k14_bis_im | |||
|
256 | +compressed_spectral_matrix[i*30+16]*k25_bis_im | |||
|
257 | +compressed_spectral_matrix[i*30+14]*k24_bis_im) | |||
|
258 | + ny * (compressed_spectral_matrix[i*30+6]*k14_tris_im | |||
|
259 | +compressed_spectral_matrix[i*30+14]*k24_tris_im); | |||
|
260 | tmp = n_cross_e_scal_b_re / bz_bz_star; | |||
|
261 | LFR_BP1[i*9+0] = ((unsigned char) (tmp * 128)) & 0x7f; // is it always positive? | |||
|
262 | tmp = n_cross_e_scal_b_re * n_cross_e_scal_b_im; | |||
|
263 | pt_char = (unsigned char*) &tmp; | |||
|
264 | LFR_BP1[i*9+1] = LFR_BP1[i*9+0] | (pt_char[0] & 0x80); // extract the sign of ArgV | |||
|
265 | } | |||
|
266 | ||||
|
267 | } | |||
|
268 | ||||
|
269 | void BP2_set(float * compressed_spectral_matrix, unsigned char nb_bins_compressed_spectral_matrix){ | |||
|
270 | // BP2 autocorrelation | |||
|
271 | int i, aux = 0; | |||
|
272 | for(i = 0; i<nb_bins_compressed_spectral_matrix; i++){ | |||
|
273 | // S12 | |||
|
274 | aux = sqrt(compressed_spectral_matrix[i*30]*compressed_spectral_matrix[i*30+10]); | |||
|
275 | compressed_spectral_matrix[i*30+2] = compressed_spectral_matrix[i*30+2] / aux; | |||
|
276 | compressed_spectral_matrix[i*30+3] = compressed_spectral_matrix[i*30+3] / aux; | |||
|
277 | // S13 | |||
|
278 | aux = sqrt(compressed_spectral_matrix[i*30]*compressed_spectral_matrix[i*30+18]); | |||
|
279 | compressed_spectral_matrix[i*30+4] = compressed_spectral_matrix[i*30+4] / aux; | |||
|
280 | compressed_spectral_matrix[i*30+5] = compressed_spectral_matrix[i*30+5] / aux; | |||
|
281 | // S23 | |||
|
282 | aux = sqrt(compressed_spectral_matrix[i*30+12]*compressed_spectral_matrix[i*30+18]); | |||
|
283 | compressed_spectral_matrix[i*30+12] = compressed_spectral_matrix[i*30+12] / aux; | |||
|
284 | compressed_spectral_matrix[i*30+13] = compressed_spectral_matrix[i*30+13] / aux; | |||
|
285 | // S45 | |||
|
286 | aux = sqrt(compressed_spectral_matrix[i*30+24]*compressed_spectral_matrix[i*30+28]); | |||
|
287 | compressed_spectral_matrix[i*30+26] = compressed_spectral_matrix[i*30+26] / aux; | |||
|
288 | compressed_spectral_matrix[i*30+27] = compressed_spectral_matrix[i*30+27] / aux; | |||
|
289 | // S14 | |||
|
290 | aux = sqrt(compressed_spectral_matrix[i*30]*compressed_spectral_matrix[i*30+24]); | |||
|
291 | compressed_spectral_matrix[i*30+6] = compressed_spectral_matrix[i*30+6] / aux; | |||
|
292 | compressed_spectral_matrix[i*30+7] = compressed_spectral_matrix[i*30+7] / aux; | |||
|
293 | // S15 | |||
|
294 | aux = sqrt(compressed_spectral_matrix[i*30]*compressed_spectral_matrix[i*30+28]); | |||
|
295 | compressed_spectral_matrix[i*30+8] = compressed_spectral_matrix[i*30+8] / aux; | |||
|
296 | compressed_spectral_matrix[i*30+9] = compressed_spectral_matrix[i*30+9] / aux; | |||
|
297 | // S24 | |||
|
298 | aux = sqrt(compressed_spectral_matrix[i*10]*compressed_spectral_matrix[i*30+24]); | |||
|
299 | compressed_spectral_matrix[i*30+14] = compressed_spectral_matrix[i*30+14] / aux; | |||
|
300 | compressed_spectral_matrix[i*30+15] = compressed_spectral_matrix[i*30+15] / aux; | |||
|
301 | // S25 | |||
|
302 | aux = sqrt(compressed_spectral_matrix[i*10]*compressed_spectral_matrix[i*30+28]); | |||
|
303 | compressed_spectral_matrix[i*30+16] = compressed_spectral_matrix[i*30+16] / aux; | |||
|
304 | compressed_spectral_matrix[i*30+17] = compressed_spectral_matrix[i*30+17] / aux; | |||
|
305 | // S34 | |||
|
306 | aux = sqrt(compressed_spectral_matrix[i*18]*compressed_spectral_matrix[i*30+24]); | |||
|
307 | compressed_spectral_matrix[i*30+20] = compressed_spectral_matrix[i*30+20] / aux; | |||
|
308 | compressed_spectral_matrix[i*30+21] = compressed_spectral_matrix[i*30+21] / aux; | |||
|
309 | // S35 | |||
|
310 | aux = sqrt(compressed_spectral_matrix[i*18]*compressed_spectral_matrix[i*30+28]); | |||
|
311 | compressed_spectral_matrix[i*30+22] = compressed_spectral_matrix[i*30+22] / aux; | |||
|
312 | compressed_spectral_matrix[i*30+23] = compressed_spectral_matrix[i*30+23] / aux; | |||
|
313 | } | |||
|
314 | } | |||
|
315 | ||||
|
316 | rtems_task spw_bppr_task_rate_monotonic(rtems_task_argument argument) | |||
|
317 | { | |||
|
318 | rtems_status_code status; | |||
|
319 | //static int nb_average_f1 = 0; | |||
|
320 | //static int nb_average_f2 = 0; | |||
|
321 | ||||
|
322 | rtems_name name; | |||
|
323 | rtems_id period; | |||
|
324 | name = rtems_build_name( 'P', 'E', 'R', 'D' ); | |||
|
325 | status = rtems_rate_monotonic_create( name, &period ); | |||
|
326 | if( status != RTEMS_SUCCESSFUL ) { | |||
|
327 | printf( "rtems_rate_monotonic_create failed with status of %d\n", status ); | |||
|
328 | //exit( 1 ); | |||
|
329 | } | |||
|
330 | ||||
|
331 | spectral_matrices_regs = (struct spectral_matrices_regs_str *) ADDRESS_APB_SPECTRAL_MATRICES; | |||
|
332 | spectral_matrices_regs->address0 = (volatile int) spectral_matrix_f0_a; | |||
|
333 | spectral_matrices_regs->address1 = (volatile int) spectral_matrix_f0_b; | |||
|
334 | ||||
|
335 | printf("In BPPR BIS ***\n"); | |||
|
336 | ||||
|
337 | while(1){ // launch the rate monotonic task | |||
|
338 | if ( rtems_rate_monotonic_period( period, 8 ) == RTEMS_TIMEOUT ){ | |||
|
339 | printf("TIMEOUT\n"); | |||
|
340 | //break; | |||
|
341 | } | |||
|
342 | status = rtems_event_send( Task_id[6], RTEMS_EVENT_0 ); // sending an event to the task 6, AVF0 | |||
|
343 | if (status != RTEMS_SUCCESSFUL) printf("IN TASK BPPR BIS *** Error sending RTEMS_EVENT_0 to AVF0, code %d\n", status); | |||
|
344 | } | |||
|
345 | ||||
|
346 | status = rtems_rate_monotonic_delete( period ); | |||
|
347 | if ( status != RTEMS_SUCCESSFUL ) { | |||
|
348 | printf( "rtems_rate_monotonic_delete failed with status of %d.\n", status ); | |||
|
349 | //exit( 1 ); | |||
|
350 | } | |||
|
351 | status = rtems_task_delete( RTEMS_SELF ); /* should not return */ | |||
|
352 | printf( "rtems_task_delete returned with status of %d.\n", status ); | |||
|
353 | //exit( 1 ); | |||
|
354 | } | |||
|
355 | ||||
|
356 | rtems_task spw_avf0_task(rtems_task_argument argument){ | |||
|
357 | int i; | |||
|
358 | static int nb_average; | |||
|
359 | rtems_event_set event_out; | |||
|
360 | rtems_status_code status; | |||
|
361 | ||||
|
362 | nb_average = 0; | |||
|
363 | ||||
|
364 | while(1){ | |||
|
365 | rtems_event_receive(RTEMS_EVENT_0, RTEMS_WAIT, RTEMS_NO_TIMEOUT, &event_out); // wait for an RTEMS_EVENT0 | |||
|
366 | for(i=0; i<TOTAL_SIZE_SPECTRAL_MATRIX; i++){ | |||
|
367 | averaged_spectral_matrix_f0[i] = averaged_spectral_matrix_f0[i] + spectral_matrix_f0_a[i] | |||
|
368 | + spectral_matrix_f0_b[i] | |||
|
369 | + spectral_matrix_f0_c[i] | |||
|
370 | + spectral_matrix_f0_d[i] | |||
|
371 | + spectral_matrix_f0_e[i] | |||
|
372 | + spectral_matrix_f0_f[i] | |||
|
373 | + spectral_matrix_f0_g[i] | |||
|
374 | + spectral_matrix_f0_h[i]; | |||
|
375 | } | |||
|
376 | spectral_matrices_regs->ctrl = spectral_matrices_regs->ctrl & 0xfffffffe; // reset the appropriate bit in the register | |||
|
377 | nb_average = nb_average + 8; | |||
|
378 | if (nb_average == NB_AVERAGE_NORMAL_f0) { | |||
|
379 | nb_average = 0; | |||
|
380 | status = rtems_event_send( Task_id[7], RTEMS_EVENT_0 ); // sending an event to the task 7, BPF0 | |||
|
381 | if (status != RTEMS_SUCCESSFUL) printf("IN TASK AVF0 *** Error sending RTEMS_EVENT_0, code %d\n", status); | |||
|
382 | } | |||
|
383 | } | |||
|
384 | } | |||
|
385 | ||||
|
386 | rtems_task spw_bpf0_task(rtems_task_argument argument){ | |||
|
387 | rtems_event_set event_out; | |||
|
388 | ||||
|
389 | while(1){ | |||
|
390 | rtems_event_receive(RTEMS_EVENT_0, RTEMS_WAIT, RTEMS_NO_TIMEOUT, &event_out); // wait for an RTEMS_EVENT0 | |||
|
391 | matrix_compression(averaged_spectral_matrix_f0, 0, compressed_spectral_matrix_f0); | |||
|
392 | BP1_set(compressed_spectral_matrix_f0, NB_BINS_COMPRESSED_MATRIX_f0, LFR_BP1_F0); | |||
|
393 | printf("IN TASK BPF0 *** Matrix compressed, parameters calculated\n"); | |||
|
394 | } | |||
|
395 | } | |||
|
396 | ||||
|
397 |
@@ -0,0 +1,407 | |||||
|
1 | //************************* | |||
|
2 | // GPL reminder to be added | |||
|
3 | //************************* | |||
|
4 | ||||
|
5 | #define PRINT_MESSAGES_ON_CONSOLE // enable or disable the printf instructions | |||
|
6 | #ifdef PRINT_MESSAGES_ON_CONSOLE | |||
|
7 | #define PRINTF(x) printf(x); | |||
|
8 | #define PRINTF1(x,y) printf(x,y); | |||
|
9 | #define PRINTF2(x,y,z) printf(x,y,z); | |||
|
10 | #else | |||
|
11 | #define PRINTF(x) | |||
|
12 | #define PRINTF1(x,y) | |||
|
13 | #define PRINTF2(x,y,z) | |||
|
14 | #endif | |||
|
15 | ||||
|
16 | #define CCSDS_TC_PKT_MAX_SIZE 500 // 248 | |||
|
17 | #define CCSDS_TM_PKT_MAX_SIZE 4412 | |||
|
18 | #define OFFSET_COARSE_TIME 4+10-1 // -1 => the receiver suppressed the target logical address | |||
|
19 | #define OFFSET_FINE_TIME OFFSET_COARSE_TIME+4 | |||
|
20 | #define TC_FIFO_SIZE 5 | |||
|
21 | ||||
|
22 | #define ADDRESS_APBUART_REGISTERS 0x80000100 | |||
|
23 | #define ADDRESS_GRSPW_REGISTERS 0x80000500 | |||
|
24 | #define APBUART_CTRL_REG_MASK_DB 0xfffff7ff | |||
|
25 | ||||
|
26 | #define GRSPW_DEVICE_NAME "/dev/grspw0" | |||
|
27 | #define UART_DEVICE_NAME "/dev/console" | |||
|
28 | ||||
|
29 | #include <rtems.h> | |||
|
30 | ||||
|
31 | /* configuration information */ | |||
|
32 | ||||
|
33 | #define CONFIGURE_INIT | |||
|
34 | #include <bsp.h> /* for device driver prototypes */ | |||
|
35 | ||||
|
36 | /* configuration information */ | |||
|
37 | ||||
|
38 | #define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER | |||
|
39 | #define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER | |||
|
40 | ||||
|
41 | #define CONFIGURE_MAXIMUM_TASKS 10 | |||
|
42 | #define CONFIGURE_RTEMS_INIT_TASKS_TABLE | |||
|
43 | #define CONFIGURE_EXTRA_TASK_STACKS (3 * RTEMS_MINIMUM_STACK_SIZE) | |||
|
44 | #define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 32 | |||
|
45 | #define CONFIGURE_INIT_TASK_PRIORITY 100 | |||
|
46 | #define CONFIGURE_MAXIMUM_DRIVERS 16 | |||
|
47 | #define CONFIGURE_MAXIMUM_PERIODS 1 | |||
|
48 | ||||
|
49 | #include <rtems/confdefs.h> | |||
|
50 | ||||
|
51 | /* If --drvmgr was enabled during the configuration of the RTEMS kernel */ | |||
|
52 | #ifdef RTEMS_DRVMGR_STARTUP | |||
|
53 | #ifdef LEON3 | |||
|
54 | /* Add Timer and UART Driver */ | |||
|
55 | #ifdef CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER | |||
|
56 | #define CONFIGURE_DRIVER_AMBAPP_GAISLER_GPTIMER | |||
|
57 | #endif | |||
|
58 | #ifdef CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER | |||
|
59 | #define CONFIGURE_DRIVER_AMBAPP_GAISLER_APBUART | |||
|
60 | #endif | |||
|
61 | #endif | |||
|
62 | #define CONFIGURE_DRIVER_AMBAPP_GAISLER_GRSPW /* GRSPW Driver */ | |||
|
63 | #include <drvmgr/drvmgr_confdefs.h> | |||
|
64 | #endif | |||
|
65 | ||||
|
66 | #include <rtems.h> | |||
|
67 | #include <errno.h> | |||
|
68 | #include <fcntl.h> | |||
|
69 | #include <stdio.h> | |||
|
70 | #include <stdlib.h> | |||
|
71 | ||||
|
72 | #include <FSW-config.c> | |||
|
73 | #include <grspw.h> | |||
|
74 | #include <apbuart.h> | |||
|
75 | #include <FSW-rtems-processing.h> | |||
|
76 | ||||
|
77 | rtems_task Init( rtems_task_argument argument); /* forward declaration needed */ | |||
|
78 | rtems_task spw_recv_task(rtems_task_argument argument); | |||
|
79 | rtems_task spw_tcck_task(rtems_task_argument argument); | |||
|
80 | rtems_task spw_spiq_task(rtems_task_argument argument); | |||
|
81 | rtems_task spw_stat_task(rtems_task_argument argument); | |||
|
82 | int configure_spw_link(); | |||
|
83 | extern int rtems_cpu_usage_report(); | |||
|
84 | extern int rtems_cpu_usage_reset(); | |||
|
85 | ||||
|
86 | char *link_status(int status); | |||
|
87 | void print_statistics(spw_stats *); | |||
|
88 | extern int sched_yield(); | |||
|
89 | extern int errno; | |||
|
90 | ||||
|
91 | char *lstates[6] = {"Error-reset", | |||
|
92 | "Error-wait", | |||
|
93 | "Ready", | |||
|
94 | "Started", | |||
|
95 | "Connecting", | |||
|
96 | "Run" | |||
|
97 | }; | |||
|
98 | ||||
|
99 | struct tc_fifo_str{ | |||
|
100 | struct tc_fifo_str *next; | |||
|
101 | unsigned char *tc_pkt; | |||
|
102 | unsigned int tc_pktlength; | |||
|
103 | unsigned char ready; | |||
|
104 | }; | |||
|
105 | struct tc_fifo_str tc_fifo[TC_FIFO_SIZE]; | |||
|
106 | struct tc_fifo_str *tc_being_processed; | |||
|
107 | struct tc_fifo_str *tc_pending_reception; | |||
|
108 | ||||
|
109 | struct apbuart_regs_str{ | |||
|
110 | volatile unsigned int data; | |||
|
111 | volatile unsigned int status; | |||
|
112 | volatile unsigned int ctrl; | |||
|
113 | volatile unsigned int scaler; | |||
|
114 | volatile unsigned int fifoDebug; | |||
|
115 | }; | |||
|
116 | ||||
|
117 | int fdSPW; | |||
|
118 | int fdUART; | |||
|
119 | ||||
|
120 | rtems_id Task_id[10]; /* array of task ids */ | |||
|
121 | rtems_name Task_name[10]; /* array of task names */ | |||
|
122 | rtems_name sem_tc_fifo_name; | |||
|
123 | rtems_id sem_tc_fifo_id; | |||
|
124 | ||||
|
125 | rtems_task Init( rtems_task_argument ignored ) { | |||
|
126 | rtems_status_code status; | |||
|
127 | struct apbuart_regs_str *apbuart_regs; | |||
|
128 | int i; | |||
|
129 | rtems_isr_entry old_isr_handler; | |||
|
130 | ||||
|
131 | Task_name[1] = rtems_build_name( 'R', 'E', 'C', 'V' ); | |||
|
132 | Task_name[2] = rtems_build_name( 'T', 'C', 'C', 'K' ); | |||
|
133 | Task_name[3] = rtems_build_name( 'S', 'P', 'I', 'Q' ); | |||
|
134 | Task_name[4] = rtems_build_name( 'B', 'P', 'P', 'R' ); | |||
|
135 | Task_name[5] = rtems_build_name( 'S', 'T', 'A', 'T' ); | |||
|
136 | Task_name[6] = rtems_build_name( 'A', 'V', 'F', '0' ); | |||
|
137 | Task_name[7] = rtems_build_name( 'B', 'P', 'F', '0' ); | |||
|
138 | sem_tc_fifo_name = rtems_build_name( 'S', 'E', 'M', '0' ); | |||
|
139 | ||||
|
140 | // RECV | |||
|
141 | status = rtems_task_create( | |||
|
142 | Task_name[1], 200, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
143 | RTEMS_DEFAULT_MODES, | |||
|
144 | RTEMS_DEFAULT_ATTRIBUTES, &Task_id[1] | |||
|
145 | ); | |||
|
146 | // TCCK | |||
|
147 | status = rtems_task_create( | |||
|
148 | Task_name[2], 200, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
149 | RTEMS_DEFAULT_MODES, | |||
|
150 | RTEMS_DEFAULT_ATTRIBUTES, &Task_id[2] | |||
|
151 | ); | |||
|
152 | // SPIQ | |||
|
153 | status = rtems_task_create( | |||
|
154 | Task_name[3], 50, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
155 | RTEMS_DEFAULT_MODES, | |||
|
156 | RTEMS_DEFAULT_ATTRIBUTES, &Task_id[3] | |||
|
157 | ); | |||
|
158 | // BPPR | |||
|
159 | status = rtems_task_create( | |||
|
160 | Task_name[4], 10, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
161 | RTEMS_DEFAULT_MODES | RTEMS_NO_PREEMPT, | |||
|
162 | RTEMS_DEFAULT_ATTRIBUTES, &Task_id[4] | |||
|
163 | ); | |||
|
164 | // STAT | |||
|
165 | status = rtems_task_create( | |||
|
166 | Task_name[5], 200, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
167 | RTEMS_DEFAULT_MODES, | |||
|
168 | RTEMS_DEFAULT_ATTRIBUTES, &Task_id[5] | |||
|
169 | ); | |||
|
170 | // AVF0 | |||
|
171 | status = rtems_task_create( | |||
|
172 | Task_name[6], 50, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
173 | RTEMS_DEFAULT_MODES | RTEMS_NO_PREEMPT, | |||
|
174 | RTEMS_DEFAULT_ATTRIBUTES | RTEMS_FLOATING_POINT, &Task_id[6] | |||
|
175 | ); | |||
|
176 | // BPF0 | |||
|
177 | status = rtems_task_create( | |||
|
178 | Task_name[7], 50, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
179 | RTEMS_DEFAULT_MODES, | |||
|
180 | RTEMS_DEFAULT_ATTRIBUTES | RTEMS_FLOATING_POINT, &Task_id[7] | |||
|
181 | ); | |||
|
182 | ||||
|
183 | status = rtems_semaphore_create( | |||
|
184 | sem_tc_fifo_name, | |||
|
185 | 1, | |||
|
186 | RTEMS_BINARY_SEMAPHORE, | |||
|
187 | 1, | |||
|
188 | &sem_tc_fifo_id | |||
|
189 | ); | |||
|
190 | ||||
|
191 | //******************************************** | |||
|
192 | // Send the console outputs on the serial port | |||
|
193 | apbuart_regs = (struct apbuart_regs_str *) ADDRESS_APBUART_REGISTERS; | |||
|
194 | apbuart_regs->ctrl = apbuart_regs->ctrl & APBUART_CTRL_REG_MASK_DB; | |||
|
195 | PRINTF("\n\n\n\n\nIn INIT *** Now the console is on port COM1\n") | |||
|
196 | // | |||
|
197 | //******************************************** | |||
|
198 | ||||
|
199 | configure_spw_link(); | |||
|
200 | ||||
|
201 | for (i = 0; i<TC_FIFO_SIZE; i++){ | |||
|
202 | if (i==TC_FIFO_SIZE-1) tc_fifo[i].next = &tc_fifo[0]; | |||
|
203 | else tc_fifo[i].next = &tc_fifo[i+1]; | |||
|
204 | tc_fifo[i].tc_pkt = (unsigned char *) malloc(CCSDS_TC_PKT_MAX_SIZE); | |||
|
205 | tc_fifo[i].tc_pktlength = 0; | |||
|
206 | tc_fifo[i].ready = 0; | |||
|
207 | } | |||
|
208 | ||||
|
209 | status = rtems_interrupt_catch( spectral_matrices_isr, 0x1c, &old_isr_handler) ; // 0x1c comes from sparcv8.pdf p.76 | |||
|
210 | if (status==RTEMS_SUCCESSFUL) PRINTF("In INIT *** rtems_interrupt_catch successfullly configured\n") | |||
|
211 | ||||
|
212 | LEON_Unmask_interrupt( IRQ_SPECTRAL_MATRICES ); | |||
|
213 | ||||
|
214 | ||||
|
215 | status = rtems_task_start( Task_id[2], spw_tcck_task, 1 ); | |||
|
216 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In INIT *** Error starting TASK_TCCK\n") | |||
|
217 | ||||
|
218 | status = rtems_task_start( Task_id[3], spw_spiq_task, 1 ); | |||
|
219 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In INIT *** Error starting TASK_SPIQ\n") | |||
|
220 | ||||
|
221 | status = rtems_task_start( Task_id[1], spw_recv_task, 1 ); | |||
|
222 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In INIT *** Error starting TASK_RECV\n") | |||
|
223 | ||||
|
224 | status = rtems_task_start( Task_id[4], spw_bppr_task_rate_monotonic, 1 ); | |||
|
225 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In INIT *** Error starting TASK_BPPR\n") | |||
|
226 | ||||
|
227 | status = rtems_task_start( Task_id[5], spw_stat_task, 1 ); | |||
|
228 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In INIT *** Error starting TASK_STAT\n") | |||
|
229 | ||||
|
230 | status = rtems_task_start( Task_id[6], spw_avf0_task, 1 ); | |||
|
231 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In INIT *** Error starting TASK_AVF0\n") | |||
|
232 | ||||
|
233 | status = rtems_task_start( Task_id[7], spw_bpf0_task, 1 ); | |||
|
234 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In INIT *** Error starting TASK_BPF0\n") | |||
|
235 | ||||
|
236 | status = rtems_task_delete(RTEMS_SELF); | |||
|
237 | } | |||
|
238 | ||||
|
239 | rtems_task spw_recv_task( rtems_task_argument unused ) { | |||
|
240 | rtems_status_code status; | |||
|
241 | int len = 0; | |||
|
242 | unsigned int i; | |||
|
243 | ||||
|
244 | PRINTF("In RECV *** \n") | |||
|
245 | ||||
|
246 | status = rtems_semaphore_obtain( sem_tc_fifo_id, RTEMS_WAIT, RTEMS_NO_TIMEOUT ); | |||
|
247 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In RECV *** Error: rtems_semaphore_obtain\n") | |||
|
248 | for (i = 0; i<TC_FIFO_SIZE; i++){ // initialize the tc fifo ring | |||
|
249 | tc_fifo[i].tc_pktlength = 0; | |||
|
250 | tc_fifo[i].ready = 0; | |||
|
251 | } | |||
|
252 | status = rtems_semaphore_release( sem_tc_fifo_id ); | |||
|
253 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In RECV *** Error: rtems_semaphore_release\n") | |||
|
254 | ||||
|
255 | tc_being_processed = tc_fifo; | |||
|
256 | tc_pending_reception = tc_fifo; | |||
|
257 | ||||
|
258 | while(1){ | |||
|
259 | if (tc_pending_reception->ready == 0){ | |||
|
260 | PRINTF("In RECV *** Just before read\n") | |||
|
261 | len = read(fdSPW, tc_pending_reception->tc_pkt, CCSDS_TC_PKT_MAX_SIZE); // the call to read is blocking | |||
|
262 | PRINTF("In RECV *** Just after read\n") | |||
|
263 | if (len == -1) { // error during the read call | |||
|
264 | PRINTF("In RECV *** last read call returned -1\n") | |||
|
265 | if (rtems_event_send( Task_id[3], SPW_LINKERR_EVENT ) != RTEMS_SUCCESSFUL) | |||
|
266 | PRINTF("IN RECV *** Error: rtems_event_send SPW_LINKERR_EVENT\n") | |||
|
267 | if (rtems_task_suspend(RTEMS_SELF) != RTEMS_SUCCESSFUL) | |||
|
268 | PRINTF("In RECV *** Error: rtems_task_suspend(RTEMS_SELF)\n") | |||
|
269 | } | |||
|
270 | else { | |||
|
271 | tc_pending_reception->tc_pktlength = len; | |||
|
272 | tc_pending_reception->ready = 1; | |||
|
273 | PRINTF1("In RECV *** Got Message of length %d\n",tc_pending_reception->tc_pktlength) | |||
|
274 | status = rtems_event_send( Task_id[2], RTEMS_EVENT_0 ); // sending an event to the task TCCK | |||
|
275 | if (status == RTEMS_INVALID_ID) PRINTF("IN TASK RECV *** invalid task id when sending RTEMS_EVENT_0\n") | |||
|
276 | tc_pending_reception = tc_pending_reception->next; | |||
|
277 | sched_yield(); | |||
|
278 | } | |||
|
279 | } | |||
|
280 | else { | |||
|
281 | status = rtems_event_send( Task_id[2], RTEMS_EVENT_0 ); // sending an event to the task TCCK | |||
|
282 | if (status == RTEMS_INVALID_ID) PRINTF("IN TASK RECV *** invalid task id when sending RTEMS_EVENT_0\n") | |||
|
283 | sched_yield(); // if not executed, the system blocks when the packets arrive faster than the processing | |||
|
284 | // this call gives back the hand to the scheduler and allows TCCK to process the TC packets | |||
|
285 | } | |||
|
286 | } | |||
|
287 | ||||
|
288 | close(fdSPW); | |||
|
289 | } | |||
|
290 | ||||
|
291 | rtems_task spw_tcck_task( rtems_task_argument unused ) { | |||
|
292 | rtems_status_code status; | |||
|
293 | rtems_event_set event_out; | |||
|
294 | ||||
|
295 | PRINTF("In TCCK ***\n") | |||
|
296 | while(1){ | |||
|
297 | status = rtems_event_receive(RTEMS_EVENT_0, RTEMS_WAIT, RTEMS_NO_TIMEOUT, &event_out); | |||
|
298 | if (status == RTEMS_SUCCESSFUL) | |||
|
299 | { | |||
|
300 | while(tc_being_processed->ready==1){ | |||
|
301 | printf("In TCCK *** COARSE TIME 0x%x 0x%x 0x%x 0x%x FINE_TIME 0x%x 0x%x\n", | |||
|
302 | tc_being_processed->tc_pkt[OFFSET_COARSE_TIME], | |||
|
303 | tc_being_processed->tc_pkt[OFFSET_COARSE_TIME+1], | |||
|
304 | tc_being_processed->tc_pkt[OFFSET_COARSE_TIME+2], | |||
|
305 | tc_being_processed->tc_pkt[OFFSET_COARSE_TIME+3], | |||
|
306 | tc_being_processed->tc_pkt[OFFSET_FINE_TIME], | |||
|
307 | tc_being_processed->tc_pkt[OFFSET_FINE_TIME+1]); | |||
|
308 | tc_being_processed->ready = 0; | |||
|
309 | tc_being_processed = tc_being_processed->next; | |||
|
310 | } | |||
|
311 | } | |||
|
312 | } | |||
|
313 | } | |||
|
314 | ||||
|
315 | rtems_task spw_spiq_task(rtems_task_argument unused){ | |||
|
316 | rtems_event_set event_out; | |||
|
317 | struct grspw_regs_str *grspw_regs; | |||
|
318 | grspw_regs = (struct grspw_regs_str *) ADDRESS_GRSPW_REGISTERS; | |||
|
319 | ||||
|
320 | while(1){ | |||
|
321 | PRINTF("In SPIQ *** Waiting for SPW_LINKERR_EVENT\n") | |||
|
322 | rtems_event_receive(SPW_LINKERR_EVENT, RTEMS_WAIT, RTEMS_NO_TIMEOUT, &event_out); // wait for an SPW_LINKERR_EVENT | |||
|
323 | ||||
|
324 | if (rtems_task_suspend(Task_id[1])!=RTEMS_SUCCESSFUL) // suspend RECV task | |||
|
325 | PRINTF("In SPIQ *** Error suspending RECV Task\n") | |||
|
326 | ||||
|
327 | configure_spw_link(); | |||
|
328 | ||||
|
329 | if (rtems_task_restart(Task_id[1], 1)!=RTEMS_SUCCESSFUL) // restart RECV task | |||
|
330 | PRINTF("In SPIQ *** Error resume RECV Task\n") | |||
|
331 | } | |||
|
332 | } | |||
|
333 | ||||
|
334 | char *link_status(int status){ | |||
|
335 | return lstates[status]; | |||
|
336 | } | |||
|
337 | ||||
|
338 | void print_statistics(spw_stats *stats) | |||
|
339 | { | |||
|
340 | //printf(" ******** STATISTICS ******** \n"); | |||
|
341 | printf("Transmit link errors: %i\n", stats->tx_link_err); | |||
|
342 | printf("Receiver RMAP header CRC errors: %i\n", stats->rx_rmap_header_crc_err); | |||
|
343 | printf("Receiver RMAP data CRC errors: %i\n", stats->rx_rmap_data_crc_err); | |||
|
344 | printf("Receiver EEP errors: %i\n", stats->rx_eep_err); | |||
|
345 | printf("Receiver truncation errors: %i\n", stats->rx_truncated); | |||
|
346 | printf("Parity errors: %i\n", stats->parity_err); | |||
|
347 | printf("Escape errors: %i\n", stats->escape_err); | |||
|
348 | printf("Credit errors: %i\n", stats->credit_err); | |||
|
349 | printf("Disconnect errors: %i\n", stats->disconnect_err); | |||
|
350 | printf("Write synchronization errors: %i\n", stats->write_sync_err); | |||
|
351 | printf("Early EOP/EEP: %i\n", stats->early_ep); | |||
|
352 | printf("Invalid Node Address: %i\n", stats->invalid_address); | |||
|
353 | printf("Packets transmitted: %i\n", stats->packets_sent); | |||
|
354 | printf("Packets received: %i\n", stats->packets_received); | |||
|
355 | } | |||
|
356 | ||||
|
357 | int configure_spw_link() | |||
|
358 | { | |||
|
359 | rtems_status_code status; | |||
|
360 | ||||
|
361 | close(fdSPW); // close the device if it is already open | |||
|
362 | fdSPW = open(GRSPW_DEVICE_NAME, O_RDWR); // open the device. the open call reset the hardware | |||
|
363 | if (fdSPW<0) PRINTF("In configure_spw_link *** Error opening"GRSPW_DEVICE_NAME"\n") | |||
|
364 | while(ioctl(fdSPW, SPACEWIRE_IOCTRL_START, 0) != RTEMS_SUCCESSFUL){ | |||
|
365 | PRINTF("In configure_spw_link *** "GRSPW_DEVICE_NAME" not started, retry\n") | |||
|
366 | close(fdSPW); // close the device | |||
|
367 | fdSPW = open(GRSPW_DEVICE_NAME, O_RDWR); // open the device. the open call reset the hardware | |||
|
368 | if (fdSPW<0) PRINTF("In configure_spw_link *** Error opening"GRSPW_DEVICE_NAME"\n") | |||
|
369 | rtems_task_wake_after(100); | |||
|
370 | } | |||
|
371 | ||||
|
372 | PRINTF("In configure_spw_link *** "GRSPW_DEVICE_NAME" opened and started successfully\n") | |||
|
373 | ||||
|
374 | // sets a few parameters of the link | |||
|
375 | status = ioctl(fdSPW, SPACEWIRE_IOCTRL_SET_RMAPEN, 1); // sets the RMAP enable bit | |||
|
376 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In RECV *** Error SPACEWIRE_IOCTRL_SET_RMAPEN\n") | |||
|
377 | ioctl(fdSPW, SPACEWIRE_IOCTRL_SET_RXBLOCK, 1); // sets the blocking mode for reception | |||
|
378 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In RECV *** Error SPACEWIRE_IOCTRL_SET_RXBLOCK\n") | |||
|
379 | ioctl(fdSPW, SPACEWIRE_IOCTRL_SET_EVENT_ID, Task_id[3]); // sets the task ID to which an event is sent when a | |||
|
380 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In RECV *** Error SPACEWIRE_IOCTRL_SET_EVENT_ID\n") // link-error interrupt occurs | |||
|
381 | ioctl(fdSPW, SPACEWIRE_IOCTRL_SET_DISABLE_ERR, 1); // automatic link-disabling due to link-error interrupts | |||
|
382 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In RECV *** Error SPACEWIRE_IOCTRL_SET_DISABLE_ERR\n") | |||
|
383 | ioctl(fdSPW, SPACEWIRE_IOCTRL_SET_LINK_ERR_IRQ, 1); // sets the link-error interrupt bit | |||
|
384 | if (status!=RTEMS_SUCCESSFUL) PRINTF("In RECV *** Error SPACEWIRE_IOCTRL_SET_LINK_ERR_IRQ\n") | |||
|
385 | PRINTF("In configure_spw_link *** "GRSPW_DEVICE_NAME" configured successfully\n") | |||
|
386 | ||||
|
387 | return RTEMS_SUCCESSFUL; | |||
|
388 | } | |||
|
389 | ||||
|
390 | rtems_task spw_stat_task(rtems_task_argument argument){ | |||
|
391 | int i; | |||
|
392 | i = 0; | |||
|
393 | PRINTF("In STAT *** \n") | |||
|
394 | while(1){ | |||
|
395 | rtems_task_wake_after(1000); | |||
|
396 | PRINTF1("%d\n", i) | |||
|
397 | if (i == 2) { | |||
|
398 | rtems_cpu_usage_report(); | |||
|
399 | rtems_cpu_usage_reset(); | |||
|
400 | i = 0; | |||
|
401 | } | |||
|
402 | else i++; | |||
|
403 | } | |||
|
404 | } | |||
|
405 | ||||
|
406 | ||||
|
407 |
@@ -0,0 +1,189 | |||||
|
1 | #include <..\header\LPP_spwAPI.h> | |||
|
2 | #include <..\header\basic_parameters.h> | |||
|
3 | #include <..\header\ccsds_types.h> | |||
|
4 | #include <stdio.h> | |||
|
5 | #include <stdlib.h> | |||
|
6 | #include <asm-leon/timer.h> | |||
|
7 | #include <asm-leon/irq.h> | |||
|
8 | ||||
|
9 | #define FINE_TIME_RESET time_manager_regs->ctrl = 0x00000001; | |||
|
10 | ||||
|
11 | volatile int didtick = 0; | |||
|
12 | volatile int cnt = 0; | |||
|
13 | volatile int dide = 0; | |||
|
14 | ||||
|
15 | struct timerevent e; /* this has to be a global variable, it is inserted in a linked list by addtimer() */ | |||
|
16 | struct irqaction action_receive_CCSDS; /* this has to be a global variable as it will be inserted in a list */ | |||
|
17 | void register_event(); | |||
|
18 | ||||
|
19 | int event(void *arg) | |||
|
20 | { | |||
|
21 | dide = 1; | |||
|
22 | register_event(); | |||
|
23 | return 0; | |||
|
24 | } | |||
|
25 | ||||
|
26 | void register_event() | |||
|
27 | { | |||
|
28 | /* add an event 1s from now */ | |||
|
29 | do_gettimeofday((struct timeval*) &e.expire); | |||
|
30 | e.handler = event; | |||
|
31 | e.expire.tv_sec = e.expire.tv_sec + 1; | |||
|
32 | addtimer(&e); | |||
|
33 | } | |||
|
34 | ||||
|
35 | int main() | |||
|
36 | { | |||
|
37 | volatile char *rx; | |||
|
38 | char *tx; | |||
|
39 | volatile char *rmaphdr; | |||
|
40 | volatile char *rmap; | |||
|
41 | volatile int *rxd; | |||
|
42 | volatile int *txd; | |||
|
43 | int size; | |||
|
44 | int i; | |||
|
45 | int j; | |||
|
46 | unsigned char current_nb_average = 0; | |||
|
47 | spwHeader_t spwHeader; | |||
|
48 | ||||
|
49 | grspwregs_t *grspw_regs; | |||
|
50 | time_manager_regs_t *time_manager_regs; | |||
|
51 | spectral_matrices_regs_t *spectral_matrices_regs; | |||
|
52 | ||||
|
53 | grspw_regs = (grspwregs_t*) GRSPW_APB_ADDR; // the grspw registers are at the address GRSPW_APB_ADDR | |||
|
54 | time_manager_regs = (time_manager_regs_t*) LPP_TIME_MANAGER; // the time manager registers are at the address LPP_TIME_MANAGER | |||
|
55 | spectral_matrices_regs = (spectral_matrices_regs_t*) LPP_SPECTRAL_MATRIX_CTRL; // the spectral matrices registers are at this address | |||
|
56 | ||||
|
57 | rx = (char*) malloc(64); | |||
|
58 | tx = (char*) malloc(64); | |||
|
59 | rmaphdr = (char*) malloc(32); | |||
|
60 | rmap = (char*) malloc(64); | |||
|
61 | rxd = (int*) almalloc(1024); // memory allocation for the receiver descriptors table | |||
|
62 | // almalloc => 1024 bytes aligned address | |||
|
63 | txd = (int*) almalloc(1024); // memory allocation for the transmitter descriptors table | |||
|
64 | // almalloc => 1024 bytes aligned address | |||
|
65 | ||||
|
66 | // GRSPW initilization | |||
|
67 | spw_reset(grspw_regs); // RESET THE SPACEWIRE LINK | |||
|
68 | spw_init(NODEADDR, CLKDIV, DESTKEY, RXMAXLEN, grspw_regs); // INITIALIZE THE SPACEWIRE REGISTERS | |||
|
69 | enable_timecode_reception(grspw_regs); // enable time-code reception | |||
|
70 | ||||
|
71 | while( grspw_link_state(grspw_regs) != SPW_LINK_STATE_RUN ) {} // wait for the link to be in run state | |||
|
72 | ||||
|
73 | // INITIALIZE THE TRANSMITTER RECEIVER DESCRIPTORS TABLES | |||
|
74 | for(i=0; i<8; i++) { // initialize the receiver and transmitter descriptor tables | |||
|
75 | rxd[i] = 0; | |||
|
76 | txd[i] = 0; | |||
|
77 | } | |||
|
78 | grspw_regs->txdesc = (int) txd; | |||
|
79 | grspw_regs->rxdesc = (int) rxd; | |||
|
80 | ||||
|
81 | for (j=0; j<64; j++){ // initialize the rx and tx data tables | |||
|
82 | rx[j] = j; | |||
|
83 | tx[j] = 10; | |||
|
84 | } | |||
|
85 | ||||
|
86 | // INITIALIZE THE TRANSMISSION | |||
|
87 | spwHeader.targetLogicalAddress = 0x21; // initialize the SpaceWire Header | |||
|
88 | spwHeader.protocolIdentifier = 0x02; | |||
|
89 | spwHeader.reserved = 0x00; | |||
|
90 | spwHeader.userApplication = 0x00; | |||
|
91 | set_txd(tx, 32, (char*) &spwHeader, HEADERLEN, txd); // initialize the transmitter descriptor 0 | |||
|
92 | ||||
|
93 | INIT_CCSDS_TELEMETRY_HEADER | |||
|
94 | ||||
|
95 | // INITIALIZE THE RECEPTION | |||
|
96 | enable_receiver_descriptor(rx, rxd); // enable the reception of a SpaceWire packet | |||
|
97 | ||||
|
98 | // START SPW TRANSMISSION / RECEPTION | |||
|
99 | grspw_regs->dmactrl = GRSPW_DMACTRL_NS | GRSPW_DMACTRL_RD | GRSPW_DMACTRL_RI | GRSPW_DMACTRL_RE | GRSPW_DMACTRL_TE; | |||
|
100 | // NS = 1 wait for a descriptor to be activated | |||
|
101 | // RD = 1 there are enabled descriptors | |||
|
102 | // RI = 1 receive interrupts | |||
|
103 | // RE = 1 receiver enabled | |||
|
104 | // TE = 1 transmitter enabled | |||
|
105 | ||||
|
106 | // TIME FUNCTIONS | |||
|
107 | leonbare_init_ticks(); // initialize the time abilities of the Leon3 | |||
|
108 | register_event(); // create an event | |||
|
109 | ||||
|
110 | // SETS AN IRQ HANDLER UPON RECEPTION OF A SPACEWIRE PACKET | |||
|
111 | spacewire_PARAMETERS.size = &size; // size of the receive packet | |||
|
112 | spacewire_PARAMETERS.rx = rx; // location of the data | |||
|
113 | spacewire_PARAMETERS.rxd = rxd; // associated descriptor | |||
|
114 | spacewire_PARAMETERS.tx = tx; // location of the data | |||
|
115 | spacewire_PARAMETERS.txd = txd; // associated descriptor | |||
|
116 | spacewire_PARAMETERS.regs = grspw_regs; // grspw module registers | |||
|
117 | action_receive_CCSDS.handler = (irqhandler) irqhandler_receive_CCSDS; // create the irq handler | |||
|
118 | chained_catch_interrupt(GRSPW_IRQ, &action_receive_CCSDS); // associate the handler with the GRSPW_IRQ | |||
|
119 | enable_irq(GRSPW_IRQ); // enable the interruption driven by the grspw module upon reception of a packet | |||
|
120 | ||||
|
121 | packet_type.time_packet = 0; | |||
|
122 | packet_type.tc_packet = 0; | |||
|
123 | ||||
|
124 | //write spectral matrices location in the registers | |||
|
125 | spectral_matrices_regs->address1 = (unsigned int) spectral_matrix_f0_a; | |||
|
126 | spectral_matrices_regs->address2 = (unsigned int) spectral_matrix_f0_b; | |||
|
127 | ||||
|
128 | printf("let's work...\n"); | |||
|
129 | ||||
|
130 | while(1) { // infinite loop | |||
|
131 | if (packet_type.time_packet == 1) { | |||
|
132 | FINE_TIME_RESET | |||
|
133 | time_manager_regs->next_coarse_time = (rx[10+4]<<24) + (rx[11+4]<<16) + (rx[12+4]<<8) + (rx[13+4]); | |||
|
134 | send_fine_time(time_manager_regs->fine_time); | |||
|
135 | enable_receiver_descriptor(spacewire_PARAMETERS.rx, spacewire_PARAMETERS.rxd); | |||
|
136 | enable_receiver(spacewire_PARAMETERS.regs); | |||
|
137 | packet_type.time_packet = 0; | |||
|
138 | } | |||
|
139 | if ((spectral_matrices_regs->ctrl & 1) == 1) { | |||
|
140 | FINE_TIME_RESET | |||
|
141 | for (i=0; i<TOTAL_SIZE_SPECTRAL_MATRIX; i++) { | |||
|
142 | averaged_spectral_matrix_f0[i] = averaged_spectral_matrix_f0[i] + spectral_matrix_f0_a[i]; | |||
|
143 | } | |||
|
144 | send_fine_time(time_manager_regs->fine_time); | |||
|
145 | spectral_matrices_regs->ctrl = spectral_matrices_regs->ctrl & 0xfffffffe; | |||
|
146 | current_nb_average++; | |||
|
147 | } | |||
|
148 | if ( ( (spectral_matrices_regs->ctrl>>1) & 1) == 1) { | |||
|
149 | FINE_TIME_RESET | |||
|
150 | for (i=0; i<TOTAL_SIZE_SPECTRAL_MATRIX; i++) { | |||
|
151 | averaged_spectral_matrix_f0[i] = averaged_spectral_matrix_f0[i] + spectral_matrix_f0_b[i]; | |||
|
152 | } | |||
|
153 | send_fine_time(time_manager_regs->fine_time); | |||
|
154 | spectral_matrices_regs->ctrl = spectral_matrices_regs->ctrl & 0xfffffffd; | |||
|
155 | current_nb_average++; | |||
|
156 | } | |||
|
157 | if ( current_nb_average == NB_AVERAGE_NORMAL_f0 ) { | |||
|
158 | FINE_TIME_RESET | |||
|
159 | for(i=0;i<NB_BINS_COMPRESSED_MATRIX_f0;i++){ | |||
|
160 | j = 17 + i * 8; | |||
|
161 | compressed_spectral_matrix_f0[i]= (averaged_spectral_matrix_f0[j] | |||
|
162 | + averaged_spectral_matrix_f0[j+1] | |||
|
163 | + averaged_spectral_matrix_f0[j+2] | |||
|
164 | + averaged_spectral_matrix_f0[j+3] | |||
|
165 | + averaged_spectral_matrix_f0[j+4] | |||
|
166 | + averaged_spectral_matrix_f0[j+5] | |||
|
167 | + averaged_spectral_matrix_f0[j+6] | |||
|
168 | + averaged_spectral_matrix_f0[j+7])/(8*NB_AVERAGE_NORMAL_f0); | |||
|
169 | } | |||
|
170 | ||||
|
171 | BP1_set(); // computation of the BP1 set and building of the corresponding telemetry product | |||
|
172 | ||||
|
173 | // sending of the BP1 set | |||
|
174 | set_txd( LFR_BP1_F0, NB_BINS_COMPRESSED_MATRIX_f0*9, // initialize the transmitter descriptor 0 | |||
|
175 | (char*) &ccsdsTelemetryHeader, CCSDS_TELEMETRY_HEADER_LENGTH, txd ); | |||
|
176 | enable_transmitter_descriptor(CCSDS_TELEMETRY_HEADER_LENGTH, spacewire_PARAMETERS.txd); // enable the descriptor for transmission | |||
|
177 | enable_transmitter(spacewire_PARAMETERS.regs); // enable the transmission | |||
|
178 | ||||
|
179 | for (i=0; i<TOTAL_SIZE_SPECTRAL_MATRIX; i++) { | |||
|
180 | averaged_spectral_matrix_f0[i] = 0; | |||
|
181 | } | |||
|
182 | //send_fine_time(time_manager_regs->fine_time); | |||
|
183 | current_nb_average = 0; | |||
|
184 | } | |||
|
185 | } | |||
|
186 | ||||
|
187 | return 0; | |||
|
188 | } | |||
|
189 |
@@ -0,0 +1,11 | |||||
|
1 | #include <..\header\LPP_grspw.h> | |||
|
2 | #include <stdio.h> | |||
|
3 | ||||
|
4 | #define REG_WRITE(addr, val) (*(volatile unsigned int *)(addr) = (unsigned int)(val)) | |||
|
5 | #define REG_READ(addr) (*(volatile unsigned int *)(addr)) | |||
|
6 | ||||
|
7 | /* Return Current Link State */ | |||
|
8 | unsigned int grspw_link_state(grspwregs_t *regs) | |||
|
9 | { | |||
|
10 | return ((regs->status & GRSPW_STAT_LS) >> GRSPW_STAT_LS_BIT); | |||
|
11 | } |
@@ -0,0 +1,176 | |||||
|
1 | #include <..\header\LPP_spwAPI.h> | |||
|
2 | #include <stdlib.h> | |||
|
3 | #include <stdio.h> | |||
|
4 | ||||
|
5 | volatile int *lreg = (int*) 0x80000200; // the IRQMP controller registers are at 0x80000200 | |||
|
6 | ||||
|
7 | inline int loadmemAPI(int addr) | |||
|
8 | { | |||
|
9 | int tmp; | |||
|
10 | asm volatile (" lda [%1]1, %0 " // LDA => Load Word from Alternate space | |||
|
11 | : "=r" (tmp) | |||
|
12 | : "r" (addr) | |||
|
13 | ); | |||
|
14 | return tmp; | |||
|
15 | } | |||
|
16 | ||||
|
17 | inline char loadb(int addr) | |||
|
18 | { | |||
|
19 | char tmp; | |||
|
20 | asm volatile (" lduba [%1]1, %0 " | |||
|
21 | : "=r" (tmp) | |||
|
22 | : "r" (addr) | |||
|
23 | ); | |||
|
24 | return tmp; | |||
|
25 | } | |||
|
26 | ||||
|
27 | char *almalloc(int sz) | |||
|
28 | { | |||
|
29 | char *tmp; | |||
|
30 | tmp = (char*) malloc(2*sz); | |||
|
31 | tmp = (char*) (((int)tmp+sz) & ~(sz-1)); | |||
|
32 | return(tmp); | |||
|
33 | } | |||
|
34 | ||||
|
35 | ////// | |||
|
36 | // SPW | |||
|
37 | ////// | |||
|
38 | ||||
|
39 | void spw_reset(grspwregs_t *regs) | |||
|
40 | { | |||
|
41 | regs->ctrl = GRSPW_CTRL_RS; // make complete reset of the spacewire node, self clearing | |||
|
42 | } | |||
|
43 | ||||
|
44 | void spw_init(int nodeaddr, int clkdiv, int destkey, int rxmaxlen, grspwregs_t *regs) | |||
|
45 | { | |||
|
46 | regs->ctrl = GRSPW_CTRL_LS | GRSPW_CTRL_RE; // link start (LS) | |||
|
47 | // RMAP enable (RE) | |||
|
48 | regs->ctrl = GRSPW_CTRL_LS | GRSPW_CTRL_RE; | |||
|
49 | regs->ctrl = GRSPW_CTRL_LS | GRSPW_CTRL_RE; | |||
|
50 | regs->ctrl = GRSPW_CTRL_LS | GRSPW_CTRL_RE; | |||
|
51 | regs->ctrl = GRSPW_CTRL_LS | GRSPW_CTRL_RE; | |||
|
52 | regs->ctrl = GRSPW_CTRL_LS | GRSPW_CTRL_RE; | |||
|
53 | regs->status = 0xffffffff; | |||
|
54 | regs->nodeaddr = nodeaddr; | |||
|
55 | regs->clkdiv = clkdiv; | |||
|
56 | regs->destkey = destkey; | |||
|
57 | regs->time = 0; | |||
|
58 | regs->dmactrl = GRSPW_DMACTRL_RA | GRSPW_DMACTRL_TA | GRSPW_DMACTRL_PR | GRSPW_DMACTRL_PS | GRSPW_DMACTRL_AI; | |||
|
59 | regs->rxmaxlen = rxmaxlen; | |||
|
60 | regs->txdesc = 0; | |||
|
61 | regs->rxdesc = 0; | |||
|
62 | } | |||
|
63 | ||||
|
64 | void set_txd(char *dataAddress, unsigned int dataLength, char *headerAddress, unsigned int headerLength, volatile int *txd) | |||
|
65 | { | |||
|
66 | txd[4] = 0; | |||
|
67 | txd[3] = (int) dataAddress; // data address | |||
|
68 | txd[2] = dataLength; // data length | |||
|
69 | txd[1] = (int) headerAddress; // header address | |||
|
70 | txd[0] = (1 << 13) | (1 << 12) | headerLength; // bit 13 WR = 1 next descriptor read will be 1st one in the table (at the base address) | |||
|
71 | // bit 12 EN = 1 enable transmitter descriptor | |||
|
72 | // bit 0 to 7 stand for the header length | |||
|
73 | } | |||
|
74 | ||||
|
75 | int spw_checkrx(int* size, volatile int *rxd, grspwregs_t *regs) | |||
|
76 | { | |||
|
77 | volatile int tmp = 0; | |||
|
78 | tmp = regs->dmactrl; | |||
|
79 | if ( ( (tmp >> 6) & 1 ) ) | |||
|
80 | { // bit 6 PR packet received | |||
|
81 | *size = loadmemAPI((int) &rxd[0]) & 0x00001fff; | |||
|
82 | regs->dmactrl = regs->dmactrl | 1 << 6; // clear bit 6 PR (packet received) by writing a one | |||
|
83 | return 1; | |||
|
84 | } | |||
|
85 | else return 0; | |||
|
86 | } | |||
|
87 | ||||
|
88 | int spw_checktx(grspwregs_t *regs) | |||
|
89 | { | |||
|
90 | if ( ( (regs->dmactrl >> 5) & 1 )==1 ) | |||
|
91 | { // bit 5 PS (packet sent), cleared when written with a one | |||
|
92 | regs->dmactrl = regs->dmactrl | 1 << 5; // clear bit 5 PS (packet sent) by writing a one | |||
|
93 | return 1; | |||
|
94 | } | |||
|
95 | else return 0; | |||
|
96 | } | |||
|
97 | ||||
|
98 | void enable_transmitter_descriptor(unsigned int headerLength, volatile int *txd) | |||
|
99 | { | |||
|
100 | txd[0] = GRSPW_TXBD_WR | GRSPW_TXBD_EN; | |||
|
101 | //WR = 1 next descriptor read will be 1st one in the table (at the base address) | |||
|
102 | //EN = 1 enable transmitter descriptor | |||
|
103 | } | |||
|
104 | ||||
|
105 | void enable_transmitter(grspwregs_t *regs) | |||
|
106 | { | |||
|
107 | regs->dmactrl = regs->dmactrl | GRSPW_DMACTRL_TE; | |||
|
108 | } | |||
|
109 | ||||
|
110 | void enable_receiver_descriptor(volatile char *rx, volatile int *rxd) | |||
|
111 | { | |||
|
112 | rxd[1] = (int) rx; | |||
|
113 | rxd[0] = GRSPW_RXBD_IE | GRSPW_RXBD_WR | GRSPW_RXBD_EN; | |||
|
114 | // IE = 1 Interrupt enable | |||
|
115 | // WR = 1 next descriptor will be the 1st one in the desc table (at the base address) | |||
|
116 | // EN = 1 activate the descriptor | |||
|
117 | } | |||
|
118 | ||||
|
119 | void enable_receiver(grspwregs_t *regs) | |||
|
120 | { | |||
|
121 | regs->dmactrl = regs->dmactrl | 1 << 11 | 1 << 2; | |||
|
122 | } | |||
|
123 | ||||
|
124 | int enable_timecode_reception(grspwregs_t *regs) | |||
|
125 | { | |||
|
126 | regs->ctrl = regs->ctrl | GRSPW_CTRL_TR; | |||
|
127 | return 1; | |||
|
128 | } | |||
|
129 | ||||
|
130 | int check_time(grspwregs_t *grspw_regs) | |||
|
131 | { | |||
|
132 | int tmp = loadmemAPI((int)&(grspw_regs->status)) & 1; | |||
|
133 | if (tmp) { | |||
|
134 | grspw_regs->status = loadmemAPI((int)&(grspw_regs->status)) | 1; | |||
|
135 | } | |||
|
136 | return tmp; | |||
|
137 | } | |||
|
138 | ||||
|
139 | ////////////// | |||
|
140 | // GENERAL USE | |||
|
141 | ////////////// | |||
|
142 | void send_fine_time(unsigned int fine_time){ | |||
|
143 | spacewire_PARAMETERS.tx[0] = (char) fine_time; // send the fine time value to LPPMON | |||
|
144 | spacewire_PARAMETERS.tx[1] = (char) (fine_time>>8); | |||
|
145 | spacewire_PARAMETERS.tx[2] = (char) (fine_time>>16); | |||
|
146 | spacewire_PARAMETERS.tx[3] = (char) (fine_time>>24); | |||
|
147 | enable_transmitter_descriptor(HEADERLEN, spacewire_PARAMETERS.txd); // enable the descriptor for transmission | |||
|
148 | enable_transmitter(spacewire_PARAMETERS.regs); // enable the transmission | |||
|
149 | } | |||
|
150 | ||||
|
151 | ////// | |||
|
152 | // IRQ | |||
|
153 | ////// | |||
|
154 | ||||
|
155 | int irqhandler_receive_CCSDS(int irq, void * args, struct leonbare_pt_regs * leon_regs) | |||
|
156 | { | |||
|
157 | if (spw_checkrx(spacewire_PARAMETERS.size, spacewire_PARAMETERS.rxd, spacewire_PARAMETERS.regs)==1) | |||
|
158 | { | |||
|
159 | packet_type.time_packet = 1; | |||
|
160 | return 1; | |||
|
161 | } | |||
|
162 | return 0; | |||
|
163 | } | |||
|
164 | ||||
|
165 | int enable_irq(int irq) | |||
|
166 | { | |||
|
167 | lreg[ICLEAR/4] = (1 << irq); // clear any pending irq | |||
|
168 | lreg[IMASK/4] = lreg[IMASK/4] | (1 << irq); // unmask irq | |||
|
169 | return 1; | |||
|
170 | } | |||
|
171 | ||||
|
172 | int disable_irq(int irq) { lreg[IMASK/4] &= ~(1 << irq); return 1;} | |||
|
173 | ||||
|
174 | int force_irq(int irq) { lreg[IFORCE/4] = lreg[IFORCE/4] | (1 << irq); return 1;} | |||
|
175 | ||||
|
176 |
@@ -0,0 +1,74 | |||||
|
1 | #include <..\header\TC_handler.h> | |||
|
2 | ||||
|
3 | char TM_checker(ccsdsTelecommandSourcePacketHeader_t * TMPacket) | |||
|
4 | { | |||
|
5 | unsigned char pid = 0; | |||
|
6 | unsigned char category = 0; | |||
|
7 | unsigned int length = 0; | |||
|
8 | ||||
|
9 | // APID check *** APID on 2 bytes | |||
|
10 | pid = ((TMPacket->packetID[0] & 0x07)<<4) + ( (TMPacket->packetID[1]>>4) & 0x0f ); // PID = 11 *** 7 bits xxxxx210 7654xxxx | |||
|
11 | category = (TMPacket->packetID[1] & 0x0f); // PACKET_CATEGORY = 12 *** 4 bits xxxxxxxx xxxx3210 | |||
|
12 | if (pid!=CCSDS_PROCESS_ID) return CCSDS_ERR_PID; | |||
|
13 | if (category!=CCSDS_PACKET_CATEGORY) return CCSDS_ERR_CAT; | |||
|
14 | ||||
|
15 | // packet length check | |||
|
16 | length = TMPacket->packetLength[1] + TMPacket->packetLength[0] * 256; | |||
|
17 | if (category<=CCSDS_TELECOMMAND_MAX_PACKET_LENGTH) return CCSDS_ERR_LENGTH; // check that the packet does not exceed the MAX size | |||
|
18 | ||||
|
19 | // service type, subtype and packet length check | |||
|
20 | switch(TMPacket->dataFieldHeader[1]) { // service type, authorized values are 181 and 9 | |||
|
21 | case 181: | |||
|
22 | switch(TMPacket->dataFieldHeader[2]){ //subtype, autorized values are 3, 20, 21, 24, 27, 28, 30, 40, 50, 60, 61 | |||
|
23 | case 3: | |||
|
24 | if (length!=12) return CCSDS_ERR_LENGTH; | |||
|
25 | break; | |||
|
26 | case 20: | |||
|
27 | if (length!=14) return CCSDS_ERR_LENGTH; | |||
|
28 | break; | |||
|
29 | case 21: | |||
|
30 | if (length!=20) return CCSDS_ERR_LENGTH; | |||
|
31 | break; | |||
|
32 | case 24: | |||
|
33 | if (length!=14) return CCSDS_ERR_LENGTH; | |||
|
34 | break; | |||
|
35 | case 27: | |||
|
36 | if (length!=14) return CCSDS_ERR_LENGTH; | |||
|
37 | break; | |||
|
38 | case 28: | |||
|
39 | if (length!=14) return CCSDS_ERR_LENGTH; | |||
|
40 | break; | |||
|
41 | case 30: | |||
|
42 | if (length!=12) return CCSDS_ERR_LENGTH; | |||
|
43 | break; | |||
|
44 | case 40: | |||
|
45 | if (length!=20) return CCSDS_ERR_LENGTH; | |||
|
46 | break; | |||
|
47 | case 50: | |||
|
48 | if (length!=50) return CCSDS_ERR_LENGTH; | |||
|
49 | break; | |||
|
50 | case 60: | |||
|
51 | if (length!=12) return CCSDS_ERR_LENGTH; | |||
|
52 | break; | |||
|
53 | case 61: | |||
|
54 | if (length!=12) return CCSDS_ERR_LENGTH; | |||
|
55 | break; | |||
|
56 | default: | |||
|
57 | return CCSDS_ERR_SUBTYPE; | |||
|
58 | break; | |||
|
59 | } | |||
|
60 | case 9: | |||
|
61 | if (TMPacket->dataFieldHeader[2]==129) return CCSDS_ERR_SUBTYPE; | |||
|
62 | if (length!=18) return CCSDS_ERR_LENGTH; | |||
|
63 | break; | |||
|
64 | default: | |||
|
65 | return CCSDS_ERR_TYPE; | |||
|
66 | break; | |||
|
67 | } | |||
|
68 | ||||
|
69 | // source ID check // Source ID not documented in the ICD | |||
|
70 | ||||
|
71 | // packet error control, CRC check | |||
|
72 | ||||
|
73 | return CCSDS_TM_VALID; | |||
|
74 | } |
@@ -0,0 +1,194 | |||||
|
1 | #include <..\header\basic_parameters.h> | |||
|
2 | #include<math.h> | |||
|
3 | ||||
|
4 | float k14_re = 1; | |||
|
5 | float k14_im = 1; | |||
|
6 | float k14_bis_re = 1; | |||
|
7 | float k14_bis_im = 1; | |||
|
8 | float k14_tris_re = 1; | |||
|
9 | float k14_tris_im = 1; | |||
|
10 | float k15_re = 1; | |||
|
11 | float k15_im = 1; | |||
|
12 | float k15_bis_re = 1; | |||
|
13 | float k15_bis_im = 1; | |||
|
14 | float k24_re = 1; | |||
|
15 | float k24_im = 1; | |||
|
16 | float k24_bis_re = 1; | |||
|
17 | float k24_bis_im = 1; | |||
|
18 | float k24_tris_re = 1; | |||
|
19 | float k24_tris_im = 1; | |||
|
20 | float k25_re = 1; | |||
|
21 | float k25_im = 1; | |||
|
22 | float k25_bis_re = 1; | |||
|
23 | float k25_bis_im = 1; | |||
|
24 | float k34_re = 1; | |||
|
25 | float k34_im = 1; | |||
|
26 | float k44 = 1; | |||
|
27 | float k55 = 1; | |||
|
28 | float k45_re = 1; | |||
|
29 | float k45_im = 1; | |||
|
30 | float alpha_M = M_PI/4; | |||
|
31 | ||||
|
32 | void BP1_set(){ | |||
|
33 | int i, j; | |||
|
34 | unsigned char tmp_u_char; | |||
|
35 | unsigned char * pt_char; | |||
|
36 | float PSDB, PSDE; | |||
|
37 | float NVEC_V0, NVEC_V1, NVEC_V2; | |||
|
38 | float significand; | |||
|
39 | int exponent; | |||
|
40 | float aux, tr_SB_SB, tmp; | |||
|
41 | float e_cross_b_re, e_cross_b_im; | |||
|
42 | float n_cross_e_scal_b_re = 0, n_cross_e_scal_b_im = 0; | |||
|
43 | float nx = 0, ny = 0; | |||
|
44 | float bz_bz_star = 0; | |||
|
45 | for(i=0; i<NB_BINS_COMPRESSED_MATRIX_f0; i++){ | |||
|
46 | //============================================== | |||
|
47 | // BP1 PSD == B PAR_LFR_SC_BP1_PE_FL0 == 16 bits | |||
|
48 | PSDB = compressed_spectral_matrix_f0[i*30] // S11 | |||
|
49 | + compressed_spectral_matrix_f0[i*30+10] // S22 | |||
|
50 | + compressed_spectral_matrix_f0[i*30+18]; // S33 | |||
|
51 | significand = frexp(PSDB, &exponent); | |||
|
52 | pt_char = (unsigned char*) &PSDB; | |||
|
53 | LFR_BP1_F0[i*9+8] = pt_char[0]; // bits 31 downto 24 of the float | |||
|
54 | LFR_BP1_F0[i*9+7] = pt_char[1]; // bits 23 downto 16 of the float | |||
|
55 | //============================================== | |||
|
56 | // BP1 PSD == E PAR_LFR_SC_BP1_PB_FL0 == 16 bits | |||
|
57 | PSDE = compressed_spectral_matrix_f0[i*30+24] * k44 // S44 | |||
|
58 | + compressed_spectral_matrix_f0[i*30+28] * k55 // S55 | |||
|
59 | + compressed_spectral_matrix_f0[i*30+26] * k45_re // S45 | |||
|
60 | - compressed_spectral_matrix_f0[i*30+27] * k45_im; // S45 | |||
|
61 | pt_char = (unsigned char*) &PSDE; | |||
|
62 | LFR_BP1_F0[i*9+6] = pt_char[0]; // bits 31 downto 24 of the float | |||
|
63 | LFR_BP1_F0[i*9+5] = pt_char[1]; // bits 23 downto 16 of the float | |||
|
64 | //============================================================================== | |||
|
65 | // BP1 normal wave vector == PAR_LFR_SC_BP1_NVEC_V0_F0 == 8 bits | |||
|
66 | // == PAR_LFR_SC_BP1_NVEC_V1_F0 == 8 bits | |||
|
67 | // == PAR_LFR_SC_BP1_NVEC_V2_F0 == 1 bits | |||
|
68 | tmp = sqrt( | |||
|
69 | compressed_spectral_matrix_f0[i*30+3]*compressed_spectral_matrix_f0[i*30+3] //Im S12 | |||
|
70 | +compressed_spectral_matrix_f0[i*30+5]*compressed_spectral_matrix_f0[i*30+5] //Im S13 | |||
|
71 | +compressed_spectral_matrix_f0[i*30+5]*compressed_spectral_matrix_f0[i*30+13] //Im S23 | |||
|
72 | ); | |||
|
73 | NVEC_V0 = compressed_spectral_matrix_f0[i*30+13] / tmp; // Im S23 | |||
|
74 | NVEC_V1 = -compressed_spectral_matrix_f0[i*30+5] / tmp; // Im S13 | |||
|
75 | NVEC_V2 = compressed_spectral_matrix_f0[i*30+1] / tmp; // Im S12 | |||
|
76 | LFR_BP1_F0[i*9+4] = (char) (NVEC_V0*256); | |||
|
77 | LFR_BP1_F0[i*9+3] = (char) (NVEC_V1*256); | |||
|
78 | pt_char = (unsigned char*) &NVEC_V2; | |||
|
79 | LFR_BP1_F0[i*9+2] = pt_char[0] & 0x80; // extract the sign of NVEC_V2 | |||
|
80 | //======================================================= | |||
|
81 | // BP1 ellipticity == PAR_LFR_SC_BP1_ELLIP_F0 == 4 bits | |||
|
82 | aux = 2*tmp / PSDB; // compute the ellipticity | |||
|
83 | tmp_u_char = (unsigned char) (aux*(16-1)); // convert the ellipticity | |||
|
84 | LFR_BP1_F0[i*9+2] = LFR_BP1_F0[i*9+2] | ((tmp_u_char&0x0f)<<3); // keeps 4 bits of the resulting unsigned char | |||
|
85 | //============================================================== | |||
|
86 | // BP1 degree of polarization == PAR_LFR_SC_BP1_DOP_F0 == 3 bits | |||
|
87 | for(j = 0; j<NB_VALUES_PER_SPECTRAL_MATRIX;j++){ | |||
|
88 | tr_SB_SB = compressed_spectral_matrix_f0[i*30]*compressed_spectral_matrix_f0[i*30] | |||
|
89 | + compressed_spectral_matrix_f0[i*30+10]*compressed_spectral_matrix_f0[i*30+10] | |||
|
90 | + compressed_spectral_matrix_f0[i*30+18]*compressed_spectral_matrix_f0[i*30+18] | |||
|
91 | + 2 * compressed_spectral_matrix_f0[i*30+2]*compressed_spectral_matrix_f0[i*30+2] | |||
|
92 | + 2 * compressed_spectral_matrix_f0[i*30+3]*compressed_spectral_matrix_f0[i*30+3] | |||
|
93 | + 2 * compressed_spectral_matrix_f0[i*30+4]*compressed_spectral_matrix_f0[i*30+4] | |||
|
94 | + 2 * compressed_spectral_matrix_f0[i*30+5]*compressed_spectral_matrix_f0[i*30+5] | |||
|
95 | + 2 * compressed_spectral_matrix_f0[i*30+12]*compressed_spectral_matrix_f0[i*30+12] | |||
|
96 | + 2 * compressed_spectral_matrix_f0[i*30+13]*compressed_spectral_matrix_f0[i*30+13]; | |||
|
97 | } | |||
|
98 | aux = PSDB*PSDB; | |||
|
99 | tmp = ( 3*tr_SB_SB - aux ) / ( 2 * aux ); | |||
|
100 | tmp_u_char = (unsigned char) (NVEC_V0*(8-1)); | |||
|
101 | LFR_BP1_F0[i*9+2] = LFR_BP1_F0[i*9+2] | ((tmp_u_char&0x07)); // keeps 3 bits of the resulting unsigned char | |||
|
102 | //======================================================================================= | |||
|
103 | // BP1 z-component of the normalized Poynting flux == PAR_LFR_SC_BP1_SZ_F0 == 8 bits (7+1) | |||
|
104 | e_cross_b_re = compressed_spectral_matrix_f0[i*30+20]*k34_re | |||
|
105 | + compressed_spectral_matrix_f0[i*30+6]*k14_re | |||
|
106 | + compressed_spectral_matrix_f0[i*30+8]*k15_re | |||
|
107 | + compressed_spectral_matrix_f0[i*30+14]*k24_re | |||
|
108 | + compressed_spectral_matrix_f0[i*30+16]*k25_re; | |||
|
109 | e_cross_b_im = compressed_spectral_matrix_f0[i*30+21]*k34_im | |||
|
110 | + compressed_spectral_matrix_f0[i*30+7]*k14_im | |||
|
111 | + compressed_spectral_matrix_f0[i*30+9]*k15_im | |||
|
112 | + compressed_spectral_matrix_f0[i*30+15]*k24_im | |||
|
113 | + compressed_spectral_matrix_f0[i*30+17]*k25_im; | |||
|
114 | tmp = e_cross_b_re / PSDE; // compute ReaSz | |||
|
115 | LFR_BP1_F0[i*9+1] = ((unsigned char) (tmp * 128)) & 0x7f; // is it always positive? | |||
|
116 | tmp = e_cross_b_re * e_cross_b_im; | |||
|
117 | pt_char = (unsigned char*) &tmp; | |||
|
118 | LFR_BP1_F0[i*9+1] = LFR_BP1_F0[i*9+1] | (pt_char[0] & 0x80); // extract the sign of ArgSz | |||
|
119 | //====================================================================== | |||
|
120 | // BP1 phase velocity estimator == PAR_LFR_SC_BP1_VPHI_F0 == 8 bits (7+1) | |||
|
121 | nx = -sin(alpha_M)*NVEC_V0 - cos(alpha_M)*NVEC_V1; | |||
|
122 | ny = NVEC_V2; | |||
|
123 | bz_bz_star = cos(alpha_M) * cos(alpha_M) * compressed_spectral_matrix_f0[i*30] // re S11 | |||
|
124 | + sin(alpha_M) * sin(alpha_M) * compressed_spectral_matrix_f0[i*30+10] // re S22 | |||
|
125 | - 2 * sin(alpha_M) * cos(alpha_M) * compressed_spectral_matrix_f0[i*30+2]; // re S12 | |||
|
126 | n_cross_e_scal_b_re = nx * (compressed_spectral_matrix_f0[i*30+8]*k15_bis_re | |||
|
127 | +compressed_spectral_matrix_f0[i*30+6]*k14_bis_re | |||
|
128 | +compressed_spectral_matrix_f0[i*30+16]*k25_bis_re | |||
|
129 | +compressed_spectral_matrix_f0[i*30+14]*k24_bis_re) | |||
|
130 | + ny * (compressed_spectral_matrix_f0[i*30+6]*k14_tris_re | |||
|
131 | +compressed_spectral_matrix_f0[i*30+14]*k24_tris_re); | |||
|
132 | n_cross_e_scal_b_im = nx * (compressed_spectral_matrix_f0[i*30+8]*k15_bis_im | |||
|
133 | +compressed_spectral_matrix_f0[i*30+6]*k14_bis_im | |||
|
134 | +compressed_spectral_matrix_f0[i*30+16]*k25_bis_im | |||
|
135 | +compressed_spectral_matrix_f0[i*30+14]*k24_bis_im) | |||
|
136 | + ny * (compressed_spectral_matrix_f0[i*30+6]*k14_tris_im | |||
|
137 | +compressed_spectral_matrix_f0[i*30+14]*k24_tris_im); | |||
|
138 | tmp = n_cross_e_scal_b_re / bz_bz_star; | |||
|
139 | LFR_BP1_F0[i*9+0] = ((unsigned char) (tmp * 128)) & 0x7f; // is it always positive? | |||
|
140 | tmp = n_cross_e_scal_b_re * n_cross_e_scal_b_im; | |||
|
141 | pt_char = (unsigned char*) &tmp; | |||
|
142 | LFR_BP1_F0[i*9+1] = LFR_BP1_F0[i*9+0] | (pt_char[0] & 0x80); // extract the sign of ArgV | |||
|
143 | } | |||
|
144 | ||||
|
145 | } | |||
|
146 | ||||
|
147 | void BP2_set(){ | |||
|
148 | // BP2 autocorrelation | |||
|
149 | int i, aux = 0; | |||
|
150 | for(i = 0; i<NB_BINS_COMPRESSED_MATRIX_f0; i++){ | |||
|
151 | // S12 | |||
|
152 | aux = sqrt(compressed_spectral_matrix_f0[i*30]*compressed_spectral_matrix_f0[i*30+10]); | |||
|
153 | compressed_spectral_matrix_f0[i*30+2] = compressed_spectral_matrix_f0[i*30+2] / aux; | |||
|
154 | compressed_spectral_matrix_f0[i*30+3] = compressed_spectral_matrix_f0[i*30+3] / aux; | |||
|
155 | // S13 | |||
|
156 | aux = sqrt(compressed_spectral_matrix_f0[i*30]*compressed_spectral_matrix_f0[i*30+18]); | |||
|
157 | compressed_spectral_matrix_f0[i*30+4] = compressed_spectral_matrix_f0[i*30+4] / aux; | |||
|
158 | compressed_spectral_matrix_f0[i*30+5] = compressed_spectral_matrix_f0[i*30+5] / aux; | |||
|
159 | // S23 | |||
|
160 | aux = sqrt(compressed_spectral_matrix_f0[i*30+12]*compressed_spectral_matrix_f0[i*30+18]); | |||
|
161 | compressed_spectral_matrix_f0[i*30+12] = compressed_spectral_matrix_f0[i*30+12] / aux; | |||
|
162 | compressed_spectral_matrix_f0[i*30+13] = compressed_spectral_matrix_f0[i*30+13] / aux; | |||
|
163 | // S45 | |||
|
164 | aux = sqrt(compressed_spectral_matrix_f0[i*30+24]*compressed_spectral_matrix_f0[i*30+28]); | |||
|
165 | compressed_spectral_matrix_f0[i*30+26] = compressed_spectral_matrix_f0[i*30+26] / aux; | |||
|
166 | compressed_spectral_matrix_f0[i*30+27] = compressed_spectral_matrix_f0[i*30+27] / aux; | |||
|
167 | // S14 | |||
|
168 | aux = sqrt(compressed_spectral_matrix_f0[i*30]*compressed_spectral_matrix_f0[i*30+24]); | |||
|
169 | compressed_spectral_matrix_f0[i*30+6] = compressed_spectral_matrix_f0[i*30+6] / aux; | |||
|
170 | compressed_spectral_matrix_f0[i*30+7] = compressed_spectral_matrix_f0[i*30+7] / aux; | |||
|
171 | // S15 | |||
|
172 | aux = sqrt(compressed_spectral_matrix_f0[i*30]*compressed_spectral_matrix_f0[i*30+28]); | |||
|
173 | compressed_spectral_matrix_f0[i*30+8] = compressed_spectral_matrix_f0[i*30+8] / aux; | |||
|
174 | compressed_spectral_matrix_f0[i*30+9] = compressed_spectral_matrix_f0[i*30+9] / aux; | |||
|
175 | // S24 | |||
|
176 | aux = sqrt(compressed_spectral_matrix_f0[i*10]*compressed_spectral_matrix_f0[i*30+24]); | |||
|
177 | compressed_spectral_matrix_f0[i*30+14] = compressed_spectral_matrix_f0[i*30+14] / aux; | |||
|
178 | compressed_spectral_matrix_f0[i*30+15] = compressed_spectral_matrix_f0[i*30+15] / aux; | |||
|
179 | // S25 | |||
|
180 | aux = sqrt(compressed_spectral_matrix_f0[i*10]*compressed_spectral_matrix_f0[i*30+28]); | |||
|
181 | compressed_spectral_matrix_f0[i*30+16] = compressed_spectral_matrix_f0[i*30+16] / aux; | |||
|
182 | compressed_spectral_matrix_f0[i*30+17] = compressed_spectral_matrix_f0[i*30+17] / aux; | |||
|
183 | // S34 | |||
|
184 | aux = sqrt(compressed_spectral_matrix_f0[i*18]*compressed_spectral_matrix_f0[i*30+24]); | |||
|
185 | compressed_spectral_matrix_f0[i*30+20] = compressed_spectral_matrix_f0[i*30+20] / aux; | |||
|
186 | compressed_spectral_matrix_f0[i*30+21] = compressed_spectral_matrix_f0[i*30+21] / aux; | |||
|
187 | // S35 | |||
|
188 | aux = sqrt(compressed_spectral_matrix_f0[i*18]*compressed_spectral_matrix_f0[i*30+28]); | |||
|
189 | compressed_spectral_matrix_f0[i*30+22] = compressed_spectral_matrix_f0[i*30+22] / aux; | |||
|
190 | compressed_spectral_matrix_f0[i*30+23] = compressed_spectral_matrix_f0[i*30+23] / aux; | |||
|
191 | } | |||
|
192 | } | |||
|
193 | ||||
|
194 |
This diff has been collapsed as it changes many lines, (538 lines changed) Show them Hide them | |||||
@@ -0,0 +1,538 | |||||
|
1 | /* Simple SpaceWire interface test for 2 boards. | |||
|
2 | * When using two boards define MULTI_BOARD and | |||
|
3 | * one of TASK_RX or TASK_TX. | |||
|
4 | * | |||
|
5 | * The main SpaceWire example for oe board is rtems-spacewire. | |||
|
6 | * | |||
|
7 | * Gaisler Research 2007, | |||
|
8 | * Daniel Hellstr�m | |||
|
9 | * | |||
|
10 | */ | |||
|
11 | ||||
|
12 | ////// | |||
|
13 | // PLE | |||
|
14 | #define PRINT_MESSAGES_ON_CONSOLE // enable or disable the printf instructions | |||
|
15 | #ifdef PRINT_MESSAGES_ON_CONSOLE | |||
|
16 | #define PRINTF(x) printf(x); | |||
|
17 | #define PRINTF1(x,y) printf(x,y); | |||
|
18 | #define PRINTF2(x,y,z) printf(x,y,z); | |||
|
19 | #else | |||
|
20 | #define PRINTF(x) | |||
|
21 | #define PRINTF1(x,y) | |||
|
22 | #define PRINTF2(x,y,z) | |||
|
23 | #endif | |||
|
24 | // | |||
|
25 | ////// | |||
|
26 | ||||
|
27 | #define CONFIGURE_INIT | |||
|
28 | #include <bsp.h> /* for device driver prototypes */ | |||
|
29 | rtems_task Init( rtems_task_argument argument); /* forward declaration needed */ | |||
|
30 | ||||
|
31 | /* configuration information */ | |||
|
32 | #define CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER | |||
|
33 | #define CONFIGURE_APPLICATION_NEEDS_NULL_DRIVER 1 | |||
|
34 | #define CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER | |||
|
35 | ||||
|
36 | #define CONFIGURE_MAXIMUM_TASKS 8 | |||
|
37 | #define CONFIGURE_RTEMS_INIT_TASKS_TABLE | |||
|
38 | #define CONFIGURE_EXTRA_TASK_STACKS (3 * RTEMS_MINIMUM_STACK_SIZE) | |||
|
39 | #define CONFIGURE_LIBIO_MAXIMUM_FILE_DESCRIPTORS 32 | |||
|
40 | #define CONFIGURE_INIT_TASK_PRIORITY 100 | |||
|
41 | #define CONFIGURE_MAXIMUM_DRIVERS 16 | |||
|
42 | ||||
|
43 | /* #define CONFIGURE_INIT_TASK_INITIAL_MODES (RTEMS_PREEMPT | \ */ | |||
|
44 | /* RTEMS_TIMESLICE | \ */ | |||
|
45 | /* RTEMS_ASR | \ */ | |||
|
46 | /* RTEMS_INTERRUPT_LEVEL(0)) */ | |||
|
47 | ||||
|
48 | //#define RTEMS_PCI_CONFIG_LIB | |||
|
49 | //#define CONFIGURE_PCI_LIB PCI_LIB_AUTO | |||
|
50 | ||||
|
51 | #include <rtems/confdefs.h> | |||
|
52 | ||||
|
53 | /* Configure Driver manager */ | |||
|
54 | #if defined(RTEMS_DRVMGR_STARTUP) && defined(LEON3) /* if --drvmgr was given to configure */ | |||
|
55 | /* Add Timer and UART Driver for this example */ | |||
|
56 | #ifdef CONFIGURE_APPLICATION_NEEDS_CLOCK_DRIVER | |||
|
57 | #define CONFIGURE_DRIVER_AMBAPP_GAISLER_GPTIMER | |||
|
58 | #endif | |||
|
59 | #ifdef CONFIGURE_APPLICATION_NEEDS_CONSOLE_DRIVER | |||
|
60 | #define CONFIGURE_DRIVER_AMBAPP_GAISLER_APBUART | |||
|
61 | #endif | |||
|
62 | #endif | |||
|
63 | //#define CONFIGURE_DRIVER_AMBAPP_GAISLER_PCIF /* PCI is for RASTA-IO and GR-701 GRSPW */ | |||
|
64 | //#define CONFIGURE_DRIVER_AMBAPP_GAISLER_GRPCI /* PCI is for RASTA-IO and GR-701 GRSPW */ | |||
|
65 | //#define CONFIGURE_DRIVER_AMBAPP_GAISLER_GRPCI2 /* PCI is for RASTA-IO and GR-701 GRSPW */ | |||
|
66 | //#define CONFIGURE_DRIVER_PCI_GR_RASTA_IO /* GR-RASTA-IO has three GRSPW SpaceWire cores */ | |||
|
67 | //#define CONFIGURE_DRIVER_PCI_GR_701 /* GR-701 has three GRSPW SpaceWire cores */ | |||
|
68 | ||||
|
69 | #ifdef LEON2 | |||
|
70 | /* PCI support for AT697 */ | |||
|
71 | #define CONFIGURE_DRIVER_LEON2_AT697PCI | |||
|
72 | /* AMBA PnP Support for GRLIB-LEON2 */ | |||
|
73 | #define CONFIGURE_DRIVER_LEON2_AMBAPP | |||
|
74 | #endif | |||
|
75 | ||||
|
76 | #define CONFIGURE_DRIVER_AMBAPP_GAISLER_GRSPW /* GRSPW Driver */ | |||
|
77 | ||||
|
78 | #include <drvmgr/drvmgr_confdefs.h> | |||
|
79 | ||||
|
80 | #include <rtems.h> | |||
|
81 | #include <errno.h> | |||
|
82 | #include <sys/types.h> | |||
|
83 | #include <sys/stat.h> | |||
|
84 | #include <fcntl.h> | |||
|
85 | #include <stdio.h> | |||
|
86 | #include <stdlib.h> | |||
|
87 | ||||
|
88 | #undef ENABLE_NETWORK | |||
|
89 | /* Include driver configurations and system initialization */ | |||
|
90 | #include "config.c" | |||
|
91 | ||||
|
92 | #include <grspw.h> | |||
|
93 | ||||
|
94 | /* Select GRSPW core to be used in sample application. | |||
|
95 | * - /dev/grspw0 (First ON-CHIP core) | |||
|
96 | * - /dev/grspw1 (Second ON-CHIP core) | |||
|
97 | * - /dev/rastaio0/grspw0 (The GRSPW core on first GR-RASTA-IO board) | |||
|
98 | * - /dev/rastaio0/grspw1 (The second GRSPW core on first GR-RASTA-IO board) | |||
|
99 | * - /dev/gr701_0/grspw0 (The first GRSPW core on first GR-701 board) | |||
|
100 | * - /dev/gr701_1/grspw0 (The first GRSPW core on second GR-701 board) | |||
|
101 | */ | |||
|
102 | ||||
|
103 | #define GRSPW_DEVICE_NAME1 "/dev/grspw1" | |||
|
104 | #define GRSPW_DEVICE_NAME2 "/dev/grspw0" | |||
|
105 | ||||
|
106 | rtems_task task1(rtems_task_argument argument); | |||
|
107 | rtems_task task2(rtems_task_argument argument); | |||
|
108 | ||||
|
109 | void print_config(spw_config *cnf); | |||
|
110 | void print_statistics(spw_stats *stats); | |||
|
111 | void check_init_config(spw_config *cnf); | |||
|
112 | char *link_status(int status); | |||
|
113 | extern int errno; | |||
|
114 | ||||
|
115 | char *lstates[6] = {"Error-reset", | |||
|
116 | "Error-wait", | |||
|
117 | "Ready", | |||
|
118 | "Started", | |||
|
119 | "Connecting", | |||
|
120 | "Run" | |||
|
121 | }; | |||
|
122 | ||||
|
123 | rtems_id Task_id[3]; /* array of task ids */ | |||
|
124 | rtems_name Task_name[3]; /* array of task names */ | |||
|
125 | ||||
|
126 | /* ========================================================= | |||
|
127 | initialisation */ | |||
|
128 | rtems_task Init( | |||
|
129 | rtems_task_argument ignored | |||
|
130 | ) | |||
|
131 | { | |||
|
132 | FILE *f; int fd; | |||
|
133 | rtems_status_code status; | |||
|
134 | ||||
|
135 | printf("******** Starting RTEMS Spacewire test 2 ********\n"); | |||
|
136 | ||||
|
137 | system_init(); | |||
|
138 | ||||
|
139 | Task_name[1] = rtems_build_name( 'S', 'E', 'N', 'D' ); | |||
|
140 | Task_name[2] = rtems_build_name( 'R', 'E', 'C', 'V' ); | |||
|
141 | ||||
|
142 | status = rtems_task_create( | |||
|
143 | Task_name[1], 1, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
144 | RTEMS_DEFAULT_MODES, | |||
|
145 | RTEMS_DEFAULT_ATTRIBUTES, &Task_id[1] | |||
|
146 | ); | |||
|
147 | ||||
|
148 | status = rtems_task_create( | |||
|
149 | Task_name[2], 1, RTEMS_MINIMUM_STACK_SIZE * 2, | |||
|
150 | RTEMS_DEFAULT_MODES, | |||
|
151 | RTEMS_DEFAULT_ATTRIBUTES, &Task_id[2] | |||
|
152 | ); | |||
|
153 | ||||
|
154 | #ifdef TASK_TX | |||
|
155 | PRINTF("start TASK_TX\n") | |||
|
156 | status = rtems_task_start(Task_id[1], task1, 1); | |||
|
157 | #endif | |||
|
158 | #define TASK_RX | |||
|
159 | #ifdef TASK_RX | |||
|
160 | PRINTF("start TASK_RX\n") | |||
|
161 | status = rtems_task_start(Task_id[2], task2, 2); | |||
|
162 | #endif | |||
|
163 | ||||
|
164 | status = rtems_task_delete(RTEMS_SELF); | |||
|
165 | } | |||
|
166 | ||||
|
167 | unsigned int init1 = 0, init2 = 0; | |||
|
168 | static char tx_pkt[4096]; | |||
|
169 | static char tx_hpkt[256]; | |||
|
170 | ||||
|
171 | #define NODE_ADR_TX 1 | |||
|
172 | #define NODE_ADR_RX 254 | |||
|
173 | ||||
|
174 | #ifdef TASK_TX | |||
|
175 | /* ========================================================= | |||
|
176 | sender task */ | |||
|
177 | rtems_task task1( | |||
|
178 | rtems_task_argument unused | |||
|
179 | ) | |||
|
180 | { | |||
|
181 | rtems_status_code status; | |||
|
182 | rtems_event_set out; | |||
|
183 | int i; | |||
|
184 | int j; | |||
|
185 | int k; | |||
|
186 | int fd; | |||
|
187 | int lstatus; | |||
|
188 | int stat; | |||
|
189 | int ret; | |||
|
190 | spw_ioctl_pkt_send *pkt = (spw_ioctl_pkt_send *)malloc(sizeof(spw_ioctl_pkt_send)); | |||
|
191 | spw_stats *statistics = (spw_stats *)malloc(sizeof(spw_stats)); | |||
|
192 | spw_config *config = (spw_config *)malloc(sizeof(spw_config)); | |||
|
193 | spw_ioctl_packetsize *ps = (spw_ioctl_packetsize *)malloc(sizeof(spw_ioctl_packetsize)); | |||
|
194 | ||||
|
195 | PRINTF("**** Transmit test task started ****\n") | |||
|
196 | printf("\n"); | |||
|
197 | printf("Opening " GRSPW_DEVICE_NAME1 ": "); | |||
|
198 | j=0; | |||
|
199 | fd = open(GRSPW_DEVICE_NAME1, O_RDWR); | |||
|
200 | if ( fd < 0 ){ | |||
|
201 | printf("Failed to open " GRSPW_DEVICE_NAME1 " (%d)\n",errno); | |||
|
202 | exit(0); | |||
|
203 | } | |||
|
204 | printf("opened successfully\n"); | |||
|
205 | printf("**** Checking initial configuration for " GRSPW_DEVICE_NAME1 " ****\n"); | |||
|
206 | printf("\n"); | |||
|
207 | if (ioctl(fd, SPACEWIRE_IOCTRL_GET_CONFIG, config) == -1) { | |||
|
208 | printf("ioctl failed: SPACEWIRE_IOCTRL_GET_CONFIG \n"); | |||
|
209 | exit(0); | |||
|
210 | } | |||
|
211 | print_config(config); | |||
|
212 | if (ioctl(fd, SPACEWIRE_IOCTRL_SET_NODEADDR, NODE_ADR_TX) == -1) { | |||
|
213 | printf("ioctl failed: SPACEWIRE_IOCTRL_SET_NODEADDR \n"); | |||
|
214 | exit(0); | |||
|
215 | } | |||
|
216 | if (ioctl(fd, SPACEWIRE_IOCTRL_GET_CONFIG, config) == -1) { | |||
|
217 | printf("ioctl failed: SPACEWIRE_IOCTRL_GET_CONFIG\n"); | |||
|
218 | exit(0); | |||
|
219 | } | |||
|
220 | if (ioctl(fd, SPACEWIRE_IOCTRL_SET_TXBLOCK, 1) == -1) { | |||
|
221 | printf("ioctl failed: SPACEWIRE_IOCTRL_SET_TXBLOCK\n"); | |||
|
222 | exit(0); | |||
|
223 | } | |||
|
224 | ||||
|
225 | printf("Trying to bring link up\n"); | |||
|
226 | while(1){ | |||
|
227 | if (ioctl(fd, SPACEWIRE_IOCTRL_START, 0) == -1) { | |||
|
228 | sched_yield(); /*printf("ioctl failed: SPACEWIRE_IOCTRL_START\n");*/ | |||
|
229 | }else | |||
|
230 | break; | |||
|
231 | } | |||
|
232 | printf("Link is up\n"); | |||
|
233 | ||||
|
234 | printf("Disabling transmitter and receiver\n"); | |||
|
235 | if ( ioctl(fd, SPACEWIRE_IOCTRL_STOP, 0) == -1 ){ | |||
|
236 | printf("ioctl failed: SPACEWIRE_IOCTRL_STOP (%d)\n",errno); | |||
|
237 | exit(0); | |||
|
238 | } | |||
|
239 | ||||
|
240 | printf("Trying to bring link up again\n"); | |||
|
241 | while(1){ | |||
|
242 | if (ioctl(fd, SPACEWIRE_IOCTRL_START, 0) == -1) { | |||
|
243 | sched_yield(); /*printf("ioctl failed: SPACEWIRE_IOCTRL_START\n");*/ | |||
|
244 | }else | |||
|
245 | break; | |||
|
246 | } | |||
|
247 | printf("Link is up\n"); | |||
|
248 | ||||
|
249 | if (ioctl(fd, SPACEWIRE_IOCTRL_SET_CLKDIV, 0) == -1) { | |||
|
250 | printf("ioctl failed: SPACEWIRE_IOCTRL_SET_CLKDIV\n"); | |||
|
251 | exit(0); | |||
|
252 | } | |||
|
253 | ||||
|
254 | print_config(config); | |||
|
255 | if (ioctl(fd, SPACEWIRE_IOCTRL_GET_LINK_STATUS, &(lstatus)) == -1) { | |||
|
256 | printf("ioctl failed: SPACEWIRE_IOCTRL_GET_LINK_STATUS\n"); | |||
|
257 | exit(0); | |||
|
258 | } | |||
|
259 | printf("Spacewire link 1 is in %s state\n", link_status(lstatus)); | |||
|
260 | /* printf("Set link error event id and link error irq\n"); */ | |||
|
261 | /* printf("Task Id 2: %i \n", Task_id[1]); */ | |||
|
262 | /* ioctl(fd, SPACEWIRE_IOCTRL_SET_EVENT_ID, Task_id[1]); */ | |||
|
263 | /* ioctl(fd, SPACEWIRE_IOCTRL_SET_LINK_ERR_IRQ, 1); */ | |||
|
264 | /* rtems_event_receive(RTEMS_ALL_EVENTS, RTEMS_WAIT | RTEMS_EVENT_ANY, RTEMS_NO_TIMEOUT, &out); */ | |||
|
265 | /* printf("Got event 1\n"); */ | |||
|
266 | /* ioctl(fd, SPACEWIRE_IOCTRL_SET_DISABLE_ERR, 1); */ | |||
|
267 | /* rtems_event_receive(RTEMS_ALL_EVENTS, RTEMS_WAIT | RTEMS_EVENT_ANY, RTEMS_NO_TIMEOUT, &out); */ | |||
|
268 | /* printf("Got event 2\n"); */ | |||
|
269 | /* ioctl(fd, SPACEWIRE_IOCTRL_SET_LINK_ERR_IRQ, 0); */ | |||
|
270 | /* ioctl(fd, SPACEWIRE_IOCTRL_LINKSTART, 1); */ | |||
|
271 | /* printf("Link error test finished\n"); */ | |||
|
272 | /*config print finished, allow task 2 to print its config*/ | |||
|
273 | i=0; | |||
|
274 | while(1){ | |||
|
275 | printf("-------------- Sending Initiator ----------------\n"); | |||
|
276 | tx_pkt[0] = NODE_ADR_RX; | |||
|
277 | tx_pkt[1] = 'G'; | |||
|
278 | tx_pkt[2] = 'A'; | |||
|
279 | tx_pkt[3] = 'I'; | |||
|
280 | tx_pkt[4] = 'S'; | |||
|
281 | tx_pkt[5] = 'L'; | |||
|
282 | tx_pkt[6] = 'E'; | |||
|
283 | tx_pkt[7] = 'R'; | |||
|
284 | tx_pkt[8] = ' '; | |||
|
285 | tx_pkt[9] = 'S'; | |||
|
286 | tx_pkt[10] = 'P'; | |||
|
287 | tx_pkt[11] = 'W'; | |||
|
288 | tx_pkt[12] = '0'+i; | |||
|
289 | tx_pkt[13] = 0; | |||
|
290 | ||||
|
291 | /* Send packet */ | |||
|
292 | if ( (ret=write(fd, tx_pkt, 14)) <= 0 ){ | |||
|
293 | printf("Write failed, errno: %d, ret: %d\n",errno,ret); | |||
|
294 | } | |||
|
295 | ||||
|
296 | /* Sleep 5s */ | |||
|
297 | printf("Sleeping 1s\n"); | |||
|
298 | sleep(1); | |||
|
299 | i++; | |||
|
300 | if ( i>9 ) | |||
|
301 | i=0; | |||
|
302 | } | |||
|
303 | } | |||
|
304 | ||||
|
305 | #endif | |||
|
306 | ||||
|
307 | ||||
|
308 | #ifdef TASK_RX | |||
|
309 | /* ========================================================= | |||
|
310 | receiver task */ | |||
|
311 | ||||
|
312 | rtems_task task2( | |||
|
313 | rtems_task_argument unused | |||
|
314 | ) | |||
|
315 | { | |||
|
316 | rtems_status_code status; | |||
|
317 | spw_config *config; | |||
|
318 | spw_stats *statistics = (spw_stats *)malloc(sizeof(spw_stats)); | |||
|
319 | char *rx_pkt; | |||
|
320 | char *cx_pkt; | |||
|
321 | char *cx_hpkt; | |||
|
322 | int fd; | |||
|
323 | rtems_event_set event0, event1; | |||
|
324 | int len; | |||
|
325 | int i; | |||
|
326 | int j; | |||
|
327 | int k; | |||
|
328 | int st; | |||
|
329 | int lstatus; | |||
|
330 | int rd; | |||
|
331 | int tmp; | |||
|
332 | ||||
|
333 | rx_pkt = (char *)malloc(4096); | |||
|
334 | cx_pkt = (char *)malloc(4096); | |||
|
335 | cx_hpkt = (char *)malloc(256); | |||
|
336 | config = (spw_config *)malloc(sizeof(spw_config)); | |||
|
337 | spw_ioctl_packetsize *ps = (spw_ioctl_packetsize *)malloc(sizeof(spw_ioctl_packetsize)); | |||
|
338 | ||||
|
339 | PRINTF("**** Receive test task started ****\n") | |||
|
340 | j = 0; | |||
|
341 | errno =0 ; | |||
|
342 | PRINTF("Try to open "GRSPW_DEVICE_NAME2"\n") | |||
|
343 | // OPEN THE SPACEWIRE LINK | |||
|
344 | fd = open(GRSPW_DEVICE_NAME2, O_RDWR); | |||
|
345 | if (fd<0) exit(0); | |||
|
346 | // SPACEWIRE_IOCTRL_SET_RMAPEN | |||
|
347 | ioctl(fd, SPACEWIRE_IOCTRL_SET_RMAPEN, 1); | |||
|
348 | if (errno == RTEMS_IO_ERROR) exit(0); | |||
|
349 | // SPACEWIRE_IOCTRL_START | |||
|
350 | while(1) { | |||
|
351 | if (ioctl(fd, SPACEWIRE_IOCTRL_START, 0) == -1) { | |||
|
352 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_START\n") | |||
|
353 | sched_yield(); | |||
|
354 | } | |||
|
355 | else break; | |||
|
356 | } | |||
|
357 | PRINTF("Open "GRSPW_DEVICE_NAME2" successfully\n") | |||
|
358 | ||||
|
359 | /* Make driver use the default timings as given by HW when reset */ | |||
|
360 | #if 0 | |||
|
361 | /* make driver calculate timings from system clock */ | |||
|
362 | if ( ioctl(fd,SPACEWIRE_IOCTRL_SET_COREFREQ,0) == -1 ){ | |||
|
363 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_SET_COREFREQ, errno: %d\n",errno) | |||
|
364 | exit(0); | |||
|
365 | } | |||
|
366 | ||||
|
367 | /* make driver calculate timings from 40MHz spacewire clock */ | |||
|
368 | if ( ioctl(fd,SPACEWIRE_IOCTRL_SET_COREFREQ,40000) == -1 ){ | |||
|
369 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_SET_COREFREQ, errno: %d\n",errno) | |||
|
370 | exit(0); | |||
|
371 | } | |||
|
372 | #endif | |||
|
373 | if (ioctl(fd, SPACEWIRE_IOCTRL_GET_CONFIG, config) == -1) { | |||
|
374 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_GET_CONFIG\n") | |||
|
375 | exit(0); | |||
|
376 | } | |||
|
377 | PRINTF(" Checking initial configuration for Spacewire 2 ****\n") | |||
|
378 | print_config(config); | |||
|
379 | PRINTF("config checked\n") | |||
|
380 | ||||
|
381 | if (ioctl(fd, SPACEWIRE_IOCTRL_SET_NODEADDR, NODE_ADR_RX) == -1) { | |||
|
382 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_SET_NODEADDR\n") | |||
|
383 | exit(0); | |||
|
384 | } | |||
|
385 | PRINTF("SPACEWIRE_IOCTRL_SET_NODEADDR\n") | |||
|
386 | ||||
|
387 | if (ioctl(fd, SPACEWIRE_IOCTRL_SET_RXBLOCK, 1) == -1) { | |||
|
388 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_SET_RXBLOCK\n"); | |||
|
389 | exit(0); | |||
|
390 | } | |||
|
391 | PRINTF("SPACEWIRE_IOCTRL_SET_RXBLOCK\n") | |||
|
392 | PRINTF("Trying to bring link up\n") | |||
|
393 | PRINTF("Link is up, Changing speed\n") | |||
|
394 | ||||
|
395 | if (ioctl(fd, SPACEWIRE_IOCTRL_SET_CLKDIV, 0) == -1) { | |||
|
396 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_SET_CLKDIV\n") | |||
|
397 | exit(0); | |||
|
398 | } | |||
|
399 | ||||
|
400 | if (ioctl(fd, SPACEWIRE_IOCTRL_GET_CONFIG, config) == -1) { | |||
|
401 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_GET_CONFIG\n") | |||
|
402 | exit(0); | |||
|
403 | } | |||
|
404 | print_config(config); | |||
|
405 | ||||
|
406 | if (ioctl(fd, SPACEWIRE_IOCTRL_GET_LINK_STATUS, &(lstatus)) == -1) { | |||
|
407 | PRINTF("ioctl failed: SPACEWIRE_IOCTRL_GET_LINK_STATUS\n") | |||
|
408 | exit(0); | |||
|
409 | } | |||
|
410 | PRINTF1("Spacewire link 2 is in %s state\n", link_status(lstatus)) | |||
|
411 | ||||
|
412 | while(1){ | |||
|
413 | printf("-------------- Receiving Initiator ----------------\n"); | |||
|
414 | tmp = 500; | |||
|
415 | len = read(fd, rx_pkt, tmp); | |||
|
416 | if ( len <= 0 ){ | |||
|
417 | printf("Read Failed, errno: %d, ret: %d\n",errno,len); | |||
|
418 | sleep(1); | |||
|
419 | continue; | |||
|
420 | } | |||
|
421 | ||||
|
422 | /* handle message */ | |||
|
423 | printf("Got Message of length %d, to address %d\n",len,rx_pkt[0]); | |||
|
424 | printf("Message data: [ 0x%x 0x%x ...] (%s)\n",rx_pkt[1],rx_pkt[2],&rx_pkt[0]); | |||
|
425 | } | |||
|
426 | close(fd); | |||
|
427 | } | |||
|
428 | ||||
|
429 | #endif | |||
|
430 | ||||
|
431 | /* ========================================================= | |||
|
432 | event task */ | |||
|
433 | ||||
|
434 | void print_config(spw_config *cnf) | |||
|
435 | { | |||
|
436 | printf("\n"); | |||
|
437 | printf(" ******** CONFIG ******** \n"); | |||
|
438 | printf("Node Address: %i\n", cnf->nodeaddr); | |||
|
439 | printf("Destination Key: %i\n", cnf->destkey); | |||
|
440 | printf("Clock Divider: %i\n", cnf->clkdiv); | |||
|
441 | printf("Rx Maximum Packet: %i\n", cnf->rxmaxlen); | |||
|
442 | printf("Timer: %i\n", cnf->timer); | |||
|
443 | printf("Linkdisabled: %i\n", cnf->linkdisabled); | |||
|
444 | printf("Linkstart: %i\n", cnf->linkstart); | |||
|
445 | printf("Disconnect: %i\n", cnf->disconnect); | |||
|
446 | printf("Promiscuous: %i\n", cnf->promiscuous); | |||
|
447 | printf("RMAP Enable: %i\n", cnf->rmapen); | |||
|
448 | printf("RMAP Buffer Disable: %i\n", cnf->rmapbufdis); | |||
|
449 | printf("Check Rmap Error: %i\n", cnf->check_rmap_err); | |||
|
450 | printf("Remove Protocol ID: %i\n", cnf->rm_prot_id); | |||
|
451 | printf("Blocking Transmit: %i\n", cnf->tx_blocking); | |||
|
452 | printf("Disable when Link Error: %i\n", cnf->disable_err); | |||
|
453 | printf("Link Error IRQ Enabled: %i\n", cnf->link_err_irq); | |||
|
454 | printf("Link Error Event Task ID: %i\n", cnf->event_id); | |||
|
455 | printf("RMAP Available: %i\n", cnf->is_rmap); | |||
|
456 | printf("RMAP CRC Available: %i\n", cnf->is_rmapcrc); | |||
|
457 | printf("Unaligned Receive Buffer Support: %i\n", cnf->is_rxunaligned); | |||
|
458 | printf("\n"); | |||
|
459 | ||||
|
460 | } | |||
|
461 | ||||
|
462 | void print_statistics(spw_stats *stats) | |||
|
463 | { | |||
|
464 | printf("\n"); | |||
|
465 | printf(" ******** STATISTICS ******** \n"); | |||
|
466 | printf("Transmit link errors: %i\n", stats->tx_link_err); | |||
|
467 | printf("Receiver RMAP header CRC errors: %i\n", stats->rx_rmap_header_crc_err); | |||
|
468 | printf("Receiver RMAP data CRC errors: %i\n", stats->rx_rmap_data_crc_err); | |||
|
469 | printf("Receiver EEP errors: %i\n", stats->rx_eep_err); | |||
|
470 | printf("Receiver truncation errors: %i\n", stats->rx_truncated); | |||
|
471 | printf("Parity errors: %i\n", stats->parity_err); | |||
|
472 | printf("Escape errors: %i\n", stats->escape_err); | |||
|
473 | printf("Credit errors: %i\n", stats->credit_err); | |||
|
474 | printf("Disconnect errors: %i\n", stats->disconnect_err); | |||
|
475 | printf("Write synchronization errors: %i\n", stats->write_sync_err); | |||
|
476 | printf("Early EOP/EEP: %i\n", stats->early_ep); | |||
|
477 | printf("Invalid Node Address: %i\n", stats->invalid_address); | |||
|
478 | printf("Packets transmitted: %i\n", stats->packets_sent); | |||
|
479 | printf("Packets received: %i\n", stats->packets_received); | |||
|
480 | } | |||
|
481 | ||||
|
482 | void check_init_config(spw_config *cnf) | |||
|
483 | { | |||
|
484 | if (cnf->nodeaddr != 254) { | |||
|
485 | printf("Incorrect initial node address! Expected: %i Got: %i\n", 254, cnf->nodeaddr); | |||
|
486 | exit(0); | |||
|
487 | } | |||
|
488 | if (cnf->destkey != 0) { | |||
|
489 | printf("Incorrect initial destination key! Expected: %i Got: %i\n", 0, cnf->destkey); | |||
|
490 | exit(0); | |||
|
491 | } | |||
|
492 | if (cnf->rxmaxlen != 1024) { | |||
|
493 | printf("Incorrect initial Rx maximum packet length! Expected: %i Got: %i\n", 1024 , cnf->rxmaxlen); | |||
|
494 | exit(0); | |||
|
495 | } | |||
|
496 | if (cnf->linkdisabled != 0) { | |||
|
497 | printf("Incorrect initial linkdisabled value! Expected: %i Got: %i\n", 0, cnf->linkdisabled); | |||
|
498 | exit(0); | |||
|
499 | } | |||
|
500 | if (cnf->linkstart != 1) { | |||
|
501 | printf("Incorrect initial linkstart value! Expected: %i Got: %i\n", 1, cnf->linkstart); | |||
|
502 | exit(0); | |||
|
503 | } | |||
|
504 | if (cnf->promiscuous != 0) { | |||
|
505 | printf("Incorrect initial promiscuous mode value! Expected: %i Got: %i\n", 0, cnf->promiscuous); | |||
|
506 | exit(0); | |||
|
507 | } | |||
|
508 | if (cnf->check_rmap_err != 0) { | |||
|
509 | printf("Incorrect initial check rmap error value! Expected: %i Got: %i\n", 0, cnf->check_rmap_err); | |||
|
510 | exit(0); | |||
|
511 | } | |||
|
512 | if (cnf->rm_prot_id != 0) { | |||
|
513 | printf("Incorrect initial remove protocol id value! Expected: %i Got: %i\n", 0, cnf->rm_prot_id); | |||
|
514 | exit(0); | |||
|
515 | } | |||
|
516 | if (cnf->tx_blocking != 0) { | |||
|
517 | printf("Incorrect initial tx blocking! Expected: %i Got: %i\n", 0, cnf->tx_blocking); | |||
|
518 | exit(0); | |||
|
519 | } | |||
|
520 | if (cnf->disable_err != 0) { | |||
|
521 | printf("Incorrect initial disable when link error value! Expected: %i Got: %i\n", 0, cnf->disable_err); | |||
|
522 | exit(0); | |||
|
523 | } | |||
|
524 | if (cnf->link_err_irq != 0) { | |||
|
525 | printf("Incorrect initial link error enable value! Expected: %i Got: %i\n", 0, cnf->link_err_irq); | |||
|
526 | exit(0); | |||
|
527 | } | |||
|
528 | if (cnf->event_id != 0) { | |||
|
529 | printf("Incorrect initial event id! Expected: %i Got: %i\n", 0, cnf->event_id); | |||
|
530 | exit(0); | |||
|
531 | } | |||
|
532 | } | |||
|
533 | ||||
|
534 | char *link_status(int status) | |||
|
535 | { | |||
|
536 | return lstates[status]; | |||
|
537 | ||||
|
538 | } |
General Comments 0
You need to be logged in to leave comments.
Login now