 |
|
 |
MESC TOOL NEWS:
MESCT-MR32R-000801D
Please take note of the following problems in using real-time OS MR32R for the M32R family of MCUs:
- For the known problem "When a system call is issued in
the interrupt handler, a task switch may be delayed", which was
described in MESC TOOL NEWS "MR32R Precaution" issued on February 16, 2000, it has been
found that the suggested workaround cannot circumvent the problem in
specific cases.
- In PD32R and PD32RSIM, using OS-debug functions in the MR trace or MR
analyze Window may cause the hook routine for debugging to corrupt
the contents of the R6 register.
-
Problem on Task Switching (Supplement to MESC TOOL NEWS Issued on February 16, 2000)
- 1.1 Versions Concerned
- MR32R V.1.00 Release 1 -- MR32R V.3.10 Release 1
- 1.2 Description
- If all of the conditions in 1.3 below are satisfied to bring up the problem
on delays of task switching, the workaround suggested in MESC TOOL NEWS issued on February 16, 2000,
cannot circumvent this problem.
- 1.3 Conditions
- The problem occurs if the following two conditions are satisfied:
- (1) Any of the system calls described in (a) of the table below is
issued, and the system call returns corresponding error code described in (b) of the table.
- (2) A task switch request is generated by the issuance of a system call
from the interrupt handler during processing any of the system calls described in (a).
-
| (a) System Calls | (b) Error Code |
"cre_mbf" "cre_mbx" "cre_tsk" "def_exc" | E_NOMEM |
"pget_blk"(*1) "pacp_por" "pcal_por" | E_TMOUT |
"get_blk" "tget_blk" "pget_blk" (If memory s reserved without entering a wait state after issuance) | E_OK |
- *1. System call "pget_blk" is involved only when issued in MR32R V.3.00 Release 1 -- V.3.10 Release 1.
- 1.4 Workaround
- In addition to the already-suggested workaround, issue the "ena_dsp" system call after issuing any one described in the above table.
[Example]
--------------------------------------------------------------
ercd = cre_tsk(ID_task3,&deftsk);
if ( ercd == E_NOMEM ) /* An error code tested */
ena_dsp(); /* The "ena_dsp" system call Issued */
--------------------------------------------------------------
- 1.5 Schedule of Fixing Problem
- This problem has already been fixed in the latest version, MR32R V.3.20.
-
Problem on Using MR Trace Functions
- 2.1 Products Concerned
-
| MR32R: | MR32R V.3.10 Release 1 |
| Debuggers: | Emulator debugger PD32R V.1.00 Release 1 for M32xxxT-SDI-E |
| Simulator debugger PD32RSIM V.1.00 Release 1 for M32R family
|
- 2.2 Description
- If the conditions described in 2.3 below are satisfied,
the hook routine for tracing ("mrdbg.lib" or "libmrdbg.a") may corrupt the contents of the R6 register.
- 2.3 Conditions
- This problem occurs if the following two conditions are satisfied:
- (1) "After" is used as a condition of MR trace.
- (2) A system call is issued at the overflow of the trace buffer.
- 2.4 Workaround
- Select "Before" as a condition of MR trace, or use MR32R V.3.20 Release 1.
- 2.5 Schedule of Fixing Problem
- This problem has already been fixed in the latest version, MR32R V.3.20.
-
How to Upgrade your product to MR32R V.3.20 Release 1
M32R is a product for a special user. If you need the latest version of
Real-time OS with online, please ask csc@renesas.com.
|
 |