• Julius Werner's avatar
    Replace __ASSEMBLY__ with compiler-builtin __ASSEMBLER__ · d5dfdeb6
    Julius Werner authored
    
    NOTE: __ASSEMBLY__ macro is now deprecated in favor of __ASSEMBLER__.
    
    All common C compilers predefine a macro called __ASSEMBLER__ when
    preprocessing a .S file. There is no reason for TF-A to define it's own
    __ASSEMBLY__ macro for this purpose instead. To unify code with the
    export headers (which use __ASSEMBLER__ to avoid one extra dependency),
    let's deprecate __ASSEMBLY__ and switch the code base over to the
    predefined standard.
    
    Change-Id: Id7d0ec8cf330195da80499c68562b65cb5ab7417
    Signed-off-by: default avatarJulius Werner <jwerner@chromium.org>
    d5dfdeb6
spinlock.h 496 Bytes
/*
 * Copyright (c) 2013-2018, ARM Limited and Contributors. All rights reserved.
 *
 * SPDX-License-Identifier: BSD-3-Clause
 */

#ifndef SPINLOCK_H
#define SPINLOCK_H

#ifndef __ASSEMBLER__

#include <stdint.h>

typedef struct spinlock {
	volatile uint32_t lock;
} spinlock_t;

void spin_lock(spinlock_t *lock);
void spin_unlock(spinlock_t *lock);

#else

/* Spin lock definitions for use in assembly */
#define SPINLOCK_ASM_ALIGN	2
#define SPINLOCK_ASM_SIZE	4

#endif

#endif /* SPINLOCK_H */