unl_cpu

iunl_cpu

Outline

Unlock the CPU.

C format

 ER      unl_cpu (void);
 ER      iunl_cpu (void);
Parameter(s)

None.

Explanation

These service calls change the system status from the CPU locked state to the CPU unlocked state.

As a result, "EI level maskable interrupt acceptance" and "service call issue" restricted (prohibited) through issue of loc_cpu or iloc_cpu are enabled.

If an EI level maskable interrupt is created during the interval from when either loc_cpu or iloc_cpu is issued until this service call is issued, the RI850V4 delays transition to the relevant interrupt processing (interrupt handler) until this service call is issued.

Note 1 This service call does not perform queuing of cancellation requests. If the system is in the CPU unlocked state, therefore, no processing is performed but it is not handled as an error.

Note 2 This service call manipulates PMn bits in the priority mask register (PMR) to disable acceptance of EI level maskable interrupts.
The PMn bits to be manipulated correspond to the interrupt priority range defined as the Maximum interrupt priority: maxintpri during configuration.
This service call does not manipulate the ID bit in the program status word (PSW).



Note 3 This service call does not cancel the dispatch disabled state that was set by issuing dis_dsp. If the system status before the CPU locked state is entered was the dispatch disabled state, the system status becomes the dispatch disabled state after this service call is issued.

Note 4 If a service call other than loc_cpu, iloc_cpu and sns_xxx is issued from when loc_cpu or iloc_cpu is issued until this service call is issued, the RI850V4 returns E_CTX.

Return value

Macro

Value

Description

E_OK

0

Normal completion.