Fix the header guards, comments, github labeler, CODEOWNERS and MAINTAINERS files. Signed-off-by: Carlo Caione <ccaione@baylibre.com>
58 lines
1.0 KiB
C
58 lines
1.0 KiB
C
/*
|
|
* Copyright (c) 2019 Carlo Caione <ccaione@baylibre.com>
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*/
|
|
|
|
/* Either public functions or macros or invoked by public functions */
|
|
|
|
#ifndef ZEPHYR_INCLUDE_ARCH_ARM64_ASM_INLINE_GCC_H_
|
|
#define ZEPHYR_INCLUDE_ARCH_ARM64_ASM_INLINE_GCC_H_
|
|
|
|
/*
|
|
* The file must not be included directly
|
|
* Include arch/cpu.h instead
|
|
*/
|
|
|
|
#ifndef _ASMLANGUAGE
|
|
|
|
#include <arch/arm64/lib_helpers.h>
|
|
#include <zephyr/types.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
static ALWAYS_INLINE unsigned int arch_irq_lock(void)
|
|
{
|
|
unsigned int key;
|
|
|
|
/*
|
|
* Return the whole DAIF register as key but use DAIFSET to disable
|
|
* IRQs.
|
|
*/
|
|
key = read_daif();
|
|
disable_irq();
|
|
|
|
return key;
|
|
}
|
|
|
|
static ALWAYS_INLINE void arch_irq_unlock(unsigned int key)
|
|
{
|
|
write_daif(key);
|
|
}
|
|
|
|
static ALWAYS_INLINE bool arch_irq_unlocked(unsigned int key)
|
|
{
|
|
/* We only check the (I)RQ bit on the DAIF register */
|
|
return (key & DAIF_IRQ_BIT) == 0;
|
|
}
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|
|
|
|
#endif /* _ASMLANGUAGE */
|
|
|
|
#endif /* ZEPHYR_INCLUDE_ARCH_ARM64_ASM_INLINE_GCC_H_ */
|