Definition in file IAR/AVR32_UC3/portmacro.h.
#include <avr32/io.h>
#include "intc.h"
#include "compiler.h"
Go to the source code of this file.
Defines | |
#define | configTICK_TC_IRQ ATPASTE2(AVR32_TC_IRQ, configTICK_TC_CHANNEL) |
#define | DISABLE_ALL_EXCEPTIONS() Disable_global_exception() |
#define | DISABLE_ALL_INTERRUPTS() Disable_global_interrupt() |
#define | DISABLE_INT_LEVEL(int_level) Disable_interrupt_level(int_level) |
#define | ENABLE_ALL_EXCEPTIONS() Enable_global_exception() |
#define | ENABLE_ALL_INTERRUPTS() Enable_global_interrupt() |
#define | ENABLE_INT_LEVEL(int_level) Enable_interrupt_level(int_level) |
#define | inline |
#define | portBASE_TYPE portLONG |
#define | portBYTE_ALIGNMENT 4 |
#define | portCHAR char |
#define | portDBG_TRACE(...) |
#define | portDISABLE_INTERRUPTS() DISABLE_ALL_INTERRUPTS() |
#define | portDOUBLE double |
#define | portENABLE_INTERRUPTS() ENABLE_ALL_INTERRUPTS() |
#define | portENTER_CRITICAL() vPortEnterCritical(); |
#define | portENTER_SWITCHING_ISR() |
#define | portEXIT_CRITICAL() vPortExitCritical(); |
#define | portEXIT_SWITCHING_ISR() |
#define | portFLOAT float |
#define | portLONG long |
#define | portMAX_DELAY ( portTickType ) 0xffffffff |
#define | portNOP() {__asm__ __volatile__ ("nop");} |
#define | portRESTORE_CONTEXT() |
#define | portRESTORE_CONTEXT_OS_INT() |
#define | portRESTORE_CONTEXT_SCALL() |
#define | portSAVE_CONTEXT_OS_INT() |
#define | portSAVE_CONTEXT_SCALL() |
#define | portSHORT short |
#define | portSTACK_GROWTH ( -1 ) |
#define | portSTACK_TYPE unsigned portLONG |
#define | portTASK_FUNCTION(vFunction, pvParameters) void vFunction( void *pvParameters ) |
#define | portTASK_FUNCTION_PROTO(vFunction, pvParameters) void vFunction( void *pvParameters ) |
#define | portTICK_RATE_MS ( ( portTickType ) 1000 / configTICK_RATE_HZ ) |
#define | portYIELD() {__asm__ __volatile__ ("scall");} |
#define | TASK_DELAY_MIN(x) ( (x)*60*1000/portTICK_RATE_MS ) |
#define | TASK_DELAY_MS(x) ( (x) /portTICK_RATE_MS ) |
#define | TASK_DELAY_S(x) ( (x)*1000 /portTICK_RATE_MS ) |
Typedefs | |
typedef unsigned portLONG | portTickType |
Functions | |
void * | pvPortRealloc (void *pv, size_t xSize) |
void | vPortEnterCritical (void) |
void | vPortExitCritical (void) |
#define configTICK_TC_IRQ ATPASTE2(AVR32_TC_IRQ, configTICK_TC_CHANNEL) |
Definition at line 104 of file IAR/AVR32_UC3/portmacro.h.
#define DISABLE_ALL_EXCEPTIONS | ( | ) | Disable_global_exception() |
Definition at line 126 of file IAR/AVR32_UC3/portmacro.h.
#define DISABLE_ALL_INTERRUPTS | ( | ) | Disable_global_interrupt() |
Definition at line 129 of file IAR/AVR32_UC3/portmacro.h.
#define DISABLE_INT_LEVEL | ( | int_level | ) | Disable_interrupt_level(int_level) |
Definition at line 132 of file IAR/AVR32_UC3/portmacro.h.
#define ENABLE_ALL_EXCEPTIONS | ( | ) | Enable_global_exception() |
Definition at line 127 of file IAR/AVR32_UC3/portmacro.h.
#define ENABLE_ALL_INTERRUPTS | ( | ) | Enable_global_interrupt() |
Definition at line 130 of file IAR/AVR32_UC3/portmacro.h.
#define ENABLE_INT_LEVEL | ( | int_level | ) | Enable_interrupt_level(int_level) |
Definition at line 133 of file IAR/AVR32_UC3/portmacro.h.
#define inline |
Definition at line 671 of file IAR/AVR32_UC3/portmacro.h.
#define portBASE_TYPE portLONG |
Definition at line 98 of file IAR/AVR32_UC3/portmacro.h.
#define portBYTE_ALIGNMENT 4 |
Definition at line 118 of file IAR/AVR32_UC3/portmacro.h.
#define portCHAR char |
Definition at line 92 of file IAR/AVR32_UC3/portmacro.h.
#define portDBG_TRACE | ( | ... | ) |
Definition at line 157 of file IAR/AVR32_UC3/portmacro.h.
#define portDISABLE_INTERRUPTS | ( | ) | DISABLE_ALL_INTERRUPTS() |
Definition at line 162 of file IAR/AVR32_UC3/portmacro.h.
#define portDOUBLE double |
Definition at line 94 of file IAR/AVR32_UC3/portmacro.h.
#define portENABLE_INTERRUPTS | ( | ) | ENABLE_ALL_INTERRUPTS() |
Definition at line 163 of file IAR/AVR32_UC3/portmacro.h.
#define portENTER_CRITICAL | ( | ) | vPortEnterCritical(); |
Definition at line 169 of file IAR/AVR32_UC3/portmacro.h.
#define portENTER_SWITCHING_ISR | ( | ) |
Value:
{ \ /* Save R0..R7 */ \ __asm__ __volatile__ ("stm --sp, r0-r7"); \ \ /* With the cooperative scheduler, as there is no context switch by interrupt, */ \ /* there is also no context save. */ \ }
Definition at line 526 of file IAR/AVR32_UC3/portmacro.h.
#define portEXIT_CRITICAL | ( | ) | vPortExitCritical(); |
Definition at line 170 of file IAR/AVR32_UC3/portmacro.h.
#define portEXIT_SWITCHING_ISR | ( | ) |
Value:
{ \ __asm__ __volatile__ ( \ /* Restore R0..R7 */ \ "ldm sp++, r0-r7\n\t" \ \ /* With the cooperative scheduler, as there is no context switch by interrupt, */ \ /* there is also no context restore. */ \ "rete" \ ); \ }
Definition at line 538 of file IAR/AVR32_UC3/portmacro.h.
#define portFLOAT float |
Definition at line 93 of file IAR/AVR32_UC3/portmacro.h.
#define portLONG long |
Definition at line 95 of file IAR/AVR32_UC3/portmacro.h.
#define portMAX_DELAY ( portTickType ) 0xffffffff |
Definition at line 111 of file IAR/AVR32_UC3/portmacro.h.
#define portNOP | ( | ) | {__asm__ __volatile__ ("nop");} |
Definition at line 119 of file IAR/AVR32_UC3/portmacro.h.
#define portRESTORE_CONTEXT | ( | ) |
Definition at line 183 of file IAR/AVR32_UC3/portmacro.h.
#define portRESTORE_CONTEXT_OS_INT | ( | ) |
Value:
{ \ __asm__ __volatile__ ( \ /* Restore R0..R7 */ \ "ldm sp++, r0-r7\n\t" \ \ /* With the cooperative scheduler, as there is no context switch by interrupt, */ \ /* there is also no context restore. */ \ "rete" \ ); \ }
Definition at line 272 of file IAR/AVR32_UC3/portmacro.h.
#define portRESTORE_CONTEXT_SCALL | ( | ) |
Definition at line 464 of file IAR/AVR32_UC3/portmacro.h.
#define portSAVE_CONTEXT_OS_INT | ( | ) |
Value:
{ \ /* Save R0..R7 */ \ __asm__ __volatile__ ("stm --sp, r0-r7"); \ \ /* With the cooperative scheduler, as there is no context switch by interrupt, */ \ /* there is also no context save. */ \ }
Definition at line 260 of file IAR/AVR32_UC3/portmacro.h.
#define portSAVE_CONTEXT_SCALL | ( | ) |
Definition at line 401 of file IAR/AVR32_UC3/portmacro.h.
#define portSHORT short |
Definition at line 96 of file IAR/AVR32_UC3/portmacro.h.
#define portSTACK_GROWTH ( -1 ) |
Definition at line 116 of file IAR/AVR32_UC3/portmacro.h.
#define portSTACK_TYPE unsigned portLONG |
Definition at line 97 of file IAR/AVR32_UC3/portmacro.h.
#define portTASK_FUNCTION | ( | vFunction, | |||
pvParameters | ) | void vFunction( void *pvParameters ) |
Definition at line 669 of file IAR/AVR32_UC3/portmacro.h.
#define portTASK_FUNCTION_PROTO | ( | vFunction, | |||
pvParameters | ) | void vFunction( void *pvParameters ) |
Definition at line 668 of file IAR/AVR32_UC3/portmacro.h.
#define portTICK_RATE_MS ( ( portTickType ) 1000 / configTICK_RATE_HZ ) |
Definition at line 117 of file IAR/AVR32_UC3/portmacro.h.
#define portYIELD | ( | ) | {__asm__ __volatile__ ("scall");} |
Definition at line 665 of file IAR/AVR32_UC3/portmacro.h.
#define TASK_DELAY_MIN | ( | x | ) | ( (x)*60*1000/portTICK_RATE_MS ) |
Definition at line 102 of file IAR/AVR32_UC3/portmacro.h.
#define TASK_DELAY_MS | ( | x | ) | ( (x) /portTICK_RATE_MS ) |
Definition at line 100 of file IAR/AVR32_UC3/portmacro.h.
#define TASK_DELAY_S | ( | x | ) | ( (x)*1000 /portTICK_RATE_MS ) |
Definition at line 101 of file IAR/AVR32_UC3/portmacro.h.
typedef unsigned portLONG portTickType |
Definition at line 110 of file IAR/AVR32_UC3/portmacro.h.
void* pvPortRealloc | ( | void * | pv, | |
size_t | xSize | |||
) |
Definition at line 207 of file GCC/AVR32_UC3/port.c.
References vTaskSuspendAll(), and xTaskResumeAll().
00208 { 00209 void *pvReturn; 00210 00211 vTaskSuspendAll(); 00212 { 00213 pvReturn = realloc( pv, xWantedSize ); 00214 } 00215 xTaskResumeAll(); 00216 00217 return pvReturn; 00218 }
void vPortEnterCritical | ( | void | ) |
Definition at line 262 of file GCC/AVR32_UC3/port.c.
References portDISABLE_INTERRUPTS, and ulCriticalNesting.
00263 { 00264 /* Disable interrupts */ 00265 portDISABLE_INTERRUPTS(); 00266 00267 /* Now interrupts are disabled ulCriticalNesting can be accessed 00268 directly. Increment ulCriticalNesting to keep a count of how many times 00269 portENTER_CRITICAL() has been called. */ 00270 ulCriticalNesting++; 00271 }
void vPortExitCritical | ( | void | ) |
Definition at line 274 of file GCC/AVR32_UC3/port.c.
References portENABLE_INTERRUPTS, portNO_CRITICAL_NESTING, and ulCriticalNesting.
00275 { 00276 if(ulCriticalNesting > portNO_CRITICAL_NESTING) 00277 { 00278 ulCriticalNesting--; 00279 if( ulCriticalNesting == portNO_CRITICAL_NESTING ) 00280 { 00281 /* Enable all interrupt/exception. */ 00282 portENABLE_INTERRUPTS(); 00283 } 00284 } 00285 }