Index: firmware/source/sys_main.c =================================================================== diff -u -r9d4666bf3064df18a6d935125d7a69e4e8234e84 -rb0b3522f2bd0b5b20ecbfd53c8f55b0e646ffa11 --- firmware/source/sys_main.c (.../sys_main.c) (revision 9d4666bf3064df18a6d935125d7a69e4e8234e84) +++ firmware/source/sys_main.c (.../sys_main.c) (revision b0b3522f2bd0b5b20ecbfd53c8f55b0e646ffa11) @@ -62,6 +62,7 @@ #include "rti.h" #include "HDCommon.h" +#include "Accel.h" #include "AlarmLamp.h" #include "BloodFlow.h" #include "Buttons.h" @@ -71,6 +72,7 @@ #include "DialOutFlow.h" #include "FPGA.h" #include "InternalADC.h" +#include "Interrupts.h" #include "MsgQueues.h" #include "NVDataMgmt.h" #include "OperationModes.h" @@ -160,25 +162,35 @@ *************************************************************************/ static void initSoftware( void ) { - initAlarmMgmt(); + // initialize ms timer counter initTimers(); + // initialize alarm manager + initAlarmMgmt(); + // initialize drivers initCPLD(); initSafetyShutdown(); - initWatchdogMgmt(); - initFPGA(); - initAlarmLamp(); - initButtons(); initInternalADC(); + initRTC(); + // initialize services initCommBuffers(); + initFPGA(); initMsgQueues(); + initNVDataMgmt(); initSystemComm(); + initWatchdogMgmt(); + // initialize monitors + initAccel(); + initButtons(); initPresOccl(); + // initialize controllers + initAlarmLamp(); initBloodFlow(); initDialInFlow(); initDialOutFlow(); + // initialize modes initOperationModes(); - initRTC(); - initNVDataMgmt(); + // initialize async interrupt handlers + initInterrupts(); } /************************************************************************* @@ -207,7 +219,7 @@ rtiInit(); rtiEnableNotification( rtiNOTIFICATION_COMPARE0 | rtiNOTIFICATION_COMPARE1 | rtiNOTIFICATION_COMPARE3 ); rtiStartCounter( rtiCOUNTER_BLOCK0 ); - // the timer task (and other comm related interrupts) require FIQ enabled + // the timer task requires FIQ enabled _enable_FIQ(); // the general and priority tasks require IRQ enabled _enable_IRQ();