;/*\r
-; FreeRTOS V9.0.1 - Copyright (C) 2017 Real Time Engineers Ltd.\r
-;\r
-;\r
-; ***************************************************************************\r
-; * *\r
-; * FreeRTOS tutorial books are available in pdf and paperback. *\r
-; * Complete, revised, and edited pdf reference manuals are also *\r
-; * available. *\r
-; * *\r
-; * Purchasing FreeRTOS documentation will not only help you, by *\r
-; * ensuring you get running as quickly as possible and with an *\r
-; * in-depth knowledge of how to use FreeRTOS, it will also help *\r
-; * the FreeRTOS project to continue with its mission of providing *\r
-; * professional grade, cross platform, de facto standard solutions *\r
-; * for microcontrollers - completely free of charge! *\r
-; * *\r
-; * >>> See http://www.FreeRTOS.org/Documentation for details. <<< *\r
-; * *\r
-; * Thank you for using FreeRTOS, and thank you for your support! *\r
-; * *\r
-; ***************************************************************************\r
-;\r
-;\r
-; This file is part of the FreeRTOS distribution.\r
-;\r
-; FreeRTOS is free software; you can redistribute it and/or modify it under\r
-; the terms of the GNU General Public License (version 2) as published by the\r
-; Free Software Foundation AND MODIFIED BY the FreeRTOS exception.\r
-; >>>NOTE<<< The modification to the GPL is included to allow you to\r
-; distribute a combined work that includes FreeRTOS without being obliged to\r
-; provide the source code for proprietary components outside of the FreeRTOS\r
-; kernel. FreeRTOS is distributed in the hope that it will be useful, but\r
-; WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
-; or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for\r
-; more details. You should have received a copy of the GNU General Public\r
-; License and the FreeRTOS license exception along with FreeRTOS; if not it\r
-; can be viewed here: http://www.freertos.org/a00114.html and also obtained\r
-; by writing to Richard Barry, contact details for whom are available on the\r
-; FreeRTOS WEB site.\r
-;\r
-; 1 tab == 4 spaces!\r
-; \r
-; ***************************************************************************\r
-; * *\r
-; * Having a problem? Start by reading the FAQ "My application does *\r
-; * not run, what could be wrong? *\r
-; * *\r
-; * http://www.FreeRTOS.org/FAQHelp.html *\r
-; * *\r
-; ***************************************************************************\r
-;\r
-; \r
-; http://www.FreeRTOS.org - Documentation, training, latest information, \r
-; license and contact details.\r
-; \r
-; http://www.FreeRTOS.org/plus - A selection of FreeRTOS ecosystem products,\r
-; including FreeRTOS+Trace - an indispensable productivity tool.\r
-;\r
-; Real Time Engineers ltd license FreeRTOS to High Integrity Systems, who sell \r
-; the code with commercial support, indemnification, and middleware, under \r
-; the OpenRTOS brand: http://www.OpenRTOS.com. High Integrity Systems also\r
-; provide a safety engineered and independently SIL3 certified version under \r
-; the SafeRTOS brand: http://www.SafeRTOS.com.\r
-;*/\r
+; * FreeRTOS Kernel V10.0.0\r
+; * Copyright (C) 2017 Amazon.com, Inc. or its affiliates. All Rights Reserved.\r
+; *\r
+; * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
+; * this software and associated documentation files (the "Software"), to deal in\r
+; * the Software without restriction, including without limitation the rights to\r
+; * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\r
+; * the Software, and to permit persons to whom the Software is furnished to do so,\r
+; * subject to the following conditions:\r
+; *\r
+; * The above copyright notice and this permission notice shall be included in all\r
+; * copies or substantial portions of the Software. If you wish to use our Amazon\r
+; * FreeRTOS name, please do so in a fair use way that does not cause confusion.\r
+; *\r
+; * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
+; * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\r
+; * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\r
+; * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\r
+; * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
+; * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
+; *\r
+; * http://www.FreeRTOS.org\r
+; * http://aws.amazon.com/freertos\r
+; *\r
+; * 1 tab == 4 spaces!\r
+; */\r
\r
;-------------------------------------------------\r
;\r
mov r1, #0x11\r
mov r2, #0x22\r
mov r3, #0x33\r
- mov r4, #0x44 \r
+ mov r4, #0x44\r
mov r5, #0x55\r
mov r6, #0x66\r
mov r7, #0x77\r
vmov d15, r6, r7\r
.endif\r
\r
- \r
+\r
vRegTestLoop1:\r
\r
; Force yeild\r
; expected known value, jumping to vRegTestError1 if any register contains\r
; an unexpected value.\r
cmp r0, #0xFF\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r1, #0x11\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r2, #0x22\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r3, #0x33\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r4, #0x44\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r5, #0x55\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r6, #0x66\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r7, #0x77\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r8, #0x88\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r9, #0x99\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r10, #0xAA\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r11, #0xBB\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r12, #0xCC\r
- bne vRegTestError1 \r
+ bne vRegTestError1\r
cmp r14, #0xEE\r
- bne vRegTestError1 \r
- \r
+ bne vRegTestError1\r
+\r
; This task is still running without jumping to vRegTestError1, so increment\r
; the loop counter so the check task knows the task is running error free.\r
stmfd sp!, { r0-r1 }\r
add r1, r1, #1\r
str r1, [r0]\r
ldmfd sp!, { r0-r1 }\r
- \r
+\r
; Loop again, performing the same tests.\r
b vRegTestLoop1\r
\r
Count1Const .word ulRegTest1Counter\r
- \r
+\r
vRegTestError1:\r
b vRegTestError1\r
\r
mov r1, #0x11000000\r
mov r2, #0x22000000\r
mov r3, #0x33000000\r
- mov r4, #0x44000000 \r
+ mov r4, #0x44000000\r
mov r5, #0x55000000\r
mov r6, #0x66000000\r
mov r7, #0x77000000\r
mov r11, #0xBB000000\r
mov r12, #0xCC000000\r
mov r14, #0xEE000000\r
- \r
+\r
.if (__TI_VFP_SUPPORT__)\r
\r
; Fill each FPU register with a known value.\r
; expected known value, jumping to vRegTestError2 if any register contains\r
; an unexpected value.\r
cmp r0, #0xFF000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r1, #0x11000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r2, #0x22000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r3, #0x33000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r4, #0x44000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r5, #0x55000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r6, #0x66000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r7, #0x77000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r8, #0x88000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r9, #0x99000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r10, #0xAA000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r11, #0xBB000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r12, #0xCC000000\r
- bne vRegTestError2 \r
+ bne vRegTestError2\r
cmp r14, #0xEE000000\r
- bne vRegTestError2 \r
- \r
+ bne vRegTestError2\r
+\r
; This task is still running without jumping to vRegTestError2, so increment\r
; the loop counter so the check task knows the task is running error free.\r
stmfd sp!, { r0-r1 }\r
add r1, r1, #1\r
str r1, [r0]\r
ldmfd sp!, { r0-r1 }\r
- \r
+\r
; Loop again, performing the same tests.\r
b vRegTestLoop2\r
\r
Count2Const .word ulRegTest2Counter\r
- \r
+\r
vRegTestError2:\r
b vRegTestError2\r
\r
;-------------------------------------------------\r
- \r
- \r
- \r
+\r
+\r
+\r