FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [July 2006 Threads] Cygnal: RETI from non-ISR ok?Posted by David Hawks on July 12, 2006 Hi guys,
The Cygnal port contains a RETI instruction at the end of the "portRESTORE_CONTEXT()" macro. This is great if you are executing the real-time tick ISR when you call "portRESTORE_CONTEXT()", but what if you are not in an ISR? This would be the case any time you call "taskYIELD()". I suppose the Cygnal part does not care if you RETI from non-ISR code, but is that documented? I cannot find it anywhere. The effect on the stack for both RET and RETI is the same, but RETI also effects the interrupt control logic.
Is RETI safe for non-ISR use or do we need a separate version of "portRESTORE_CONTEXT()"?
Thanks in advance.
RE: Cygnal: RETI from non-ISR ok?Posted by Nobody/Anonymous on July 13, 2006 The Yield normally sets up the system to look just like an interrupt has occurred, so the same code can be used from both.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|