]> git.sur5r.net Git - freertos/commitdiff
Continue work on SmartFusion demo.
authorrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Tue, 12 Apr 2011 13:49:13 +0000 (13:49 +0000)
committerrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Tue, 12 Apr 2011 13:49:13 +0000 (13:49 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@1354 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

Demo/CORTEX_A2F200_SoftConsole/.cproject
Demo/CORTEX_A2F200_SoftConsole/FreeRTOSConfig.h
Demo/CORTEX_A2F200_SoftConsole/ParTest.c
Demo/CORTEX_A2F200_SoftConsole/main-full.c

index f671c1e982dc10a6df35f791244180d9ea613a91..4dadfef6177b6959420159896acebe7e057a3a70 100644 (file)
 <tool id="cdt.managedbuild.tool.gnu.c.compiler.cross.cortexm3.exe.debug.1071303895" name="GNU C Compiler" superClass="cdt.managedbuild.tool.gnu.c.compiler.cross.cortexm3.exe.debug">\r
 <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.cross.cortexm3.exe.debug.option.optimization.level.510955399" name="Optimization Level" superClass="gnu.c.compiler.cross.cortexm3.exe.debug.option.optimization.level" valueType="enumerated"/>\r
 <option defaultValue="gnu.c.optimization.level.none" id="gnu.c.compiler.cross.cortexm3.exe.debug.option.debugging.level.779446663" name="Debug Level" superClass="gnu.c.compiler.cross.cortexm3.exe.debug.option.debugging.level" value="gnu.c.debugging.level.max" valueType="enumerated"/>\r
-<option id="gnu.c.compiler.option.include.paths.1134958080" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath">\r
-<listOptionValue builtIn="false" value="../RTOSDemo/FreeRTOS_Source/include"/>\r
-<listOptionValue builtIn="false" value="../RTOSDemo/FreeRTOS_Source/portable/GCC/ARM_CM3"/>\r
-<listOptionValue builtIn="false" value="&quot;${workspace_loc:/RTOSDemo/RTOSDemo}&quot;"/>\r
-<listOptionValue builtIn="false" value="&quot;${workspace_loc:/RTOSDemo/RTOSDemo/MicroSemi_Code/drivers/mss_gpio}&quot;"/>\r
-<listOptionValue builtIn="false" value="&quot;${workspace_loc:/RTOSDemo/RTOSDemo/MicroSemi_Code/drivers/mss_watchdog}&quot;"/>\r
-</option>\r
+<option id="gnu.c.compiler.option.include.paths.1134958080" name="Include paths (-I)" superClass="gnu.c.compiler.option.include.paths" valueType="includePath"/>\r
 <inputType id="cdt.managedbuild.tool.gnu.c.compiler.input.1656219383" superClass="cdt.managedbuild.tool.gnu.c.compiler.input"/>\r
 </tool>\r
 <tool id="cdt.managedbuild.tool.gnu.cpp.compiler.cross.cortexm3.exe.debug.1468299398" name="GNU C++ Compiler" superClass="cdt.managedbuild.tool.gnu.cpp.compiler.cross.cortexm3.exe.debug">\r
 </scannerInfoProvider>\r
 </profile>\r
 <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558.89827374;cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558.89827374.">\r
-<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
+<autodiscovery enabled="false" problemReportingEnabled="false" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
 <profile id="com.actel.softconsole.arm.ActelARMManagedMakePerProjectProfile">\r
 <buildOutputProvider>\r
 <openAction enabled="true" filePath=""/>\r
 <parser enabled="true"/>\r
 </scannerInfoProvider>\r
 </profile>\r
-<profile id="com.actel.softconsole.core8051s.SDCCManagedMakePerProjectProfile">\r
-<buildOutputProvider>\r
-<openAction enabled="false" filePath=""/>\r
-<parser enabled="false"/>\r
-</buildOutputProvider>\r
-<scannerInfoProvider id="specsFile">\r
-<runAction arguments="-V -E -Wp -P -dD ${plugin_state_location}/${specs_file}" command="sdcc" useDefault="true"/>\r
-<parser enabled="true"/>\r
-</scannerInfoProvider>\r
-</profile>\r
 <profile id="com.actel.softconsole.cortexm1.ActelCortexM1ManagedMakePerProjectProfile">\r
 <buildOutputProvider>\r
 <openAction enabled="true" filePath=""/>\r
 </profile>\r
 </scannerConfigBuildInfo>\r
 <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558;cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558.">\r
-<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
+<autodiscovery enabled="false" problemReportingEnabled="false" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
 <profile id="com.actel.softconsole.arm.ActelARMManagedMakePerProjectProfile">\r
 <buildOutputProvider>\r
 <openAction enabled="true" filePath=""/>\r
 </toolChain>\r
 </folderInfo>\r
 <sourceEntries>\r
-<entry excluding="main-blinky.c|FreeTCPIP|WebServer|MicroSemi_Code/drivers/mss_uart|MicroSemi_Code/drivers/mss_spi|MicroSemi_Code/drivers/mss_pdma|MicroSemi_Code/drivers/mss_ethernet_mac|MicroSemi_Code/drivers/mss_ace|MicroSemi_Code/drivers/mac|Debug/FreeRTOS_Source/portable/GCC/ARM_CM3|Debug/FreeRTOS_Source/portable/MemMang" flags="VALUE_WORKSPACE_PATH|RESOLVED" kind="sourcePath" name=""/>\r
+<entry excluding="main-blinky.c|FreeTCPIP|WebServer|MicroSemi_Code/drivers/mss_uart|MicroSemi_Code/drivers/mss_spi|MicroSemi_Code/drivers/mss_pdma|MicroSemi_Code/drivers/mss_ethernet_mac|MicroSemi_Code/drivers/mss_ace|MicroSemi_Code/drivers/mac|Debug/FreeRTOS_Source/portable/GCC/ARM_CM3|Debug/FreeRTOS_Source/portable/MemMang" flags="VALUE_WORKSPACE_PATH" kind="sourcePath" name=""/>\r
 </sourceEntries>\r
 </configuration>\r
 </storageModule>\r
 </scannerInfoProvider>\r
 </profile>\r
 <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558.89827374;cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558.89827374.">\r
-<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
+<autodiscovery enabled="false" problemReportingEnabled="false" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
 <profile id="com.actel.softconsole.arm.ActelARMManagedMakePerProjectProfile">\r
 <buildOutputProvider>\r
 <openAction enabled="true" filePath=""/>\r
 <parser enabled="true"/>\r
 </scannerInfoProvider>\r
 </profile>\r
-<profile id="com.actel.softconsole.core8051s.SDCCManagedMakePerProjectProfile">\r
-<buildOutputProvider>\r
-<openAction enabled="false" filePath=""/>\r
-<parser enabled="false"/>\r
-</buildOutputProvider>\r
-<scannerInfoProvider id="specsFile">\r
-<runAction arguments="-V -E -Wp -P -dD ${plugin_state_location}/${specs_file}" command="sdcc" useDefault="true"/>\r
-<parser enabled="true"/>\r
-</scannerInfoProvider>\r
-</profile>\r
 <profile id="com.actel.softconsole.cortexm1.ActelCortexM1ManagedMakePerProjectProfile">\r
 <buildOutputProvider>\r
 <openAction enabled="true" filePath=""/>\r
 </profile>\r
 </scannerConfigBuildInfo>\r
 <scannerConfigBuildInfo instanceId="cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558;cdt.managedbuild.config.gnu.cross.cortexm3.exe.debug.1240723558.">\r
-<autodiscovery enabled="true" problemReportingEnabled="true" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
+<autodiscovery enabled="false" problemReportingEnabled="false" selectedProfileId="com.actel.softconsole.cortexm3.ActelCortexM3ManagedMakePerProjectProfile"/>\r
 <profile id="com.actel.softconsole.arm.ActelARMManagedMakePerProjectProfile">\r
 <buildOutputProvider>\r
 <openAction enabled="true" filePath=""/>\r
index a4edf244ce2c3184c5a1c8d0bb1595d0b2a15e83..55970864438202c6c7389ca4ec02a8e47e37235c 100644 (file)
 #define configUSE_TIMERS                               1\r
 #define configTIMER_TASK_PRIORITY              ( 3 )\r
 #define configTIMER_QUEUE_LENGTH               10\r
-#define configTIMER_TASK_STACK_DEPTH   ( configMINIMAL_STACK_SIZE )\r
+#define configTIMER_TASK_STACK_DEPTH   ( configMINIMAL_STACK_SIZE * 2 )\r
 \r
 /* Set the following definitions to 1 to include the API function, or zero\r
 to exclude the API function. */\r
@@ -116,19 +116,14 @@ to exclude the API function. */
 #define INCLUDE_vTaskDelayUntil                        1\r
 #define INCLUDE_vTaskDelay                             1\r
 \r
-/* Override some of the priorities set in the common demo tasks.  This is\r
-required to ensure false positive timing errors are not reported. */\r
-#define bktPRIMARY_PRIORITY            ( configMAX_PRIORITIES - 3 )\r
-#define bktSECONDARY_PRIORITY  ( configMAX_PRIORITIES - 4 )\r
-\r
 /* Use the system definition, if there is one */\r
 #ifdef __NVIC_PRIO_BITS\r
        #define configPRIO_BITS       __NVIC_PRIO_BITS\r
 #else\r
-       #define configPRIO_BITS       4        /* 15 priority levels */\r
+       #define configPRIO_BITS       5        /* 15 priority levels */\r
 #endif\r
 \r
-#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY                        15\r
+#define configLIBRARY_LOWEST_INTERRUPT_PRIORITY                        0x1f\r
 #define configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY   5\r
 \r
 /* The lowest priority. */\r
index 44f43c2fded72155fbdcc994993f718ebbfa61f9..84505c2ba2ee01546d63ea0b0dd59ee11363381a 100644 (file)
@@ -113,19 +113,25 @@ void vParTestSetLED( unsigned portBASE_TYPE uxLED, signed portBASE_TYPE xValue )
 \r
 void vParTestSetLEDFromISR( unsigned portBASE_TYPE uxLED, signed portBASE_TYPE xValue )\r
 {\r
-       if( uxLED < partstMAX_LEDS )\r
+unsigned portBASE_TYPE uxInterruptFlags;\r
+\r
+       uxInterruptFlags = portSET_INTERRUPT_MASK_FROM_ISR();\r
        {\r
-               if( xValue == pdTRUE )\r
-               {\r
-                       ulGPIOState &= ~( 1UL << uxLED );\r
-               }\r
-               else\r
+               if( uxLED < partstMAX_LEDS )\r
                {\r
-                       ulGPIOState |= ( 1UL << uxLED );\r
-               }\r
+                       if( xValue == pdTRUE )\r
+                       {\r
+                               ulGPIOState &= ~( 1UL << uxLED );\r
+                       }\r
+                       else\r
+                       {\r
+                               ulGPIOState |= ( 1UL << uxLED );\r
+                       }\r
 \r
-               MSS_GPIO_set_outputs( ulGPIOState );\r
+                       MSS_GPIO_set_outputs( ulGPIOState );\r
+               }\r
        }\r
+       portCLEAR_INTERRUPT_MASK_FROM_ISR( uxInterruptFlags );\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
index 182ea47111aea525690402b2c082f83773dbbadc..9cd725e0d5c046863d663f05a64934662929dde2 100644 (file)
@@ -424,6 +424,7 @@ static void prvSetupHardware( void )
        vParTestInitialise();\r
 \r
        /* Setup the GPIO and the NVIC for the switch used in this simple demo. */\r
+       NVIC_SetPriority( GPIO8_IRQn, configLIBRARY_MAX_SYSCALL_INTERRUPT_PRIORITY );\r
     NVIC_EnableIRQ( GPIO8_IRQn );\r
     MSS_GPIO_config( MSS_GPIO_8, MSS_GPIO_INPUT_MODE | MSS_GPIO_IRQ_EDGE_NEGATIVE );\r
     MSS_GPIO_enable_irq( MSS_GPIO_8 );\r
@@ -449,6 +450,7 @@ void vApplicationStackOverflowHook( xTaskHandle *pxTask, signed char *pcTaskName
        /* Run time stack overflow checking is performed if\r
        configconfigCHECK_FOR_STACK_OVERFLOW is defined to 1 or 2.  This hook\r
        function is called if a stack overflow is detected. */\r
+       taskDISABLE_INTERRUPTS();\r
        for( ;; );\r
 }\r
 /*-----------------------------------------------------------*/\r