; --------------------------------------------------------------------------------
; @Title: TRACE32 LiteOS RTOS Support - README
; @Description: -
; @Author: -
; @Copyright: (C) 1989-2022 Lauterbach GmbH, licensed for use with TRACE32(R) only
; --------------------------------------------------------------------------------
; $Id: readme.txt 18850 2022-01-26 18:41:29Z bschroefel $
---------------------------
Quick Configuration Guide:
---------------------------
To get a quick access to the features of the LiteOS RTOS debugger
with your application, follow this roadmap:
1. Start the TRACE32 Debugger.
2. Load your application as normal.
3. Execute the command: TASK.CONFIG liteos.t32
4. Execute the command: MENU.ReProgram liteos.men
5. Start your application.
Now you can access the LiteOS extensions through the menu.
-----------
Features :
-----------
The RTOS debugger for LiteOS supports the following features.
* Display of Kernel Resources
-----------------------------
The extension defines new PRACTICE commands to display various kernel resources.
- TASK.Task : display tasks with detailed information including
task id, name, state, priority, entry address. The "entry" field is mouse sensitive,
double clicking on it opens appropriate windows.
You can specify a Task magic or name to display detailed information
on that Task.
- TASK.MUteX : display a list of used mutexes.
- TASK.SEMaphore : display a list of used semaphores.
Without any arguments, a table with all used semaphores.
You can specify a semaphore magic number to display detailed information
on that semaphore.
- TASK.QUEue : display a list of used queues.
Without any arguments, a table with all created message queues will be shown.
You can specify a message queue magic number to display detailed information
on that message
queue.
- TASK.TIMer : display a list of used timers.
The ’magic’ field in all LiteOS awareness windows is a unique ID, used by the
RTOS Debugger to identify a specific (task, mutex, semaphore ..)..
The field ’magic’ is mouse sensitive, double clicking on it opens appropriate windows.
Right clicking on it will show a local menu.
If your hardware allows accessing the memory, while the target is running,
these resources can be displayed "On The Fly", i.e. while the application is running,
without any intrusion to the application. Without this capability, the information
will only be displayed, if the target application is stopped.
* Task Stack Coverage
---------------------
For stack usage coverage of the tasks, you can use the "TASK.STacK" command.
Without any parameter, this command will set up a window with all active tasks.
If you specify only a magic number as parameter, the stack area of this task
will be automatically calculated. To use the calculation of the maximum stack
usage, flag memory must be mapped to the task stack areas, when working with
the emulation memory. When working with the target memory, a stack pattern
must be defined with the command "TASK.STacK.PATtern" (default value is zero).
To add/remove one task to/from the task stack coverage, you can either call
the "TASK.STacK.ADD" rsp."TASK.STacK.ReMove" commands with the task magic
number as parameter, or omit the parameter and select from the task list window.
It is recommended, to display only the tasks, that you are interested in,
because the evaluation of the used stack space is very time consuming and slows
down the debugger display.
* Task Related Breakpoints
--------------------------
Any breakpoint set in the debugger can be restricted to fire only, if a specific
task hits that breakpoint. This is especially useful, when debugging code which
is shared between several tasks. To set a task related breakpoint, use the command:
"Break.Set