mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-17 18:14:24 +00:00

The ERRATA_XXX macros, used in cpu_helpers.S, are necessary for the check_errata_xxx family of functions. The CPU_REV should be used in the cpu files but for whatever reason the values have been hard-coded so far (at the cost of readability). It's evident this file is not strictly for status reporting. The new purpose of this file is to make it a one-stop-shop for all things errata. Signed-off-by: Boyan Karatotev <boyan.karatotev@arm.com> Change-Id: I1ce22dd36df5aa0bcfc5f2772251f91af8703dfb
36 lines
827 B
C
36 lines
827 B
C
/*
|
|
* Copyright (c) 2017-2018, ARM Limited and Contributors. All rights reserved.
|
|
*
|
|
* SPDX-License-Identifier: BSD-3-Clause
|
|
*/
|
|
|
|
#ifndef ERRATA_REPORT_H
|
|
#define ERRATA_REPORT_H
|
|
|
|
#ifndef __ASSEMBLER__
|
|
|
|
#include <arch.h>
|
|
#include <arch_helpers.h>
|
|
#include <lib/spinlock.h>
|
|
#include <lib/utils_def.h>
|
|
|
|
#if DEBUG
|
|
void print_errata_status(void);
|
|
#else
|
|
static inline void print_errata_status(void) {}
|
|
#endif
|
|
|
|
void errata_print_msg(unsigned int status, const char *cpu, const char *id);
|
|
int errata_needs_reporting(spinlock_t *lock, uint32_t *reported);
|
|
|
|
#endif /* __ASSEMBLER__ */
|
|
|
|
/* Errata status */
|
|
#define ERRATA_NOT_APPLIES 0
|
|
#define ERRATA_APPLIES 1
|
|
#define ERRATA_MISSING 2
|
|
|
|
/* Macro to get CPU revision code for checking errata version compatibility. */
|
|
#define CPU_REV(r, p) ((r << 4) | p)
|
|
|
|
#endif /* ERRATA_REPORT_H */
|