| 
    ChibiOS
    19.1.4
    
   | 
 
Port related template macros and structures. More...
Go to the source code of this file.
Data Structures | |
| struct | port_extctx | 
| Interrupt saved context.  More... | |
| struct | port_intctx | 
| System saved context.  More... | |
| struct | port_context | 
Platform dependent part of the thread_t structure.  More... | |
Macros | |
| #define | PORT_IDLE_THREAD_STACK_SIZE 32 | 
| Stack size for the system idle thread.  More... | |
| #define | PORT_INT_REQUIRED_STACK 256 | 
| Per-thread stack overhead for interrupts servicing.  More... | |
| #define | PORT_USE_ALT_TIMER FALSE | 
| Enables an alternative timer implementation.  More... | |
| #define | PORT_XXX_ENABLE_WFI_IDLE FALSE | 
| Enables a "wait for interrupt" instruction in the idle loop.  More... | |
| #define | PORT_SETUP_CONTEXT(tp, wbase, wtop, pf, arg) | 
Platform dependent part of the chThdCreateI() API.  More... | |
| #define | PORT_WA_SIZE(n) | 
| Computes the thread working area global size.  More... | |
| #define | PORT_WORKING_AREA(s, n) stkalign_t s[THD_WORKING_AREA_SIZE(n) / sizeof (stkalign_t)] | 
| Static working area allocation.  More... | |
| #define | PORT_IRQ_IS_VALID_PRIORITY(n) false | 
| Priority level verification macro.  More... | |
| #define | PORT_IRQ_IS_VALID_KERNEL_PRIORITY(n) false | 
| Priority level verification macro.  More... | |
| #define | PORT_IRQ_PROLOGUE() | 
| IRQ prologue code.  More... | |
| #define | PORT_IRQ_EPILOGUE() | 
| IRQ epilogue code.  More... | |
| #define | PORT_IRQ_HANDLER(id) void id(void) | 
| IRQ handler function declaration.  More... | |
| #define | PORT_FAST_IRQ_HANDLER(id) void id(void) | 
| Fast IRQ handler function declaration.  More... | |
| #define | port_switch(ntp, otp) _port_switch(ntp, otp) | 
| Performs a context switch between two threads.  More... | |
Port Capabilities and Constants  | |
| #define | PORT_SUPPORTS_RT FALSE | 
| This port supports a realtime counter.  More... | |
| #define | PORT_NATURAL_ALIGN sizeof (void *) | 
| Natural alignment constant.  More... | |
| #define | PORT_STACK_ALIGN sizeof (stkalign_t) | 
| Stack alignment constant.  More... | |
| #define | PORT_WORKING_AREA_ALIGN sizeof (stkalign_t) | 
| Working Areas alignment constant.  More... | |
Architecture and Compiler  | |
| #define | PORT_ARCHITECTURE_XXX | 
| Macro defining an XXX architecture.  More... | |
| #define | PORT_ARCHITECTURE_XXX_YYY | 
| Macro defining the specific XXX architecture.  More... | |
| #define | PORT_ARCHITECTURE_NAME "XXX Architecture" | 
| Name of the implemented architecture.  More... | |
| #define | PORT_COMPILER_NAME "GCC " __VERSION__ | 
| Compiler name and version.  More... | |
| #define | PORT_INFO "no info" | 
| Port-specific information string.  More... | |
Typedefs | |
| typedef uint64_t | stkalign_t | 
| Type of stack and memory alignment enforcement.  More... | |
Functions | |
| void | _port_init (void) | 
| Port-related initialization code.  More... | |
| void | _port_switch (thread_t *ntp, thread_t *otp) | 
| Performs a context switch between two threads.  More... | |
| static syssts_t | port_get_irq_status (void) | 
| Returns a word encoding the current interrupts status.  More... | |
| static bool | port_irq_enabled (syssts_t sts) | 
| Checks the interrupt status.  More... | |
| static bool | port_is_isr_context (void) | 
| Determines the current execution context.  More... | |
| static void | port_lock (void) | 
| Kernel-lock action.  More... | |
| static void | port_unlock (void) | 
| Kernel-unlock action.  More... | |
| static void | port_lock_from_isr (void) | 
| Kernel-lock action from an interrupt handler.  More... | |
| static void | port_unlock_from_isr (void) | 
| Kernel-unlock action from an interrupt handler.  More... | |
| static void | port_disable (void) | 
| Disables all the interrupt sources.  More... | |
| static void | port_suspend (void) | 
| Disables the interrupt sources below kernel-level priority.  More... | |
| static void | port_enable (void) | 
| Enables all the interrupt sources.  More... | |
| static void | port_wait_for_interrupt (void) | 
| Enters an architecture-dependent IRQ-waiting mode.  More... | |
| static rtcnt_t | port_rt_get_counter_value (void) | 
| Returns the current value of the realtime counter.  More... | |
Port related template macros and structures.
This file is a template of the system driver macros provided by a port.
Definition in file chcore.h.