| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- /* SPDX-License-Identifier: GPL-2.0 */
- /* Copyright (C) 2019 Cadence Design Systems Inc. */
- #ifndef _ASM_XTENSA_CORE_H
- #define _ASM_XTENSA_CORE_H
- #include <variant/core.h>
- #ifndef XCHAL_HAVE_DIV32
- #define XCHAL_HAVE_DIV32 0
- #endif
- #ifndef XCHAL_HAVE_EXCLUSIVE
- #define XCHAL_HAVE_EXCLUSIVE 0
- #endif
- #ifndef XCHAL_HAVE_EXTERN_REGS
- #define XCHAL_HAVE_EXTERN_REGS 0
- #endif
- #ifndef XCHAL_HAVE_MPU
- #define XCHAL_HAVE_MPU 0
- #endif
- #ifndef XCHAL_HAVE_VECBASE
- #define XCHAL_HAVE_VECBASE 0
- #endif
- #ifndef XCHAL_SPANNING_WAY
- #define XCHAL_SPANNING_WAY 0
- #endif
- #ifndef XCHAL_HAVE_TRAX
- #define XCHAL_HAVE_TRAX 0
- #endif
- #ifndef XCHAL_NUM_PERF_COUNTERS
- #define XCHAL_NUM_PERF_COUNTERS 0
- #endif
- #if XCHAL_HAVE_WINDOWED
- #if defined(CONFIG_USER_ABI_DEFAULT) || defined(CONFIG_USER_ABI_CALL0_PROBE)
- /* Whether windowed ABI is supported in userspace. */
- #define USER_SUPPORT_WINDOWED
- #endif
- #if defined(__XTENSA_WINDOWED_ABI__) || defined(USER_SUPPORT_WINDOWED)
- /* Whether windowed ABI is supported either in userspace or in the kernel. */
- #define SUPPORT_WINDOWED
- #endif
- #endif
- /* Xtensa ABI requires stack alignment to be at least 16 */
- #if XCHAL_DATA_WIDTH > 16
- #define XTENSA_STACK_ALIGNMENT XCHAL_DATA_WIDTH
- #else
- #define XTENSA_STACK_ALIGNMENT 16
- #endif
- #ifndef XCHAL_HW_MIN_VERSION
- #if defined(XCHAL_HW_MIN_VERSION_MAJOR) && defined(XCHAL_HW_MIN_VERSION_MINOR)
- #define XCHAL_HW_MIN_VERSION (XCHAL_HW_MIN_VERSION_MAJOR * 100 + \
- XCHAL_HW_MIN_VERSION_MINOR)
- #else
- #define XCHAL_HW_MIN_VERSION 0
- #endif
- #endif
- #endif
|