rtos: add instructions and helper code to make FreeRTOS work again

Run-time tested with FreeRTOS V8.1.2 (current version).

For the time being I propose this way of dealing with RTOSes that do
not export necessary information on their own.

I also suggest implementing a similar scheme for ChibiOS, exporting
the necessary struct fields' offsets via an OpenOCD-specific helper.

Change-Id: Iacf8b88004d62206215fe80011fd7592438446a3
Signed-off-by: Paul Fertser <fercerpav@gmail.com>
Signed-off-by: Andreas Fritiofson <andreas.fritiofson@gmail.com>
Reviewed-on: http://openocd.zylin.com/2347
Tested-by: jenkins
This commit is contained in:
Andreas Fritiofson
2015-04-16 13:08:14 +02:00
committed by Paul Fertser
parent 6b2887e16a
commit 9dfb58e802
3 changed files with 35 additions and 4 deletions

View File

@@ -8617,7 +8617,7 @@ _tx_thread_current_ptr, _tx_thread_created_ptr, _tx_thread_created_count.
@item FreeRTOS symbols
pxCurrentTCB, pxReadyTasksLists, xDelayedTaskList1, xDelayedTaskList2,
pxDelayedTaskList, pxOverflowDelayedTaskList, xPendingReadyList,
xTasksWaitingTermination, xSuspendedTaskList, uxCurrentNumberOfTasks, uxTopUsedPriority.
uxCurrentNumberOfTasks, uxTopUsedPriority.
@item linux symbols
init_task.
@item ChibiOS symbols
@@ -8630,8 +8630,15 @@ _mqx_kernel_data, MQX_init_struct.
@end table
For most RTOS supported the above symbols will be exported by default. However for
some, eg. FreeRTOS @option{xTasksWaitingTermination} is only exported
if @option{INCLUDE_vTaskDelete} is defined during the build.
some, eg. FreeRTOS, extra steps must be taken.
These RTOSes may require additional OpenOCD-specific file to be linked
along with the project:
@table @code
@item FreeRTOS
contrib/rtos-helpers/FreeRTOS-openocd.c
@end table
@node Tcl Scripting API
@chapter Tcl Scripting API