13#ifndef ZEPHYR_INCLUDE_ARCH_XTENSA_ARCH_H_
14#define ZEPHYR_INCLUDE_ARCH_XTENSA_ARCH_H_
19#if !defined(_ASMLANGUAGE) && !defined(__ASSEMBLER__)
28#include <xtensa/config/core.h>
32#ifdef CONFIG_KERNEL_COHERENCE
33#define ARCH_STACK_PTR_ALIGN XCHAL_DCACHE_LINESIZE
35#define ARCH_STACK_PTR_ALIGN 16
39#define sys_define_gpr_with_alias(name1, name2) union { uint32_t name1, name2; }
49#define ARCH_EXCEPT(reason_p) do { \
50 xtensa_arch_except(reason_p); \
56#define ARCH_IRQ_CONNECT(irq_p, priority_p, isr_p, isr_param_p, flags_p) \
58 Z_ISR_DECLARE(irq_p, flags_p, isr_p, isr_param_p); \
61#define XTENSA_ERR_NORET
79 __asm__
volatile(
"nop");
#define ALWAYS_INLINE
Definition: common.h:124
Public interface for configuring interrupts.
uint64_t sys_clock_cycle_get_64(void)
uint32_t sys_clock_cycle_get_32(void)
flags
Definition: parser.h:96
__UINT32_TYPE__ uint32_t
Definition: stdint.h:90
__UINT64_TYPE__ uint64_t
Definition: stdint.h:91
Software-managed ISR table.
static ALWAYS_INLINE void arch_nop(void)
Definition: arch.h:77
void xtensa_arch_except(int reason_p)
static uint32_t arch_k_cycle_get_32(void)
Definition: arch.h:65
static uint64_t arch_k_cycle_get_64(void)
Definition: arch.h:72
Xtensa public exception handling.