##// END OF EJS Templates
fsw-0-17...
paul -
r48:069ab1ca807f default
parent child
Show More
@@ -1,6 +1,6
1 #############################################################################
1 #############################################################################
2 # Makefile for building: bin/fsw
2 # Makefile for building: bin/fsw
3 # Generated by qmake (2.01a) (Qt 4.8.5) on: Fri Oct 25 11:58:08 2013
3 # Generated by qmake (2.01a) (Qt 4.8.5) on: Fri Oct 25 13:24:46 2013
4 # Project: fsw-qt.pro
4 # Project: fsw-qt.pro
5 # Template: app
5 # Template: app
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
6 # Command: /usr/bin/qmake-qt4 -spec /usr/lib64/qt4/mkspecs/linux-g++ -o Makefile fsw-qt.pro
@@ -10,7 +10,7
10
10
11 CC = sparc-rtems-gcc
11 CC = sparc-rtems-gcc
12 CXX = sparc-rtems-g++
12 CXX = sparc-rtems-g++
13 DEFINES = -DSW_VERSION_N1=0 -DSW_VERSION_N2=0 -DSW_VERSION_N3=0 -DSW_VERSION_N4=16 -DPRINT_MESSAGES_ON_CONSOLE
13 DEFINES = -DSW_VERSION_N1=0 -DSW_VERSION_N2=0 -DSW_VERSION_N3=0 -DSW_VERSION_N4=17 -DPRINT_MESSAGES_ON_CONSOLE
14 CFLAGS = -pipe -O3 -Wall $(DEFINES)
14 CFLAGS = -pipe -O3 -Wall $(DEFINES)
15 CXXFLAGS = -pipe -O3 -Wall $(DEFINES)
15 CXXFLAGS = -pipe -O3 -Wall $(DEFINES)
16 INCPATH = -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I../src -I../header
16 INCPATH = -I/usr/lib64/qt4/mkspecs/linux-g++ -I. -I../src -I../header
1 NO CONTENT: modified file, binary diff hidden
NO CONTENT: modified file, binary diff hidden
@@ -7,11 +7,11 CONFIG -= qt
7 include(./sparc.pri)
7 include(./sparc.pri)
8
8
9 # flight software version
9 # flight software version
10 SWVERSION=-0-16
10 SWVERSION=-0-17
11 DEFINES += SW_VERSION_N1=0
11 DEFINES += SW_VERSION_N1=0
12 DEFINES += SW_VERSION_N2=0
12 DEFINES += SW_VERSION_N2=0
13 DEFINES += SW_VERSION_N3=0
13 DEFINES += SW_VERSION_N3=0
14 DEFINES += SW_VERSION_N4=16
14 DEFINES += SW_VERSION_N4=17
15
15
16 contains( CONFIG, verbose ) {
16 contains( CONFIG, verbose ) {
17 DEFINES += PRINT_MESSAGES_ON_CONSOLE
17 DEFINES += PRINT_MESSAGES_ON_CONSOLE
@@ -39,6 +39,7 rtems_task spiq_task(rtems_task_argument
39
39
40 while(true){
40 while(true){
41 rtems_event_receive(SPW_LINKERR_EVENT, RTEMS_WAIT, RTEMS_NO_TIMEOUT, &event_out); // wait for an SPW_LINKERR_EVENT
41 rtems_event_receive(SPW_LINKERR_EVENT, RTEMS_WAIT, RTEMS_NO_TIMEOUT, &event_out); // wait for an SPW_LINKERR_EVENT
42 PRINTF("in SPIQ *** got SPW_LINKERR_EVENT\n")
42
43
43 // [0] SUSPEND RECV ADN SEND TASKS
44 // [0] SUSPEND RECV ADN SEND TASKS
44 rtems_task_suspend( Task_id[ TASKID_RECV ] );
45 rtems_task_suspend( Task_id[ TASKID_RECV ] );
@@ -70,11 +71,11 rtems_task spiq_task(rtems_task_argument
70 // [3] COMPLETE RECOVERY ACTION AFTER SY_LFR_DPU_CONNECT_ATTEMPTS
71 // [3] COMPLETE RECOVERY ACTION AFTER SY_LFR_DPU_CONNECT_ATTEMPTS
71 if ( status == RTEMS_SUCCESSFUL ) // [3.a] the link is in run state and has been started successfully
72 if ( status == RTEMS_SUCCESSFUL ) // [3.a] the link is in run state and has been started successfully
72 {
73 {
73 status = rtems_task_resume( Task_id[ TASKID_SEND ] );
74 status = rtems_task_restart( Task_id[ TASKID_SEND ], 1 );
74 if ( status != RTEMS_SUCCESSFUL ) {
75 if ( status != RTEMS_SUCCESSFUL ) {
75 PRINTF("in SPIQ *** ERR resuming SEND Task\n")
76 PRINTF("in SPIQ *** ERR resuming SEND Task\n")
76 }
77 }
77 status = rtems_task_resume( Task_id[ TASKID_RECV ] );
78 status = rtems_task_restart( Task_id[ TASKID_RECV ], 1 );
78 if ( status != RTEMS_SUCCESSFUL ) {
79 if ( status != RTEMS_SUCCESSFUL ) {
79 PRINTF("in SPIQ *** ERR resuming RECV Task\n")
80 PRINTF("in SPIQ *** ERR resuming RECV Task\n")
80 }
81 }
@@ -85,7 +86,7 rtems_task spiq_task(rtems_task_argument
85 if ( status != RTEMS_SUCCESSFUL ) {
86 if ( status != RTEMS_SUCCESSFUL ) {
86 PRINTF1("in SPIQ *** ERR enter_mode *** code %d\n", status)
87 PRINTF1("in SPIQ *** ERR enter_mode *** code %d\n", status)
87 }
88 }
88 // wake the WTDG task
89 // wake the WTDG task up to wait for the link recovery
89 status = rtems_event_send ( Task_id[TASKID_WTDG], RTEMS_EVENT_0 );
90 status = rtems_event_send ( Task_id[TASKID_WTDG], RTEMS_EVENT_0 );
90 rtems_task_suspend( RTEMS_SELF );
91 rtems_task_suspend( RTEMS_SELF );
91 }
92 }
@@ -206,7 +207,7 rtems_task send_task( rtems_task_argumen
206 {
207 {
207 status = write( fdSPW, incomingData, size );
208 status = write( fdSPW, incomingData, size );
208 if (status == -1){
209 if (status == -1){
209 PRINTF2("in SEND *** (2.a) ERR = %d, size = %d\n", status, size)
210 PRINTF2("in SEND *** (2.a) ERRNO = %d, size = %d\n", errno, size)
210 }
211 }
211 }
212 }
212 else // the incoming message is a spw_ioctl_pkt_send structure
213 else // the incoming message is a spw_ioctl_pkt_send structure
@@ -216,14 +217,14 rtems_task send_task( rtems_task_argumen
216 {
217 {
217 status = write( fdSPW, spw_ioctl_send->data, spw_ioctl_send->dlen );
218 status = write( fdSPW, spw_ioctl_send->data, spw_ioctl_send->dlen );
218 if (status == -1){
219 if (status == -1){
219 PRINTF2("in SEND *** (2.b) ERR = %d, dlen = %d\n", status, spw_ioctl_send->dlen)
220 PRINTF2("in SEND *** (2.b) ERRNO = %d, dlen = %d\n", errno, spw_ioctl_send->dlen)
220 }
221 }
221 }
222 }
222 else
223 else
223 {
224 {
224 status = ioctl( fdSPW, SPACEWIRE_IOCTRL_SEND, spw_ioctl_send );
225 status = ioctl( fdSPW, SPACEWIRE_IOCTRL_SEND, spw_ioctl_send );
225 if (status == -1){
226 if (status == -1){
226 PRINTF2("in SEND *** (2.c) ERR = %d, dlen = %d\n", status, spw_ioctl_send->dlen)
227 PRINTF2("in SEND *** (2.c) ERRNO = %d, dlen = %d\n", errno, spw_ioctl_send->dlen)
227 PRINTF1(" hlen = %d\n", spw_ioctl_send->hlen)
228 PRINTF1(" hlen = %d\n", spw_ioctl_send->hlen)
228 }
229 }
229 }
230 }
@@ -278,16 +279,19 rtems_task wtdg_task( rtems_task_argumen
278 }
279 }
279
280
280 // restart the SPIQ task
281 // restart the SPIQ task
281 rtems_task_restart( Task_id[TASKID_SPIQ], 1 );
282 status = rtems_task_restart( Task_id[TASKID_SPIQ], 1 );
283 if ( status != RTEMS_SUCCESSFUL ) {
284 PRINTF("in SPIQ *** ERR restarting SPIQ Task\n")
285 }
282
286
283 // resume RECV and SEND
287 // restart RECV and SEND
284 status = rtems_task_restart( Task_id[ TASKID_SEND ], 1 );
288 status = rtems_task_restart( Task_id[ TASKID_SEND ], 1 );
285 if ( status != RTEMS_SUCCESSFUL ) {
289 if ( status != RTEMS_SUCCESSFUL ) {
286 PRINTF("in SPIQ *** ERR resuming SEND Task\n")
290 PRINTF("in SPIQ *** ERR restarting SEND Task\n")
287 }
291 }
288 status = rtems_task_restart( Task_id[ TASKID_RECV ], 1 );
292 status = rtems_task_restart( Task_id[ TASKID_RECV ], 1 );
289 if ( status != RTEMS_SUCCESSFUL ) {
293 if ( status != RTEMS_SUCCESSFUL ) {
290 PRINTF("in SPIQ *** ERR resuming RECV Task\n")
294 PRINTF("in SPIQ *** ERR restarting RECV Task\n")
291 }
295 }
292 }
296 }
293 }
297 }
@@ -370,7 +374,7 int spacewire_configure_link( int fd )
370 status = ioctl(fd, SPACEWIRE_IOCTRL_SET_TXBLOCK, 0); // transmission blocks
374 status = ioctl(fd, SPACEWIRE_IOCTRL_SET_TXBLOCK, 0); // transmission blocks
371 if (status!=RTEMS_SUCCESSFUL) PRINTF("in SPIQ *** Error SPACEWIRE_IOCTRL_SET_TXBLOCK\n")
375 if (status!=RTEMS_SUCCESSFUL) PRINTF("in SPIQ *** Error SPACEWIRE_IOCTRL_SET_TXBLOCK\n")
372 //
376 //
373 status = ioctl(fd, SPACEWIRE_IOCTRL_SET_TXBLOCK_ON_FULL, 0); // transmission blocks on full
377 status = ioctl(fd, SPACEWIRE_IOCTRL_SET_TXBLOCK_ON_FULL, 1); // transmission blocks when no transmission descriptor is available
374 if (status!=RTEMS_SUCCESSFUL) PRINTF("in SPIQ *** Error SPACEWIRE_IOCTRL_SET_TXBLOCK_ON_FULL\n")
378 if (status!=RTEMS_SUCCESSFUL) PRINTF("in SPIQ *** Error SPACEWIRE_IOCTRL_SET_TXBLOCK_ON_FULL\n")
375 //
379 //
376 status = ioctl(fd, SPACEWIRE_IOCTRL_SET_TCODE_CTRL, 0x0909); // [Time Rx : Time Tx : Link error : Tick-out IRQ]
380 status = ioctl(fd, SPACEWIRE_IOCTRL_SET_TCODE_CTRL, 0x0909); // [Time Rx : Time Tx : Link error : Tick-out IRQ]
General Comments 0
You need to be logged in to leave comments. Login now