]> git.sur5r.net Git - freertos/commitdiff
Replace asm wrappers to interrupt handlers with functions that use the interrupt...
authorrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Wed, 22 Sep 2010 22:02:54 +0000 (22:02 +0000)
committerrichardbarry <richardbarry@1d2547de-c912-0410-9cb9-b8ca96c0e9e2>
Wed, 22 Sep 2010 22:02:54 +0000 (22:02 +0000)
git-svn-id: https://svn.code.sf.net/p/freertos/code/trunk@1127 1d2547de-c912-0410-9cb9-b8ca96c0e9e2

20 files changed:
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/HighFrequencyTimerTest.c
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/IntQueueTimer.c
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/RTOSDemo.hwp
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/RTOSDemo.nav
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/RTOSDemo.tps
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/SessionRX600_E1_E20_SYSTEM.hsf
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/main-blinky.c
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/main-full.c
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/vects.c
Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/webserver/EMAC.c
Demo/RX600_RX62N-RDK_GNURX/RX600_RX62N_RDK_GNURX.tws
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/HighFrequencyTimerTest.c
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/IntQueueTimer.c
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/RTOSDemo.hwp
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/RTOSDemo.nav
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/SessionRX600_E1_E20_SYSTEM.hsf
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/main-blinky.c
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/main-full.c
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/vects.c
Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/webserver/EMAC.c

index 6c66a6db52bda7961054dd56f54271d32b1b9095..e109f0942f69c7e64d042a4c0a819ffca19a5a4f 100644 (file)
@@ -77,9 +77,8 @@ zero. */
 \r
 /*-----------------------------------------------------------*/\r
 \r
-/* Interrupt wrapper and handler in which the jitter is measured. */\r
-void vTimer2_ISR_Wrapper( void ) __attribute__((naked));\r
-static void prvTimer2_ISR_Handler( void ) __attribute__((noinline));\r
+/* Interrupt handler in which the jitter is measured. */\r
+void vTimer2_ISR_Handler( void ) __attribute__((interrupt));\r
 \r
 /* Stores the value of the maximum recorded jitter between interrupts.  This is\r
 displayed on one of the served web pages. */\r
@@ -123,21 +122,16 @@ void vSetupHighFrequencyTimer( void )
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vTimer2_ISR_Wrapper( void )\r
-{\r
-       portENTER_INTERRUPT();\r
-       prvTimer2_ISR_Handler();\r
-       portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void prvTimer2_ISR_Handler( void )\r
+void vTimer2_ISR_Handler( void )\r
 {\r
 volatile unsigned short usCurrentCount;\r
 static unsigned short usMaxCount = 0;\r
 static unsigned long ulErrorCount = 0UL;\r
 \r
-       /* We use the timer 1 counter value to measure the clock cycles between\r
+       /* This is the highest priority interrupt in the system, so there is no\r
+       advantage to re-enabling interrupts here.\r
+       \r
+       We use the timer 1 counter value to measure the clock cycles between\r
        the timer 0 interrupts.  First stop the clock. */\r
        CMT.CMSTR1.BIT.STR3 = 0;\r
        portNOP();\r
index 31538a17cf4fe2b87dfe9148fae9b12ec758918f..cb20c43248018d171d143ae5ff3d7d1afeabe966 100644 (file)
 #define tmrTIMER_0_1_FREQUENCY ( 2000UL )\r
 #define tmrTIMER_2_3_FREQUENCY ( 2001UL )\r
 \r
-/* Wrappers and handlers for the two timers used.  See the documentation page\r
+/* Handlers for the two timers used.  See the documentation page \r
 for this port on http://www.FreeRTOS.org for more information on writing\r
 interrupt handlers. */\r
-void vT0_1_ISR_Wrapper( void ) __attribute((naked));\r
-void vT2_3_ISR_Wrapper( void ) __attribute((naked));\r
+void vT0_1_ISR_Handler( void ) __attribute((interrupt));\r
+void vT2_3_ISR_Handler( void ) __attribute((interrupt));\r
 \r
 void vInitialiseTimerForIntQueueTest( void )\r
 {\r
@@ -131,35 +131,25 @@ void vInitialiseTimerForIntQueueTest( void )
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vT0_1_ISR_Wrapper( void )\r
+void vT0_1_ISR_Handler( void )\r
 {\r
-       /* This is a naked function.  This macro saves registers then re-enables\r
-       interrupts.  See the documentation for htis port on http://www.FreeRTOS.org\r
-       for more information on writing interrupts. */\r
-       portENTER_INTERRUPT();\r
+       /* Re-enabled interrupts. */\r
+       __asm volatile( "SETPSW I" );\r
 \r
        /* Call the handler that is part of the common code - this is where the\r
        non-portable code ends and the actual test is performed. */\r
        portYIELD_FROM_ISR( xFirstTimerHandler() );     \r
-\r
-       /* Restore registers, then return. */\r
-       portEXIT_INTERRUPT();\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vT2_3_ISR_Wrapper( void )\r
+void vT2_3_ISR_Handler( void )\r
 {\r
-       /* This is a naked function.  This macro saves registers then re-enables\r
-       interrupts.  See the documentation for htis port on http://www.FreeRTOS.org\r
-       for more information on writing interrupts. */\r
-       portENTER_INTERRUPT();\r
+       /* Re-enabled interrupts. */\r
+       __asm volatile( "SETPSW I" );\r
 \r
        /* Call the handler that is part of the common code - this is where the\r
        non-portable code ends and the actual test is performed. */\r
        portYIELD_FROM_ISR( xSecondTimerHandler() );    \r
-\r
-       /* Restore registers, then return. */\r
-       portEXIT_INTERRUPT();\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
index 9bb9193072645c15f080b7605fba5da1458daa63..5d7f002a064d5c44c7cccaa3c5f5ef3cf039a9d8 100644 (file)
 [LINKAGE_ORDER_Debug_RX600_E1_E20_SYSTEM]\r
 [GENERAL_DATA_CONFIGURATION_Debug_RX600_E1_E20_SYSTEM]\r
 [OPTIONS_Debug_with_optimisation_GNU Assembler]\r
-"Assembly source file" "09863a320aa5bc10" 4 \r
+"Assembly source file" "09863a320aa5bc10" 3 \r
 [OPTIONS_Debug_with_optimisation_GNU Compiler]\r
-"C source file" "09863a320aa5bc10" 3 \r
-"C++ source file" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" "09863a320aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\IntQueueTimer.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\ParTest.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-blinky.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\uIP_Task.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\vects.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\EMAC.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\phy.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "09863a320aa5bc10" 3 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "09863a320aa5bc10" 3 \r
-"Preprocess Assembly file" "09863a320aa5bc10" 2 \r
+"C source file" "020673517aa5bc10" 2 \r
+"C++ source file" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\IntQueueTimer.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\ParTest.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-blinky.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\uIP_Task.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\vects.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\EMAC.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\webserver\phy.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "020673517aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "020673517aa5bc10" 2 \r
+"Preprocess Assembly file" "020673517aa5bc10" 2 \r
 [OPTIONS_Debug_with_optimisation_GNU Library Generator]\r
 "Single Shot" "097f0a320aa5bc10" 1 \r
 [OPTIONS_Debug_with_optimisation_GNU Linker]\r
-"Single Shot" "09863a320aa5bc10" 5 \r
+"Single Shot" "09863a320aa5bc10" 4 \r
 [OPTIONS_Debug_with_optimisation]\r
 "" 0 \r
 "[V|VERSION|2] [B|DOEXTF|1] [S|INCDIR|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03^"|^"$(CONFIGDIR)^"] [B|RSARCH|1] [B|FIXUPLIBS|1] [S|ARCHIVE|lib$(PROJECTNAME).a*libgcc.a] [S|OUTFORM|BOTH] [B|MFILEGEN|1] [S|PLMFILE|^"$(CONFIGDIR)\$(PROJECTNAME).map^"] [S|OUTFILE|^"$(CONFIGDIR)\$(PROJECTNAME).x^"] [S|GROUPDET|.fvectors|0|0||1|0xFFFFFF80|0|1|0|.fvectors|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.text|0|0||1|0xFFF80000|0|0|0|.text|All-files|<<FEND>>|0|.text.*|All-files|<<FEND>>|0|P|All-files|<<FEND>>|1|etext|<<FEND>>|<<CEND>>|<<GEND>>|.rvectors|0|0||0||0|1|1|_rvectors_start|<<FEND>>|0|.rvectors|All-files|<<FEND>>|1|_rvectors_end|<<FEND>>|<<CEND>>|<<GEND>>|.init|0|0||0||0|0|0|.init|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.fini|0|0||0||0|0|0|.fini|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.got|0|0||0||0|0|0|.got|All-files|<<FEND>>|0|.got.plt|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.rodata|0|0||0||0|0|0|.rodata|All-files|<<FEND>>|0|.rodata.*|All-files|<<FEND>>|0|C_1|All-files|<<FEND>>|0|C_2|All-files|<<FEND>>|0|C|All-files|<<FEND>>|1|_erodata|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame_hdr|0|0||0||0|0|0|.eh_frame_hdr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame|0|0||0||0|0|0|.eh_frame|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.jcr|0|0||0||0|0|0|.jcr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.tors|0|0||0||0|0|1|__CTOR_LIST__|<<FEND>>|1|___ctors|<<FEND>>|0|.ctors|All-files|<<FEND>>|1|___ctors_end|<<FEND>>|1|__CTOR_END__|<<FEND>>|1|__DTOR_LIST__|<<FEND>>|1|___dtors|<<FEND>>|0|.dtors|All-files|<<FEND>>|1|___dtors_end|<<FEND>>|1|__DTOR_END__|<<FEND>>|1|_mdata|<<FEND>>|<<CEND>>|<<GEND>>|.istack|0|0||1|0x00017FFC|0|0|1|_istack|<<FEND>>|<<CEND>>|<<GEND>>|.ustack|0|0||1|0x000179BC|0|0|1|_ustack|<<FEND>>|<<CEND>>|<<GEND>>|.data|0|2|_mdata|1|0x00001000|0|0|1|_data|<<FEND>>|0|.data|All-files|<<FEND>>|0|.data.*|All-files|<<FEND>>|0|D|All-files|<<FEND>>|0|D_1|All-files|<<FEND>>|0|D_2|All-files|<<FEND>>|1|_edata|<<FEND>>|<<CEND>>|<<GEND>>|.gcc_exc|0|0||0||0|0|0|.gcc_exc|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.bss|0|0||0||0|0|1|_bss|<<FEND>>|0|.bss|All-files|<<FEND>>|0|.bss.*|All-files|<<FEND>>|0|COMMON|All-files|<<FEND>>|0|B|All-files|<<FEND>>|0|B_1|All-files|<<FEND>>|0|B_2|All-files|<<FEND>>|1|_ebss|<<FEND>>|1|_end|<<FEND>>|<<CEND>>|<<GEND>>|] [S|APPTXT|^"-e _start^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1] [B|DOPROJBUILT|1]\r
-" 5 \r
-"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\Ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG|INCLUDE_HIGH_FREQUENCY_TIMER_TEST] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|1] [I|OPTLV|1] [B|NOSTDINC|1] [S|APPTXT|^"-Wa,-gdwarf2^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
+" 4 \r
+"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\Ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG|INCLUDE_HIGH_FREQUENCY_TIMER_TEST] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|1] [I|OPTLV|1] [B|NOSTDINC|1] [S|APPTXT|^"-Wall^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
 " 2 \r
-"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\Ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG|INCLUDE_HIGH_FREQUENCY_TIMER_TEST] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|1] [I|OPTLV|1] [B|NOSTDINC|1] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
-" 3 \r
-"[V|VERSION|2] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [I|DEBUGLV|2] [B|LINCHLS|1] [B|LINCASS|1] [B|LINCSYM|1] [S|LFILE|^"$(CONFIGDIR)\$(FILELEAF).^"] [S|PROJECTTYPE|CAPPPROJECT] [S|INCDIR|^"$(PROJDIR)^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] " 4 \r
+"[V|VERSION|2] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [I|DEBUGLV|2] [B|LINCHLS|1] [B|LINCASS|1] [B|LINCSYM|1] [S|LFILE|^"$(CONFIGDIR)\$(FILELEAF).^"] [S|PROJECTTYPE|CAPPPROJECT] [S|INCDIR|^"$(PROJDIR)^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] " 3 \r
 "[V|VERSION|2] [S|OUTPUTPATH|^"$(CONFIGDIR)\lib$(PROJECTNAME).a^"] [B|OPTIMIZE|1] [I|OPTTYPE|1] [S|MODE|BUILD/CHANGED] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [B|DOPROJBUILT|1] [B|DOOPTLIB|1] [B|MATH|1] [B|STDIO|1] [B|STDLIB|1] [B|STRING|1] " 1 \r
 [EXCLUDED_FILES_Debug_with_optimisation]\r
 "C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-blinky.c" \r
index d2ff7315eedb84f1b52eb041e0f675b587316522..ace7588da27e0e00165e4776580ee84ff4cb3742 100644 (file)
Binary files a/Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/RTOSDemo.nav and b/Demo/RX600_RX62N-RDK_GNURX/RTOSDemo/RTOSDemo.nav differ
index 8802a9b263233fa15fafe14ab69d8e878bd2ddbe..fa61cca1ffc2ad4f1b08b2ba3970dd689bf9fb19 100644 (file)
@@ -21,7 +21,7 @@
 "DefaultSession" \r
 "SessionRX600_E1_E20_SYSTEM" \r
 [GENERAL_DATA_CONFIGURATION_Debug]\r
-"PROJECT_FILES_MODIFIED_DATA_TAG" "FALSE" \r
+"PROJECT_FILES_MODIFIED_DATA_TAG" "TRUE" \r
 [SESSIONS_Debug]\r
 "DefaultSession" \r
 "SessionRX600_E1_E20_SYSTEM" \r
index 14c97f794e265f7e5717bddb65bc696d28754f55..9ce598beddfb8e91001930203bce7333fc5360c8 100644 (file)
 "{5F75FDA0-6FF0-11D5-B7CE-00E029352378}PACtrlViews" "0" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_DENORMAL_MODE" "16777216" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_ROUND_MODE" "768" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "000000000000719C" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "00000000000031A4" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "000000000000007B\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "0000000000000001\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "0000000000003570" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_13" "00000000A5A5A5A5\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "0000000000000000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "0000000000006F2C" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "000000000000719C" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "000000000000BB7C" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "000000000000C574" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "000000000000C588\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "000000000000C584\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "000000000000C580" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_13" "000000000000C57C\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "00000000419C0000" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "000000000000C58C" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "000000000000BB7C" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_17" "0000000000017FE0" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000000030003\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF8FA33\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "0000000000006F2C\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_20" "00000000FFF925E0\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000000030000\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF91288\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "000000000000C594\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_20" "00000000FFF92658\r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_21" "0000000080000000" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_22" "0000000000000000" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_23" "0000000000000000" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_24" "0000000000000100" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_25" "1234567887650000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "0000000000000000\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_4" "0000000000000001\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "0000000000006F2C\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "00000000A5A5A5A5\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "0000000000000000\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_8" "00000000A5A5A5A5\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_9" "00000000A5A5A5A5\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "000000000000C598\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_4" "0000000000000000\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "000000000000C590\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "0000000000000000\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "000000000000EB14\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_8" "0000000000000000\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_9" "000000000000C578\r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_COUNT" "26" \r
 "{6C4D5B81-FD67-46A9-A089-EA44DCDE47FD}RAMMonitorManagerCtrlBlockInfoFileDir" "" \r
 "{6C4D5B81-FD67-46A9-A089-EA44DCDE47FD}RAMMonitorManagerCtrlBlockInfoFileName" "" \r
 0 \r
 [WINDOW_POSITION_STATE_DATA_VD1]\r
 "Help" "TOOLBAR 0" 59419 1 5 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
-"{WK_00000001_CmdLine}" "WINDOW" 59422 0 1 "0.07" 252 0 0 100 100 17 0 "32771|32772|32778|<<separator>>|32773|32774|<<separator>>" "0.0" \r
+"{WK_00000001_CmdLine}" "WINDOW" 59422 0 1 "0.07" 400 0 0 100 100 17 0 "32771|32772|32778|<<separator>>|32773|32774|<<separator>>" "0.0" \r
 "{WK_00000001_DEBUGCONSOLE}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59422 5 0 "1.00" 146 0 0 350 200 17 0 "57634|57637|57633|<<separator>>|32781|32782|<<separator>>|32780|32785|32787" "0.0" \r
 "{WK_00000001_MEMORY}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59422 0 0 "0.27" 252 0 0 350 200 2065 0 "42202|42203|42204|42233|<<separator>>|42206|42205|42230|42229|42207|<<separator>>|42208|42209|42210|49076|42228|42227|<<separator>>|42231|42232|42234|42235|<<separator>>|42211|<<separator>>" "0.0" \r
-"{WK_00000001_OUTPUT}" "WINDOW" 59422 0 0 "1.00" 252 560 340 350 200 18 0 "36756|36757|36758|36759|<<separator>>|36746|36747|<<separator>>|39531|<<separator>>|39500|39534|<<separator>>|36687" "0.0" \r
+"{WK_00000001_OUTPUT}" "WINDOW" 59422 0 0 "1.00" 400 560 340 350 200 18 0 "36756|36757|36758|36759|<<separator>>|36746|36747|<<separator>>|39531|<<separator>>|39500|39534|<<separator>>|36687" "0.0" \r
 "{WK_00000001_REGISTERS}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59421 0 0 "1.00" 413 0 0 350 200 2065 0 "" "0.0" \r
 "{WK_00000001_WATCH}RTOSDemoSessionRX600_E1_E20_SYSTEM" "WINDOW" 59421 0 0 "1.00" 441 0 0 853 610 17 0 "32781|32783|<<separator>>|32771|32829|32772|32827|32773|<<separator>>|32786|<<separator>>|32810|32811" "0.0" \r
 "{WK_00000002_WORKSPACE}" "WINDOW" 59420 0 0 "1.00" 342 560 340 350 200 18 0 "" "0.0" \r
 "{WK_TB00000007_DEBUG}" "TOOLBAR 0" 59419 2 0 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
 "{WK_TB00000008_DEBUGRUN}" "TOOLBAR 0" 59419 2 1 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
 "{WK_TB00000009_VERSIONCONTROL}" "TOOLBAR 0" 59419 1 3 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
-"{WK_TB00000011_CPU}" "TOOLBAR 0" 59419 2 3 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
+"{WK_TB00000011_CPU}" "TOOLBAR 0" 59419 2 4 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
 "{WK_TB00000012_MAP}" "TOOLBAR 0" 59419 1 4 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
-"{WK_TB00000013_SYMBOL}" "TOOLBAR 0" 59419 2 5 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
+"{WK_TB00000013_SYMBOL}" "TOOLBAR 0" 59419 2 6 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
 "{WK_TB00000014_CODE}" "TOOLBAR 0" 59419 2 9 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
 "{WK_TB00000015_PERFORMANCE}" "TOOLBAR 0" 59419 2 10 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
 "{WK_TB00000016_GRAPHIC}" "TOOLBAR 0" 59419 2 8 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
 "{WK_TB00000026_MACRO}" "TOOLBAR 0" 59419 1 6 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
 "{WK_TB00000027_EVENT}" "TOOLBAR 0" 59419 2 7 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
 "{WK_TB00000028_RTOSDEBUG}" "TOOLBAR 0" 59419 2 2 "0.00" 0 0 0 0 0 18 0 "" "0.0" \r
-"{WK_TB00000029_SYSTEMTOOL}" "TOOLBAR 0" 59419 2 4 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
+"{WK_TB00000029_SYSTEMTOOL}" "TOOLBAR 0" 59419 2 5 "0.00" 0 0 0 0 0 17 0 "" "0.0" \r
 [WINDOW_POSITION_STATE_DATA_VD2]\r
 [WINDOW_POSITION_STATE_DATA_VD3]\r
 [WINDOW_POSITION_STATE_DATA_VD4]\r
 [WINDOW_Z_ORDER]\r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" \r
 "C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" \r
 [TARGET_NAME]\r
 "RX600 E1/E20 SYSTEM" "" 0 \r
 "SBK_TAR_EMUE100|Exception" 1 \r
 "SBK_TAR_EMUE100|BreakCondition" 1 \r
 "SBK_TAR_EMUE100|TaskID" 1 \r
-"SBK_TAR_EMUE100|PC" 1 \r
 "SBK_TAR_EMUE100|ExecutionTime" 1 \r
+"SBK_TAR_EMUE100|PC" 1 \r
 [STATUSBAR_DEBUGGER_PANESTATE_VD2]\r
 [STATUSBAR_DEBUGGER_PANESTATE_VD3]\r
 [STATUSBAR_DEBUGGER_PANESTATE_VD4]\r
index d8c02151ab64e6d86fcfd3200ba470db2b441cd9..95eac6069ad699f3dad39c375412933610ea8696 100644 (file)
@@ -223,8 +223,8 @@ void vApplicationIdleHook( void )
 configurations to use the same vector table.  They are not used in this\r
 demo, but linker errors will result if they are not defined.  They can\r
 be ignored. */\r
-void vT0_1_ISR_Wrapper( void ) {}\r
-void vT2_3_ISR_Wrapper( void ) {}\r
-void vEMAC_ISR_Wrapper( void ) {}\r
-void vTimer2_ISR_Wrapper( void ) {}\r
+void vT0_1_ISR_Handler( void ) {}\r
+void vT2_3_ISR_Handler( void ) {}\r
+void vEMAC_ISR_Handler( void ) {}\r
+void vTimer2_ISR_Handler( void ) {}\r
 volatile unsigned long ulHighFrequencyTickCount = 0;
\ No newline at end of file
index 3a4e74cdefeafce9aa3c59ab794343b99aaded38..a5d94c5bea0bc4645215fdad513a800358c84938 100644 (file)
@@ -248,7 +248,7 @@ static const char *pcStatusMessage = NULL;
 \r
 /*-----------------------------------------------------------*/\r
 \r
-void main(void)\r
+int main(void)\r
 {\r
 extern void HardwareSetup( void );\r
 \r
@@ -260,14 +260,14 @@ extern void HardwareSetup( void );
        vParTestInitialise();\r
 \r
        /* Start the reg test tasks which test the context switching mechanism. */\r
-       xTaskCreate( prvRegTest1Task, "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
-       xTaskCreate( prvRegTest2Task, "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+       xTaskCreate( prvRegTest1Task, ( signed char * ) "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+       xTaskCreate( prvRegTest2Task, ( signed char * ) "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
 \r
        /* The web server task. */\r
-       xTaskCreate( vuIP_Task, "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
+       xTaskCreate( vuIP_Task, ( signed char * ) "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
 \r
        /* Start the check task as described at the top of this file. */\r
-       xTaskCreate( prvCheckTask, "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
+       xTaskCreate( prvCheckTask, ( signed char * ) "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
 \r
        /* Create the standard demo tasks. */\r
        vStartBlockingQueueTasks( mainBLOCK_Q_PRIORITY );\r
@@ -294,6 +294,8 @@ extern void HardwareSetup( void );
        running.  If we do reach here then it is likely that there was insufficient\r
        heap available for the idle task to be created. */\r
        for( ;; );\r
+       \r
+       return 0;\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
index 7e9b6b1a0ca1a38b983d38b94491f36e653a5894..a1a33fe16c965dda9734742288de4f4295f616aa 100644 (file)
@@ -19,10 +19,10 @@ extern void start(void);
 extern void stack (void);\r
 extern void vTickISR( void );\r
 extern void vSoftwareInterruptISR( void );\r
-extern void vT0_1_ISR_Wrapper( void );\r
-extern void vT2_3_ISR_Wrapper( void );\r
-extern void vEMAC_ISR_Wrapper( void );\r
-extern void vTimer2_ISR_Wrapper( void );\r
+extern void vT0_1_ISR_Handler( void );\r
+extern void vT2_3_ISR_Handler( void );\r
+extern void vEMAC_ISR_Handler( void );\r
+extern void vTimer2_ISR_Handler( void );\r
 \r
 #define FVECT_SECT          __attribute__ ((section (".fvectors")))\r
 \r
@@ -160,11 +160,11 @@ const fp RelocatableVectors[] RVECT_SECT  = {
 //;0x0074  CMTU0_CMT1\r
        (fp)INT_Excep_CMTU0_CMT1,\r
 //;0x0078  CMTU1_CMT2\r
-       (fp)vTimer2_ISR_Wrapper,\r
+       (fp)vTimer2_ISR_Handler,\r
 //;0x007C  CMTU1_CMT3\r
        (fp)INT_Excep_CMTU1_CMT3,\r
 //;0x0080  Ether\r
-    (fp)vEMAC_ISR_Wrapper,\r
+    (fp)vEMAC_ISR_Handler,\r
 //;0x0084  Reserved\r
     (fp)0,\r
 //;0x0088  Reserved\r
@@ -448,7 +448,7 @@ const fp RelocatableVectors[] RVECT_SECT  = {
 //;0x02B4  Reserved\r
     (fp)0,\r
 //;0x02B8  TMR0_CMI0A\r
-    (fp)vT0_1_ISR_Wrapper,\r
+    (fp)vT0_1_ISR_Handler,\r
 //;0x02BC  TMR0_CMI0B\r
     (fp)INT_Excep_TMR0_CMI0B,\r
 //;0x02C0  TMR0_OV0I\r
@@ -460,7 +460,7 @@ const fp RelocatableVectors[] RVECT_SECT  = {
 //;0x02CC  TMR1_OV1I\r
     (fp)INT_Excep_TMR1_OV1I,\r
 //;0x02D0 TMR2_CMI2A\r
-    (fp)vT2_3_ISR_Wrapper,\r
+    (fp)vT2_3_ISR_Handler,\r
 //;0x02D4  TMR2_CMI2B\r
     (fp)INT_Excep_TMR2_CMI2B,\r
 //;0x02D8  TMR2_OV2I\r
index 10ca4ff34ac682f095ea067bc70a68f7cee6cf38..9502358f4af006035ba61d70cd78ff9e1f91f5fd 100644 (file)
@@ -144,12 +144,11 @@ static void prvConfigureEtherCAndEDMAC( void );
 static void prvResetEverything( void );\r
 \r
 /*\r
- * Wrapper and handler for the EMAC peripheral.  See the documentation for this\r
+ * Handler for the EMAC peripheral.  See the documentation for this\r
  * port on http://www.FreeRTOS.org for more information on defining interrupt\r
  * handlers.\r
  */\r
-void vEMAC_ISR_Wrapper( void ) __attribute__((naked));\r
-static void vEMAC_ISR_Handler( void ) __attribute__((noinline));\r
+void vEMAC_ISR_Handler( void ) __attribute__((interrupt));\r
 \r
 /*-----------------------------------------------------------*/\r
 \r
@@ -524,29 +523,16 @@ static void prvConfigureEtherCAndEDMAC( void )
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vEMAC_ISR_Wrapper( void )\r
-{\r
-       /* This is a naked function.  See the documentation for this port on\r
-       http://www.FreeRTOS.org for more information on writing interrupts. \r
-       \r
-       /* Save the registers and enable interrupts. */\r
-       portENTER_INTERRUPT();\r
-       \r
-       /* Perform the actual EMAC processing. */\r
-       vEMAC_ISR_Handler();\r
-       \r
-       /* Restore the registers and return. */\r
-       portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void vEMAC_ISR_Handler( void )\r
+void vEMAC_ISR_Handler( void )\r
 {\r
 unsigned long ul = EDMAC.EESR.LONG;\r
 long lHigherPriorityTaskWoken = pdFALSE;\r
 extern xSemaphoreHandle xEMACSemaphore;\r
 static long ulTxEndInts = 0;\r
 \r
+       /* Re-enabled interrupts. */\r
+       __asm volatile( "SETPSW I" );\r
+\r
        /* Has a Tx end occurred? */\r
        if( ul & emacTX_END_INTERRUPT )\r
        {\r
index 98669c1c7e98ff7bc630f1fd9d5567eccf39d0d1..be1f60a3f8d1568cae7d4416cdf598326b7cc6fc 100644 (file)
@@ -7,13 +7,9 @@
 [GENERAL_DATA]\r
 [BREAKPOINTS]\r
 [OPEN_WORKSPACE_FILES]\r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" \r
 "C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" \r
 [WORKSPACE_FILE_STATES]\r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" -4 -23 1314 626 1 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\GNU-Files\start.asm" 44 44 1130 405 0 1 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" 0 0 1314 608 0 0 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RDK_GNURX\RTOSDemo\main-full.c" -4 -23 1314 460 1 0 \r
 [LOADED_PROJECTS]\r
 "RTOSDemo" \r
 [END]\r
index 6c66a6db52bda7961054dd56f54271d32b1b9095..e109f0942f69c7e64d042a4c0a819ffca19a5a4f 100644 (file)
@@ -77,9 +77,8 @@ zero. */
 \r
 /*-----------------------------------------------------------*/\r
 \r
-/* Interrupt wrapper and handler in which the jitter is measured. */\r
-void vTimer2_ISR_Wrapper( void ) __attribute__((naked));\r
-static void prvTimer2_ISR_Handler( void ) __attribute__((noinline));\r
+/* Interrupt handler in which the jitter is measured. */\r
+void vTimer2_ISR_Handler( void ) __attribute__((interrupt));\r
 \r
 /* Stores the value of the maximum recorded jitter between interrupts.  This is\r
 displayed on one of the served web pages. */\r
@@ -123,21 +122,16 @@ void vSetupHighFrequencyTimer( void )
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vTimer2_ISR_Wrapper( void )\r
-{\r
-       portENTER_INTERRUPT();\r
-       prvTimer2_ISR_Handler();\r
-       portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void prvTimer2_ISR_Handler( void )\r
+void vTimer2_ISR_Handler( void )\r
 {\r
 volatile unsigned short usCurrentCount;\r
 static unsigned short usMaxCount = 0;\r
 static unsigned long ulErrorCount = 0UL;\r
 \r
-       /* We use the timer 1 counter value to measure the clock cycles between\r
+       /* This is the highest priority interrupt in the system, so there is no\r
+       advantage to re-enabling interrupts here.\r
+       \r
+       We use the timer 1 counter value to measure the clock cycles between\r
        the timer 0 interrupts.  First stop the clock. */\r
        CMT.CMSTR1.BIT.STR3 = 0;\r
        portNOP();\r
index 31538a17cf4fe2b87dfe9148fae9b12ec758918f..cb20c43248018d171d143ae5ff3d7d1afeabe966 100644 (file)
 #define tmrTIMER_0_1_FREQUENCY ( 2000UL )\r
 #define tmrTIMER_2_3_FREQUENCY ( 2001UL )\r
 \r
-/* Wrappers and handlers for the two timers used.  See the documentation page\r
+/* Handlers for the two timers used.  See the documentation page \r
 for this port on http://www.FreeRTOS.org for more information on writing\r
 interrupt handlers. */\r
-void vT0_1_ISR_Wrapper( void ) __attribute((naked));\r
-void vT2_3_ISR_Wrapper( void ) __attribute((naked));\r
+void vT0_1_ISR_Handler( void ) __attribute((interrupt));\r
+void vT2_3_ISR_Handler( void ) __attribute((interrupt));\r
 \r
 void vInitialiseTimerForIntQueueTest( void )\r
 {\r
@@ -131,35 +131,25 @@ void vInitialiseTimerForIntQueueTest( void )
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vT0_1_ISR_Wrapper( void )\r
+void vT0_1_ISR_Handler( void )\r
 {\r
-       /* This is a naked function.  This macro saves registers then re-enables\r
-       interrupts.  See the documentation for htis port on http://www.FreeRTOS.org\r
-       for more information on writing interrupts. */\r
-       portENTER_INTERRUPT();\r
+       /* Re-enabled interrupts. */\r
+       __asm volatile( "SETPSW I" );\r
 \r
        /* Call the handler that is part of the common code - this is where the\r
        non-portable code ends and the actual test is performed. */\r
        portYIELD_FROM_ISR( xFirstTimerHandler() );     \r
-\r
-       /* Restore registers, then return. */\r
-       portEXIT_INTERRUPT();\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vT2_3_ISR_Wrapper( void )\r
+void vT2_3_ISR_Handler( void )\r
 {\r
-       /* This is a naked function.  This macro saves registers then re-enables\r
-       interrupts.  See the documentation for htis port on http://www.FreeRTOS.org\r
-       for more information on writing interrupts. */\r
-       portENTER_INTERRUPT();\r
+       /* Re-enabled interrupts. */\r
+       __asm volatile( "SETPSW I" );\r
 \r
        /* Call the handler that is part of the common code - this is where the\r
        non-portable code ends and the actual test is performed. */\r
        portYIELD_FROM_ISR( xSecondTimerHandler() );    \r
-\r
-       /* Restore registers, then return. */\r
-       portEXIT_INTERRUPT();\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
index 4980fee4f4b94a826d5e3ed5b39ccd2298839926..3ac639b75cbd8cf937576ac01b86c6f71b0ab3ed 100644 (file)
 [OPTIONS_Debug_GNU Assembler]\r
 "Assembly source file" "00d92b5b0aa5bc10" 3 \r
 [OPTIONS_Debug_GNU Compiler]\r
-"C source file" "00c20b5b0aa5bc10" 2 \r
-"C++ source file" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\start.asm" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\IntQueueTimer.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\ParTest.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-blinky.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-full.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\uIP_Task.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\vects.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\EMAC.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\phy.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "00c20b5b0aa5bc10" 2 \r
-"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "00c20b5b0aa5bc10" 2 \r
-"Preprocess Assembly file" "00c20b5b0aa5bc10" 2 \r
+"C source file" "022e4ac89aa5bc10" 2 \r
+"C++ source file" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\BlockQ.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\GenQTest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\IntQueue.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\PollQ.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\QPeek.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\blocktim.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\death.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flash.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\flop.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\integer.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\recmutex.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\Minimal\semtest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\http-strings.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd-fs.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\apps\httpd\httpd.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\psock.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\timer.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\Common\ethernet\FreeTCPIP\uip_arp.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\hwinit.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\inthandler.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\GNU-Files\start.asm" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\HighFrequencyTimerTest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\IntQueueTimer.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\ParTest.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\Renesas-Files\hwsetup.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-blinky.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\main-full.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\uIP_Task.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\vects.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\EMAC.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\httpd-cgi.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Demo\RX600_RX62N-RSK_GNURX\RTOSDemo\webserver\phy.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\list.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\GCC\RX600\port.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\portable\MemMang\heap_2.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\queue.c" "022e4ac89aa5bc10" 2 \r
+"C:\E\Dev\FreeRTOS\WorkingCopy\Source\tasks.c" "022e4ac89aa5bc10" 2 \r
+"Preprocess Assembly file" "022e4ac89aa5bc10" 2 \r
 [OPTIONS_Debug_GNU Library Generator]\r
 "Single Shot" "00c20b5b0aa5bc10" 1 \r
 [OPTIONS_Debug_GNU Linker]\r
 "" 0 \r
 "[V|VERSION|2] [B|DOEXTF|1] [S|INCDIR|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03^"|^"$(CONFIGDIR)^"] [B|RSARCH|1] [B|FIXUPLIBS|1] [S|ARCHIVE|libgcc.a*lib$(PROJECTNAME).a] [S|OUTFORM|BOTH] [B|MFILEGEN|1] [S|PLMFILE|^"$(CONFIGDIR)\$(PROJECTNAME).map^"] [S|OUTFILE|^"$(CONFIGDIR)\$(PROJECTNAME).x^"] [S|GROUPDET|.fvectors|0|0||1|0xFFFFFF80|0|1|0|.fvectors|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.text|0|0||1|0xFFF80000|0|0|0|.text|All-files|<<FEND>>|0|.text.*|All-files|<<FEND>>|0|P|All-files|<<FEND>>|1|etext|<<FEND>>|<<CEND>>|<<GEND>>|.rvectors|0|0||0||0|1|1|_rvectors_start|<<FEND>>|0|.rvectors|All-files|<<FEND>>|1|_rvectors_end|<<FEND>>|<<CEND>>|<<GEND>>|.init|0|0||0||0|0|0|.init|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.fini|0|0||0||0|0|0|.fini|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.got|0|0||0||0|0|0|.got|All-files|<<FEND>>|0|.got.plt|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.rodata|0|0||0||0|0|0|.rodata|All-files|<<FEND>>|0|.rodata.*|All-files|<<FEND>>|0|C_1|All-files|<<FEND>>|0|C_2|All-files|<<FEND>>|0|C|All-files|<<FEND>>|1|_erodata|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame_hdr|0|0||0||0|0|0|.eh_frame_hdr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.eh_frame|0|0||0||0|0|0|.eh_frame|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.jcr|0|0||0||0|0|0|.jcr|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.tors|0|0||0||0|0|1|__CTOR_LIST__|<<FEND>>|1|___ctors|<<FEND>>|0|.ctors|All-files|<<FEND>>|1|___ctors_end|<<FEND>>|1|__CTOR_END__|<<FEND>>|1|__DTOR_LIST__|<<FEND>>|1|___dtors|<<FEND>>|0|.dtors|All-files|<<FEND>>|1|___dtors_end|<<FEND>>|1|__DTOR_END__|<<FEND>>|1|_mdata|<<FEND>>|<<CEND>>|<<GEND>>|.istack|0|0||1|0x00017FFC|0|0|1|_istack|<<FEND>>|<<CEND>>|<<GEND>>|.ustack|0|0||1|0x000179BC|0|0|1|_ustack|<<FEND>>|<<CEND>>|<<GEND>>|.data|0|2|_mdata|1|0x00001000|0|0|1|_data|<<FEND>>|0|.data|All-files|<<FEND>>|0|.data.*|All-files|<<FEND>>|0|D|All-files|<<FEND>>|0|D_1|All-files|<<FEND>>|0|D_2|All-files|<<FEND>>|1|_edata|<<FEND>>|<<CEND>>|<<GEND>>|.gcc_exc|0|0||0||0|0|0|.gcc_exc|All-files|<<FEND>>|<<CEND>>|<<GEND>>|.bss|0|0||0||0|0|1|_bss|<<FEND>>|0|.bss|All-files|<<FEND>>|0|.bss.*|All-files|<<FEND>>|0|COMMON|All-files|<<FEND>>|0|B|All-files|<<FEND>>|0|B_1|All-files|<<FEND>>|0|B_2|All-files|<<FEND>>|1|_ebss|<<FEND>>|1|_end|<<FEND>>|<<CEND>>|<<GEND>>|] [B|WONCEU|1] [B|OUTTRAD|1] [S|APPTXT|^"-e _start^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1] [B|DOPROJBUILT|1]\r
 " 4 \r
-"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|0] [I|OPTLV|2] [B|NOSTDINC|1] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
+"[V|VERSION|2] [S|INCDIR|^"$(TCINSTALL)\rx-elf\rx-elf\optlibinc^"|^"$(TCINSTALL)\rx-elf\lib\gcc\rx-elf\4.5-GNURX_v10.03\optlibinc^"|^"$(PROJDIR)\include^"|^"$(PROJDIR)\..\..\..\Source\include^"|^"$(PROJDIR)\..\..\..\Source\portable\GCC\RX600^"|^"$(PROJDIR)^"|^"$(PROJDIR)\..\..\Common\include^"|^"$(PROJDIR)\..\..\Common\ethernet\FreeTCPIP^"|^"$(PROJDIR)\webserver^"] [S|DEFINES|DEBUG] [S|OUTPUT|OBJECT] [S|OBJPATH|^"$(CONFIGDIR)\$(FILELEAF).o^"] [B|DEBUG|1] [S|DEBUGFT|Native] [I|DEBUGLV|2] [S|ALIGN4|ALL] [B|OPTIMIZE|0] [I|OPTLV|2] [B|NOSTDINC|1] [S|APPTXT|^"-Wall^"] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0] [S|PROJECTTYPE|CAPPPROJECT] [B|DOOPTLIB|1]\r
 " 2 \r
 "[V|VERSION|2] [S|MODE|BUILD/CHANGED] [B|MATH|1] [B|STDIO|1] [B|STDLIB|1] [B|STRING|1] [B|DOPROJBUILT|1] [B|DOOPTLIB|1] [S|OUTPUTPATH|^"$(CONFIGDIR)\lib$(PROJECTNAME).a^"] [B|OPTIMIZE|1] [I|OPTTYPE|0] [S|CPUTYPE|RX600] [S|ENDIAN|LITTLE] [S|CPU|Other] [I|RMINTREGVAL|0] [I|RMMAXCONSTVAL|0] [I|RMMAXVARSVAL|0]\r
 " 1 \r
index 3e8ae7b62fca2afec37c3aa472ff8a4f16c89399..41e59e1275a3bf4f2bc83d7f932ef738de45d504 100644 (file)
Binary files a/Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/RTOSDemo.nav and b/Demo/RX600_RX62N-RSK_GNURX/RTOSDemo/RTOSDemo.nav differ
index e63a264f5dbfde7e4c7388239aa945b0df747211..9bd8099193084cb9788c316455c29c4e44e0ef0a 100644 (file)
 "{5F75FDA0-6FF0-11D5-B7CE-00E029352378}PACtrlViews" "0" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_DENORMAL_MODE" "16777216" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_EVAL_ROUND_MODE" "768" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "0000000000004854" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "0000000000003234" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "0000000000002710\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "0000000000003234\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "00000000000045EC\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_0" "0000000000017EF4" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_1" "0000000000000004" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_10" "0000000000000002\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_11" "000000000000000A\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_12" "00000000A5A5A5A5\r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_13" "00000000A5A5A5A5" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "000000000000464E\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "0000000000000006\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "0000000000004854\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_17" "0000000000017FA0\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000000030001\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF87207\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "0000000000004688\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_14" "0000000000000001\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_15" "00000000000000EA\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_16" "000000000000BB68\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_17" "0000000000017EF4\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_18" "0000000004010000\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_19" "00000000FFF851D9\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_2" "000000000000311C\r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_20" "00000000FFF8D818" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_21" "0000000000000000" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_22" "0000000000000000" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_23" "0000000000000000" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_24" "0000000000000100" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_25" "1234567887650000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "00000000000003E8\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_3" "0000000000017F34\r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_4" "0000000000000000" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "00000000A5A5A5A5\r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "0000000000004854" \r
-"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "00000000A5A5A5A5\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_5" "0000000000003120\r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_6" "0000000000017EF4" \r
+"{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_7" "0000000000000000\r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_8" "00000000A5A5A5A5" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_9" "00000000A5A5A5A5" \r
 "{64753FED-D387-4B8C-A91D-D3419C869C07}C_REGISTER_REG_COUNT" "26" \r
 "SBK_TAR_EMUE100|Exception" 1 \r
 "SBK_TAR_EMUE100|BreakCondition" 1 \r
 "SBK_TAR_EMUE100|TaskID" 1 \r
-"SBK_TAR_EMUE100|ExecutionTime" 1 \r
 "SBK_TAR_EMUE100|PC" 1 \r
+"SBK_TAR_EMUE100|ExecutionTime" 1 \r
 [STATUSBAR_DEBUGGER_PANESTATE_VD2]\r
 [STATUSBAR_DEBUGGER_PANESTATE_VD3]\r
 [STATUSBAR_DEBUGGER_PANESTATE_VD4]\r
index fc5c05d35b59cab395ab8c9f14a04a1ab8a64526..95eac6069ad699f3dad39c375412933610ea8696 100644 (file)
@@ -70,6 +70,9 @@
 #include "task.h"\r
 #include "queue.h"\r
 \r
+/* Demo includes. */\r
+#include "ParTest.h"\r
+\r
 /* Priorities at which the tasks are created. */\r
 #define        configQUEUE_RECEIVE_TASK_PRIORITY       ( tskIDLE_PRIORITY + 2 )\r
 #define                configQUEUE_SEND_TASK_PRIORITY          ( tskIDLE_PRIORITY + 1 )\r
@@ -93,7 +96,7 @@ static xQueueHandle xQueue = NULL;
 \r
 /*-----------------------------------------------------------*/\r
 \r
-void main(void)\r
+int main(void)\r
 {\r
 extern void HardwareSetup( void );\r
 \r
@@ -110,8 +113,8 @@ extern void HardwareSetup( void );
        if( xQueue != NULL )\r
        {\r
                /* Start the two tasks as described at the top of this file. */\r
-               xTaskCreate( prvQueueReceiveTask, "Rx", configMINIMAL_STACK_SIZE, NULL, configQUEUE_RECEIVE_TASK_PRIORITY, NULL );\r
-               xTaskCreate( prvQueueSendTask, "TX", configMINIMAL_STACK_SIZE, NULL, configQUEUE_SEND_TASK_PRIORITY, NULL );\r
+               xTaskCreate( prvQueueReceiveTask, ( signed char * ) "Rx", configMINIMAL_STACK_SIZE, NULL, configQUEUE_RECEIVE_TASK_PRIORITY, NULL );\r
+               xTaskCreate( prvQueueSendTask, ( signed char * ) "TX", configMINIMAL_STACK_SIZE, NULL, configQUEUE_SEND_TASK_PRIORITY, NULL );\r
 \r
                /* Start the tasks running. */\r
                vTaskStartScheduler();\r
@@ -220,8 +223,8 @@ void vApplicationIdleHook( void )
 configurations to use the same vector table.  They are not used in this\r
 demo, but linker errors will result if they are not defined.  They can\r
 be ignored. */\r
-void vT0_1_ISR_Wrapper( void ) {}\r
-void vT2_3_ISR_Wrapper( void ) {}\r
-void vEMAC_ISR_Wrapper( void ) {}\r
-void vTimer2_ISR_Wrapper( void ) {}\r
+void vT0_1_ISR_Handler( void ) {}\r
+void vT2_3_ISR_Handler( void ) {}\r
+void vEMAC_ISR_Handler( void ) {}\r
+void vTimer2_ISR_Handler( void ) {}\r
 volatile unsigned long ulHighFrequencyTickCount = 0;
\ No newline at end of file
index 3a4e74cdefeafce9aa3c59ab794343b99aaded38..a5d94c5bea0bc4645215fdad513a800358c84938 100644 (file)
@@ -248,7 +248,7 @@ static const char *pcStatusMessage = NULL;
 \r
 /*-----------------------------------------------------------*/\r
 \r
-void main(void)\r
+int main(void)\r
 {\r
 extern void HardwareSetup( void );\r
 \r
@@ -260,14 +260,14 @@ extern void HardwareSetup( void );
        vParTestInitialise();\r
 \r
        /* Start the reg test tasks which test the context switching mechanism. */\r
-       xTaskCreate( prvRegTest1Task, "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
-       xTaskCreate( prvRegTest2Task, "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+       xTaskCreate( prvRegTest1Task, ( signed char * ) "RegTst1", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_1_PARAMETER, tskIDLE_PRIORITY, NULL );\r
+       xTaskCreate( prvRegTest2Task, ( signed char * ) "RegTst2", configMINIMAL_STACK_SIZE, ( void * ) mainREG_TEST_2_PARAMETER, tskIDLE_PRIORITY, NULL );\r
 \r
        /* The web server task. */\r
-       xTaskCreate( vuIP_Task, "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
+       xTaskCreate( vuIP_Task, ( signed char * ) "uIP", mainuIP_STACK_SIZE, NULL, mainuIP_TASK_PRIORITY, NULL );\r
 \r
        /* Start the check task as described at the top of this file. */\r
-       xTaskCreate( prvCheckTask, "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
+       xTaskCreate( prvCheckTask, ( signed char * ) "Check", configMINIMAL_STACK_SIZE, NULL, mainCHECK_TASK_PRIORITY, NULL );\r
 \r
        /* Create the standard demo tasks. */\r
        vStartBlockingQueueTasks( mainBLOCK_Q_PRIORITY );\r
@@ -294,6 +294,8 @@ extern void HardwareSetup( void );
        running.  If we do reach here then it is likely that there was insufficient\r
        heap available for the idle task to be created. */\r
        for( ;; );\r
+       \r
+       return 0;\r
 }\r
 /*-----------------------------------------------------------*/\r
 \r
index 7e9b6b1a0ca1a38b983d38b94491f36e653a5894..a1a33fe16c965dda9734742288de4f4295f616aa 100644 (file)
@@ -19,10 +19,10 @@ extern void start(void);
 extern void stack (void);\r
 extern void vTickISR( void );\r
 extern void vSoftwareInterruptISR( void );\r
-extern void vT0_1_ISR_Wrapper( void );\r
-extern void vT2_3_ISR_Wrapper( void );\r
-extern void vEMAC_ISR_Wrapper( void );\r
-extern void vTimer2_ISR_Wrapper( void );\r
+extern void vT0_1_ISR_Handler( void );\r
+extern void vT2_3_ISR_Handler( void );\r
+extern void vEMAC_ISR_Handler( void );\r
+extern void vTimer2_ISR_Handler( void );\r
 \r
 #define FVECT_SECT          __attribute__ ((section (".fvectors")))\r
 \r
@@ -160,11 +160,11 @@ const fp RelocatableVectors[] RVECT_SECT  = {
 //;0x0074  CMTU0_CMT1\r
        (fp)INT_Excep_CMTU0_CMT1,\r
 //;0x0078  CMTU1_CMT2\r
-       (fp)vTimer2_ISR_Wrapper,\r
+       (fp)vTimer2_ISR_Handler,\r
 //;0x007C  CMTU1_CMT3\r
        (fp)INT_Excep_CMTU1_CMT3,\r
 //;0x0080  Ether\r
-    (fp)vEMAC_ISR_Wrapper,\r
+    (fp)vEMAC_ISR_Handler,\r
 //;0x0084  Reserved\r
     (fp)0,\r
 //;0x0088  Reserved\r
@@ -448,7 +448,7 @@ const fp RelocatableVectors[] RVECT_SECT  = {
 //;0x02B4  Reserved\r
     (fp)0,\r
 //;0x02B8  TMR0_CMI0A\r
-    (fp)vT0_1_ISR_Wrapper,\r
+    (fp)vT0_1_ISR_Handler,\r
 //;0x02BC  TMR0_CMI0B\r
     (fp)INT_Excep_TMR0_CMI0B,\r
 //;0x02C0  TMR0_OV0I\r
@@ -460,7 +460,7 @@ const fp RelocatableVectors[] RVECT_SECT  = {
 //;0x02CC  TMR1_OV1I\r
     (fp)INT_Excep_TMR1_OV1I,\r
 //;0x02D0 TMR2_CMI2A\r
-    (fp)vT2_3_ISR_Wrapper,\r
+    (fp)vT2_3_ISR_Handler,\r
 //;0x02D4  TMR2_CMI2B\r
     (fp)INT_Excep_TMR2_CMI2B,\r
 //;0x02D8  TMR2_OV2I\r
index 10ca4ff34ac682f095ea067bc70a68f7cee6cf38..9502358f4af006035ba61d70cd78ff9e1f91f5fd 100644 (file)
@@ -144,12 +144,11 @@ static void prvConfigureEtherCAndEDMAC( void );
 static void prvResetEverything( void );\r
 \r
 /*\r
- * Wrapper and handler for the EMAC peripheral.  See the documentation for this\r
+ * Handler for the EMAC peripheral.  See the documentation for this\r
  * port on http://www.FreeRTOS.org for more information on defining interrupt\r
  * handlers.\r
  */\r
-void vEMAC_ISR_Wrapper( void ) __attribute__((naked));\r
-static void vEMAC_ISR_Handler( void ) __attribute__((noinline));\r
+void vEMAC_ISR_Handler( void ) __attribute__((interrupt));\r
 \r
 /*-----------------------------------------------------------*/\r
 \r
@@ -524,29 +523,16 @@ static void prvConfigureEtherCAndEDMAC( void )
 }\r
 /*-----------------------------------------------------------*/\r
 \r
-void vEMAC_ISR_Wrapper( void )\r
-{\r
-       /* This is a naked function.  See the documentation for this port on\r
-       http://www.FreeRTOS.org for more information on writing interrupts. \r
-       \r
-       /* Save the registers and enable interrupts. */\r
-       portENTER_INTERRUPT();\r
-       \r
-       /* Perform the actual EMAC processing. */\r
-       vEMAC_ISR_Handler();\r
-       \r
-       /* Restore the registers and return. */\r
-       portEXIT_INTERRUPT();\r
-}\r
-/*-----------------------------------------------------------*/\r
-\r
-static void vEMAC_ISR_Handler( void )\r
+void vEMAC_ISR_Handler( void )\r
 {\r
 unsigned long ul = EDMAC.EESR.LONG;\r
 long lHigherPriorityTaskWoken = pdFALSE;\r
 extern xSemaphoreHandle xEMACSemaphore;\r
 static long ulTxEndInts = 0;\r
 \r
+       /* Re-enabled interrupts. */\r
+       __asm volatile( "SETPSW I" );\r
+\r
        /* Has a Tx end occurred? */\r
        if( ul & emacTX_END_INTERRUPT )\r
        {\r